]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/checklst_osx.cpp
copy item text for app menu items from wx menus
[wxWidgets.git] / src / osx / checklst_osx.cpp
index 574d9ecf83d4108c66390044a37c0886f24a8373..16e0993bc4ea5d0fe434df61b60c17828a996694 100644 (file)
 
 #include "wx/osx/private.h"
 
-IMPLEMENT_DYNAMIC_CLASS(wxCheckListBox, wxListBox)
-
 BEGIN_EVENT_TABLE(wxCheckListBox, wxListBox)
 END_EVENT_TABLE()
+
 void wxCheckListBox::Init()
 {
 }
@@ -85,7 +83,7 @@ bool wxCheckListBox::Create(
 bool wxCheckListBox::IsChecked(unsigned int n) const
 {
     wxCHECK_MSG( IsValid(n), false,
-                 _T("invalid index in wxCheckListBox::IsChecked") );
+                 wxT("invalid index in wxCheckListBox::IsChecked") );
 
     return m_checks[n] != 0;
 }
@@ -93,7 +91,7 @@ bool wxCheckListBox::IsChecked(unsigned int n) const
 void wxCheckListBox::Check(unsigned int n, bool check)
 {
     wxCHECK_RET( IsValid(n),
-                 _T("invalid index in wxCheckListBox::Check") );
+                 wxT("invalid index in wxCheckListBox::Check") );
 
     // intermediate var is needed to avoid compiler warning with VC++
     bool isChecked = m_checks[n] != 0;
@@ -108,7 +106,7 @@ void wxCheckListBox::Check(unsigned int n, bool check)
 void wxCheckListBox::GetValueCallback( unsigned int n, wxListWidgetColumn* col , wxListWidgetCellValue& value )
 {
     if ( col == m_checkColumn )
-        value.Set( IsChecked( n ) );
+        value.Check( IsChecked( n ) );
     else
         wxListBox::GetValueCallback( n, col, value );
 }
@@ -117,10 +115,11 @@ void wxCheckListBox::SetValueCallback( unsigned int n, wxListWidgetColumn* col ,
 {
     if ( col == m_checkColumn )
     {
-        Check( n, value.GetIntValue() );
-        
+        Check( n, value.IsChecked() );
+
         wxCommandEvent event( wxEVT_COMMAND_CHECKLISTBOX_TOGGLED, GetId() );
         event.SetInt( n );
+        event.SetString( GetString( n ) );
         event.SetEventObject( this );
         HandleWindowEvent( event );
     }
@@ -134,6 +133,8 @@ void wxCheckListBox::SetValueCallback( unsigned int n, wxListWidgetColumn* col ,
 
 void wxCheckListBox::OnItemInserted(unsigned int pos)
 {
+    wxListBox::OnItemInserted(pos);
+
     m_checks.Insert(false, pos );
 }
 
@@ -146,6 +147,8 @@ void wxCheckListBox::DoDeleteOneItem(unsigned int n)
 
 void wxCheckListBox::DoClear()
 {
+    wxListBox::DoClear();
+
     m_checks.Empty();
 }