fix getting tooltip colors for GTK 2.11

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@48388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Paul Cornett
2007-08-26 05:45:21 +00:00
parent b9808d753a
commit e10dbaccde

View File

@@ -133,26 +133,20 @@ static bool GetColourFromGTKWidget(GdkColor& gdkColor,
static void GetTooltipColors() static void GetTooltipColors()
{ {
GtkTooltips* tooltips = gtk_tooltips_new(); GtkWidget* widget = gtk_window_new(GTK_WINDOW_POPUP);
gtk_tooltips_force_window(tooltips); gtk_window_set_type_hint((GtkWindow*)widget, GDK_WINDOW_TYPE_HINT_TOOLTIP);
const char* name = "gtk-tooltip";
if (gtk_check_version(2, 11, 0))
name = "gtk-tooltips";
gtk_widget_set_name(widget, name);
gtk_widget_ensure_style(widget);
// FIXME: In 2.11.6 tip_window is private and always NULL so GdkColor c = widget->style->bg[GTK_STATE_NORMAL];
// we need to do something different if there is no window. gs_objects.m_colTooltip = wxColor(c);
// See https://sourceforge.net/tracker/index.php?func=detail&aid=1767485&group_id=9863&atid=109863 c = widget->style->fg[GTK_STATE_NORMAL];
if (tooltips->tip_window) gs_objects.m_colTooltipText = wxColor(c);
{
gtk_widget_ensure_style(tooltips->tip_window);
GdkColor c = tooltips->tip_window->style->bg[GTK_STATE_NORMAL];
gs_objects.m_colTooltip = wxColor(c);
c = tooltips->tip_window->style->fg[GTK_STATE_NORMAL];
gs_objects.m_colTooltipText = wxColor(c);
}
else
{
gs_objects.m_colTooltipText = wxColour(255, 255, 128); // FIXME
}
gtk_object_sink((GtkObject*)tooltips); gtk_widget_destroy(widget);
} }
wxColour wxSystemSettingsNative::GetColour( wxSystemColour index ) wxColour wxSystemSettingsNative::GetColour( wxSystemColour index )