// "select" and "deselect"
//-----------------------------------------------------------------------------
+static void gtk_listitem_select_callback( GtkWidget *WXUNUSED(widget), wxListBox *listbox );
+
+static void gtk_listitem_deselect_callback( GtkWidget *widget, wxListBox *listbox )
+{
+ gtk_listitem_select_callback( widget, listbox );
+}
+
static void gtk_listitem_select_callback( GtkWidget *WXUNUSED(widget), wxListBox *listbox )
{
if (g_isIdle) wxapp_install_idle_handler();
if (style & wxLB_MULTIPLE)
gtk_signal_connect( GTK_OBJECT(list_item), "deselect",
- GTK_SIGNAL_FUNC(gtk_listitem_select_callback), (gpointer)this );
+ GTK_SIGNAL_FUNC(gtk_listitem_deselect_callback), (gpointer)this );
gtk_signal_connect( GTK_OBJECT(list_item),
"button_press_event",
if (HasFlag(wxLB_MULTIPLE))
gtk_signal_connect( GTK_OBJECT(list_item), "deselect",
- GTK_SIGNAL_FUNC(gtk_listitem_select_callback), (gpointer)this );
+ GTK_SIGNAL_FUNC(gtk_listitem_deselect_callback), (gpointer)this );
gtk_signal_connect( GTK_OBJECT(list_item),
"button_press_event",
gtk_widget_realize( list_item );
gtk_widget_realize( GTK_BIN(list_item)->child );
- if (m_widgetStyle) ApplyWidgetStyle();
+ //if (m_widgetStyle) ApplyWidgetStyle();
+ if (m_widgetStyle) {
+ // Apply current widget style to the new list_item
+ gtk_widget_set_style( GTK_WIDGET( list_item ), m_widgetStyle );
+ GtkBin *bin = GTK_BIN( list_item );
+ GtkWidget *label = GTK_WIDGET( bin->child );
+ gtk_widget_set_style( label, m_widgetStyle );
+ }
#if wxUSE_DRAG_AND_DROP
#ifndef NEW_GTK_DND_CODE
if (HasFlag(wxLB_MULTIPLE))
gtk_signal_disconnect_by_func( GTK_OBJECT(child->data),
- GTK_SIGNAL_FUNC(gtk_listitem_select_callback), (gpointer)this );
+ GTK_SIGNAL_FUNC(gtk_listitem_deselect_callback), (gpointer)this );
child = child->next;
}
if (HasFlag(wxLB_MULTIPLE))
gtk_signal_connect( GTK_OBJECT(child->data), "deselect",
- GTK_SIGNAL_FUNC(gtk_listitem_select_callback), (gpointer)this );
+ GTK_SIGNAL_FUNC(gtk_listitem_deselect_callback), (gpointer)this );
child = child->next;
}
}
}
-#endif
\ No newline at end of file
+#endif