fixed alignment of the spinbutton. Also, since the generic spinctrl
is used then the generic header should be included.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27301
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
#elif defined(__WXMOTIF__)
#include "wx/generic/spinctlg.h"
#elif defined(__WXMAC__)
#elif defined(__WXMOTIF__)
#include "wx/generic/spinctlg.h"
#elif defined(__WXMAC__)
- #include "wx/mac/spinctrl.h"
+ #include "wx/generic/spinctlg.h"
#elif defined(__WXCOCOA__)
#include "wx/generic/spinctlg.h"
#endif // platform
#elif defined(__WXCOCOA__)
#include "wx/generic/spinctlg.h"
#endif // platform
// ----------------------------------------------------------------------------
// the margin between the text control and the spin
// ----------------------------------------------------------------------------
// the margin between the text control and the spin
+#ifdef __WXMAC__
+static const wxCoord MARGIN = 4;
+#else
static const wxCoord MARGIN = 2;
static const wxCoord MARGIN = 2;
// ----------------------------------------------------------------------------
// wxSpinCtrlText: text control used by spin control
// ----------------------------------------------------------------------------
// wxSpinCtrlText: text control used by spin control
: wxTextCtrl(spin->GetParent(), -1, value)
{
m_spin = spin;
: wxTextCtrl(spin->GetParent(), -1, value)
{
m_spin = spin;
+
+ // remove the default minsize, the spinctrl will have one instead
+ SetSizeHints(-1,-1);
m_spin = spin;
SetWindowStyle(style | wxSP_VERTICAL);
m_spin = spin;
SetWindowStyle(style | wxSP_VERTICAL);
+
+ // remove the default minsize, the spinctrl will have one instead
+ SetSizeHints(-1,-1);
- SetBackgroundColour(*wxRED);
m_text = new wxSpinCtrlText(this, value);
m_btn = new wxSpinCtrlButton(this, style);
m_text = new wxSpinCtrlText(this, value);
m_btn = new wxSpinCtrlButton(this, style);
m_btn->SetRange(min, max);
m_btn->SetValue(initial);
#ifdef __WXMAC__
wxSize csize = size ;
if ( size.y == -1 ) {
m_btn->SetRange(min, max);
m_btn->SetValue(initial);
#ifdef __WXMAC__
wxSize csize = size ;
if ( size.y == -1 ) {
- csize.y = m_text->GetSize().y ;
+ csize.y = m_text->GetSize().y;
- DoSetSize(pos.x, pos.y, csize.x, csize.y);
- wxSize best = GetBestSize();
- if ( size.x != -1 ) best.x = size.x;
- if ( size.y != -1 ) best.y = size.y;
- DoSetSize(pos.x, pos.y, best.x, best.y);
// have to disable this window to avoid interfering it with message
// processing to the text and the button... but pretend it is enabled to
// make IsEnabled() return TRUE
// have to disable this window to avoid interfering it with message
// processing to the text and the button... but pretend it is enabled to
// make IsEnabled() return TRUE
wxSpinCtrl::~wxSpinCtrl()
{
wxSpinCtrl::~wxSpinCtrl()
{
- // delete the controls now, don't leave them alive even though they woudl
+ // delete the controls now, don't leave them alive even though they would
// still be eventually deleted by our parent - but it will be too late, the
// user code expects them to be gone now
delete m_text;
// still be eventually deleted by our parent - but it will be too late, the
// user code expects them to be gone now
delete m_text;
}
// ----------------------------------------------------------------------------
}
// ----------------------------------------------------------------------------
wxCoord wText = width - sizeBtn.x;
m_text->SetSize(x, y, wText, height);
wxCoord wText = width - sizeBtn.x;
m_text->SetSize(x, y, wText, height);
-#ifdef __WXMAC__
- m_btn->SetSize(x + wText + MARGIN, y, -1, -1);
-#else
m_btn->SetSize(x + wText + MARGIN, y, -1, height);
m_btn->SetSize(x + wText + MARGIN, y, -1, height);
}
// ----------------------------------------------------------------------------
}
// ----------------------------------------------------------------------------