X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1e6feb95a79834836e88143b15d9f424ebe79621..a380af4dbff98b71780c32772625f1d974522e4e:/src/common/ctrlcmn.cpp diff --git a/src/common/ctrlcmn.cpp b/src/common/ctrlcmn.cpp index 97ea795e57..ec97111188 100644 --- a/src/common/ctrlcmn.cpp +++ b/src/common/ctrlcmn.cpp @@ -6,7 +6,7 @@ // Created: 26.07.99 // RCS-ID: $Id$ // Copyright: (c) wxWindows team -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// // ============================================================================ @@ -17,7 +17,7 @@ // headers // ---------------------------------------------------------------------------- -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "controlbase.h" #pragma implementation "statbmpbase.h" #endif @@ -45,12 +45,17 @@ // implementation // ============================================================================ +wxControlBase::~wxControlBase() +{ + // this destructor is required for Darwin +} + bool wxControlBase::Create(wxWindow *parent, wxWindowID id, const wxPoint &pos, const wxSize &size, long style, - const wxValidator& validator, + const wxValidator& wxVALIDATOR_PARAM(validator), const wxString &name) { bool ret = wxWindow::Create(parent, id, pos, size, style, name); @@ -87,9 +92,24 @@ bool wxControlBase::CreateControl(wxWindowBase *parent, // inherit colour and font settings from the parent window void wxControlBase::InheritAttributes() { - SetBackgroundColour(GetParent()->GetBackgroundColour()); - SetForegroundColour(GetParent()->GetForegroundColour()); + if ( ShouldInheritColours() ) + { + wxWindow *parent = GetParent(); + + wxCHECK_RET( parent, _T("a control without parent?") ); + + SetBackgroundColour(parent->GetBackgroundColour()); + SetForegroundColour(parent->GetForegroundColour()); + } + +#ifdef __WXPM__ + // + // All OS/2 ctrls use the small font + // + SetFont(*wxSMALL_FONT); +#else SetFont(GetParent()->GetFont()); +#endif } void wxControlBase::Command(wxCommandEvent& event) @@ -125,6 +145,11 @@ void wxControlBase::InitCommandEvent(wxCommandEvent& event) const #if wxUSE_STATBMP +wxStaticBitmapBase::~wxStaticBitmapBase() +{ + // this destructor is required for Darwin +} + wxSize wxStaticBitmapBase::DoGetBestClientSize() const { wxBitmap bmp = GetBitmap();