}
}
-/*
- wxPrintf( wxT("2) OnButtonPress from ") );
- if (win->GetClassInfo() && win->GetClassInfo()->GetClassName())
- wxPrintf( win->GetClassInfo()->GetClassName() );
- wxPrintf( wxT(".\n") );
-*/
-
wxEventType event_type = wxEVT_LEFT_DOWN;
if (gdk_event->button == 1)
if (!g_captureWindow)
{
+ int x = event.m_x;
+ int y = event.m_y;
+ if (win->m_wxwindow)
+ {
+ GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
+ x += myfixed->xoffset;
+ y += myfixed->yoffset;
+ }
+
wxNode *node = win->GetChildren().First();
while (node)
{
wxWindow *child = (wxWindow*)node->Data();
+
+ node = node->Next();
+ if (!child->IsShown())
+ continue;
if (child->m_isStaticBox)
{
// wxStaticBox is transparent in the box itself
- int x = event.m_x;
- int y = event.m_y;
int xx1 = child->m_x;
int yy1 = child->m_y;
int xx2 = child->m_x + child->m_width;
else
{
if ((child->m_wxwindow == (GtkWidget*) NULL) &&
- (child->m_x <= event.m_x) &&
- (child->m_y <= event.m_y) &&
- (child->m_x+child->m_width >= event.m_x) &&
- (child->m_y+child->m_height >= event.m_y))
+ (child->m_x <= x) &&
+ (child->m_y <= y) &&
+ (child->m_x+child->m_width >= x) &&
+ (child->m_y+child->m_height >= y))
{
win = child;
event.m_x -= child->m_x;
break;
}
}
- node = node->Next();
}
}
gs_timeLastClick = gdk_event->time;
+/*
+ wxPrintf( wxT("2) OnButtonPress from ") );
+ if (win->GetClassInfo() && win->GetClassInfo()->GetClassName())
+ wxPrintf( win->GetClassInfo()->GetClassName() );
+ wxPrintf( wxT(".\n") );
+*/
+
if (win->GetEventHandler()->ProcessEvent( event ))
{
gtk_signal_emit_stop_by_name( GTK_OBJECT(widget), "button_press_event" );
if (!g_captureWindow)
{
+ int x = event.m_x;
+ int y = event.m_y;
+ if (win->m_wxwindow)
+ {
+ GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
+ x += myfixed->xoffset;
+ y += myfixed->yoffset;
+ }
+
wxNode *node = win->GetChildren().First();
while (node)
{
wxWindow *child = (wxWindow*)node->Data();
+ node = node->Next();
+ if (!child->IsShown())
+ continue;
+
if (child->m_isStaticBox)
{
// wxStaticBox is transparent in the box itself
- int x = event.m_x;
- int y = event.m_y;
int xx1 = child->m_x;
int yy1 = child->m_y;
int xx2 = child->m_x + child->m_width;
else
{
if ((child->m_wxwindow == (GtkWidget*) NULL) &&
- (child->m_x <= event.m_x) &&
- (child->m_y <= event.m_y) &&
- (child->m_x+child->m_width >= event.m_x) &&
- (child->m_y+child->m_height >= event.m_y))
+ (child->m_x <= x) &&
+ (child->m_y <= y) &&
+ (child->m_x+child->m_width >= x) &&
+ (child->m_y+child->m_height >= y))
{
win = child;
event.m_x -= child->m_x;
break;
}
}
- node = node->Next();
}
}
if (!g_captureWindow)
{
+ int x = event.m_x;
+ int y = event.m_y;
+ if (win->m_wxwindow)
+ {
+ GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
+ x += myfixed->xoffset;
+ y += myfixed->yoffset;
+ }
+
wxNode *node = win->GetChildren().First();
while (node)
{
wxWindow *child = (wxWindow*)node->Data();
+ node = node->Next();
+ if (!child->IsShown())
+ continue;
+
if (child->m_isStaticBox)
{
// wxStaticBox is transparent in the box itself
- int x = event.m_x;
- int y = event.m_y;
int xx1 = child->m_x;
int yy1 = child->m_y;
int xx2 = child->m_x + child->m_width;
else
{
if ((child->m_wxwindow == (GtkWidget*) NULL) &&
- (child->m_x <= event.m_x) &&
- (child->m_y <= event.m_y) &&
- (child->m_x+child->m_width >= event.m_x) &&
- (child->m_y+child->m_height >= event.m_y))
+ (child->m_x <= x) &&
+ (child->m_y <= y) &&
+ (child->m_x+child->m_width >= x) &&
+ (child->m_y+child->m_height >= y))
{
win = child;
event.m_x -= child->m_x;
break;
}
}
- node = node->Next();
}
}