}
m_widget = gtk_combo_box_new_text();
+ g_object_ref(m_widget);
Append(n, choices);
EnableEvents();
}
+void wxChoice::SetColumns(int n)
+{
+ gtk_combo_box_set_wrap_width(GTK_COMBO_BOX(m_widget), n);
+}
+
+int wxChoice::GetColumns() const
+{
+ // gtk_combo_box_get_wrap_width() was added in gtk 2.6
+ gint intval;
+ g_object_get(G_OBJECT(m_widget), "wrap-width", &intval, NULL);
+ return intval;
+}
+
+
void wxChoice::DisableEvents()
{
g_signal_handlers_block_by_func(m_widget,
// in the combobox
if ( m_widget )
{
- ret.x = 60; // start with something "sensible"
+ ret.x = GetCount() > 0 ? 0 : 60; // start with something "sensible"
int width;
unsigned int count = GetCount();
for ( unsigned int n = 0; n < count; n++ )
return ret;
}
+void wxChoice::DoApplyWidgetStyle(GtkRcStyle *style)
+{
+ gtk_widget_modify_style(m_widget, style);
+ gtk_widget_modify_style(GTK_BIN(m_widget)->child, style);
+}
+
+
// static
wxVisualAttributes
wxChoice::GetClassDefaultAttributes(wxWindowVariant WXUNUSED(variant))