X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/598d8cacefaa185a962ebc39d31533410692c56b..5687a67ce1e365d010c6282aa57b4f99f7f5ea29:/include/wx/os2/window.h diff --git a/include/wx/os2/window.h b/include/wx/os2/window.h index 64e0c1e674..f89b382262 100644 --- a/include/wx/os2/window.h +++ b/include/wx/os2/window.h @@ -40,7 +40,7 @@ class WXDLLEXPORT wxButton; // constants // --------------------------------------------------------------------------- -// FIXME does anybody use those? they're unused by wxWindows... +// FIXME does anybody use those? they're unused by wxWidgets... enum { wxKEY_SHIFT = 1, @@ -95,6 +95,7 @@ public: virtual bool Show(bool bShow = TRUE); virtual bool Enable(bool bEnable = TRUE); virtual void SetFocus(void); + virtual void SetFocusFromKbd(void); virtual bool Reparent(wxWindow* pNewParent); virtual void WarpPointer( int x ,int y @@ -102,7 +103,6 @@ public: virtual void Refresh( bool bEraseBackground = TRUE ,const wxRect* pRect = (const wxRect *)NULL ); - virtual void Clear(void); virtual void Freeze(void); virtual void Update(void); virtual void Thaw(void); @@ -152,47 +152,6 @@ public: // Accept files for dragging virtual void DragAcceptFiles(bool bAccept); -#if WXWIN_COMPATIBILITY - // Set/get scroll attributes - virtual void SetScrollRange( int nOrient - ,int nRange - ,bool bRefresh = TRUE - ); - virtual void SetScrollPage( int nOrient - ,int nPage - ,bool bRefresh = TRUE - ); - virtual int OldGetScrollRange(int nOrient) const; - virtual int GetScrollPage(int nOrient) const; - - // - // event handlers - // - // Handle a control command - virtual void OnCommand( wxWindow& rWin - ,wxCommandEvent& rEvent - ); - - // Override to define new behaviour for default action (e.g. double - // clicking on a listbox) - virtual void OnDefaultAction(wxControl* WXUNUSED(pInitiatingItem)) { } -#endif // WXWIN_COMPATIBILITY - -#if wxUSE_CARET && WXWIN_COMPATIBILITY - void CreateCaret( int nWidth - ,int nHeight - ); - void CreateCaret(const wxBitmap* pBitmap); - void DestroyCaret(void); - void ShowCaret(bool bShow); - void SetCaretPos( int nX - ,int nY - ); - void GetCaretPos( int* pX - ,int* pY - ) const; -#endif // wxUSE_CARET - #ifndef __WXUNIVERSAL__ // Native resource loading (implemented in src/os2/nativdlg.cpp) // FIXME: should they really be all virtual? @@ -226,6 +185,7 @@ public: void OnIdle(wxIdleEvent& rEvent); public: + // For implementation purposes - sometimes decorations make the client area // smaller virtual wxPoint GetClientAreaOrigin(void) const; @@ -236,25 +196,25 @@ public: WXFARPROC OS2GetOldWndProc(void) const { return m_fnOldWndProc; } void OS2SetOldWndProc(WXFARPROC fnProc) { m_fnOldWndProc = fnProc; } + // + // Return TRUE if the window is of a standard (i.e. not wxWidgets') class + // + bool IsOfStandardClass(void) const { return m_fnOldWndProc != NULL; } wxWindow* FindItem(long lId) const; wxWindow* FindItemByHWND( WXHWND hWnd ,bool bControlOnly = FALSE ) const; - // Make a Windows extended style from the given wxWindows window style ?? applicable to OS/2?? + // Make a Windows extended style from the given wxWidgets window style ?? applicable to OS/2?? static WXDWORD MakeExtendedStyle( long lStyle ,bool bEliminateBorders = TRUE ); - // Determine whether 3D effects are wanted - WXDWORD Determine3DEffects( WXDWORD dwDefaultBorderStyle - ,bool* pbWant3D - ) const; // PM only: TRUE if this control is part of the main control virtual bool ContainsHWND(WXHWND WXUNUSED(hWnd)) const { return FALSE; }; - // translate wxWindows style flags for this control into the PM style + // translate wxWidgets style flags for this control into the PM style // and optional extended style for the corresponding native control // // this is the function that should be overridden in the derived classes, @@ -263,7 +223,7 @@ public: ,WXDWORD* pdwExstyle = NULL ) const; - // get the MSW window flags corresponding to wxWindows ones + // get the MSW window flags corresponding to wxWidgets ones // // the functions returns the flags (WS_XXX) directly and puts the ext // (WS_EX_XXX) flags into the provided pointer if not NULL @@ -271,6 +231,9 @@ public: { return OS2GetStyle(GetWindowStyle(), pdwExflags); } + // get the HWND to be used as parent of this window with CreateWindow() + virtual WXHWND OS2GetParent(void) const; + // returns TRUE if the window has been created bool OS2Create( PSZ zClass ,const char* zTitle @@ -285,13 +248,6 @@ public: ,WXWORD nId ); -#if WXWIN_COMPATIBILITY - wxObject* GetChild(int nNumber) const; - virtual void OS2DeviceToLogical( float* pfX - ,float* pfY - ) const; -#endif // WXWIN_COMPATIBILITY - #ifndef __WXUNIVERSAL__ // Create an appropriate wxWindow from a HWND virtual wxWindow* CreateWindowFromHWND( wxWindow* pParent @@ -358,10 +314,12 @@ public: virtual bool OS2OnDrawItem( int nId ,WXDRAWITEMSTRUCT* pItem ); - virtual bool OS2OnMeasureItem( int nId + virtual long OS2OnMeasureItem( int nId ,WXMEASUREITEMSTRUCT* pItem ); + virtual void OnPaint(wxPaintEvent& rEvent); + // the rest are not virtual bool HandleCreate( WXLPCREATESTRUCT vCs ,bool* pMayCreate @@ -390,8 +348,12 @@ public: bool HandleSysCommand( WXWPARAM wParam ,WXLPARAM lParam ); - bool HandlePaletteChanged(); + bool HandlePaletteChanged(void); + bool HandleQueryNewPalette(void); bool HandleSysColorChange(void); + bool HandleDisplayChange(void); + bool HandleCaptureChanged(WXHWND hBainedCapture); + bool HandleCtlColor(WXHBRUSH* hBrush); bool HandleSetFocus(WXHWND hWnd); bool HandleKillFocus(WXHWND hWnd); @@ -455,11 +417,6 @@ public: ,WXLPARAM lParam ); -#if WXWIN_COMPATIBILITY - void SetShowing(bool bShow) { (void)Show(show); } - bool IsUserEnabled(void) const { return IsEnabled(); } -#endif // WXWIN_COMPATIBILITY - // Responds to colour changes: passes event on to children. void OnSysColourChanged(wxSysColourChangedEvent& rEvent); @@ -495,7 +452,6 @@ protected: bool m_bUseCtl3D:1; // Using CTL3D for this control bool m_bBackgroundTransparent:1; bool m_bMouseInWindow:1; - bool m_bDoubleClickAllowed:1; bool m_bLastKeydownProcessed:1; bool m_bWinCaptured:1; WXDWORD m_dwExStyle; @@ -587,19 +543,20 @@ 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) DECLARE_EVENT_TABLE() -private: - HWND m_hWndScrollBarHorz; - HWND m_hWndScrollBarVert; - SWP m_vWinSwp; - + // // Virtual function hiding supression + // inline virtual bool Reparent(wxWindowBase* pNewParent) - { return(wxWindowBase::Reparent(pNewParent));}; + { return(wxWindowBase::Reparent(pNewParent));} }; // end of wxWindow class wxWindowCreationHook