GtkTreeView* ifaces_list_create (GstTool *tool) { GtkWidget *table = gst_dialog_get_widget (tool->main_dialog, "interfaces_list"); GstTablePopup *table_popup; GtkTreeSelection *selection; GtkTreeModel *model; model = GST_NETWORK_TOOL (tool)->interfaces_model; gtk_tree_view_set_model (GTK_TREE_VIEW (table), model); gtk_tree_sortable_set_default_sort_func (GTK_TREE_SORTABLE (GTK_LIST_STORE (model)), ifaces_list_sort, NULL, NULL); gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (GTK_LIST_STORE (model)), GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID, GTK_SORT_DESCENDING); add_list_columns (GTK_TREE_VIEW (table), model); selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (table)); g_signal_connect (G_OBJECT (selection), "changed", G_CALLBACK (on_table_selection_changed), NULL); table_popup = g_new0 (GstTablePopup, 1); table_popup->properties = on_iface_properties_clicked; table_popup->popup = popup_menu_create (table); g_signal_connect (G_OBJECT (table), "button-press-event", G_CALLBACK (on_table_button_press), (gpointer) table_popup); g_signal_connect (G_OBJECT (table), "popup_menu", G_CALLBACK (on_table_popup_menu), (gpointer) table_popup); return GTK_TREE_VIEW (table); }
GtkTreeView* host_aliases_list_create (GstTool *tool) { GtkWidget *list; GstTablePopup *table_popup; GtkTreeModel *model; list = gst_dialog_get_widget (tool->main_dialog, "host_aliases_list"); model = host_aliases_model_create (); gtk_tree_view_set_model (GTK_TREE_VIEW (list), model); g_object_unref (model); add_list_columns (GTK_TREE_VIEW (list)); table_popup = g_new0 (GstTablePopup, 1); table_popup->setup = NULL; table_popup->properties = on_host_aliases_properties_clicked; table_popup->popup = popup_menu_create (list); g_signal_connect (G_OBJECT (list), "button-press-event", G_CALLBACK (on_table_button_press), (gpointer) table_popup); g_signal_connect (G_OBJECT (list), "popup_menu", G_CALLBACK (on_table_popup_menu), (gpointer) table_popup); return GTK_TREE_VIEW (list); }
static void search_list_tree_view_init(void) { GtkTreeView *tv; tv = GTK_TREE_VIEW(gui_main_window_lookup("tree_view_search")); tree_view_search = tv; gtk_tree_view_set_reorderable(tv, TRUE); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(tv), GTK_SELECTION_MULTIPLE); gtk_tree_view_set_model(tv, create_searches_model()); add_list_columns(tv); widget_add_popup_menu(GTK_WIDGET(tv), search_gui_get_search_list_popup_menu); gui_signal_connect(tv, "button-release-event", on_search_list_button_release_event, NULL); gui_signal_connect(tv, "key-release-event", on_search_list_key_release_event, NULL); gui_signal_connect_after(gtk_tree_view_get_model(tv), "row-deleted", on_search_list_row_deleted, NULL); }