Sizing fixes according to patch #1523304.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -118,12 +118,8 @@ bool wxSpinButton::Create(
|
||||
::WinQueryWindowPos(m_hWnd, &vSwp);
|
||||
SetXComp(vSwp.x);
|
||||
SetYComp(vSwp.y-5); // compensate for the associated TextControl border
|
||||
wxFont* pTextFont = new wxFont( 10
|
||||
,wxMODERN
|
||||
,wxNORMAL
|
||||
,wxNORMAL
|
||||
);
|
||||
SetFont(*pTextFont);
|
||||
|
||||
SetFont(*wxSMALL_FONT);
|
||||
//
|
||||
// For OS/2 we want to hide the text portion so we can substitute an
|
||||
// independent text ctrl in its place.
|
||||
@@ -144,7 +140,6 @@ bool wxSpinButton::Create(
|
||||
::WinSetWindowULong(GetHwnd(), QWL_USER, (LONG)this);
|
||||
fnWndProcSpinCtrl = (WXFARPROC)::WinSubclassWindow(m_hWnd, (PFNWP)wxSpinCtrlWndProc);
|
||||
#endif
|
||||
delete pTextFont;
|
||||
return TRUE;
|
||||
} // end of wxSpinButton::Create
|
||||
|
||||
@@ -159,12 +154,12 @@ wxSpinButton::~wxSpinButton()
|
||||
wxSize wxSpinButton::DoGetBestSize() const
|
||||
{
|
||||
//
|
||||
// OS/2 PM does not really have system metrics so we'll just set it to
|
||||
// 26x20 which is the size of the buttons and the borders.
|
||||
// Also we have no horizontal spin buttons.
|
||||
// OS/2 PM does not really have system metrics so we'll just set it to
|
||||
// a square based on its height.
|
||||
//
|
||||
wxSize best(26,20);
|
||||
return best;
|
||||
RECTL vRect;
|
||||
::WinQueryWindowRect(GetHwnd(),&vRect);
|
||||
return wxSize(vRect.yTop,vRect.yTop);
|
||||
} // end of wxSpinButton::DoGetBestSize
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
@@ -171,15 +171,10 @@ bool wxSpinCtrl::Create( wxWindow* pParent,
|
||||
m_hWndBuddy = m_hWnd; // One in the same for OS/2
|
||||
if(pParent)
|
||||
pParent->AddChild((wxSpinButton *)this);
|
||||
wxFont* pTextFont = new wxFont( 10
|
||||
,wxMODERN
|
||||
,wxNORMAL
|
||||
,wxNORMAL
|
||||
);
|
||||
SetFont(*pTextFont);
|
||||
::WinQueryWindowPos(m_hWnd, &vSwp);
|
||||
SetXComp(vSwp.x);
|
||||
SetYComp(vSwp.y);
|
||||
|
||||
SetFont(*wxSMALL_FONT);
|
||||
SetXComp(0);
|
||||
SetYComp(0);
|
||||
SetSize( rPos.x
|
||||
,rPos.y
|
||||
,rSize.x
|
||||
@@ -198,7 +193,6 @@ bool wxSpinCtrl::Create( wxWindow* pParent,
|
||||
::WinSetWindowULong(GetHwnd(), QWL_USER, (LONG)this);
|
||||
fnWndProcSpinCtrl = (WXFARPROC)::WinSubclassWindow(m_hWnd, (PFNWP)wxSpinCtrlWndProc);
|
||||
m_svAllSpins.Add(this);
|
||||
delete pTextFont;
|
||||
return true;
|
||||
} // end of wxSpinCtrl::Create
|
||||
|
||||
@@ -215,7 +209,7 @@ wxSize wxSpinCtrl::DoGetBestSize() const
|
||||
,&nHeight
|
||||
,&vFont
|
||||
);
|
||||
nHeight = EDIT_HEIGHT_FROM_CHAR_HEIGHT(nHeight);
|
||||
nHeight = EDIT_HEIGHT_FROM_CHAR_HEIGHT(nHeight)+4;
|
||||
|
||||
if (vSizeBtn.y < nHeight)
|
||||
{
|
||||
@@ -232,13 +226,7 @@ void wxSpinCtrl::DoGetPosition(
|
||||
, int* pnY
|
||||
) const
|
||||
{
|
||||
WXHWND hWnd = GetHWND();
|
||||
|
||||
wxConstCast(this, wxSpinCtrl)->m_hWnd = m_hWndBuddy;
|
||||
wxSpinButton::DoGetPosition( pnX
|
||||
,pnY
|
||||
);
|
||||
wxConstCast(this, wxSpinCtrl)->m_hWnd = hWnd;
|
||||
wxSpinButton::DoGetPosition( pnX,pnY );
|
||||
} // end of wxpinCtrl::DoGetPosition
|
||||
|
||||
void wxSpinCtrl::DoGetSize(
|
||||
|
Reference in New Issue
Block a user