Compile fix for wxDataFormat cast,

Unfinished code for wxDragCopy vs. wxDragMove,
  Corrected key accel code for wxFrame as children of wxFrame.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4139 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling 1999-10-22 15:49:39 +00:00
parent 1e8335b0b7
commit bd77da975b
5 changed files with 50 additions and 22 deletions

View File

@ -97,7 +97,11 @@ wxDataObjectComposite::GetPreferredFormat(Direction WXUNUSED(dir)) const
{
wxSimpleDataObjectList::Node *node = m_dataObjects.Item( m_preferred );
#ifdef __WXGTK__
wxCHECK_MSG( node, wxDataFormat(wxDF_INVALID), wxT("no preferred format") );
#else
wxCHECK_MSG( node, wxDataFormat((unsigned short) wxDF_INVALID), wxT("no preferred format") );
#endif
wxDataObjectSimple* dataObj = node->GetData();

View File

@ -188,8 +188,8 @@ static gboolean target_drag_motion( GtkWidget *WXUNUSED(widget),
this is only valid for the duration of this call */
drop_target->SetDragContext( context );
/* TODO: what should be the default behaviour? Copy or move? */
wxDragResult result = wxDragMove;
if (context->suggested_action == GDK_ACTION_COPY) result = wxDragCopy;
if (drop_target->m_firstMotion)
{
@ -202,12 +202,13 @@ static gboolean target_drag_motion( GtkWidget *WXUNUSED(widget),
result = drop_target->OnDragOver( x, y, result );
}
/* we don't yet handle which "actions" (i.e. copy or move)
the target accepts. so far we simply accept the
suggested action. TODO. */
bool ret = result != wxDragNone;
if (ret)
{
GdkDragAction action = GDK_ACTION_MOVE;
if (result == wxDragCopy) action == GDK_ACTION_COPY;
gdk_drag_status( context, context->suggested_action, time );
}
/* after this, invalidate the drop_target's GdkDragContext */
drop_target->SetDragContext( (GdkDragContext*) NULL );
@ -254,6 +255,11 @@ static gboolean target_drag_drop( GtkWidget *widget,
this is only valid for the duration of this call */
drop_target->SetDragTime( time );
/*
wxDragResult result = wxDragMove;
if (context->suggested_action == GDK_ACTION_COPY) result = wxDragCopy;
*/
bool ret = drop_target->OnDrop( x, y );
if (!ret)
@ -278,6 +284,11 @@ static gboolean target_drag_drop( GtkWidget *widget,
GdkAtom format = drop_target->GetMatchingPair();
wxASSERT( format );
/*
GdkDragAction action = GDK_ACTION_MOVE;
if (result == wxDragCopy) action == GDK_ACTION_COPY;
context->action = action;
*/
/* this should trigger an "drag_data_received" event */
gtk_drag_get_data( widget,
context,

View File

@ -113,7 +113,8 @@ static void wxMenubarUnsetInvokingWindow( wxMenu *menu, wxWindow *win )
#if (GTK_MINOR_VERSION > 0)
wxWindow *top_frame = win;
while (top_frame->GetParent()) top_frame = top_frame->GetParent();
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
top_frame = top_frame->GetParent();
/* support for native hot keys */
gtk_accel_group_detach( menu->m_accel, GTK_OBJECT(top_frame->m_widget) );
@ -135,7 +136,7 @@ static void wxMenubarSetInvokingWindow( wxMenu *menu, wxWindow *win )
#if (GTK_MINOR_VERSION > 0)
wxWindow *top_frame = win;
while (top_frame->GetParent())
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
top_frame = top_frame->GetParent();
/* support for native hot keys */
@ -157,7 +158,7 @@ void wxMenuBar::SetInvokingWindow( wxWindow *win )
m_invokingWindow = win;
#if (GTK_MINOR_VERSION > 0) && (GTK_MICRO_VERSION > 0)
wxWindow *top_frame = win;
while (top_frame->GetParent())
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
top_frame = top_frame->GetParent();
/* support for native key accelerators indicated by underscroes */
@ -178,7 +179,7 @@ void wxMenuBar::UnsetInvokingWindow( wxWindow *win )
m_invokingWindow = (wxWindow*) NULL;
#if (GTK_MINOR_VERSION > 0) && (GTK_MICRO_VERSION > 0)
wxWindow *top_frame = win;
while (top_frame->GetParent())
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
top_frame = top_frame->GetParent();
/* support for native key accelerators indicated by underscroes */

View File

@ -188,8 +188,8 @@ static gboolean target_drag_motion( GtkWidget *WXUNUSED(widget),
this is only valid for the duration of this call */
drop_target->SetDragContext( context );
/* TODO: what should be the default behaviour? Copy or move? */
wxDragResult result = wxDragMove;
if (context->suggested_action == GDK_ACTION_COPY) result = wxDragCopy;
if (drop_target->m_firstMotion)
{
@ -202,12 +202,13 @@ static gboolean target_drag_motion( GtkWidget *WXUNUSED(widget),
result = drop_target->OnDragOver( x, y, result );
}
/* we don't yet handle which "actions" (i.e. copy or move)
the target accepts. so far we simply accept the
suggested action. TODO. */
bool ret = result != wxDragNone;
if (ret)
{
GdkDragAction action = GDK_ACTION_MOVE;
if (result == wxDragCopy) action == GDK_ACTION_COPY;
gdk_drag_status( context, context->suggested_action, time );
}
/* after this, invalidate the drop_target's GdkDragContext */
drop_target->SetDragContext( (GdkDragContext*) NULL );
@ -254,6 +255,11 @@ static gboolean target_drag_drop( GtkWidget *widget,
this is only valid for the duration of this call */
drop_target->SetDragTime( time );
/*
wxDragResult result = wxDragMove;
if (context->suggested_action == GDK_ACTION_COPY) result = wxDragCopy;
*/
bool ret = drop_target->OnDrop( x, y );
if (!ret)
@ -278,6 +284,11 @@ static gboolean target_drag_drop( GtkWidget *widget,
GdkAtom format = drop_target->GetMatchingPair();
wxASSERT( format );
/*
GdkDragAction action = GDK_ACTION_MOVE;
if (result == wxDragCopy) action == GDK_ACTION_COPY;
context->action = action;
*/
/* this should trigger an "drag_data_received" event */
gtk_drag_get_data( widget,
context,

View File

@ -113,7 +113,8 @@ static void wxMenubarUnsetInvokingWindow( wxMenu *menu, wxWindow *win )
#if (GTK_MINOR_VERSION > 0)
wxWindow *top_frame = win;
while (top_frame->GetParent()) top_frame = top_frame->GetParent();
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
top_frame = top_frame->GetParent();
/* support for native hot keys */
gtk_accel_group_detach( menu->m_accel, GTK_OBJECT(top_frame->m_widget) );
@ -135,7 +136,7 @@ static void wxMenubarSetInvokingWindow( wxMenu *menu, wxWindow *win )
#if (GTK_MINOR_VERSION > 0)
wxWindow *top_frame = win;
while (top_frame->GetParent())
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
top_frame = top_frame->GetParent();
/* support for native hot keys */
@ -157,7 +158,7 @@ void wxMenuBar::SetInvokingWindow( wxWindow *win )
m_invokingWindow = win;
#if (GTK_MINOR_VERSION > 0) && (GTK_MICRO_VERSION > 0)
wxWindow *top_frame = win;
while (top_frame->GetParent())
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
top_frame = top_frame->GetParent();
/* support for native key accelerators indicated by underscroes */
@ -178,7 +179,7 @@ void wxMenuBar::UnsetInvokingWindow( wxWindow *win )
m_invokingWindow = (wxWindow*) NULL;
#if (GTK_MINOR_VERSION > 0) && (GTK_MICRO_VERSION > 0)
wxWindow *top_frame = win;
while (top_frame->GetParent())
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
top_frame = top_frame->GetParent();
/* support for native key accelerators indicated by underscroes */