diff options
author | Cosimo Cecchi <cosimoc@gnome.org> | 2010-11-23 17:23:37 +0100 |
---|---|---|
committer | Cosimo Cecchi <cosimoc@gnome.org> | 2010-11-23 17:50:15 +0100 |
commit | 05bb715c51d8963e47a8b34f94b14f0748f6b8d8 (patch) | |
tree | 51c7877d323de62ff889973b082a3c016f72695d | |
parent | 6f0a60589125842294579536e62eb099903a0632 (diff) | |
download | gtk+-05bb715c51d8963e47a8b34f94b14f0748f6b8d8.tar.gz |
app-chooser: rename GtkOpenWith to GtkAppChooser
-rw-r--r-- | gtk/Makefile.am | 38 | ||||
-rw-r--r-- | gtk/gtk.h | 6 | ||||
-rw-r--r-- | gtk/gtkappchooser.c (renamed from gtk/gtkopenwith.c) | 22 | ||||
-rw-r--r-- | gtk/gtkappchooser.h (renamed from gtk/gtkopenwith.h) | 30 | ||||
-rw-r--r-- | gtk/gtkappchooserdialog.c (renamed from gtk/gtkopenwithdialog.c) | 196 | ||||
-rw-r--r-- | gtk/gtkappchooserdialog.h | 79 | ||||
-rw-r--r-- | gtk/gtkappchoosermodule.c (renamed from gtk/gtkopenwithmodule.c) | 20 | ||||
-rw-r--r-- | gtk/gtkappchoosermodule.h (renamed from gtk/gtkopenwithmodule.h) | 10 | ||||
-rw-r--r-- | gtk/gtkappchooseronline.c (renamed from gtk/gtkopenwithonline.c) | 52 | ||||
-rw-r--r-- | gtk/gtkappchooseronline.h | 73 | ||||
-rw-r--r-- | gtk/gtkappchooseronlinedummy.c (renamed from gtk/gtkopenwithonlinedummy.c) | 28 | ||||
-rw-r--r-- | gtk/gtkappchooseronlinedummy.h | 59 | ||||
-rw-r--r-- | gtk/gtkappchooseronlinepk.c (renamed from gtk/gtkopenwithonlinepk.c) | 52 | ||||
-rw-r--r-- | gtk/gtkappchooseronlinepk.h | 59 | ||||
-rw-r--r-- | gtk/gtkappchooserprivate.h (renamed from gtk/gtkopenwithprivate.h) | 24 | ||||
-rw-r--r-- | gtk/gtkappchooserwidget.c (renamed from gtk/gtkopenwithwidget.c) | 292 | ||||
-rw-r--r-- | gtk/gtkappchooserwidget.h | 109 | ||||
-rw-r--r-- | gtk/gtkopenwithdialog.h | 79 | ||||
-rw-r--r-- | gtk/gtkopenwithonline.h | 73 | ||||
-rw-r--r-- | gtk/gtkopenwithonlinedummy.h | 59 | ||||
-rw-r--r-- | gtk/gtkopenwithonlinepk.h | 59 | ||||
-rw-r--r-- | gtk/gtkopenwithwidget.h | 109 | ||||
-rw-r--r-- | tests/Makefile.am | 10 | ||||
-rw-r--r-- | tests/testappchooser.c (renamed from tests/testopenwith.c) | 24 |
24 files changed, 781 insertions, 781 deletions
diff --git a/gtk/Makefile.am b/gtk/Makefile.am index 3873cf1dad..a9c495bcb2 100644 --- a/gtk/Makefile.am +++ b/gtk/Makefile.am @@ -246,10 +246,10 @@ gtk_public_h_sources = \ gtkmountoperation.h \ gtknotebook.h \ gtkoffscreenwindow.h \ - gtkopenwith.h \ - gtkopenwithdialog.h \ - gtkopenwithwidget.h \ - gtkopenwithonline.h \ + gtkappchooser.h \ + gtkappchooserdialog.h \ + gtkappchooserwidget.h \ + gtkappchooseronline.h \ gtkorientable.h \ gtkpagesetup.h \ gtkpaned.h \ @@ -354,14 +354,14 @@ gtk_semi_private_h_sources = \ gtktextlayout.h if ENABLE_PACKAGEKIT -gtk_openwith_impl_h_sources = \ - gtkopenwithonlinepk.h \ +gtk_appchooser_impl_h_sources = \ + gtkappchooseronlinepk.h \ $(NULL) endif if ENABLE_PACKAGEKIT -gtk_openwith_impl_c_sources = \ - gtkopenwithonlinepk.c \ +gtk_appchooser_impl_c_sources = \ + gtkappchooseronlinepk.c \ $(NULL) endif @@ -389,9 +389,9 @@ gtk_private_h_sources = \ gtkmenuprivate.h \ gtkmnemonichash.h \ gtkmountoperationprivate.h \ - gtkopenwithprivate.h \ - gtkopenwithmodule.h \ - gtkopenwithonlinedummy.h \ + gtkappchooserprivate.h \ + gtkappchoosermodule.h \ + gtkappchooseronlinedummy.h \ gtkpango.h \ gtkpathbar.h \ gtkplugprivate.h \ @@ -420,7 +420,7 @@ gtk_private_h_sources = \ gtkwindow-decorate.h \ gtkwidgetprivate.h \ $(gtk_clipboard_dnd_h_sources) \ - $(gtk_openwith_impl_h_sources) + $(gtk_appchooser_impl_h_sources) # GTK+ C sources to build the library from gtk_base_c_sources = \ @@ -536,12 +536,12 @@ gtk_base_c_sources = \ gtkmountoperation.c \ gtknotebook.c \ gtkoffscreenwindow.c \ - gtkopenwith.c \ - gtkopenwithwidget.c \ - gtkopenwithdialog.c \ - gtkopenwithmodule.c \ - gtkopenwithonline.c \ - gtkopenwithonlinedummy.c \ + gtkappchooser.c \ + gtkappchooserwidget.c \ + gtkappchooserdialog.c \ + gtkappchoosermodule.c \ + gtkappchooseronline.c \ + gtkappchooseronlinedummy.c \ gtkorientable.c \ gtkpagesetup.c \ gtkpaned.c \ @@ -647,7 +647,7 @@ gtk_base_c_sources = \ gtkwindow-decorate.c \ gtkwindow.c \ $(gtk_clipboard_dnd_c_sources) \ - $(gtk_openwith_impl_c_sources) + $(gtk_appchooser_impl_c_sources) gtk_c_sources = $(gtk_base_c_sources) gtk_all_c_sources = $(gtk_base_c_sources) @@ -129,9 +129,9 @@ #include <gtk/gtkmountoperation.h> #include <gtk/gtknotebook.h> #include <gtk/gtkoffscreenwindow.h> -#include <gtk/gtkopenwith.h> -#include <gtk/gtkopenwithdialog.h> -#include <gtk/gtkopenwithwidget.h> +#include <gtk/gtkappchooser.h> +#include <gtk/gtkappchooserdialog.h> +#include <gtk/gtkappchooserwidget.h> #include <gtk/gtkorientable.h> #include <gtk/gtkpagesetup.h> #include <gtk/gtkpapersize.h> diff --git a/gtk/gtkopenwith.c b/gtk/gtkappchooser.c index 0bd4c1ace5..74b552bb38 100644 --- a/gtk/gtkopenwith.c +++ b/gtk/gtkappchooser.c @@ -1,5 +1,5 @@ /* - * gtkopenwith.c: open-with interface + * gtkappchooser.c: app-chooser interface * * Copyright (C) 2010 Red Hat, Inc. * @@ -23,18 +23,18 @@ #include <config.h> -#include "gtkopenwith.h" +#include "gtkappchooser.h" #include "gtkintl.h" -#include "gtkopenwithprivate.h" +#include "gtkappchooserprivate.h" #include "gtkwidget.h" #include <glib.h> -G_DEFINE_INTERFACE (GtkOpenWith, gtk_open_with, GTK_TYPE_WIDGET); +G_DEFINE_INTERFACE (GtkAppChooser, gtk_app_chooser, GTK_TYPE_WIDGET); static void -gtk_open_with_default_init (GtkOpenWithIface *iface) +gtk_app_chooser_default_init (GtkAppChooserIface *iface) { GParamSpec *pspec; @@ -48,11 +48,11 @@ gtk_open_with_default_init (GtkOpenWithIface *iface) } gchar * -gtk_open_with_get_content_type (GtkOpenWith *self) +gtk_app_chooser_get_content_type (GtkAppChooser *self) { gchar *retval = NULL; - g_return_val_if_fail (GTK_IS_OPEN_WITH (self), NULL); + g_return_val_if_fail (GTK_IS_APP_CHOOSER (self), NULL); g_object_get (self, "content-type", &retval, @@ -62,13 +62,13 @@ gtk_open_with_get_content_type (GtkOpenWith *self) } GAppInfo * -gtk_open_with_get_app_info (GtkOpenWith *self) +gtk_app_chooser_get_app_info (GtkAppChooser *self) { - return GTK_OPEN_WITH_GET_IFACE (self)->get_app_info (self); + return GTK_APP_CHOOSER_GET_IFACE (self)->get_app_info (self); } void -gtk_open_with_refresh (GtkOpenWith *self) +gtk_app_chooser_refresh (GtkAppChooser *self) { - GTK_OPEN_WITH_GET_IFACE (self)->refresh (self); + GTK_APP_CHOOSER_GET_IFACE (self)->refresh (self); } diff --git a/gtk/gtkopenwith.h b/gtk/gtkappchooser.h index c77029b5e6..e1665291b9 100644 --- a/gtk/gtkopenwith.h +++ b/gtk/gtkappchooser.h @@ -1,5 +1,5 @@ /* - * gtkopenwith.h: open-with interface + * gtkappchooser.h: app-chooser interface * * Copyright (C) 2010 Red Hat, Inc. * @@ -25,30 +25,30 @@ #error "Only <gtk/gtk.h> can be included directly." #endif -#ifndef __GTK_OPEN_WITH_H__ -#define __GTK_OPEN_WITH_H__ +#ifndef __GTK_APP_CHOOSER_H__ +#define __GTK_APP_CHOOSER_H__ #include <glib.h> #include <gio/gio.h> G_BEGIN_DECLS -#define GTK_TYPE_OPEN_WITH\ - (gtk_open_with_get_type ()) -#define GTK_OPEN_WITH(obj)\ - (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_OPEN_WITH, GtkOpenWith)) -#define GTK_IS_OPEN_WITH(obj)\ - (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_OPEN_WITH)) +#define GTK_TYPE_APP_CHOOSER\ + (gtk_app_chooser_get_type ()) +#define GTK_APP_CHOOSER(obj)\ + (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_APP_CHOOSER, GtkAppChooser)) +#define GTK_IS_APP_CHOOSER(obj)\ + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_APP_CHOOSER)) -typedef struct _GtkOpenWith GtkOpenWith; +typedef struct _GtkAppChooser GtkAppChooser; -GType gtk_open_with_get_type () G_GNUC_CONST; +GType gtk_app_chooser_get_type () G_GNUC_CONST; -GAppInfo * gtk_open_with_get_app_info (GtkOpenWith *self); -gchar * gtk_open_with_get_content_type (GtkOpenWith *self); -void gtk_open_with_refresh (GtkOpenWith *self); +GAppInfo * gtk_app_chooser_get_app_info (GtkAppChooser *self); +gchar * gtk_app_chooser_get_content_type (GtkAppChooser *self); +void gtk_app_chooser_refresh (GtkAppChooser *self); G_END_DECLS -#endif /* __GTK_OPEN_WITH_H__ */ +#endif /* __GTK_APP_CHOOSER_H__ */ diff --git a/gtk/gtkopenwithdialog.c b/gtk/gtkappchooserdialog.c index 6ba2ab800b..c6f2fcb429 100644 --- a/gtk/gtkopenwithdialog.c +++ b/gtk/gtkappchooserdialog.c @@ -1,5 +1,5 @@ /* - * gtkopenwithdialog.c: an open-with dialog + * gtkappchooserdialog.c: an app-chooser dialog * * Copyright (C) 2004 Novell, Inc. * Copyright (C) 2007, 2010 Red Hat, Inc. @@ -26,12 +26,12 @@ #include <config.h> -#include "gtkopenwithdialog.h" +#include "gtkappchooserdialog.h" #include "gtkintl.h" -#include "gtkopenwith.h" -#include "gtkopenwithonline.h" -#include "gtkopenwithprivate.h" +#include "gtkappchooser.h" +#include "gtkappchooseronline.h" +#include "gtkappchooserprivate.h" #include <string.h> #include <glib/gi18n-lib.h> @@ -40,7 +40,7 @@ #define sure_string(s) ((const char *) ((s) != NULL ? (s) : "")) -struct _GtkOpenWithDialogPrivate { +struct _GtkAppChooserDialogPrivate { char *content_type; GFile *gfile; @@ -50,7 +50,7 @@ struct _GtkOpenWithDialogPrivate { GtkWidget *open_label; - GtkWidget *open_with_widget; + GtkWidget *app_chooser_widget; GtkWidget *show_more_button; gboolean show_more_clicked; @@ -62,10 +62,10 @@ enum { N_PROPERTIES }; -static void gtk_open_with_dialog_iface_init (GtkOpenWithIface *iface); -G_DEFINE_TYPE_WITH_CODE (GtkOpenWithDialog, gtk_open_with_dialog, GTK_TYPE_DIALOG, - G_IMPLEMENT_INTERFACE (GTK_TYPE_OPEN_WITH, - gtk_open_with_dialog_iface_init)); +static void gtk_app_chooser_dialog_iface_init (GtkAppChooserIface *iface); +G_DEFINE_TYPE_WITH_CODE (GtkAppChooserDialog, gtk_app_chooser_dialog, GTK_TYPE_DIALOG, + G_IMPLEMENT_INTERFACE (GTK_TYPE_APP_CHOOSER, + gtk_app_chooser_dialog_iface_init)); static void show_error_dialog (const gchar *primary, @@ -95,11 +95,11 @@ search_for_mimetype_ready_cb (GObject *source, GAsyncResult *res, gpointer user_data) { - GtkOpenWithOnline *online = GTK_OPEN_WITH_ONLINE (source); - GtkOpenWithDialog *self = user_data; + GtkAppChooserOnline *online = GTK_APP_CHOOSER_ONLINE (source); + GtkAppChooserDialog *self = user_data; GError *error = NULL; - gtk_open_with_online_search_for_mimetype_finish (online, res, &error); + gtk_app_chooser_online_search_for_mimetype_finish (online, res, &error); if (error != NULL) { @@ -109,7 +109,7 @@ search_for_mimetype_ready_cb (GObject *source, } else { - gtk_open_with_refresh (GTK_OPEN_WITH (self->priv->open_with_widget)); + gtk_app_chooser_refresh (GTK_APP_CHOOSER (self->priv->app_chooser_widget)); } g_object_unref (online); @@ -119,16 +119,16 @@ static void online_button_clicked_cb (GtkButton *b, gpointer user_data) { - GtkOpenWithOnline *online; - GtkOpenWithDialog *self = user_data; + GtkAppChooserOnline *online; + GtkAppChooserDialog *self = user_data; - online = gtk_open_with_online_get_default (); + online = gtk_app_chooser_online_get_default (); - gtk_open_with_online_search_for_mimetype_async (online, - self->priv->content_type, - GTK_WINDOW (self), - search_for_mimetype_ready_cb, - self); + gtk_app_chooser_online_search_for_mimetype_async (online, + self->priv->content_type, + GTK_WINDOW (self), + search_for_mimetype_ready_cb, + self); } /* An application is valid if: @@ -137,7 +137,7 @@ online_button_clicked_cb (GtkButton *b, * 2) The user has permissions to run the file */ static gboolean -check_application (GtkOpenWithDialog *self, +check_application (GtkAppChooserDialog *self, GAppInfo **app_out) { const char *command; @@ -150,7 +150,7 @@ check_application (GtkOpenWithDialog *self, command = NULL; - info = gtk_open_with_get_app_info (GTK_OPEN_WITH (self->priv->open_with_widget)); + info = gtk_app_chooser_get_app_info (GTK_APP_CHOOSER (self->priv->app_chooser_widget)); command = g_app_info_get_executable (info); g_shell_parse_argv (command, &argc, &argv, &error); @@ -191,21 +191,21 @@ check_application (GtkOpenWithDialog *self, } static void -widget_application_selected_cb (GtkOpenWithWidget *widget, +widget_application_selected_cb (GtkAppChooserWidget *widget, GAppInfo *app_info, gpointer user_data) { - GtkOpenWithDialog *self = user_data; + GtkAppChooserDialog *self = user_data; gtk_widget_set_sensitive (self->priv->button, TRUE); } static void -widget_application_activated_cb (GtkOpenWithWidget *widget, +widget_application_activated_cb (GtkAppChooserWidget *widget, GAppInfo *app_info, gpointer user_data) { - GtkOpenWithDialog *self = user_data; + GtkAppChooserDialog *self = user_data; gtk_dialog_response (GTK_DIALOG (self), GTK_RESPONSE_OK); } @@ -224,7 +224,7 @@ get_extension (const char *basename) } static void -set_dialog_properties (GtkOpenWithDialog *self) +set_dialog_properties (GtkAppChooserDialog *self) { char *label, *name, *extension, *description, *default_text, *string; PangoFontDescription *font_desc; @@ -273,8 +273,8 @@ set_dialog_properties (GtkOpenWithDialog *self) _("Click \"Show other applications\", for more options, or " "\"Find applications online\" to install a new application")); - gtk_open_with_widget_set_default_text (GTK_OPEN_WITH_WIDGET (self->priv->open_with_widget), - default_text); + gtk_app_chooser_widget_set_default_text (GTK_APP_CHOOSER_WIDGET (self->priv->app_chooser_widget), + default_text); g_free (label); g_free (name); @@ -288,9 +288,9 @@ static void show_more_button_clicked_cb (GtkButton *button, gpointer user_data) { - GtkOpenWithDialog *self = user_data; + GtkAppChooserDialog *self = user_data; - g_object_set (self->priv->open_with_widget, + g_object_set (self->priv->app_chooser_widget, "show-recommended", TRUE, "show-fallback", TRUE, "show-other", TRUE, @@ -305,11 +305,11 @@ widget_notify_for_button_cb (GObject *source, GParamSpec *pspec, gpointer user_data) { - GtkOpenWithDialog *self = user_data; - GtkOpenWithWidget *widget = GTK_OPEN_WITH_WIDGET (source); + GtkAppChooserDialog *self = user_data; + GtkAppChooserWidget *widget = GTK_APP_CHOOSER_WIDGET (source); gboolean should_hide; - should_hide = gtk_open_with_widget_get_show_all (widget) || + should_hide = gtk_app_chooser_widget_get_show_all (widget) || self->priv->show_more_clicked; if (should_hide) @@ -317,7 +317,7 @@ widget_notify_for_button_cb (GObject *source, } static void -build_dialog_ui (GtkOpenWithDialog *self) +build_dialog_ui (GtkAppChooserDialog *self) { GtkWidget *vbox; GtkWidget *vbox2; @@ -342,16 +342,16 @@ build_dialog_ui (GtkOpenWithDialog *self) FALSE, FALSE, 0); gtk_widget_show (self->priv->label); - self->priv->open_with_widget = - gtk_open_with_widget_new (self->priv->content_type); - gtk_box_pack_start (GTK_BOX (vbox2), self->priv->open_with_widget, TRUE, TRUE, 0); - gtk_widget_show (self->priv->open_with_widget); + self->priv->app_chooser_widget = + gtk_app_chooser_widget_new (self->priv->content_type); + gtk_box_pack_start (GTK_BOX (vbox2), self->priv->app_chooser_widget, TRUE, TRUE, 0); + gtk_widget_show (self->priv->app_chooser_widget); - g_signal_connect (self->priv->open_with_widget, "application-selected", + g_signal_connect (self->priv->app_chooser_widget, "application-selected", G_CALLBACK (widget_application_selected_cb), self); - g_signal_connect (self->priv->open_with_widget, "application-activated", + g_signal_connect (self->priv->app_chooser_widget, "application-activated", G_CALLBACK (widget_application_activated_cb), self); - g_signal_connect (self->priv->open_with_widget, "notify::show-all", + g_signal_connect (self->priv->app_chooser_widget, "notify::show-all", G_CALLBACK (widget_notify_for_button_cb), self); button = gtk_button_new_with_label (_("Show other applications")); @@ -359,7 +359,7 @@ build_dialog_ui (GtkOpenWithDialog *self) w = gtk_image_new_from_stock (GTK_STOCK_ADD, GTK_ICON_SIZE_BUTTON); gtk_button_set_image (GTK_BUTTON (button), w); - gtk_box_pack_start (GTK_BOX (self->priv->open_with_widget), button, FALSE, FALSE, 6); + gtk_box_pack_start (GTK_BOX (self->priv->app_chooser_widget), button, FALSE, FALSE, 6); gtk_widget_show_all (button); g_signal_connect (button, "clicked", @@ -402,7 +402,7 @@ build_dialog_ui (GtkOpenWithDialog *self) } static void -set_gfile_and_content_type (GtkOpenWithDialog *self, +set_gfile_and_content_type (GtkAppChooserDialog *self, GFile *file) { GFileInfo *info; @@ -421,9 +421,9 @@ set_gfile_and_content_type (GtkOpenWithDialog *self, } static GAppInfo * -gtk_open_with_dialog_get_app_info (GtkOpenWith *object) +gtk_app_chooser_dialog_get_app_info (GtkAppChooser *object) { - GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object); + GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object); GAppInfo *app = NULL; if (!check_application (self, &app)) @@ -433,48 +433,48 @@ gtk_open_with_dialog_get_app_info (GtkOpenWith *object) } static void -gtk_open_with_dialog_refresh (GtkOpenWith *object) +gtk_app_chooser_dialog_refresh (GtkAppChooser *object) { - GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object); + GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object); - gtk_open_with_refresh (GTK_OPEN_WITH (self->priv->open_with_widget)); + gtk_app_chooser_refresh (GTK_APP_CHOOSER (self->priv->app_chooser_widget)); } static void -gtk_open_with_dialog_constructed (GObject *object) +gtk_app_chooser_dialog_constructed (GObject *object) { - GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object); + GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object); g_assert (self->priv->content_type != NULL || self->priv->gfile != NULL); - if (G_OBJECT_CLASS (gtk_open_with_dialog_parent_class)->constructed != NULL) - G_OBJECT_CLASS (gtk_open_with_dialog_parent_class)->constructed (object); + if (G_OBJECT_CLASS (gtk_app_chooser_dialog_parent_class)->constructed != NULL) + G_OBJECT_CLASS (gtk_app_chooser_dialog_parent_class)->constructed (object); build_dialog_ui (self); set_dialog_properties (self); } static void -gtk_open_with_dialog_finalize (GObject *object) +gtk_app_chooser_dialog_finalize (GObject *object) { - GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object); + GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object); if (self->priv->gfile) g_object_unref (self->priv->gfile); g_free (self->priv->content_type); - G_OBJECT_CLASS (gtk_open_with_dialog_parent_class)->finalize (object); + G_OBJECT_CLASS (gtk_app_chooser_dialog_parent_class)->finalize (object); } static void -gtk_open_with_dialog_set_property (GObject *object, - guint property_id, - const GValue *value, - GParamSpec *pspec) +gtk_app_chooser_dialog_set_property (GObject *object, + guint property_id, + const GValue *value, + GParamSpec *pspec) { - GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object); + GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object); switch (property_id) { @@ -493,12 +493,12 @@ gtk_open_with_dialog_set_property (GObject *object, } static void -gtk_open_with_dialog_get_property (GObject *object, - guint property_id, - GValue *value, - GParamSpec *pspec) +gtk_app_chooser_dialog_get_property (GObject *object, + guint property_id, + GValue *value, + GParamSpec *pspec) { - GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object); + GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object); switch (property_id) { @@ -516,23 +516,23 @@ gtk_open_with_dialog_get_property (GObject *object, } static void -gtk_open_with_dialog_iface_init (GtkOpenWithIface *iface) +gtk_app_chooser_dialog_iface_init (GtkAppChooserIface *iface) { - iface->get_app_info = gtk_open_with_dialog_get_app_info; - iface->refresh = gtk_open_with_dialog_refresh; + iface->get_app_info = gtk_app_chooser_dialog_get_app_info; + iface->refresh = gtk_app_chooser_dialog_refresh; } static void -gtk_open_with_dialog_class_init (GtkOpenWithDialogClass *klass) +gtk_app_chooser_dialog_class_init (GtkAppChooserDialogClass *klass) { GObjectClass *gobject_class; GParamSpec *pspec; gobject_class = G_OBJECT_CLASS (klass); - gobject_class->finalize = gtk_open_with_dialog_finalize; - gobject_class->set_property = gtk_open_with_dialog_set_property; - gobject_class->get_property = gtk_open_with_dialog_get_property; - gobject_class->constructed = gtk_open_with_dialog_constructed; + gobject_class->finalize = gtk_app_chooser_dialog_finalize; + gobject_class->set_property = gtk_app_chooser_dialog_set_property; + gobject_class->get_property = gtk_app_chooser_dialog_get_property; + gobject_class->constructed = gtk_app_chooser_dialog_constructed; g_object_class_override_property (gobject_class, PROP_CONTENT_TYPE, "content-type"); @@ -544,14 +544,14 @@ gtk_open_with_dialog_class_init (GtkOpenWithDialogClass *klass) G_PARAM_STATIC_STRINGS); g_object_class_install_property (gobject_class, PROP_GFILE, pspec); - g_type_class_add_private (klass, sizeof (GtkOpenWithDialogPrivate)); + g_type_class_add_private (klass, sizeof (GtkAppChooserDialogPrivate)); } static void -gtk_open_with_dialog_init (GtkOpenWithDialog *self) +gtk_app_chooser_dialog_init (GtkAppChooserDialog *self) { - self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_OPEN_WITH_DIALOG, - GtkOpenWithDialogPrivate); + self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_APP_CHOOSER_DIALOG, + GtkAppChooserDialogPrivate); } static void @@ -571,28 +571,28 @@ set_parent_and_flags (GtkWidget *dialog, } /** - * gtk_open_with_dialog_new: + * gtk_app_chooser_dialog_new: * @parent: (allow-none): a #GtkWindow, or %NULL * @flags: flags for this dialog * @file: a #GFile * - * Creates a new #GtkOpenWithDialog for the provided #GFile, to allow + * Creates a new #GtkAppChooserDialog for the provided #GFile, to allow * the user to select an application for it. * - * Returns: a newly created #GtkOpenWithDialog + * Returns: a newly created #GtkAppChooserDialog * * Since: 3.0 **/ GtkWidget * -gtk_open_with_dialog_new (GtkWindow *parent, - GtkDialogFlags flags, - GFile *file) +gtk_app_chooser_dialog_new (GtkWindow *parent, + GtkDialogFlags flags, + GFile *file) { GtkWidget *retval; g_return_val_if_fail (G_IS_FILE (file), NULL); - retval = g_object_new (GTK_TYPE_OPEN_WITH_DIALOG, + retval = g_object_new (GTK_TYPE_APP_CHOOSER_DIALOG, "gfile", file, NULL); @@ -602,28 +602,28 @@ gtk_open_with_dialog_new (GtkWindow *parent, } /** - * gtk_open_with_dialog_new_for_content_type: + * gtk_app_chooser_dialog_new_for_content_type: * @parent: (allow-none): a #GtkWindow, or %NULL * @flags: flags for this dialog * @content_type: a content type string * - * Creates a new #GtkOpenWithDialog for the provided content type, to allow + * Creates a new #GtkAppChooserDialog for the provided content type, to allow * the user to select an application for it. * - * Returns: a newly created #GtkOpenWithDialog + * Returns: a newly created #GtkAppChooserDialog * * Since: 3.0 **/ GtkWidget * -gtk_open_with_dialog_new_for_content_type (GtkWindow *parent, - GtkDialogFlags flags, - const gchar *content_type) +gtk_app_chooser_dialog_new_for_content_type (GtkWindow *parent, + GtkDialogFlags flags, + const gchar *content_type) { GtkWidget *retval; g_return_val_if_fail (content_type != NULL, NULL); - retval = g_object_new (GTK_TYPE_OPEN_WITH_DIALOG, + retval = g_object_new (GTK_TYPE_APP_CHOOSER_DIALOG, "content-type", content_type, NULL); @@ -633,9 +633,9 @@ gtk_open_with_dialog_new_for_content_type (GtkWindow *parent, } GtkWidget * -gtk_open_with_dialog_get_widget (GtkOpenWithDialog *self) +gtk_app_chooser_dialog_get_widget (GtkAppChooserDialog *self) { - g_return_val_if_fail (GTK_IS_OPEN_WITH_DIALOG (self), NULL); + g_return_val_if_fail (GTK_IS_APP_CHOOSER_DIALOG (self), NULL); - return self->priv->open_with_widget; + return self->priv->app_chooser_widget; } diff --git a/gtk/gtkappchooserdialog.h b/gtk/gtkappchooserdialog.h new file mode 100644 index 0000000000..b29b0d9955 --- /dev/null +++ b/gtk/gtkappchooserdialog.h @@ -0,0 +1,79 @@ +/* + * gtkappchooserdialog.h: an app-chooser dialog + * + * Copyright (C) 2004 Novell, Inc. + * Copyright (C) 2007, 2010 Red Hat, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the Gnome Library; see the file COPYING.LIB. If not, + * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + * + * Authors: Dave Camp <dave@novell.com> + * Alexander Larsson <alexl@redhat.com> + * Cosimo Cecchi <ccecchi@redhat.com> + */ + +#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) +#error "Only <gtk/gtk.h> can be included directly." +#endif + +#ifndef __GTK_APP_CHOOSER_DIALOG_H__ +#define __GTK_APP_CHOOSER_DIALOG_H__ + +#include <gtk/gtkdialog.h> +#include <gio/gio.h> + +#define GTK_TYPE_APP_CHOOSER_DIALOG\ + (gtk_app_chooser_dialog_get_type ()) +#define GTK_APP_CHOOSER_DIALOG(obj)\ + (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_APP_CHOOSER_DIALOG, GtkAppChooserDialog)) +#define GTK_APP_CHOOSER_DIALOG_CLASS(klass)\ + (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_APP_CHOOSER_DIALOG, GtkAppChooserDialogClass)) +#define GTK_IS_APP_CHOOSER_DIALOG(obj)\ + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_APP_CHOOSER_DIALOG)) +#define GTK_IS_APP_CHOOSER_DIALOG_CLASS(klass)\ + (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_APP_CHOOSER_DIALOG)) +#define GTK_APP_CHOOSER_DIALOG_GET_CLASS(obj)\ + (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_APP_CHOOSER_DIALOG, GtkAppChooserDialogClass)) + +typedef struct _GtkAppChooserDialog GtkAppChooserDialog; +typedef struct _GtkAppChooserDialogClass GtkAppChooserDialogClass; +typedef struct _GtkAppChooserDialogPrivate GtkAppChooserDialogPrivate; + +struct _GtkAppChooserDialog { + GtkDialog parent; + + /*< private >*/ + GtkAppChooserDialogPrivate *priv; +}; + +struct _GtkAppChooserDialogClass { + GtkDialogClass parent_class; + + /* padding for future class expansion */ + gpointer padding[16]; +}; + +GType gtk_app_chooser_dialog_get_type (void) G_GNUC_CONST; + +GtkWidget * gtk_app_chooser_dialog_new (GtkWindow *parent, + GtkDialogFlags flags, + GFile *file); +GtkWidget * gtk_app_chooser_dialog_new_for_content_type (GtkWindow *parent, + GtkDialogFlags flags, + const gchar *content_type); + +GtkWidget * gtk_app_chooser_dialog_get_widget (GtkAppChooserDialog *self); + +#endif /* __GTK_APP_CHOOSER_DIALOG_H__ */ diff --git a/gtk/gtkopenwithmodule.c b/gtk/gtkappchoosermodule.c index bc597659f6..096e393972 100644 --- a/gtk/gtkopenwithmodule.c +++ b/gtk/gtkappchoosermodule.c @@ -1,5 +1,5 @@ /* - * gtkopenwithmodule.c: an extension point for online integration + * gtkappchoosermodule.c: an extension point for online integration * * Copyright (C) 2010 Red Hat, Inc. * @@ -23,21 +23,21 @@ #include <config.h> -#include "gtkopenwithmodule.h" +#include "gtkappchoosermodule.h" #include <gio/gio.h> -#include "gtkopenwithonline.h" -#include "gtkopenwithonlinedummy.h" +#include "gtkappchooseronline.h" +#include "gtkappchooseronlinedummy.h" #ifdef ENABLE_PACKAGEKIT -#include "gtkopenwithonlinepk.h" +#include "gtkappchooseronlinepk.h" #endif G_LOCK_DEFINE_STATIC (registered_ep); void -_gtk_open_with_module_ensure (void) +_gtk_app_chooser_module_ensure (void) { static gboolean registered_ep = FALSE; GIOExtensionPoint *ep; @@ -48,13 +48,13 @@ _gtk_open_with_module_ensure (void) { registered_ep = TRUE; - ep = g_io_extension_point_register ("gtkopenwith-online"); - g_io_extension_point_set_required_type (ep, GTK_TYPE_OPEN_WITH_ONLINE); + ep = g_io_extension_point_register ("gtkappchooser-online"); + g_io_extension_point_set_required_type (ep, GTK_TYPE_APP_CHOOSER_ONLINE); - _gtk_open_with_online_dummy_get_type (); + _gtk_app_chooser_online_dummy_get_type (); #ifdef ENABLE_PACKAGEKIT - _gtk_open_with_online_pk_get_type (); + _gtk_app_chooser_online_pk_get_type (); #endif } diff --git a/gtk/gtkopenwithmodule.h b/gtk/gtkappchoosermodule.h index b08cde3b89..cb66c95ff4 100644 --- a/gtk/gtkopenwithmodule.h +++ b/gtk/gtkappchoosermodule.h @@ -1,5 +1,5 @@ /* - * gtkopenwithmodule.h: an extension point for PackageKit integration + * gtkappchoosermodule.h: an extension point for online integration * * Copyright (C) 2010 Red Hat, Inc. * @@ -21,15 +21,15 @@ * Authors: Cosimo Cecchi <ccecchi@redhat.com> */ -#ifndef __GTK_OPEN_WITH_MODULE_H__ -#define __GTK_OPEN_WITH_MODULE_H__ +#ifndef __GTK_APP_CHOOSER_MODULE_H__ +#define __GTK_APP_CHOOSER_MODULE_H__ #include <glib.h> G_BEGIN_DECLS -void _gtk_open_with_module_ensure (void); +void _gtk_app_chooser_module_ensure (void); G_END_DECLS -#endif /* __GTK_OPEN_WITH_MODULE_H__ */ +#endif /* __GTK_APP_CHOOSER_MODULE_H__ */ diff --git a/gtk/gtkopenwithonline.c b/gtk/gtkappchooseronline.c index 1a078660f2..68e50208f3 100644 --- a/gtk/gtkopenwithonline.c +++ b/gtk/gtkappchooseronline.c @@ -1,5 +1,5 @@ /* - * gtkopenwithonline.h: an extension point for online integration + * gtkappchooseronline.h: an extension point for online integration * * Copyright (C) 2010 Red Hat, Inc. * @@ -23,32 +23,32 @@ #include <config.h> -#include "gtkopenwithonline.h" +#include "gtkappchooseronline.h" -#include "gtkopenwithonlinedummy.h" -#include "gtkopenwithmodule.h" +#include "gtkappchooseronlinedummy.h" +#include "gtkappchoosermodule.h" #include <gio/gio.h> -G_DEFINE_INTERFACE (GtkOpenWithOnline, gtk_open_with_online, G_TYPE_OBJECT); +G_DEFINE_INTERFACE (GtkAppChooserOnline, gtk_app_chooser_online, G_TYPE_OBJECT); static void -gtk_open_with_online_default_init (GtkOpenWithOnlineInterface *iface) +gtk_app_chooser_online_default_init (GtkAppChooserOnlineInterface *iface) { /* do nothing */ } -GtkOpenWithOnline * -gtk_open_with_online_get_default (void) +GtkAppChooserOnline * +gtk_app_chooser_online_get_default (void) { GIOExtensionPoint *ep; GIOExtension *extension; GList *extensions; - GtkOpenWithOnline *retval; + GtkAppChooserOnline *retval; - _gtk_open_with_module_ensure (); + _gtk_app_chooser_module_ensure (); - ep = g_io_extension_point_lookup ("gtkopenwith-online"); + ep = g_io_extension_point_lookup ("gtkappchooser-online"); extensions = g_io_extension_point_get_extensions (ep); if (extensions != NULL) @@ -60,7 +60,7 @@ gtk_open_with_online_get_default (void) } else { - retval = g_object_new (GTK_TYPE_OPEN_WITH_ONLINE_DUMMY, + retval = g_object_new (GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY, NULL); } @@ -68,31 +68,31 @@ gtk_open_with_online_get_default (void) } void -gtk_open_with_online_search_for_mimetype_async (GtkOpenWithOnline *self, - const gchar *content_type, - GtkWindow *parent, - GAsyncReadyCallback callback, - gpointer user_data) +gtk_app_chooser_online_search_for_mimetype_async (GtkAppChooserOnline *self, + const gchar *content_type, + GtkWindow *parent, + GAsyncReadyCallback callback, + gpointer user_data) { - GtkOpenWithOnlineInterface *iface; + GtkAppChooserOnlineInterface *iface; - g_return_if_fail (GTK_IS_OPEN_WITH_ONLINE (self)); + g_return_if_fail (GTK_IS_APP_CHOOSER_ONLINE (self)); - iface = GTK_OPEN_WITH_ONLINE_GET_IFACE (self); + iface = GTK_APP_CHOOSER_ONLINE_GET_IFACE (self); (* iface->search_for_mimetype_async) (self, content_type, parent, callback, user_data); } gboolean -gtk_open_with_online_search_for_mimetype_finish (GtkOpenWithOnline *self, - GAsyncResult *res, - GError **error) +gtk_app_chooser_online_search_for_mimetype_finish (GtkAppChooserOnline *self, + GAsyncResult *res, + GError **error) { - GtkOpenWithOnlineInterface *iface; + GtkAppChooserOnlineInterface *iface; - g_return_val_if_fail (GTK_IS_OPEN_WITH_ONLINE (self), FALSE); + g_return_val_if_fail (GTK_IS_APP_CHOOSER_ONLINE (self), FALSE); - iface = GTK_OPEN_WITH_ONLINE_GET_IFACE (self); + iface = GTK_APP_CHOOSER_ONLINE_GET_IFACE (self); return ((* iface->search_for_mimetype_finish) (self, res, error)); } diff --git a/gtk/gtkappchooseronline.h b/gtk/gtkappchooseronline.h new file mode 100644 index 0000000000..f514fdff2b --- /dev/null +++ b/gtk/gtkappchooseronline.h @@ -0,0 +1,73 @@ +/* + * gtkappchooseronline.h: an extension point for online integration + * + * Copyright (C) 2010 Red Hat, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the Gnome Library; see the file COPYING.LIB. If not, + * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + * + * Authors: Cosimo Cecchi <ccecchi@redhat.com> + */ + +#ifndef __GTK_APP_CHOOSER_ONLINE_H__ +#define __GTK_APP_CHOOSER_ONLINE_H__ + +#include <glib.h> + +#include <gtk/gtkwindow.h> +#include <gio/gio.h> + +G_BEGIN_DECLS + +#define GTK_TYPE_APP_CHOOSER_ONLINE\ + (gtk_app_chooser_online_get_type ()) +#define GTK_APP_CHOOSER_ONLINE(o)\ + (G_TYPE_CHECK_INSTANCE_CAST ((o), GTK_TYPE_APP_CHOOSER_ONLINE, GtkAppChooserOnline)) +#define GTK_IS_APP_CHOOSER_ONLINE(o)\ + (G_TYPE_CHECK_INSTANCE_TYPE ((o), GTK_TYPE_APP_CHOOSER_ONLINE)) +#define GTK_APP_CHOOSER_ONLINE_GET_IFACE(obj)\ + (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GTK_TYPE_APP_CHOOSER_ONLINE, GtkAppChooserOnlineInterface)) + +typedef struct _GtkAppChooserOnline GtkAppChooserOnline; +typedef struct _GtkAppChooserOnlineInterface GtkAppChooserOnlineInterface; + +struct _GtkAppChooserOnlineInterface { + GTypeInterface g_iface; + + /* Methods */ + void (*search_for_mimetype_async) (GtkAppChooserOnline *self, + const gchar *content_type, + GtkWindow *parent, + GAsyncReadyCallback callback, + gpointer user_data); + + gboolean (*search_for_mimetype_finish) (GtkAppChooserOnline *self, + GAsyncResult *res, + GError **error); +}; + +GType gtk_app_chooser_online_get_type (void) G_GNUC_CONST; +void gtk_app_chooser_online_search_for_mimetype_async (GtkAppChooserOnline *self, + const gchar *content_type, + GtkWindow *parent, + GAsyncReadyCallback callback, + gpointer user_data); +gboolean gtk_app_chooser_online_search_for_mimetype_finish (GtkAppChooserOnline *self, + GAsyncResult *res, + GError **error); + +GtkAppChooserOnline * gtk_app_chooser_online_get_default (void); + +#endif /* __GTK_APP_CHOOSER_ONLINE_H__ */ diff --git a/gtk/gtkopenwithonlinedummy.c b/gtk/gtkappchooseronlinedummy.c index 14d68f4e42..4ea56753d8 100644 --- a/gtk/gtkopenwithonlinedummy.c +++ b/gtk/gtkappchooseronlinedummy.c @@ -1,5 +1,5 @@ /* - * gtkopenwithonlinedummy.c: an extension point for online integration + * gtkappchooseronlinedummy.c: an extension point for online integration * * Copyright (C) 2010 Red Hat, Inc. * @@ -23,38 +23,38 @@ #include <config.h> -#include "gtkopenwithonlinedummy.h" +#include "gtkappchooseronlinedummy.h" #include "gtkintl.h" -#include "gtkopenwithonline.h" +#include "gtkappchooseronline.h" #include <gio/gio.h> -#define gtk_open_with_online_dummy_get_type _gtk_open_with_online_dummy_get_type -static void open_with_online_iface_init (GtkOpenWithOnlineInterface *iface); +#define gtk_app_chooser_online_dummy_get_type _gtk_app_chooser_online_dummy_get_type +static void app_chooser_online_iface_init (GtkAppChooserOnlineInterface *iface); -G_DEFINE_TYPE_WITH_CODE (GtkOpenWithOnlineDummy, gtk_open_with_online_dummy, +G_DEFINE_TYPE_WITH_CODE (GtkAppChooserOnlineDummy, gtk_app_chooser_online_dummy, G_TYPE_OBJECT, - G_IMPLEMENT_INTERFACE (GTK_TYPE_OPEN_WITH_ONLINE, - open_with_online_iface_init) - g_io_extension_point_implement ("gtkopenwith-online", + G_IMPLEMENT_INTERFACE (GTK_TYPE_APP_CHOOSER_ONLINE, + app_chooser_online_iface_init) + g_io_extension_point_implement ("gtkappchooser-online", g_define_type_id, "dummy", 0)); static void -gtk_open_with_online_dummy_class_init (GtkOpenWithOnlineDummyClass *klass) +gtk_app_chooser_online_dummy_class_init (GtkAppChooserOnlineDummyClass *klass) { /* do nothing */ } static void -gtk_open_with_online_dummy_init (GtkOpenWithOnlineDummy *self) +gtk_app_chooser_online_dummy_init (GtkAppChooserOnlineDummy *self) { /* do nothing */ } static gboolean -dummy_search_mime_finish (GtkOpenWithOnline *obj, +dummy_search_mime_finish (GtkAppChooserOnline *obj, GAsyncResult *res, GError **error) { @@ -64,7 +64,7 @@ dummy_search_mime_finish (GtkOpenWithOnline *obj, } static void -dummy_search_mime_async (GtkOpenWithOnline *obj, +dummy_search_mime_async (GtkAppChooserOnline *obj, const gchar *content_type, GtkWindow *parent, GAsyncReadyCallback callback, @@ -79,7 +79,7 @@ dummy_search_mime_async (GtkOpenWithOnline *obj, } static void -open_with_online_iface_init (GtkOpenWithOnlineInterface *iface) +app_chooser_online_iface_init (GtkAppChooserOnlineInterface *iface) { iface->search_for_mimetype_async = dummy_search_mime_async; iface->search_for_mimetype_finish = dummy_search_mime_finish; diff --git a/gtk/gtkappchooseronlinedummy.h b/gtk/gtkappchooseronlinedummy.h new file mode 100644 index 0000000000..794fe4f4cd --- /dev/null +++ b/gtk/gtkappchooseronlinedummy.h @@ -0,0 +1,59 @@ +/* + * gtkappchooseronlinedummy.h: an extension point for online integration + * + * Copyright (C) 2010 Red Hat, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the Gnome Library; see the file COPYING.LIB. If not, + * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + * + * Authors: Cosimo Cecchi <ccecchi@redhat.com> + */ + +#ifndef __GTK_APP_CHOOSER_ONLINE_DUMMY_H__ +#define __GTK_APP_CHOOSER_ONLINE_DUMMY_H__ + +#include <gtk/gtkappchooseronline.h> +#include <glib.h> + +#define GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY\ + (_gtk_app_chooser_online_dummy_get_type ()) +#define GTK_APP_CHOOSER_ONLINE_DUMMY(obj)\ + (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY, GtkAppChooserOnlineDummy)) +#define GTK_APP_CHOOSER_ONLINE_DUMMY_CLASS(klass)\ + (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY, GtkAppChooserOnlineDummyClass)) +#define GTK_IS_APP_CHOOSER_ONLINE_DUMMY(obj)\ + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY)) +#define GTK_IS_APP_CHOOSER_ONLINE_DUMMY_CLASS(klass)\ + (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY)) +#define GTK_APP_CHOOSER_ONLINE_DUMMY_GET_CLASS(obj)\ + (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY, GtkAppChooserOnlineDummyClass)) + +typedef struct _GtkAppChooserOnlineDummy GtkAppChooserOnlineDummy; +typedef struct _GtkAppChooserOnlineDummyClass GtkAppChooserOnlineDummyClass; +typedef struct _GtkAppChooserOnlineDummyPrivate GtkAppChooserOnlineDummyPrivate; + +struct _GtkAppChooserOnlineDummy { + GObject parent; +}; + +struct _GtkAppChooserOnlineDummyClass { + GObjectClass parent_class; + + GtkAppChooserOnlineDummy *priv; +}; + +GType _gtk_app_chooser_online_dummy_get_type (void); + +#endif /* __GTK_APP_CHOOSER_ONLINE_DUMMY_H__ */ diff --git a/gtk/gtkopenwithonlinepk.c b/gtk/gtkappchooseronlinepk.c index e32015d83e..f14d4d3249 100644 --- a/gtk/gtkopenwithonlinepk.c +++ b/gtk/gtkappchooseronlinepk.c @@ -1,5 +1,5 @@ /* - * gtkopenwithonlinepk.c: packagekit module for open with + * gtkappchooseronlinepk.c: packagekit module for app-chooser * * Copyright (C) 2010 Red Hat, Inc. * @@ -23,60 +23,60 @@ #include <config.h> -#include "gtkopenwithonlinepk.h" +#include "gtkappchooseronlinepk.h" -#include "gtkopenwithonline.h" +#include "gtkappchooseronline.h" #include "x11/gdkx.h" #include <gio/gio.h> -#define gtk_open_with_online_pk_get_type _gtk_open_with_online_pk_get_type -static void open_with_online_iface_init (GtkOpenWithOnlineInterface *iface); +#define gtk_app_chooser_online_pk_get_type _gtk_app_chooser_online_pk_get_type +static void app_chooser_online_iface_init (GtkAppChooserOnlineInterface *iface); -G_DEFINE_TYPE_WITH_CODE (GtkOpenWithOnlinePk, gtk_open_with_online_pk, +G_DEFINE_TYPE_WITH_CODE (GtkAppChooserOnlinePk, gtk_app_chooser_online_pk, G_TYPE_OBJECT, - G_IMPLEMENT_INTERFACE (GTK_TYPE_OPEN_WITH_ONLINE, - open_with_online_iface_init) - g_io_extension_point_implement ("gtkopenwith-online", + G_IMPLEMENT_INTERFACE (GTK_TYPE_APP_CHOOSER_ONLINE, + app_chooser_online_iface_init) + g_io_extension_point_implement ("gtkappchooser-online", g_define_type_id, "packagekit", 10)); -struct _GtkOpenWithOnlinePkPrivate { +struct _GtkAppChooserOnlinePkPrivate { GSimpleAsyncResult *result; GtkWindow *parent; gchar *content_type; }; static void -gtk_open_with_online_pk_finalize (GObject *obj) +gtk_app_chooser_online_pk_finalize (GObject *obj) { - GtkOpenWithOnlinePk *self = GTK_OPEN_WITH_ONLINE_PK (obj); + GtkAppChooserOnlinePk *self = GTK_APP_CHOOSER_ONLINE_PK (obj); g_free (self->priv->content_type); g_clear_object (&self->priv->result); - G_OBJECT_CLASS (gtk_open_with_online_pk_parent_class)->finalize (obj); + G_OBJECT_CLASS (gtk_app_chooser_online_pk_parent_class)->finalize (obj); } static void -gtk_open_with_online_pk_class_init (GtkOpenWithOnlinePkClass *klass) +gtk_app_chooser_online_pk_class_init (GtkAppChooserOnlinePkClass *klass) { GObjectClass *oclass = G_OBJECT_CLASS (klass); - oclass->finalize = gtk_open_with_online_pk_finalize; + oclass->finalize = gtk_app_chooser_online_pk_finalize; - g_type_class_add_private (klass, sizeof (GtkOpenWithOnlinePkPrivate)); + g_type_class_add_private (klass, sizeof (GtkAppChooserOnlinePkPrivate)); } static void -gtk_open_with_online_pk_init (GtkOpenWithOnlinePk *self) +gtk_app_chooser_online_pk_init (GtkAppChooserOnlinePk *self) { - self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_OPEN_WITH_ONLINE_PK, - GtkOpenWithOnlinePkPrivate); + self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_APP_CHOOSER_ONLINE_PK, + GtkAppChooserOnlinePkPrivate); } static gboolean -pk_search_mime_finish (GtkOpenWithOnline *obj, +pk_search_mime_finish (GtkAppChooserOnline *obj, GAsyncResult *res, GError **error) { @@ -90,7 +90,7 @@ install_mime_types_ready_cb (GObject *source, GAsyncResult *res, gpointer user_data) { - GtkOpenWithOnlinePk *self = user_data; + GtkAppChooserOnlinePk *self = user_data; GDBusProxy *proxy = G_DBUS_PROXY (source); GError *error = NULL; GVariant *variant; @@ -116,7 +116,7 @@ pk_proxy_appeared_cb (GObject *source, GAsyncResult *res, gpointer user_data) { - GtkOpenWithOnlinePk *self = user_data; + GtkAppChooserOnlinePk *self = user_data; GDBusProxy *proxy; GError *error = NULL; guint xid = 0; @@ -154,17 +154,17 @@ pk_proxy_appeared_cb (GObject *source, } static void -pk_search_mime_async (GtkOpenWithOnline *obj, +pk_search_mime_async (GtkAppChooserOnline *obj, const gchar *content_type, GtkWindow *parent, GAsyncReadyCallback callback, gpointer user_data) { - GtkOpenWithOnlinePk *self = GTK_OPEN_WITH_ONLINE_PK (obj); + GtkAppChooserOnlinePk *self = GTK_APP_CHOOSER_ONLINE_PK (obj); self->priv->result = g_simple_async_result_new (G_OBJECT (self), callback, user_data, - gtk_open_with_online_search_for_mimetype_async); + gtk_app_chooser_online_search_for_mimetype_async); self->priv->parent = parent; self->priv->content_type = g_strdup (content_type); @@ -180,7 +180,7 @@ pk_search_mime_async (GtkOpenWithOnline *obj, } static void -open_with_online_iface_init (GtkOpenWithOnlineInterface *iface) +app_chooser_online_iface_init (GtkAppChooserOnlineInterface *iface) { iface->search_for_mimetype_async = pk_search_mime_async; iface->search_for_mimetype_finish = pk_search_mime_finish; diff --git a/gtk/gtkappchooseronlinepk.h b/gtk/gtkappchooseronlinepk.h new file mode 100644 index 0000000000..be5ec6ed6d --- /dev/null +++ b/gtk/gtkappchooseronlinepk.h @@ -0,0 +1,59 @@ +/* + * gtkappchooseronlinepk.h: an extension point for online integration + * + * Copyright (C) 2010 Red Hat, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the Gnome Library; see the file COPYING.LIB. If not, + * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + * + * Authors: Cosimo Cecchi <ccecchi@redhat.com> + */ + +#ifndef __GTK_APP_CHOOSER_ONLINE_PK_H__ +#define __GTK_APP_CHOOSER_ONLINE_PK_H__ + +#include <gtk/gtkappchooseronline.h> +#include <glib.h> + +#define GTK_TYPE_APP_CHOOSER_ONLINE_PK\ + (_gtk_app_chooser_online_pk_get_type ()) +#define GTK_APP_CHOOSER_ONLINE_PK(obj)\ + (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_PK, GtkAppChooserOnlinePk)) +#define GTK_APP_CHOOSER_ONLINE_PK_CLASS(klass)\ + (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_APP_CHOOSER_ONLINE_PK, GtkAppChooserOnlinePkClass)) +#define GTK_IS_APP_CHOOSER_ONLINE_PK(obj)\ + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_PK)) +#define GTK_IS_APP_CHOOSER_ONLINE_PK_CLASS(klass)\ + (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_APP_CHOOSER_ONLINE_PK)) +#define GTK_APP_CHOOSER_ONLINE_PK_GET_CLASS(obj)\ + (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_PK, GtkAppChooserOnlinePkClass)) + +typedef struct _GtkAppChooserOnlinePk GtkAppChooserOnlinePk; +typedef struct _GtkAppChooserOnlinePkClass GtkAppChooserOnlinePkClass; +typedef struct _GtkAppChooserOnlinePkPrivate GtkAppChooserOnlinePkPrivate; + +struct _GtkAppChooserOnlinePk { + GObject parent; + + GtkAppChooserOnlinePkPrivate *priv; +}; + +struct _GtkAppChooserOnlinePkClass { + GObjectClass parent_class; +}; + +GType _gtk_app_chooser_online_pk_get_type (void); + +#endif /* __GTK_APP_CHOOSER_ONLINE_PK_H__ */ diff --git a/gtk/gtkopenwithprivate.h b/gtk/gtkappchooserprivate.h index a4205ec51b..f3404aab2f 100644 --- a/gtk/gtkopenwithprivate.h +++ b/gtk/gtkappchooserprivate.h @@ -1,5 +1,5 @@ /* - * gtkopenwith.c: open-with interface + * gtkappchooserprivate.h: app-chooser interface * * Copyright (C) 2010 Red Hat, Inc. * @@ -21,25 +21,25 @@ * Authors: Cosimo Cecchi <ccecchi@redhat.com> */ -#ifndef __GTK_OPEN_WITH_PRIVATE_H__ -#define __GTK_OPEN_WITH_PRIVATE_H__ +#ifndef __GTK_APP_CHOOSER_PRIVATE_H__ +#define __GTK_APP_CHOOSER_PRIVATE_H__ #include <glib.h> #include <gio/gio.h> -#include "gtkopenwithwidget.h" +#include "gtkappchooserwidget.h" -typedef struct _GtkOpenWithIface GtkOpenWithIface; -typedef GtkOpenWithIface GtkOpenWithInterface; +typedef struct _GtkAppChooserIface GtkAppChooserIface; +typedef GtkAppChooserIface GtkAppChooserInterface; -#define GTK_OPEN_WITH_GET_IFACE(inst)\ - (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GTK_TYPE_OPEN_WITH, GtkOpenWithIface)) +#define GTK_APP_CHOOSER_GET_IFACE(inst)\ + (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GTK_TYPE_APP_CHOOSER, GtkAppChooserIface)) -struct _GtkOpenWithIface { +struct _GtkAppChooserIface { GTypeInterface base_iface; - GAppInfo * (* get_app_info) (GtkOpenWith *object); - void (* refresh) (GtkOpenWith *object); + GAppInfo * (* get_app_info) (GtkAppChooser *object); + void (* refresh) (GtkAppChooser *object); }; -#endif /* __GTK_OPEN_WITH_PRIVATE_H__ */ +#endif /* __GTK_APP_CHOOSER_PRIVATE_H__ */ diff --git a/gtk/gtkopenwithwidget.c b/gtk/gtkappchooserwidget.c index 801d881f99..5bac17b989 100644 --- a/gtk/gtkopenwithwidget.c +++ b/gtk/gtkappchooserwidget.c @@ -1,5 +1,5 @@ /* - * gtkopenwithwidget.c: an open-with widget + * gtkappchooserwidget.c: an app-chooser widget * * Copyright (C) 2004 Novell, Inc. * Copyright (C) 2007, 2010 Red Hat, Inc. @@ -26,19 +26,19 @@ #include <config.h> -#include "gtkopenwithwidget.h" +#include "gtkappchooserwidget.h" #include "gtkintl.h" #include "gtkmarshalers.h" -#include "gtkopenwith.h" -#include "gtkopenwithprivate.h" +#include "gtkappchooser.h" +#include "gtkappchooserprivate.h" #include <string.h> #include <glib/gi18n-lib.h> #include <gtk/gtk.h> #include <gio/gio.h> -struct _GtkOpenWithWidgetPrivate { +struct _GtkAppChooserWidgetPrivate { GAppInfo *selected_app_info; gchar *content_type; @@ -90,14 +90,14 @@ enum { static guint signals[N_SIGNALS] = { 0, }; -static void gtk_open_with_widget_iface_init (GtkOpenWithIface *iface); +static void gtk_app_chooser_widget_iface_init (GtkAppChooserIface *iface); -G_DEFINE_TYPE_WITH_CODE (GtkOpenWithWidget, gtk_open_with_widget, GTK_TYPE_BOX, - G_IMPLEMENT_INTERFACE (GTK_TYPE_OPEN_WITH, - gtk_open_with_widget_iface_init)); +G_DEFINE_TYPE_WITH_CODE (GtkAppChooserWidget, gtk_app_chooser_widget, GTK_TYPE_BOX, + G_IMPLEMENT_INTERFACE (GTK_TYPE_APP_CHOOSER, + gtk_app_chooser_widget_iface_init)); static void -refresh_and_emit_app_selected (GtkOpenWithWidget *self, +refresh_and_emit_app_selected (GtkAppChooserWidget *self, GtkTreeSelection *selection) { GtkTreeModel *model; @@ -159,7 +159,7 @@ program_list_selection_activated (GtkTreeView *view, GtkTreeViewColumn *column, gpointer user_data) { - GtkOpenWithWidget *self = user_data; + GtkAppChooserWidget *self = user_data; GtkTreeSelection *selection; if (path_is_heading (view, path)) @@ -174,11 +174,11 @@ program_list_selection_activated (GtkTreeView *view, } static gboolean -gtk_open_with_search_equal_func (GtkTreeModel *model, - int column, - const char *key, - GtkTreeIter *iter, - gpointer user_data) +gtk_app_chooser_search_equal_func (GtkTreeModel *model, + int column, + const char *key, + GtkTreeIter *iter, + gpointer user_data) { char *normalized_key; char *name, *normalized_name; @@ -244,10 +244,10 @@ gtk_open_with_search_equal_func (GtkTreeModel *model, } static gint -gtk_open_with_sort_func (GtkTreeModel *model, - GtkTreeIter *a, - GtkTreeIter *b, - gpointer user_data) +gtk_app_chooser_sort_func (GtkTreeModel *model, + GtkTreeIter *a, + GtkTreeIter *b, + gpointer user_data) { gboolean a_recommended, b_recommended; gboolean a_fallback, b_fallback; @@ -378,11 +378,11 @@ padding_cell_renderer_func (GtkTreeViewColumn *column, } static gboolean -gtk_open_with_selection_func (GtkTreeSelection *selection, - GtkTreeModel *model, - GtkTreePath *path, - gboolean path_currently_selected, - gpointer user_data) +gtk_app_chooser_selection_func (GtkTreeSelection *selection, + GtkTreeModel *model, + GtkTreePath *path, + gboolean path_currently_selected, + gpointer user_data) { GtkTreeIter iter; gboolean heading; @@ -403,13 +403,13 @@ compare_apps_func (gconstpointer a, } static gboolean -gtk_open_with_widget_add_section (GtkOpenWithWidget *self, - const gchar *heading_title, - gboolean show_headings, - gboolean recommended, - gboolean fallback, - GList *applications, - GList *exclude_apps) +gtk_app_chooser_widget_add_section (GtkAppChooserWidget *self, + const gchar *heading_title, + gboolean show_headings, + gboolean recommended, + gboolean fallback, + GList *applications, + GList *exclude_apps) { gboolean heading_added, unref_icon; GtkTreeIter iter; @@ -486,8 +486,8 @@ gtk_open_with_widget_add_section (GtkOpenWithWidget *self, static void -gtk_open_with_add_default (GtkOpenWithWidget *self, - GAppInfo *app) +gtk_app_chooser_add_default (GtkAppChooserWidget *self, + GAppInfo *app) { GtkTreeIter iter; GIcon *icon; @@ -537,7 +537,7 @@ gtk_open_with_add_default (GtkOpenWithWidget *self, } static void -add_no_applications_label (GtkOpenWithWidget *self) +add_no_applications_label (GtkAppChooserWidget *self) { gchar *text = NULL, *desc; const gchar *string; @@ -565,7 +565,7 @@ add_no_applications_label (GtkOpenWithWidget *self) } static void -gtk_open_with_widget_select_first (GtkOpenWithWidget *self) +gtk_app_chooser_widget_select_first (GtkAppChooserWidget *self) { GtkTreeIter iter; GAppInfo *info = NULL; @@ -599,7 +599,7 @@ gtk_open_with_widget_select_first (GtkOpenWithWidget *self) } static void -gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self) +gtk_app_chooser_widget_real_add_items (GtkAppChooserWidget *self) { GList *all_applications = NULL, *recommended_apps = NULL, *fallback_apps = NULL; GList *exclude_apps = NULL; @@ -619,7 +619,7 @@ gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self) if (default_app != NULL) { - gtk_open_with_add_default (self, default_app); + gtk_app_chooser_add_default (self, default_app); apps_added = TRUE; exclude_apps = g_list_prepend (exclude_apps, default_app); } @@ -629,11 +629,11 @@ gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self) { recommended_apps = g_app_info_get_recommended_for_type (self->priv->content_type); - apps_added |= gtk_open_with_widget_add_section (self, _("Recommended Applications"), - show_headings, - !self->priv->show_all, /* mark as recommended */ - FALSE, /* mark as fallback */ - recommended_apps, exclude_apps); + apps_added |= gtk_app_chooser_widget_add_section (self, _("Recommended Applications"), + show_headings, + !self->priv->show_all, /* mark as recommended */ + FALSE, /* mark as fallback */ + recommended_apps, exclude_apps); exclude_apps = g_list_concat (exclude_apps, g_list_copy (recommended_apps)); @@ -643,11 +643,11 @@ gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self) { fallback_apps = g_app_info_get_fallback_for_type (self->priv->content_type); - apps_added |= gtk_open_with_widget_add_section (self, _("Related Applications"), - show_headings, - FALSE, /* mark as recommended */ - !self->priv->show_all, /* mark as fallback */ - fallback_apps, exclude_apps); + apps_added |= gtk_app_chooser_widget_add_section (self, _("Related Applications"), + show_headings, + FALSE, /* mark as recommended */ + !self->priv->show_all, /* mark as fallback */ + fallback_apps, exclude_apps); exclude_apps = g_list_concat (exclude_apps, g_list_copy (fallback_apps)); } @@ -656,17 +656,17 @@ gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self) { all_applications = g_app_info_get_all (); - apps_added |= gtk_open_with_widget_add_section (self, _("Other Applications"), - show_headings, - FALSE, - FALSE, - all_applications, exclude_apps); + apps_added |= gtk_app_chooser_widget_add_section (self, _("Other Applications"), + show_headings, + FALSE, + FALSE, + all_applications, exclude_apps); } if (!apps_added) add_no_applications_label (self); - gtk_open_with_widget_select_first (self); + gtk_app_chooser_widget_select_first (self); if (default_app != NULL) g_object_unref (default_app); @@ -685,7 +685,7 @@ gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self) } static void -gtk_open_with_widget_add_items (GtkOpenWithWidget *self) +gtk_app_chooser_widget_add_items (GtkAppChooserWidget *self) { GtkCellRenderer *renderer; GtkTreeViewColumn *column; @@ -712,12 +712,12 @@ gtk_open_with_widget_add_items (GtkOpenWithWidget *self) GTK_SORT_ASCENDING); gtk_tree_sortable_set_sort_func (GTK_TREE_SORTABLE (sort), COLUMN_NAME, - gtk_open_with_sort_func, + gtk_app_chooser_sort_func, self, NULL); gtk_tree_view_set_search_column (GTK_TREE_VIEW (self->priv->program_list), COLUMN_NAME); gtk_tree_view_set_search_equal_func (GTK_TREE_VIEW (self->priv->program_list), - gtk_open_with_search_equal_func, + gtk_app_chooser_search_equal_func, NULL, NULL); column = gtk_tree_view_column_new (); @@ -776,16 +776,16 @@ gtk_open_with_widget_add_items (GtkOpenWithWidget *self) gtk_tree_view_append_column (GTK_TREE_VIEW (self->priv->program_list), column); /* populate the widget */ - gtk_open_with_widget_real_add_items (self); + gtk_app_chooser_widget_real_add_items (self); } static void -gtk_open_with_widget_set_property (GObject *object, - guint property_id, - const GValue *value, - GParamSpec *pspec) +gtk_app_chooser_widget_set_property (GObject *object, + guint property_id, + const GValue *value, + GParamSpec *pspec) { - GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object); + GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object); switch (property_id) { @@ -793,22 +793,22 @@ gtk_open_with_widget_set_property (GObject *object, self->priv->content_type = g_value_dup_string (value); break; case PROP_SHOW_DEFAULT: - gtk_open_with_widget_set_show_default (self, g_value_get_boolean (value)); + gtk_app_chooser_widget_set_show_default (self, g_value_get_boolean (value)); break; case PROP_SHOW_RECOMMENDED: - gtk_open_with_widget_set_show_recommended (self, g_value_get_boolean (value)); + gtk_app_chooser_widget_set_show_recommended (self, g_value_get_boolean (value)); break; case PROP_SHOW_FALLBACK: - gtk_open_with_widget_set_show_fallback (self, g_value_get_boolean (value)); + gtk_app_chooser_widget_set_show_fallback (self, g_value_get_boolean (value)); break; case PROP_SHOW_OTHER: - gtk_open_with_widget_set_show_other (self, g_value_get_boolean (value)); + gtk_app_chooser_widget_set_show_other (self, g_value_get_boolean (value)); break; case PROP_SHOW_ALL: - gtk_open_with_widget_set_show_all (self, g_value_get_boolean (value)); + gtk_app_chooser_widget_set_show_all (self, g_value_get_boolean (value)); break; case PROP_DEFAULT_TEXT: - gtk_open_with_widget_set_default_text (self, g_value_get_string (value)); + gtk_app_chooser_widget_set_default_text (self, g_value_get_string (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); @@ -817,12 +817,12 @@ gtk_open_with_widget_set_property (GObject *object, } static void -gtk_open_with_widget_get_property (GObject *object, - guint property_id, - GValue *value, - GParamSpec *pspec) +gtk_app_chooser_widget_get_property (GObject *object, + guint property_id, + GValue *value, + GParamSpec *pspec) { - GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object); + GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object); switch (property_id) { @@ -854,33 +854,33 @@ gtk_open_with_widget_get_property (GObject *object, } static void -gtk_open_with_widget_constructed (GObject *object) +gtk_app_chooser_widget_constructed (GObject *object) { - GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object); + GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object); g_assert (self->priv->content_type != NULL); - if (G_OBJECT_CLASS (gtk_open_with_widget_parent_class)->constructed != NULL) - G_OBJECT_CLASS (gtk_open_with_widget_parent_class)->constructed (object); + if (G_OBJECT_CLASS (gtk_app_chooser_widget_parent_class)->constructed != NULL) + G_OBJECT_CLASS (gtk_app_chooser_widget_parent_class)->constructed (object); - gtk_open_with_widget_add_items (self); + gtk_app_chooser_widget_add_items (self); } static void -gtk_open_with_widget_finalize (GObject *object) +gtk_app_chooser_widget_finalize (GObject *object) { - GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object); + GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object); g_free (self->priv->content_type); g_free (self->priv->default_text); - G_OBJECT_CLASS (gtk_open_with_widget_parent_class)->finalize (object); + G_OBJECT_CLASS (gtk_app_chooser_widget_parent_class)->finalize (object); } static void -gtk_open_with_widget_dispose (GObject *object) +gtk_app_chooser_widget_dispose (GObject *object) { - GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object); + GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object); if (self->priv->selected_app_info != NULL) { @@ -888,21 +888,21 @@ gtk_open_with_widget_dispose (GObject *object) self->priv->selected_app_info = NULL; } - G_OBJECT_CLASS (gtk_open_with_widget_parent_class)->dispose (object); + G_OBJECT_CLASS (gtk_app_chooser_widget_parent_class)->dispose (object); } static void -gtk_open_with_widget_class_init (GtkOpenWithWidgetClass *klass) +gtk_app_chooser_widget_class_init (GtkAppChooserWidgetClass *klass) { GObjectClass *gobject_class; GParamSpec *pspec; gobject_class = G_OBJECT_CLASS (klass); - gobject_class->dispose = gtk_open_with_widget_dispose; - gobject_class->finalize = gtk_open_with_widget_finalize; - gobject_class->set_property = gtk_open_with_widget_set_property; - gobject_class->get_property = gtk_open_with_widget_get_property; - gobject_class->constructed = gtk_open_with_widget_constructed; + gobject_class->dispose = gtk_app_chooser_widget_dispose; + gobject_class->finalize = gtk_app_chooser_widget_finalize; + gobject_class->set_property = gtk_app_chooser_widget_set_property; + gobject_class->get_property = gtk_app_chooser_widget_get_property; + gobject_class->constructed = gtk_app_chooser_widget_constructed; g_object_class_override_property (gobject_class, PROP_CONTENT_TYPE, "content-type"); @@ -950,9 +950,9 @@ gtk_open_with_widget_class_init (GtkOpenWithWidgetClass *klass) signals[SIGNAL_APPLICATION_SELECTED] = g_signal_new ("application-selected", - GTK_TYPE_OPEN_WITH_WIDGET, + GTK_TYPE_APP_CHOOSER_WIDGET, G_SIGNAL_RUN_FIRST, - G_STRUCT_OFFSET (GtkOpenWithWidgetClass, application_selected), + G_STRUCT_OFFSET (GtkAppChooserWidgetClass, application_selected), NULL, NULL, _gtk_marshal_VOID__OBJECT, G_TYPE_NONE, @@ -960,25 +960,25 @@ gtk_open_with_widget_class_init (GtkOpenWithWidgetClass *klass) signals[SIGNAL_APPLICATION_ACTIVATED] = g_signal_new ("application-activated", - GTK_TYPE_OPEN_WITH_WIDGET, + GTK_TYPE_APP_CHOOSER_WIDGET, G_SIGNAL_RUN_FIRST, - G_STRUCT_OFFSET (GtkOpenWithWidgetClass, application_activated), + G_STRUCT_OFFSET (GtkAppChooserWidgetClass, application_activated), NULL, NULL, _gtk_marshal_VOID__OBJECT, G_TYPE_NONE, 1, G_TYPE_APP_INFO); - g_type_class_add_private (klass, sizeof (GtkOpenWithWidgetPrivate)); + g_type_class_add_private (klass, sizeof (GtkAppChooserWidgetPrivate)); } static void -gtk_open_with_widget_init (GtkOpenWithWidget *self) +gtk_app_chooser_widget_init (GtkAppChooserWidget *self) { GtkWidget *scrolled_window; GtkTreeSelection *selection; - self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_OPEN_WITH_WIDGET, - GtkOpenWithWidgetPrivate); + self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_APP_CHOOSER_WIDGET, + GtkAppChooserWidgetPrivate); gtk_orientable_set_orientation (GTK_ORIENTABLE (self), GTK_ORIENTATION_VERTICAL); scrolled_window = gtk_scrolled_window_new (NULL, NULL); @@ -999,7 +999,7 @@ gtk_open_with_widget_init (GtkOpenWithWidget *self) selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (self->priv->program_list)); gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE); - gtk_tree_selection_set_select_function (selection, gtk_open_with_selection_func, + gtk_tree_selection_set_select_function (selection, gtk_app_chooser_selection_func, self, NULL); g_signal_connect_swapped (selection, "changed", G_CALLBACK (refresh_and_emit_app_selected), @@ -1010,9 +1010,9 @@ gtk_open_with_widget_init (GtkOpenWithWidget *self) } static GAppInfo * -gtk_open_with_widget_get_app_info (GtkOpenWith *object) +gtk_app_chooser_widget_get_app_info (GtkAppChooser *object) { - GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object); + GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object); if (self->priv->selected_app_info == NULL) return NULL; @@ -1021,9 +1021,9 @@ gtk_open_with_widget_get_app_info (GtkOpenWith *object) } static void -gtk_open_with_widget_refresh (GtkOpenWith *object) +gtk_app_chooser_widget_refresh (GtkAppChooser *object) { - GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object); + GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object); if (self->priv->program_list_store != NULL) { @@ -1034,30 +1034,30 @@ gtk_open_with_widget_refresh (GtkOpenWith *object) "visible", !self->priv->show_all, NULL); - gtk_open_with_widget_real_add_items (self); + gtk_app_chooser_widget_real_add_items (self); } } static void -gtk_open_with_widget_iface_init (GtkOpenWithIface *iface) +gtk_app_chooser_widget_iface_init (GtkAppChooserIface *iface) { - iface->get_app_info = gtk_open_with_widget_get_app_info; - iface->refresh = gtk_open_with_widget_refresh; + iface->get_app_info = gtk_app_chooser_widget_get_app_info; + iface->refresh = gtk_app_chooser_widget_refresh; } GtkWidget * -gtk_open_with_widget_new (const gchar *content_type) +gtk_app_chooser_widget_new (const gchar *content_type) { - return g_object_new (GTK_TYPE_OPEN_WITH_WIDGET, + return g_object_new (GTK_TYPE_APP_CHOOSER_WIDGET, "content-type", content_type, NULL); } void -gtk_open_with_widget_set_show_default (GtkOpenWithWidget *self, - gboolean setting) +gtk_app_chooser_widget_set_show_default (GtkAppChooserWidget *self, + gboolean setting) { - g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self)); + g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self)); if (self->priv->show_default != setting) { @@ -1065,23 +1065,23 @@ gtk_open_with_widget_set_show_default (GtkOpenWithWidget *self, g_object_notify (G_OBJECT (self), "show-default"); - gtk_open_with_refresh (GTK_OPEN_WITH (self)); + gtk_app_chooser_refresh (GTK_APP_CHOOSER (self)); } } gboolean -gtk_open_with_widget_get_show_default (GtkOpenWithWidget *self) +gtk_app_chooser_widget_get_show_default (GtkAppChooserWidget *self) { - g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), FALSE); + g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), FALSE); return self->priv->show_default; } void -gtk_open_with_widget_set_show_recommended (GtkOpenWithWidget *self, - gboolean setting) +gtk_app_chooser_widget_set_show_recommended (GtkAppChooserWidget *self, + gboolean setting) { - g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self)); + g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self)); if (self->priv->show_recommended != setting) { @@ -1089,23 +1089,23 @@ gtk_open_with_widget_set_show_recommended (GtkOpenWithWidget *self, g_object_notify (G_OBJECT (self), "show-recommended"); - gtk_open_with_refresh (GTK_OPEN_WITH (self)); + gtk_app_chooser_refresh (GTK_APP_CHOOSER (self)); } } gboolean -gtk_open_with_widget_get_show_recommended (GtkOpenWithWidget *self) +gtk_app_chooser_widget_get_show_recommended (GtkAppChooserWidget *self) { - g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), FALSE); + g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), FALSE); return self->priv->show_recommended; } void -gtk_open_with_widget_set_show_fallback (GtkOpenWithWidget *self, - gboolean setting) +gtk_app_chooser_widget_set_show_fallback (GtkAppChooserWidget *self, + gboolean setting) { - g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self)); + g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self)); if (self->priv->show_fallback != setting) { @@ -1113,23 +1113,23 @@ gtk_open_with_widget_set_show_fallback (GtkOpenWithWidget *self, g_object_notify (G_OBJECT (self), "show-fallback"); - gtk_open_with_refresh (GTK_OPEN_WITH (self)); + gtk_app_chooser_refresh (GTK_APP_CHOOSER (self)); } } gboolean -gtk_open_with_widget_get_show_fallback (GtkOpenWithWidget *self) +gtk_app_chooser_widget_get_show_fallback (GtkAppChooserWidget *self) { - g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), FALSE); + g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), FALSE); return self->priv->show_fallback; } void -gtk_open_with_widget_set_show_other (GtkOpenWithWidget *self, - gboolean setting) +gtk_app_chooser_widget_set_show_other (GtkAppChooserWidget *self, + gboolean setting) { - g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self)); + g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self)); if (self->priv->show_other != setting) { @@ -1137,22 +1137,22 @@ gtk_open_with_widget_set_show_other (GtkOpenWithWidget *self, g_object_notify (G_OBJECT (self), "show-other"); - gtk_open_with_refresh (GTK_OPEN_WITH (self)); + gtk_app_chooser_refresh (GTK_APP_CHOOSER (self)); } } -gboolean gtk_open_with_widget_get_show_other (GtkOpenWithWidget *self) +gboolean gtk_app_chooser_widget_get_show_other (GtkAppChooserWidget *self) { - g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), FALSE); + g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), FALSE); return self->priv->show_other; } void -gtk_open_with_widget_set_show_all (GtkOpenWithWidget *self, - gboolean setting) +gtk_app_chooser_widget_set_show_all (GtkAppChooserWidget *self, + gboolean setting) { - g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self)); + g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self)); if (self->priv->show_all != setting) { @@ -1160,23 +1160,23 @@ gtk_open_with_widget_set_show_all (GtkOpenWithWidget *self, g_object_notify (G_OBJECT (self), "show-all"); - gtk_open_with_refresh (GTK_OPEN_WITH (self)); + gtk_app_chooser_refresh (GTK_APP_CHOOSER (self)); } } gboolean -gtk_open_with_widget_get_show_all (GtkOpenWithWidget *self) +gtk_app_chooser_widget_get_show_all (GtkAppChooserWidget *self) { - g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), FALSE); + g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), FALSE); return self->priv->show_all; } void -gtk_open_with_widget_set_default_text (GtkOpenWithWidget *self, - const gchar *text) +gtk_app_chooser_widget_set_default_text (GtkAppChooserWidget *self, + const gchar *text) { - g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self)); + g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self)); if (g_strcmp0 (text, self->priv->default_text) != 0) { @@ -1185,14 +1185,14 @@ gtk_open_with_widget_set_default_text (GtkOpenWithWidget *self, g_object_notify (G_OBJECT (self), "default-text"); - gtk_open_with_refresh (GTK_OPEN_WITH (self)); + gtk_app_chooser_refresh (GTK_APP_CHOOSER (self)); } } const gchar * -gtk_open_with_widget_get_default_text (GtkOpenWithWidget *self) +gtk_app_chooser_widget_get_default_text (GtkAppChooserWidget *self) { - g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), NULL); + g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), NULL); return self->priv->default_text; } diff --git a/gtk/gtkappchooserwidget.h b/gtk/gtkappchooserwidget.h new file mode 100644 index 0000000000..2bfd00407c --- /dev/null +++ b/gtk/gtkappchooserwidget.h @@ -0,0 +1,109 @@ +/* + * gtkappchooserwidget.h: an app-chooser widget + * + * Copyright (C) 2004 Novell, Inc. + * Copyright (C) 2007, 2010 Red Hat, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the Gnome Library; see the file COPYING.LIB. If not, + * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + * + * Authors: Dave Camp <dave@novell.com> + * Alexander Larsson <alexl@redhat.com> + * Cosimo Cecchi <ccecchi@redhat.com> + */ + +#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) +#error "Only <gtk/gtk.h> can be included directly." +#endif + +#ifndef __GTK_APP_CHOOSER_WIDGET_H__ +#define __GTK_APP_CHOOSER_WIDGET_H__ + +#include <gtk/gtkbox.h> +#include <gio/gio.h> + +#define GTK_TYPE_APP_CHOOSER_WIDGET\ + (gtk_app_chooser_widget_get_type ()) +#define GTK_APP_CHOOSER_WIDGET(obj)\ + (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_APP_CHOOSER_WIDGET, GtkAppChooserWidget)) +#define GTK_APP_CHOOSER_WIDGET_CLASS(klass)\ + (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_APP_CHOOSER_WIDGET, GtkAppChooserWidgetClass)) +#define GTK_IS_APP_CHOOSER_WIDGET(obj)\ + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_APP_CHOOSER_WIDGET)) +#define GTK_IS_APP_CHOOSER_WIDGET_CLASS(klass)\ + (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_APP_CHOOSER_WIDGET)) +#define GTK_APP_CHOOSER_WIDGET_GET_CLASS(obj)\ + (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_APP_CHOOSER_WIDGET, GtkAppChooserWidgetClass)) + +typedef struct _GtkAppChooserWidget GtkAppChooserWidget; +typedef struct _GtkAppChooserWidgetClass GtkAppChooserWidgetClass; +typedef struct _GtkAppChooserWidgetPrivate GtkAppChooserWidgetPrivate; + +struct _GtkAppChooserWidget { + GtkBox parent; + + /*< private >*/ + GtkAppChooserWidgetPrivate *priv; +}; + +struct _GtkAppChooserWidgetClass { + GtkBoxClass parent_class; + + void (* application_selected) (GtkAppChooserWidget *self, + GAppInfo *app_info); + + void (* application_activated) (GtkAppChooserWidget *self, + GAppInfo *app_info); + + /* padding for future class expansion */ + gpointer padding[16]; +}; + +typedef enum { + GTK_APP_CHOOSER_WIDGET_SHOW_RECOMMENDED = 1 << 0, + GTK_APP_CHOOSER_WIDGET_SHOW_FALLBACK = 1 << 1, + GTK_APP_CHOOSER_WIDGET_SHOW_OTHER = 1 << 2, + GTK_APP_CHOOSER_WIDGET_SHOW_ALL = 1 << 3, +} GtkAppChooserWidgetShowFlags; + +GType gtk_app_chooser_widget_get_type (void) G_GNUC_CONST; + +GtkWidget * gtk_app_chooser_widget_new (const gchar *content_type); + +void gtk_app_chooser_widget_set_show_default (GtkAppChooserWidget *self, + gboolean setting); +gboolean gtk_app_chooser_widget_get_show_default (GtkAppChooserWidget *self); + +void gtk_app_chooser_widget_set_show_recommended (GtkAppChooserWidget *self, + gboolean setting); +gboolean gtk_app_chooser_widget_get_show_recommended (GtkAppChooserWidget *self); + +void gtk_app_chooser_widget_set_show_fallback (GtkAppChooserWidget *self, + gboolean setting); +gboolean gtk_app_chooser_widget_get_show_fallback (GtkAppChooserWidget *self); + +void gtk_app_chooser_widget_set_show_other (GtkAppChooserWidget *self, + gboolean setting); +gboolean gtk_app_chooser_widget_get_show_other (GtkAppChooserWidget *self); + +void gtk_app_chooser_widget_set_show_all (GtkAppChooserWidget *self, + gboolean show_all); +gboolean gtk_app_chooser_widget_get_show_all (GtkAppChooserWidget *self); + +void gtk_app_chooser_widget_set_default_text (GtkAppChooserWidget *self, + const gchar *text); +const gchar * gtk_app_chooser_widget_get_default_text (GtkAppChooserWidget *self); + +#endif /* __GTK_APP_CHOOSER_WIDGET_H__ */ diff --git a/gtk/gtkopenwithdialog.h b/gtk/gtkopenwithdialog.h deleted file mode 100644 index 83671846e5..0000000000 --- a/gtk/gtkopenwithdialog.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - * gtkopenwithdialog.h: an open-with dialog - * - * Copyright (C) 2004 Novell, Inc. - * Copyright (C) 2007, 2010 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public License as - * published by the Free Software Foundation; either version 2 of the - * License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with the Gnome Library; see the file COPYING.LIB. If not, - * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * Authors: Dave Camp <dave@novell.com> - * Alexander Larsson <alexl@redhat.com> - * Cosimo Cecchi <ccecchi@redhat.com> - */ - -#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) -#error "Only <gtk/gtk.h> can be included directly." -#endif - -#ifndef __GTK_OPEN_WITH_DIALOG_H__ -#define __GTK_OPEN_WITH_DIALOG_H__ - -#include <gtk/gtkdialog.h> -#include <gio/gio.h> - -#define GTK_TYPE_OPEN_WITH_DIALOG\ - (gtk_open_with_dialog_get_type ()) -#define GTK_OPEN_WITH_DIALOG(obj)\ - (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_OPEN_WITH_DIALOG, GtkOpenWithDialog)) -#define GTK_OPEN_WITH_DIALOG_CLASS(klass)\ - (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_OPEN_WITH_DIALOG, GtkOpenWithDialogClass)) -#define GTK_IS_OPEN_WITH_DIALOG(obj)\ - (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_OPEN_WITH_DIALOG)) -#define GTK_IS_OPEN_WITH_DIALOG_CLASS(klass)\ - (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_OPEN_WITH_DIALOG)) -#define GTK_OPEN_WITH_DIALOG_GET_CLASS(obj)\ - (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_OPEN_WITH_DIALOG, GtkOpenWithDialogClass)) - -typedef struct _GtkOpenWithDialog GtkOpenWithDialog; -typedef struct _GtkOpenWithDialogClass GtkOpenWithDialogClass; -typedef struct _GtkOpenWithDialogPrivate GtkOpenWithDialogPrivate; - -struct _GtkOpenWithDialog { - GtkDialog parent; - - /*< private >*/ - GtkOpenWithDialogPrivate *priv; -}; - -struct _GtkOpenWithDialogClass { - GtkDialogClass parent_class; - - /* padding for future class expansion */ - gpointer padding[16]; -}; - -GType gtk_open_with_dialog_get_type (void) G_GNUC_CONST; - -GtkWidget * gtk_open_with_dialog_new (GtkWindow *parent, - GtkDialogFlags flags, - GFile *file); -GtkWidget * gtk_open_with_dialog_new_for_content_type (GtkWindow *parent, - GtkDialogFlags flags, - const gchar *content_type); - -GtkWidget * gtk_open_with_dialog_get_widget (GtkOpenWithDialog *self); - -#endif /* __GTK_OPEN_WITH_DIALOG_H__ */ diff --git a/gtk/gtkopenwithonline.h b/gtk/gtkopenwithonline.h deleted file mode 100644 index 7cf97e25e7..0000000000 --- a/gtk/gtkopenwithonline.h +++ /dev/null @@ -1,73 +0,0 @@ -/* - * gtkopenwithonline.h: an extension point for online integration - * - * Copyright (C) 2010 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public License as - * published by the Free Software Foundation; either version 2 of the - * License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with the Gnome Library; see the file COPYING.LIB. If not, - * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * Authors: Cosimo Cecchi <ccecchi@redhat.com> - */ - -#ifndef __GTK_OPEN_WITH_ONLINE_H__ -#define __GTK_OPEN_WITH_ONLINE_H__ - -#include <glib.h> - -#include <gtk/gtkwindow.h> -#include <gio/gio.h> - -G_BEGIN_DECLS - -#define GTK_TYPE_OPEN_WITH_ONLINE\ - (gtk_open_with_online_get_type ()) -#define GTK_OPEN_WITH_ONLINE(o)\ - (G_TYPE_CHECK_INSTANCE_CAST ((o), GTK_TYPE_OPEN_WITH_ONLINE, GtkOpenWithOnline)) -#define GTK_IS_OPEN_WITH_ONLINE(o)\ - (G_TYPE_CHECK_INSTANCE_TYPE ((o), GTK_TYPE_OPEN_WITH_ONLINE)) -#define GTK_OPEN_WITH_ONLINE_GET_IFACE(obj)\ - (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GTK_TYPE_OPEN_WITH_ONLINE, GtkOpenWithOnlineInterface)) - -typedef struct _GtkOpenWithOnline GtkOpenWithOnline; -typedef struct _GtkOpenWithOnlineInterface GtkOpenWithOnlineInterface; - -struct _GtkOpenWithOnlineInterface { - GTypeInterface g_iface; - - /* Methods */ - void (*search_for_mimetype_async) (GtkOpenWithOnline *self, - const gchar *content_type, - GtkWindow *parent, - GAsyncReadyCallback callback, - gpointer user_data); - - gboolean (*search_for_mimetype_finish) (GtkOpenWithOnline *self, - GAsyncResult *res, - GError **error); -}; - -GType gtk_open_with_online_get_type (void) G_GNUC_CONST; -void gtk_open_with_online_search_for_mimetype_async (GtkOpenWithOnline *self, - const gchar *content_type, - GtkWindow *parent, - GAsyncReadyCallback callback, - gpointer user_data); -gboolean gtk_open_with_online_search_for_mimetype_finish (GtkOpenWithOnline *self, - GAsyncResult *res, - GError **error); - -GtkOpenWithOnline * gtk_open_with_online_get_default (void); - -#endif /* __GTK_OPEN_WITH_ONLINE_H__ */ diff --git a/gtk/gtkopenwithonlinedummy.h b/gtk/gtkopenwithonlinedummy.h deleted file mode 100644 index 03b6f1f2f9..0000000000 --- a/gtk/gtkopenwithonlinedummy.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * gtkopenwithonlinedummy.h: an extension point for online integration - * - * Copyright (C) 2010 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public License as - * published by the Free Software Foundation; either version 2 of the - * License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with the Gnome Library; see the file COPYING.LIB. If not, - * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * Authors: Cosimo Cecchi <ccecchi@redhat.com> - */ - -#ifndef __GTK_OPEN_WITH_ONLINE_DUMMY_H__ -#define __GTK_OPEN_WITH_ONLINE_DUMMY_H__ - -#include <gtk/gtkopenwithonline.h> -#include <glib.h> - -#define GTK_TYPE_OPEN_WITH_ONLINE_DUMMY\ - (_gtk_open_with_online_dummy_get_type ()) -#define GTK_OPEN_WITH_ONLINE_DUMMY(obj)\ - (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_OPEN_WITH_ONLINE_DUMMY, GtkOpenWithOnlineDummy)) -#define GTK_OPEN_WITH_ONLINE_DUMMY_CLASS(klass)\ - (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_OPEN_WITH_ONLINE_DUMMY, GtkOpenWithOnlineDummyClass)) -#define GTK_IS_OPEN_WITH_ONLINE_DUMMY(obj)\ - (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_OPEN_WITH_ONLINE_DUMMY)) -#define GTK_IS_OPEN_WITH_ONLINE_DUMMY_CLASS(klass)\ - (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_OPEN_WITH_ONLINE_DUMMY)) -#define GTK_OPEN_WITH_ONLINE_DUMMY_GET_CLASS(obj)\ - (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_OPEN_WITH_ONLINE_DUMMY, GtkOpenWithOnlineDummyClass)) - -typedef struct _GtkOpenWithOnlineDummy GtkOpenWithOnlineDummy; -typedef struct _GtkOpenWithOnlineDummyClass GtkOpenWithOnlineDummyClass; -typedef struct _GtkOpenWithOnlineDummyPrivate GtkOpenWithOnlineDummyPrivate; - -struct _GtkOpenWithOnlineDummy { - GObject parent; -}; - -struct _GtkOpenWithOnlineDummyClass { - GObjectClass parent_class; - - GtkOpenWithOnlineDummy *priv; -}; - -GType _gtk_open_with_online_dummy_get_type (void); - -#endif /* __GTK_OPEN_WITH_ONLINE_DUMMY_H__ */ diff --git a/gtk/gtkopenwithonlinepk.h b/gtk/gtkopenwithonlinepk.h deleted file mode 100644 index 2540a3e927..0000000000 --- a/gtk/gtkopenwithonlinepk.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * gtkopenwithonlinepk.h: an extension point for online integration - * - * Copyright (C) 2010 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public License as - * published by the Free Software Foundation; either version 2 of the - * License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with the Gnome Library; see the file COPYING.LIB. If not, - * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * Authors: Cosimo Cecchi <ccecchi@redhat.com> - */ - -#ifndef __GTK_OPEN_WITH_ONLINE_PK_H__ -#define __GTK_OPEN_WITH_ONLINE_PK_H__ - -#include <gtk/gtkopenwithonline.h> -#include <glib.h> - -#define GTK_TYPE_OPEN_WITH_ONLINE_PK\ - (_gtk_open_with_online_pk_get_type ()) -#define GTK_OPEN_WITH_ONLINE_PK(obj)\ - (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_OPEN_WITH_ONLINE_PK, GtkOpenWithOnlinePk)) -#define GTK_OPEN_WITH_ONLINE_PK_CLASS(klass)\ - (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_OPEN_WITH_ONLINE_PK, GtkOpenWithOnlinePkClass)) -#define GTK_IS_OPEN_WITH_ONLINE_PK(obj)\ - (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_OPEN_WITH_ONLINE_PK)) -#define GTK_IS_OPEN_WITH_ONLINE_PK_CLASS(klass)\ - (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_OPEN_WITH_ONLINE_PK)) -#define GTK_OPEN_WITH_ONLINE_PK_GET_CLASS(obj)\ - (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_OPEN_WITH_ONLINE_PK, GtkOpenWithOnlinePkClass)) - -typedef struct _GtkOpenWithOnlinePk GtkOpenWithOnlinePk; -typedef struct _GtkOpenWithOnlinePkClass GtkOpenWithOnlinePkClass; -typedef struct _GtkOpenWithOnlinePkPrivate GtkOpenWithOnlinePkPrivate; - -struct _GtkOpenWithOnlinePk { - GObject parent; - - GtkOpenWithOnlinePkPrivate *priv; -}; - -struct _GtkOpenWithOnlinePkClass { - GObjectClass parent_class; -}; - -GType _gtk_open_with_online_pk_get_type (void); - -#endif /* __GTK_OPEN_WITH_ONLINE_PK_H__ */ diff --git a/gtk/gtkopenwithwidget.h b/gtk/gtkopenwithwidget.h deleted file mode 100644 index 62bdc4a798..0000000000 --- a/gtk/gtkopenwithwidget.h +++ /dev/null @@ -1,109 +0,0 @@ -/* - * gtkopenwithwidget.h: an open-with widget - * - * Copyright (C) 2004 Novell, Inc. - * Copyright (C) 2007, 2010 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public License as - * published by the Free Software Foundation; either version 2 of the - * License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with the Gnome Library; see the file COPYING.LIB. If not, - * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * Authors: Dave Camp <dave@novell.com> - * Alexander Larsson <alexl@redhat.com> - * Cosimo Cecchi <ccecchi@redhat.com> - */ - -#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) -#error "Only <gtk/gtk.h> can be included directly." -#endif - -#ifndef __GTK_OPEN_WITH_WIDGET_H__ -#define __GTK_OPEN_WITH_WIDGET_H__ - -#include <gtk/gtkbox.h> -#include <gio/gio.h> - -#define GTK_TYPE_OPEN_WITH_WIDGET\ - (gtk_open_with_widget_get_type ()) -#define GTK_OPEN_WITH_WIDGET(obj)\ - (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_OPEN_WITH_WIDGET, GtkOpenWithWidget)) -#define GTK_OPEN_WITH_WIDGET_CLASS(klass)\ - (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_OPEN_WITH_WIDGET, GtkOpenWithWidgetClass)) -#define GTK_IS_OPEN_WITH_WIDGET(obj)\ - (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_OPEN_WITH_WIDGET)) -#define GTK_IS_OPEN_WITH_WIDGET_CLASS(klass)\ - (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_OPEN_WITH_WIDGET)) -#define GTK_OPEN_WITH_WIDGET_GET_CLASS(obj)\ - (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_OPEN_WITH_WIDGET, GtkOpenWithWidgetClass)) - -typedef struct _GtkOpenWithWidget GtkOpenWithWidget; -typedef struct _GtkOpenWithWidgetClass GtkOpenWithWidgetClass; -typedef struct _GtkOpenWithWidgetPrivate GtkOpenWithWidgetPrivate; - -struct _GtkOpenWithWidget { - GtkBox parent; - - /*< private >*/ - GtkOpenWithWidgetPrivate *priv; -}; - -struct _GtkOpenWithWidgetClass { - GtkBoxClass parent_class; - - void (* application_selected) (GtkOpenWithWidget *self, - GAppInfo *app_info); - - void (* application_activated) (GtkOpenWithWidget *self, - GAppInfo *app_info); - - /* padding for future class expansion */ - gpointer padding[16]; -}; - -typedef enum { - GTK_OPEN_WITH_WIDGET_SHOW_RECOMMENDED = 1 << 0, - GTK_OPEN_WITH_WIDGET_SHOW_FALLBACK = 1 << 1, - GTK_OPEN_WITH_WIDGET_SHOW_OTHER = 1 << 2, - GTK_OPEN_WITH_WIDGET_SHOW_ALL = 1 << 3, -} GtkOpenWithWidgetShowFlags; - -GType gtk_open_with_widget_get_type (void) G_GNUC_CONST; - -GtkWidget * gtk_open_with_widget_new (const gchar *content_type); - -void gtk_open_with_widget_set_show_default (GtkOpenWithWidget *self, - gboolean setting); -gboolean gtk_open_with_widget_get_show_default (GtkOpenWithWidget *self); - -void gtk_open_with_widget_set_show_recommended (GtkOpenWithWidget *self, - gboolean setting); -gboolean gtk_open_with_widget_get_show_recommended (GtkOpenWithWidget *self); - -void gtk_open_with_widget_set_show_fallback (GtkOpenWithWidget *self, - gboolean setting); -gboolean gtk_open_with_widget_get_show_fallback (GtkOpenWithWidget *self); - -void gtk_open_with_widget_set_show_other (GtkOpenWithWidget *self, - gboolean setting); -gboolean gtk_open_with_widget_get_show_other (GtkOpenWithWidget *self); - -void gtk_open_with_widget_set_show_all (GtkOpenWithWidget *self, - gboolean show_all); -gboolean gtk_open_with_widget_get_show_all (GtkOpenWithWidget *self); - -void gtk_open_with_widget_set_default_text (GtkOpenWithWidget *self, - const gchar *text); -const gchar * gtk_open_with_widget_get_default_text (GtkOpenWithWidget *self); - -#endif /* __GTK_OPEN_WITH_WIDGET_H__ */ diff --git a/tests/Makefile.am b/tests/Makefile.am index 1da067ed08..7aca0f68e2 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -66,7 +66,7 @@ noinst_PROGRAMS = $(TEST_PROGS) \ testoffscreen \ testoffscreenwindow \ testorientable \ - testopenwith \ + testappchooser \ testprint \ testrecentchooser \ testrecentchoosermenu \ @@ -154,7 +154,7 @@ testnotebookdnd_DEPENDENCIES = $(TEST_DEPS) testnouiprint_DEPENDENCIES = $(TEST_DEPS) testoffscreen_DEPENDENCIES = $(TEST_DEPS) testoffscreenwindow_DEPENDENCIES = $(TEST_DEPS) -testopenwith_DEPENDENCIES = $(TEST_DEPS) +testappchooser_DEPENDENCIES = $(TEST_DEPS) testorientable_DEPENDENCIES = $(TEST_DEPS) testprint_DEPENDENCIES = $(TEST_DEPS) testrecentchooser_DEPENDENCIES = $(TEST_DEPS) @@ -227,7 +227,7 @@ testnotebookdnd_LDADD = $(LDADDS) testnouiprint_LDADD = $(LDADDS) testoffscreen_LDADD = $(LDADDS) testoffscreenwindow_LDADD = $(LDADDS) -testopenwith_LDADD = $(LDADDS) +testappchooser_LDADD = $(LDADDS) testorientable_LDADD = $(LDADDS) testprint_LDADD = $(LDADDS) testrecentchooser_LDADD = $(LDADDS) @@ -378,8 +378,8 @@ testoffscreen_SOURCES = \ testoffscreenwindow_SOURCES = \ testoffscreenwindow.c -testopenwith_SOURCES = \ - testopenwith.c +testappchooser_SOURCES = \ + testappchooser.c testwindows_SOURCES = \ testwindows.c diff --git a/tests/testopenwith.c b/tests/testappchooser.c index 34cd94b466..400b8e232f 100644 --- a/tests/testopenwith.c +++ b/tests/testappchooser.c @@ -1,4 +1,4 @@ -/* testopenwith.c +/* testappchooser.c * Copyright (C) 2010 Red Hat, Inc. * Authors: Cosimo Cecchi * @@ -27,7 +27,7 @@ static GtkWidget *toplevel; static GFile *file; static GtkWidget *grid, *file_l, *open; static GtkWidget *radio_file, *radio_content, *dialog; -static GtkWidget *open_with_widget; +static GtkWidget *app_chooser_widget; static GtkWidget *recommended, *fallback, *other, *all, *radio; static void @@ -42,7 +42,7 @@ dialog_response (GtkDialog *d, if (response_id == GTK_RESPONSE_OK) { - app_info = gtk_open_with_get_app_info (GTK_OPEN_WITH (d)); + app_info = gtk_app_chooser_get_app_info (GTK_APP_CHOOSER (d)); name = g_app_info_get_name (app_info); g_print ("Application selected: %s\n", name); @@ -57,19 +57,19 @@ static void bind_props (void) { g_object_bind_property (recommended, "active", - open_with_widget, "show-recommended", + app_chooser_widget, "show-recommended", G_BINDING_SYNC_CREATE); g_object_bind_property (fallback, "active", - open_with_widget, "show-fallback", + app_chooser_widget, "show-fallback", G_BINDING_SYNC_CREATE); g_object_bind_property (other, "active", - open_with_widget, "show-other", + app_chooser_widget, "show-other", G_BINDING_SYNC_CREATE); g_object_bind_property (all, "active", - open_with_widget, "show-all", + app_chooser_widget, "show-all", G_BINDING_SYNC_CREATE); g_object_bind_property (radio, "active", - open_with_widget, "radio-mode", + app_chooser_widget, "radio-mode", G_BINDING_SYNC_CREATE); } @@ -86,7 +86,7 @@ prepare_dialog (void) if (use_file) { - dialog = gtk_open_with_dialog_new (GTK_WINDOW (toplevel), + dialog = gtk_app_chooser_dialog_new (GTK_WINDOW (toplevel), 0, file); } else @@ -100,7 +100,7 @@ prepare_dialog (void) g_object_unref (info); - dialog = gtk_open_with_dialog_new_for_content_type (GTK_WINDOW (toplevel), + dialog = gtk_app_chooser_dialog_new_for_content_type (GTK_WINDOW (toplevel), 0, content_type); } @@ -109,7 +109,7 @@ prepare_dialog (void) g_free (content_type); - open_with_widget = gtk_open_with_dialog_get_widget (GTK_OPEN_WITH_DIALOG (dialog)); + app_chooser_widget = gtk_app_chooser_dialog_get_widget (GTK_APP_CHOOSER_DIALOG (dialog)); bind_props (); } @@ -188,7 +188,7 @@ main (int argc, gtk_grid_attach_next_to (GTK_GRID (grid), radio_content, radio_file, GTK_POS_BOTTOM, 1, 1); - open = gtk_button_new_with_label ("Trigger Open With dialog"); + open = gtk_button_new_with_label ("Trigger App Chooser dialog"); gtk_grid_attach_next_to (GTK_GRID (grid), open, radio_content, GTK_POS_BOTTOM, 1, 1); |