/////////////////////////////////////////////////////////////////////////////
-// Name: listbox.cpp
+// Name: src/gtk/listbox.cpp
// Purpose:
// Author: Robert Roebling
// Id: $Id$
if (ret)
{
- gtk_signal_emit_stop_by_name( GTK_OBJECT(widget), "key_press_event" );
+ g_signal_stop_emission_by_name (widget, "key_press_event");
return TRUE;
}
gtk_widget_show( GTK_WIDGET(m_list) );
- gtk_signal_connect( GTK_OBJECT(m_list), "realize",
- GTK_SIGNAL_FUNC(gtk_listbox_realized_callback), (gpointer) this );
+ g_signal_connect (m_list, "realize",
+ G_CALLBACK (gtk_listbox_realized_callback), this);
if ( style & wxLB_SORT )
{
else
gtk_list_insert_items( GTK_LIST (m_list), gitem_list, pos );
- gtk_signal_connect_after( GTK_OBJECT(list_item), "select",
- GTK_SIGNAL_FUNC(gtk_listitem_select_callback), (gpointer)this );
+ g_signal_connect_after (list_item, "select",
+ G_CALLBACK (gtk_listitem_select_callback),
+ this);
if (HasFlag(wxLB_MULTIPLE) || HasFlag(wxLB_EXTENDED))
- gtk_signal_connect_after( GTK_OBJECT(list_item), "deselect",
- GTK_SIGNAL_FUNC(gtk_listitem_deselect_callback), (gpointer)this );
-
- gtk_signal_connect( GTK_OBJECT(list_item),
- "button_press_event",
- (GtkSignalFunc)gtk_listbox_button_press_callback,
- (gpointer) this );
-
- gtk_signal_connect_after( GTK_OBJECT(list_item),
- "button_release_event",
- (GtkSignalFunc)gtk_listbox_button_release_callback,
- (gpointer) this );
-
- gtk_signal_connect( GTK_OBJECT(list_item),
- "key_press_event",
- (GtkSignalFunc)gtk_listbox_key_press_callback,
- (gpointer)this );
-
-
- gtk_signal_connect( GTK_OBJECT(list_item), "focus_in_event",
- GTK_SIGNAL_FUNC(gtk_listitem_focus_in_callback), (gpointer)this );
-
- gtk_signal_connect( GTK_OBJECT(list_item), "focus_out_event",
- GTK_SIGNAL_FUNC(gtk_listitem_focus_out_callback), (gpointer)this );
+ g_signal_connect_after (list_item, "deselect",
+ G_CALLBACK (gtk_listitem_deselect_callback),
+ this);
+
+ g_signal_connect (list_item, "button_press_event",
+ G_CALLBACK (gtk_listbox_button_press_callback),
+ this);
+ g_signal_connect_after (list_item, "button_release_event",
+ G_CALLBACK (gtk_listbox_button_release_callback),
+ this);
+ g_signal_connect (list_item, "key_press_event",
+ G_CALLBACK (gtk_listbox_key_press_callback),
+ this);
+ g_signal_connect (list_item, "focus_in_event",
+ G_CALLBACK (gtk_listitem_focus_in_callback),
+ this);
+ g_signal_connect (list_item, "focus_out_event",
+ G_CALLBACK (gtk_listitem_focus_out_callback),
+ this);
ConnectWidget( list_item );
wxString str;
-#ifdef __WXGTK20__
str = wxGTK_CONV_BACK( gtk_label_get_text( label ) );
-#else
- str = wxString( label->label );
-#endif
#if wxUSE_CHECKLISTBOX
// checklistboxes have "[±] " prepended to their lables, remove it
wxString wxListBox::GetString( int n ) const
{
- wxCHECK_MSG( m_list != NULL, wxT(""), wxT("invalid listbox") );
+ wxCHECK_MSG( m_list != NULL, wxEmptyString, wxT("invalid listbox") );
GList *child = g_list_nth( m_list->children, n );
if (child)
wxFAIL_MSG(wxT("wrong listbox index"));
- return wxT("");
+ return wxEmptyString;
}
int wxListBox::GetCount() const
return g_list_length(children);
}
-int wxListBox::FindString( const wxString &item ) const
+int wxListBox::FindString( const wxString &item, bool bCase ) const
{
- wxCHECK_MSG( m_list != NULL, -1, wxT("invalid listbox") );
+ wxCHECK_MSG( m_list != NULL, wxNOT_FOUND, wxT("invalid listbox") );
GList *child = m_list->children;
int count = 0;
while (child)
{
- if ( GetRealLabel(child) == item )
+ if ( item.IsSameAs( GetRealLabel(child), bCase ) )
return count;
count++;
}
#endif // wxUSE_LISTBOX
-