X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0dbd6262a9ee7d735fb3930707346298f71b2cb7..df7145da50005a9f512d8f3329b6ed2166e956d0:/include/wx/mac/checklst.h diff --git a/include/wx/mac/checklst.h b/include/wx/mac/checklst.h index fd6ad64785..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" - -#ifndef __MWERKS__ +#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() };