Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

kconfig: gconf: migrate to GTK 3

This commit switches from GTK 2.x to GTK 3, applying the following
necessary changes:

- Do not include individual headers
- GtkObject is gone
- Convert Glade to GtkBuilder

Link: https://docs.gtk.org/gtk3/migrating-2to3.html
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Tested-by: Randy Dunlap <rdunlap@infradead.org>

+135 -146
+2 -9
scripts/kconfig/gconf-cfg.sh
··· 6 6 cflags=$1 7 7 libs=$2 8 8 9 - PKG="gtk+-2.0 gmodule-2.0 libglade-2.0" 9 + PKG=gtk+-3.0 10 10 11 11 if [ -z "$(command -v ${HOSTPKG_CONFIG})" ]; then 12 12 echo >&2 "*" ··· 18 18 if ! ${HOSTPKG_CONFIG} --exists $PKG; then 19 19 echo >&2 "*" 20 20 echo >&2 "* Unable to find the GTK+ installation. Please make sure that" 21 - echo >&2 "* the GTK+ 2.0 development package is correctly installed." 21 + echo >&2 "* the GTK 3 development package is correctly installed." 22 22 echo >&2 "* You need $PKG" 23 - echo >&2 "*" 24 - exit 1 25 - fi 26 - 27 - if ! ${HOSTPKG_CONFIG} --atleast-version=2.0.0 gtk+-2.0; then 28 - echo >&2 "*" 29 - echo >&2 "* GTK+ is present but version >= 2.0.0 is required." 30 23 echo >&2 "*" 31 24 exit 1 32 25 fi
+34 -36
scripts/kconfig/gconf.c
··· 7 7 #include "lkc.h" 8 8 #include "images.h" 9 9 10 - #include <glade/glade.h> 11 10 #include <gtk/gtk.h> 12 - #include <glib.h> 13 - #include <gdk/gdkkeysyms.h> 14 11 15 12 #include <stdio.h> 16 13 #include <string.h> ··· 598 601 599 602 /* Main Windows Callbacks */ 600 603 601 - static void on_window1_destroy(GtkObject *object, gpointer user_data) 604 + static void on_window1_destroy(GtkWidget *widget, gpointer user_data) 602 605 { 603 606 gtk_main_quit(); 604 607 } ··· 998 1001 999 1002 static void init_main_window(const gchar *glade_file) 1000 1003 { 1001 - GladeXML *xml; 1004 + GtkBuilder *builder; 1002 1005 GtkWidget *widget; 1003 1006 GtkTextBuffer *txtbuf; 1004 1007 1005 - xml = glade_xml_new(glade_file, "window1", NULL); 1006 - if (!xml) 1008 + builder = gtk_builder_new_from_file(glade_file); 1009 + if (!builder) 1007 1010 g_error("GUI loading failed !\n"); 1008 1011 1009 - main_wnd = glade_xml_get_widget(xml, "window1"); 1012 + main_wnd = GTK_WIDGET(gtk_builder_get_object(builder, "window1")); 1010 1013 g_signal_connect(main_wnd, "destroy", 1011 1014 G_CALLBACK(on_window1_destroy), NULL); 1012 1015 g_signal_connect(main_wnd, "configure-event", ··· 1014 1017 g_signal_connect(main_wnd, "delete_event", 1015 1018 G_CALLBACK(on_window1_delete_event), NULL); 1016 1019 1017 - hpaned = glade_xml_get_widget(xml, "hpaned1"); 1018 - vpaned = glade_xml_get_widget(xml, "vpaned1"); 1019 - tree1_w = glade_xml_get_widget(xml, "treeview1"); 1020 + hpaned = GTK_WIDGET(gtk_builder_get_object(builder, "hpaned1")); 1021 + vpaned = GTK_WIDGET(gtk_builder_get_object(builder, "vpaned1")); 1022 + tree1_w = GTK_WIDGET(gtk_builder_get_object(builder, "treeview1")); 1020 1023 g_signal_connect(tree1_w, "cursor_changed", 1021 1024 G_CALLBACK(on_treeview2_cursor_changed), NULL); 1022 1025 g_signal_connect(tree1_w, "button_press_event", ··· 1024 1027 g_signal_connect(tree1_w, "key_press_event", 1025 1028 G_CALLBACK(on_treeview2_key_press_event), NULL); 1026 1029 1027 - tree2_w = glade_xml_get_widget(xml, "treeview2"); 1030 + tree2_w = GTK_WIDGET(gtk_builder_get_object(builder, "treeview2")); 1028 1031 g_signal_connect(tree2_w, "cursor_changed", 1029 1032 G_CALLBACK(on_treeview2_cursor_changed), NULL); 1030 1033 g_signal_connect(tree2_w, "button_press_event", ··· 1032 1035 g_signal_connect(tree2_w, "key_press_event", 1033 1036 G_CALLBACK(on_treeview2_key_press_event), NULL); 1034 1037 1035 - text_w = glade_xml_get_widget(xml, "textview3"); 1038 + text_w = GTK_WIDGET(gtk_builder_get_object(builder, "textview3")); 1036 1039 1037 1040 /* menubar */ 1038 - widget = glade_xml_get_widget(xml, "load1"); 1041 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "load1")); 1039 1042 g_signal_connect(widget, "activate", 1040 1043 G_CALLBACK(on_load1_activate), NULL); 1041 1044 1042 - save_menu_item = glade_xml_get_widget(xml, "save1"); 1045 + save_menu_item = GTK_WIDGET(gtk_builder_get_object(builder, "save1")); 1043 1046 g_signal_connect(save_menu_item, "activate", 1044 1047 G_CALLBACK(on_save_activate), NULL); 1045 1048 1046 - widget = glade_xml_get_widget(xml, "save_as1"); 1049 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "save_as1")); 1047 1050 g_signal_connect(widget, "activate", 1048 1051 G_CALLBACK(on_save_as1_activate), NULL); 1049 1052 1050 - widget = glade_xml_get_widget(xml, "quit1"); 1053 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "quit1")); 1051 1054 g_signal_connect(widget, "activate", 1052 1055 G_CALLBACK(on_quit1_activate), NULL); 1053 1056 1054 - widget = glade_xml_get_widget(xml, "show_name1"); 1057 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "show_name1")); 1055 1058 g_signal_connect(widget, "activate", 1056 1059 G_CALLBACK(on_show_name1_activate), NULL); 1057 1060 gtk_check_menu_item_set_active((GtkCheckMenuItem *) widget, 1058 1061 show_name); 1059 1062 1060 - widget = glade_xml_get_widget(xml, "show_range1"); 1063 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "show_range1")); 1061 1064 g_signal_connect(widget, "activate", 1062 1065 G_CALLBACK(on_show_range1_activate), NULL); 1063 1066 gtk_check_menu_item_set_active((GtkCheckMenuItem *) widget, 1064 1067 show_range); 1065 1068 1066 - widget = glade_xml_get_widget(xml, "show_data1"); 1069 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "show_data1")); 1067 1070 g_signal_connect(widget, "activate", 1068 1071 G_CALLBACK(on_show_data1_activate), NULL); 1069 1072 gtk_check_menu_item_set_active((GtkCheckMenuItem *) widget, 1070 1073 show_value); 1071 1074 1072 - widget = glade_xml_get_widget(xml, "set_option_mode1"); 1075 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "set_option_mode1")); 1073 1076 g_signal_connect(widget, "activate", 1074 1077 G_CALLBACK(on_set_option_mode1_activate), NULL); 1075 1078 1076 - widget = glade_xml_get_widget(xml, "set_option_mode2"); 1079 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "set_option_mode2")); 1077 1080 g_signal_connect(widget, "activate", 1078 1081 G_CALLBACK(on_set_option_mode2_activate), NULL); 1079 1082 1080 - widget = glade_xml_get_widget(xml, "set_option_mode3"); 1083 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "set_option_mode3")); 1081 1084 g_signal_connect(widget, "activate", 1082 1085 G_CALLBACK(on_set_option_mode3_activate), NULL); 1083 1086 1084 - widget = glade_xml_get_widget(xml, "introduction1"); 1087 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "introduction1")); 1085 1088 g_signal_connect(widget, "activate", 1086 1089 G_CALLBACK(on_introduction1_activate), NULL); 1087 1090 1088 - widget = glade_xml_get_widget(xml, "about1"); 1091 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "about1")); 1089 1092 g_signal_connect(widget, "activate", 1090 1093 G_CALLBACK(on_about1_activate), NULL); 1091 1094 1092 - widget = glade_xml_get_widget(xml, "license1"); 1095 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "license1")); 1093 1096 g_signal_connect(widget, "activate", 1094 1097 G_CALLBACK(on_license1_activate), NULL); 1095 1098 1096 1099 /* toolbar */ 1097 - back_btn = glade_xml_get_widget(xml, "button1"); 1100 + back_btn = GTK_WIDGET(gtk_builder_get_object(builder, "button1")); 1098 1101 g_signal_connect(back_btn, "clicked", 1099 1102 G_CALLBACK(on_back_clicked), NULL); 1100 1103 gtk_widget_set_sensitive(back_btn, FALSE); 1101 1104 1102 - widget = glade_xml_get_widget(xml, "button2"); 1105 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "button2")); 1103 1106 g_signal_connect(widget, "clicked", 1104 1107 G_CALLBACK(on_load_clicked), NULL); 1105 1108 1106 - save_btn = glade_xml_get_widget(xml, "button3"); 1109 + save_btn = GTK_WIDGET(gtk_builder_get_object(builder, "button3")); 1107 1110 g_signal_connect(save_btn, "clicked", 1108 1111 G_CALLBACK(on_save_clicked), NULL); 1109 1112 1110 - single_btn = glade_xml_get_widget(xml, "button4"); 1113 + single_btn = GTK_WIDGET(gtk_builder_get_object(builder, "button4")); 1111 1114 g_signal_connect(single_btn, "clicked", 1112 1115 G_CALLBACK(on_single_clicked), NULL); 1113 1116 replace_button_icon(single_btn, xpm_single_view); 1114 1117 1115 - split_btn = glade_xml_get_widget(xml, "button5"); 1118 + split_btn = GTK_WIDGET(gtk_builder_get_object(builder, "button5")); 1116 1119 g_signal_connect(split_btn, "clicked", 1117 1120 G_CALLBACK(on_split_clicked), NULL); 1118 1121 replace_button_icon(split_btn, xpm_split_view); 1119 1122 1120 - full_btn = glade_xml_get_widget(xml, "button6"); 1123 + full_btn = GTK_WIDGET(gtk_builder_get_object(builder, "button6")); 1121 1124 g_signal_connect(full_btn, "clicked", 1122 1125 G_CALLBACK(on_full_clicked), NULL); 1123 1126 replace_button_icon(full_btn, xpm_tree_view); 1124 1127 1125 - widget = glade_xml_get_widget(xml, "button7"); 1128 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "button7")); 1126 1129 g_signal_connect(widget, "clicked", 1127 1130 G_CALLBACK(on_collapse_clicked), NULL); 1128 1131 1129 - widget = glade_xml_get_widget(xml, "button8"); 1132 + widget = GTK_WIDGET(gtk_builder_get_object(builder, "button8")); 1130 1133 g_signal_connect(widget, "clicked", 1131 1134 G_CALLBACK(on_expand_clicked), NULL); 1132 1135 ··· 1141 1144 1142 1145 gtk_window_set_title(GTK_WINDOW(main_wnd), rootmenu.prompt->text); 1143 1146 1144 - gtk_widget_show(main_wnd); 1147 + gtk_widget_show_all(main_wnd); 1148 + 1149 + g_object_unref(builder); 1145 1150 1146 1151 conf_set_changed_callback(conf_changed); 1147 1152 } ··· 1321 1322 1322 1323 /* GTK stuffs */ 1323 1324 gtk_init(&ac, &av); 1324 - glade_init(); 1325 1325 1326 1326 /* Determine GUI path */ 1327 1327 env = getenv(SRCTREE);
+99 -101
scripts/kconfig/gconf.ui
··· 1 1 <?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> 2 2 3 - <glade-interface> 3 + <interface> 4 4 5 - <widget class="GtkWindow" id="window1"> 5 + <object class="GtkWindow" id="window1"> 6 6 <property name="visible">True</property> 7 7 <property name="title" translatable="yes">Gtk Kernel Configurator</property> 8 8 <property name="type">GTK_WINDOW_TOPLEVEL</property> ··· 19 19 <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> 20 20 21 21 <child> 22 - <widget class="GtkVBox" id="vbox1"> 22 + <object class="GtkVBox" id="vbox1"> 23 23 <property name="visible">True</property> 24 24 <property name="homogeneous">False</property> 25 25 <property name="spacing">0</property> 26 26 27 27 <child> 28 - <widget class="GtkMenuBar" id="menubar1"> 28 + <object class="GtkMenuBar" id="menubar1"> 29 29 <property name="visible">True</property> 30 30 31 31 <child> 32 - <widget class="GtkMenuItem" id="file1"> 32 + <object class="GtkMenuItem" id="file1"> 33 33 <property name="visible">True</property> 34 34 <property name="label" translatable="yes">_File</property> 35 35 <property name="use_underline">True</property> 36 36 37 - <child> 38 - <widget class="GtkMenu" id="file1_menu"> 37 + <child type="submenu"> 38 + <object class="GtkMenu" id="file1_menu"> 39 39 40 40 <child> 41 - <widget class="GtkImageMenuItem" id="load1"> 41 + <object class="GtkImageMenuItem" id="load1"> 42 42 <property name="visible">True</property> 43 43 <property name="tooltip-text" translatable="yes">Load a config file</property> 44 44 <property name="label" translatable="yes">_Load</property> 45 45 <property name="use_underline">True</property> 46 46 <accelerator key="L" modifiers="GDK_CONTROL_MASK" signal="activate"/> 47 - </widget> 47 + </object> 48 48 </child> 49 49 50 50 <child> 51 - <widget class="GtkImageMenuItem" id="save1"> 51 + <object class="GtkImageMenuItem" id="save1"> 52 52 <property name="visible">True</property> 53 53 <property name="tooltip-text" translatable="yes">Save the config in .config</property> 54 54 <property name="label" translatable="yes">_Save</property> 55 55 <property name="use_underline">True</property> 56 56 <accelerator key="S" modifiers="GDK_CONTROL_MASK" signal="activate"/> 57 - </widget> 57 + </object> 58 58 </child> 59 59 60 60 <child> 61 - <widget class="GtkImageMenuItem" id="save_as1"> 61 + <object class="GtkImageMenuItem" id="save_as1"> 62 62 <property name="visible">True</property> 63 63 <property name="tooltip-text" translatable="yes">Save the config in a file</property> 64 64 <property name="label" translatable="yes">Save _as</property> 65 65 <property name="use_underline">True</property> 66 - </widget> 66 + </object> 67 67 </child> 68 68 69 69 <child> 70 - <widget class="GtkSeparatorMenuItem" id="separator1"> 70 + <object class="GtkSeparatorMenuItem" id="separator1"> 71 71 <property name="visible">True</property> 72 - </widget> 72 + </object> 73 73 </child> 74 74 75 75 <child> 76 - <widget class="GtkImageMenuItem" id="quit1"> 76 + <object class="GtkImageMenuItem" id="quit1"> 77 77 <property name="visible">True</property> 78 78 <property name="label" translatable="yes">_Quit</property> 79 79 <property name="use_underline">True</property> 80 80 <accelerator key="Q" modifiers="GDK_CONTROL_MASK" signal="activate"/> 81 - </widget> 81 + </object> 82 82 </child> 83 - </widget> 83 + </object> 84 84 </child> 85 - </widget> 85 + </object> 86 86 </child> 87 87 88 88 <child> 89 - <widget class="GtkMenuItem" id="options1"> 89 + <object class="GtkMenuItem" id="options1"> 90 90 <property name="visible">True</property> 91 91 <property name="label" translatable="yes">_Options</property> 92 92 <property name="use_underline">True</property> 93 93 94 - <child> 95 - <widget class="GtkMenu" id="options1_menu"> 94 + <child type="submenu"> 95 + <object class="GtkMenu" id="options1_menu"> 96 96 97 97 <child> 98 - <widget class="GtkCheckMenuItem" id="show_name1"> 98 + <object class="GtkCheckMenuItem" id="show_name1"> 99 99 <property name="visible">True</property> 100 100 <property name="tooltip-text" translatable="yes">Show name</property> 101 101 <property name="label" translatable="yes">Show _name</property> 102 102 <property name="use_underline">True</property> 103 103 <property name="active">False</property> 104 - </widget> 104 + </object> 105 105 </child> 106 106 107 107 <child> 108 - <widget class="GtkCheckMenuItem" id="show_range1"> 108 + <object class="GtkCheckMenuItem" id="show_range1"> 109 109 <property name="visible">True</property> 110 110 <property name="tooltip-text" translatable="yes">Show range (Y/M/N)</property> 111 111 <property name="label" translatable="yes">Show _range</property> 112 112 <property name="use_underline">True</property> 113 113 <property name="active">False</property> 114 - </widget> 114 + </object> 115 115 </child> 116 116 117 117 <child> 118 - <widget class="GtkCheckMenuItem" id="show_data1"> 118 + <object class="GtkCheckMenuItem" id="show_data1"> 119 119 <property name="visible">True</property> 120 120 <property name="tooltip-text" translatable="yes">Show value of the option</property> 121 121 <property name="label" translatable="yes">Show _data</property> 122 122 <property name="use_underline">True</property> 123 123 <property name="active">False</property> 124 - </widget> 124 + </object> 125 125 </child> 126 126 127 127 <child> 128 - <widget class="GtkSeparatorMenuItem" id="separator2"> 128 + <object class="GtkSeparatorMenuItem" id="separator2"> 129 129 <property name="visible">True</property> 130 - </widget> 130 + </object> 131 131 </child> 132 132 133 133 <child> 134 - <widget class="GtkRadioMenuItem" id="set_option_mode1"> 134 + <object class="GtkRadioMenuItem" id="set_option_mode1"> 135 135 <property name="visible">True</property> 136 136 <property name="tooltip-text" translatable="yes">Show normal options</property> 137 137 <property name="label" translatable="yes">Show normal options</property> 138 138 <property name="use_underline">True</property> 139 139 <property name="active">True</property> 140 - </widget> 140 + </object> 141 141 </child> 142 142 143 143 <child> 144 - <widget class="GtkRadioMenuItem" id="set_option_mode2"> 144 + <object class="GtkRadioMenuItem" id="set_option_mode2"> 145 145 <property name="visible">True</property> 146 146 <property name="tooltip-text" translatable="yes">Show all options</property> 147 147 <property name="label" translatable="yes">Show all _options</property> 148 148 <property name="use_underline">True</property> 149 149 <property name="active">False</property> 150 150 <property name="group">set_option_mode1</property> 151 - </widget> 151 + </object> 152 152 </child> 153 153 154 154 <child> 155 - <widget class="GtkRadioMenuItem" id="set_option_mode3"> 155 + <object class="GtkRadioMenuItem" id="set_option_mode3"> 156 156 <property name="visible">True</property> 157 157 <property name="tooltip-text" translatable="yes">Show all options with prompts</property> 158 158 <property name="label" translatable="yes">Show all prompt options</property> 159 159 <property name="use_underline">True</property> 160 160 <property name="active">False</property> 161 161 <property name="group">set_option_mode1</property> 162 - </widget> 162 + </object> 163 163 </child> 164 164 165 - </widget> 165 + </object> 166 166 </child> 167 - </widget> 167 + </object> 168 168 </child> 169 169 170 170 <child> 171 - <widget class="GtkMenuItem" id="help1"> 171 + <object class="GtkMenuItem" id="help1"> 172 172 <property name="visible">True</property> 173 173 <property name="label" translatable="yes">_Help</property> 174 174 <property name="use_underline">True</property> 175 175 176 - <child> 177 - <widget class="GtkMenu" id="help1_menu"> 176 + <child type="submenu"> 177 + <object class="GtkMenu" id="help1_menu"> 178 178 179 179 <child> 180 - <widget class="GtkImageMenuItem" id="introduction1"> 180 + <object class="GtkImageMenuItem" id="introduction1"> 181 181 <property name="visible">True</property> 182 182 <property name="label" translatable="yes">_Introduction</property> 183 183 <property name="use_underline">True</property> 184 184 <accelerator key="I" modifiers="GDK_CONTROL_MASK" signal="activate"/> 185 - </widget> 185 + </object> 186 186 </child> 187 187 188 188 <child> 189 - <widget class="GtkImageMenuItem" id="about1"> 189 + <object class="GtkImageMenuItem" id="about1"> 190 190 <property name="visible">True</property> 191 191 <property name="label" translatable="yes">_About</property> 192 192 <property name="use_underline">True</property> 193 193 <accelerator key="A" modifiers="GDK_CONTROL_MASK" signal="activate"/> 194 - </widget> 194 + </object> 195 195 </child> 196 196 197 197 <child> 198 - <widget class="GtkImageMenuItem" id="license1"> 198 + <object class="GtkImageMenuItem" id="license1"> 199 199 <property name="visible">True</property> 200 200 <property name="label" translatable="yes">_License</property> 201 201 <property name="use_underline">True</property> 202 - </widget> 202 + </object> 203 203 </child> 204 - </widget> 204 + </object> 205 205 </child> 206 - </widget> 206 + </object> 207 207 </child> 208 - </widget> 208 + </object> 209 209 <packing> 210 210 <property name="padding">0</property> 211 211 <property name="expand">False</property> ··· 214 214 </child> 215 215 216 216 <child> 217 - <widget class="GtkToolbar" id="toolbar1"> 217 + <object class="GtkToolbar" id="toolbar1"> 218 218 <property name="visible">True</property> 219 219 <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property> 220 220 <property name="toolbar_style">GTK_TOOLBAR_BOTH</property> 221 221 <property name="show_arrow">True</property> 222 222 223 223 <child> 224 - <widget class="GtkToolButton" id="button1"> 224 + <object class="GtkToolButton" id="button1"> 225 225 <property name="visible">True</property> 226 226 <property name="tooltip-text" translatable="yes">Goes up one level (single view)</property> 227 227 <property name="label" translatable="yes">Back</property> ··· 230 230 <property name="visible_horizontal">True</property> 231 231 <property name="visible_vertical">True</property> 232 232 <property name="is_important">False</property> 233 - </widget> 233 + </object> 234 234 <packing> 235 235 <property name="expand">False</property> 236 236 <property name="homogeneous">True</property> ··· 238 238 </child> 239 239 240 240 <child> 241 - <widget class="GtkToolItem" id="toolitem1"> 241 + <object class="GtkToolItem" id="toolitem1"> 242 242 <property name="visible">True</property> 243 243 <property name="visible_horizontal">True</property> 244 244 <property name="visible_vertical">True</property> 245 245 <property name="is_important">False</property> 246 246 247 247 <child> 248 - <widget class="GtkVSeparator" id="vseparator1"> 248 + <object class="GtkVSeparator" id="vseparator1"> 249 249 <property name="visible">True</property> 250 - </widget> 250 + </object> 251 251 </child> 252 - </widget> 252 + </object> 253 253 <packing> 254 254 <property name="expand">False</property> 255 255 <property name="homogeneous">False</property> ··· 257 257 </child> 258 258 259 259 <child> 260 - <widget class="GtkToolButton" id="button2"> 260 + <object class="GtkToolButton" id="button2"> 261 261 <property name="visible">True</property> 262 262 <property name="tooltip-text" translatable="yes">Load a config file</property> 263 263 <property name="label" translatable="yes">Load</property> ··· 266 266 <property name="visible_horizontal">True</property> 267 267 <property name="visible_vertical">True</property> 268 268 <property name="is_important">False</property> 269 - </widget> 269 + </object> 270 270 <packing> 271 271 <property name="expand">False</property> 272 272 <property name="homogeneous">True</property> ··· 274 274 </child> 275 275 276 276 <child> 277 - <widget class="GtkToolButton" id="button3"> 277 + <object class="GtkToolButton" id="button3"> 278 278 <property name="visible">True</property> 279 279 <property name="tooltip-text" translatable="yes">Save a config file</property> 280 280 <property name="label" translatable="yes">Save</property> ··· 283 283 <property name="visible_horizontal">True</property> 284 284 <property name="visible_vertical">True</property> 285 285 <property name="is_important">False</property> 286 - </widget> 286 + </object> 287 287 <packing> 288 288 <property name="expand">False</property> 289 289 <property name="homogeneous">True</property> ··· 291 291 </child> 292 292 293 293 <child> 294 - <widget class="GtkToolItem" id="toolitem2"> 294 + <object class="GtkToolItem" id="toolitem2"> 295 295 <property name="visible">True</property> 296 296 <property name="visible_horizontal">True</property> 297 297 <property name="visible_vertical">True</property> 298 298 <property name="is_important">False</property> 299 299 300 300 <child> 301 - <widget class="GtkVSeparator" id="vseparator2"> 301 + <object class="GtkVSeparator" id="vseparator2"> 302 302 <property name="visible">True</property> 303 - </widget> 303 + </object> 304 304 </child> 305 - </widget> 305 + </object> 306 306 <packing> 307 307 <property name="expand">False</property> 308 308 <property name="homogeneous">False</property> ··· 310 310 </child> 311 311 312 312 <child> 313 - <widget class="GtkToolButton" id="button4"> 313 + <object class="GtkToolButton" id="button4"> 314 314 <property name="visible">True</property> 315 315 <property name="tooltip-text" translatable="yes">Single view</property> 316 316 <property name="label" translatable="yes">Single</property> ··· 319 319 <property name="visible_horizontal">True</property> 320 320 <property name="visible_vertical">True</property> 321 321 <property name="is_important">False</property> 322 - </widget> 322 + </object> 323 323 <packing> 324 324 <property name="expand">False</property> 325 325 <property name="homogeneous">True</property> ··· 327 327 </child> 328 328 329 329 <child> 330 - <widget class="GtkToolButton" id="button5"> 330 + <object class="GtkToolButton" id="button5"> 331 331 <property name="visible">True</property> 332 332 <property name="tooltip-text" translatable="yes">Split view</property> 333 333 <property name="label" translatable="yes">Split</property> ··· 336 336 <property name="visible_horizontal">True</property> 337 337 <property name="visible_vertical">True</property> 338 338 <property name="is_important">False</property> 339 - </widget> 339 + </object> 340 340 <packing> 341 341 <property name="expand">False</property> 342 342 <property name="homogeneous">True</property> ··· 344 344 </child> 345 345 346 346 <child> 347 - <widget class="GtkToolButton" id="button6"> 347 + <object class="GtkToolButton" id="button6"> 348 348 <property name="visible">True</property> 349 349 <property name="tooltip-text" translatable="yes">Full view</property> 350 350 <property name="label" translatable="yes">Full</property> ··· 353 353 <property name="visible_horizontal">True</property> 354 354 <property name="visible_vertical">True</property> 355 355 <property name="is_important">False</property> 356 - </widget> 356 + </object> 357 357 <packing> 358 358 <property name="expand">False</property> 359 359 <property name="homogeneous">True</property> ··· 361 361 </child> 362 362 363 363 <child> 364 - <widget class="GtkToolItem" id="toolitem3"> 364 + <object class="GtkToolItem" id="toolitem3"> 365 365 <property name="visible">True</property> 366 366 <property name="visible_horizontal">True</property> 367 367 <property name="visible_vertical">True</property> 368 368 <property name="is_important">False</property> 369 369 370 370 <child> 371 - <widget class="GtkVSeparator" id="vseparator3"> 371 + <object class="GtkVSeparator" id="vseparator3"> 372 372 <property name="visible">True</property> 373 - </widget> 373 + </object> 374 374 </child> 375 - </widget> 375 + </object> 376 376 <packing> 377 377 <property name="expand">False</property> 378 378 <property name="homogeneous">False</property> ··· 380 380 </child> 381 381 382 382 <child> 383 - <widget class="GtkToolButton" id="button7"> 383 + <object class="GtkToolButton" id="button7"> 384 384 <property name="visible">True</property> 385 385 <property name="tooltip-text" translatable="yes">Collapse the whole tree in the right frame</property> 386 386 <property name="label" translatable="yes">Collapse</property> ··· 389 389 <property name="visible_horizontal">True</property> 390 390 <property name="visible_vertical">True</property> 391 391 <property name="is_important">False</property> 392 - </widget> 392 + </object> 393 393 <packing> 394 394 <property name="expand">False</property> 395 395 <property name="homogeneous">True</property> ··· 397 397 </child> 398 398 399 399 <child> 400 - <widget class="GtkToolButton" id="button8"> 400 + <object class="GtkToolButton" id="button8"> 401 401 <property name="visible">True</property> 402 402 <property name="tooltip-text" translatable="yes">Expand the whole tree in the right frame</property> 403 403 <property name="label" translatable="yes">Expand</property> ··· 406 406 <property name="visible_horizontal">True</property> 407 407 <property name="visible_vertical">True</property> 408 408 <property name="is_important">False</property> 409 - </widget> 409 + </object> 410 410 <packing> 411 411 <property name="expand">False</property> 412 412 <property name="homogeneous">True</property> 413 413 </packing> 414 414 </child> 415 - </widget> 415 + </object> 416 416 <packing> 417 417 <property name="padding">0</property> 418 418 <property name="expand">False</property> ··· 421 421 </child> 422 422 423 423 <child> 424 - <widget class="GtkHPaned" id="hpaned1"> 424 + <object class="GtkHPaned" id="hpaned1"> 425 425 <property name="width_request">1</property> 426 426 <property name="visible">True</property> 427 427 <property name="can_focus">True</property> 428 - <property name="position">0</property> 429 428 430 429 <child> 431 - <widget class="GtkScrolledWindow" id="scrolledwindow1"> 430 + <object class="GtkScrolledWindow" id="scrolledwindow1"> 432 431 <property name="visible">True</property> 433 432 <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> 434 433 <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> ··· 435 436 <property name="window_placement">GTK_CORNER_TOP_LEFT</property> 436 437 437 438 <child> 438 - <widget class="GtkTreeView" id="treeview1"> 439 + <object class="GtkTreeView" id="treeview1"> 439 440 <property name="visible">True</property> 440 441 <property name="can_focus">True</property> 441 442 <property name="headers_visible">True</property> 442 443 <property name="rules_hint">False</property> 443 444 <property name="reorderable">False</property> 444 445 <property name="enable_search">False</property> 445 - </widget> 446 + </object> 446 447 </child> 447 - </widget> 448 + </object> 448 449 <packing> 449 450 <property name="shrink">True</property> 450 451 <property name="resize">False</property> ··· 452 453 </child> 453 454 454 455 <child> 455 - <widget class="GtkVPaned" id="vpaned1"> 456 + <object class="GtkVPaned" id="vpaned1"> 456 457 <property name="visible">True</property> 457 458 <property name="can_focus">True</property> 458 - <property name="position">0</property> 459 459 460 460 <child> 461 - <widget class="GtkScrolledWindow" id="scrolledwindow2"> 461 + <object class="GtkScrolledWindow" id="scrolledwindow2"> 462 462 <property name="visible">True</property> 463 463 <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> 464 464 <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> ··· 465 467 <property name="window_placement">GTK_CORNER_TOP_LEFT</property> 466 468 467 469 <child> 468 - <widget class="GtkTreeView" id="treeview2"> 470 + <object class="GtkTreeView" id="treeview2"> 469 471 <property name="visible">True</property> 470 472 <property name="can_focus">True</property> 471 473 <property name="has_focus">True</property> ··· 473 475 <property name="rules_hint">False</property> 474 476 <property name="reorderable">False</property> 475 477 <property name="enable_search">False</property> 476 - </widget> 478 + </object> 477 479 </child> 478 - </widget> 480 + </object> 479 481 <packing> 480 482 <property name="shrink">True</property> 481 483 <property name="resize">False</property> ··· 483 485 </child> 484 486 485 487 <child> 486 - <widget class="GtkScrolledWindow" id="scrolledwindow3"> 488 + <object class="GtkScrolledWindow" id="scrolledwindow3"> 487 489 <property name="visible">True</property> 488 490 <property name="hscrollbar_policy">GTK_POLICY_NEVER</property> 489 491 <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> ··· 491 493 <property name="window_placement">GTK_CORNER_TOP_LEFT</property> 492 494 493 495 <child> 494 - <widget class="GtkTextView" id="textview3"> 496 + <object class="GtkTextView" id="textview3"> 495 497 <property name="visible">True</property> 496 498 <property name="can_focus">True</property> 497 499 <property name="editable">False</property> ··· 506 508 <property name="left_margin">0</property> 507 509 <property name="right_margin">0</property> 508 510 <property name="indent">0</property> 509 - </widget> 511 + </object> 510 512 </child> 511 - </widget> 513 + </object> 512 514 <packing> 513 515 <property name="shrink">True</property> 514 516 <property name="resize">True</property> 515 517 </packing> 516 518 </child> 517 - </widget> 519 + </object> 518 520 <packing> 519 521 <property name="shrink">True</property> 520 522 <property name="resize">True</property> 521 523 </packing> 522 524 </child> 523 - </widget> 525 + </object> 524 526 <packing> 525 527 <property name="padding">0</property> 526 528 <property name="expand">True</property> 527 529 <property name="fill">True</property> 528 530 </packing> 529 531 </child> 530 - </widget> 532 + </object> 531 533 </child> 532 - </widget> 534 + </object> 533 535 534 - </glade-interface> 536 + </interface>