]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/os2/window.h
Added defines to allow altered tab placement under gcc-2.95
[wxWidgets.git] / include / wx / os2 / window.h
index 860eb58ef221345298095cbda07f2f7e18703920..fe491594e3a20d35ddfae3313c48aefca293facf 100644 (file)
@@ -167,6 +167,14 @@ public:
     // Dialog support: override these and call
     // base class members to add functionality
     // that can't be done using validators.
+    void SetClientSize( int width, int height )
+        { DoSetClientSize(width, height); }
+
+    void SetClientSize( const wxSize& size )
+        { DoSetClientSize(size.x, size.y); }
+
+    void SetClientSize(const wxRect& rect)
+        { SetClientSize( rect.width, rect.height ); }
 
     // Validate controls. If returns FALSE,
     // validation failed: don't quit
@@ -187,7 +195,7 @@ public:
     // title; for items, this is the label or button text.
     inline virtual wxString GetLabel() const { return GetTitle(); }
 
-
+#if wxUSE_CARET && WXWIN_COMPATIBILITY
     // Caret manipulation
     virtual void CreateCaret(int w, int h);
     virtual void CreateCaret(const wxBitmap *bitmap);
@@ -195,7 +203,7 @@ public:
     virtual void ShowCaret(bool show);
     virtual void SetCaretPos(int x, int y);
     virtual void GetCaretPos(int *x, int *y) const;
-
+#endif
 
     // Handle a control command
     virtual void OnCommand(wxWindow& win, wxCommandEvent& event);
@@ -208,6 +216,7 @@ public:
     // on a listbox)
     virtual void OnDefaultAction(wxControl *initiatingItem);
 
+    // EventHandlers
     void OnEraseBackground(wxEraseEvent& event);
     void OnChar(wxKeyEvent& event);
     void OnKeyDown(wxKeyEvent& event);
@@ -215,6 +224,11 @@ public:
     void OnPaint(wxPaintEvent& event);
     void OnIdle(wxIdleEvent& event);
 
+    // Accessors
+
+    WXHWND GetHWND() const { return m_hWnd; }
+    void   SetHWND(WXHWND hWnd) { m_hWnd = hWnd; }
+    virtual WXWidget GetHandle() const { return GetHWND(); }
 
 public:
 // ---------------------------------------------------------------------------
@@ -229,14 +243,25 @@ public:
     // a toolbar that it manages itself).
     virtual void AdjustForParentClientOrigin(int& x, int& y, int sizeFlags);
 
+    // Windows subclassing
+    void SubclassWin(WXHWND hWnd);
+    void UnsubclassWin();
+
+    WXFARPROC OS2GetOldWndProc() const { return m_oldWndProc; }
+    void OS2SetOldWndProc(WXFARPROC proc) { m_oldWndProc = proc; }
+
+    wxWindow *FindItem(long id) const;
+    wxWindow *FindItemByHWND(WXHWND hWnd, bool controlOnly = FALSE) const;
+
+    // Determine whether 3D effects are wanted
+    WXDWORD Determine3DEffects(WXDWORD defaultBorderStyle, bool *want3D) const;
+
+    // PM only: TRUE if this control is part of the main control
+    virtual bool ContainsHWND(WXHWND WXUNUSED(hWnd)) const { return FALSE; };
+
     // Executes the default message
     virtual long Default();
 
-/* TODO: you may need something like this
-  // Determine whether 3D effects are wanted
-  virtual WXDWORD Determine3DEffects(WXDWORD defaultBorderStyle, bool *want3D);
-*/
-
     // Constraint implementation
     void UnsetConstraints(wxLayoutConstraints *c);
     // Back-pointer to other windows we're involved with, so if we delete
@@ -258,11 +283,26 @@ protected:
     wxButton *            m_defaultItem;
 
 public:
+    WXFARPROC             m_oldWndProc;
     int                   m_returnCode;
+    bool                  m_isBeingDeleted;
+    bool                  m_isShown;
+    bool                  m_winCaptured;
+    bool                  m_mouseInWindow;
+    bool                  m_backgroundTransparent;
+    // handles
+    WXHWND                m_hWnd;
+    WXHMENU               m_hMenu; // Menu, if any
+
+    // the size of one page for scrolling
+    int                   m_xThumbSize;
+    int                   m_yThumbSize;
+    long                  m_lDlgCode;
 
 DECLARE_EVENT_TABLE()
 private:
-    void Init();
+    void   Init();
+    void   PMDetachWindowMenu();
 };
 
 ////////////////////////////////////////////////////////////////////////