static void prefs_display_header_list_view_set_row(gboolean hidden) { GtkTreeView *list_view; DisplayHeaderProp *dp; gchar *entry_text; GtkTreeModel *model; #if !GTK_CHECK_VERSION(2, 24, 0) entry_text = gtk_combo_box_get_active_text(GTK_COMBO_BOX(dispheader.hdr_combo)); #else entry_text = gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(dispheader.hdr_combo)); #endif if (!entry_text) entry_text = gtk_editable_get_chars( GTK_EDITABLE(gtk_bin_get_child(GTK_BIN(dispheader.hdr_combo))),0,-1); if (!entry_text || entry_text[0] == '\0') { alertpanel_error(_("Header name is not set.")); return; } if (hidden) list_view = GTK_TREE_VIEW(dispheader.hidden_headers_list_view); else list_view = GTK_TREE_VIEW(dispheader.headers_list_view); if (prefs_display_header_find_header(list_view, entry_text) != -1) { alertpanel_error(_("This header is already in the list.")); return; } dp = g_new0(DisplayHeaderProp, 1); dp->name = g_strdup(entry_text); dp->hidden = hidden; model = gtk_tree_view_get_model(list_view); prefs_display_header_insert_header(GTK_LIST_STORE(model), dp->name, dp); prefs_display_header_set_list(); g_free(entry_text); }
static gint prefs_display_header_clist_set_row(gboolean hidden) { GtkCList *clist; DisplayHeaderProp *dp; const gchar *entry_text; gchar *dp_str[1]; gint row; entry_text = gtk_entry_get_text(GTK_ENTRY(dispheader.hdr_entry)); if (entry_text[0] == '\0') { alertpanel_error(_("Header name is not set.")); return -1; } if (hidden) clist = GTK_CLIST(dispheader.hidden_headers_clist); else clist = GTK_CLIST(dispheader.headers_clist); if (prefs_display_header_find_header(clist, entry_text) != -1) { alertpanel_error(_("This header is already in the list.")); return -1; } dp = g_new0(DisplayHeaderProp, 1); dp->name = g_strdup(entry_text); dp->hidden = hidden; dp_str[0] = dp->name; row = gtk_clist_append(clist, dp_str); gtk_clist_set_row_data(clist, row, dp); prefs_display_header_set_list(); return row; }
static void prefs_display_header_row_moved(GtkCList *clist, gint source_row, gint dest_row, gpointer data) { prefs_display_header_set_list(); }