void init_newrun_window_for_new_run(GtkWidget *widget, gpointer data) { NEW_DATA *new_data = (NEW_DATA *) data; new_data->edit_index = -1; populate_MRUs(new_data); // keep deault date (today) set_date_calendar(GTK_CALENDAR(new_data->calendar), (gpointer) new_data); // setting the distance to 0 gtk_spin_button_set_value(GTK_SPIN_BUTTON(new_data->distance_chooser), 0); // setting the time fields to 0 gtk_entry_buffer_set_text(new_data->seconds_buff, "00", 2); gtk_entry_buffer_set_text(new_data->minutes_buff, "00", 2); gtk_entry_buffer_set_text(new_data->hours_buff, "00", 2); printf("setting combobox to nothing!!\n"); GtkWidget *entry = gtk_bin_get_child(GTK_BIN(new_data->route_entry)); gtk_entry_set_text(GTK_ENTRY(entry), ""); entry = gtk_bin_get_child(GTK_BIN(new_data->workout_type_entry)); gtk_entry_set_text(GTK_ENTRY(entry), ""); // setting the feel3 button active gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(new_data->feel3), true); // setting the morning button active gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(new_data->time1), true); //clearing the notes buffer gtk_text_buffer_set_text(new_data->notes_buff, "\0", -1); open_window(GTK_WIDGET(widget), (gpointer) new_data->newrun_window); }
void on_entry_insert( GtkEntryBuffer *buf, guint position, gchar *chars, guint n_chars, gpointer user_data ) { char* new_text = NULL; const char* text = gtk_entry_buffer_get_text( buf ); if ( !text ) return; if ( strchr( text, '\n' ) ) { // remove linefeeds from pasted text text = new_text = replace_string( text, "\n", "", FALSE ); } // remove leading spaces for test while ( text[0] == ' ' ) text++; if ( text[0] == '\'' && g_str_has_suffix( text, "'" ) && text[1] != '\0' ) { // path is quoted - assume bash quote char* unquote = g_strdup( text + 1 ); unquote[strlen( unquote ) - 1] = '\0'; g_free( new_text ); new_text = replace_string( unquote, "'\\''", "'", FALSE ); g_free( unquote ); } if ( new_text ) { gtk_entry_buffer_set_text( buf, new_text, -1 ); g_free( new_text ); } }
/***************************************************** *主页面 设置过滤规则 *****************************************************/ void on_main_filter_entry_activate(GtkWidget * gw, gpointer data) { GtkEntry *filter_entry; filter_entry = GTK_ENTRY(gtk_builder_get_object(builder, "main_filter_entry")); gtk_entry_buffer_set_text(gtk_entry_get_buffer(filter_entry), "", 0); }
/** * gtk_entry_buffer_new: * @initial_chars: (allow-none): initial buffer text, or %NULL * @n_initial_chars: number of characters in @initial_chars, or -1 * * Create a new GtkEntryBuffer object. * * Optionally, specify initial text to set in the buffer. * * Return value: A new GtkEntryBuffer object. * * Since: 2.18 **/ GtkEntryBuffer* gtk_entry_buffer_new (const gchar *initial_chars, gint n_initial_chars) { GtkEntryBuffer *buffer = g_object_new (GTK_TYPE_ENTRY_BUFFER, NULL); if (initial_chars) gtk_entry_buffer_set_text (buffer, initial_chars, n_initial_chars); return buffer; }
void on_entry_insert( GtkEntryBuffer *buf, guint position, gchar *chars, guint n_chars, gpointer user_data ) { // remove linefeeds from pasted text if ( !strchr( gtk_entry_buffer_get_text( buf ), '\n' ) ) return; char* new_text = replace_string( gtk_entry_buffer_get_text( buf ), "\n", "", FALSE ); gtk_entry_buffer_set_text( buf, new_text, -1 ); g_free( new_text ); }
void GUI::run_program_step(GtkWidget * button_widget){ std::vector<GuiNotebookItem>::iterator iter; iter = this->gui_notebook_item_list.begin(); bool widget_found = false; GuiNotebookItem * needed_item; while( (iter != this->gui_notebook_item_list.end()) && !widget_found) { needed_item = & *iter; if (button_widget == needed_item->run_button){ widget_found = true; } ++iter; } if (needed_item->vmachine == NULL){ needed_item->vmachine = new vm(this->rmachine, (int)this->vmnumber, needed_item->filepath); this->vmnumber++; } std::string temp_reg; std::stringstream out; if (needed_item->vmachine->finish == false ){ needed_item->vmachine->step(); out.str(""); out << needed_item->vmachine->IC; temp_reg = out.str(); this->rmword->renew("10", temp_reg); temp_reg = this->rmword->hexadimal(); gtk_entry_buffer_set_text (this->ic_buffer, temp_reg.c_str(), -1); temp_reg = ""; out.str(""); out << needed_item->vmachine->ST; out >> temp_reg; this->rmword->renew("10", temp_reg); temp_reg = this->rmword->hexadimal(); gtk_entry_buffer_set_text (this->st_buffer, temp_reg.c_str(), -1); }
static void text_inserted (GtkEditable *editable, gchar *new_text, gint new_text_length, gint *position, gpointer user_data) { GtkEntryBuffer *buffer; gchar* new_label; gint i; gint current_length, max_length; gboolean valid; valid = TRUE; buffer = gtk_entry_get_buffer (GTK_ENTRY (editable)); current_length = gtk_entry_buffer_get_length (buffer); max_length = gtk_entry_get_max_length (GTK_ENTRY (editable)); /* honor max length property */ if (current_length + new_text_length > max_length) return; /* stop the default implementation */ g_signal_stop_emission (editable, g_signal_lookup ("insert-text", GTK_TYPE_ENTRY), 0); for (i = 0; i < new_text_length; i++) { gchar c; c = *(new_text + i); /* trying to insert a non-numeric char */ if (c < '0' || c > '9') { valid = FALSE; break; } } if (!valid) return; new_label = g_strdup_printf ("%s%s", gtk_entry_buffer_get_text (buffer), new_text); gtk_entry_buffer_set_text (buffer, new_label, current_length + new_text_length); *position = *position + new_text_length; g_free (new_label); }
static void on_click_file_choose_button(GtkButton* button, gpointer user_data) { GtkWidget* dialog = gtk_file_chooser_dialog_new(_("Select Python binary"), NULL, GTK_FILE_CHOOSER_ACTION_OPEN, _("_Cancel"), GTK_RESPONSE_CANCEL, _("_Open"), GTK_RESPONSE_ACCEPT, NULL); GtkFileChooser* chooser = GTK_FILE_CHOOSER(dialog); gint res = gtk_dialog_run(GTK_DIALOG(dialog)); if (res == GTK_RESPONSE_ACCEPT) { char* filename = gtk_file_chooser_get_filename(chooser); gtk_entry_buffer_set_text(pref_widgets.pypath_buffer, filename, -1); g_free(filename); } gtk_widget_destroy(dialog); }
static void gtk_entry_buffer_set_property (GObject *obj, guint prop_id, const GValue *value, GParamSpec *pspec) { GtkEntryBuffer *buffer = GTK_ENTRY_BUFFER (obj); switch (prop_id) { case PROP_TEXT: gtk_entry_buffer_set_text (buffer, g_value_get_string (value), -1); break; case PROP_MAX_LENGTH: gtk_entry_buffer_set_max_length (buffer, g_value_get_int (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, prop_id, pspec); break; } }
void init_newrun_window_for_edit(GtkWidget *widget, gpointer data) { NEW_DATA *new_data = (NEW_DATA *) data; populate_MRUs(new_data); GtkTreeSelection *selection; GtkTreeModel *model; GtkTreeIter iter; GValue value = G_VALUE_INIT; gchar buff[30]; gchar seconds_buff[3]; gchar minutes_buff[3]; gchar hours_buff[3]; selection = gtk_tree_view_get_selection(new_data->runlist); gtk_tree_selection_set_mode(selection, GTK_SELECTION_SINGLE); gtk_tree_selection_get_selected(selection, &model, &iter); gtk_tree_model_get_value(model, &iter, INDEX, &value); new_data->edit_index = g_value_get_int(&value); // set the date set_time_strings(new_data->database->run[new_data->edit_index]->duration, hours_buff, minutes_buff, seconds_buff); gtk_spin_button_set_value(GTK_SPIN_BUTTON(new_data->day_chooser), new_data->database->run[new_data->edit_index]->day); g_snprintf(buff, 30, "%i", new_data->database->run[new_data->edit_index]->month); gtk_combo_box_set_active_id(GTK_COMBO_BOX(new_data->month_chooser), buff); gtk_spin_button_set_value(GTK_SPIN_BUTTON(new_data->year_chooser), new_data->database->run[new_data->edit_index]->year); // setting the distance gtk_spin_button_set_value(GTK_SPIN_BUTTON(new_data->distance_chooser), new_data->database->run[new_data->edit_index]->distance); // setting the time fields gtk_entry_buffer_set_text(new_data->seconds_buff, seconds_buff, 2); gtk_entry_buffer_set_text(new_data->minutes_buff, minutes_buff, 2); gtk_entry_buffer_set_text(new_data->hours_buff, hours_buff, 2); // setting the entries GtkWidget *entry = gtk_bin_get_child(GTK_BIN(new_data->route_entry)); gtk_entry_set_text(GTK_ENTRY(entry), new_data->database->run[new_data->edit_index]->route); entry = gtk_bin_get_child(GTK_BIN(new_data->workout_type_entry)); gtk_entry_set_text(GTK_ENTRY(entry), new_data->database->run[new_data->edit_index]->type); // setting the feel button active switch (new_data->database->run[new_data->edit_index]->feel) { case 1: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(new_data->feel1), true); break; case 2: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(new_data->feel2), true); break; case 3: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(new_data->feel3), true); break; case 4: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(new_data->feel4), true); break; case 5: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(new_data->feel5), true); break; } // setting the time of day button active switch (new_data->database->run[new_data->edit_index]->time) { case 1: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(new_data->time1), true); break; case 2: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(new_data->time2), true); break; case 3: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(new_data->time3), true); break; case 4: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(new_data->time4), true); break; } //clearing the notes buffer gtk_text_buffer_set_text(new_data->notes_buff, new_data->database->run[new_data->edit_index]->notes, new_data->database->run[new_data->edit_index]->notes_len); open_window(GTK_WIDGET(widget), (gpointer) new_data->newrun_window); }