Applied patched for combo box SELECTED events (no

long get lots of surplus events)
  Applied patch for menu hihglight colour detection.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31266 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
2005-01-06 12:49:20 +00:00
parent b4efc9b931
commit 9d6a9fdd13
4 changed files with 150 additions and 22 deletions

View File

@@ -38,7 +38,8 @@ struct wxSystemObjects
m_colHighlight,
m_colHighlightText,
m_colListBox,
m_colBtnText;
m_colBtnText,
m_colMenuItemHighlight;
wxFont m_fontSystem;
};
@@ -53,7 +54,8 @@ static wxSystemObjects gs_objects;
enum wxGtkWidgetType
{
wxGTK_BUTTON,
wxGTK_LIST
wxGTK_LIST,
wxGTK_MENUITEM
};
// the colour we need
@@ -84,6 +86,9 @@ static bool GetColourFromGTKWidget(int& red, int& green, int& blue,
case wxGTK_LIST:
widget = gtk_list_new();
case wxGTK_MENUITEM:
widget = gtk_menu_item_new();
}
GtkStyle *def = gtk_rc_get_style( widget );
@@ -135,7 +140,6 @@ wxColour wxSystemSettingsNative::GetColour( wxSystemColour index )
{
case wxSYS_COLOUR_SCROLLBAR:
case wxSYS_COLOUR_BACKGROUND:
case wxSYS_COLOUR_ACTIVECAPTION:
case wxSYS_COLOUR_INACTIVECAPTION:
case wxSYS_COLOUR_MENU:
case wxSYS_COLOUR_WINDOWFRAME:
@@ -268,10 +272,30 @@ wxColour wxSystemSettingsNative::GetColour( wxSystemColour index )
case wxSYS_COLOUR_APPWORKSPACE:
return *wxWHITE; // ?
case wxSYS_COLOUR_ACTIVECAPTION:
case wxSYS_COLOUR_MENUHILIGHT:
if (!gs_objects.m_colMenuItemHighlight.Ok())
{
int red, green, blue;
if ( !GetColourFromGTKWidget(red, green, blue,
wxGTK_MENUITEM,
GTK_STATE_SELECTED,
wxGTK_BG) )
{
red =
green =
blue = 0;
}
gs_objects.m_colMenuItemHighlight = wxColour( red >> SHIFT,
green >> SHIFT,
blue >> SHIFT );
}
return gs_objects.m_colMenuItemHighlight;
case wxSYS_COLOUR_HOTLIGHT:
case wxSYS_COLOUR_GRADIENTACTIVECAPTION:
case wxSYS_COLOUR_GRADIENTINACTIVECAPTION:
case wxSYS_COLOUR_MENUHILIGHT:
// TODO
return *wxBLACK;