X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4386db06ba73b60258279e1e1875b31f3cfb0d33..a4f6fe43c33bd7933645d110ad2719871dab043d:/include/wx/osx/core/private.h diff --git a/include/wx/osx/core/private.h b/include/wx/osx/core/private.h index e1b64182ed..9c4660a765 100644 --- a/include/wx/osx/core/private.h +++ b/include/wx/osx/core/private.h @@ -32,6 +32,23 @@ #define wxOSX_10_6_AND_LATER(x) #endif +// platform specific Clang analyzer support +#ifndef NS_RETURNS_RETAINED +# if WX_HAS_CLANG_FEATURE(attribute_ns_returns_retained) +# define NS_RETURNS_RETAINED __attribute__((ns_returns_retained)) +# else +# define NS_RETURNS_RETAINED +# endif +#endif + +#ifndef CF_RETURNS_RETAINED +# if WX_HAS_CLANG_FEATURE(attribute_cf_returns_retained) +# define CF_RETURNS_RETAINED __attribute__((cf_returns_retained)) +# else +# define CF_RETURNS_RETAINED +# endif +#endif + #if ( !wxUSE_GUI && !wxOSX_USE_IPHONE ) || wxOSX_USE_COCOA_OR_CARBON // Carbon functions are currently still used in wxOSX/Cocoa too (including @@ -242,7 +259,7 @@ public : virtual void GetPosition( int &x, int &y ) const = 0; virtual void GetSize( int &width, int &height ) const = 0; virtual void SetControlSize( wxWindowVariant variant ) = 0; - virtual float GetContentScaleFactor() const + virtual double GetContentScaleFactor() const { return 1.0; } @@ -265,6 +282,8 @@ public : virtual bool NeedsFrame() const; virtual void SetNeedsFrame( bool needs ); + + virtual void SetDrawingEnabled(bool enabled); virtual bool CanFocus() const = 0; // return true if successful @@ -284,13 +303,16 @@ public : virtual void SetCursor( const wxCursor & cursor ) = 0; virtual void CaptureMouse() = 0; virtual void ReleaseMouse() = 0; + + virtual void SetDropTarget( wxDropTarget * WXUNUSED(dropTarget) ) {} virtual wxInt32 GetValue() const = 0; virtual void SetValue( wxInt32 v ) = 0; virtual wxBitmap GetBitmap() const = 0; virtual void SetBitmap( const wxBitmap& bitmap ) = 0; virtual void SetBitmapPosition( wxDirection dir ) = 0; - virtual void SetupTabs( const wxNotebook ¬ebook ) =0; + virtual void SetupTabs( const wxNotebook& WXUNUSED(notebook) ) {} + virtual int TabHitTest( const wxPoint & WXUNUSED(pt), long *flags ) {*flags=1; return -1;}; virtual void GetBestRect( wxRect *r ) const = 0; virtual bool IsEnabled() const = 0; virtual void Enable( bool enable ) = 0; @@ -319,9 +341,16 @@ public : // static methods for associating native controls and their implementations + // finds the impl associated with this native control static wxWidgetImpl* FindFromWXWidget(WXWidget control); + // finds the impl associated with this native control, if the native control itself is not known + // also checks whether its parent is eg a registered scrollview, ie whether the control is a native subpart + // of a known control + static wxWidgetImpl* + FindBestFromWXWidget(WXWidget control); + static void RemoveAssociations( wxWidgetImpl* impl); static void Associate( WXWidget control, wxWidgetImpl *impl ); @@ -844,7 +873,7 @@ public : virtual void ScreenToWindow( int *x, int *y ) = 0; virtual void WindowToScreen( int *x, int *y ) = 0; - + virtual bool IsActive() = 0; wxNonOwnedWindow* GetWXPeer() { return m_wxPeer; }