X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b225f65995e9eccefe9b502568b1b8e40629cd1a..88e30f2b719c232adb42f2a8e7f5884b4547b3f4:/src/msw/control.cpp diff --git a/src/msw/control.cpp b/src/msw/control.cpp index 8400508235..b3f223c210 100644 --- a/src/msw/control.cpp +++ b/src/msw/control.cpp @@ -98,14 +98,18 @@ bool wxControl::MSWCreateControl(const wxChar *classname, // by default) style |= WS_CHILD | WS_VISIBLE; + int x = pos.x == -1 ? 0 : pos.x, + y = pos.y == -1 ? 0 : pos.y, + w = size.x == -1 ? 0 : size.x, + h = size.y == -1 ? 0 : size.y; + m_hWnd = (WXHWND)::CreateWindowEx ( exstyle, // extended style classname, // the kind of control to create label, // the window name style, // the window style - pos.x, pos.y, // the window position - size.x, size.y, // and size + x, y, w, h, // the window position and size GetHwndOf(GetParent()), // parent (HMENU)GetId(), // child id wxGetInstance(), // app instance @@ -134,6 +138,12 @@ bool wxControl::MSWCreateControl(const wxChar *classname, // controls use the same font and colours as their parent dialog by default InheritAttributes(); + // set the size now if no initial size specified + if ( w == 0 || h == 0 ) + { + SetBestSize(size); + } + return TRUE; }