X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/674ac8b919eecbc201b5f23b470a567cd0565e10..08300277756de38e7a82e575147a45765c3349e6:/include/wx/motif/control.h diff --git a/include/wx/motif/control.h b/include/wx/motif/control.h index a1928d0a09..9fde5ab454 100644 --- a/include/wx/motif/control.h +++ b/include/wx/motif/control.h @@ -12,7 +12,7 @@ #ifndef _WX_CONTROL_H_ #define _WX_CONTROL_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma interface "control.h" #endif @@ -20,53 +20,61 @@ #include "wx/list.h" #include "wx/validate.h" -#define wxControlNameStr _T("control") - // General item class -class WXDLLEXPORT wxControl: public wxWindow +class WXDLLEXPORT wxControl: public wxControlBase { DECLARE_ABSTRACT_CLASS(wxControl) - + public: 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 ); - - ~wxControl(); - - // simulates the event, returns TRUE if the event was processed + 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); + + // simulates the event, returns true if the event was processed virtual void Command(wxCommandEvent& WXUNUSED(event)) { } - - // calls the callback and appropriate event handlers, returns TRUE if + + // calls the callback and appropriate event handlers, returns true if // event was processed virtual bool ProcessCommand(wxCommandEvent& event); - + virtual void SetLabel(const wxString& label); virtual wxString GetLabel() const ; - -#if WXWIN_COMPATIBILITY - void Callback(const wxFunction function) { m_callback = function; }; // Adds callback - - wxFunction GetCallback() { return m_callback; } -#endif // WXWIN_COMPATIBILITY - + bool InSetValue() const { return m_inSetValue; } - + protected: -#if WXWIN_COMPATIBILITY - wxFunction m_callback; // Callback associated with the window -#endif // WXWIN_COMPATIBILITY - - bool m_inSetValue; // Motif: prevent callbacks being called while - // in SetValue - + // calls wxControlBase::CreateControl, also sets foreground, background and + // font to parent's values + bool CreateControl(wxWindow *parent, + wxWindowID id, + const wxPoint& pos, + const wxSize& size, + long style, + const wxValidator& validator, + const wxString& name); + + // native implementation using XtQueryGeometry + virtual wxSize DoGetBestSize() const; + + // Motif: prevent callbacks being called while in SetValue + bool m_inSetValue; + DECLARE_EVENT_TABLE() }; -#endif - // _WX_CONTROL_H_ +#endif // _WX_CONTROL_H_ +