/[linux-patches]/genpatches-2.6/tags/2.6.12-12/1900_gconfig-crash.patch
Gentoo

Contents of /genpatches-2.6/tags/2.6.12-12/1900_gconfig-crash.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 137 - (show annotations) (download)
Tue Aug 9 21:23:12 2005 UTC (13 years, 2 months ago) by dsd
File size: 23846 byte(s)
2.6.12-12 release
1 From: Joachim Nilsson <joachim.nilsson@vmlinux.org>
2 Date: Thu, 28 Jul 2005 22:18:03 +0000 (+0200)
3 Subject: [PATCH] fix gconfig crash
4 X-Git-Tag: v2.6.13-rc4
5 X-Git-Url: http://www.kernel.org/git/gitweb.cgi?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=bafd2df5d0049bccc74947fece37963e3f68fadc
6
7 [PATCH] fix gconfig crash
8
9 I ran glade-2 on the glade file, fixed two missing stock icons and
10 cleaned up the C code that inserts the single/split/full modes. The
11 rest of the patch is minor cleanups only. I refrained from using all
12 the included xpm icons in images.c (like qconf.cc does) in favour of
13 using the stock Gtk+ icons instead. Oh, yes there was a "back" bug
14 in split mode that I also removed, oh well...
15
16 It has been tested with success by several people, including
17 Jesper Juhl, Randy Dunlap and myself.
18
19 Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
20 Signed-off-by: Linus Torvalds <torvalds@osdl.org>
21 ---
22
23 --- a/scripts/kconfig/gconf.c
24 +++ b/scripts/kconfig/gconf.c
25 @@ -178,17 +178,31 @@ const char *dbg_print_ptype(int val)
26 }
27
28
29 -/* Main Window Initialization */
30 +void replace_button_icon(GladeXML * xml, GdkDrawable * window,
31 + GtkStyle * style, gchar * btn_name, gchar ** xpm)
32 +{
33 + GdkPixmap *pixmap;
34 + GdkBitmap *mask;
35 + GtkToolButton *button;
36 + GtkWidget *image;
37
38 + pixmap = gdk_pixmap_create_from_xpm_d(window, &mask,
39 + &style->bg[GTK_STATE_NORMAL],
40 + xpm);
41 +
42 + button = GTK_TOOL_BUTTON(glade_xml_get_widget(xml, btn_name));
43 + image = gtk_image_new_from_pixmap(pixmap, mask);
44 + gtk_widget_show(image);
45 + gtk_tool_button_set_icon_widget(button, image);
46 +}
47
48 +/* Main Window Initialization */
49 void init_main_window(const gchar * glade_file)
50 {
51 GladeXML *xml;
52 GtkWidget *widget;
53 GtkTextBuffer *txtbuf;
54 char title[256];
55 - GdkPixmap *pixmap;
56 - GdkBitmap *mask;
57 GtkStyle *style;
58
59 xml = glade_xml_new(glade_file, "window1", NULL);
60 @@ -221,36 +235,22 @@ void init_main_window(const gchar * glad
61 style = gtk_widget_get_style(main_wnd);
62 widget = glade_xml_get_widget(xml, "toolbar1");
63
64 - pixmap = gdk_pixmap_create_from_xpm_d(main_wnd->window, &mask,
65 - &style->bg[GTK_STATE_NORMAL],
66 - (gchar **) xpm_single_view);
67 - gtk_image_set_from_pixmap(GTK_IMAGE
68 - (((GtkToolbarChild
69 - *) (g_list_nth(GTK_TOOLBAR(widget)->
70 - children,
71 - 5)->data))->icon),
72 - pixmap, mask);
73 - pixmap =
74 - gdk_pixmap_create_from_xpm_d(main_wnd->window, &mask,
75 - &style->bg[GTK_STATE_NORMAL],
76 - (gchar **) xpm_split_view);
77 - gtk_image_set_from_pixmap(GTK_IMAGE
78 - (((GtkToolbarChild
79 - *) (g_list_nth(GTK_TOOLBAR(widget)->
80 - children,
81 - 6)->data))->icon),
82 - pixmap, mask);
83 - pixmap =
84 - gdk_pixmap_create_from_xpm_d(main_wnd->window, &mask,
85 - &style->bg[GTK_STATE_NORMAL],
86 - (gchar **) xpm_tree_view);
87 - gtk_image_set_from_pixmap(GTK_IMAGE
88 - (((GtkToolbarChild
89 - *) (g_list_nth(GTK_TOOLBAR(widget)->
90 - children,
91 - 7)->data))->icon),
92 - pixmap, mask);
93 +#if 0 /* Use stock Gtk icons instead */
94 + replace_button_icon(xml, main_wnd->window, style,
95 + "button1", (gchar **) xpm_back);
96 + replace_button_icon(xml, main_wnd->window, style,
97 + "button2", (gchar **) xpm_load);
98 + replace_button_icon(xml, main_wnd->window, style,
99 + "button3", (gchar **) xpm_save);
100 +#endif
101 + replace_button_icon(xml, main_wnd->window, style,
102 + "button4", (gchar **) xpm_single_view);
103 + replace_button_icon(xml, main_wnd->window, style,
104 + "button5", (gchar **) xpm_split_view);
105 + replace_button_icon(xml, main_wnd->window, style,
106 + "button6", (gchar **) xpm_tree_view);
107
108 +#if 0
109 switch (view_mode) {
110 case SINGLE_VIEW:
111 widget = glade_xml_get_widget(xml, "button4");
112 @@ -265,7 +265,7 @@ void init_main_window(const gchar * glad
113 g_signal_emit_by_name(widget, "clicked");
114 break;
115 }
116 -
117 +#endif
118 txtbuf = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_w));
119 tag1 = gtk_text_buffer_create_tag(txtbuf, "mytag1",
120 "foreground", "red",
121 @@ -322,7 +322,7 @@ void init_left_tree(void)
122 gtk_tree_view_set_model(view, model1);
123 gtk_tree_view_set_headers_visible(view, TRUE);
124 gtk_tree_view_set_rules_hint(view, FALSE);
125 -
126 +
127 column = gtk_tree_view_column_new();
128 gtk_tree_view_append_column(view, column);
129 gtk_tree_view_column_set_title(column, _("Options"));
130 @@ -334,11 +334,11 @@ void init_left_tree(void)
131 renderer,
132 "active", COL_BTNACT,
133 "inconsistent", COL_BTNINC,
134 - "visible", COL_BTNVIS,
135 + "visible", COL_BTNVIS,
136 "radio", COL_BTNRAD, NULL);
137 renderer = gtk_cell_renderer_text_new();
138 gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column),
139 - renderer, FALSE);
140 + renderer, FALSE);
141 gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column),
142 renderer,
143 "text", COL_OPTION,
144 @@ -386,7 +386,7 @@ void init_right_tree(void)
145 renderer,
146 "active", COL_BTNACT,
147 "inconsistent", COL_BTNINC,
148 - "visible", COL_BTNVIS,
149 + "visible", COL_BTNVIS,
150 "radio", COL_BTNRAD, NULL);
151 /*g_signal_connect(G_OBJECT(renderer), "toggled",
152 G_CALLBACK(renderer_toggled), NULL); */
153 @@ -806,7 +806,7 @@ void on_license1_activate(GtkMenuItem *
154 }
155
156
157 -void on_back_pressed(GtkButton * button, gpointer user_data)
158 +void on_back_clicked(GtkButton * button, gpointer user_data)
159 {
160 enum prop_type ptype;
161
162 @@ -821,13 +821,13 @@ void on_back_pressed(GtkButton * button,
163 }
164
165
166 -void on_load_pressed(GtkButton * button, gpointer user_data)
167 +void on_load_clicked(GtkButton * button, gpointer user_data)
168 {
169 on_load1_activate(NULL, user_data);
170 }
171
172
173 -void on_save_pressed(GtkButton * button, gpointer user_data)
174 +void on_save_clicked(GtkButton * button, gpointer user_data)
175 {
176 on_save1_activate(NULL, user_data);
177 }
178 @@ -850,9 +850,12 @@ void on_split_clicked(GtkButton * button
179 gtk_widget_show(tree1_w);
180 gtk_window_get_default_size(GTK_WINDOW(main_wnd), &w, &h);
181 gtk_paned_set_position(GTK_PANED(hpaned), w / 2);
182 - if (tree2)
183 + if (tree2)
184 gtk_tree_store_clear(tree2);
185 display_list();
186 +
187 + /* Disable back btn, like in full mode. */
188 + gtk_widget_set_sensitive(back_btn, FALSE);
189 }
190
191
192 @@ -868,13 +871,13 @@ void on_full_clicked(GtkButton * button,
193 }
194
195
196 -void on_collapse_pressed(GtkButton * button, gpointer user_data)
197 +void on_collapse_clicked(GtkButton * button, gpointer user_data)
198 {
199 gtk_tree_view_collapse_all(GTK_TREE_VIEW(tree2_w));
200 }
201
202
203 -void on_expand_pressed(GtkButton * button, gpointer user_data)
204 +void on_expand_clicked(GtkButton * button, gpointer user_data)
205 {
206 gtk_tree_view_expand_all(GTK_TREE_VIEW(tree2_w));
207 }
208 @@ -1242,13 +1245,13 @@ static gchar **fill_row(struct menu *men
209 row[COL_VALUE] =
210 g_strdup(menu_get_prompt(def_menu));
211 }
212 - if(sym->flags & SYMBOL_CHOICEVAL)
213 + if (sym->flags & SYMBOL_CHOICEVAL)
214 row[COL_BTNRAD] = GINT_TO_POINTER(TRUE);
215
216 stype = sym_get_type(sym);
217 switch (stype) {
218 case S_BOOLEAN:
219 - if(GPOINTER_TO_INT(row[COL_PIXVIS]) == FALSE)
220 + if (GPOINTER_TO_INT(row[COL_PIXVIS]) == FALSE)
221 row[COL_BTNVIS] = GINT_TO_POINTER(TRUE);
222 if (sym_is_choice(sym))
223 break;
224 @@ -1423,7 +1426,7 @@ static void update_tree(struct menu *src
225 child2);
226 gtk_tree_store_remove(tree2, &tmp);
227 if (!valid)
228 - return; // next parent
229 + return; // next parent
230 else
231 goto reparse; // next child
232 } else
233 @@ -1448,7 +1451,7 @@ static void update_tree(struct menu *src
234 child2);
235 gtk_tree_store_remove(tree2, &tmp);
236 if (!valid)
237 - return; // next parent
238 + return; // next parent
239 else
240 goto reparse; // next child
241 }
242 @@ -1486,12 +1489,12 @@ static void display_tree(struct menu *me
243 if (sym)
244 sym->flags &= ~SYMBOL_CHANGED;
245
246 - if ((view_mode == SPLIT_VIEW) && !(child->flags & MENU_ROOT) &&
247 - (tree == tree1))
248 + if ((view_mode == SPLIT_VIEW)
249 + && !(child->flags & MENU_ROOT) && (tree == tree1))
250 continue;
251
252 - if ((view_mode == SPLIT_VIEW) && (child->flags & MENU_ROOT) &&
253 - (tree == tree2))
254 + if ((view_mode == SPLIT_VIEW) && (child->flags & MENU_ROOT)
255 + && (tree == tree2))
256 continue;
257
258 if (menu_is_visible(child) || show_all)
259 @@ -1513,11 +1516,12 @@ static void display_tree(struct menu *me
260 && (tree == tree2))
261 continue;
262 /*
263 - if (((menu != &rootmenu) && !(menu->flags & MENU_ROOT)) ||
264 - (view_mode == FULL_VIEW)
265 + if (((menu != &rootmenu) && !(menu->flags & MENU_ROOT))
266 + || (view_mode == FULL_VIEW)
267 || (view_mode == SPLIT_VIEW))*/
268 if (((view_mode == SINGLE_VIEW) && (menu->flags & MENU_ROOT))
269 - || (view_mode == FULL_VIEW) || (view_mode == SPLIT_VIEW)) {
270 + || (view_mode == FULL_VIEW)
271 + || (view_mode == SPLIT_VIEW)) {
272 indent++;
273 display_tree(child);
274 indent--;
275 @@ -1530,9 +1534,9 @@ static void display_tree_part(void)
276 {
277 if (tree2)
278 gtk_tree_store_clear(tree2);
279 - if(view_mode == SINGLE_VIEW)
280 + if (view_mode == SINGLE_VIEW)
281 display_tree(current);
282 - else if(view_mode == SPLIT_VIEW)
283 + else if (view_mode == SPLIT_VIEW)
284 display_tree(browsed);
285 gtk_tree_view_expand_all(GTK_TREE_VIEW(tree2_w));
286 }
287 @@ -1551,24 +1555,22 @@ static void display_list(void)
288
289 void fixup_rootmenu(struct menu *menu)
290 {
291 - struct menu *child;
292 - static int menu_cnt = 0;
293 + struct menu *child;
294 + static int menu_cnt = 0;
295
296 - menu->flags |= MENU_ROOT;
297 - for (child = menu->list; child; child = child->next) {
298 - if (child->prompt && child->prompt->type == P_MENU) {
299 - menu_cnt++;
300 - fixup_rootmenu(child);
301 - menu_cnt--;
302 - } else if (!menu_cnt)
303 - fixup_rootmenu(child);
304 - }
305 + menu->flags |= MENU_ROOT;
306 + for (child = menu->list; child; child = child->next) {
307 + if (child->prompt && child->prompt->type == P_MENU) {
308 + menu_cnt++;
309 + fixup_rootmenu(child);
310 + menu_cnt--;
311 + } else if (!menu_cnt)
312 + fixup_rootmenu(child);
313 + }
314 }
315
316
317 /* Main */
318 -
319 -
320 int main(int ac, char *av[])
321 {
322 const char *name;
323 --- a/scripts/kconfig/gconf.glade
324 +++ b/scripts/kconfig/gconf.glade
325 @@ -13,6 +13,11 @@
326 <property name="default_height">480</property>
327 <property name="resizable">True</property>
328 <property name="destroy_with_parent">False</property>
329 + <property name="decorated">True</property>
330 + <property name="skip_taskbar_hint">False</property>
331 + <property name="skip_pager_hint">False</property>
332 + <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
333 + <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
334 <signal name="destroy" handler="on_window1_destroy" object="window1"/>
335 <signal name="size_request" handler="on_window1_size_request" object="vpaned1" last_modification_time="Fri, 11 Jan 2002 16:17:11 GMT"/>
336 <signal name="delete_event" handler="on_window1_delete_event" object="window1" last_modification_time="Sun, 09 Mar 2003 19:42:46 GMT"/>
337 @@ -46,7 +51,7 @@
338 <accelerator key="L" modifiers="GDK_CONTROL_MASK" signal="activate"/>
339
340 <child internal-child="image">
341 - <widget class="GtkImage" id="image27">
342 + <widget class="GtkImage" id="image39">
343 <property name="visible">True</property>
344 <property name="stock">gtk-open</property>
345 <property name="icon_size">1</property>
346 @@ -69,7 +74,7 @@
347 <accelerator key="S" modifiers="GDK_CONTROL_MASK" signal="activate"/>
348
349 <child internal-child="image">
350 - <widget class="GtkImage" id="image28">
351 + <widget class="GtkImage" id="image40">
352 <property name="visible">True</property>
353 <property name="stock">gtk-save</property>
354 <property name="icon_size">1</property>
355 @@ -91,7 +96,7 @@
356 <signal name="activate" handler="on_save_as1_activate"/>
357
358 <child internal-child="image">
359 - <widget class="GtkImage" id="image29">
360 + <widget class="GtkImage" id="image41">
361 <property name="visible">True</property>
362 <property name="stock">gtk-save-as</property>
363 <property name="icon_size">1</property>
364 @@ -105,7 +110,7 @@
365 </child>
366
367 <child>
368 - <widget class="GtkMenuItem" id="separator1">
369 + <widget class="GtkSeparatorMenuItem" id="separator1">
370 <property name="visible">True</property>
371 </widget>
372 </child>
373 @@ -119,7 +124,7 @@
374 <accelerator key="Q" modifiers="GDK_CONTROL_MASK" signal="activate"/>
375
376 <child internal-child="image">
377 - <widget class="GtkImage" id="image30">
378 + <widget class="GtkImage" id="image42">
379 <property name="visible">True</property>
380 <property name="stock">gtk-quit</property>
381 <property name="icon_size">1</property>
382 @@ -179,7 +184,7 @@
383 </child>
384
385 <child>
386 - <widget class="GtkMenuItem" id="separator2">
387 + <widget class="GtkSeparatorMenuItem" id="separator2">
388 <property name="visible">True</property>
389 </widget>
390 </child>
391 @@ -228,7 +233,7 @@
392 <accelerator key="I" modifiers="GDK_CONTROL_MASK" signal="activate"/>
393
394 <child internal-child="image">
395 - <widget class="GtkImage" id="image31">
396 + <widget class="GtkImage" id="image43">
397 <property name="visible">True</property>
398 <property name="stock">gtk-dialog-question</property>
399 <property name="icon_size">1</property>
400 @@ -250,7 +255,7 @@
401 <accelerator key="A" modifiers="GDK_CONTROL_MASK" signal="activate"/>
402
403 <child internal-child="image">
404 - <widget class="GtkImage" id="image32">
405 + <widget class="GtkImage" id="image44">
406 <property name="visible">True</property>
407 <property name="stock">gtk-properties</property>
408 <property name="icon_size">1</property>
409 @@ -271,7 +276,7 @@
410 <signal name="activate" handler="on_license1_activate" last_modification_time="Fri, 15 Nov 2002 20:26:30 GMT"/>
411
412 <child internal-child="image">
413 - <widget class="GtkImage" id="image33">
414 + <widget class="GtkImage" id="image45">
415 <property name="visible">True</property>
416 <property name="stock">gtk-justify-fill</property>
417 <property name="icon_size">1</property>
418 @@ -308,109 +313,207 @@
419 <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property>
420 <property name="toolbar_style">GTK_TOOLBAR_BOTH</property>
421 <property name="tooltips">True</property>
422 + <property name="show_arrow">True</property>
423
424 <child>
425 - <widget class="button" id="button1">
426 + <widget class="GtkToolButton" id="button1">
427 <property name="visible">True</property>
428 <property name="tooltip" translatable="yes">Goes up of one level (single view)</property>
429 <property name="label" translatable="yes">Back</property>
430 <property name="use_underline">True</property>
431 - <property name="stock_pixmap">gtk-undo</property>
432 - <signal name="pressed" handler="on_back_pressed"/>
433 + <property name="stock_id">gtk-undo</property>
434 + <property name="visible_horizontal">True</property>
435 + <property name="visible_vertical">True</property>
436 + <property name="is_important">False</property>
437 + <signal name="clicked" handler="on_back_clicked"/>
438 </widget>
439 + <packing>
440 + <property name="expand">False</property>
441 + <property name="homogeneous">True</property>
442 + </packing>
443 </child>
444
445 <child>
446 - <widget class="GtkVSeparator" id="vseparator1">
447 + <widget class="GtkToolItem" id="toolitem1">
448 <property name="visible">True</property>
449 + <property name="visible_horizontal">True</property>
450 + <property name="visible_vertical">True</property>
451 + <property name="is_important">False</property>
452 +
453 + <child>
454 + <widget class="GtkVSeparator" id="vseparator1">
455 + <property name="visible">True</property>
456 + </widget>
457 + </child>
458 </widget>
459 + <packing>
460 + <property name="expand">False</property>
461 + <property name="homogeneous">False</property>
462 + </packing>
463 </child>
464
465 <child>
466 - <widget class="button" id="button2">
467 + <widget class="GtkToolButton" id="button2">
468 <property name="visible">True</property>
469 <property name="tooltip" translatable="yes">Load a config file</property>
470 <property name="label" translatable="yes">Load</property>
471 <property name="use_underline">True</property>
472 - <property name="stock_pixmap">gtk-open</property>
473 - <signal name="pressed" handler="on_load_pressed"/>
474 + <property name="stock_id">gtk-open</property>
475 + <property name="visible_horizontal">True</property>
476 + <property name="visible_vertical">True</property>
477 + <property name="is_important">False</property>
478 + <signal name="clicked" handler="on_load_clicked"/>
479 </widget>
480 + <packing>
481 + <property name="expand">False</property>
482 + <property name="homogeneous">True</property>
483 + </packing>
484 </child>
485
486 <child>
487 - <widget class="button" id="button3">
488 + <widget class="GtkToolButton" id="button3">
489 <property name="visible">True</property>
490 <property name="tooltip" translatable="yes">Save a config file</property>
491 <property name="label" translatable="yes">Save</property>
492 <property name="use_underline">True</property>
493 - <property name="stock_pixmap">gtk-save</property>
494 - <signal name="pressed" handler="on_save_pressed"/>
495 + <property name="stock_id">gtk-save</property>
496 + <property name="visible_horizontal">True</property>
497 + <property name="visible_vertical">True</property>
498 + <property name="is_important">False</property>
499 + <signal name="clicked" handler="on_save_clicked"/>
500 </widget>
501 + <packing>
502 + <property name="expand">False</property>
503 + <property name="homogeneous">True</property>
504 + </packing>
505 </child>
506
507 <child>
508 - <widget class="GtkVSeparator" id="vseparator2">
509 + <widget class="GtkToolItem" id="toolitem2">
510 <property name="visible">True</property>
511 + <property name="visible_horizontal">True</property>
512 + <property name="visible_vertical">True</property>
513 + <property name="is_important">False</property>
514 +
515 + <child>
516 + <widget class="GtkVSeparator" id="vseparator2">
517 + <property name="visible">True</property>
518 + </widget>
519 + </child>
520 </widget>
521 + <packing>
522 + <property name="expand">False</property>
523 + <property name="homogeneous">False</property>
524 + </packing>
525 </child>
526
527 <child>
528 - <widget class="button" id="button4">
529 + <widget class="GtkToolButton" id="button4">
530 <property name="visible">True</property>
531 <property name="tooltip" translatable="yes">Single view</property>
532 <property name="label" translatable="yes">Single</property>
533 <property name="use_underline">True</property>
534 - <property name="stock_pixmap">gtk-missing-image</property>
535 + <property name="stock_id">gtk-missing-image</property>
536 + <property name="visible_horizontal">True</property>
537 + <property name="visible_vertical">True</property>
538 + <property name="is_important">False</property>
539 <signal name="clicked" handler="on_single_clicked" last_modification_time="Sun, 12 Jan 2003 14:28:39 GMT"/>
540 </widget>
541 + <packing>
542 + <property name="expand">False</property>
543 + <property name="homogeneous">True</property>
544 + </packing>
545 </child>
546
547 <child>
548 - <widget class="button" id="button5">
549 + <widget class="GtkToolButton" id="button5">
550 <property name="visible">True</property>
551 <property name="tooltip" translatable="yes">Split view</property>
552 <property name="label" translatable="yes">Split</property>
553 <property name="use_underline">True</property>
554 - <property name="stock_pixmap">gtk-missing-image</property>
555 + <property name="stock_id">gtk-missing-image</property>
556 + <property name="visible_horizontal">True</property>
557 + <property name="visible_vertical">True</property>
558 + <property name="is_important">False</property>
559 <signal name="clicked" handler="on_split_clicked" last_modification_time="Sun, 12 Jan 2003 14:28:45 GMT"/>
560 </widget>
561 + <packing>
562 + <property name="expand">False</property>
563 + <property name="homogeneous">True</property>
564 + </packing>
565 </child>
566
567 <child>
568 - <widget class="button" id="button6">
569 + <widget class="GtkToolButton" id="button6">
570 <property name="visible">True</property>
571 <property name="tooltip" translatable="yes">Full view</property>
572 <property name="label" translatable="yes">Full</property>
573 <property name="use_underline">True</property>
574 - <property name="stock_pixmap">gtk-missing-image</property>
575 + <property name="stock_id">gtk-missing-image</property>
576 + <property name="visible_horizontal">True</property>
577 + <property name="visible_vertical">True</property>
578 + <property name="is_important">False</property>
579 <signal name="clicked" handler="on_full_clicked" last_modification_time="Sun, 12 Jan 2003 14:28:50 GMT"/>
580 </widget>
581 + <packing>
582 + <property name="expand">False</property>
583 + <property name="homogeneous">True</property>
584 + </packing>
585 </child>
586
587 <child>
588 - <widget class="GtkVSeparator" id="vseparator3">
589 + <widget class="GtkToolItem" id="toolitem3">
590 <property name="visible">True</property>
591 + <property name="visible_horizontal">True</property>
592 + <property name="visible_vertical">True</property>
593 + <property name="is_important">False</property>
594 +
595 + <child>
596 + <widget class="GtkVSeparator" id="vseparator3">
597 + <property name="visible">True</property>
598 + </widget>
599 + </child>
600 </widget>
601 + <packing>
602 + <property name="expand">False</property>
603 + <property name="homogeneous">False</property>
604 + </packing>
605 </child>
606
607 <child>
608 - <widget class="button" id="button7">
609 + <widget class="GtkToolButton" id="button7">
610 <property name="visible">True</property>
611 <property name="tooltip" translatable="yes">Collapse the whole tree in the right frame</property>
612 <property name="label" translatable="yes">Collapse</property>
613 <property name="use_underline">True</property>
614 - <signal name="pressed" handler="on_collapse_pressed"/>
615 + <property name="stock_id">gtk-remove</property>
616 + <property name="visible_horizontal">True</property>
617 + <property name="visible_vertical">True</property>
618 + <property name="is_important">False</property>
619 + <signal name="clicked" handler="on_collapse_clicked"/>
620 </widget>
621 + <packing>
622 + <property name="expand">False</property>
623 + <property name="homogeneous">True</property>
624 + </packing>
625 </child>
626
627 <child>
628 - <widget class="button" id="button8">
629 + <widget class="GtkToolButton" id="button8">
630 <property name="visible">True</property>
631 <property name="tooltip" translatable="yes">Expand the whole tree in the right frame</property>
632 <property name="label" translatable="yes">Expand</property>
633 <property name="use_underline">True</property>
634 - <signal name="pressed" handler="on_expand_pressed"/>
635 + <property name="stock_id">gtk-add</property>
636 + <property name="visible_horizontal">True</property>
637 + <property name="visible_vertical">True</property>
638 + <property name="is_important">False</property>
639 + <signal name="clicked" handler="on_expand_clicked"/>
640 </widget>
641 + <packing>
642 + <property name="expand">False</property>
643 + <property name="homogeneous">True</property>
644 + </packing>
645 </child>
646 </widget>
647 </child>
648 @@ -505,6 +608,8 @@
649 <property name="visible">True</property>
650 <property name="can_focus">True</property>
651 <property name="editable">False</property>
652 + <property name="overwrite">False</property>
653 + <property name="accepts_tab">True</property>
654 <property name="justification">GTK_JUSTIFY_LEFT</property>
655 <property name="wrap_mode">GTK_WRAP_WORD</property>
656 <property name="cursor_visible">True</property>

  ViewVC Help
Powered by ViewVC 1.1.20