/* * This action is the pressing of the button on the combo box. * The behavior is different depending on whether the list is being * displayed or removed. * * A button press event is simulated on the appropriate widget and * a button release event is simulated in an idle function. */ static gboolean idle_do_action (gpointer data) { GtkCombo *combo; GtkWidget *action_widget; GtkWidget *widget; GailCombo *gail_combo; gboolean do_popup; GdkEvent tmp_event; gail_combo = GAIL_COMBO (data); gail_combo->action_idle_handler = 0; widget = GTK_ACCESSIBLE (gail_combo)->widget; if (widget == NULL /* State is defunct */ || !gtk_widget_get_sensitive (widget) || !gtk_widget_get_visible (widget)) return FALSE; combo = GTK_COMBO (widget); do_popup = !gtk_widget_get_mapped (combo->popwin); tmp_event.button.type = GDK_BUTTON_PRESS; tmp_event.button.window = widget->window; tmp_event.button.button = 1; tmp_event.button.send_event = TRUE; tmp_event.button.time = GDK_CURRENT_TIME; tmp_event.button.axes = NULL; if (do_popup) { /* Pop up list */ action_widget = combo->button; gtk_widget_event (action_widget, &tmp_event); /* FIXME !*/ g_idle_add (_gail_combo_button_release, combo); } else { /* Pop down list */ tmp_event.button.window = combo->list->window; gdk_window_set_user_data (combo->list->window, combo->button); action_widget = combo->popwin; gtk_widget_event (action_widget, &tmp_event); /* FIXME !*/ g_idle_add (_gail_combo_popup_release, combo); } return FALSE; }
static void set_dsn_combos (GtkWidget * check, gpointer widget) { GtkWidget **combos = (GtkWidget **) widget; ServerDSN *dsn = SERVER_DSN (check); if (dsn->dsn_info.dsns) { int inx; for (inx = 0; inx < 9; inx++) gtk_combo_set_popdown_strings (GTK_COMBO (combos[inx]), dsn->dsn_info.dsns); } }
/* * Get text of an Entry or a ComboBox */ static gchar *gtk_entry_get_text_1 (GtkWidget *widget) { if (GTK_IS_COMBO(widget)) { return gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(widget)->entry)); }else if (GTK_IS_ENTRY(widget)) { return gtk_entry_get_text(GTK_ENTRY(widget)); }else { return NULL; } }
void wxComboBox::EnableEvents() { #ifdef __WXGTK24__ if (!gtk_check_version(2,4,0)) { g_signal_connect_after (GTK_BIN(m_widget)->child, "changed", G_CALLBACK (gtkcombobox_text_changed_callback), this); g_signal_connect_after (m_widget, "changed", G_CALLBACK (gtkcombobox_changed_callback), this); } else #endif { g_signal_connect_after (GTK_COMBO(m_widget)->list, "select-child", G_CALLBACK (gtkcombo_combo_select_child_callback), this); g_signal_connect_after (GTK_COMBO(m_widget)->entry, "changed", G_CALLBACK (gtkcombo_text_changed_callback), this ); } }
char gmdb_export_get_quotechar(GladeXML *xml) { GtkWidget *combo; gchar *str; char quotechar; combo = glade_xml_get_widget(xml, "qchar_combo"); str = (gchar *) gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(combo)->entry)); quotechar = str[0]; return quotechar; }
void wxComboBox::SetSelection( int n ) { wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); DisableEvents(); GtkWidget *list = GTK_COMBO(m_widget)->list; gtk_list_unselect_item( GTK_LIST(list), m_prevSelection ); gtk_list_select_item( GTK_LIST(list), n ); m_prevSelection = n; EnableEvents(); }
wxTextPos wxComboBox::GetLastPosition() const { GtkEntry *entry = NULL; #ifdef __WXGTK24__ if (!gtk_check_version(2,4,0)) entry = GTK_ENTRY( GTK_BIN(m_widget)->child ); else #endif entry = GTK_ENTRY( GTK_COMBO(m_widget)->entry ); int pos = entry->text_length; return (long) pos-1; }
int wxComboBox::FindString( const wxString &item, bool bCase ) const { wxCHECK_MSG( m_widget != NULL, wxNOT_FOUND, wxT("invalid combobox") ); #ifdef __WXGTK24__ if (!gtk_check_version(2,4,0)) { GtkComboBox* combobox = GTK_COMBO_BOX( m_widget ); GtkTreeModel* model = gtk_combo_box_get_model( combobox ); GtkTreeIter iter; gtk_tree_model_get_iter_first( model, &iter ); if (!gtk_list_store_iter_is_valid(GTK_LIST_STORE(model), &iter )) return -1; int count = 0; do { GValue value = { 0, }; gtk_tree_model_get_value( model, &iter, 0, &value ); wxString str = wxGTK_CONV_BACK( g_value_get_string( &value ) ); g_value_unset( &value ); if (item.IsSameAs( str, bCase ) ) return count; count++; } while (gtk_tree_model_iter_next( model, &iter )); } else #endif { GtkWidget *list = GTK_COMBO(m_widget)->list; GList *child = GTK_LIST(list)->children; int count = 0; while (child) { GtkBin *bin = GTK_BIN( child->data ); GtkLabel *label = GTK_LABEL( bin->child ); wxString str( wxGTK_CONV_BACK( gtk_label_get_text(label) ) ); if (item.IsSameAs( str , bCase ) ) return count; count++; child = child->next; } } return wxNOT_FOUND; }
int clip_GTK_COMBOSETPOPDOWNSTRINGS(ClipMachine * ClipMachineMemory) { C_widget *ccmb = _fetch_cw_arg(ClipMachineMemory); ClipArrVar *astr = (ClipArrVar *) _clip_vptr(_clip_spar(ClipMachineMemory, 2)); GList *str_list = NULL; ClipStrVar *s; int i; CHECKCWID(ccmb, GTK_IS_COMBO); CHECKOPT(2, ARRAY_type_of_ClipVarType); for (i = 0; i < astr->count_of_ClipArrVar; i++) { if (astr->ClipVar_items_of_ClipArrVar[i].ClipType_t_of_ClipVar.ClipVartype_type_of_ClipType != CHARACTER_type_of_ClipVarType) continue; s = (ClipStrVar *) _clip_vptr(&astr->ClipVar_items_of_ClipArrVar[i]); if (ccmb->objtype == GTK_WIDGET_COMBO_SIMPLE) str_list = g_list_append(str_list, gtk_list_item_new_with_label(s->ClipBuf_str_of_ClipStrVar.buf_of_ClipBuf)); else str_list = g_list_append(str_list, s->ClipBuf_str_of_ClipStrVar.buf_of_ClipBuf); } if (ccmb->objtype == GTK_WIDGET_COMBO_SIMPLE) { gtk_list_clear_items(GTK_LIST(GTK_COMBO(ccmb->widget)->list), 0, -1); gtk_list_append_items(GTK_LIST(GTK_COMBO(ccmb->widget)->list), str_list); } else gtk_combo_set_popdown_strings(GTK_COMBO(ccmb->widget), str_list); return 0; err: return 1; }
static int selectedAudioAttribIndex() { int i, codec = selectedAudioCodecIndex(); const char *selectedAttrib = gtk_entry_get_text( GTK_ENTRY(GTK_COMBO(g_VcrCompDialog.audioAttribCombo)->entry) ); for (i = 0; i < VCRComp_numAudioCodecAttribs( codec ); i++) { if (!strcmp( selectedAttrib, VCRComp_audioCodecAttribName( codec, i ) )) return i; } return -1; }
void wxComboBox::Paste() { wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkEntry *entry = NULL; #ifdef __WXGTK24__ if (!gtk_check_version(2,4,0)) entry = GTK_ENTRY( GTK_BIN(m_widget)->child ); else #endif entry = GTK_ENTRY( GTK_COMBO(m_widget)->entry ); gtk_editable_paste_clipboard(GTK_EDITABLE(entry)); }
void read_rek() { zap_zaktaxi.telef.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(entry[E_TELEF])))); zap_zaktaxi.kodk.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(entry[E_KODKL])))); zap_zaktaxi.fio.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(entry[E_FIO])))); zap_zaktaxi.kolp.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(entry[E_KOLIH_PAS])))); zap_zaktaxi.adreso.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(entry[E_ADRES_POD])))); zap_zaktaxi.adresk.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(entry[E_ADRES_POEZ])))); zap_zaktaxi.koment.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(entry[E_KOMENT])))); zap_zaktaxi.suma.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(entry[E_SUMA])))); zap_zaktaxi.datvz.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(entry[E_DATA_ZAK])))); zap_zaktaxi.vremvz.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(entry[E_VREM_ZAK])))); zap_zaktaxi.kodzav.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(windowkodzav)->entry)))); zap_zaktaxi.kv.new_plus(iceb_u_fromutf((char*)gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(windowvoditel)->entry)))); // gtk_signal_emit_by_name(GTK_OBJECT(GTK_COMBO(windowkodzav)->entry),"activate"); // gtk_signal_emit_by_name(GTK_OBJECT(GTK_COMBO(windowvoditel)->entry),"activate"); }
gchar *input_dialog_combo(const gchar *title, const gchar *message, const gchar *default_string, GList *list, gboolean case_sensitive) { if (dialog) return NULL; input_dialog_create(INPUT_DIALOG_COMBO); if (!list) { GList empty_list; empty_list.data = (gpointer)""; empty_list.next = NULL; empty_list.prev = NULL; gtk_combo_set_popdown_strings(GTK_COMBO(combo), &empty_list); } else gtk_combo_set_popdown_strings(GTK_COMBO(combo), list); gtk_combo_set_case_sensitive(GTK_COMBO(combo), case_sensitive); return input_dialog_open(title, message, default_string); }
int gnoclComboCmd ( ClientData data, Tcl_Interp *interp, int objc, Tcl_Obj * const objv[] ) { ComboParams *para; int ret; if ( gnoclParseOptions ( interp, objc, objv, comboOptions ) != TCL_OK ) { gnoclClearOptions ( comboOptions ); return TCL_ERROR; } para = g_new ( ComboParams, 1 ); para->interp = interp; para->combo = GTK_COMBO ( gtk_combo_new( ) ); para->variable = NULL; para->onChanged = NULL; para->inSetVar = 0; ret = gnoclSetOptions ( interp, comboOptions, G_OBJECT ( para->combo ), -1 ); if ( ret == TCL_OK ) ret = configure ( interp, para, comboOptions ); gnoclClearOptions ( comboOptions ); if ( ret != TCL_OK ) { g_free ( para ); gtk_widget_destroy ( GTK_WIDGET ( para->combo ) ); return TCL_ERROR; } para->name = gnoclGetAutoWidgetId(); g_signal_connect ( G_OBJECT ( para->combo ), "destroy", G_CALLBACK ( destroyFunc ), para ); gnoclMemNameAndWidget ( para->name, GTK_WIDGET ( para->combo ) ); gtk_widget_show ( GTK_WIDGET ( para->combo ) ); Tcl_CreateObjCommand ( interp, para->name, comboFunc, para, NULL ); Tcl_SetObjResult ( interp, Tcl_NewStringObj ( para->name, -1 ) ); return TCL_OK; }
gint do_timer(gpointer data) { if (port_timeout && --port_timeout == 0) { open_serial_port(gtk_entry_get_text(GTK_ENTRY(port_entry))); } if (baud_timeout && --baud_timeout == 0) { change_baud(gtk_entry_get_text(GTK_ENTRY( GTK_COMBO(baud_combo)->entry))); } if (download_in_progress) { download_timer(); } return TRUE; }
static void list_select_child(GtkList *list, GtkWidget *child, gpointer user_data) { Combo *combo = COMBO(user_data); int idx; if (updating_flag) return; idx = gtk_list_child_position(list,child); if (GTK_WIDGET_VISIBLE(GTK_COMBO(combo)->popwin)) { combo->next_chosen_index = idx; return; } combo->chosen_index = idx; gtk_signal_emit(GTK_OBJECT(combo),combo_signals[CHANGED_SIGNAL]); }
static int selectedAudioCodecIndex() { int i; const char *selectedCodec = gtk_entry_get_text( GTK_ENTRY(GTK_COMBO(g_VcrCompDialog.audioCodecCombo)->entry) ); for (i = 0; i < VCRComp_numAudioCodecs(); i++) { if (!strcmp( selectedCodec, VCRComp_audioCodecName( i ) )) return i; } return -1; }
static void *main_thread(void *p) { if (GTK_TOGGLE_BUTTON(dynam)->active == 1) dynacore = 1; else if (GTK_TOGGLE_BUTTON(pure_interp)->active == 1) dynacore = 2; else dynacore = 0; SDL_Init(SDL_INIT_VIDEO); SDL_SetVideoMode(10, 10, 16, 0); SDL_SetEventFilter(filter); SDL_ShowCursor(0); SDL_EnableKeyRepeat(0, 0); init_memory(); plugin_load_plugins(gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(combo_gfx)->entry)), gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(combo_audio)->entry)), gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(combo_input)->entry)), gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(combo_RSP)->entry))); romOpen_gfx(); romOpen_audio(); romOpen_input(); go(); romClosed_RSP(); romClosed_input(); romClosed_audio(); romClosed_gfx(); closeDLL_RSP(); closeDLL_input(); closeDLL_audio(); closeDLL_gfx(); free(rom); rom = NULL; free(ROM_HEADER); ROM_HEADER = NULL; free_memory(); file_selection_launched = 0; return 0; }
static void gmdb_sql_select_hist_cb(GtkList *list, GladeXML *xml) { gchar *buf; GtkTextBuffer *txtbuffer; GtkWidget *combo, *textview; combo = glade_xml_get_widget(xml, "sql_combo"); if (!combo) return; buf = (gchar *) gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(combo)->entry)); if (!buf) return; textview = glade_xml_get_widget(xml, "sql_textview"); txtbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview)); gtk_text_buffer_set_text(txtbuffer, buf, strlen(buf)); }
void catch_sig(t_editor *editor) { g_signal_connect(G_OBJECT(editor->pWindow), "destroy", G_CALLBACK(catch_event), NULL); g_signal_connect(G_OBJECT(editor->pQuitBtn), "clicked", G_CALLBACK(gtk_main_quit), NULL); g_signal_connect(G_OBJECT(editor->pHelpBtn), "clicked", G_CALLBACK(create_help_win), editor); g_signal_connect(G_OBJECT(editor->pSaveBtn), "clicked", G_CALLBACK(create_save_win), editor); g_signal_connect(G_OBJECT(editor->pAddBtn), "clicked", G_CALLBACK(add_obj), editor); g_signal_connect(G_OBJECT(GTK_COMBO(editor->combo)->entry), "changed", G_CALLBACK(grising_cases), editor); }
static void mood_populate(JamView *view) { if (JAM_ACCOUNT_IS_LJ(view->account)) { /* load moods. */ LJServer *server = jam_host_lj_get_server(JAM_HOST_LJ(jam_account_get_host(view->account))); LJMood *m; char *text; GList *strings = NULL; GSList *l; text = gtk_editable_get_chars(GTK_EDITABLE(GTK_COMBO(view->moodcombo)->entry), 0, -1); for (l = server->moods; l; l = l->next) { m = l->data; strings = g_list_insert_sorted(strings, m->name, (GCompareFunc)g_ascii_strcasecmp); } if (strings) gtk_combo_set_popdown_strings(GTK_COMBO(view->moodcombo), strings); gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(view->moodcombo)->entry), text); g_free(text); } }
static float toolbar_get_zoom( GtkWidget *combo ) { int i = 0; float res = 0; char *txt = (char *) gtk_entry_get_text( GTK_ENTRY(GTK_COMBO (combo)->entry) ); if ( strlen(txt) > 2) // Weed out bogus calls { sscanf(txt, "%i%%", &i); res = (float)i / 100; if (res < 1.0) res = 1.0 / rint(1.0 / res); } return res; }
gpointer gui_pulldown_new(const gchar *text, GList *list, gint edit, GtkWidget *box) { GtkWidget *hbox, *label, *combo; combo = gtk_combo_new(); gtk_combo_set_popdown_strings(GTK_COMBO(combo), list); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(combo)->entry), edit); if (box) { /* create the text/spinner layout */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, TRUE, TRUE, 0); if (text) { label = gtk_label_new(text); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, TRUE, 0); gtk_box_pack_end(GTK_BOX(hbox), combo, FALSE, FALSE, 0); } else gtk_box_pack_end(GTK_BOX(hbox), combo, TRUE, TRUE, 0); } return(GTK_COMBO(combo)->entry); }
GtkWidget* CreateFileCombo(const char* entryText) { GList* list = NULL; list = g_list_append(list, strdup(entryText)); for (int i = 0; i < NUM_FILE_HISTORY; i++) { const char* fileName = MyConfig->GetStringValue(CONFIG_APP_FILE_0 + i); if (fileName == NULL || fileName[0] == '\0' || !strcmp(fileName, entryText)) { continue; } list = g_list_append(list, strdup(fileName)); } GtkWidget* combo = gtk_combo_new(); gtk_combo_set_popdown_strings(GTK_COMBO(combo), list); gtk_combo_set_use_arrows_always(GTK_COMBO(combo), 1); GtkWidget* entry = GTK_COMBO(combo)->entry; gtk_entry_set_text(GTK_ENTRY(entry), entryText); return combo; }
void gcb_enc_set_mode(GtkMenuShell *w, struct encdata *enc) { gchar *text = NULL; if((text = gtk_editable_get_chars(GTK_EDITABLE( GTK_COMBO(enc->mode)->entry), 0, -1))) { if(text[0] == 'm') enc->outchan->channels(1); else enc->outchan->channels(2); g_free(text); } }
int gmdb_export_get_quote(GladeXML *xml) { GtkWidget *combo; int need_quote = 0; gchar *str; combo = glade_xml_get_widget(xml, "quote_combo"); str = (gchar *) gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(combo)->entry)); if (!strcmp(str,ALWAYS)) { need_quote = 1; } else if (!strcmp(str,NEVER)) { need_quote = 0; } else if (!strcmp(str,AUTOMAT)) { need_quote = -1; } return need_quote; }
PRIVATE void init_combo( Control *control ) { GtkCombo *cb; cb = GTK_COMBO( gtk_combo_new() ); g_assert( cb != NULL ); gtk_combo_disable_activate( cb ); if( ((Data *)control->g->data)->list != NULL ) gtk_combo_set_popdown_strings( cb, ((Data *)control->g->data)->list ); gtk_signal_connect( GTK_OBJECT( cb->entry ), "activate", GTK_SIGNAL_FUNC(entry_activated), control ); control->widget = GTK_WIDGET(cb); }
/* * Gets the properties of the widget. This is used for both displaying the * properties in the property editor, and also for saving the properties. */ static void gb_combo_get_properties (GtkWidget * widget, GbWidgetGetArgData * data) { gb_widget_output_bool (data, ValueInList, gtk_object_get_data (GTK_OBJECT (widget), ValueInList) != NULL ? TRUE : FALSE); gb_widget_output_bool (data, OKIfEmpty, gtk_object_get_data (GTK_OBJECT (widget), OKIfEmpty) != NULL ? TRUE : FALSE); gb_widget_output_bool (data, Case, GTK_COMBO (widget)->case_sensitive); gb_widget_output_bool (data, Arrows, GTK_COMBO (widget)->use_arrows); gb_widget_output_bool (data, Always, GTK_COMBO (widget)->use_arrows_always); if (is_simple_combo (widget) >= 0) { GString *items; items = g_string_new (""); gtk_container_foreach (GTK_CONTAINER (GTK_COMBO (widget)->list), (GtkCallback) add_label, items); gb_widget_output_translatable_text_in_lines (data, Items, items->str); g_string_free (items, TRUE); } }
/* Called when the user presses [Load], [Save], or [Erase] */ static void button_cb(GtkWidget *w, gpointer data) { char *title; /* Get the text from the combo box */ title = gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(combo)->entry)); /* Do the button's action */ if (w == load) preset_load(title); else if (w == save) preset_save(title); else if (w == erase) preset_erase(title); }
void on_menu_options_preferences_activate (GtkMenuItem *menuitem, gpointer user_data) { GtkToggleButton *button; GtkCombo *combo; GtkRange *range; GtkSpinButton *spinner; GList *items; int i; vo_driver_t const *drivers; items = NULL; if( !preferences_window ) { preferences_window = create_preferences_window(); } /* set the combo box up with the correct values. */ combo = GTK_COMBO(lookup_widget(GTK_WIDGET(preferences_window), "video_output_driver_combo" )); gchar * vidpref = NULL; drivers = vo_drivers(); for( i = 0; drivers[i].name; i++ ) { items = g_list_append(items, drivers[i].name); // while looking through the list of available video drivers, // the prefered driver is xv2, followed by xv, and finally x11. // If the user hasn't selected one, this one will be used. if ( !strcmp(drivers[i].name,"xv2") || (!vidpref && !strcmp(drivers[i].name,"xv"))) { if (vidpref) free(vidpref); vidpref=g_strdup(drivers[i].name); } } if (!vidpref) vidpref=g_strdup("x11"); gtk_combo_set_popdown_strings(combo, items); if( !options.video_driver_ptr ) options.video_driver_ptr = vidpref; else if (vidpref) free(vidpref); gtk_entry_set_text(GTK_ENTRY(combo->entry), (const gchar*)options.video_driver_ptr); handle_simple_preferences(true); gtk_widget_show(preferences_window); }