-}
-
-bool wxWindow::Create(wxWindow *parent, wxWindowID id,
- const wxPoint& pos,
- const wxSize& size,
- long style,
- const wxString& name)
-{
- wxCHECK_MSG( parent, FALSE, wxT("can't create wxWindow without parent") );
-
- if ( !CreateBase(parent, id, pos, size, style, wxDefaultValidator, name) )
- return FALSE;
-
- parent->AddChild(this);
-
- bool want3D;
- WXDWORD exStyle = 0; // TODO: Determine3DEffects(WS_EX_CLIENTEDGE, &want3D);
- DWORD msflags = 0;
-
-
- // TODO: PM Specific initialization
- OS2Create(m_windowId, parent, wxCanvasClassName, this, NULL,
- pos.x, pos.y,
- WidthDefault(size.x), HeightDefault(size.y),
- msflags, NULL, exStyle);
- return TRUE;
-}
+} // end of wxWindow::~wxWindow
+
+bool wxWindow::Create(
+ wxWindow* pParent
+, wxWindowID vId
+, const wxPoint& rPos
+, const wxSize& rSize
+, long lStyle
+, const wxString& rName
+)
+{
+ wxCHECK_MSG(pParent, FALSE, wxT("can't create wxWindow without parent"));
+
+ if ( !CreateBase( pParent
+ ,vId
+ ,rPos
+ ,rSize
+ ,lStyle
+ ,wxDefaultValidator
+ ,rName
+ ))
+ return(FALSE);
+
+ pParent->AddChild(this);
+
+ ULONG ulFlags = 0L;
+
+ //
+ // Frame windows and their derivatives only
+ //
+ if (lStyle & wxBORDER)
+ ulFlags |= FCF_BORDER;
+ if (lStyle & wxTHICK_FRAME )
+ ulFlags |= FCF_SIZEBORDER;
+
+ //
+ // Some generic window styles
+ //
+ ulFlags |= WS_VISIBLE;
+ if (lStyle & wxCLIP_CHILDREN )
+ ulFlags |= WS_CLIPCHILDREN;
+
+ bool bWant3D;
+ WXDWORD dwExStyle = Determine3DEffects(WS_EX_CLIENTEDGE, &bWant3D);
+
+ //
+ // OS/2 PM doesn't have "extended" styles but if the library specifies
+ // them and we are creating a frame window then at least give it a border
+ //
+ if ( bWant3D ||
+ (m_windowStyle & wxSIMPLE_BORDER) ||
+ (m_windowStyle & wxRAISED_BORDER ) ||
+ (m_windowStyle & wxSUNKEN_BORDER) ||
+ (m_windowStyle & wxDOUBLE_BORDER)
+ )
+ {
+ ulFlags |= FCF_BORDER;
+ }
+ OS2Create( m_windowId
+ ,pParent
+ ,wxCanvasClassName
+ ,this
+ ,NULL
+ ,rPos.x
+ ,rPos.y
+ ,WidthDefault(rSize.x)
+ ,HeightDefault(rSize.y)
+ ,ulFlags
+ ,NULL
+ ,dwExStyle
+ );
+ return(TRUE);
+} // end of wxWindow::Create