X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/36195a44c32bcd2b14cd819ed675bc80fb2255bd..c6eaa6fb6733d8472a14e220a5656787eafda398:/include/wx/mac/checklst.h diff --git a/include/wx/mac/checklst.h b/include/wx/mac/checklst.h index 64514452fe..0f514889b0 100644 --- a/include/wx/mac/checklst.h +++ b/include/wx/mac/checklst.h @@ -17,31 +17,66 @@ #pragma interface "checklst.h" #endif -#include "wx/listbox.h" - -#if !defined(__MWERKS__) && !defined(__MACH__) +#if !defined(__MWERKS__) && !defined(__UNIX__) typedef unsigned int size_t; #endif -class wxCheckListBox : public wxListBox +class WXDLLEXPORT wxCheckListBox : public wxCheckListBoxBase { DECLARE_DYNAMIC_CLASS(wxCheckListBox) public: // ctors - wxCheckListBox(); - wxCheckListBox(wxWindow *parent, wxWindowID id, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, - int nStrings = 0, - const wxString choices[] = NULL, - long style = 0, - const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxListBoxNameStr); + wxCheckListBox() { Init(); } + wxCheckListBox(wxWindow *parent, + wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + int nStrings = 0, + const wxString *choices = NULL, + long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxListBoxNameStr) + { + Init(); + + Create(parent, id, pos, size, nStrings, choices, style, validator, name); + } + + bool Create(wxWindow *parent, + wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + int nStrings = 0, + const wxString *choices = NULL, + long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxListBoxNameStr); // items may be checked bool IsChecked(size_t uiIndex) const; void Check(size_t uiIndex, bool bCheck = TRUE); + void OnChar(wxKeyEvent& event) ; + void OnLeftClick(wxMouseEvent& event) ; + + // metrics + wxInt32 m_checkBoxWidth; + wxInt32 m_checkBoxHeight; + wxInt32 m_TextBaseLineOffset; + + // the array containing the checked status of the items + wxArrayInt m_checks; + // override all methods which add/delete items to update m_checks array as + // well + virtual void Delete(int n); +protected: + virtual int DoAppend(const wxString& item); + virtual void DoInsertItems(const wxArrayString& items, int pos); + virtual void DoSetItems(const wxArrayString& items, void **clientData); + virtual void DoClear(); + // common part of all ctors + void Init(); +private: DECLARE_EVENT_TABLE() };