X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/bbe0af5b15f8b8e95ed45abc2140fb3a1fac3c87..b58197f24a87e0dc81ba0bdd4fc1370470a5ae2f:/src/gtk/checklst.cpp diff --git a/src/gtk/checklst.cpp b/src/gtk/checklst.cpp index 82fb96dc1a..e47e7bd805 100644 --- a/src/gtk/checklst.cpp +++ b/src/gtk/checklst.cpp @@ -4,7 +4,7 @@ // Author: Robert Roebling // Id: $Id$ // Copyright: (c) 1998 Robert Roebling -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifdef __GNUG__ @@ -32,7 +32,7 @@ wxCheckListBox::wxCheckListBox(wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size, int nStrings, - const wxString choices[], + const wxString *choices, long style, const wxValidator& validator, const wxString& name ) @@ -44,18 +44,18 @@ wxCheckListBox::wxCheckListBox(wxWindow *parent, wxWindowID id, bool wxCheckListBox::IsChecked( int index ) const { wxCHECK_MSG( m_list != NULL, FALSE, "invalid checklistbox" ); - + GList *child = g_list_nth( m_list->children, index ); if (child) { GtkBin *bin = GTK_BIN( child->data ); GtkLabel *label = GTK_LABEL( bin->child ); - - wxString str = label->label; - + + wxString str = label->label; + return (str[1] == 'X'); } - + wxFAIL_MSG("wrong checklistbox index"); return FALSE; } @@ -63,31 +63,32 @@ bool wxCheckListBox::IsChecked( int index ) const void wxCheckListBox::Check( int index, bool check ) { wxCHECK_RET( m_list != NULL, "invalid checklistbox" ); - + GList *child = g_list_nth( m_list->children, index ); if (child) { GtkBin *bin = GTK_BIN( child->data ); GtkLabel *label = GTK_LABEL( bin->child ); - - wxString str = label->label; - + + wxString str = label->label; + if (check == (str[1] == 'X')) return; - - if (check) - str.SetChar( 1, 'X' ); - else - str.SetChar( 1, '-' ); - - gtk_label_set( label, str ); - - return; + + if (check) + str.SetChar( 1, 'X' ); + else + str.SetChar( 1, '-' ); + + gtk_label_set( label, str ); + + return; } - + wxFAIL_MSG("wrong checklistbox index"); } -int wxCheckListBox::GetItemHeight() +int wxCheckListBox::GetItemHeight() const { + // FIXME return 22; }