From 39c7a53c9b9fd8afd3a4c06659405155c29dd8ff Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 1 Apr 2004 00:14:42 +0000 Subject: [PATCH] implemented Get(Class)DefaultAttributes() git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/msw/listctrl.h | 10 ++++++++++ include/wx/msw/treectrl.h | 12 +++++++++++- src/msw/listctrl.cpp | 16 +++++++++++----- src/msw/treectrl.cpp | 12 ++++++++++++ 4 files changed, 44 insertions(+), 6 deletions(-) diff --git a/include/wx/msw/listctrl.h b/include/wx/msw/listctrl.h index 35dcf0bec4..47ddda9e99 100644 --- a/include/wx/msw/listctrl.h +++ b/include/wx/msw/listctrl.h @@ -350,8 +350,18 @@ public: // Necessary for drawing hrules and vrules, if specified void OnPaint(wxPaintEvent& event); + virtual bool ShouldInheritColours() const { return false; } + virtual wxVisualAttributes GetDefaultAttributes() const + { + return GetClassDefaultAttributes(GetWindowVariant()); + } + + static wxVisualAttributes + GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); + + // obsolete stuff, for compatibility only -- don't use wxDEPRECATED( int GetItemSpacing(bool isSmall) const); diff --git a/include/wx/msw/treectrl.h b/include/wx/msw/treectrl.h index effeda59ff..f95ddf6f96 100644 --- a/include/wx/msw/treectrl.h +++ b/include/wx/msw/treectrl.h @@ -408,11 +408,21 @@ public: long& cookie) const ); #endif // WXWIN_COMPATIBILITY_2_4 - virtual bool ShouldInheritColours() const { return false; } // implementation // -------------- + virtual bool ShouldInheritColours() const { return false; } + + virtual wxVisualAttributes GetDefaultAttributes() const + { + return GetClassDefaultAttributes(GetWindowVariant()); + } + + static wxVisualAttributes + GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); + + virtual WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam); virtual bool MSWCommand(WXUINT param, WXWORD id); virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result); diff --git a/src/msw/listctrl.cpp b/src/msw/listctrl.cpp index 693df7dc4f..44321084d7 100644 --- a/src/msw/listctrl.cpp +++ b/src/msw/listctrl.cpp @@ -363,11 +363,6 @@ bool wxListCtrl::Create(wxWindow *parent, 0, LVS_EX_FULLROWSELECT); } - // inherit foreground colour but our background should be the same as for - // listboxes and other such "container" windows and not inherited - SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW)); - SetForegroundColour(GetParent()->GetForegroundColour()); - return TRUE; } @@ -546,6 +541,17 @@ void wxListCtrl::SetWindowStyleFlag(long flag) // accessors // ---------------------------------------------------------------------------- +/* static */ wxVisualAttributes +wxListCtrl::GetClassDefaultAttributes(wxWindowVariant variant) +{ + wxVisualAttributes attrs = GetCompositeControlsDefaultAttributes(variant); + + // common controls have their own default font + attrs.font = wxGetCCDefaultFont(); + + return attrs; +} + // Sets the foreground, i.e. text, colour bool wxListCtrl::SetForegroundColour(const wxColour& col) { diff --git a/src/msw/treectrl.cpp b/src/msw/treectrl.cpp index cd18d9d3f3..dcbb70016a 100644 --- a/src/msw/treectrl.cpp +++ b/src/msw/treectrl.cpp @@ -787,6 +787,18 @@ wxTreeCtrl::~wxTreeCtrl() // accessors // ---------------------------------------------------------------------------- +/* static */ wxVisualAttributes +wxTreeCtrl::GetClassDefaultAttributes(wxWindowVariant variant) +{ + wxVisualAttributes attrs = GetCompositeControlsDefaultAttributes(variant); + + // common controls have their own default font + attrs.font = wxGetCCDefaultFont(); + + return attrs; +} + + // simple wrappers which add error checking in debug mode bool wxTreeCtrl::DoGetItem(wxTreeViewItem* tvItem) const -- 2.45.2