X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/befb44cf2ea21149c1c5a04c11a13e36051cba22..09b895cb4a954494063eb17d3dc302a654fd99e5:/include/wx/mac/carbon/choice.h diff --git a/include/wx/mac/carbon/choice.h b/include/wx/mac/carbon/choice.h index 0ea661d53b..c73a831069 100644 --- a/include/wx/mac/carbon/choice.h +++ b/include/wx/mac/carbon/choice.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: choice.h +// Name: wx/mac/carbon/choice.h // Purpose: wxChoice class // Author: Stefan Csomor // Modified by: @@ -12,21 +12,17 @@ #ifndef _WX_CHOICE_H_ #define _WX_CHOICE_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "choice.h" -#endif - #include "wx/control.h" #include "wx/dynarray.h" #include "wx/arrstr.h" -WXDLLEXPORT_DATA(extern const wxChar*) wxChoiceNameStr; +WXDLLIMPEXP_DATA_CORE(extern const char) wxChoiceNameStr[]; WX_DEFINE_ARRAY( char * , wxChoiceDataArray ) ; // Choice item -class WXDLLEXPORT wxChoice: public wxChoiceBase +class WXDLLIMPEXP_CORE wxChoice: public wxChoiceBase { DECLARE_DYNAMIC_CLASS(wxChoice) @@ -34,78 +30,69 @@ public: wxChoice() : m_strings(), m_datas(), m_macPopUpMenuHandle(NULL) {} - + virtual ~wxChoice() ; - wxChoice(wxWindow *parent, wxWindowID id, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, - int n = 0, const wxString choices[] = NULL, - long style = 0, - const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxChoiceNameStr) - { - Create(parent, id, pos, size, n, choices, style, validator, name); - } - wxChoice(wxWindow *parent, wxWindowID id, - const wxPoint& pos, - const wxSize& size, - const wxArrayString& choices, - long style = 0, - const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxChoiceNameStr) - { - Create(parent, id, pos, size, choices, style, validator, name); - } - - bool Create(wxWindow *parent, wxWindowID id, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, - int n = 0, const wxString choices[] = NULL, - long style = 0, - const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxChoiceNameStr); - bool Create(wxWindow *parent, wxWindowID id, - const wxPoint& pos, - const wxSize& size, - const wxArrayString& choices, - long style = 0, - const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxChoiceNameStr); - - // implement base class pure virtuals - virtual int DoAppend(const wxString& item); - virtual int DoInsert(const wxString& item, int pos); - virtual void Delete(int n); - virtual void Clear(); - - virtual int GetCount() const ; - virtual int GetSelection() const ; - virtual void SetSelection(int n); - int GetCurrentSelection() const { return GetSelection(); } - - virtual int FindString(const wxString& s) const; - virtual wxString GetString(int n) const ; - virtual void SetString( int , const wxString& s ) ; - virtual wxInt32 MacControlHit( WXEVENTHANDLERREF handler , WXEVENTREF event ) ; + wxChoice(wxWindow *parent, wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + int n = 0, const wxString choices[] = NULL, + long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxChoiceNameStr) + { + Create(parent, id, pos, size, n, choices, style, validator, name); + } + wxChoice(wxWindow *parent, wxWindowID id, + const wxPoint& pos, + const wxSize& size, + const wxArrayString& choices, + long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxChoiceNameStr) + { + Create(parent, id, pos, size, choices, style, validator, name); + } + + bool Create(wxWindow *parent, wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + int n = 0, const wxString choices[] = NULL, + long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxChoiceNameStr); + bool Create(wxWindow *parent, wxWindowID id, + const wxPoint& pos, + const wxSize& size, + const wxArrayString& choices, + long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxChoiceNameStr); + + virtual unsigned int GetCount() const ; + virtual int GetSelection() const ; + virtual void SetSelection(int n); + + virtual int FindString(const wxString& s, bool bCase = false) const; + virtual wxString GetString(unsigned int n) const ; + virtual void SetString(unsigned int pos, const wxString& s); + virtual wxInt32 MacControlHit( WXEVENTHANDLERREF handler , WXEVENTREF event ) ; protected: - virtual wxSize DoGetBestSize() const ; + virtual void DoDeleteOneItem(unsigned int n); + virtual void DoClear(); -public: // for wxComboBox only - virtual void DoSetItemClientData( int n, void* clientData ); - virtual void* DoGetItemClientData( int n ) const; - virtual void DoSetItemClientObject( int n, wxClientData* clientData ); - virtual wxClientData* DoGetItemClientObject( int n ) const; + virtual wxSize DoGetBestSize() const ; + virtual int DoInsertItems(const wxArrayStringsAdapter& items, + unsigned int pos, + void **clientData, wxClientDataType type); -protected: - // free all memory we have (used by Clear() and dtor) - // prevent collision with some BSD definitions of macro Free() - void FreeData(); + virtual void DoSetItemClientData(unsigned int n, void* clientData); + virtual void* DoGetItemClientData(unsigned int n) const; - wxArrayString m_strings; - wxChoiceDataArray m_datas ; - WXHMENU m_macPopUpMenuHandle ; + wxArrayString m_strings; + wxChoiceDataArray m_datas ; + WXHMENU m_macPopUpMenuHandle ; }; #endif