X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/411a1c35ff2e9be0bef6e2997f00dded357f2906..31f4ed4aa313e7ed804f3e161ac7637dfba70350:/include/wx/osx/core/private.h diff --git a/include/wx/osx/core/private.h b/include/wx/osx/core/private.h index a011a3d5a9..c106c39ca7 100644 --- a/include/wx/osx/core/private.h +++ b/include/wx/osx/core/private.h @@ -21,6 +21,17 @@ #include "wx/osx/core/cfstring.h" #include "wx/osx/core/cfdataref.h" +// Define helper macros allowing to insert small snippets of code to be +// compiled for high enough OS X version only: this shouldn't be abused for +// anything big but it's handy for e.g. specifying OS X 10.6-only protocols in +// the Objective C classes declarations when they're not supported under the +// previous versions +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 + #define wxOSX_10_6_AND_LATER(x) x +#else + #define wxOSX_10_6_AND_LATER(x) +#endif + #if wxOSX_USE_COCOA_OR_CARBON WXDLLIMPEXP_BASE long UMAGetSystemVersion() ; @@ -459,6 +470,17 @@ public : long style, long extraStyle); +#ifdef wxOSX_USE_NATIVE_COMBOBOX + static wxWidgetImplType* CreateComboBox( wxWindowMac* wxpeer, + wxWindowMac* parent, + wxWindowID id, + wxMenu* menu, + const wxPoint& pos, + const wxSize& size, + long style, + long extraStyle); +#endif + // converts from Toplevel-Content relative to local static void Convert( wxPoint *pt , wxWidgetImpl *from , wxWidgetImpl *to ); protected : @@ -556,6 +578,7 @@ public : virtual void GetSelection( long* from, long* to ) const = 0 ; virtual void WriteText( const wxString& str ) = 0 ; + virtual bool GetStyle( long position, wxTextAttr& style); virtual void SetStyle( long start, long end, const wxTextAttr& style ) ; virtual void Copy() ; virtual void Cut() ; @@ -585,17 +608,19 @@ public : virtual int GetLineLength(long lineNo) const ; virtual wxString GetLineText(long lineNo) const ; virtual void CheckSpelling(bool WXUNUSED(check)) { } + + virtual wxSize GetBestSize() const { return wxDefaultSize; } }; // -// common interface bitmapbuttons +// common interface for buttons // -class wxBitmapButtonImpl +class wxButtonImpl { public : - wxBitmapButtonImpl(){} - virtual ~wxBitmapButtonImpl(){} + wxButtonImpl(){} + virtual ~wxButtonImpl(){} virtual void SetPressedBitmap( const wxBitmap& bitmap ) = 0; } ; @@ -639,7 +664,7 @@ public : { } - virtual void Destroy() + virtual void WillBeDestroyed() { } @@ -684,7 +709,11 @@ public : virtual void SetExtraStyle( long WXUNUSED(exStyle) ) { } - + + virtual void SetWindowStyleFlag( long WXUNUSED(style) ) + { + } + virtual bool SetBackgroundStyle(wxBackgroundStyle WXUNUSED(style)) { return false ; @@ -717,6 +746,8 @@ public : virtual bool IsFullScreen() const= 0; + virtual void ShowWithoutActivating() { Show(true); } + virtual bool ShowFullScreen(bool show, long style)= 0; virtual void RequestUserAttention(int flags) = 0; @@ -725,12 +756,17 @@ public : virtual void WindowToScreen( int *x, int *y ) = 0; + virtual bool IsActive() = 0; + wxNonOwnedWindow* GetWXPeer() { return m_wxPeer; } // static creation methods, must be implemented by all toolkits static wxNonOwnedWindowImpl* CreateNonOwnedWindow( wxNonOwnedWindow* wxpeer, wxWindow* parent, const wxPoint& pos, const wxSize& size, long style, long extraStyle, const wxString& name ) ; + + virtual void SetModified(bool WXUNUSED(modified)) { } + virtual bool IsModified() const { return false; } protected : wxNonOwnedWindow* m_wxPeer;