20 #include <libaudgui/libaudgui-gtk.h>
34 if (misc->about_window)
36 gtk_window_present ((GtkWindow *) misc->about_window);
40 const char *
name = header->name;
41 const char * text = header->about_text;
45 name = dgettext (header->domain, name);
46 text = dgettext (header->domain, text);
49 char * title = g_strdup_printf (
_(
"About %s"), name);
50 audgui_simple_message ((GtkWidget * *) & misc->about_window, GTK_MESSAGE_INFO, title, text);
54 static void response_cb (GtkWidget * window,
int response,
const PluginPreferences * p)
56 if (response == GTK_RESPONSE_OK && p->apply)
59 gtk_widget_destroy (window);
62 static void destroy_cb (GtkWidget * window,
const PluginPreferences * p)
72 const PluginPreferences * p = header->prefs;
74 if (misc->config_window)
76 gtk_window_present ((GtkWindow *) misc->config_window);
83 const char *
name = header->name;
85 name = dgettext (header->domain, header->name);
87 char * title = g_strdup_printf (
_(
"%s Settings"), name);
89 GtkWidget * window = p->apply ? gtk_dialog_new_with_buttons (title,
NULL, 0,
90 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OK, GTK_RESPONSE_OK,
NULL)
91 : gtk_dialog_new_with_buttons (title,
NULL, 0, GTK_STOCK_CLOSE,
92 GTK_RESPONSE_CLOSE,
NULL);
96 GtkWidget * content = gtk_dialog_get_content_area ((GtkDialog *) window);
97 GtkWidget *
box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
99 gtk_box_pack_start ((GtkBox *) content, box,
TRUE,
TRUE, 0);
101 g_signal_connect (window,
"response", (GCallback)
response_cb, (
void *) p);
102 g_signal_connect (window,
"destroy", (GCallback)
destroy_cb, (
void *) p);
104 misc->config_window = window;
105 g_signal_connect (window,
"destroy", (GCallback) gtk_widget_destroyed, & misc->config_window);
107 gtk_widget_show_all (window);
114 if (misc->about_window)
115 gtk_widget_destroy (misc->about_window);
116 if (misc->config_window)
117 gtk_widget_destroy (misc->config_window);