]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/os2/window.h
fix crash caused by an wxMDIClientWindow's GTK signal handler being called when the...
[wxWidgets.git] / include / wx / os2 / window.h
index 1bf252de9ad7ac136bb5de99051462867c0eb7c6..14e664fa69c6066dabbeee5dc2ff1d9952e70184 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        window.h
+// Name:        wx/os2/window.h
 // Purpose:     wxWindow class
 // Author:      David Webster
 // Modified by:
 // forward declarations
 // ---------------------------------------------------------------------------
 
-class WXDLLEXPORT wxButton;
-
-// ---------------------------------------------------------------------------
-// constants
-// ---------------------------------------------------------------------------
-
-#if WXWIN_COMPATIBILITY_2_4
-// they're unused by wxWidgets...
-enum
-{
-    wxKEY_SHIFT = 1,
-    wxKEY_CTRL  = 2
-};
-#endif
+class WXDLLIMPEXP_FWD_CORE wxButton;
 
 // ---------------------------------------------------------------------------
 // wxWindow declaration for OS/2 PM
 // ---------------------------------------------------------------------------
 
-class WXDLLEXPORT wxWindowOS2 : public wxWindowBase
+class WXDLLIMPEXP_CORE wxWindowOS2 : public wxWindowBase
 {
 public:
     wxWindowOS2()
@@ -90,24 +77,22 @@ public:
                );
 
     // implement base class pure virtuals
-    virtual void     SetTitle(const wxString& rTitle);
-    virtual wxString GetTitle(void) const;
+    virtual void     SetLabel(const wxString& label);
+    virtual wxString GetLabel(void) const;
     virtual void     Raise(void);
     virtual void     Lower(void);
     virtual bool     Show(bool bShow = true);
-    virtual bool     Enable(bool bEnable = true);
+    virtual void     DoEnable(bool bEnable);
     virtual void     SetFocus(void);
     virtual void     SetFocusFromKbd(void);
-    virtual bool     Reparent(wxWindow* pNewParent);
+    virtual bool     Reparent(wxWindowBase* pNewParent);
     virtual void     WarpPointer( int x
                                  ,int y
                                 );
     virtual void     Refresh( bool          bEraseBackground = true
                              ,const wxRect* pRect = (const wxRect *)NULL
                             );
-    virtual void     Freeze(void);
     virtual void     Update(void);
-    virtual void     Thaw(void);
     virtual void     SetWindowStyleFlag(long lStyle);
     virtual bool     SetCursor(const wxCursor& rCursor);
     virtual bool     SetFont(const wxFont& rFont);
@@ -116,8 +101,8 @@ public:
     virtual void     GetTextExtent( const wxString& rString
                                    ,int*            pX
                                    ,int*            pY
-                                   ,int*            pDescent = (int *)NULL
-                                   ,int*            pExternalLeading = (int *)NULL
+                                   ,int*            pDescent = NULL
+                                   ,int*            pExternalLeading = NULL
                                    ,const wxFont*   pTheFont = (const wxFont *)NULL
                                   ) const;
 #if wxUSE_MENUS_NATIVE
@@ -142,7 +127,7 @@ public:
     virtual int      GetScrollRange(int nOrient) const;
     virtual void     ScrollWindow( int           nDx
                                   ,int           nDy
-                                  ,const wxRect* pRect = (wxRect *)NULL
+                                  ,const wxRect* pRect = NULL
                                  );
 
     inline HWND                   GetScrollBarHorz(void) const {return m_hWndScrollBarHorz;}
@@ -178,7 +163,7 @@ public:
     virtual WXWidget GetHandle(void) const { return GetHWND(); }
     bool             GetUseCtl3D(void) const { return m_bUseCtl3D; }
     bool             GetTransparentBackground(void) const { return m_bBackgroundTransparent; }
-    void             SetTransparent(bool bT = true) { m_bBackgroundTransparent = bT; }
+    void             SetTransparentBackground(bool bT = true) { m_bBackgroundTransparent = bT; }
 
     // event handlers
     // --------------
@@ -234,7 +219,7 @@ public:
 
     // returns true if the window has been created
     bool         OS2Create( PSZ            zClass
-                           ,const char*    zTitle
+                           ,const wxChar*  zTitle
                            ,WXDWORD        dwStyle
                            ,const wxPoint& rPos
                            ,const wxSize&  rSize
@@ -429,6 +414,9 @@ public:
     PSWP GetSwp(void) {return &m_vWinSwp;}
 
 protected:
+    virtual void     DoFreeze(void);
+    virtual void     DoThaw(void);
+
     // PM can't create some MSW styles natively but can perform these after
     // creation by sending messages
     typedef enum extra_flags { kFrameToolWindow = 0x0001
@@ -541,20 +529,13 @@ private:
                               ,WXWPARAM    wParam = 0
                              ) const;
 
-    wxWindowList*                   m_pChildrenDisabled;
     HWND                            m_hWndScrollBarHorz;
     HWND                            m_hWndScrollBarVert;
     SWP                             m_vWinSwp;
 
     DECLARE_DYNAMIC_CLASS(wxWindowOS2);
-    DECLARE_NO_COPY_CLASS(wxWindowOS2)
+    wxDECLARE_NO_COPY_CLASS(wxWindowOS2);
     DECLARE_EVENT_TABLE()
-
-    //
-    // Virtual function hiding supression
-    //
-    inline virtual bool Reparent(wxWindowBase* pNewParent)
-    { return(wxWindowBase::Reparent(pNewParent));}
 }; // end of wxWindow
 
 class wxWindowCreationHook
@@ -569,9 +550,9 @@ public:
 // ---------------------------------------------------------------------------
 
 // kbd code translation
-WXDLLEXPORT int wxCharCodeOS2ToWX(int nKeySym);
-WXDLLEXPORT int wxCharCodeWXToOS2( int   nId
-                                  ,bool* pbIsVirtual
+WXDLLIMPEXP_CORE int wxCharCodeOS2ToWX(int nKeySym);
+WXDLLIMPEXP_CORE int wxCharCodeWXToOS2( int   nId
+                                  ,bool* pbIsVirtual = NULL
                                  );
 
 // ----------------------------------------------------------------------------
@@ -587,5 +568,4 @@ WX_DECLARE_HASH(wxWindowOS2, wxWindowList, wxWinHashTable);
 
 extern wxWinHashTable *wxWinHandleHash;
 
-#endif
-    // _WX_WINDOW_H_
+#endif // _WX_WINDOW_H_