X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5f6475c145b713efc0c3d8b482338438e927b763..ab78328d2a81c8ef5f8211124b50f09687a207e7:/include/wx/pickerbase.h diff --git a/include/wx/pickerbase.h b/include/wx/pickerbase.h index e6a441fc26..8b9be3dd0f 100644 --- a/include/wx/pickerbase.h +++ b/include/wx/pickerbase.h @@ -14,10 +14,12 @@ #include "wx/control.h" #include "wx/sizer.h" +#include "wx/containr.h" -class WXDLLIMPEXP_CORE wxTextCtrl; +class WXDLLIMPEXP_FWD_CORE wxTextCtrl; +class WXDLLIMPEXP_FWD_CORE wxToolTip; -extern WXDLLEXPORT_DATA(const wxChar) wxButtonNameStr[]; +extern WXDLLIMPEXP_DATA_CORE(const char) wxButtonNameStr[]; // ---------------------------------------------------------------------------- // wxPickerBase is the base class for the picker controls which support @@ -29,13 +31,14 @@ extern WXDLLEXPORT_DATA(const wxChar) wxButtonNameStr[]; // ---------------------------------------------------------------------------- #define wxPB_USE_TEXTCTRL 0x0002 +#define wxPB_SMALL 0x8000 -class WXDLLIMPEXP_CORE wxPickerBase : public wxControl +class WXDLLIMPEXP_CORE wxPickerBase : public wxNavigationEnabled { public: // ctor: text is the associated text control wxPickerBase() : m_text(NULL), m_picker(NULL), m_sizer(NULL) - { m_container.SetContainerWindow(this); } + { } virtual ~wxPickerBase() {} @@ -48,9 +51,7 @@ public: const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxButtonNameStr, - long textstyle = 0); - + const wxString& name = wxButtonNameStr); public: // public API @@ -105,20 +106,27 @@ public: // public API wxControl *GetPickerCtrl() { return m_picker; } -public: // methods that derived class must/may override + void SetTextCtrl(wxTextCtrl* text) + { m_text = text; } + void SetPickerCtrl(wxControl* picker) + { m_picker = picker; } + // methods that derived class must/may override virtual void UpdatePickerFromTextCtrl() = 0; virtual void UpdateTextCtrlFromPicker() = 0; -protected: // utility functions +protected: + // overridden base class methods +#if wxUSE_TOOLTIPS + virtual void DoSetToolTip(wxToolTip *tip); +#endif // wxUSE_TOOLTIPS + // event handlers void OnTextCtrlDelete(wxWindowDestroyEvent &); void OnTextCtrlUpdate(wxCommandEvent &); void OnTextCtrlKillFocus(wxFocusEvent &); - void OnSize(wxSizeEvent &); - // returns the set of styles for the attached wxTextCtrl // from given wxPickerBase's styles virtual long GetTextCtrlStyle(long style) const @@ -174,10 +182,6 @@ protected: private: DECLARE_ABSTRACT_CLASS(wxPickerBase) - DECLARE_EVENT_TABLE() - - // This class must be something just like a panel... - WX_DECLARE_CONTROL_CONTAINER(); };