65
67
* |---------------------------------| LOGO |
67
69
* |---------------------------------`------|
69
* | Tree | Document view |
71
* | Tree | Document view |
82
84
* |----------------------------------------|
84
86
* `----------------------------------------'
346
#if ENABLE_PROPERTY_PAGES
349
property_page_selection_change_cb (CongDocument *doc, gpointer user_data)
351
GtkWidget *w = GTK_WIDGET (user_data);
353
#error move these into an inheritance hierarchy below GtkWidget
354
/* Do something sane... */
360
create_property_page_cb (CongService *service,
363
CongServiceNodePropertyPage *custom_property_page = CONG_SERVICE_NODE_PROPERTY_PAGE (service);
364
CongPrimaryWindow *primary_window = (CongPrimaryWindow*)user_data;
365
/* CongDocument *doc = cong_primary_window_get_document (primary_window); */
366
GtkWidget *w = cong_custom_property_page_make (custom_property_page,
367
cong_primary_window_get_document (primary_window));
369
gtk_notebook_append_page (primary_window->property_notebook,
371
gtk_label_new (cong_service_get_name (CONG_SERVICE (custom_property_page)))
374
g_signal_connect (G_OBJECT (doc), "selection_change", G_CALLBACK (property_page_selection_change_cb), w);
375
/* FIXME: disconnect from this signal? */
345
381
add_standard_layout_for_doc (CongPrimaryWindow *primary_window,
346
382
CongDocument *doc)
348
384
GtkWidget *w1 = NULL, *w2 = NULL;
349
385
GtkWidget *sidebar_notebook = NULL;
386
GtkWidget *sidebar_vpane;
351
388
/* --- Main window -> hpane --- */
352
389
w1 = gtk_hpaned_new();
353
390
gnome_app_set_contents(GNOME_APP(primary_window->window),w1);
354
391
gtk_widget_show(w1);
394
sidebar_vpane = gtk_vpaned_new();
395
gtk_widget_show (sidebar_vpane);
396
gtk_paned_add1(GTK_PANED(w1), sidebar_vpane);
356
398
/* --- Notebook to appear in the sidebar: --- */
357
399
sidebar_notebook = gtk_notebook_new();
358
400
gtk_widget_show(sidebar_notebook);
359
401
gtk_notebook_set_tab_pos(GTK_NOTEBOOK(sidebar_notebook), GTK_POS_BOTTOM);
361
gtk_paned_add1(GTK_PANED(w1), sidebar_notebook);
402
gtk_paned_add1(GTK_PANED(sidebar_vpane), sidebar_notebook);
363
404
/* --- Tree view --- */
364
405
LOG_PRIMARY_WINDOW_CREATION1 ("Creating overview");
395
436
gtk_label_new(_("Raw XML"))
439
#if ENABLE_PROPERTY_PAGES
440
/* Property pages for sidebar pane */
442
primary_window->property_notebook = GTK_NOTEBOOK (gtk_notebook_new());
443
gtk_widget_show (GTK_WIDGET (primary_window->property_notebook));
444
gtk_notebook_set_tab_pos (primary_window->property_notebook, GTK_POS_BOTTOM);
445
gtk_paned_add2 (GTK_PANED(sidebar_vpane), GTK_WIDGET (primary_window->property_notebook));
447
cong_plugin_manager_for_each_service_of_type (cong_app_get_plugin_manager (cong_app_singleton ()),
448
CONG_SERVICE_NODE_PROPERTY_PAGE_TYPE,
449
create_property_page_cb,
398
/* Set up the editor_widget v3: */
454
/* Set up the editor_widget v3: */
399
455
#if ENABLE_MAIN_WIDGET
401
457
LOG_PRIMARY_WINDOW_CREATION1 ("Creating v3 widget");
581
639
gtk_window_add_accel_group (GTK_WINDOW (primary_window->window), accel_group);
642
cong_menus_setup_recent_files (primary_window);
584
644
/* --- Toolbar --- */
585
645
primary_window->toolbar = GTK_TOOLBAR (gtk_ui_manager_get_widget (cong_primary_window_get_ui_manager (primary_window), "/MainToolBar"));
586
646
gnome_app_set_toolbar(GNOME_APP(primary_window->window), primary_window->toolbar);
685
745
g_return_if_fail(primary_window);
687
g_message ("cong_primary_window_free");
747
/* g_message ("cong_primary_window_free"); */
689
749
if (primary_window->doc) {
750
g_signal_handlers_disconnect_by_func (G_OBJECT(primary_window->doc),end_edit_cb, primary_window);
690
751
g_object_unref(G_OBJECT(primary_window->doc));