X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4765d335f603c29f1fd300288ff1d40a118fcf0e..81f90336020eab200e8f09a6b726c7ec49439b68:/include/wx/mac/control.h diff --git a/include/wx/mac/control.h b/include/wx/mac/control.h index 713f91fd09..e98814a856 100644 --- a/include/wx/mac/control.h +++ b/include/wx/mac/control.h @@ -1,119 +1,5 @@ -///////////////////////////////////////////////////////////////////////////// -// Name: control.h -// Purpose: wxControl class -// Author: AUTHOR -// Modified by: -// Created: ??/??/98 -// RCS-ID: $Id$ -// Copyright: (c) AUTHOR -// Licence: wxWindows licence -///////////////////////////////////////////////////////////////////////////// - -#ifndef _WX_CONTROL_H_ -#define _WX_CONTROL_H_ - -#ifdef __GNUG__ -#pragma interface "control.h" +#ifdef __WXMAC_CLASSIC__ +#include "wx/mac/classic/control.h" +#else +#include "wx/mac/carbon/control.h" #endif - -WXDLLEXPORT_DATA(extern const wxChar*) wxControlNameStr; - -// General item class -class WXDLLEXPORT wxControl : public wxControlBase -{ - DECLARE_ABSTRACT_CLASS(wxControl) - -public: - wxControl(); - virtual ~wxControl(); - - 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); - - // Simulates an event - virtual void Command(wxCommandEvent& event) { ProcessCommand(event); } - - // implementation from now on - // -------------------------- - - // Calls the callback and appropriate event handlers - bool ProcessCommand(wxCommandEvent& event); - 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 ;} - -#if WXWIN_COMPATIBILITY - virtual void SetButtonColour(const wxColour& WXUNUSED(col)) { } - wxColour* GetButtonColour() const { return NULL; } - - inline virtual void SetLabelFont(const wxFont& font); - 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; - - virtual wxSize DoGetBestSize() const ; - -private: - DECLARE_EVENT_TABLE() -}; - - -#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) ; -void wxRemoveMacControlAssociation(wxControl *control) ; - -#endif - // _WX_CONTROL_H_