return FALSE;
wxPoint vPos = rPos; // The OS/2 position
+ SWP vSwp;
if (pParent )
{
pParent->AddChild(this);
- hParent = GetWinHwnd(pParent);
- //
- // OS2 uses normal coordinates, no bassackwards Windows ones
- //
- if (pParent->IsKindOf(CLASSINFO(wxGenericScrolledWindow)) ||
- pParent->IsKindOf(CLASSINFO(wxScrolledWindow))
- )
- {
- wxWindow* pGrandParent = NULL;
-
- pGrandParent = pParent->GetParent();
- if (pGrandParent)
- nTempy = pGrandParent->GetSize().y - (vPos.y + rSize.y);
- else
- nTempy = pParent->GetSize().y - (vPos.y + rSize.y);
- }
- else
- nTempy = pParent->GetSize().y - (vPos.y + rSize.y);
- vPos.y = nTempy;
- }
- else
- {
- RECTL vRect;
-
- ::WinQueryWindowRect(HWND_DESKTOP, &vRect);
- hParent = HWND_DESKTOP;
- vPos.y = vRect.yTop - (vPos.y + rSize.y);
}
m_windowStyle = lStyle;
if (m_windowStyle & wxTE_PASSWORD) // hidden input
lSstyle |= ES_UNREADABLE;
}
- if ( pParent->IsKindOf(CLASSINFO(wxGenericScrolledWindow)) ||
- pParent->IsKindOf(CLASSINFO(wxScrolledWindow))
- )
- lSstyle |= WS_CLIPSIBLINGS;
+ //
+ // If the parent is a scrolled window the controls must
+ // have this style or they will overlap the scrollbars
+ //
+ if (pParent)
+ if (pParent->IsKindOf(CLASSINFO(wxScrolledWindow)) ||
+ pParent->IsKindOf(CLASSINFO(wxGenericScrolledWindow)))
+ lSstyle |= WS_CLIPSIBLINGS;
+
if (m_bIsMLE)
{
m_hWnd = (WXHWND)::WinCreateWindow( (HWND)GetHwndOf(pParent) // Parent window handle
}
else
{
- SetFont(wxSystemSettings::GetSystemFont(wxSYS_SYSTEM_FONT));
+ SetFont(wxSystemSettings::GetFont(wxSYS_SYSTEM_FONT));
}
if (!rsValue.IsEmpty())
{
SetValue(rsValue);
}
SetupColours();
+ //
+ // If X and/or Y are not zero the difference is the compensation value
+ // for margins for OS/2 controls.
+ //
+ ::WinQueryWindowPos(m_hWnd, &vSwp);
+ SetXComp(vSwp.x);
+ SetYComp(vSwp.y);
SetSize( vPos.x
,vPos.y
,rSize.x
{
wxColour vBkgndColour;
- vBkgndColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_WINDOW);
+ vBkgndColour = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW);
SetBackgroundColour(vBkgndColour);
SetForegroundColour(GetParent()->GetForegroundColour());
if (m_bIsMLE)
else
::GpiSetBackMix(hPS, BM_OVERPAINT);
if (!IsEnabled() && (GetWindowStyle() & wxTE_MULTILINE) == 0)
- vColBack = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DFACE);
+ vColBack = wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE);
::GpiSetBackColor(hPS, vColBack.GetPixel());
::GpiSetColor(hPS, vColFore.GetPixel());
return (WXHBRUSH)pBackgroundBrush->GetResourceHandle();