X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/befe64edb45229e114b9c07606356b3aadd876ee..1d90958ba35d07d364812b1c6e04def17f561ad8:/include/wx/osx/cocoa/private.h diff --git a/include/wx/osx/cocoa/private.h b/include/wx/osx/cocoa/private.h index 998705a264..b776801191 100644 --- a/include/wx/osx/cocoa/private.h +++ b/include/wx/osx/cocoa/private.h @@ -89,6 +89,8 @@ public : virtual void SetNeedsDisplay( const wxRect* where = NULL ); virtual bool GetNeedsDisplay() const; + virtual void SetDrawingEnabled(bool enabled); + virtual bool CanFocus() const; // return true if successful virtual bool SetFocus(); @@ -136,10 +138,14 @@ public : virtual void SetupKeyEvent(wxKeyEvent &wxevent, NSEvent * nsEvent, NSString* charString = NULL); virtual void SetupMouseEvent(wxMouseEvent &wxevent, NSEvent * nsEvent); + void SetupCoordinates(wxCoord &x, wxCoord &y, NSEvent *nsEvent); + virtual bool SetupCursor(NSEvent* event); +#if !wxOSX_USE_NATIVE_FLIPPED void SetFlipped(bool flipped); virtual bool IsFlipped() const { return m_isFlipped; } +#endif // cocoa thunk connected calls @@ -155,7 +161,9 @@ public : virtual bool acceptsFirstResponder(WXWidget slf, void* _cmd); virtual bool becomeFirstResponder(WXWidget slf, void* _cmd); virtual bool resignFirstResponder(WXWidget slf, void* _cmd); +#if !wxOSX_USE_NATIVE_FLIPPED virtual bool isFlipped(WXWidget slf, void* _cmd); +#endif virtual void drawRect(void* rect, WXWidget slf, void* _cmd); virtual void controlAction(WXWidget slf, void* _cmd, void* sender); @@ -168,7 +176,9 @@ public : protected: WXWidget m_osxView; NSEvent* m_lastKeyDownEvent; +#if !wxOSX_USE_NATIVE_FLIPPED bool m_isFlipped; +#endif // if it the control has an editor, that editor will already send some // events, don't resend them bool m_hasEditor; @@ -248,6 +258,8 @@ public : CGWindowLevel GetWindowLevel() const { return m_macWindowLevel; } void RestoreWindowLevel(); + + static WX_NSResponder GetNextFirstResponder() ; protected : CGWindowLevel m_macWindowLevel; WXWindow m_macWindow; @@ -255,6 +267,24 @@ protected : DECLARE_DYNAMIC_CLASS_NO_COPY(wxNonOwnedWindowCocoaImpl) }; +DECLARE_WXCOCOA_OBJC_CLASS( wxNSButton ); + +class wxButtonCocoaImpl : public wxWidgetCocoaImpl, public wxButtonImpl +{ +public: + wxButtonCocoaImpl(wxWindowMac *wxpeer, wxNSButton *v); + virtual void SetBitmap(const wxBitmap& bitmap); +#if wxUSE_MARKUP + virtual void SetLabelMarkup(const wxString& markup); +#endif // wxUSE_MARKUP + + void SetPressedBitmap( const wxBitmap& bitmap ); + void GetLayoutInset(int &left , int &top , int &right, int &bottom) const; + void SetAcceleratorFromLabel(const wxString& label); + + NSButton *GetNSButton() const; +}; + #ifdef __OBJC__ WXDLLIMPEXP_CORE NSScreen* wxOSXGetMenuScreen(); @@ -266,6 +296,8 @@ protected : NSRect WXDLLIMPEXP_CORE wxOSXGetFrameForControl( wxWindowMac* window , const wxPoint& pos , const wxSize &size , bool adjustForOrigin = true ); + WXDLLIMPEXP_CORE NSView* wxOSXGetViewFromResponder( NSResponder* responder ); + // used for many wxControls @interface wxNSButton : NSButton @@ -313,6 +345,18 @@ protected : @end + @interface wxNSComboBox : NSComboBox + { + wxNSTextFieldEditor* fieldEditor; + } + + - (wxNSTextFieldEditor*) fieldEditor; + - (void) setFieldEditor:(wxNSTextFieldEditor*) fieldEditor; + + @end + + + @interface wxNSMenu : NSMenu { wxMenuImpl* impl;