X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e75491071dbefcada61175e3eb89ce4edf335983..c02ef0be2f9d86cd46c2deb1b064a32b7828fcc7:/include/wx/mac/window.h diff --git a/include/wx/mac/window.h b/include/wx/mac/window.h index 8a33aa8051..df3b0b102d 100644 --- a/include/wx/mac/window.h +++ b/include/wx/mac/window.h @@ -48,6 +48,7 @@ public: WindowRef m_macWindow ; ControlHandle m_macRootControl ; wxWindow* m_macFocus ; + bool m_macHasReceivedFirstActivate ; } MacWindowData ; @@ -86,8 +87,6 @@ public: virtual void SetFocus(); - virtual bool Reparent( wxWindow *newParent ); - virtual void WarpPointer(int x, int y); virtual void CaptureMouse(); virtual void ReleaseMouse(); @@ -155,8 +154,6 @@ public: // Native resource loading (implemented in src/msw/nativdlg.cpp) // FIXME: should they really be all virtual? - virtual bool LoadNativeDialog(wxWindow* parent, wxWindowID& id); - virtual bool LoadNativeDialog(wxWindow* parent, const wxString& name); wxWindow* GetWindowChild1(wxWindowID id); wxWindow* GetWindowChild(wxWindowID id); @@ -165,7 +162,8 @@ public: void MacClientToRootWindow( int *x , int *y ) const ; void MacRootWindowToClient( int *x , int *y ) const ; - + + virtual wxString MacGetToolTipString( wxPoint &where ) ; // simple accessors // ---------------- @@ -180,8 +178,12 @@ public: // event handlers // -------------- + void OnSetFocus(wxFocusEvent& event) ; void OnEraseBackground(wxEraseEvent& event); void OnIdle(wxIdleEvent& event); + void MacOnScroll(wxScrollEvent&event ) ; + + bool AcceptsFocus() const ; public: // For implementation purposes - sometimes decorations make the client area @@ -209,12 +211,6 @@ public: virtual void MSWDeviceToLogical(float *x, float *y) const; #endif // WXWIN_COMPATIBILITY - // Create an appropriate wxWindow from a HWND - virtual wxWindow* CreateWindowFromHWND(wxWindow* parent, WXHWND hWnd); - - // Make sure the window style reflects the HWND style (roughly) - virtual void AdoptAttributesFromHWND(); - // Setup background and foreground colours correctly virtual void SetupColours(); @@ -226,8 +222,12 @@ public: // Responds to colour changes: passes event on to children. void OnSysColourChanged(wxSysColourChangedEvent& event); - public : + virtual void MacCreateRealWindow( const wxString& title, + const wxPoint& pos, + const wxSize& size, + long style, + const wxString& name ) ; static bool MacGetWindowFromPoint( const wxPoint &point , wxWindow** outWin ) ; virtual void MacActivate( EventRecord *ev , bool inIsActivating ) ; virtual void MacUpdate( EventRecord *ev ) ; @@ -242,30 +242,45 @@ public : virtual void MacFireMouseEvent( EventRecord *ev ) ; virtual bool MacDispatchMouseEvent(wxMouseEvent& event ) ; virtual void MacEraseBackground( Rect *rect ) ; - WindowRef GetMacRootWindow() const ; + virtual void MacPaintBorders() ; + // obsolete : only for link compatibility + virtual void MacPaint( wxPaintEvent &event ) ; + WindowRef GetMacRootWindow() const ; - virtual ControlHandle MacGetContainerForEmbedding() ; - virtual void MacSuperChangedPosition() ; + virtual ControlHandle MacGetContainerForEmbedding() ; + + virtual long MacGetLeftBorderSize() const ; + virtual long MacGetRightBorderSize() const ; + virtual long MacGetTopBorderSize() const ; + virtual long MacGetBottomBorderSize() const ; + static long MacRemoveBordersFromStyle( long style ) ; + virtual void MacSuperChangedPosition() ; + virtual void MacSuperShown( bool show ) ; + bool MacIsReallyShown() const ; +/* bool MacSetupFocusPort() ; bool MacSetupDrawingPort() ; bool MacSetupFocusClientPort() ; bool MacSetupDrawingClientPort() ; - +*/ virtual bool MacSetPortFocusParams( const Point & localOrigin, const Rect & clipRect, WindowRef window , wxWindow* rootwin ) ; virtual bool MacSetPortDrawingParams( const Point & localOrigin, const Rect & clipRect, WindowRef window , wxWindow* rootwin ) ; virtual void MacGetPortParams(Point* localOrigin, Rect* clipRect, WindowRef *window , wxWindow** rootwin ) ; virtual void MacGetPortClientParams(Point* localOrigin, Rect* clipRect, WindowRef *window , wxWindow** rootwin) ; + virtual void MacDoGetPortClientParams(Point* localOrigin, Rect* clipRect, WindowRef *window , wxWindow** rootwin) ; MacWindowData* MacGetWindowData() { return m_macWindowData ; } static WindowRef MacGetWindowInUpdate() { return s_macWindowInUpdate ; } + bool MacIsWindowScrollbar( const wxScrollBar* sb ) { return (m_hScrollBar == sb || m_vScrollBar == sb) ; } static wxWindow* s_lastMouseWindow ; private: virtual bool MacGetWindowFromPointSub( const wxPoint &point , wxWindow** outWin ) ; protected: - MacWindowData* m_macWindowData ; static WindowRef s_macWindowInUpdate ; + RgnHandle m_macUpdateRgn ; + bool m_macEraseOnRedraw ; int m_x ; int m_y ; @@ -303,10 +318,6 @@ protected: int sizeFlags = wxSIZE_AUTO); virtual void DoSetClientSize(int width, int height); - // get the size which best suits the window: e.g., for a static text it - // will be the width and height of the text - virtual wxSize DoGetBestSize(); - // move the window to the specified location and resize it: this is called // from both DoSetSize() and DoSetClientSize() and would usually just call // ::MoveWindow() except for composite controls which will want to arrange @@ -331,6 +342,7 @@ wxWindow* wxFindWinFromMacWindow( WindowRef inWindow ) ; void wxAssociateWinWithMacWindow(WindowRef inWindow, wxWindow *win) ; void wxRemoveMacWindowAssociation(wxWindow *win) ; +/* class wxMacFocusHelper { public : @@ -343,6 +355,7 @@ private : GrafPtr m_currentPort ; bool m_ok ; } ; +*/ class wxMacDrawingHelper { @@ -357,7 +370,7 @@ private : PenState m_savedPenState ; bool m_ok ; } ; - +/* class wxMacFocusClientHelper { public : @@ -370,7 +383,7 @@ private : GrafPtr m_currentPort ; bool m_ok ; } ; - +*/ class wxMacDrawingClientHelper { public :