X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4bb6408c2631988fab9925014c6619358bf867de..8e72b8b51770b59a83eb32f4d766b89f6c4dc615:/src/motif/settings.cpp diff --git a/src/motif/settings.cpp b/src/motif/settings.cpp index 17f57f98d1..b75b68efc9 100644 --- a/src/motif/settings.cpp +++ b/src/motif/settings.cpp @@ -9,21 +9,104 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// +// TODO: these settings should probably be configurable from some central or +// per-user file, which can be edited using a Windows-control-panel clone. +// Also they should be documented better. Some are very MS Windows-ish. + #ifdef __GNUG__ #pragma implementation "settings.h" #endif #include "wx/settings.h" +#include "wx/gdicmn.h" wxColour wxSystemSettings::GetSystemColour(int index) { - // TODO - return wxColour(); + switch (index) + { + case wxSYS_COLOUR_WINDOW: + { + return *wxWHITE; + } + case wxSYS_COLOUR_SCROLLBAR: + // case wxSYS_COLOUR_DESKTOP: // Same as wxSYS_COLOUR_BACKGROUND + case wxSYS_COLOUR_BACKGROUND: + case wxSYS_COLOUR_ACTIVECAPTION: + case wxSYS_COLOUR_INACTIVECAPTION: + case wxSYS_COLOUR_MENU: + case wxSYS_COLOUR_WINDOWFRAME: + case wxSYS_COLOUR_ACTIVEBORDER: + case wxSYS_COLOUR_INACTIVEBORDER: + case wxSYS_COLOUR_BTNFACE: + // case wxSYS_COLOUR_3DFACE: // Same as wxSYS_COLOUR_BTNFACE + case wxSYS_COLOUR_GRAYTEXT: + { + return wxColour("LIGHT GREY"); + } + case wxSYS_COLOUR_BTNSHADOW: + // case wxSYS_COLOUR_3DSHADOW: // Same as wxSYS_COLOUR_BTNSHADOW + { + return wxColour("GREY"); + } + case wxSYS_COLOUR_3DDKSHADOW: + { + return *wxBLACK; + } + case wxSYS_COLOUR_HIGHLIGHT: + { + return *wxBLUE; + } + case wxSYS_COLOUR_BTNHIGHLIGHT: + case wxSYS_COLOUR_LISTBOX: + // case wxSYS_COLOUR_3DHIGHLIGHT: // Same as wxSYS_COLOUR_BTNHIGHLIGHT + { + return *wxWHITE; + } + case wxSYS_COLOUR_3DLIGHT: + { + return wxColour("LIGHT GREY"); + } + case wxSYS_COLOUR_MENUTEXT: + case wxSYS_COLOUR_WINDOWTEXT: + case wxSYS_COLOUR_CAPTIONTEXT: + case wxSYS_COLOUR_INACTIVECAPTIONTEXT: + case wxSYS_COLOUR_INFOTEXT: + { + return *wxBLACK; + } + case wxSYS_COLOUR_HIGHLIGHTTEXT: + { + return *wxWHITE; + } + case wxSYS_COLOUR_INFOBK: + case wxSYS_COLOUR_APPWORKSPACE: + { + return wxColour("LIGHT GREY"); + // return *wxWHITE; + } + } + return *wxWHITE; } wxFont wxSystemSettings::GetSystemFont(int index) { - // TODO + switch (index) + { + case wxSYS_SYSTEM_FIXED_FONT: + { + return wxFont(12, wxMODERN, wxNORMAL, wxNORMAL, FALSE); + break; + } + case wxSYS_DEVICE_DEFAULT_FONT: + case wxSYS_SYSTEM_FONT: + case wxSYS_DEFAULT_GUI_FONT: + default: + { + return wxFont(12, wxSWISS, wxNORMAL, wxNORMAL, FALSE); + break; + } + } + return wxFont(); } @@ -146,6 +229,16 @@ int wxSystemSettings::GetSystemMetric(int index) default: return 0; } - return 0; } +bool wxSystemSettings::GetCapability(int index) +{ + switch (index) + { + case wxSYS_CAN_ICONIZE_FRAME: + case wxSYS_CAN_DRAW_FRAME_DECORATIONS: + return TRUE; break; + default: + return FALSE; + } +}