]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/checklst.cpp
Move wxCocoa's wxFontRefData from the header to the implementation file.
[wxWidgets.git] / src / mac / carbon / checklst.cpp
index 87906f151a18bb2bfa4516c3acbbe2d08d4ea718..1374f2646c802ce92e49d75cba64be6d91a58c09 100644 (file)
@@ -37,14 +37,18 @@ class wxMacDataBrowserCheckListControl : public wxMacDataBrowserListControl , pu
 {
 public:
     wxMacDataBrowserCheckListControl( wxListBox *peer, const wxPoint& pos, const wxSize& size, long style );
-    ~wxMacDataBrowserCheckListControl();
+    wxMacDataBrowserCheckListControl() {}
+    virtual ~wxMacDataBrowserCheckListControl();
 
-    virtual wxMacListBoxItem* CreateItem();
+    virtual wxMacDataItem* CreateItem();
 
     virtual bool            MacIsChecked(unsigned int n) const;
     virtual void            MacCheck(unsigned int n, bool bCheck = true);
+    DECLARE_DYNAMIC_CLASS_NO_COPY(wxMacDataBrowserCheckListControl)
 };
 
+IMPLEMENT_DYNAMIC_CLASS( wxMacDataBrowserCheckListControl , wxMacDataBrowserListControl )
+
 void wxCheckListBox::Init()
 {
 }
@@ -85,7 +89,6 @@ bool wxCheckListBox::Create(
 
     // this will be increased by our Append command
     wxMacDataBrowserCheckListControl* control = new wxMacDataBrowserCheckListControl( this, pos, size, style );
-    control->SetClientDataType( m_clientDataItemsType );
     m_peer = control;
 
     MacPostControlCreate(pos,size);
@@ -93,7 +96,7 @@ bool wxCheckListBox::Create(
     InsertItems( n , choices , 0 );
 
     // Needed because it is a wxControlWithItems
-    SetBestSize( size );
+    SetInitialSize( size );
 
     return true;
 }
@@ -124,7 +127,8 @@ void wxCheckListBox::Check(unsigned int item, bool check)
 
 wxMacCheckListControl* wxCheckListBox::GetPeer() const
 {
-    return dynamic_cast<wxMacCheckListControl*>(m_peer);
+    wxMacDataBrowserCheckListControl *lb = wxDynamicCast(m_peer,wxMacDataBrowserCheckListControl);
+    return lb ? wx_static_cast(wxMacCheckListControl*,lb) : 0 ;
 }
 
 const short kCheckboxColumnId = 1026;
@@ -174,7 +178,7 @@ public :
         m_isChecked = false;
     }
 
-    ~wxMacCheckListBoxItem()
+    virtual ~wxMacCheckListBoxItem()
     {
     }
 
@@ -249,21 +253,21 @@ protected :
     bool        m_isChecked;
 };
 
-wxMacListBoxItem* wxMacDataBrowserCheckListControl::CreateItem()
+wxMacDataItem* wxMacDataBrowserCheckListControl::CreateItem()
 {
     return new wxMacCheckListBoxItem();
 }
 
 void wxMacDataBrowserCheckListControl::MacCheck( unsigned int n, bool bCheck)
 {
-    wxMacCheckListBoxItem* item = dynamic_cast<wxMacCheckListBoxItem*>( GetItemFromLine( n) );
+    wxMacCheckListBoxItem* item = wx_static_cast(wxMacCheckListBoxItem*, GetItemFromLine( n) );
     item->Check( bCheck);
     UpdateItem(wxMacDataBrowserRootContainer, item , kCheckboxColumnId);
 }
 
 bool wxMacDataBrowserCheckListControl::MacIsChecked( unsigned int n) const
 {
-    wxMacCheckListBoxItem * item = dynamic_cast<wxMacCheckListBoxItem*>( GetItemFromLine( n ) );
+    wxMacCheckListBoxItem * item = wx_static_cast( wxMacCheckListBoxItem*, GetItemFromLine( n ) );
     return item->IsChecked();
 }