if (!parent)
parent = win;
- gtk_paint_flat_box (parent->m_widget->style, pizza->bin_window, GTK_STATE_NORMAL,
- GTK_SHADOW_NONE, &gdk_event->area, parent->m_widget, "base", 0, 0, -1, -1);
+ gtk_paint_flat_box (parent->m_widget->style,
+ pizza->bin_window,
+ GTK_STATE_NORMAL,
+ GTK_SHADOW_NONE,
+ &gdk_event->area,
+ parent->m_widget,
+ (char *)"base",
+ 0, 0, -1, -1);
}
win->GetUpdateRegion().Union( gdk_event->area.x,
if (!parent)
parent = win;
- gtk_paint_flat_box (parent->m_widget->style, pizza->bin_window, GTK_STATE_NORMAL,
- GTK_SHADOW_NONE, rect, parent->m_widget, "base", 0, 0, -1, -1);
+ gtk_paint_flat_box (parent->m_widget->style,
+ pizza->bin_window,
+ GTK_STATE_NORMAL,
+ GTK_SHADOW_NONE,
+ rect,
+ parent->m_widget,
+ (char *)"base",
+ 0, 0, -1, -1);
}
InitMouseEvent( win, event, gdk_event );
AdjustEventButtonState(event);
-
+
// wxListBox actually get mouse events from the item
-
+
if (win->m_isListBox)
{
event.m_x += widget->allocation.x;
AdjustEventButtonState(event);
// wxListBox actually get mouse events from the item
-
+
if (win->m_isListBox)
{
event.m_x += widget->allocation.x;
m_noExpose = FALSE;
m_nativeSizeEvent = FALSE;
-
+
m_hasScrolling = FALSE;
m_isScrolling = FALSE;
if (m_parent)
m_parent->DoAddChild( this );
-
+
m_focusWidget = m_wxwindow;
PostCreation();
void wxWindowGTK::PostCreation()
{
wxASSERT_MSG( (m_widget != NULL), wxT("invalid window") );
-
+
if (m_wxwindow)
{
if (!m_noExpose)
dx = pizza->xoffset;
dy = pizza->yoffset;
}
-
+
if (x) (*x) = m_x - dx;
if (y) (*y) = m_y - dy;
}
// ?
}
}
-
+
#if 0
wxPrintf( "SetFocus finished in " );
if (GetClassInfo() && GetClassInfo()->GetClassName())
if ((m_wxwindow) &&
(m_wxwindow->window) &&
- (m_backgroundColour != wxSystemSettings::GetSystemColour(wxSYS_COLOUR_BTNFACE)))
+ (m_backgroundColour != wxSystemSettings::GetColour(wxSYS_COLOUR_BTNFACE)))
{
/* wxMSW doesn't clear the window here. I don't do that either to
provide compatibility. call Clear() to do the job. */
GtkStyle *style = GetWidgetStyle();
- if (m_font != wxSystemSettings::GetSystemFont( wxSYS_DEFAULT_GUI_FONT ))
+ if (m_font != wxSystemSettings::GetFont( wxSYS_DEFAULT_GUI_FONT ))
{
gdk_font_unref( style->font );
style->font = gdk_font_ref( m_font.GetInternalFont( 1.0 ) );
if (m_foregroundColour.Ok())
{
m_foregroundColour.CalcPixel( gtk_widget_get_colormap( m_widget ) );
- if (m_foregroundColour != wxSystemSettings::GetSystemColour(wxSYS_COLOUR_BTNTEXT))
+ if (m_foregroundColour != wxSystemSettings::GetColour(wxSYS_COLOUR_BTNTEXT))
{
style->fg[GTK_STATE_NORMAL] = *m_foregroundColour.GetColor();
style->fg[GTK_STATE_PRELIGHT] = *m_foregroundColour.GetColor();
if (m_backgroundColour.Ok())
{
m_backgroundColour.CalcPixel( gtk_widget_get_colormap( m_widget ) );
- if (m_backgroundColour != wxSystemSettings::GetSystemColour(wxSYS_COLOUR_BTNFACE))
+ if (m_backgroundColour != wxSystemSettings::GetColour(wxSYS_COLOUR_BTNFACE))
{
style->bg[GTK_STATE_NORMAL] = *m_backgroundColour.GetColor();
style->base[GTK_STATE_NORMAL] = *m_backgroundColour.GetColor();
#if wxUSE_MENUS_NATIVE
-static void gtk_pop_hide_callback( GtkWidget *WXUNUSED(widget), bool* is_waiting )
+extern "C"
+void gtk_pop_hide_callback( GtkWidget *WXUNUSED(widget), bool* is_waiting )
{
*is_waiting = FALSE;
}
static gint gs_pop_x = 0;
static gint gs_pop_y = 0;
-static void wxPopupMenuPositionCallback( GtkMenu *menu,
- gint *x, gint *y,
- gpointer WXUNUSED(user_data) )
+extern "C" void wxPopupMenuPositionCallback( GtkMenu *menu,
+ gint *x, gint *y,
+ gpointer WXUNUSED(user_data) )
{
// ensure that the menu appears entirely on screen
GtkRequisition req;
bool is_waiting = TRUE;
- gtk_signal_connect( GTK_OBJECT(menu->m_menu), "hide",
- GTK_SIGNAL_FUNC(gtk_pop_hide_callback), (gpointer)&is_waiting );
+ gtk_signal_connect( GTK_OBJECT(menu->m_menu),
+ "hide",
+ GTK_SIGNAL_FUNC(gtk_pop_hide_callback),
+ (gpointer)&is_waiting );
gtk_menu_popup(
GTK_MENU(menu->m_menu),
return FALSE;
}
- wxColour sysbg = wxSystemSettings::GetSystemColour( wxSYS_COLOUR_BTNFACE );
+ wxColour sysbg = wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE );
if ( sysbg == m_backgroundColour )
{
m_backgroundColour = wxNullColour;
return TRUE;
}
-void wxWindowGTK::CaptureMouse()
+void wxWindowGTK::DoCaptureMouse()
{
wxCHECK_RET( m_widget != NULL, wxT("invalid window") );
g_captureWindowHasMouse = TRUE;
}
-void wxWindowGTK::ReleaseMouse()
+void wxWindowGTK::DoReleaseMouse()
{
wxCHECK_RET( m_widget != NULL, wxT("invalid window") );
wxCHECK_RET( g_captureWindow, wxT("can't release mouse - not captured") );
+ g_captureWindow = (wxWindowGTK*) NULL;
+
GdkWindow *window = (GdkWindow*) NULL;
if (m_wxwindow)
window = GTK_PIZZA(m_wxwindow)->bin_window;
return;
gdk_pointer_ungrab ( (guint32)GDK_CURRENT_TIME );
- g_captureWindow = (wxWindowGTK*) NULL;
}
/* static */