From 285b5ce09012b1341c9c18b9fa837581ae66ea3a Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Sun, 27 Feb 2005 11:41:01 +0000 Subject: [PATCH] cleanup, adding common methods git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/mac/carbon/private.h | 42 ++++++++++++++++++++++++++------- 1 file changed, 33 insertions(+), 9 deletions(-) diff --git a/include/wx/mac/carbon/private.h b/include/wx/mac/carbon/private.h index 9c6d741e0d..cc8566c000 100644 --- a/include/wx/mac/carbon/private.h +++ b/include/wx/mac/carbon/private.h @@ -47,9 +47,6 @@ #include "wx/mac/corefoundation/cfstring.h" #endif -//forward declarations -class wxTopLevelWindowMac; - #ifndef FixedToInt // as macro in FixMath.h for 10.3 inline Fixed IntToFixed( int inInt ) @@ -67,6 +64,7 @@ inline int FixedToInt( Fixed inFixed ) #include "wx/dc.h" #include "wx/window.h" +#include "wx/toplevel.h" class wxMacPortStateHelper { @@ -403,6 +401,11 @@ private : WindowRef m_data ; } ; +void wxMacRectToNative( const wxRect *wx , Rect *n ) ; +void wxMacNativeToRect( const Rect *n , wxRect* wx ) ; +void wxMacPointToNative( const wxPoint* wx , Point *n ) ; +void wxMacNativeToPoint( const Point *n , wxPoint* wx ) ; + wxWindow * wxFindControlFromMacControl(ControlRef inControl ) ; wxTopLevelWindowMac* wxFindWinFromMacWindow( WindowRef inWindow ) ; wxMenu* wxFindMenuFromMacMenu(MenuRef inMenuRef) ; @@ -411,10 +414,12 @@ extern wxWindow* g_MacLastWindow ; pascal OSStatus wxMacTopLevelMouseEventHandler( EventHandlerCallRef handler , EventRef event , void *data ) ; Rect wxMacGetBoundsForControl( wxWindow* window , const wxPoint& pos , const wxSize &size , bool adjustForOrigin = true ) ; +ControlActionUPP GetwxMacLiveScrollbarActionProc() ; + class wxMacControl { public : - wxMacControl( wxWindow* peer) ; + wxMacControl( wxWindow* peer , bool isRootControl = false ) ; wxMacControl( wxWindow* peer , ControlRef control ) ; wxMacControl( wxWindow* peer , WXWidget control ) ; virtual ~wxMacControl() ; @@ -513,12 +518,20 @@ public : virtual void SetDrawingEnabled( bool enable ) ; #ifdef __WXMAC_OSX__ virtual bool GetNeedsDisplay() const ; - virtual void SetNeedsDisplay( bool needsDisplay , RgnHandle where = NULL ) ; #endif + // where is in native window relative coordinates + virtual void SetNeedsDisplay( RgnHandle where ) ; + // where is in native window relative coordinates + virtual void SetNeedsDisplay( Rect* where = NULL ) ; + virtual void ScrollRect( const wxRect &rect , int dx , int dy ) ; + // in native parent window relative coordinates virtual void GetRect( Rect *r ) ; + + // in native parent window relative coordinates virtual void SetRect( Rect *r ) ; + virtual void GetRectInWindowCoords( Rect *r ) ; virtual void GetBestRect( Rect *r ) ; virtual void SetTitle( const wxString &title ) ; @@ -561,6 +574,7 @@ public : virtual OSStatus SetTabEnabled( SInt16 tabNo , bool enable ) ; bool IsCompositing() { return m_isCompositing ; } + bool IsRootControl() { return m_isRootControl ; } protected : ControlRef m_controlRef ; wxFont m_font ; @@ -568,6 +582,7 @@ protected : wxWindow* m_peer ; bool m_needsFocusRect ; bool m_isCompositing ; + bool m_isRootControl ; } ; #if wxMAC_USE_CORE_GRAPHICS @@ -729,8 +744,21 @@ private : int m_height ; }; +// toplevel.cpp + +ControlRef wxMacFindControlUnderMouse( wxTopLevelWindowMac* toplevelWindow, Point location , WindowRef window , ControlPartCode *outPart ) ; + #endif // wxUSE_GUI +#define wxMAC_DEFINE_PROC_GETTER( UPP , x ) \ +UPP Get##x() \ +{ \ + static UPP sHandler = NULL; \ + if ( sHandler == NULL ) \ + sHandler = New##UPP( x ); \ + return sHandler; \ +} + //--------------------------------------------------------------------------- // wxMac string conversions //--------------------------------------------------------------------------- @@ -741,10 +769,6 @@ void wxMacCleanupConverters() ; void wxMacStringToPascal( const wxString&from , StringPtr to ) ; wxString wxMacMakeStringFromPascal( ConstStringPtr from ) ; -// toplevel.cpp - -ControlRef wxMacFindControlUnderMouse( wxTopLevelWindowMac* toplevelWindow, Point location , WindowRef window , ControlPartCode *outPart ) ; - // filefn.cpp wxString wxMacFSRefToPath( const FSRef *fsRef , CFStringRef additionalPathComponent = NULL ) ; -- 2.47.2