]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/mac/carbon/checklst.h
Applied Hartwig's implementation of OS X wxDataViewCtrl
[wxWidgets.git] / include / wx / mac / carbon / checklst.h
index 35f3bd885deebeede877992f0971fea39bbc0f2a..3cc70996b402f8e8f91e2297dca5ac2896e6aa25 100644 (file)
@@ -1,5 +1,5 @@
 ///////////////////////////////////////////////////////////////////////////////
-// Name:        checklst.h
+// Name:        wx/mac/carbon/checklst.h
 // Purpose:     wxCheckListBox class - a listbox with checkable items
 //              Note: this is an optional class.
 // Author:      Stefan Csomor
 // Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
-#ifndef _WX_CHECKLST_H_
-#define _WX_CHECKLST_H_
+#ifndef _WX_MAC_CHECKLST_H_
+#define _WX_MAC_CHECKLST_H_
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "checklst.h"
-#endif
+class wxMacCheckListControl
+{
+public :
+    virtual bool            MacIsChecked(unsigned int n) const = 0;
+    virtual void            MacCheck(unsigned int n, bool bCheck = true) = 0;
 
-#if !defined(__MWERKS__) && !defined(__UNIX__)
-typedef   unsigned int  size_t;
-#endif
+    virtual ~wxMacCheckListControl() { }
+};
 
 class WXDLLEXPORT wxCheckListBox : public wxCheckListBoxBase
 {
-  DECLARE_DYNAMIC_CLASS(wxCheckListBox)
 public:
-  // ctors
+    // ctors
     wxCheckListBox() { Init(); }
     wxCheckListBox(wxWindow *parent,
                    wxWindowID id,
@@ -73,33 +73,18 @@ public:
                 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) ;
+    // items may be checked
+    bool  IsChecked(unsigned int uiIndex) const;
+    void  Check(unsigned int uiIndex, bool bCheck = true);
 
-    // metrics
-    wxInt32 m_checkBoxWidth;
-    wxInt32 m_checkBoxHeight;
-    wxInt32    m_TextBaseLineOffset;
+    wxMacCheckListControl* GetPeer() const;
 
-    // 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()
+    DECLARE_EVENT_TABLE()
+    DECLARE_DYNAMIC_CLASS(wxCheckListBox)
 };
 
-#endif
-    // _WX_CHECKLST_H_
+#endif // _WX_MAC_CHECKLST_H_