[goobox] message and error dialogs: use the standard gtk+ dialog
- From: Paolo Bacchilega <paobac src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [goobox] message and error dialogs: use the standard gtk+ dialog
- Date: Sat, 29 Dec 2018 14:20:39 +0000 (UTC)
commit 1ddde991b281fdda9d36e60d7ed94a482005497d
Author: Paolo Bacchilega <paobac src gnome org>
Date: Sat Dec 29 11:11:06 2018 +0100
message and error dialogs: use the standard gtk+ dialog
data/org.gnome.Goobox.gschema.xml | 4 -
src/dlg-extract.c | 13 +-
src/dlg-ripper.c | 20 +--
src/goo-application.c | 13 +-
src/goo-window.c | 19 ++-
src/goobox.gresource.xml | 1 -
src/gtk-utils.c | 307 ++++++++++++++------------------------
src/gtk-utils.h | 113 ++++++--------
src/preferences.h | 1 -
src/ui/message-dialog.ui | 103 -------------
10 files changed, 196 insertions(+), 398 deletions(-)
---
diff --git a/data/org.gnome.Goobox.gschema.xml b/data/org.gnome.Goobox.gschema.xml
index e7a2c1b..2e98066 100644
--- a/data/org.gnome.Goobox.gschema.xml
+++ b/data/org.gnome.Goobox.gschema.xml
@@ -119,10 +119,6 @@
<summary>Save the playlist</summary>
<description>Save the playlist of the extracted tracks.</description>
</key>
- <key name="view-destination" type="b">
- <default>false</default>
- <summary>View the destination</summary>
- </key>
</schema>
<schema id="org.gnome.Goobox.Encoder" path="/org/gnome/goobox/encoder/" gettext-domain="goobox">
diff --git a/src/dlg-extract.c b/src/dlg-extract.c
index 347d90b..43de2f3 100644
--- a/src/dlg-extract.c
+++ b/src/dlg-extract.c
@@ -129,13 +129,12 @@ dlg_extract_ask (GooWindow *window)
FLAC_ENCODER,
WAVE_ENCODER);
- d = _gtk_message_dialog_new (GTK_WINDOW (window),
- GTK_DIALOG_MODAL,
- _GTK_ICON_NAME_DIALOG_ERROR,
- _("No encoder available."),
- msg,
- _GTK_LABEL_OK, GTK_RESPONSE_OK,
- NULL);
+ d = _gtk_error_dialog_new (GTK_WINDOW (window),
+ GTK_DIALOG_MODAL,
+ NULL,
+ _("No encoder available."),
+ "%s",
+ msg);
g_free (msg);
g_signal_connect (G_OBJECT (d), "response",
diff --git a/src/dlg-ripper.c b/src/dlg-ripper.c
index c92fd5b..46825b4 100644
--- a/src/dlg-ripper.c
+++ b/src/dlg-ripper.c
@@ -38,6 +38,7 @@
#define UPDATE_DELAY 400
#define BUFFER_SIZE 1024
#define GET_WIDGET(x) _gtk_builder_get_widget (data->builder, (x))
+#define _GTK_RESPONSE_VIEW 10
typedef struct {
@@ -446,14 +447,14 @@ get_destination_folder (DialogData *data,
static void
done_dialog_response_cb (GtkDialog *dialog,
- int button_number,
+ int response,
gpointer userdata)
{
DialogData *data = (DialogData*) userdata;
gtk_widget_destroy (GTK_WIDGET (dialog));
- if ((button_number == GTK_RESPONSE_OK) && g_settings_get_boolean (data->settings_ripper,
PREF_RIPPER_VIEW_DISTINATION)) {
+ if (response == _GTK_RESPONSE_VIEW) {
GFile *folder;
GError *error = NULL;
@@ -467,6 +468,7 @@ done_dialog_response_cb (GtkDialog *dialog,
g_free (uri);
}
+ else
_gtk_error_dialog_from_gerror_run (GTK_WINDOW (data->window), _("Could not display
the destination folder"), &error);
g_object_unref (folder);
@@ -590,13 +592,13 @@ rip_current_track (DialogData *data)
data->ripping = FALSE;
gtk_widget_hide (data->dialog);
- d = _gtk_ok_dialog_with_checkbutton_new (GTK_WINDOW (data->window),
- GTK_DIALOG_MODAL,
- _("Tracks extracted successfully"),
- _GTK_LABEL_OK,
- _("_View destination folder"),
- data->settings_ripper,
- PREF_RIPPER_VIEW_DISTINATION);
+ d = _gtk_message_dialog_new (GTK_WINDOW (data->window),
+ GTK_DIALOG_MODAL,
+ _("Tracks extracted successfully"),
+ NULL,
+ _GTK_LABEL_CLOSE, GTK_RESPONSE_CLOSE,
+ _("_View"), _GTK_RESPONSE_VIEW,
+ NULL);
g_signal_connect (G_OBJECT (d), "response",
G_CALLBACK (done_dialog_response_cb),
diff --git a/src/goo-application.c b/src/goo-application.c
index 15a1bc3..92fb623 100644
--- a/src/goo-application.c
+++ b/src/goo-application.c
@@ -197,13 +197,12 @@ goo_application_command_line (GApplication *application,
if (! required_gstreamer_plugins_available ()) {
GtkWidget *d;
- d = _gtk_message_dialog_new (NULL,
- 0,
- _GTK_ICON_NAME_DIALOG_ERROR,
- _("Cannot start the CD player"),
- _("In order to read CDs you have to install the GStreamer base
plugins"),
- _GTK_LABEL_OK, GTK_RESPONSE_OK,
- NULL);
+ d = _gtk_error_dialog_new (NULL,
+ 0,
+ NULL,
+ _("Cannot start the CD player"),
+ "%s",
+ _("In order to read CDs you have to install the GStreamer base
plugins"));
g_signal_connect_swapped (G_OBJECT (d), "response",
G_CALLBACK (gtk_widget_destroy),
d);
diff --git a/src/goo-window.c b/src/goo-window.c
index 3f5548a..8152922 100644
--- a/src/goo-window.c
+++ b/src/goo-window.c
@@ -2879,13 +2879,18 @@ goo_window_search_cover_on_internet (GooWindow *window)
debug (DEBUG_INFO, "SEARCH ON INTERNET\n");
if ((window->priv->album->title == NULL) || (window->priv->album->artist == NULL)) {
- _gtk_message_dialog_new (GTK_WINDOW (window),
- GTK_DIALOG_MODAL,
- _GTK_ICON_NAME_DIALOG_ERROR,
- _("Could not search for a cover on Internet"),
- _("You have to enter the artist and album names in order to find the
album cover."),
- _GTK_LABEL_CLOSE, GTK_RESPONSE_CLOSE,
- NULL);
+ GtkWidget *d;
+
+ d = _gtk_error_dialog_new (GTK_WINDOW (window),
+ GTK_DIALOG_MODAL,
+ NULL,
+ _("Could not search for a cover on Internet"),
+ "%s",
+ _("You have to enter the artist and album names in order to find
the album cover."));
+ g_signal_connect (G_OBJECT (d), "response",
+ G_CALLBACK (gtk_widget_destroy),
+ NULL);
+ gtk_widget_show (d);
return;
}
diff --git a/src/goobox.gresource.xml b/src/goobox.gresource.xml
index 2efa2fa..5bdae2f 100644
--- a/src/goobox.gresource.xml
+++ b/src/goobox.gresource.xml
@@ -7,7 +7,6 @@
<file compressed="true">ui/gears-menu.ui</file>
<file compressed="true">ui/goobox.css</file>
<file compressed="true">ui/menus.ui</file>
- <file compressed="true">ui/message-dialog.ui</file>
<file compressed="true">ui/preferences.ui</file>
<file compressed="true">ui/properties.ui</file>
<file compressed="true">ui/ripper.ui</file>
diff --git a/src/gtk-utils.c b/src/gtk-utils.c
index 0c0dfbe..2645e70 100644
--- a/src/gtk-utils.c
+++ b/src/gtk-utils.c
@@ -31,67 +31,30 @@
GtkWidget *
-_gtk_message_dialog_new (GtkWindow *parent,
- GtkDialogFlags flags,
- const char *icon_name,
- const char *message,
- const char *secondary_message,
- const char *first_button_text,
+_gtk_message_dialog_new (GtkWindow *parent,
+ GtkDialogFlags flags,
+ const char *message,
+ const char *secondary_message,
+ const gchar *first_button_text,
...)
{
- GtkBuilder *builder;
GtkWidget *dialog;
- GtkWidget *label;
va_list args;
const gchar *text;
int response_id;
- char *markup_text;
- builder = _gtk_builder_new_from_resource ("message-dialog.ui");
- dialog = _gtk_builder_get_widget (builder, "message_dialog");
- gtk_window_set_transient_for (GTK_WINDOW (dialog), parent);
- gtk_window_set_modal (GTK_WINDOW (dialog), (flags & GTK_DIALOG_MODAL));
- gtk_window_set_destroy_with_parent (GTK_WINDOW (dialog), (flags & GTK_DIALOG_DESTROY_WITH_PARENT));
- g_object_set_data_full (G_OBJECT (dialog), "builder", builder, g_object_unref);
+ dialog = gtk_message_dialog_new (parent,
+ flags,
+ GTK_MESSAGE_OTHER,
+ GTK_BUTTONS_NONE,
+ "%s", message);
+
+ if (secondary_message != NULL)
+ gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), "%s",
secondary_message);
if (flags & GTK_DIALOG_MODAL)
_gtk_dialog_add_to_window_group (GTK_DIALOG (dialog));
- /* set the icon */
-
- gtk_image_set_from_icon_name (GTK_IMAGE (_gtk_builder_get_widget (builder, "icon_image")),
- icon_name,
- GTK_ICON_SIZE_DIALOG);
-
- /* set the message */
-
- label = _gtk_builder_get_widget (builder, "message_label");
-
- if (message != NULL) {
- char *escaped_message;
-
- escaped_message = g_markup_escape_text (message, -1);
- if (secondary_message != NULL) {
- char *escaped_secondary_message;
-
- escaped_secondary_message = g_markup_escape_text (secondary_message, -1);
- markup_text = g_strdup_printf ("<span weight=\"bold\"
size=\"larger\">%s</span>\n\n%s",
- escaped_message,
- escaped_secondary_message);
-
- g_free (escaped_secondary_message);
- }
- else
- markup_text = g_strdup_printf ("<span weight=\"bold\" size=\"larger\">%s</span>",
escaped_message);
-
- g_free (escaped_message);
- }
- else
- markup_text = g_markup_escape_text (secondary_message, -1);
-
- gtk_label_set_markup (GTK_LABEL (label), markup_text);
- g_free (markup_text);
-
/* add the buttons */
if (first_button_text == NULL)
@@ -117,74 +80,95 @@ _gtk_message_dialog_new (GtkWindow *parent,
}
-/* -- _gtk_ok_dialog_with_checkbutton_new -- */
+GtkWidget *
+_gtk_error_dialog_new (GtkWindow *parent,
+ GtkDialogFlags flags,
+ GList *row_output,
+ const char *primary_text,
+ const char *secondary_text_format,
+ ...)
+{
+ GtkWidget *dialog;
+ dialog = gtk_message_dialog_new (parent,
+ flags,
+ GTK_MESSAGE_ERROR,
+ GTK_BUTTONS_CLOSE,
+ "%s", primary_text);
+ gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_CLOSE);
-typedef struct {
- GSettings *settings;
- char *key;
-} DialogWithButtonData;
+ if (flags & GTK_DIALOG_MODAL)
+ _gtk_dialog_add_to_window_group (GTK_DIALOG (dialog));
+ /* label */
-static void
-dialog_with_button_data_free (DialogWithButtonData *data)
-{
- _g_object_unref (data->settings);
- g_free (data->key);
- g_free (data);
-}
+ if (secondary_text_format != NULL) {
+ va_list args;
+ char *secondary_message;
+ va_start (args, secondary_text_format);
+ secondary_message = g_strdup_vprintf (secondary_text_format, args);
+ va_end (args);
-static void
-ok__check_button_toggled_cb (GtkToggleButton *button,
- DialogWithButtonData *data)
-{
- g_settings_set_boolean (data->settings, data->key, gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON
(button)));
-}
+ gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), "%s",
secondary_message);
+ g_free (secondary_message);
+ }
-GtkWidget*
-_gtk_ok_dialog_with_checkbutton_new (GtkWindow *parent,
- GtkDialogFlags flags,
- const char *message,
- const char *ok_button_text,
- const char *check_button_label,
- GSettings *settings,
- const char *key)
-{
- GtkWidget *d;
- GtkBuilder *builder;
- GtkWidget *check_button;
- DialogWithButtonData *data;
-
- d = _gtk_message_dialog_new (parent,
- flags,
- _GTK_ICON_NAME_DIALOG_INFO,
- message,
- NULL,
- ok_button_text, GTK_RESPONSE_OK,
- NULL);
- gtk_dialog_set_default_response (GTK_DIALOG (d), GTK_RESPONSE_OK);
-
- /* setup the checkbutton */
-
- builder = g_object_get_data (G_OBJECT (d), "builder");
- check_button = _gtk_builder_get_widget(builder, "message_checkbutton");
- gtk_container_add (GTK_CONTAINER (check_button), gtk_label_new_with_mnemonic (check_button_label));
- gtk_widget_show_all (check_button);
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button), g_settings_get_boolean (settings,
key));
-
- data = g_new0 (DialogWithButtonData, 1);
- data->settings = g_object_ref (settings);
- data->key = g_strdup (key);
- g_object_set_data_full (G_OBJECT (d), "settings-data", data, (GDestroyNotify)
dialog_with_button_data_free);
-
- g_signal_connect (G_OBJECT (check_button),
- "toggled",
- G_CALLBACK (ok__check_button_toggled_cb),
- data);
-
- return d;
+ /* output */
+
+ if ((row_output != NULL) && (secondary_text_format == NULL)) {
+ GtkWidget *output_box;
+ GtkWidget *label;
+ GtkWidget *scrolled_window;
+ GtkWidget *text_view;
+ GtkTextBuffer *text_buffer;
+ GtkTextIter iter;
+ GList *scan;
+
+ output_box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 2);
+ gtk_box_pack_end (GTK_BOX (gtk_message_dialog_get_message_area (GTK_MESSAGE_DIALOG (dialog))),
+ output_box, TRUE, TRUE, 0);
+
+ label = gtk_label_new_with_mnemonic (_("C_ommand Line Output:"));
+ gtk_box_pack_start (GTK_BOX (output_box), label, FALSE, FALSE, 0);
+
+ scrolled_window = g_object_new (GTK_TYPE_SCROLLED_WINDOW,
+ "shadow-type", GTK_SHADOW_IN,
+ "width-request", 450,
+ "height-request", 200,
+ NULL);
+ gtk_box_pack_start (GTK_BOX (output_box), scrolled_window, TRUE, TRUE, 0);
+
+ text_view = gtk_text_view_new ();
+ gtk_label_set_mnemonic_widget (GTK_LABEL (label), text_view);
+ gtk_container_add (GTK_CONTAINER (scrolled_window), text_view);
+
+ text_buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (text_view));
+ gtk_text_buffer_create_tag (text_buffer, "monospace",
+ "family", "monospace",
+ NULL);
+ gtk_text_buffer_get_iter_at_offset (text_buffer, &iter, 0);
+ for (scan = row_output; scan; scan = scan->next) {
+ char *line = scan->data;
+ char *utf8_line;
+ gsize bytes_written;
+
+ utf8_line = g_locale_to_utf8 (line, -1, NULL, &bytes_written, NULL);
+ gtk_text_buffer_insert_with_tags_by_name (text_buffer,
+ &iter,
+ utf8_line,
+ bytes_written,
+ "monospace", NULL);
+ g_free (utf8_line);
+
+ gtk_text_buffer_insert (text_buffer, &iter, "\n", 1);
+ }
+
+ gtk_widget_show_all (output_box);
+ }
+
+ return dialog;
}
@@ -197,13 +181,12 @@ _gtk_error_dialog_from_gerror_run (GtkWindow *parent,
g_return_if_fail (*gerror != NULL);
- d = _gtk_message_dialog_new (parent,
- GTK_DIALOG_DESTROY_WITH_PARENT,
- _GTK_ICON_NAME_DIALOG_ERROR,
- title,
- (*gerror)->message,
- _GTK_LABEL_OK, GTK_RESPONSE_OK,
- NULL);
+ d = _gtk_error_dialog_new (parent,
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ NULL,
+ title,
+ "%s",
+ (*gerror)->message);
gtk_dialog_run (GTK_DIALOG (d));
gtk_widget_destroy (d);
@@ -227,13 +210,12 @@ _gtk_error_dialog_from_gerror_show (GtkWindow *parent,
{
GtkWidget *d;
- d = _gtk_message_dialog_new (parent,
- GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
- _GTK_ICON_NAME_DIALOG_ERROR,
- title,
- (gerror != NULL) ? (*gerror)->message : NULL,
- _GTK_LABEL_OK, GTK_RESPONSE_OK,
- NULL);
+ d = _gtk_error_dialog_new (parent,
+ GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
+ NULL,
+ title,
+ (gerror != NULL) ? "%s" : NULL,
+ (*gerror)->message);
g_signal_connect (d, "response", G_CALLBACK (error_dialog_response_cb), NULL);
gtk_window_present (GTK_WINDOW (d));
@@ -243,67 +225,6 @@ _gtk_error_dialog_from_gerror_show (GtkWindow *parent,
}
-
-void
-_gtk_error_dialog_run (GtkWindow *parent,
- const gchar *format,
- ...)
-{
- GtkWidget *d;
- char *message;
- va_list args;
-
- va_start (args, format);
- message = g_strdup_vprintf (format, args);
- va_end (args);
-
- d = _gtk_message_dialog_new (parent,
- GTK_DIALOG_MODAL,
- _GTK_ICON_NAME_DIALOG_ERROR,
- message,
- NULL,
- _GTK_LABEL_CLOSE, GTK_RESPONSE_CANCEL,
- NULL);
- g_free (message);
-
- g_signal_connect (G_OBJECT (d), "response",
- G_CALLBACK (gtk_widget_destroy),
- NULL);
-
- gtk_widget_show (d);
-}
-
-
-void
-_gtk_info_dialog_run (GtkWindow *parent,
- const gchar *format,
- ...)
-{
- GtkWidget *d;
- char *message;
- va_list args;
-
- va_start (args, format);
- message = g_strdup_vprintf (format, args);
- va_end (args);
-
- d = _gtk_message_dialog_new (parent,
- GTK_DIALOG_MODAL,
- _GTK_ICON_NAME_DIALOG_INFO,
- message,
- NULL,
- _GTK_LABEL_CLOSE, GTK_RESPONSE_CANCEL,
- NULL);
- g_free (message);
-
- g_signal_connect (G_OBJECT (d), "response",
- G_CALLBACK (gtk_widget_destroy),
- NULL);
-
- gtk_widget_show (d);
-}
-
-
void
_gtk_dialog_add_to_window_group (GtkDialog *dialog)
{
@@ -494,21 +415,17 @@ show_help_dialog (GtkWindow *parent,
if (! gtk_show_uri_on_window (parent, uri, GDK_CURRENT_TIME, &error)) {
GtkWidget *dialog;
- dialog = _gtk_message_dialog_new (parent,
- GTK_DIALOG_DESTROY_WITH_PARENT,
- _GTK_ICON_NAME_DIALOG_ERROR,
- _("Could not display help"),
- error->message,
- _GTK_LABEL_OK, GTK_RESPONSE_OK,
- NULL);
- gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK);
+ dialog = _gtk_error_dialog_new (parent,
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ NULL,
+ _("Could not display help"),
+ "%s",
+ error->message);
g_signal_connect (G_OBJECT (dialog), "response",
G_CALLBACK (gtk_widget_destroy),
NULL);
- gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
-
gtk_widget_show (dialog);
g_clear_error (&error);
diff --git a/src/gtk-utils.h b/src/gtk-utils.h
index 1405a49..f444552 100644
--- a/src/gtk-utils.h
+++ b/src/gtk-utils.h
@@ -62,71 +62,56 @@ typedef struct {
} _GtkAccelerator;
-GtkWidget* _gtk_message_dialog_new (GtkWindow *parent,
- GtkDialogFlags flags,
- const char *stock_id,
- const char *message,
- const char *secondary_message,
- const char *first_button_text,
- ...);
-GtkWidget*
-_gtk_ok_dialog_with_checkbutton_new (GtkWindow *parent,
- GtkDialogFlags flags,
- const char *message,
- const char *ok_button_text,
- const char *check_button_label,
- GSettings *settings,
- const char *key);
-void
-_gtk_error_dialog_from_gerror_run (GtkWindow *parent,
- const char *title,
- GError **gerror);
-void
-_gtk_error_dialog_from_gerror_show (GtkWindow *parent,
- const char *title,
- GError **gerror);
-void _gtk_error_dialog_run (GtkWindow *parent,
- const gchar *format,
- ...) G_GNUC_PRINTF (2, 3);
-void _gtk_info_dialog_run (GtkWindow *parent,
- const gchar *format,
- ...) G_GNUC_PRINTF (2, 3);
-void _gtk_dialog_add_to_window_group (GtkDialog *dialog);
+GtkWidget * _gtk_message_dialog_new (GtkWindow *parent,
+ GtkDialogFlags flags,
+ const char *message,
+ const char *secondary_message,
+ const char *first_button_text,
+ ...);
+GtkWidget * _gtk_error_dialog_new (GtkWindow *parent,
+ GtkDialogFlags flags,
+ GList *row_output,
+ const char *primary_text,
+ const char *secondary_text_format,
+ ...) G_GNUC_PRINTF (5, 6);
+void _gtk_error_dialog_from_gerror_run (GtkWindow *parent,
+ const char *title,
+ GError **gerror);
+void _gtk_error_dialog_from_gerror_show (GtkWindow *parent,
+ const char *title,
+ GError **gerror);
+void _gtk_dialog_add_to_window_group (GtkDialog *dialog);
-GdkPixbuf * _g_icon_get_pixbuf (GIcon *icon,
- int size,
- GtkIconTheme *icon_theme);
-GdkPixbuf * get_mime_type_pixbuf (const char *mime_type,
- int icon_size,
- GtkIconTheme *icon_theme);
-int _gtk_icon_get_pixel_size (GtkWidget *widget,
- GtkIconSize size);
-void show_help_dialog (GtkWindow *parent,
- const char *section);
-void _gtk_container_remove_children
- (GtkContainer *container,
- gpointer start_after_this,
- gpointer stop_before_this);
-int _gtk_container_get_pos (GtkContainer *container,
- GtkWidget *child);
-guint _gtk_container_get_n_children (GtkContainer *container);
-GtkBuilder *
- _gtk_builder_new_from_file (const char *filename);
-GtkBuilder *
- _gtk_builder_new_from_resource (const char *resource_path);
-GtkWidget *
- _gtk_builder_get_widget (GtkBuilder *builder,
- const char *name);
-GtkWidget * _gtk_combo_box_new_with_texts (const char *first_text,
- ...);
-void _gtk_combo_box_append_texts (GtkComboBox *combo_box,
- const char *first_text,
- ...);
-GtkWidget * _gtk_image_new_from_xpm_data (char *xpm_data[]);
-void _gtk_tree_path_list_free (GList *list);
-int _gtk_paned_get_position2 (GtkPaned *paned);
-void _gtk_paned_set_position2 (GtkPaned *paned,
- int pos);
+GdkPixbuf * _g_icon_get_pixbuf (GIcon *icon,
+ int size,
+ GtkIconTheme *icon_theme);
+GdkPixbuf * get_mime_type_pixbuf (const char *mime_type,
+ int icon_size,
+ GtkIconTheme *icon_theme);
+int _gtk_icon_get_pixel_size (GtkWidget *widget,
+ GtkIconSize size);
+void show_help_dialog (GtkWindow *parent,
+ const char *section);
+void _gtk_container_remove_children (GtkContainer *container,
+ gpointer start_after_this,
+ gpointer stop_before_this);
+int _gtk_container_get_pos (GtkContainer *container,
+ GtkWidget *child);
+guint _gtk_container_get_n_children (GtkContainer *container);
+GtkBuilder * _gtk_builder_new_from_file (const char *filename);
+GtkBuilder * _gtk_builder_new_from_resource (const char *resource_path);
+GtkWidget * _gtk_builder_get_widget (GtkBuilder *builder,
+ const char *name);
+GtkWidget * _gtk_combo_box_new_with_texts (const char *first_text,
+ ...);
+void _gtk_combo_box_append_texts (GtkComboBox *combo_box,
+ const char *first_text,
+ ...);
+GtkWidget * _gtk_image_new_from_xpm_data (char *xpm_data[]);
+void _gtk_tree_path_list_free (GList *list);
+int _gtk_paned_get_position2 (GtkPaned *paned);
+void _gtk_paned_set_position2 (GtkPaned *paned,
+ int pos);
void _g_launch_command (GtkWidget *parent,
const char *command,
const char *name,
diff --git a/src/preferences.h b/src/preferences.h
index 6523ce4..e66c0b2 100644
--- a/src/preferences.h
+++ b/src/preferences.h
@@ -49,7 +49,6 @@
#define PREF_RIPPER_DESTINATION "destination"
#define PREF_RIPPER_FILETYPE "file-type"
#define PREF_RIPPER_SAVE_PLAYLIST "save-playlist"
-#define PREF_RIPPER_VIEW_DISTINATION "view-destination"
#define PREF_ENCODER_OGG_QUALITY "ogg-quality"
#define PREF_ENCODER_FLAC_COMPRESSION "flac-compression"
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]