This is an automated email from the git hooks/post-receive script. o c h o s i p u s h e d a c o m m i t t o b r a n c h m a s t e r in repository xfce/xfce4-settings.
commit 73ea90a4c5e2f2fc317666d5cde7a94dcbbe950c Author: Simon Steinbeiss <[email protected]> Date: Sat Sep 1 00:34:22 2018 +0200 display: WIP switch to profile treeview instead of combo --- dialogs/display-settings/display-dialog.glade | 191 +++++++++++++++----------- dialogs/display-settings/main.c | 35 ++--- 2 files changed, 128 insertions(+), 98 deletions(-) diff --git a/dialogs/display-settings/display-dialog.glade b/dialogs/display-settings/display-dialog.glade index 76b6865..3eddd82 100644 --- a/dialogs/display-settings/display-dialog.glade +++ b/dialogs/display-settings/display-dialog.glade @@ -398,74 +398,6 @@ </packing> </child> <child> - <object class="GtkComboBox" id="randr-profile"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="hexpand">True</property> - <property name="has_entry">True</property> - <property name="entry_text_column">0</property> - <child internal-child="entry"> - <object class="GtkEntry"> - <property name="can_focus">True</property> - <property name="is_focus">True</property> - <property name="margin_left">12</property> - <property name="primary_icon_activatable">False</property> - <property name="secondary_icon_activatable">False</property> - <property name="primary_icon_sensitive">False</property> - <property name="secondary_icon_sensitive">False</property> - </object> - </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkBox"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="halign">end</property> - <child> - <object class="GtkButton" id="button-profile-delete"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes">Delete the currently selected display profile.</property> - <property name="image">image1</property> - <property name="always_show_image">True</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="button-profile-save"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes">Save a new display profile or update an existing profile.</property> - <property name="image">image2</property> - <property name="always_show_image">True</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> - </packing> - </child> - <style> - <class name="linked"/> - </style> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> <object class="GtkCheckButton" id="minimal-autoshow"> <property name="label" translatable="yes">Configure _new displays when connected</property> <property name="visible">True</property> @@ -497,20 +429,6 @@ </packing> </child> <child> - <object class="GtkButton" id="button-profile-apply"> - <property name="label" translatable="yes">Apply</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes">Apply the currently selected display profile.</property> - <property name="always_show_image">True</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">2</property> - </packing> - </child> - <child> <object class="GtkLabel"> <property name="visible">True</property> <property name="can_focus">False</property> @@ -536,6 +454,115 @@ </packing> </child> <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_left">12</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkTreeView" id="randr-profile"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="border_width">1</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <style> + <class name="frame"/> + </style> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkButton" id="button-profile-delete"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes">Delete the currently selected display profile.</property> + <property name="image">image1</property> + <property name="always_show_image">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">-1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="button-profile-apply"> + <property name="label" translatable="yes">Apply</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes">Apply the currently selected display profile.</property> + <property name="always_show_image">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="button-profile-save"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes">Save a new display profile or update an existing profile.</property> + <property name="image">image2</property> + <property name="always_show_image">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">1</property> + </packing> + </child> + <style> + <class name="inline-toolbar"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + <property name="width">2</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> <placeholder/> </child> <child> diff --git a/dialogs/display-settings/main.c b/dialogs/display-settings/main.c index c139484..ee4e43a 100644 --- a/dialogs/display-settings/main.c +++ b/dialogs/display-settings/main.c @@ -1344,27 +1344,36 @@ display_settings_minimal_profile_populate (GtkBuilder *builder) } static void -display_settings_profile_combobox_populate (GtkBuilder *builder) +display_settings_profile_list_populate (GtkBuilder *builder) { - guint m = 0; GtkListStore *store; - GObject *combobox; + GObject *treeview; GtkTreeIter iter; GList *profiles = NULL; GList *current; + GtkCellRenderer *renderer; + GtkTreeViewColumn *column; /* create a new list store */ store = gtk_list_store_new (1, G_TYPE_STRING); /* set up the new combobox which will replace the above combobox */ - combobox = gtk_builder_get_object (builder, "randr-profile"); - gtk_combo_box_set_model (GTK_COMBO_BOX (combobox), GTK_TREE_MODEL (store)); + treeview = gtk_builder_get_object (builder, "randr-profile"); + gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (treeview), FALSE); + gtk_tree_view_set_model (GTK_TREE_VIEW (treeview), GTK_TREE_MODEL (store)); + column = gtk_tree_view_column_new (); + /* Setup renderer */ + renderer = gtk_cell_renderer_text_new (); + gtk_tree_view_column_pack_start (column, renderer, TRUE); + gtk_tree_view_column_set_attributes (column, renderer, "text", COLUMN_COMBO_NAME, NULL); + g_object_set (G_OBJECT (renderer), "ellipsize", PANGO_ELLIPSIZE_END, NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (treeview), column); profiles = display_settings_get_profiles (); /* populate combobox */ - current = g_list_first(profiles); + current = g_list_first (profiles); while (current) { gchar *property; @@ -1382,13 +1391,8 @@ display_settings_profile_combobox_populate (GtkBuilder *builder) current = g_list_next(current); g_free (property); g_free (profile_name); - m++; } - /* If there is only one profile we auto-select and activate it */ - if (m == 1) - gtk_combo_box_set_active_iter (GTK_COMBO_BOX (combobox), &iter); - /* Release the store */ g_list_free (profiles); g_object_unref (G_OBJECT (store)); @@ -1530,7 +1534,7 @@ display_settings_profile_save (GtkWidget *widget, GtkBuilder *builder) /* save the human-readable name of the profile as string value */ xfconf_channel_set_string (display_channel, property, profile); - display_settings_profile_combobox_populate (builder); + display_settings_profile_list_populate (builder); gtk_widget_set_sensitive (widget, FALSE); g_free (property); @@ -1632,7 +1636,7 @@ display_settings_profile_delete (GtkWidget *widget, GtkBuilder *builder) g_string_prepend_c (property, '/'); xfconf_channel_reset_property (display_channel, property->str, True); - display_settings_profile_combobox_populate (builder); + display_settings_profile_list_populate (builder); gtk_entry_set_text (GTK_ENTRY (entry), ""); } else { @@ -1707,9 +1711,8 @@ display_settings_dialog_new (GtkBuilder *builder) g_signal_connect (G_OBJECT (combobox), "changed", G_CALLBACK (display_setting_rotations_changed), builder); combobox = gtk_builder_get_object (builder, "randr-profile"); - display_settings_combo_box_create (GTK_COMBO_BOX (combobox)); - g_signal_connect (G_OBJECT (combobox), "changed", G_CALLBACK (display_settings_profile_changed), builder); + //g_signal_connect (G_OBJECT (combobox), "changed", G_CALLBACK (display_settings_profile_changed), builder); check = gtk_builder_get_object (builder, "minimal-autoshow"); xfconf_g_property_bind (display_channel, "/Notify", G_TYPE_BOOLEAN, check, @@ -1733,7 +1736,7 @@ display_settings_dialog_new (GtkBuilder *builder) /* Populate the combobox */ display_settings_combobox_populate (builder); - display_settings_profile_combobox_populate (builder); + display_settings_profile_list_populate (builder); return GTK_WIDGET (gtk_builder_get_object (builder, "display-dialog")); } -- To stop receiving notification emails like this one, please contact the administrator of this repository. _______________________________________________ Xfce4-commits mailing list [email protected] https://mail.xfce.org/mailman/listinfo/xfce4-commits
