extern void GTKPopMoveRecord( moverecord *pmr ) { GtkCList *pcl = GTK_CLIST( pwGameList ); gamelistrow *pglr = NULL; gtk_clist_freeze( pcl ); while( pcl->rows ) { pglr = gtk_clist_get_row_data( pcl, pcl->rows - 1 ); if( pglr->apmr[ 0 ] != pmr && pglr->apmr[ 1 ] != pmr ) gtk_clist_remove( pcl, pcl->rows - 1); else break; } if( pcl->rows ) { if( pglr->apmr[ 0 ] == pmr ) /* the left column matches; delete the row */ gtk_clist_remove( pcl, pcl->rows - 1 ); else { /* the right column matches; delete that column only */ gtk_clist_set_text( pcl, pcl->rows - 1, 2, NULL ); pglr->apmr[ 1 ] = NULL; } } gtk_clist_thaw( pcl ); }
void widget_table_removeselected(variable *var) { gchar *string; gchar *value; gint column = 0; gint count; gint row; gint selectionmode = GTK_SELECTION_SINGLE; #ifdef DEBUG_TRANSITS fprintf(stderr, "%s(): Entering.\n", __func__); #endif #if !GTK_CHECK_VERSION(3,0,0) /* gtk3: Deprecated in gtk2 and now gone */ if (var->widget_tag_attr) { /* Get current selection-mode (there's no function to do this) */ if ((value = get_tag_attribute(var->widget_tag_attr, "selection-mode"))) selectionmode = atoi(value); /* Get exported-column */ if ((value = get_tag_attribute(var->widget_tag_attr, "exported-column"))) column = atoi(value); } #ifdef DEBUG_CONTENT fprintf(stderr, "%s(): widget=%p selectionmode=%i column=%i\n", __func__, var->Widget, selectionmode, column); #endif if (selectionmode == GTK_SELECTION_NONE) { /* Nothing to do */ } else if (selectionmode == GTK_SELECTION_MULTIPLE) { /* I'm assuming that selection is updated on row removal so * it's likely not a good idea to iterate in a for loop */ count = g_list_length(GTK_CLIST(var->Widget)->selection); while (count) { row = (gint)g_list_nth_data(GTK_CLIST(var->Widget)->selection, 0); gtk_clist_remove(GTK_CLIST(var->Widget), row); count = g_list_length(GTK_CLIST(var->Widget)->selection); } } else { /* Default GTK_SELECTION_SINGLE and GTK_SELECTION_BROWSE. * * There does not appear to be a way to get the selected item(s) * outside of the select-row signal callback but I found this * recommended technique from here: * https://mail.gnome.org/archives/gtk-app-devel-list/1999-April/msg00033.html */ if (g_list_length(GTK_CLIST(var->Widget)->selection)) { row = (gint)g_list_nth_data(GTK_CLIST(var->Widget)->selection, 0); gtk_clist_remove(GTK_CLIST(var->Widget), row); } } #endif #ifdef DEBUG_TRANSITS fprintf(stderr, "%s(): Exiting.\n", __func__); #endif }
static void prefs_summary_column_remove(void) { GtkCList *stock_clist = GTK_CLIST(summary_col.stock_clist); GtkCList *shown_clist = GTK_CLIST(summary_col.shown_clist); gint row; SummaryColumnType type; gchar *name; if (!shown_clist->selection) return; row = GPOINTER_TO_INT(shown_clist->selection->data); type = GPOINTER_TO_INT(gtk_clist_get_row_data(shown_clist, row)); gtk_clist_remove(shown_clist, row); if (shown_clist->rows == row) gtk_clist_select_row(shown_clist, row - 1, -1); if (!stock_clist->selection) row = 0; else row = GPOINTER_TO_INT(stock_clist->selection->data) + 1; name = gettext(col_name[type]); row = gtk_clist_insert(stock_clist, row, (gchar **)&name); gtk_clist_set_row_data(stock_clist, row, GINT_TO_POINTER(type)); gtk_clist_select_row(stock_clist, row, -1); }
gint gw_categories_edit_box_remove_category ( GtkWindow *w) { GWCatalogPlugin *plugin = NULL; GWDBContext *context = gw_am_get_current_catalog_context ( ); GWDBCategory *category = NULL; GtkCList *list = NULL; /* Remove category isn't implemented yet. */ gint result = -1; #ifdef GW_DEBUG_GUI_COMPONENT g_print ( "*** GW - %s (%d) :: %s()\n", __FILE__, __LINE__, __PRETTY_FUNCTION__); #endif if ( w != NULL ) { if ( (category = gw_categories_edit_box_get_category ( w)) != NULL ) { if ( (list = gtk_object_get_data ( GTK_OBJECT ( w), GW_REF_CATEGORIES_EDIT_BOX_CATEGORIES_LIST)) != NULL ) { if ( list->selection != NULL ) { if ( context != NULL) { plugin = (GWCatalogPlugin*)gw_db_context_get_plugin ( context); gtk_clist_remove ( list, (gint)(list->selection->data)); plugin->gw_db_catalog_remove_db_category ( context, gw_db_category_get_ref ( category)); result = 0; } } } } } return result; }
static void prefs_display_items_add(GtkWidget *widget, gpointer data) { PrefsDisplayItemsDialog *dialog = data; GtkCList *stock_clist = GTK_CLIST(dialog->stock_clist); GtkCList *shown_clist = GTK_CLIST(dialog->shown_clist); PrefsDisplayItem *item; gint row; gchar *name; if (!stock_clist->selection) return; row = GPOINTER_TO_INT(stock_clist->selection->data); item = (PrefsDisplayItem *)gtk_clist_get_row_data(stock_clist, row); if (!item->allow_multiple) { gtk_clist_remove(stock_clist, row); if (stock_clist->rows == row) gtk_clist_select_row(stock_clist, row - 1, -1); } if (!shown_clist->selection) row = 0; else row = GPOINTER_TO_INT(shown_clist->selection->data); item->in_use = TRUE; name = gettext(item->label); row = gtk_clist_insert(shown_clist, row, (gchar **)&name); gtk_clist_set_row_data(shown_clist, row, item); prefs_display_items_set_sensitive(dialog); }
static void notify_cb (const char *name, XSettingsAction action, XSettingsSetting *setting, void *data) { int row; char *text[4]; switch (action) { case XSETTINGS_ACTION_NEW: text[NAME] = (char *)name; text[TYPE] = text[VALUE] = text[SERIAL] = ""; row = gtk_clist_insert (GTK_CLIST (settings_clist), 0, text); gtk_clist_set_row_data_full (GTK_CLIST (settings_clist), row, g_strdup (name), (GDestroyNotify)g_free); update_row (row, setting); break; case XSETTINGS_ACTION_CHANGED: row = find_row (name); update_row (row, setting); break; case XSETTINGS_ACTION_DELETED: row = find_row (name); gtk_clist_remove (GTK_CLIST (settings_clist), row); break; } }
/** * Removes all references to the given node handle in the gui. */ void nodes_gui_remove_node(const struct nid *node_id) { GtkWidget *clist_nodes; gint row; clist_nodes = gui_main_window_lookup("clist_nodes"); /* * Make sure node is remove from the "changed" hash table so * we don't try an update. */ g_assert(NULL != hs_node_info_changed); g_assert(NULL != hs_node_flags_changed); remove_item(hs_node_info_changed, node_id); remove_item(hs_node_flags_changed, node_id); row = gtk_clist_find_row_from_data(GTK_CLIST(clist_nodes), deconstify_gpointer(node_id)); if (row != -1) { gtk_clist_remove(GTK_CLIST(clist_nodes), row); nid_unref(node_id); } else { g_warning("%s(): no matching row found", G_STRFUNC); } }
static void __verboser(const char *stuff, int opos, int replacelast, int complete) { char *s2[2]; struct timeval tv; int ms; s2[0] = (char *)stuff; s2[1] = NULL; gtk_clist_freeze(GTK_CLIST(verb)); if (replacelast) gtk_clist_remove(GTK_CLIST(verb), GTK_CLIST(verb)->rows - 1); gtk_clist_append(GTK_CLIST(verb), s2); if (!ast_tvzero(last)) { gdk_threads_leave(); gettimeofday(&tv, NULL); if (cleanupid > -1) gtk_timeout_remove(cleanupid); ms = ast_tvdiff_ms(tv, last); if (ms < 100) { /* We just got a message within 100ms, so just schedule an update in the near future */ cleanupid = gtk_timeout_add(200, cleanup, NULL); } else { cleanup(&cleanupid); } last = tv; } else { gettimeofday(&last, NULL); } }
static void imp_ldif_update_row( GtkCList *clist ) { Ldif_FieldRec *rec; gchar *text[ FIELDS_N_COLS ]; gint row; if( impldif_dlg.rowIndSelect < 0 ) return; row = impldif_dlg.rowIndSelect; rec = gtk_clist_get_row_data( clist, row ); text[ FIELD_COL_SELECT ] = ""; text[ FIELD_COL_FIELD ] = rec->tagName; text[ FIELD_COL_ATTRIB ] = rec->userName; gtk_clist_freeze( clist ); gtk_clist_remove( clist, row ); if( row == impldif_dlg.rowCount - 1 ) { gtk_clist_append( clist, text ); } else { gtk_clist_insert( clist, row, text ); } if( rec->selected ) gtk_clist_set_pixmap( clist, row, FIELD_COL_SELECT, markxpm, markxpmmask ); gtk_clist_set_row_data( clist, row, rec ); gtk_clist_thaw( clist ); }
void on_bt_dbdelete_clicked (GtkButton *button, gpointer user_data) { GtkWidget *widget; if(selectedrow < 0) return; widget=lookup_widget( dialog_dbedit, "clist_satdb" ); gtk_clist_remove(GTK_CLIST(widget), selectedrow); widget = lookup_widget( dialog_dbedit, "tx_dbsat" ); gtk_entry_set_text(GTK_ENTRY(widget), ""); widget = lookup_widget( dialog_dbedit, "tx_dbmode" ); gtk_entry_set_text(GTK_ENTRY(widget), ""); widget = lookup_widget( dialog_dbedit, "tx_dbuplink" ); gtk_entry_set_text(GTK_ENTRY(widget), ""); widget = lookup_widget( dialog_dbedit, "tx_dbdownlink" ); gtk_entry_set_text(GTK_ENTRY(widget), ""); widget = lookup_widget( dialog_dbedit, "tx_dbbeacon" ); gtk_entry_set_text(GTK_ENTRY(widget), ""); save_sat_db(); }
void gui_delete_station(GtkButton *button, gpointer *userdata) { close_station_editor(); if (gui_station_selected >= 0 && gui_station_selected < gui_station_count) { gtk_clist_remove(GTK_CLIST(gui_station_list), gui_station_selected); gui_station_selected = -1; gui_station_count--; } }
static void cb_delete(GtkWidget *widget) { reset_entries(); if (selected_row >= 0) { gtk_clist_remove(GTK_CLIST(reader_clist), selected_row); list_modified = TRUE; selected_row = -1; } }
static void editlist_gui_delete (GtkWidget * igad) { int row; row = gtkutil_clist_selection (editlist_gui_list); if (row != -1) { gtk_clist_unselect_all (GTK_CLIST (editlist_gui_list)); gtk_clist_remove (GTK_CLIST (editlist_gui_list), row); } }
void remove_minilist_item(GtkWidget * button, gpointer data) { struct fnlist *current, *to_free; struct slist_gui *the_gui = (struct slist_gui *) data; if (!the_gui) { NE_DEBUG(DEBUG_GNOME, "Warning! gui thingy was null.\n"); return; } if (the_gui->chosen_row < 0) return; current = gtk_clist_get_row_data(GTK_CLIST(the_gui->list), the_gui->chosen_row); gtk_clist_remove(GTK_CLIST(the_gui->list), the_gui->chosen_row); to_free = current; if (current->prev) { current->prev->next = current->next; if (current->next) { current->next->prev = current->next->prev->prev; } } else { /* ick */ /* Small memory leak alert */ switch (the_gui->type) { case list_exclude: selected_site->excludes = the_gui->data->next; the_gui->data = selected_site->excludes; NE_DEBUG(DEBUG_GNOME, "Removing an item from the excludes list.\n"); break; case list_ascii: selected_site->asciis = the_gui->data->next; the_gui->data = selected_site->asciis; NE_DEBUG(DEBUG_GNOME, "Removing an item from the ASCIIs list.\n"); break; case list_ignore: selected_site->ignores = the_gui->data->next; the_gui->data = selected_site->ignores; NE_DEBUG(DEBUG_GNOME, "Removing an item from the ignores list.\n"); break; default: ; } if (the_gui->data) the_gui->data->prev = NULL; } the_gui->chosen_row = -1; gtk_entry_set_text(GTK_ENTRY(the_gui->entry), ""); free(to_free); }
static void prefs_display_header_delete_cb(GtkButton *btn, gpointer clist_data) { GtkCList *clist = GTK_CLIST(clist_data); DisplayHeaderProp *dp; gint row; if (!clist->selection) return; row = GPOINTER_TO_INT(clist->selection->data); dp = gtk_clist_get_row_data(clist, row); display_header_prop_free(dp); gtk_clist_remove(clist, row); prefs_common.disphdr_list = g_slist_remove(prefs_common.disphdr_list, dp); }
void remove_breakpoint_by_row( int row ) { int i=0; uint32 address; address = (uint32) gtk_clist_get_row_data( GTK_CLIST(clBreakpoints), row); while(bp_addresses[i]!=address) { i++; } nb_breakpoints--; bp_addresses[i]=bp_addresses[nb_breakpoints]; gtk_clist_remove( GTK_CLIST(clBreakpoints), row); }
void gradient_select_delete_all (gradient_t *gradient) { GradientSelect *gsp; GSList *list; gint row; for (list = gradient_active_dialogs; list; list = g_slist_next (list)) { gsp = (GradientSelect *) list->data; row = gtk_clist_find_row_from_data (GTK_CLIST (gsp->clist), gradient); if (row > -1) gtk_clist_remove (GTK_CLIST (gsp->clist), row); } }
void del_back_end_server(advertised_service *a, back_end_server *be){ GList *l; gint i; extern GtkWidget *back_end_server_clist; _del_back_end_server(be); for(i=0,l=a->back_end_servers;l;l=l->next,i++){ if(l->data==be){ gtk_clist_select_row(GTK_CLIST(back_end_server_clist), i + 1, 0); gtk_clist_remove(GTK_CLIST(back_end_server_clist), i); break; } } a->back_end_servers = g_list_remove(a->back_end_servers, be); }
void del_ipvs_server(advertised_service *a, ipvs_server *ipvs){ GList *l; gint i; extern GtkWidget *ipvs_server_clist; _del_ipvs_server(ipvs); for(i=0,l=a->ipvs_servers;l;l=l->next,i++){ if(l->data==ipvs){ gtk_clist_select_row(GTK_CLIST(ipvs_server_clist), i + 1, 0); gtk_clist_remove(GTK_CLIST(ipvs_server_clist), i); break; } } a->ipvs_servers = g_list_remove(a->ipvs_servers, ipvs); }
/* *Add a packet to the packet list */ void packet_list_add(char *type, char *from, char *length) { gchar *nfo[3] = { type, from, length }; //if(!freeze_packets) //{ if (packet_list_size >= MAXPACKS) gtk_clist_remove(GTK_CLIST(packet_list), MAXPACKS - 1); else packet_list_size++; gtk_clist_prepend(GTK_CLIST(packet_list), nfo); //} }
void filter(GtkWidget *file_list) { gchar *text; gchar *type; gint i; gtk_clist_freeze (GTK_CLIST (file_list)); for ( i = 0; gtk_clist_get_text (GTK_CLIST (file_list), i, 0, &text) ; i++) { type = strstr (text, ".pml"); if (!type) { gtk_clist_remove (GTK_CLIST(file_list), i); i = -1; } } gtk_clist_thaw (GTK_CLIST (file_list)); }
/* *Remove a node from the list */ int remove_nodes_list(union olsr_ip_addr *node) { char *ip; char *in_ip = ip_to_string(node); int i; for (i = 0; i < node_list_size; i++) { gtk_clist_get_text(GTK_CLIST(node_list), i, 0, (gchar **) & ip); if (strcmp(in_ip, ip) == 0) { //printf("Found entry!\n"); gtk_clist_remove(GTK_CLIST(node_list), i); node_list_size--; return 1; } } return 0; }
void DownloadUI::RemoveItem(DownloadItem *dli) { if (!dli || !m_List || !isVisible) return; int row = gtk_clist_find_row_from_data(GTK_CLIST(m_List), (gpointer)dli); if (row < 0) return; gtk_clist_remove(GTK_CLIST(m_List), row); vector<DownloadItem *>::iterator i = downloadList.begin(); for (; i != downloadList.end(); i++) { if ((*i) == dli) break; } if (i != downloadList.end()) downloadList.erase(i); }
void del_advertised_service(advertised_service *a){ GList *l; gint i; extern GList *service; extern GtkWidget *advertised_service_clist; /* Delete back end servers */ for(l=a->back_end_servers;l;l=l->next){ _del_back_end_server((back_end_server *)l->data); } if(a->back_end_servers){ g_list_free(a->back_end_servers); } /* Delete IPVS servers */ for(l=a->ipvs_servers;l;l=l->next){ _del_ipvs_server((ipvs_server *)l->data); } if(a->ipvs_servers){ g_list_free(a->ipvs_servers); } /* Delete the rest of the advertised service */ if(a->address){ g_free(a->address); } if(a->port){ g_free(a->port); } g_free(a); for(l=service,i=0;l;l=l->next,i++){ if(l->data==a){ gtk_clist_select_row(GTK_CLIST(advertised_service_clist), i + 1, 0); gtk_clist_remove(GTK_CLIST(advertised_service_clist), i); break; } } service = g_list_remove(service, a); }
/* *Delete a node from the node list */ int route_list_del(char *dest) { int i = 0; char *ip; gtk_clist_freeze(GTK_CLIST(route_list)); for (i = 0; i < route_list_size; i++) { gtk_clist_get_text(GTK_CLIST(route_list), i, 0, (gchar **) & ip); if (strcmp(dest, ip) == 0) { //printf("Found %d\n", i); gtk_clist_remove(GTK_CLIST(route_list), i); route_list_size--; gtk_clist_thaw(GTK_CLIST(route_list)); return 1; } } gtk_clist_thaw(GTK_CLIST(route_list)); return 0; }
static void file_list_cb(GtkWidget *widget, gint row, gint column, GdkEventButton *event, gpointer data) { gint retval; gchar *fname; if(event && (event->button == 3)) { if(event->type == GDK_2BUTTON_PRESS) { gtk_clist_remove(GTK_CLIST(clist), row); } else { return; } } retval = gtk_clist_get_text(GTK_CLIST(widget), row, 0, &fname); if(retval) { gtk_pipe_int_write(GTK_PLAY_FILE); gtk_pipe_string_write(fname); file_number_to_play=row; } }
static void key_dialog_delete (GtkWidget * button, GtkCList * list) { struct key_binding *kb, *cur, *last; int row = gtkutil_clist_selection ((GtkWidget *) list); if (row != -1) { kb = gtk_clist_get_row_data (list, row); cur = keys_root; last = NULL; while (cur) { if (cur == kb) { if (last) last->next = kb->next; else keys_root = kb->next; if (kb->data1) free (kb->data1); if (kb->data2) free (kb->data2); free (kb); gtk_clist_remove (list, row); return; } last = cur; cur = cur->next; } printf ("*** key_dialog_delete: couldn't find kb in list!\n"); /*if (getenv ("XCHAT_DEBUG")) abort ();*/ } }
static void delete_pattern_callback (GtkWidget *widget, gpointer data) { GSList *link; struct player_pattern *pp; int row; debug(5,"delete_pattern_callback(widget=%x,data=%x)",widget,data); if (current_row < 0) return; link = g_slist_nth (curplrs, current_row); pp = (struct player_pattern *) link->data; curplrs = g_slist_remove_link (curplrs, link); if (pp->dirty) free_player_pattern (pp); row = current_row; current_row = -1; gtk_clist_remove (GTK_CLIST (pattern_clist), row); if (current_row < 0) pattern_clist_sync_selection (); }
static void prefs_display_items_remove(GtkWidget *widget, gpointer data) { PrefsDisplayItemsDialog *dialog = data; GtkCList *shown_clist = GTK_CLIST(dialog->shown_clist); PrefsDisplayItem *item; gint row; if (!shown_clist->selection) return; row = GPOINTER_TO_INT(shown_clist->selection->data); item = (PrefsDisplayItem *)gtk_clist_get_row_data(shown_clist, row); if (!item) return; gtk_clist_remove(shown_clist, row); if (shown_clist->rows == row) gtk_clist_select_row(shown_clist, row - 1, -1); if (!item->allow_multiple) { item->in_use = FALSE; prefs_display_items_update_available(dialog); } prefs_display_items_set_sensitive(dialog); }
gint gw_plugin_settings_quick_search_btn_hide_click ( GtkButton *btn, GtkWidget *pane) { gint result = -1; GtkCList *list_visible = NULL; GtkCList *list_hidden = NULL; gchar *text = NULL; GtkWindow *settings = NULL; gint row = -1; GWSettingsExplorerField **fields = NULL; GWSettingsExplorerField *field = NULL; #ifdef GW_DEBUG_PLUGIN_SETTINGS_COMPONENT g_print ( "*** GW - %s (%d) :: %s()\n", __FILE__, __LINE__, __PRETTY_FUNCTION__); #endif if ( pane != NULL) { list_visible = GTK_CLIST ( gtk_object_get_data ( GTK_OBJECT ( pane), GW_PLUGIN_SETTINGS_QUICK_SEARCH_LIST_VISIBLE)); list_hidden = GTK_CLIST ( gtk_object_get_data ( GTK_OBJECT ( pane), GW_PLUGIN_SETTINGS_QUICK_SEARCH_LIST_HIDDEN)); fields = (GWSettingsExplorerField**)gtk_object_get_data ( GTK_OBJECT ( pane), GW_PLUGIN_SETTINGS_QUICK_SEARCH_FIELDS_TABLE); if ( (list_visible != NULL) && (list_hidden != NULL) ) { if ( list_visible->selection != NULL ) { row = GPOINTER_TO_INT ( ((GList*)(list_visible->selection))->data); if ( row >= 0 ) { gtk_clist_freeze ( list_visible); gtk_clist_freeze ( list_hidden); /* Move the column to the hidden list. */ gtk_clist_get_text ( list_visible, row, 0, &text); gtk_clist_append ( list_hidden, &text); field = gw_settings_explorer_field_find_by_name ( fields, text); if ( field != NULL ) { #ifdef GW_DEBUG_PLUGIN_SETTINGS_COMPONENT g_print ( "*** GW - %s (%d) :: %s() : %s is hidden now\n", __FILE__, __LINE__, __PRETTY_FUNCTION__, field->name); #endif field->visible = FALSE; } gtk_clist_remove ( list_visible, row); gtk_clist_thaw ( list_visible); gtk_clist_thaw ( list_hidden); if ( (settings = GTK_WINDOW ( gtk_object_get_data ( GTK_OBJECT ( pane), GW_PLUGIN_SETTINGS_WINDOW))) != NULL ) { gw_settings_window_box_set_modified ( settings, TRUE); result = 0; } } } } } return result; }