static void xtp_config_dialog_show(GtkWidget *dlg, XfceTextPluginData *xtpd) { xpf("xtp_config_dialog_show()"); xtp_toggle(xtpd->tt.chk_ebl, xtpd->tt.enabled); xtp_toggle(xtpd->pp.chk_ebl, xtpd->pp.enabled); switch(xtpd->ll.mode) { MODECASE_1(xtpd->ll,exec) MODECASE_1(xtpd->ll,file) MODECASE_1(xtpd->ll,stat) default: break; } switch(xtpd->tt.mode) { MODECASE_1(xtpd->tt,exec) MODECASE_1(xtpd->tt,file) MODECASE_1(xtpd->tt,stat) default: break; } switch(xtpd->pp.mode) { MODECASE_1(xtpd->pp,exec) MODECASE_1(xtpd->pp,file) MODECASE_1(xtpd->pp,stat) default: break; } gtk_entry_set_text(GTK_ENTRY(xtpd->ll.txt_entry), xtpd->ll.cmd); gtk_entry_set_text(GTK_ENTRY(xtpd->tt.txt_entry), xtpd->tt.cmd); gtk_entry_set_text(GTK_ENTRY(xtpd->pp.txt_entry), xtpd->pp.cmd); xtp_toggle(xtpd->ll.chk_upd, xtpd->ll.update); xtp_toggle(xtpd->tt.chk_upd, xtpd->tt.update); xtp_toggle(xtpd->pp.chk_upd, xtpd->pp.update); gtk_spin_button_set_value(GTK_SPIN_BUTTON(xtpd->ll.spn_upd), xtpd->ll.interval); gtk_spin_button_set_value(GTK_SPIN_BUTTON(xtpd->tt.spn_upd), xtpd->tt.interval); gtk_spin_button_set_value(GTK_SPIN_BUTTON(xtpd->pp.spn_upd), xtpd->pp.interval); xfce_panel_plugin_block_menu(xtpd->plugin); }
void bluetooth_configure (XfcePanelPlugin *plugin, bluetoothPlugin *bluetooth) { GtkWidget *dialog; /* block the plugin menu */ xfce_panel_plugin_block_menu (plugin); /* create the dialog */ dialog = xfce_titled_dialog_new_with_buttons (_("bluetooth Plugin"), GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (plugin))), GTK_DIALOG_DESTROY_WITH_PARENT | GTK_DIALOG_NO_SEPARATOR, GTK_STOCK_HELP, GTK_RESPONSE_HELP, GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL); /* center dialog on the screen */ gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER); /* set dialog icon */ gtk_window_set_icon_name (GTK_WINDOW (dialog), "xfce4-settings"); /* link the dialog to the plugin, so we can destroy it when the plugin * is closed, but the dialog is still open */ g_object_set_data (G_OBJECT (plugin), "dialog", dialog); /* connect the reponse signal to the dialog */ g_signal_connect (G_OBJECT (dialog), "response", G_CALLBACK(bluetooth_configure_response), bluetooth); /* show the entire dialog */ gtk_widget_show (dialog); }
void xfce_configure_cb (XfcePanelPlugin *plugin, MultiloadPlugin *ma) { xfce_panel_plugin_block_menu (plugin); GtkWidget *dialog = multiload_ui_configure_dialog_new(ma, GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (plugin)))); gtk_window_present(GTK_WINDOW(dialog)); }
void quicklauncher_configure(XfcePanelPlugin *plugin, t_quicklauncher *quicklauncher) { t_qck_launcher_opt_dlg* dlg; xfce_panel_plugin_block_menu(plugin); dlg = create_qck_launcher_dlg(); qck_launcher_opt_dlg_set_quicklauncher(quicklauncher); gtk_dialog_run(GTK_DIALOG(dlg->dialog)); xfce_panel_plugin_unblock_menu(plugin); }
void sample_configure (XfcePanelPlugin *plugin, ActiveAppPlugin *sample) { GtkWidget *dialog; GtkWidget *hbox; GtkWidget *tooltip_checkbox; /* block the plugin menu */ xfce_panel_plugin_block_menu (plugin); /* create the dialog */ dialog = xfce_titled_dialog_new_with_buttons (_("Active Application Plugin"), GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (plugin))), GTK_DIALOG_DESTROY_WITH_PARENT | GTK_DIALOG_NO_SEPARATOR, GTK_STOCK_HELP, GTK_RESPONSE_HELP, GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL); /* center dialog on the screen */ gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER); /* set dialog icon */ gtk_window_set_icon_name (GTK_WINDOW (dialog), "xfce4-settings"); /* link the dialog to the plugin, so we can destroy it when the plugin * is closed, but the dialog is still open */ g_object_set_data (G_OBJECT (plugin), "dialog", dialog); tooltip_checkbox = gtk_check_button_new_with_label ("Show tooltips"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (tooltip_checkbox), sample->show_tooltips); gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), tooltip_checkbox, TRUE, TRUE, 6); gtk_widget_show (tooltip_checkbox); /* connect the reponse signal to the dialog */ g_signal_connect (G_OBJECT (dialog), "response", G_CALLBACK(sample_configure_response), sample); g_signal_connect (G_OBJECT (tooltip_checkbox), "toggled", G_CALLBACK(activeapp_tooltip_checkbox_toggled), sample); /* show the entire dialog */ gtk_widget_show (dialog); }
void wckbuttons_configure (XfcePanelPlugin *plugin, WBPlugin *wb) { GtkWidget *dialog; GtkWidget *content_area; GtkWidget *ca; const gchar *name; /* block the plugin menu */ xfce_panel_plugin_block_menu (plugin); /* create the dialog */ name = xfce_panel_plugin_get_display_name (plugin); dialog = xfce_titled_dialog_new_with_buttons (_(name), GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (plugin))), GTK_DIALOG_DESTROY_WITH_PARENT | GTK_DIALOG_NO_SEPARATOR, GTK_STOCK_HELP, GTK_RESPONSE_HELP, GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL); /* center dialog on the screen */ gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER); /* set dialog icon */ gtk_window_set_icon_name (GTK_WINDOW (dialog), "xfce4-settings"); /* link the dialog to the plugin, so we can destroy it when the plugin * is closed, but the dialog is still open */ g_object_set_data (G_OBJECT (plugin), "dialog", dialog); /* connect the reponse signal to the dialog */ g_signal_connect (G_OBJECT (dialog), "response", G_CALLBACK(wckbuttons_configure_response), wb); content_area = gtk_dialog_get_content_area(GTK_DIALOG(dialog) ); ca = build_properties_area (wb, wckbuttons_dialogs_ui, wckbuttons_dialogs_ui_length); if (G_LIKELY (ca != NULL)) gtk_container_add(GTK_CONTAINER (content_area), ca); else DBG("Failed to create content area"); /* show the entire dialog */ gtk_widget_show (dialog); }
static GtkWidget* pcfg_make_empty_dialog(PlacesCfg *cfg) { GtkWidget *dlg; /* we'll return this */ xfce_panel_plugin_block_menu(cfg->plugin); dlg = xfce_titled_dialog_new_with_buttons(_("Places"), NULL, GTK_DIALOG_DESTROY_WITH_PARENT | GTK_DIALOG_NO_SEPARATOR, GTK_STOCK_CLOSE, GTK_RESPONSE_ACCEPT, NULL); gtk_window_set_position(GTK_WINDOW(dlg), GTK_WIN_POS_CENTER); gtk_window_set_icon_name(GTK_WINDOW(dlg), "xfce4-settings"); g_signal_connect(dlg, "response", G_CALLBACK(pcfg_dialog_close_cb), cfg); return dlg; }
static void fortune_fish_plugin_settings(fortune_fish_plugin *fish_plugin) { GtkWidget *dialog, *content_area, *settings; xfce_panel_plugin_block_menu(fish_plugin->plugin); dialog = xfce_titled_dialog_new_with_buttons("Fortune Fish", GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(fish_plugin->plugin))), GTK_DIALOG_DESTROY_WITH_PARENT, "_Close", GTK_RESPONSE_OK, NULL); xfce_titled_dialog_set_subtitle(XFCE_TITLED_DIALOG(dialog), "Settings"); gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER); gtk_window_set_icon_name(GTK_WINDOW(dialog), "fortune-fish"); settings = fortune_fish_settings_new(fish_plugin->fish); content_area = gtk_dialog_get_content_area(GTK_DIALOG(dialog)); gtk_container_add(GTK_CONTAINER(content_area), settings); g_signal_connect_swapped(dialog, "response", G_CALLBACK(fortune_fish_plugin_settings_close), fish_plugin); gtk_widget_show_all(dialog); }
static void xfapplet_applet_load_failed (XfAppletPlugin *xap) { GtkWidget *dialog; GdkScreen *screen; screen = gtk_widget_get_screen (GTK_WIDGET (xap->plugin)); dialog = gtk_message_dialog_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (xap->plugin))), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, _("'%s' could not be loaded."), xap->name); gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), _("An internal error occurred and the applet could not be loaded.")); gtk_window_set_screen (GTK_WINDOW (dialog), screen); gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER); g_signal_connect (dialog, "response", G_CALLBACK (xfapplet_failed_response), xap->plugin); gtk_widget_show (dialog); xfce_panel_plugin_block_menu (xap->plugin); }
void create_options( XfcePanelPlugin *plugin, CPUGraph *base ) { GtkWidget *dlg, *header; GtkBox *vbox, *vbox2; GtkWidget *label; GtkSizeGroup *sg; GtkWidget *Notebook; xfce_panel_plugin_block_menu( plugin ); dlg = gtk_dialog_new_with_buttons( _("CPU Graph Properties"), GTK_WINDOW( gtk_widget_get_toplevel( GTK_WIDGET( plugin ) ) ), GTK_DIALOG_DESTROY_WITH_PARENT | GTK_DIALOG_NO_SEPARATOR, GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL ); g_signal_connect( dlg, "response", G_CALLBACK( response_cb ), base ); gtk_container_set_border_width( GTK_CONTAINER( dlg ), 2 ); header = xfce_create_header( NULL, _("CPU Graph") ); gtk_widget_set_size_request( GTK_BIN( header )->child, -1, 32 ); gtk_container_set_border_width( GTK_CONTAINER( header ), BORDER - 2 ); gtk_widget_show( header ); gtk_box_pack_start( GTK_BOX( GTK_DIALOG( dlg )->vbox ), header, FALSE, TRUE, 0 ); sg = gtk_size_group_new( GTK_SIZE_GROUP_HORIZONTAL ); vbox = create_tab(); setup_update_interval_option( vbox, sg, base ); setup_tracked_core_option( vbox, sg, base ); setup_size_option( vbox, sg, plugin, base ); create_check_box( vbox, sg, _("Use non-linear time-scale"), base->non_linear, change_time_scale, base ); create_check_box( vbox, sg, _("Show frame"), base->has_frame, change_frame, base ); create_check_box( vbox, sg, _("Show border"), base->has_border, change_border, base ); create_check_box( vbox, sg, ngettext( "Show current usage bar", "Show current usage bars", base->nr_cores ), base->has_bars, change_bars, base ); setup_command_option( vbox, sg, base ); create_check_box( vbox, sg, _("Run in terminal"), base->in_terminal, change_in_terminal, base ); create_check_box( vbox, sg, _("Use startup notification"), base->startup_notification, change_startup_notification, base ); vbox2 = create_tab(); setup_color_option( vbox2, sg, base, 1, _("Color 1:"), G_CALLBACK( change_color_1 ) ); setup_color_option( vbox2, sg, base, 2, _("Color 2:"), G_CALLBACK( change_color_2 ) ); setup_color_option( vbox2, sg, base, 3, _("Color 3:"), G_CALLBACK( change_color_3 ) ); setup_color_option( vbox2, sg, base, 0, _("Background:"), G_CALLBACK( change_color_0 ) ); select_active_colors( base ); setup_mode_option( vbox2, sg, base ); setup_color_mode_option( vbox2, sg, base ); Notebook = gtk_notebook_new(); gtk_container_set_border_width( GTK_CONTAINER( Notebook ), BORDER - 2 ); label = gtk_label_new( _("Appearance") ); gtk_notebook_append_page( GTK_NOTEBOOK( Notebook ), GTK_WIDGET( vbox2 ), GTK_WIDGET( label ) ); label = gtk_label_new( _("Advanced") ); gtk_notebook_append_page( GTK_NOTEBOOK( Notebook ), GTK_WIDGET( vbox ), GTK_WIDGET( label ) ); gtk_widget_show( Notebook ); gtk_box_pack_start( GTK_BOX( GTK_DIALOG( dlg )->vbox), GTK_WIDGET( Notebook ), TRUE, TRUE, 0 ); gtk_widget_show( dlg ); }
void lightdash_configure (XfcePanelPlugin *plugin, LightdashPlugin *lightdash) { GtkWidget *dialog; GtkWidget *hbox; GtkWidget *label; GtkWidget *entry; GtkWidget *opacity_slider; GtkWidget *show_desktop_button; GtkWidget *toplevel; GtkWindow *window; window = NULL; toplevel = gtk_widget_get_toplevel (GTK_WIDGET (plugin)); if (gtk_widget_is_toplevel (toplevel)) { window = GTK_WINDOW (toplevel); } xfce_panel_plugin_block_menu (plugin); dialog = xfce_titled_dialog_new_with_buttons (_("lightdash"), window, GTK_DIALOG_DESTROY_WITH_PARENT #if GTK_CHECK_VERSION (3, 0, 0) #else | GTK_DIALOG_NO_SEPARATOR #endif , GTK_STOCK_HELP, GTK_RESPONSE_HELP, GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL); #if GTK_CHECK_VERSION (3, 0, 0) hbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); #else hbox = gtk_hbox_new (FALSE, 0); #endif label = gtk_label_new_with_mnemonic (_("_Title:")); entry = gtk_entry_new (); gtk_entry_set_text (GTK_ENTRY (entry), gtk_label_get_text (GTK_LABEL (lightdash->button_label))); g_signal_connect (G_OBJECT (entry), "changed", G_CALLBACK (lightdash_preferences_entry_changed), lightdash); gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), hbox, TRUE, TRUE, 6); gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (hbox), entry, TRUE, TRUE, 6); gtk_widget_show_all (hbox); #if GTK_CHECK_VERSION (3, 0, 0) hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); #else hbox = gtk_hbox_new (FALSE, 0); #endif opacity_slider = gtk_hscale_new_with_range (0.0, 100.0, 1.0); gtk_scale_set_value_pos (GTK_SCALE (opacity_slider), GTK_POS_RIGHT); gtk_widget_set_size_request (GTK_WIDGET (opacity_slider), 200, -1); gtk_range_set_value (GTK_RANGE (opacity_slider), lightdash->opacity); gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), hbox, TRUE, TRUE, 6); label = gtk_label_new_with_mnemonic (_("Background opacit_y:")); gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (hbox), opacity_slider, TRUE, TRUE, 6); g_signal_connect (G_OBJECT (opacity_slider), "value-changed", G_CALLBACK (lightdash_opacity_slider_changed), lightdash); gtk_widget_show_all (hbox); show_desktop_button = gtk_check_button_new_with_label (_("Show desktop behind dashboard")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (show_desktop_button), lightdash->show_desktop); gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), show_desktop_button, TRUE, TRUE, 6); g_signal_connect (G_OBJECT (show_desktop_button), "toggled", G_CALLBACK (lightdash_show_desktop_button_toggled), lightdash); g_object_set_data (G_OBJECT (plugin), "dialog", dialog); g_signal_connect (G_OBJECT (dialog), "response", G_CALLBACK (lightdash_configure_response), lightdash); gtk_widget_show_all (dialog); }
void net_speed_configure_show(XfcePanelPlugin *plugin, NetSpeedPlugin *net_speed_plugin) { GtkWidget *dialog; GtkWidget *dialog_vbox; GtkWidget *hbox; GtkWidget *label; GtkWidget *combo; GtkWidget *button; /* net speed configure */ NetSpeedConfigure *net_speed_configure = g_new0(NetSpeedConfigure, 1); net_speed_configure->net_speed_plugin = net_speed_plugin; /* dialog */ xfce_panel_plugin_block_menu(net_speed_plugin->plugin); net_speed_configure->dialog = dialog = xfce_titled_dialog_new_with_buttons(_("Network Speed Plugin"), NULL, GTK_DIALOG_NO_SEPARATOR, GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL); xfce_titled_dialog_set_subtitle(XFCE_TITLED_DIALOG(dialog), _("Configuration")); gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER); gtk_window_set_icon_name(GTK_WINDOW(dialog), "xfce4-netspeed-plugin"); gtk_window_set_keep_above(GTK_WINDOW(dialog), TRUE); gtk_window_stick(GTK_WINDOW(dialog)); dialog_vbox = GTK_DIALOG(dialog)->vbox; /* auto-device */ hbox = gtk_hbox_new(FALSE, 3); gtk_container_add(GTK_CONTAINER(dialog_vbox), hbox); gtk_container_set_border_width(GTK_CONTAINER(hbox), 3); net_speed_configure->auto_device_check_button = button = gtk_check_button_new_with_mnemonic(_("Automatically Choose Network Device")); gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), net_speed_plugin->options->device_auto == TRUE); g_signal_connect(G_OBJECT(button), "toggled", G_CALLBACK(net_speed_configure_changed), net_speed_configure); /* device */ hbox = gtk_hbox_new(FALSE, 3); gtk_container_add(GTK_CONTAINER(dialog_vbox), hbox); gtk_container_set_border_width(GTK_CONTAINER(hbox), 3); label = gtk_label_new(_("Network Device:")); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); net_speed_configure->device_combo = combo = gtk_combo_box_new_text(); gtk_box_pack_start(GTK_BOX(hbox), combo, FALSE, TRUE, 0); GList *device, *devices = device_info_list_get(); gint index = 0, sel_index = -1; for (device = devices; device != NULL; device = g_list_next(device)) { gtk_combo_box_append_text(GTK_COMBO_BOX(combo), device->data); if (net_speed_plugin->options->device && !strcmp(device->data, net_speed_plugin->options->device)) { sel_index = index; } index++; } gtk_combo_box_set_active(GTK_COMBO_BOX(combo), sel_index); g_signal_connect(G_OBJECT(combo), "changed", G_CALLBACK(net_speed_configure_changed), net_speed_configure); device_info_list_free(devices); gtk_widget_set_sensitive(net_speed_configure->device_combo, net_speed_plugin->options->device != NULL); /* show frame */ hbox = gtk_hbox_new(FALSE, 3); gtk_container_add(GTK_CONTAINER(dialog_vbox), hbox); gtk_container_set_border_width(GTK_CONTAINER(hbox), 3); net_speed_configure->show_frame_check_button = button = gtk_check_button_new_with_mnemonic(_("Show Frame")); gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), net_speed_plugin->options->show_frame); g_signal_connect(G_OBJECT(button), "toggled", G_CALLBACK(net_speed_configure_changed), net_speed_configure); /* show icon */ hbox = gtk_hbox_new(FALSE, 3); gtk_container_add(GTK_CONTAINER(dialog_vbox), hbox); gtk_container_set_border_width(GTK_CONTAINER(hbox), 3); net_speed_configure->show_icon_check_button = button = gtk_check_button_new_with_mnemonic(_("Show Icon")); gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), net_speed_plugin->options->show_icon); g_signal_connect(G_OBJECT(button), "toggled", G_CALLBACK(net_speed_configure_changed), net_speed_configure); /* show bits */ hbox = gtk_hbox_new(FALSE, 3); gtk_container_add(GTK_CONTAINER(dialog_vbox), hbox); gtk_container_set_border_width(GTK_CONTAINER(hbox), 3); net_speed_configure->show_bits_check_button = button = gtk_check_button_new_with_mnemonic(_("Show Bits Instead of Bytes")); gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), net_speed_plugin->options->show_bits); g_signal_connect(G_OBJECT(button), "toggled", G_CALLBACK(net_speed_configure_changed), net_speed_configure); /* show sum */ hbox = gtk_hbox_new(FALSE, 3); gtk_container_add(GTK_CONTAINER(dialog_vbox), hbox); gtk_container_set_border_width(GTK_CONTAINER(hbox), 3); net_speed_configure->show_sum_check_button = button = gtk_check_button_new_with_mnemonic(_("Show Sum of Download and Upload")); gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), net_speed_plugin->options->show_sum); g_signal_connect(G_OBJECT(button), "toggled", G_CALLBACK(net_speed_configure_changed), net_speed_configure); /* fixed width check button */ hbox = gtk_hbox_new(FALSE, 3); gtk_container_add(GTK_CONTAINER(dialog_vbox), hbox); gtk_container_set_border_width(GTK_CONTAINER(hbox), 3); net_speed_configure->fixed_width_check_button = button = gtk_check_button_new_with_mnemonic(_("Fixed Width")); gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), (gboolean) net_speed_plugin->options->fixed_width); g_signal_connect(G_OBJECT(button), "toggled", G_CALLBACK(net_speed_configure_changed), net_speed_configure); net_speed_configure->fixed_width_spin_button = button = gtk_spin_button_new_with_range(20, 500, 10); gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); gtk_spin_button_set_value(GTK_SPIN_BUTTON(button), (gdouble) net_speed_plugin->options->fixed_width); g_signal_connect(G_OBJECT(button), "value-changed", G_CALLBACK(net_speed_configure_changed), net_speed_configure); g_signal_connect(G_OBJECT(dialog), "response", G_CALLBACK(net_speed_configure_response), net_speed_configure); gtk_widget_show_all(dialog); }
static void power_manager_plugin_configure (XfcePanelPlugin *plugin, PowerManagerPlugin *power_manager_plugin) { GtkWidget *dialog; GtkWidget *grid, *combo, *label; gint show_panel_label; XfconfChannel *channel; GtkListStore *list_store; GtkTreeIter iter, active_iter; GtkCellRenderer *cell; gint i; gchar *options[] = { _("None"), _("Percentage"), _("Remaining time"), _("Percentage and remaining time") }; channel = xfconf_channel_get (XFPM_CHANNEL); /* block the plugin menu */ xfce_panel_plugin_block_menu (plugin); /* create the dialog */ dialog = xfce_titled_dialog_new_with_buttons (_("Power Manager Plugin Settings"), GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (plugin))), GTK_DIALOG_DESTROY_WITH_PARENT, "gtk-help", GTK_RESPONSE_HELP, "gtk-close", GTK_RESPONSE_OK, NULL); gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER); gtk_window_set_icon_name (GTK_WINDOW (dialog), "xfce4-power-manager-settings"); gtk_widget_show (dialog); /* Set up the main grid for all settings */ grid = gtk_grid_new (); gtk_grid_set_row_spacing (GTK_GRID (grid), 6); gtk_grid_set_column_spacing (GTK_GRID (grid), 12); gtk_widget_set_margin_start (grid, 12); gtk_widget_set_margin_end (grid, 12); gtk_widget_set_margin_top (grid, 12); gtk_widget_set_margin_bottom (grid, 12); gtk_container_add_with_properties (GTK_CONTAINER (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), grid, "expand", TRUE, "fill", TRUE, NULL); /* show-panel-label setting */ label = gtk_label_new (_("Show label:")); gtk_label_set_xalign (GTK_LABEL (label), 0.0); gtk_grid_attach (GTK_GRID (grid), GTK_WIDGET (label), 0, 0, 1, 1); show_panel_label = xfconf_channel_get_int (channel, XFPM_PROPERTIES_PREFIX SHOW_PANEL_LABEL, -1); list_store = gtk_list_store_new (N_COLUMNS, G_TYPE_INT, G_TYPE_STRING); for (i = 0; i < 4; i++) { gtk_list_store_append (list_store, &iter); gtk_list_store_set (list_store, &iter, COLUMN_INT, i, COLUMN_STRING, options[i], -1); if (i == show_panel_label) active_iter = iter; } combo = gtk_combo_box_new_with_model (GTK_TREE_MODEL (list_store)); cell = gtk_cell_renderer_text_new (); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combo), cell, TRUE ); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combo), cell, "text", COLUMN_STRING, NULL); gtk_combo_box_set_id_column (GTK_COMBO_BOX (combo), COLUMN_STRING); gtk_combo_box_set_active_iter (GTK_COMBO_BOX (combo), &active_iter); gtk_grid_attach (GTK_GRID (grid), GTK_WIDGET (combo), 1, 0, 1, 1); g_signal_connect (G_OBJECT (combo), "changed", G_CALLBACK (power_manager_plugin_combo_changed), channel); g_signal_connect (G_OBJECT (channel), "property-changed::" XFPM_PROPERTIES_PREFIX SHOW_PANEL_LABEL, G_CALLBACK (power_manager_plugin_panel_label_changed), combo); /* link the dialog to the plugin, so we can destroy it when the plugin * is closed, but the dialog is still open */ g_object_set_data (G_OBJECT (plugin), "dialog", dialog); g_signal_connect (G_OBJECT (dialog), "response", G_CALLBACK(power_manager_plugin_configure_response), power_manager_plugin); gtk_widget_show_all (grid); }
static void time_out_configure (XfcePanelPlugin *plugin, TimeOutPlugin *time_out) { GtkWidget *dialog; GtkWidget *framebox; GtkWidget *timebin; GtkWidget *behaviourbin; GtkWidget *appearancebin; GtkWidget *table; GtkWidget *vbox; GtkWidget *label; GtkWidget *spin; GtkWidget *checkbutton; g_return_if_fail (plugin != NULL); g_return_if_fail (time_out != NULL); /* Pause break timer for the time we're configuring */ if (G_LIKELY (time_out_countdown_get_running (time_out->break_countdown))) time_out_countdown_pause (time_out->break_countdown); /* Block plugin context menu */ xfce_panel_plugin_block_menu (plugin); /* Create properties dialog */ dialog = xfce_titled_dialog_new_with_buttons (_("Time Out"), GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (plugin))), GTK_DIALOG_DESTROY_WITH_PARENT | GTK_DIALOG_NO_SEPARATOR, GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL); /* Set dialog property */ g_object_set_data (G_OBJECT (plugin), "dialog", dialog); /* Be notified when the properties dialog is closed */ g_signal_connect (dialog, "response", G_CALLBACK (time_out_end_configure), time_out); /* Basic dialog window setup */ gtk_window_set_icon_name (GTK_WINDOW (dialog), "xfce4-time-out-plugin"); gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER); /* Create time settings section */ framebox = xfce_gtk_frame_box_new (_("Time settings"), &timebin); gtk_container_set_border_width (GTK_CONTAINER (framebox), 6); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), framebox, TRUE, TRUE, 0); gtk_widget_show (framebox); /* Create time settings table */ table = gtk_table_new (3, 3, FALSE); gtk_table_set_row_spacings (GTK_TABLE (table), 6); gtk_table_set_col_spacings (GTK_TABLE (table), 12); gtk_container_add (GTK_CONTAINER (timebin), table); gtk_widget_show (table); /* Create the labels for the minutes and seconds spins */ label = gtk_label_new (_("Minutes")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_table_attach (GTK_TABLE (table), label, 1, 2, 0, 1, GTK_SHRINK, GTK_FILL, 1.0, 0.5); gtk_widget_show (label); label = gtk_label_new (_("Seconds")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_table_attach (GTK_TABLE (table), label, 2, 3, 0, 1, GTK_SHRINK, GTK_FILL, 1.0, 0.5); gtk_widget_show (label); /* Create break countdown time label */ label = gtk_label_new (_("Time between breaks:")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 1, 2, GTK_FILL, GTK_FILL, 1.0, 0.5); gtk_widget_show (label); /* Create break countdown time minute spin */ spin = gtk_spin_button_new_with_range (1, 24 * 60, 1); gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin), time_out->break_countdown_seconds / 60); gtk_table_attach (GTK_TABLE (table), spin, 1, 2, 1, 2, GTK_EXPAND | GTK_FILL, GTK_FILL, 0.0, 0.5); gtk_widget_show (spin); /* Store reference on the spin button in the plugin */ g_object_set_data (G_OBJECT (time_out->plugin), "break-countdown-minutes-spin", spin); /* Create break countdown time minute spin */ spin = gtk_spin_button_new_with_range (0, 59, 1); gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin), time_out->break_countdown_seconds % 60); gtk_table_attach (GTK_TABLE (table), spin, 2, 3, 1, 2, GTK_EXPAND | GTK_FILL, GTK_FILL, 0.0, 0.5); gtk_widget_show (spin); /* Store reference on the spin button in the plugin */ g_object_set_data (G_OBJECT (time_out->plugin), "break-countdown-seconds-spin", spin); /* Create lock countdown time label */ label = gtk_label_new (_("Break length:")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 2, 3, GTK_FILL, GTK_FILL, 1.0, 0.5); gtk_widget_show (label); /* Create lock countdown time spins */ spin = gtk_spin_button_new_with_range (0, 24 * 60, 1); gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin), time_out->lock_countdown_seconds / 60); g_signal_connect (spin, "value-changed", G_CALLBACK (time_out_lock_countdown_minutes_changed), time_out); gtk_table_attach (GTK_TABLE (table), spin, 1, 2, 2, 3, GTK_EXPAND | GTK_FILL, GTK_FILL, 0.0, 0.5); gtk_widget_show (spin); spin = gtk_spin_button_new_with_range (0, 59, 1); gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin), time_out->lock_countdown_seconds % 60); g_signal_connect (spin, "value-changed", G_CALLBACK (time_out_lock_countdown_seconds_changed), time_out); gtk_table_attach (GTK_TABLE (table), spin, 2, 3, 2, 3, GTK_EXPAND | GTK_FILL, GTK_FILL, 0.0, 0.5); gtk_widget_show (spin); /* Create postpone countdown time label */ label = gtk_label_new (_("Postpone length:")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 3, 4, GTK_FILL, GTK_FILL, 1.0, 0.5); gtk_widget_show (label); /* Create postpone countdown time spins */ spin = gtk_spin_button_new_with_range (0, 24 * 60, 1); gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin), time_out->postpone_countdown_seconds / 60); g_signal_connect (spin, "value-changed", G_CALLBACK (time_out_postpone_countdown_minutes_changed), time_out); gtk_table_attach (GTK_TABLE (table), spin, 1, 2, 3, 4, GTK_EXPAND | GTK_FILL, GTK_FILL, 0.0, 0.5); gtk_widget_show (spin); spin = gtk_spin_button_new_with_range (0, 59, 1); gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin), time_out->postpone_countdown_seconds % 60); g_signal_connect (spin, "value-changed", G_CALLBACK (time_out_postpone_countdown_seconds_changed), time_out); gtk_table_attach (GTK_TABLE (table), spin, 2, 3, 3, 4, GTK_EXPAND | GTK_FILL, GTK_FILL, 0.0, 0.5); gtk_widget_show (spin); /* Create behaviour section */ framebox = xfce_gtk_frame_box_new (_("Behaviour"), &behaviourbin); gtk_container_set_border_width (GTK_CONTAINER (framebox), 6); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), framebox, TRUE, TRUE, 0); gtk_widget_show (framebox); /* Create behaviour box */ vbox = gtk_vbox_new (FALSE, 6); gtk_container_add (GTK_CONTAINER (behaviourbin), vbox); gtk_widget_show (vbox); /* Create postpone check button */ checkbutton = gtk_check_button_new_with_label (_("Allow postpone")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton), time_out->allow_postpone); g_signal_connect (checkbutton, "toggled", G_CALLBACK (time_out_allow_postpone_toggled), time_out); gtk_container_add (GTK_CONTAINER (vbox), checkbutton); gtk_widget_show (checkbutton); /* Create resume check button */ checkbutton = gtk_check_button_new_with_label (_("Resume automatically")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton), time_out->auto_resume); g_signal_connect (checkbutton, "toggled", G_CALLBACK (time_out_auto_resume_toggled), time_out); gtk_container_add (GTK_CONTAINER (vbox), checkbutton); gtk_widget_show (checkbutton); /* Create appearance section */ framebox = xfce_gtk_frame_box_new (_("Appearance"), &appearancebin); gtk_container_set_border_width (GTK_CONTAINER (framebox), 6); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), framebox, TRUE, TRUE, 0); gtk_widget_show (framebox); /* Create appearance box */ vbox = gtk_vbox_new (FALSE, 6); gtk_container_add (GTK_CONTAINER (appearancebin), vbox); gtk_widget_show (vbox); /* Create note label */ label = gtk_label_new(_("Note: Icon and time cannot be hidden simultaneously.")); gtk_container_add (GTK_CONTAINER (vbox), label); gtk_widget_show(label); /* Create display icon check button */ checkbutton = gtk_check_button_new_with_label (_("Display icon")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton), time_out->display_icon); g_signal_connect (checkbutton, "toggled", G_CALLBACK (time_out_display_icon_toggled), time_out); gtk_container_add (GTK_CONTAINER (vbox), checkbutton); gtk_widget_show (checkbutton); /* Create display time check button */ checkbutton = gtk_check_button_new_with_label (_("Display remaining time in the panel")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton), time_out->display_time); g_signal_connect (checkbutton, "toggled", G_CALLBACK (time_out_display_time_toggled), time_out); gtk_container_add (GTK_CONTAINER (vbox), checkbutton); gtk_widget_show (checkbutton); /* Create display hours check button */ checkbutton = gtk_check_button_new_with_label (_("Display hours")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton), time_out->display_hours); g_signal_connect (checkbutton, "toggled", G_CALLBACK (time_out_display_hours_toggled), time_out); gtk_container_add (GTK_CONTAINER (vbox), checkbutton); gtk_widget_show (checkbutton); /* Create display seconds check button */ checkbutton = gtk_check_button_new_with_label (_("Display seconds")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton), time_out->display_seconds); g_signal_connect (checkbutton, "toggled", G_CALLBACK (time_out_display_seconds_toggled), time_out); gtk_container_add (GTK_CONTAINER (vbox), checkbutton); gtk_widget_show (checkbutton); /* Show the entire dialog */ gtk_widget_show (dialog); }
static void screenshot_properties_dialog (XfcePanelPlugin *plugin, ScreenshotData *sd) { GtkWidget *dlg, *header, *vbox, *hbox1, *hbox2, *label1, *label2, *cb1, *cb2; GtkAdjustment *adjustment; GtkWidget *window_delay_spinner, *screenshot_delay_spinner; xfce_panel_plugin_block_menu (plugin); dlg = gtk_dialog_new_with_buttons (_("Properties"), GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (plugin))), GTK_DIALOG_DESTROY_WITH_PARENT | GTK_DIALOG_NO_SEPARATOR, GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL); g_object_set_data (G_OBJECT (plugin), "dialog", dlg); gtk_window_set_position (GTK_WINDOW (dlg), GTK_WIN_POS_CENTER); g_signal_connect (dlg, "response", G_CALLBACK (screenshot_dialog_response), sd); gtk_container_set_border_width (GTK_CONTAINER (dlg), 2); header = xfce_create_header (NULL, _("Screenshots")); gtk_widget_set_size_request (GTK_BIN (header)->child, 200, 32); gtk_container_set_border_width (GTK_CONTAINER (header), 6); gtk_widget_show (header); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dlg)->vbox), header, FALSE, TRUE, 0); vbox = gtk_vbox_new (FALSE, 8); gtk_container_set_border_width (GTK_CONTAINER (vbox), 6); gtk_widget_show (vbox); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dlg)->vbox), vbox, TRUE, TRUE, 0); cb1 = gtk_check_button_new_with_mnemonic (_("Ask for _filename")); gtk_widget_show (cb1); gtk_box_pack_start (GTK_BOX (vbox), cb1, FALSE, FALSE, 0); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (cb1), sd->ask_for_file); g_signal_connect (cb1, "toggled", G_CALLBACK (ask_for_file_toggled), sd); cb2 = gtk_check_button_new_with_mnemonic (_("Always take shot of the whole screen")); gtk_widget_show (cb2); gtk_box_pack_start (GTK_BOX (vbox), cb2, FALSE, FALSE, 0); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (cb2), sd->whole_screen); g_signal_connect (cb2, "toggled", G_CALLBACK (whole_screen_toggled), sd); /* Window selection delay */ hbox1 = gtk_hbox_new(FALSE, 8); gtk_widget_show(hbox1); gtk_box_pack_start (GTK_BOX (vbox), hbox1, FALSE, FALSE, 0); window_delay_spinner = gtk_spin_button_new_with_range(0.0, 60.0, 1.0); gtk_spin_button_set_value(GTK_SPIN_BUTTON(window_delay_spinner), sd->window_delay); gtk_widget_show(window_delay_spinner); gtk_box_pack_start (GTK_BOX (hbox1), window_delay_spinner, FALSE, FALSE, 0); label1 = gtk_label_new_with_mnemonic(_("Window selection delay")); gtk_widget_show(label1); gtk_box_pack_start (GTK_BOX (hbox1), label1, FALSE, FALSE, 0); g_signal_connect(window_delay_spinner, "value-changed", G_CALLBACK(window_delay_spinner_changed), sd); /* Screenshot delay */ hbox2 = gtk_hbox_new(FALSE, 8); gtk_widget_show(hbox2); gtk_box_pack_start (GTK_BOX (vbox), hbox2, FALSE, FALSE, 0); screenshot_delay_spinner = gtk_spin_button_new_with_range(0.0, 60.0, 1.0); gtk_spin_button_set_value(GTK_SPIN_BUTTON(screenshot_delay_spinner), sd->screenshot_delay); gtk_widget_show(screenshot_delay_spinner); gtk_box_pack_start (GTK_BOX (hbox2), screenshot_delay_spinner, FALSE, FALSE, 0); label2 = gtk_label_new_with_mnemonic(_("Screenshot delay")); gtk_widget_show(label2); gtk_box_pack_start (GTK_BOX (hbox2), label2, FALSE, FALSE, 0); g_signal_connect(screenshot_delay_spinner, "value-changed", G_CALLBACK(screenshot_delay_spinner_changed), sd); gtk_widget_show (dlg); }