Now all trees are sorted. It really looks much better

This commit is contained in:
Sergey V. Udaltsov 2003-11-27 00:26:17 +00:00
parent faa09735fd
commit 453277eede
3 changed files with 23 additions and 6 deletions

View file

@ -27,9 +27,8 @@
#include <libxklavier/xklavier_config.h>
G_BEGIN_DECLS
extern void setup_xkb_tabs (GladeXML * dialog,
GConfChangeSet * changeset);
extern void setup_xkb_tabs (GladeXML * dialog,
GConfChangeSet * changeset);
extern void fill_available_layouts_tree (GladeXML * dialog);
@ -55,6 +54,7 @@ extern void clear_xkb_elements_list (GSList * list);
extern char *xci_desc_to_utf8 (XklConfigItem * ci);
G_END_DECLS
extern void sort_tree_content (GtkWidget * treeView);
G_END_DECLS
#endif /* __GNOME_KEYBOARD_PROPERTY_XKB_H */

View file

@ -144,8 +144,7 @@ enable_disable_layouts_buttons (GladeXML * dialog)
gtk_widget_set_sensitive (delLayoutBtn,
nSelectedSelectedLayouts > 0);
if (gtk_tree_selection_get_selected
(sSelection, NULL, &iter)) {
if (gtk_tree_selection_get_selected (sSelection, NULL, &iter)) {
GtkTreePath *path =
gtk_tree_model_get_path (selectedLayoutsModel,
&iter);
@ -227,6 +226,21 @@ fill_selected_layouts_tree (GladeXML * dialog)
}
}
void
sort_tree_content (GtkWidget * treeView)
{
GtkTreeModel *treeModel =
gtk_tree_view_get_model (GTK_TREE_VIEW (treeView));
GtkTreeModel *sortedTreeModel;
/* replace the store with the sorted version */
sortedTreeModel = gtk_tree_model_sort_new_with_model (treeModel);
gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE
(sortedTreeModel), 0,
GTK_SORT_ASCENDING);
gtk_tree_view_set_model (GTK_TREE_VIEW (treeView),
sortedTreeModel);
}
void
fill_available_layouts_tree (GladeXML * dialog)
{
@ -252,6 +266,7 @@ fill_available_layouts_tree (GladeXML * dialog)
add_layout_to_available_layouts_tree,
dialog);
sort_tree_content (treeView);
g_signal_connect_swapped (G_OBJECT (selection), "changed",
G_CALLBACK
(enable_disable_layouts_buttons),

View file

@ -320,6 +320,8 @@ fill_available_options_tree (GladeXML * dialog)
add_group_to_available_options_tree,
dialog);
sort_tree_content (treeView);
g_signal_connect_swapped (G_OBJECT (selection), "changed",
G_CALLBACK
(enable_disable_options_buttons),