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

Configure Feed

Select the types of activity you want to include in your feed.

[PATCH] fix gconfig crash

I ran glade-2 on the glade file, fixed two missing stock icons and
cleaned up the C code that inserts the single/split/full modes. The
rest of the patch is minor cleanups only. I refrained from using all
the included xpm icons in images.c (like qconf.cc does) in favour of
using the stock Gtk+ icons instead. Oh, yes there was a "back" bug
in split mode that I also removed, oh well...

It has been tested with success by several people, including
Jesper Juhl, Randy Dunlap and myself.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

authored by

Joachim Nilsson and committed by
Linus Torvalds
bafd2df5 2ac6608c

+208 -101
+72 -70
scripts/kconfig/gconf.c
··· 178 178 } 179 179 180 180 181 + void replace_button_icon(GladeXML * xml, GdkDrawable * window, 182 + GtkStyle * style, gchar * btn_name, gchar ** xpm) 183 + { 184 + GdkPixmap *pixmap; 185 + GdkBitmap *mask; 186 + GtkToolButton *button; 187 + GtkWidget *image; 188 + 189 + pixmap = gdk_pixmap_create_from_xpm_d(window, &mask, 190 + &style->bg[GTK_STATE_NORMAL], 191 + xpm); 192 + 193 + button = GTK_TOOL_BUTTON(glade_xml_get_widget(xml, btn_name)); 194 + image = gtk_image_new_from_pixmap(pixmap, mask); 195 + gtk_widget_show(image); 196 + gtk_tool_button_set_icon_widget(button, image); 197 + } 198 + 181 199 /* Main Window Initialization */ 182 - 183 - 184 200 void init_main_window(const gchar * glade_file) 185 201 { 186 202 GladeXML *xml; 187 203 GtkWidget *widget; 188 204 GtkTextBuffer *txtbuf; 189 205 char title[256]; 190 - GdkPixmap *pixmap; 191 - GdkBitmap *mask; 192 206 GtkStyle *style; 193 207 194 208 xml = glade_xml_new(glade_file, "window1", NULL); ··· 235 221 style = gtk_widget_get_style(main_wnd); 236 222 widget = glade_xml_get_widget(xml, "toolbar1"); 237 223 238 - pixmap = gdk_pixmap_create_from_xpm_d(main_wnd->window, &mask, 239 - &style->bg[GTK_STATE_NORMAL], 240 - (gchar **) xpm_single_view); 241 - gtk_image_set_from_pixmap(GTK_IMAGE 242 - (((GtkToolbarChild 243 - *) (g_list_nth(GTK_TOOLBAR(widget)-> 244 - children, 245 - 5)->data))->icon), 246 - pixmap, mask); 247 - pixmap = 248 - gdk_pixmap_create_from_xpm_d(main_wnd->window, &mask, 249 - &style->bg[GTK_STATE_NORMAL], 250 - (gchar **) xpm_split_view); 251 - gtk_image_set_from_pixmap(GTK_IMAGE 252 - (((GtkToolbarChild 253 - *) (g_list_nth(GTK_TOOLBAR(widget)-> 254 - children, 255 - 6)->data))->icon), 256 - pixmap, mask); 257 - pixmap = 258 - gdk_pixmap_create_from_xpm_d(main_wnd->window, &mask, 259 - &style->bg[GTK_STATE_NORMAL], 260 - (gchar **) xpm_tree_view); 261 - gtk_image_set_from_pixmap(GTK_IMAGE 262 - (((GtkToolbarChild 263 - *) (g_list_nth(GTK_TOOLBAR(widget)-> 264 - children, 265 - 7)->data))->icon), 266 - pixmap, mask); 224 + #if 0 /* Use stock Gtk icons instead */ 225 + replace_button_icon(xml, main_wnd->window, style, 226 + "button1", (gchar **) xpm_back); 227 + replace_button_icon(xml, main_wnd->window, style, 228 + "button2", (gchar **) xpm_load); 229 + replace_button_icon(xml, main_wnd->window, style, 230 + "button3", (gchar **) xpm_save); 231 + #endif 232 + replace_button_icon(xml, main_wnd->window, style, 233 + "button4", (gchar **) xpm_single_view); 234 + replace_button_icon(xml, main_wnd->window, style, 235 + "button5", (gchar **) xpm_split_view); 236 + replace_button_icon(xml, main_wnd->window, style, 237 + "button6", (gchar **) xpm_tree_view); 267 238 239 + #if 0 268 240 switch (view_mode) { 269 241 case SINGLE_VIEW: 270 242 widget = glade_xml_get_widget(xml, "button4"); ··· 265 265 g_signal_emit_by_name(widget, "clicked"); 266 266 break; 267 267 } 268 - 268 + #endif 269 269 txtbuf = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_w)); 270 270 tag1 = gtk_text_buffer_create_tag(txtbuf, "mytag1", 271 271 "foreground", "red", ··· 322 322 gtk_tree_view_set_model(view, model1); 323 323 gtk_tree_view_set_headers_visible(view, TRUE); 324 324 gtk_tree_view_set_rules_hint(view, FALSE); 325 - 325 + 326 326 column = gtk_tree_view_column_new(); 327 327 gtk_tree_view_append_column(view, column); 328 328 gtk_tree_view_column_set_title(column, _("Options")); ··· 334 334 renderer, 335 335 "active", COL_BTNACT, 336 336 "inconsistent", COL_BTNINC, 337 - "visible", COL_BTNVIS, 337 + "visible", COL_BTNVIS, 338 338 "radio", COL_BTNRAD, NULL); 339 339 renderer = gtk_cell_renderer_text_new(); 340 340 gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column), 341 - renderer, FALSE); 341 + renderer, FALSE); 342 342 gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column), 343 343 renderer, 344 344 "text", COL_OPTION, ··· 386 386 renderer, 387 387 "active", COL_BTNACT, 388 388 "inconsistent", COL_BTNINC, 389 - "visible", COL_BTNVIS, 389 + "visible", COL_BTNVIS, 390 390 "radio", COL_BTNRAD, NULL); 391 391 /*g_signal_connect(G_OBJECT(renderer), "toggled", 392 392 G_CALLBACK(renderer_toggled), NULL); */ ··· 806 806 } 807 807 808 808 809 - void on_back_pressed(GtkButton * button, gpointer user_data) 809 + void on_back_clicked(GtkButton * button, gpointer user_data) 810 810 { 811 811 enum prop_type ptype; 812 812 ··· 821 821 } 822 822 823 823 824 - void on_load_pressed(GtkButton * button, gpointer user_data) 824 + void on_load_clicked(GtkButton * button, gpointer user_data) 825 825 { 826 826 on_load1_activate(NULL, user_data); 827 827 } 828 828 829 829 830 - void on_save_pressed(GtkButton * button, gpointer user_data) 830 + void on_save_clicked(GtkButton * button, gpointer user_data) 831 831 { 832 832 on_save1_activate(NULL, user_data); 833 833 } ··· 850 850 gtk_widget_show(tree1_w); 851 851 gtk_window_get_default_size(GTK_WINDOW(main_wnd), &w, &h); 852 852 gtk_paned_set_position(GTK_PANED(hpaned), w / 2); 853 - if (tree2) 853 + if (tree2) 854 854 gtk_tree_store_clear(tree2); 855 855 display_list(); 856 + 857 + /* Disable back btn, like in full mode. */ 858 + gtk_widget_set_sensitive(back_btn, FALSE); 856 859 } 857 860 858 861 ··· 871 868 } 872 869 873 870 874 - void on_collapse_pressed(GtkButton * button, gpointer user_data) 871 + void on_collapse_clicked(GtkButton * button, gpointer user_data) 875 872 { 876 873 gtk_tree_view_collapse_all(GTK_TREE_VIEW(tree2_w)); 877 874 } 878 875 879 876 880 - void on_expand_pressed(GtkButton * button, gpointer user_data) 877 + void on_expand_clicked(GtkButton * button, gpointer user_data) 881 878 { 882 879 gtk_tree_view_expand_all(GTK_TREE_VIEW(tree2_w)); 883 880 } ··· 1245 1242 row[COL_VALUE] = 1246 1243 g_strdup(menu_get_prompt(def_menu)); 1247 1244 } 1248 - if(sym->flags & SYMBOL_CHOICEVAL) 1245 + if (sym->flags & SYMBOL_CHOICEVAL) 1249 1246 row[COL_BTNRAD] = GINT_TO_POINTER(TRUE); 1250 1247 1251 1248 stype = sym_get_type(sym); 1252 1249 switch (stype) { 1253 1250 case S_BOOLEAN: 1254 - if(GPOINTER_TO_INT(row[COL_PIXVIS]) == FALSE) 1251 + if (GPOINTER_TO_INT(row[COL_PIXVIS]) == FALSE) 1255 1252 row[COL_BTNVIS] = GINT_TO_POINTER(TRUE); 1256 1253 if (sym_is_choice(sym)) 1257 1254 break; ··· 1426 1423 child2); 1427 1424 gtk_tree_store_remove(tree2, &tmp); 1428 1425 if (!valid) 1429 - return; // next parent 1426 + return; // next parent 1430 1427 else 1431 1428 goto reparse; // next child 1432 1429 } else ··· 1451 1448 child2); 1452 1449 gtk_tree_store_remove(tree2, &tmp); 1453 1450 if (!valid) 1454 - return; // next parent 1451 + return; // next parent 1455 1452 else 1456 1453 goto reparse; // next child 1457 1454 } ··· 1489 1486 if (sym) 1490 1487 sym->flags &= ~SYMBOL_CHANGED; 1491 1488 1492 - if ((view_mode == SPLIT_VIEW) && !(child->flags & MENU_ROOT) && 1493 - (tree == tree1)) 1489 + if ((view_mode == SPLIT_VIEW) 1490 + && !(child->flags & MENU_ROOT) && (tree == tree1)) 1494 1491 continue; 1495 1492 1496 - if ((view_mode == SPLIT_VIEW) && (child->flags & MENU_ROOT) && 1497 - (tree == tree2)) 1493 + if ((view_mode == SPLIT_VIEW) && (child->flags & MENU_ROOT) 1494 + && (tree == tree2)) 1498 1495 continue; 1499 1496 1500 1497 if (menu_is_visible(child) || show_all) ··· 1516 1513 && (tree == tree2)) 1517 1514 continue; 1518 1515 /* 1519 - if (((menu != &rootmenu) && !(menu->flags & MENU_ROOT)) || 1520 - (view_mode == FULL_VIEW) 1516 + if (((menu != &rootmenu) && !(menu->flags & MENU_ROOT)) 1517 + || (view_mode == FULL_VIEW) 1521 1518 || (view_mode == SPLIT_VIEW))*/ 1522 1519 if (((view_mode == SINGLE_VIEW) && (menu->flags & MENU_ROOT)) 1523 - || (view_mode == FULL_VIEW) || (view_mode == SPLIT_VIEW)) { 1520 + || (view_mode == FULL_VIEW) 1521 + || (view_mode == SPLIT_VIEW)) { 1524 1522 indent++; 1525 1523 display_tree(child); 1526 1524 indent--; ··· 1534 1530 { 1535 1531 if (tree2) 1536 1532 gtk_tree_store_clear(tree2); 1537 - if(view_mode == SINGLE_VIEW) 1533 + if (view_mode == SINGLE_VIEW) 1538 1534 display_tree(current); 1539 - else if(view_mode == SPLIT_VIEW) 1535 + else if (view_mode == SPLIT_VIEW) 1540 1536 display_tree(browsed); 1541 1537 gtk_tree_view_expand_all(GTK_TREE_VIEW(tree2_w)); 1542 1538 } ··· 1555 1551 1556 1552 void fixup_rootmenu(struct menu *menu) 1557 1553 { 1558 - struct menu *child; 1559 - static int menu_cnt = 0; 1554 + struct menu *child; 1555 + static int menu_cnt = 0; 1560 1556 1561 - menu->flags |= MENU_ROOT; 1562 - for (child = menu->list; child; child = child->next) { 1563 - if (child->prompt && child->prompt->type == P_MENU) { 1564 - menu_cnt++; 1565 - fixup_rootmenu(child); 1566 - menu_cnt--; 1567 - } else if (!menu_cnt) 1568 - fixup_rootmenu(child); 1569 - } 1557 + menu->flags |= MENU_ROOT; 1558 + for (child = menu->list; child; child = child->next) { 1559 + if (child->prompt && child->prompt->type == P_MENU) { 1560 + menu_cnt++; 1561 + fixup_rootmenu(child); 1562 + menu_cnt--; 1563 + } else if (!menu_cnt) 1564 + fixup_rootmenu(child); 1565 + } 1570 1566 } 1571 1567 1572 1568 1573 1569 /* Main */ 1574 - 1575 - 1576 1570 int main(int ac, char *av[]) 1577 1571 { 1578 1572 const char *name;
+136 -31
scripts/kconfig/gconf.glade
··· 13 13 <property name="default_height">480</property> 14 14 <property name="resizable">True</property> 15 15 <property name="destroy_with_parent">False</property> 16 + <property name="decorated">True</property> 17 + <property name="skip_taskbar_hint">False</property> 18 + <property name="skip_pager_hint">False</property> 19 + <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property> 20 + <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> 16 21 <signal name="destroy" handler="on_window1_destroy" object="window1"/> 17 22 <signal name="size_request" handler="on_window1_size_request" object="vpaned1" last_modification_time="Fri, 11 Jan 2002 16:17:11 GMT"/> 18 23 <signal name="delete_event" handler="on_window1_delete_event" object="window1" last_modification_time="Sun, 09 Mar 2003 19:42:46 GMT"/> ··· 51 46 <accelerator key="L" modifiers="GDK_CONTROL_MASK" signal="activate"/> 52 47 53 48 <child internal-child="image"> 54 - <widget class="GtkImage" id="image27"> 49 + <widget class="GtkImage" id="image39"> 55 50 <property name="visible">True</property> 56 51 <property name="stock">gtk-open</property> 57 52 <property name="icon_size">1</property> ··· 74 69 <accelerator key="S" modifiers="GDK_CONTROL_MASK" signal="activate"/> 75 70 76 71 <child internal-child="image"> 77 - <widget class="GtkImage" id="image28"> 72 + <widget class="GtkImage" id="image40"> 78 73 <property name="visible">True</property> 79 74 <property name="stock">gtk-save</property> 80 75 <property name="icon_size">1</property> ··· 96 91 <signal name="activate" handler="on_save_as1_activate"/> 97 92 98 93 <child internal-child="image"> 99 - <widget class="GtkImage" id="image29"> 94 + <widget class="GtkImage" id="image41"> 100 95 <property name="visible">True</property> 101 96 <property name="stock">gtk-save-as</property> 102 97 <property name="icon_size">1</property> ··· 110 105 </child> 111 106 112 107 <child> 113 - <widget class="GtkMenuItem" id="separator1"> 108 + <widget class="GtkSeparatorMenuItem" id="separator1"> 114 109 <property name="visible">True</property> 115 110 </widget> 116 111 </child> ··· 124 119 <accelerator key="Q" modifiers="GDK_CONTROL_MASK" signal="activate"/> 125 120 126 121 <child internal-child="image"> 127 - <widget class="GtkImage" id="image30"> 122 + <widget class="GtkImage" id="image42"> 128 123 <property name="visible">True</property> 129 124 <property name="stock">gtk-quit</property> 130 125 <property name="icon_size">1</property> ··· 184 179 </child> 185 180 186 181 <child> 187 - <widget class="GtkMenuItem" id="separator2"> 182 + <widget class="GtkSeparatorMenuItem" id="separator2"> 188 183 <property name="visible">True</property> 189 184 </widget> 190 185 </child> ··· 233 228 <accelerator key="I" modifiers="GDK_CONTROL_MASK" signal="activate"/> 234 229 235 230 <child internal-child="image"> 236 - <widget class="GtkImage" id="image31"> 231 + <widget class="GtkImage" id="image43"> 237 232 <property name="visible">True</property> 238 233 <property name="stock">gtk-dialog-question</property> 239 234 <property name="icon_size">1</property> ··· 255 250 <accelerator key="A" modifiers="GDK_CONTROL_MASK" signal="activate"/> 256 251 257 252 <child internal-child="image"> 258 - <widget class="GtkImage" id="image32"> 253 + <widget class="GtkImage" id="image44"> 259 254 <property name="visible">True</property> 260 255 <property name="stock">gtk-properties</property> 261 256 <property name="icon_size">1</property> ··· 276 271 <signal name="activate" handler="on_license1_activate" last_modification_time="Fri, 15 Nov 2002 20:26:30 GMT"/> 277 272 278 273 <child internal-child="image"> 279 - <widget class="GtkImage" id="image33"> 274 + <widget class="GtkImage" id="image45"> 280 275 <property name="visible">True</property> 281 276 <property name="stock">gtk-justify-fill</property> 282 277 <property name="icon_size">1</property> ··· 313 308 <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property> 314 309 <property name="toolbar_style">GTK_TOOLBAR_BOTH</property> 315 310 <property name="tooltips">True</property> 311 + <property name="show_arrow">True</property> 316 312 317 313 <child> 318 - <widget class="button" id="button1"> 314 + <widget class="GtkToolButton" id="button1"> 319 315 <property name="visible">True</property> 320 316 <property name="tooltip" translatable="yes">Goes up of one level (single view)</property> 321 317 <property name="label" translatable="yes">Back</property> 322 318 <property name="use_underline">True</property> 323 - <property name="stock_pixmap">gtk-undo</property> 324 - <signal name="pressed" handler="on_back_pressed"/> 319 + <property name="stock_id">gtk-undo</property> 320 + <property name="visible_horizontal">True</property> 321 + <property name="visible_vertical">True</property> 322 + <property name="is_important">False</property> 323 + <signal name="clicked" handler="on_back_clicked"/> 325 324 </widget> 325 + <packing> 326 + <property name="expand">False</property> 327 + <property name="homogeneous">True</property> 328 + </packing> 326 329 </child> 327 330 328 331 <child> 329 - <widget class="GtkVSeparator" id="vseparator1"> 332 + <widget class="GtkToolItem" id="toolitem1"> 330 333 <property name="visible">True</property> 334 + <property name="visible_horizontal">True</property> 335 + <property name="visible_vertical">True</property> 336 + <property name="is_important">False</property> 337 + 338 + <child> 339 + <widget class="GtkVSeparator" id="vseparator1"> 340 + <property name="visible">True</property> 341 + </widget> 342 + </child> 331 343 </widget> 344 + <packing> 345 + <property name="expand">False</property> 346 + <property name="homogeneous">False</property> 347 + </packing> 332 348 </child> 333 349 334 350 <child> 335 - <widget class="button" id="button2"> 351 + <widget class="GtkToolButton" id="button2"> 336 352 <property name="visible">True</property> 337 353 <property name="tooltip" translatable="yes">Load a config file</property> 338 354 <property name="label" translatable="yes">Load</property> 339 355 <property name="use_underline">True</property> 340 - <property name="stock_pixmap">gtk-open</property> 341 - <signal name="pressed" handler="on_load_pressed"/> 356 + <property name="stock_id">gtk-open</property> 357 + <property name="visible_horizontal">True</property> 358 + <property name="visible_vertical">True</property> 359 + <property name="is_important">False</property> 360 + <signal name="clicked" handler="on_load_clicked"/> 342 361 </widget> 362 + <packing> 363 + <property name="expand">False</property> 364 + <property name="homogeneous">True</property> 365 + </packing> 343 366 </child> 344 367 345 368 <child> 346 - <widget class="button" id="button3"> 369 + <widget class="GtkToolButton" id="button3"> 347 370 <property name="visible">True</property> 348 371 <property name="tooltip" translatable="yes">Save a config file</property> 349 372 <property name="label" translatable="yes">Save</property> 350 373 <property name="use_underline">True</property> 351 - <property name="stock_pixmap">gtk-save</property> 352 - <signal name="pressed" handler="on_save_pressed"/> 374 + <property name="stock_id">gtk-save</property> 375 + <property name="visible_horizontal">True</property> 376 + <property name="visible_vertical">True</property> 377 + <property name="is_important">False</property> 378 + <signal name="clicked" handler="on_save_clicked"/> 353 379 </widget> 380 + <packing> 381 + <property name="expand">False</property> 382 + <property name="homogeneous">True</property> 383 + </packing> 354 384 </child> 355 385 356 386 <child> 357 - <widget class="GtkVSeparator" id="vseparator2"> 387 + <widget class="GtkToolItem" id="toolitem2"> 358 388 <property name="visible">True</property> 389 + <property name="visible_horizontal">True</property> 390 + <property name="visible_vertical">True</property> 391 + <property name="is_important">False</property> 392 + 393 + <child> 394 + <widget class="GtkVSeparator" id="vseparator2"> 395 + <property name="visible">True</property> 396 + </widget> 397 + </child> 359 398 </widget> 399 + <packing> 400 + <property name="expand">False</property> 401 + <property name="homogeneous">False</property> 402 + </packing> 360 403 </child> 361 404 362 405 <child> 363 - <widget class="button" id="button4"> 406 + <widget class="GtkToolButton" id="button4"> 364 407 <property name="visible">True</property> 365 408 <property name="tooltip" translatable="yes">Single view</property> 366 409 <property name="label" translatable="yes">Single</property> 367 410 <property name="use_underline">True</property> 368 - <property name="stock_pixmap">gtk-missing-image</property> 411 + <property name="stock_id">gtk-missing-image</property> 412 + <property name="visible_horizontal">True</property> 413 + <property name="visible_vertical">True</property> 414 + <property name="is_important">False</property> 369 415 <signal name="clicked" handler="on_single_clicked" last_modification_time="Sun, 12 Jan 2003 14:28:39 GMT"/> 370 416 </widget> 417 + <packing> 418 + <property name="expand">False</property> 419 + <property name="homogeneous">True</property> 420 + </packing> 371 421 </child> 372 422 373 423 <child> 374 - <widget class="button" id="button5"> 424 + <widget class="GtkToolButton" id="button5"> 375 425 <property name="visible">True</property> 376 426 <property name="tooltip" translatable="yes">Split view</property> 377 427 <property name="label" translatable="yes">Split</property> 378 428 <property name="use_underline">True</property> 379 - <property name="stock_pixmap">gtk-missing-image</property> 429 + <property name="stock_id">gtk-missing-image</property> 430 + <property name="visible_horizontal">True</property> 431 + <property name="visible_vertical">True</property> 432 + <property name="is_important">False</property> 380 433 <signal name="clicked" handler="on_split_clicked" last_modification_time="Sun, 12 Jan 2003 14:28:45 GMT"/> 381 434 </widget> 435 + <packing> 436 + <property name="expand">False</property> 437 + <property name="homogeneous">True</property> 438 + </packing> 382 439 </child> 383 440 384 441 <child> 385 - <widget class="button" id="button6"> 442 + <widget class="GtkToolButton" id="button6"> 386 443 <property name="visible">True</property> 387 444 <property name="tooltip" translatable="yes">Full view</property> 388 445 <property name="label" translatable="yes">Full</property> 389 446 <property name="use_underline">True</property> 390 - <property name="stock_pixmap">gtk-missing-image</property> 447 + <property name="stock_id">gtk-missing-image</property> 448 + <property name="visible_horizontal">True</property> 449 + <property name="visible_vertical">True</property> 450 + <property name="is_important">False</property> 391 451 <signal name="clicked" handler="on_full_clicked" last_modification_time="Sun, 12 Jan 2003 14:28:50 GMT"/> 392 452 </widget> 453 + <packing> 454 + <property name="expand">False</property> 455 + <property name="homogeneous">True</property> 456 + </packing> 393 457 </child> 394 458 395 459 <child> 396 - <widget class="GtkVSeparator" id="vseparator3"> 460 + <widget class="GtkToolItem" id="toolitem3"> 397 461 <property name="visible">True</property> 462 + <property name="visible_horizontal">True</property> 463 + <property name="visible_vertical">True</property> 464 + <property name="is_important">False</property> 465 + 466 + <child> 467 + <widget class="GtkVSeparator" id="vseparator3"> 468 + <property name="visible">True</property> 469 + </widget> 470 + </child> 398 471 </widget> 472 + <packing> 473 + <property name="expand">False</property> 474 + <property name="homogeneous">False</property> 475 + </packing> 399 476 </child> 400 477 401 478 <child> 402 - <widget class="button" id="button7"> 479 + <widget class="GtkToolButton" id="button7"> 403 480 <property name="visible">True</property> 404 481 <property name="tooltip" translatable="yes">Collapse the whole tree in the right frame</property> 405 482 <property name="label" translatable="yes">Collapse</property> 406 483 <property name="use_underline">True</property> 407 - <signal name="pressed" handler="on_collapse_pressed"/> 484 + <property name="stock_id">gtk-remove</property> 485 + <property name="visible_horizontal">True</property> 486 + <property name="visible_vertical">True</property> 487 + <property name="is_important">False</property> 488 + <signal name="clicked" handler="on_collapse_clicked"/> 408 489 </widget> 490 + <packing> 491 + <property name="expand">False</property> 492 + <property name="homogeneous">True</property> 493 + </packing> 409 494 </child> 410 495 411 496 <child> 412 - <widget class="button" id="button8"> 497 + <widget class="GtkToolButton" id="button8"> 413 498 <property name="visible">True</property> 414 499 <property name="tooltip" translatable="yes">Expand the whole tree in the right frame</property> 415 500 <property name="label" translatable="yes">Expand</property> 416 501 <property name="use_underline">True</property> 417 - <signal name="pressed" handler="on_expand_pressed"/> 502 + <property name="stock_id">gtk-add</property> 503 + <property name="visible_horizontal">True</property> 504 + <property name="visible_vertical">True</property> 505 + <property name="is_important">False</property> 506 + <signal name="clicked" handler="on_expand_clicked"/> 418 507 </widget> 508 + <packing> 509 + <property name="expand">False</property> 510 + <property name="homogeneous">True</property> 511 + </packing> 419 512 </child> 420 513 </widget> 421 514 </child> ··· 608 505 <property name="visible">True</property> 609 506 <property name="can_focus">True</property> 610 507 <property name="editable">False</property> 508 + <property name="overwrite">False</property> 509 + <property name="accepts_tab">True</property> 611 510 <property name="justification">GTK_JUSTIFY_LEFT</property> 612 511 <property name="wrap_mode">GTK_WRAP_WORD</property> 613 512 <property name="cursor_visible">True</property>