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