static gboolean close_window(GtkWidget *widget, GdkEvent *event, gpointer user_data) { char **input_buffer = (char **)user_data; lib_free(*input_buffer); *input_buffer = NULL; return gtk_widget_hide_on_delete(widget); }
/* * config dialog. */ gboolean on_config_dialog_delete_event(GtkWidget *widget, GdkEvent *event, gpointer data) { const gchar *text = gtk_entry_get_text(GTK_ENTRY(entry_command_before_action)); values_set_command_before_action(text); values_save(); return gtk_widget_hide_on_delete(widget); }
static gboolean on_progress_delete_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) { progress_aborted = 1; return gtk_widget_hide_on_delete (widget); }
static gboolean on_delete(XmrSearchBox *box, GdkEvent *event, gpointer data) { XmrSearchBoxPrivate *priv = box->priv; priv->need_to_show = FALSE; show_chooser(box, FALSE); return gtk_widget_hide_on_delete(GTK_WIDGET(box)); }
void expert_mode(GtkWidget *w, GtkWidget *table) { if(GTK_TOGGLE_BUTTON(w)->active) { gtk_widget_show_all(table); // i_am_expert = true; } else { gtk_widget_hide_on_delete(table); //bomboclat bug, c1cc10 fix // i_am_expert = false; } }
int clip_GTK_WIDGETHIDEONDELETE(ClipMachine * cm) { C_widget *cwid = _fetch_cw_arg(cm); CHECKCWID(cwid,GTK_IS_WIDGET); gtk_widget_hide_on_delete(cwid->widget); return 0; err: return 1; }
/** knicked from audio scrobbler */ static GtkWidget* impl_create_configure_dialog (RBPlugin *plugin) { RBSpotifyPluginPrivate *pprivate = RB_SPOTIFY_PLUGIN_GET_PRIVATE(plugin); if (pprivate->preferences == NULL) { char* t; if (pprivate->config_widget == NULL) { GladeXML *xml; char *gladefile; gladefile = rb_plugin_find_file (plugin, "spotify-prefs.glade"); g_assert (gladefile != NULL); xml = rb_glade_xml_new (gladefile, "spotify_vbox", plugin); g_free (gladefile); pprivate->config_widget = glade_xml_get_widget (xml, "spotify_vbox"); pprivate->username_entry = glade_xml_get_widget (xml, "username_entry"); pprivate->username_label = glade_xml_get_widget (xml, "username_label"); pprivate->password_entry = glade_xml_get_widget (xml, "password_entry"); pprivate->password_label = glade_xml_get_widget (xml, "password_label"); g_object_unref (G_OBJECT (xml)); } t = eel_gconf_get_string (CONF_SPOTIFY_USERNAME); gtk_entry_set_text (GTK_ENTRY (pprivate->username_entry), t ? t : ""); t = eel_gconf_get_string (CONF_SPOTIFY_USERNAME); gtk_entry_set_text (GTK_ENTRY (pprivate->password_entry), t ? t : ""); pprivate->preferences = gtk_dialog_new_with_buttons (_("Spotify Preferences"), NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, NULL); gtk_dialog_set_has_separator (GTK_DIALOG (pprivate->preferences), FALSE); gtk_container_set_border_width (GTK_CONTAINER (pprivate->preferences), 5); gtk_window_set_resizable (GTK_WINDOW (pprivate->preferences), FALSE); g_signal_connect (G_OBJECT (pprivate->preferences), "response", G_CALLBACK (preferences_response_cb), plugin); gtk_widget_hide_on_delete (pprivate->preferences); gtk_container_add (GTK_CONTAINER (GTK_DIALOG (pprivate->preferences)->vbox), pprivate->config_widget); } gtk_widget_show_all (pprivate->preferences); return pprivate->preferences; }
static gboolean on_xmr_window_delete(XmrWindow *window, GdkEvent *event, XmrIndicatorPlugin *plugin) { if (plugin->hide_on_exit) { return gtk_widget_hide_on_delete(GTK_WIDGET(window)); } return FALSE; }
int get_date(GtkWidget *t, isoDate_t *date) { GtkWidget *w; GtkWindow *win; GtkWidget *thiswin; gint x,x_off; gint y,y_off; guint year; guint month; guint day; isoDate_t odate=*date; got_date=0; win=GTK_WINDOW(gtk_builder_get_object (builder, "CalendarWindow")); if(win==NULL) { fprintf(stderr,"Could not locate Calendar window\n"); return(-1); } thiswin = gtk_widget_get_toplevel(t); if(thiswin==NULL) { fprintf(stderr,"Could not locate main window\n"); return(-1); } if(!(gtk_widget_translate_coordinates(GTK_WIDGET(t) ,GTK_WIDGET(thiswin), 0, 0, &x_off, &y_off))) { fprintf(stderr,"Could not get position of button in window"); } gtk_window_get_position(GTK_WINDOW(thiswin), &x, &y); gtk_window_move(GTK_WINDOW(win), x+x_off, y+y_off); w=GTK_WIDGET(gtk_builder_get_object (builder, "Calendar")); if(w==NULL) { fprintf(stderr,"Could not locate Calendar widget\n"); return(-1); } gtk_calendar_select_month(GTK_CALENDAR(w), isoDate_month(*date)-1, isoDate_year(*date)); gtk_calendar_select_day(GTK_CALENDAR(w), isoDate_day(*date)); gtk_window_present(GTK_WINDOW(win)); /* Wait for window to close... */ gtk_main(); w=GTK_WIDGET(gtk_builder_get_object (builder, "Calendar")); if(w==NULL) return(-1); gtk_calendar_get_date(GTK_CALENDAR(w), &year, &month, &day); gtk_widget_hide_on_delete(GTK_WIDGET(gtk_widget_get_toplevel(GTK_WIDGET(w)))); *date=isoDate_create(year, month+1, day); return(odate!=*date); }
/* Called when the config action dialog is closed, to save all informations */ gboolean on_config_action_dialog_delete_event(GtkWidget *widget, GdkEvent *event, gpointer data) { const gchar *command; gtk_widget_hide(GTK_WIDGET(config_action_dialog)); /* Apply the action in "values" */ command = gtk_entry_get_text(GTK_ENTRY(entry_action_custom_command)); if(config_action_current_action != NULL) action_set_command(config_action_current_action, command); /* save */ values_save(); return gtk_widget_hide_on_delete(widget); }
G_MODULE_EXPORT void on_properties1_activate(GtkWidget *wiggy, gpointer data) { GtkWidget *dialog; GtkWidget *w; dialog=GTK_WIDGET(gtk_builder_get_object (builder, "PreferencesDialog")); /* Put in the current values */ w=GTK_WIDGET(gtk_builder_get_object (builder, "eEditTextFile")); gtk_entry_set_text(GTK_ENTRY(w),gtkm_conf.edit_text_file); w=GTK_WIDGET(gtk_builder_get_object (builder, "eViewTextFile")); gtk_entry_set_text(GTK_ENTRY(w),gtkm_conf.view_text_file); w=GTK_WIDGET(gtk_builder_get_object (builder, "eViewStdout")); gtk_entry_set_text(GTK_ENTRY(w),gtkm_conf.view_stdout); w=GTK_WIDGET(gtk_builder_get_object (builder, "eViewCtrlAFile")); gtk_entry_set_text(GTK_ENTRY(w),gtkm_conf.view_ctrla_file); w=GTK_WIDGET(gtk_builder_get_object (builder, "eViewHTMLFile")); gtk_entry_set_text(GTK_ENTRY(w),gtkm_conf.view_html_file); switch(gtk_dialog_run(GTK_DIALOG(dialog))) { case GTK_RESPONSE_OK: /* Read out the new values */ w=GTK_WIDGET(gtk_builder_get_object (builder, "eEditTextFile")); strcpy(gtkm_conf.edit_text_file,gtk_entry_get_text(GTK_ENTRY(w))); w=GTK_WIDGET(gtk_builder_get_object (builder, "eViewTextFile")); strcpy(gtkm_conf.view_text_file,gtk_entry_get_text(GTK_ENTRY(w))); w=GTK_WIDGET(gtk_builder_get_object (builder, "eViewStdout")); strcpy(gtkm_conf.view_stdout,gtk_entry_get_text(GTK_ENTRY(w))); w=GTK_WIDGET(gtk_builder_get_object (builder, "eViewCtrlAFile")); strcpy(gtkm_conf.view_ctrla_file,gtk_entry_get_text(GTK_ENTRY(w))); w=GTK_WIDGET(gtk_builder_get_object (builder, "eViewHTMLFile")); strcpy(gtkm_conf.view_html_file,gtk_entry_get_text(GTK_ENTRY(w))); write_ini(); } gtk_widget_hide_on_delete(dialog); }
static GtkWidget * mca_info_panel_host (GtkWidget *panel) { GtkWidget *window; //host panel inside a normal window window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_container_add (GTK_CONTAINER(window), GTK_WIDGET(panel)); gtk_window_set_title(GTK_WINDOW (window), "Mkahawa Cyber Client"); gtk_widget_hide_on_delete(window); //gtk_window_set_position(GTK_WINDOW (window), GTK_WIN_POS_NONE); gtk_window_stick(GTK_WINDOW (window)); gtk_window_set_keep_above(GTK_WINDOW (window), TRUE); //gtk_window_set_decorated(GTK_WINDOW (window), FALSE); gtk_window_set_deletable(GTK_WINDOW (window), FALSE); gtk_window_set_resizable(GTK_WINDOW (window), FALSE); g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (ipnl_destroy), G_OBJECT (window)); g_signal_connect (G_OBJECT (window), "delete-event", G_CALLBACK (ipnl_delete_event), NULL); g_signal_connect (G_OBJECT (window), "window-state-event", G_CALLBACK (ipnl_window_state_event), ipnl->tray_icon); ipnl->wnd_ipnl = window; gtk_widget_show_all(window); return window; }
G_MODULE_EXPORT void destroy_calendar_window(GtkWidget *t, gpointer data) { if(!got_date) gtk_main_quit(); gtk_widget_hide_on_delete(GTK_WIDGET(gtk_widget_get_toplevel(GTK_WIDGET(t)))); }
static void view_show (WarlockView *view) { GtkWidget *frame; g_assert (view != NULL); view->shown = TRUE; /* save the status of the window */ if (view->shown_key != NULL) preferences_set_bool (view->shown_key, TRUE); // Update the menu checkmark if (view->menuitem != NULL) gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (view->menuitem), TRUE); // If the window was already created, just show it. if (view->scrolled_window != NULL) { gtk_widget_show (GTK_WIDGET (view->widget)); return; } /* FIXME: this is all an awful mess */ if (view->widget == NULL) { int width, height; view->widget = gtk_window_new (GTK_WINDOW_TOPLEVEL); g_object_ref (view->widget); gtk_window_set_title (GTK_WINDOW (view->widget), view->title); gtk_widget_hide_on_delete (view->widget); frame = gtk_frame_new (view->title); gtk_container_add (GTK_CONTAINER (view->widget), frame); gtk_window_set_role (GTK_WINDOW (view->widget), view->name); width = preferences_get_int (preferences_get_window_key (view->name, "width")); height = preferences_get_int (preferences_get_window_key (view->name, "height")); gtk_window_set_default_size (GTK_WINDOW (view->widget), width, height); g_signal_connect (G_OBJECT (view->widget), "configure-event", G_CALLBACK (view_resized), (gpointer) view->name); g_signal_connect (G_OBJECT (view->widget), "delete-event", G_CALLBACK (view_deleted), (gpointer) view); } else { frame = view->widget; } view->scrolled_window = gtk_scrolled_window_new (NULL, NULL); view->buffer = w_string_new (""); warlock_view_create_text_view (view); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (view->scrolled_window), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS); gtk_container_add (GTK_CONTAINER (view->scrolled_window), view->text_view); gtk_container_add (GTK_CONTAINER (frame), view->scrolled_window); gtk_widget_show_all (view->widget); }
PluginEditorDialog * edit_plugin_dialog_new (void) { PluginEditorDialog *dlg; GladeXML *gtxml; GtkWidget *e; int i; const char *col_titles[NCOLUMNS]; dlg = g_malloc(sizeof(PluginEditorDialog)); dlg->app = GNOME_APP (app_window); gtxml = gtt_glade_xml_new ("glade/plugin_editor.glade", "Plugin Editor"); dlg->gtxml = gtxml; dlg->dialog = GTK_DIALOG (glade_xml_get_widget (gtxml, "Plugin Editor")); /* ------------------------------------------------------ */ /* Dialog dismissal buttons */ glade_xml_signal_connect_data (gtxml, "on_ok_button_clicked", GTK_SIGNAL_FUNC (edit_plugin_commit_cb), dlg); glade_xml_signal_connect_data (gtxml, "on_apply_button_clicked", GTK_SIGNAL_FUNC (edit_plugin_apply_cb), dlg); glade_xml_signal_connect_data (gtxml, "on_cancel_button_clicked", GTK_SIGNAL_FUNC (edit_plugin_cancel_cb), dlg); /* ------------------------------------------------------ */ /* Menu item add/delete buttons */ glade_xml_signal_connect_data (gtxml, "on_add_button_clicked", GTK_SIGNAL_FUNC (edit_plugin_add_cb), dlg); glade_xml_signal_connect_data (gtxml, "on_delete_button_clicked", GTK_SIGNAL_FUNC (edit_plugin_delete_cb), dlg); /* ------------------------------------------------------ */ /* Grab the various entry boxes and hook them up */ e = glade_xml_get_widget (gtxml, "plugin name"); dlg->plugin_name = GTK_ENTRY(e); e = glade_xml_get_widget (gtxml, "plugin path"); dlg->plugin_path = GTK_FILE_CHOOSER(e); e = glade_xml_get_widget (gtxml, "plugin tooltip"); dlg->plugin_tooltip = GTK_ENTRY(e); /* ------------------------------------------------------ */ /* Inpout widget changed events */ glade_xml_signal_connect_data (gtxml, "on_plugin_name_changed", GTK_SIGNAL_FUNC (edit_plugin_changed_cb), dlg); glade_xml_signal_connect_data (gtxml, "on_plugin_path_changed", GTK_SIGNAL_FUNC (edit_plugin_changed_cb), dlg); glade_xml_signal_connect_data (gtxml, "on_plugin_tooltip_changed", GTK_SIGNAL_FUNC (edit_plugin_changed_cb), dlg); /* ------------------------------------------------------ */ /* Menu order change buttons */ glade_xml_signal_connect_data (gtxml, "on_up_button_clicked", GTK_SIGNAL_FUNC (edit_plugin_up_button_cb), dlg); glade_xml_signal_connect_data (gtxml, "on_down_button_clicked", GTK_SIGNAL_FUNC (edit_plugin_down_button_cb), dlg); glade_xml_signal_connect_data (gtxml, "on_left_button_clicked", GTK_SIGNAL_FUNC (edit_plugin_left_button_cb), dlg); glade_xml_signal_connect_data (gtxml, "on_right_button_clicked", GTK_SIGNAL_FUNC (edit_plugin_right_button_cb), dlg); /* ------------------------------------------------------ */ /* Set up the Treeview Widget */ e = glade_xml_get_widget (gtxml, "editor treeview"); dlg->treeview = GTK_TREE_VIEW (e); { GType col_type[NCOLUMNS]; for (i=0;i<NCOLUMNS-1;i++) { col_type[i] = G_TYPE_STRING; } col_type[NCOLUMNS-1] = G_TYPE_POINTER; dlg->treestore = gtk_tree_store_newv (NCOLUMNS, col_type); } gtk_tree_view_set_model (dlg->treeview, GTK_TREE_MODEL(dlg->treestore)); /* Set up the columns in the treeview widget */ col_titles[0] = "Name"; col_titles[1] = "Path"; col_titles[2] = "Tooltip"; for (i=0; i<NCOLUMNS-1; i++) { GtkTreeViewColumn *col; GtkCellRenderer *renderer; renderer = gtk_cell_renderer_text_new (); col = gtk_tree_view_column_new_with_attributes ( col_titles[i], renderer, "text", i, NULL); gtk_tree_view_insert_column (dlg->treeview, col, i); } /* Copy-in existing menus from the system */ edit_plugin_setup (dlg); /* Hook up the row-selection callback */ dlg->have_selection = FALSE; dlg->selection = gtk_tree_view_get_selection (dlg->treeview); gtk_tree_selection_set_mode (dlg->selection, GTK_SELECTION_SINGLE); g_signal_connect (G_OBJECT (dlg->selection), "changed", G_CALLBACK (edit_plugin_tree_selection_changed_cb), dlg); gtk_widget_hide_on_delete (GTK_WIDGET(dlg->dialog)); return dlg; }
struct encdata *enc_new(const char *text) { GtkWidget *verbox, *tabbola; GtkWidget *tmpbar, *tmplabel; GtkWidget *tmpbox; GtkWidget *scaled; GtkWidget *ok; /*gchar *text;*/ bool lame = true; struct encdata *enc = NULL; GList *listola = NULL; /* recycling */ /* init area */ enc = (struct encdata *) g_malloc(sizeof(struct encdata)); /* init area end */ if(!(strcmp(text, "Lame"))) { lame = true; lameid = mixer->create_enc(MP3); enc->outchan = mixer->get_enc(lameid); tmplabel = gtk_label_new(_("Configure Lame Encoder")); } else { oggid = mixer->create_enc(OGG); enc->outchan = mixer->get_enc(oggid); tmplabel= gtk_label_new(_("Configure Ogg/Vorbis Encoder")); } enc->outchan->start(); verbox = gtk_vbox_new(FALSE, 12); gtk_box_pack_start(GTK_BOX(verbox), tmplabel, FALSE, FALSE, 0); enc->verbox = verbox; /*tmplabel = GTK_BIN(w)->child; gtk_label_get(GTK_LABEL(tmplabel), &text);*/ /*winenc = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_container_set_border_width(GTK_CONTAINER(winenc), 7); gtk_window_set_policy(GTK_WINDOW(winenc), TRUE, TRUE, TRUE); gtk_signal_connect(GTK_OBJECT(winenc), "destroy", (GtkSignalFunc) gtk_widget_destroyed, &winenc);*/ tmpbox = gtk_hbox_new(FALSE, 6); gtk_box_pack_start(GTK_BOX(verbox), tmpbox, FALSE, FALSE, 0); tmplabel = gtk_label_new(_("Quality: (low)")); gtk_box_pack_start(GTK_BOX(tmpbox), tmplabel, FALSE, FALSE, 0); enc->adj1 = gtk_adjustment_new(0.0, 1.0, 9.0, 1.0, 1.0, 0.0); g_signal_connect(G_OBJECT(enc->adj1), "value_changed", G_CALLBACK(gcb_enc_set_quality), enc); scaled = gtk_hscale_new(GTK_ADJUSTMENT(enc->adj1)); gtk_range_set_update_policy(GTK_RANGE(scaled), GTK_UPDATE_CONTINUOUS); gtk_scale_set_draw_value(GTK_SCALE(scaled), FALSE); gtk_widget_set_size_request(scaled, 100, 30); gtk_box_pack_start(GTK_BOX(tmpbox), scaled, FALSE, FALSE, 0); tmplabel = gtk_label_new(_("(high)")); gtk_box_pack_start(GTK_BOX(tmpbox), tmplabel, FALSE, FALSE, 0); tmplabel = gtk_label_new(_(" Mode")); gtk_box_pack_start(GTK_BOX(tmpbox), tmplabel, FALSE, FALSE, 0); enc->mode = gtk_combo_new(); listola = g_list_append(listola, (void *) _("mono")); listola = g_list_append(listola, (void *) _("stereo")); gtk_combo_set_popdown_strings(GTK_COMBO(enc->mode), listola); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(enc->mode)->entry), FALSE); g_list_free(listola); listola = NULL; gtk_widget_set_size_request(enc->mode, 70, 22); gtk_box_pack_start(GTK_BOX(tmpbox), enc->mode, FALSE, FALSE, 0); enc->adj_lab = gtk_label_new(""); gtk_box_pack_start(GTK_BOX(verbox), enc->adj_lab, FALSE, FALSE, 0); gtk_adjustment_set_value(GTK_ADJUSTMENT(enc->adj1), 2.0); /* hidden info */ tabbola = gtk_table_new(3, 4, FALSE); gtk_table_set_row_spacings(GTK_TABLE(tabbola), 12); gtk_table_set_col_spacings(GTK_TABLE(tabbola), 12); gtk_box_pack_start(GTK_BOX(verbox), tabbola, FALSE, FALSE, 0); enc->tabbola = tabbola; tmplabel = gtk_label_new(_("bitrate")); gtk_table_attach_defaults(GTK_TABLE(tabbola), tmplabel, 0, 1, 0, 1); enc->bitrate = gtk_combo_new(); listola = g_list_append(listola, (void *) "16"); listola = g_list_append(listola, (void *) "24"); listola = g_list_append(listola, (void *) "32"); listola = g_list_append(listola, (void *) "48"); listola = g_list_append(listola, (void *) "56"); listola = g_list_append(listola, (void *) "64"); listola = g_list_append(listola, (void *) "96"); listola = g_list_append(listola, (void *) "128"); gtk_combo_set_popdown_strings(GTK_COMBO(enc->bitrate), listola); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(enc->bitrate)->entry), FALSE); g_list_free(listola); listola = NULL; gtk_widget_set_size_request(enc->bitrate, 70, 22); gtk_table_attach_defaults(GTK_TABLE(tabbola), enc->bitrate, 1, 2, 0, 1); tmplabel = gtk_label_new(_("frequency filtering")); gtk_table_attach_defaults(GTK_TABLE(tabbola), tmplabel, 2, 3, 0, 1); enc->freqfil = gtk_combo_new(); listola = g_list_append(listola, (void *) _("auto")); listola = g_list_append(listola, (void *) _("none")); listola = g_list_append(listola, (void *) _("manual")); gtk_combo_set_popdown_strings(GTK_COMBO(enc->freqfil), listola); g_list_free(listola); listola = NULL; g_signal_connect(G_OBJECT(GTK_COMBO(enc->freqfil)->entry), "changed", G_CALLBACK(gcb_set_pass), enc); gtk_widget_set_size_request(enc->freqfil, 70, 22); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(enc->freqfil)->entry), FALSE); gtk_table_attach_defaults(GTK_TABLE(tabbola), enc->freqfil, 3, 4, 0, 1); tmplabel=gtk_label_new(_("frequency")); gtk_table_attach_defaults(GTK_TABLE(tabbola), tmplabel, 0, 1, 1, 2); enc->freq = gtk_combo_new(); listola = g_list_append(listola, (void *) "auto"); listola = g_list_append(listola, (void *) "11000"); listola = g_list_append(listola, (void *) "16000"); listola = g_list_append(listola, (void *) "22050"); listola = g_list_append(listola, (void *) "44100"); gtk_combo_set_popdown_strings(GTK_COMBO(enc->freq), listola); g_list_free(listola); listola = NULL; gtk_widget_set_size_request(enc->freq, 70, 22); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(enc->freq)->entry), FALSE); gtk_table_attach_defaults(GTK_TABLE(tabbola), enc->freq, 1, 2, 1, 2); tmplabel = gtk_label_new(_("lowpass Hz")); gtk_table_attach_defaults(GTK_TABLE(tabbola), tmplabel, 2, 3, 1, 2); enc->lowps = gtk_entry_new(); gtk_entry_set_editable(GTK_ENTRY(enc->lowps), FALSE); gtk_entry_set_text(GTK_ENTRY(enc->lowps), _("guessed")); gtk_widget_set_size_request(enc->lowps, 70, 22); gtk_table_attach_defaults(GTK_TABLE(tabbola), enc->lowps, 3, 4, 1, 2); tmplabel = gtk_label_new(_("highpass Hz")); gtk_table_attach_defaults(GTK_TABLE(tabbola), tmplabel, 2, 3, 2, 3); enc->highps = gtk_entry_new(); gtk_entry_set_editable(GTK_ENTRY(enc->highps), FALSE); gtk_entry_set_text(GTK_ENTRY(enc->highps), _("guessed")); gtk_widget_set_size_request(enc->highps, 70, 22); gtk_table_attach_defaults(GTK_TABLE(tabbola), enc->highps, 3, 4, 2, 3); /* end of hidden info */ enc->tasti = gtk_vbox_new(FALSE, 5); enc->expert = gtk_toggle_button_new_with_label(_("I'm Expert...")); g_signal_connect(G_OBJECT(enc->expert), "toggled", G_CALLBACK(expert_mode), tabbola); gtk_box_pack_start(GTK_BOX(enc->tasti), enc->expert, FALSE, FALSE, 0); /* profile menu */ tmpbar = gtk_menu_bar_new(); gtk_box_pack_start(GTK_BOX(enc->tasti), tmpbar, FALSE, FALSE, 0); enc->profroot = gtk_menu_item_new_with_label(_("Profile...")); gtk_menu_bar_append(GTK_MENU_BAR(tmpbar), enc->profroot); if(enc->outchan->tipo == MP3) profile_lame_load(); else profile_vorbis_load(); enc_profmenu(enc); /* profile menu end */ ok = gtk_button_new_with_label(_("Apply")); gtk_button_set_relief(GTK_BUTTON(ok), GTK_RELIEF_HALF); g_signal_connect(G_OBJECT(ok), "clicked", G_CALLBACK(gcb_set_enc), enc); gtk_box_pack_start(GTK_BOX(enc->tasti), ok, FALSE, FALSE, 0); /* set value from core */ enc_put(enc); gtk_widget_show_all(verbox); gtk_widget_hide_on_delete(tabbola); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(enc->expert), FALSE); return enc; }
static VALUE rg_hide_on_delete(VALUE self) { return CBOOL2RVAL(gtk_widget_hide_on_delete(_SELF(self))); }
G_MODULE_EXPORT gboolean on_fontify_dialog_delete_event(GtkWidget *theWidget, GdkEvent *theEvent, gpointer theUser_data) { return gtk_widget_hide_on_delete(theWidget); }
static gboolean delete_event_cb (GtkWidget *widget, GdkEvent *ev, TrayProvider *tray) { GtkWidget *dialog, *check, *content_area, *label; GtkWidget *quit, *minimize, *cancel, *img; gboolean confirmed, ret_val = TRUE, minimize_to_tray; confirmed = read_entry_bool ("ACTION_CONFIRMED_ON_DELETE", FALSE); minimize_to_tray = read_entry_bool ("MINIMIZE_TO_TRAY", TRUE); if ( confirmed ) { return minimize_to_tray ? gtk_widget_hide_on_delete (widget) : FALSE; } dialog = gtk_dialog_new_with_buttons (_("Minimize to tray?"), NULL, GTK_DIALOG_MODAL, NULL); gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK); minimize = gtk_button_new_with_label (_("Minimize to tray")); img = gtk_image_new_from_stock (GTK_STOCK_GO_DOWN, GTK_ICON_SIZE_BUTTON); gtk_button_set_image (GTK_BUTTON (minimize), img); gtk_widget_show (minimize); gtk_dialog_add_action_widget (GTK_DIALOG (dialog), minimize, GTK_RESPONSE_OK); quit = gtk_button_new_from_stock (GTK_STOCK_QUIT); gtk_widget_show (quit); gtk_dialog_add_action_widget (GTK_DIALOG (dialog), quit, GTK_RESPONSE_CLOSE); cancel = gtk_button_new_from_stock (GTK_STOCK_CANCEL); gtk_widget_show (cancel); gtk_dialog_add_action_widget (GTK_DIALOG (dialog), cancel, GTK_RESPONSE_CANCEL); content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog)); label = gtk_label_new (_("Are you sure you want to quit Parole")); gtk_widget_show (label); gtk_box_pack_start_defaults (GTK_BOX (content_area), label) ; check = gtk_check_button_new_with_mnemonic (_("Remember my choice")); gtk_widget_show (check); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check), FALSE); g_signal_connect (check, "toggled", G_CALLBACK (action_on_hide_confirmed_cb), NULL); gtk_box_pack_start_defaults (GTK_BOX (content_area), check) ; switch ( gtk_dialog_run (GTK_DIALOG (dialog)) ) { case GTK_RESPONSE_OK: { gtk_widget_hide_on_delete (widget); confirmed = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (check)); if ( confirmed ) write_entry_bool ("MINIMIZE_TO_TRAY", TRUE); break; } case GTK_RESPONSE_CLOSE: { confirmed = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (check)); if ( confirmed ) write_entry_bool ("MINIMIZE_TO_TRAY", FALSE); ret_val = FALSE; } break; case GTK_RESPONSE_CANCEL: break; default: break; } gtk_widget_destroy (dialog); return ret_val; }