Make wxSpinCtrlGenericBase a wxCompositeWindow.

This takes care of propagating methods setting fonts and colours to the
subwindows automatically, so that setting font for the generic wxSpinCtrl now
works, unlike before.

Closes #14839.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2012-11-20 12:49:29 +00:00
parent a0e5592007
commit 29604c85d6
2 changed files with 15 additions and 1 deletions

View File

@ -22,6 +22,8 @@
#if wxUSE_SPINBTN
#include "wx/compositewin.h"
class WXDLLIMPEXP_FWD_CORE wxSpinButton;
class WXDLLIMPEXP_FWD_CORE wxTextCtrl;
@ -40,7 +42,8 @@ class wxSpinCtrlTextGeneric; // wxTextCtrl used for the wxSpinCtrlGenericBase
// function ambiguity.
// ----------------------------------------------------------------------------
class WXDLLIMPEXP_CORE wxSpinCtrlGenericBase : public wxSpinCtrlBase
class WXDLLIMPEXP_CORE wxSpinCtrlGenericBase
: public wxCompositeWindow<wxSpinCtrlBase>
{
public:
wxSpinCtrlGenericBase() { Init(); }
@ -156,6 +159,9 @@ private:
// common part of all ctors
void Init();
// Implement pure virtual function inherited from wxCompositeWindow.
virtual wxWindowList GetCompositeWindowParts() const;
DECLARE_EVENT_TABLE()
};

View File

@ -269,6 +269,14 @@ wxSpinCtrlGenericBase::~wxSpinCtrlGenericBase()
wxDELETE(m_spinButton);
}
wxWindowList wxSpinCtrlGenericBase::GetCompositeWindowParts() const
{
wxWindowList parts;
parts.push_back(m_textCtrl);
parts.push_back(m_spinButton);
return parts;
}
// ----------------------------------------------------------------------------
// geometry
// ----------------------------------------------------------------------------