X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4765d335f603c29f1fd300288ff1d40a118fcf0e..f1c75e0f93b4ec9f45827cc5a2d16ef17a675dfc:/include/wx/mac/control.h diff --git a/include/wx/mac/control.h b/include/wx/mac/control.h index 713f91fd09..ddad4ae07d 100644 --- a/include/wx/mac/control.h +++ b/include/wx/mac/control.h @@ -1,18 +1,18 @@ ///////////////////////////////////////////////////////////////////////////// // Name: control.h // Purpose: wxControl class -// Author: AUTHOR +// Author: Stefan Csomor // Modified by: -// Created: ??/??/98 +// Created: 1998-01-01 // RCS-ID: $Id$ -// Copyright: (c) AUTHOR -// Licence: wxWindows licence +// Copyright: (c) Stefan Csomor +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_CONTROL_H_ #define _WX_CONTROL_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "control.h" #endif @@ -25,13 +25,21 @@ class WXDLLEXPORT wxControl : public wxControlBase public: wxControl(); - virtual ~wxControl(); + wxControl(wxWindow *parent, wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxControlNameStr) + { + Create(parent, id, pos, size, style, validator, name); + } bool Create(wxWindow *parent, wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxControlNameStr); + virtual ~wxControl(); // Simulates an event virtual void Command(wxCommandEvent& event) { ProcessCommand(event); } @@ -44,32 +52,37 @@ public: virtual void SetLabel(const wxString& title) ; wxList& GetSubcontrols() { return m_subControls; } - + void OnEraseBackground(wxEraseEvent& event); - - virtual bool Enable(bool enabled) ; - virtual bool Show(bool show) ; - - virtual void MacHandleControlClick( ControlHandle control , SInt16 controlpart ) ; - virtual void MacPreControlCreate( wxWindow *parent, wxWindowID id, wxString label , - const wxPoint& pos, - const wxSize& size, long style, - const wxValidator& validator, - const wxString& name , Rect *outBounds , StringPtr maclabel ) ; - virtual void MacPostControlCreate() ; - virtual void MacAdjustControlRect() ; - virtual ControlHandle MacGetContainerForEmbedding() ; - virtual void MacSuperChangedPosition() ; - virtual void MacSuperEnabled( bool enabled ) ; - virtual void MacSuperShown( bool show ) ; - virtual bool MacCanFocus() const ; - - virtual void DoSetSize(int x, int y,int width, int height,int sizeFlags ) ; - virtual void OnKeyDown( wxKeyEvent &event ) ; - virtual void OnMouseEvent( wxMouseEvent &event ) ; - virtual void OnPaint(wxPaintEvent& event) ; - virtual void Refresh(bool eraseBack = TRUE, const wxRect *rect = NULL) ; - ControlHandle GetMacControl() { return m_macControl ;} + + virtual bool Enable(bool enable = TRUE) ; + virtual bool Show(bool show = TRUE) ; + + virtual void MacRedrawControl () ; + virtual void MacHandleControlClick( WXWidget control , wxInt16 controlpart , bool mouseStillDown ) ; + virtual void MacPreControlCreate( wxWindow *parent, wxWindowID id, wxString label , + const wxPoint& pos, + const wxSize& size, long style, + const wxValidator& validator, + const wxString& name , + WXRECTPTR outBounds , + unsigned char* maclabel ) ; + virtual void MacPostControlCreate() ; + virtual void MacAdjustControlRect() ; + virtual WXWidget MacGetContainerForEmbedding() ; + virtual void MacSuperChangedPosition() ; + virtual void MacSuperEnabled( bool enabled ) ; + virtual void MacSuperShown( bool show ) ; + virtual bool MacCanFocus() const ; + virtual void MacUpdateDimensions() ; + void* MacGetControlAction() { return m_macControlAction ; } + + virtual void DoSetSize(int x, int y,int width, int height,int sizeFlags = wxSIZE_AUTO ) ; + void OnKeyDown( wxKeyEvent &event ) ; + void OnMouseEvent( wxMouseEvent &event ) ; + void OnPaint(wxPaintEvent& event) ; + virtual void Refresh(bool eraseBack = TRUE, const wxRect *rect = NULL) ; + WXWidget GetMacControl() { return m_macControl ;} #if WXWIN_COMPATIBILITY virtual void SetButtonColour(const wxColour& WXUNUSED(col)) { } @@ -79,24 +92,18 @@ public: inline virtual void SetButtonFont(const wxFont& font); inline wxFont& GetLabelFont() const; inline wxFont& GetButtonFont() const; - - // Adds callback - inline void Callback(const wxFunction function); - - wxFunction GetCallback() { return m_callback; } - -protected: - wxFunction m_callback; // Callback associated with the window #endif // WXWIN_COMPATIBILITY protected: // For controls like radiobuttons which are really composite - ControlHandle m_macControl ; - int m_macHorizontalBorder ; - int m_macVerticalBorder ; - wxList m_subControls; + WXWidget m_macControl ; + void* m_macControlAction ; + bool m_macControlIsShown ; + wxList m_subControls; + int m_macHorizontalBorder ; + int m_macVerticalBorder ; - virtual wxSize DoGetBestSize() const ; + virtual wxSize DoGetBestSize() const; private: DECLARE_EVENT_TABLE() @@ -104,15 +111,14 @@ private: #if WXWIN_COMPATIBILITY - inline void wxControl::Callback(const wxFunction f) { m_callback = f; }; inline wxFont& wxControl::GetLabelFont() const { return GetFont(); } inline wxFont& wxControl::GetButtonFont() const { return GetFont(); } inline void wxControl::SetLabelFont(const wxFont& font) { SetFont(font); } inline void wxControl::SetButtonFont(const wxFont& font) { SetFont(font); } #endif // WXWIN_COMPATIBILITY -wxControl *wxFindControlFromMacControl(ControlHandle inControl ) ; -void wxAssociateControlWithMacControl(ControlHandle inControl, wxControl *control) ; +wxControl *wxFindControlFromMacControl(WXWidget inControl ) ; +void wxAssociateControlWithMacControl(WXWidget inControl, wxControl *control) ; void wxRemoveMacControlAssociation(wxControl *control) ; #endif