コード例 #1
0
ファイル: uimon.c プロジェクト: bobsummerwill/VICE
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);
}
コード例 #2
0
ファイル: callback.c プロジェクト: Asher256/gshutdown
/*
 * 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);
}
コード例 #3
0
ファイル: trkproperties.c プロジェクト: fishman/deadbeef
static gboolean
on_progress_delete_event            (GtkWidget       *widget,
                                        GdkEvent        *event,
                                        gpointer         user_data)
{
    progress_aborted = 1;
    return gtk_widget_hide_on_delete (widget);
}
コード例 #4
0
ファイル: xmrsearchbox.c プロジェクト: EmbolismSoil/xmradio
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));
}
コード例 #5
0
ファイル: encoder.cpp プロジェクト: dyne/MuSE
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;
  }
}
コード例 #6
0
ファイル: widget.c プロジェクト: amery/clip-itk
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;
}
コード例 #7
0
/**
   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;
}
コード例 #8
0
ファイル: xmr-indicator-plugin.c プロジェクト: Juson/xmradio
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;
}
コード例 #9
0
ファイル: events.c プロジェクト: K6BSD/SBBSUnstable
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);
}
コード例 #10
0
ファイル: callback.c プロジェクト: Asher256/gshutdown
/* 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);
}
コード例 #11
0
ファイル: events.c プロジェクト: K6BSD/SBBSUnstable
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);
}
コード例 #12
0
ファイル: mca_info_panel.c プロジェクト: rbemmanuel/kwama
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;
}
コード例 #13
0
ファイル: events.c プロジェクト: K6BSD/SBBSUnstable
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))));
}
コード例 #14
0
ファイル: warlockview.c プロジェクト: sproctor/warlock-gtk
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);
}
コード例 #15
0
ファイル: plug-edit.c プロジェクト: goedson/gnotime
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;
}
コード例 #16
0
ファイル: encoder.cpp プロジェクト: dyne/MuSE
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;
}
コード例 #17
0
ファイル: rbgtkwidget.c プロジェクト: adamhooper/ruby-gnome2
static VALUE
rg_hide_on_delete(VALUE self)
{
    return CBOOL2RVAL(gtk_widget_hide_on_delete(_SELF(self)));
}
コード例 #18
0
G_MODULE_EXPORT gboolean on_fontify_dialog_delete_event(GtkWidget *theWidget, GdkEvent  *theEvent, gpointer theUser_data)
{
	return gtk_widget_hide_on_delete(theWidget);
}
コード例 #19
0
ファイル: tray-provider.c プロジェクト: bluesabre/Parole
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;
}