static void hview_init(void) { HviewWidgetsT widgets; GtkTreeModel *domains; gchar err[1024]; gint i; for (i = 0; i < HVIEW_MAX_TAB_WINDOWS; i++) { widgets.tab_views[i].resource_view = NULL; widgets.tab_views[i].detail_view = NULL; widgets.tab_views[i].event_subscribed = 0; widgets.tab_views[i].sessionid = 0; } widgets.main_window = hview_get_main_window(&widgets); hview_print(&widgets, HVIEW_NAME_VERSION); domains = voh_list_domains(err); if (domains == NULL) { hview_print(&widgets, err); } else { gtk_tree_view_set_model(GTK_TREE_VIEW(widgets.domain_view), domains); g_object_unref(domains); } hview_statusbar_push(&widgets, "welcome"); gtk_widget_show_all(widgets.main_window); gtk_widget_hide(widgets.message_window); gtk_widget_hide(widgets.event_window); gtk_widget_hide(widgets.log_hbox); }
static int hview_init(void) { GtkWidget *menubar; GtkWidget *toolbar; GtkWidget *statusbar; GtkWidget *vpaned; GtkWidget *hpaned; GtkWidget *main_vbox; // Create main window --------------------------------------------------------- main_window = gtk_window_new(GTK_WINDOW_TOPLEVEL); g_signal_connect(G_OBJECT(main_window), "destroy", G_CALLBACK(gtk_main_quit), NULL); gtk_window_set_title(GTK_WINDOW(main_window), HVIEW_TITLE); gtk_widget_set_size_request(GTK_WIDGET(main_window), HVIEW_MAIN_WINDOW_WIDTH, HVIEW_MAIN_WINDOW_HEIGHT); //----------------------------------------------------------------------------- main_vbox = gtk_vbox_new(FALSE, 1); gtk_container_set_border_width(GTK_CONTAINER(main_vbox), 1); gtk_container_add(GTK_CONTAINER(main_window), main_vbox); menubar = hview_get_menubar(); gtk_box_pack_start(GTK_BOX(main_vbox), menubar, FALSE, FALSE, 0); vpaned = gtk_vpaned_new(); hpaned = gtk_hpaned_new(); // Create scrolled "tree window" and add it to horizontal paned window -------- tree_window = hview_get_tree_window(); gtk_paned_add1(GTK_PANED(hpaned), tree_window); //----------------------------------------------------------------------------- // Create scrolled "detail window" and add it to hpaned window ---------------- detail_window = hview_get_detail_window(); gtk_paned_add2(GTK_PANED(hpaned), detail_window); //----------------------------------------------------------------------------- // Create scrolled "log window" and add it with hpaned window to vertical paned log_window = hview_get_log_window(); gtk_text_view_set_editable(GTK_TEXT_VIEW(log_view), FALSE); gtk_text_view_set_cursor_visible(GTK_TEXT_VIEW(log_view), FALSE); hview_print(HVIEW_NAME_VERSION); gtk_paned_add1(GTK_PANED(vpaned), hpaned); gtk_paned_add2(GTK_PANED(vpaned), log_window); //----------------------------------------------------------------------------- gtk_box_pack_start(GTK_BOX(main_vbox), vpaned, TRUE, TRUE, 0); gtk_widget_show_all(main_window); return 0; }
static void hview_tree_column_activated_call(GtkTreeViewColumn *column) { gchar *name = NULL; int state; GtkTreeSelection *selection; GtkTreeModel *store; GtkTreeModel *newstore; GtkTreeIter iter; state = hview_which_tree_store(column); if (state == HVIEW_TREE_STORE_IS_UNKNOWN) return; selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(tree_view)); if (gtk_tree_selection_get_selected(selection, &store, &iter)) { gtk_tree_model_get (store, &iter, 0, &name, -1); } else { if (state == HVIEW_TREE_STORE_IS_DOMAINS) { hview_print("please select domain"); return; /* domain should be selected */ } } if (state == HVIEW_TREE_STORE_IS_DOMAINS) { gtk_tree_view_column_set_title(column, HVIEW_RESOURCE_COLUMN_TITLE); gtk_window_set_title(GTK_WINDOW(main_window), name); newstore = voh_list_resources(); gtk_tree_view_set_model(GTK_TREE_VIEW(tree_view), GTK_TREE_MODEL(newstore)); } else { gtk_tree_view_column_set_title(column, HVIEW_DOMAIN_COLUMN_TITLE); gtk_window_set_title(GTK_WINDOW(main_window), HVIEW_TITLE); newstore = voh_list_domains(); gtk_tree_view_set_model(GTK_TREE_VIEW(tree_view), GTK_TREE_MODEL(newstore)); } g_object_unref(newstore); if (name) g_free(name); }
static void hview_unload_plugin_call(void) { hview_print("\"Unload plugin\" is not supported yet"); }