[gnome-keyring] gcr: Fixes for the import button and viewer widget
- From: Stefan Walter <stefw src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-keyring] gcr: Fixes for the import button and viewer widget
- Date: Tue, 27 Sep 2011 15:15:48 +0000 (UTC)
commit 137f0ddfd3d4f0bea59a90d90acb796f3e3010f8
Author: Stef Walter <stefw collabora co uk>
Date: Thu Sep 22 21:25:59 2011 +0200
gcr: Fixes for the import button and viewer widget
* Update the button before anything queued.
* Fix viewer widget arguments
gcr/gcr-import-button.c | 120 ++++++++++++++++++++++++-----------------------
gcr/gcr-viewer-widget.c | 2 +-
gcr/gcr-viewer-widget.h | 2 +-
3 files changed, 63 insertions(+), 61 deletions(-)
---
diff --git a/gcr/gcr-import-button.c b/gcr/gcr-import-button.c
index 15bd961..253ba54 100644
--- a/gcr/gcr-import-button.c
+++ b/gcr/gcr-import-button.c
@@ -91,6 +91,65 @@ gcr_import_button_init (GcrImportButton *self)
}
static void
+update_import_button (GcrImportButton *self)
+{
+ gchar *message;
+ gchar *label;
+
+ /* Importing, set a spinner */
+ if (self->pv->importing) {
+ gtk_widget_show (self->pv->spinner);
+ gtk_widget_hide (self->pv->arrow);
+ gtk_widget_set_sensitive (GTK_WIDGET (self), FALSE);
+ gtk_widget_set_tooltip_text (GTK_WIDGET (self), _("Import is in progress..."));
+
+ } else if (self->pv->imported) {
+ gtk_widget_hide (self->pv->spinner);
+ gtk_widget_hide (self->pv->arrow);
+ gtk_widget_set_sensitive (GTK_WIDGET (self), FALSE);
+ message = g_strdup_printf (_("Imported to: %s"), self->pv->imported);
+ gtk_widget_set_tooltip_text (GTK_WIDGET (self), message);
+ g_free (message);
+
+ /* Not importing, but have importers */
+ } else if (self->pv->importers) {
+ gtk_widget_hide (self->pv->spinner);
+ gtk_widget_set_sensitive (GTK_WIDGET (self), TRUE);
+
+ /* More than one importer */
+ if (self->pv->importers->next) {
+ gtk_widget_show (self->pv->arrow);
+ gtk_widget_set_tooltip_text (GTK_WIDGET (self), NULL);
+
+ /* Only one importer */
+ } else {
+ gtk_widget_hide (self->pv->arrow);
+ g_object_get (self->pv->importers->data, "label", &label, NULL);
+ message = g_strdup_printf (_("Import to: %s"), label);
+ gtk_widget_set_tooltip_text (GTK_WIDGET (self), message);
+ g_free (message);
+ g_free (label);
+ }
+
+ /* No importers, none compatible */
+ } else if (self->pv->created) {
+ gtk_widget_hide (self->pv->spinner);
+ gtk_widget_hide (self->pv->arrow);
+
+ gtk_widget_set_sensitive (GTK_WIDGET (self), FALSE);
+ gtk_widget_set_tooltip_text (GTK_WIDGET (self), _("Cannot import because there are no compatible importers"));
+
+ /* No importers yet added */
+ } else {
+ gtk_widget_hide (self->pv->spinner);
+ gtk_widget_hide (self->pv->arrow);
+
+ gtk_widget_set_sensitive (GTK_WIDGET (self), FALSE);
+ gtk_widget_set_tooltip_text (GTK_WIDGET (self), _("No data to import"));
+ }
+}
+
+static void
gcr_import_button_constructed (GObject *obj)
{
GcrImportButton *self = GCR_IMPORT_BUTTON (obj);
@@ -114,6 +173,8 @@ gcr_import_button_constructed (GObject *obj)
gtk_widget_show (grid);
gtk_container_add (GTK_CONTAINER (self), grid);
+
+ update_import_button (self);
}
static void
@@ -177,65 +238,6 @@ gcr_import_button_finalize (GObject *obj)
}
static void
-update_import_button (GcrImportButton *self)
-{
- gchar *message;
- gchar *label;
-
- /* Importing, set a spinner */
- if (self->pv->importing) {
- gtk_widget_show (self->pv->spinner);
- gtk_widget_hide (self->pv->arrow);
- gtk_widget_set_sensitive (GTK_WIDGET (self), FALSE);
- gtk_widget_set_tooltip_text (GTK_WIDGET (self), _("Import is in progress..."));
-
- } else if (self->pv->imported) {
- gtk_widget_hide (self->pv->spinner);
- gtk_widget_hide (self->pv->arrow);
- gtk_widget_set_sensitive (GTK_WIDGET (self), FALSE);
- message = g_strdup_printf (_("Imported to: %s"), self->pv->imported);
- gtk_widget_set_tooltip_text (GTK_WIDGET (self), message);
- g_free (message);
-
- /* Not importing, but have importers */
- } else if (self->pv->importers) {
- gtk_widget_hide (self->pv->spinner);
- gtk_widget_set_sensitive (GTK_WIDGET (self), TRUE);
-
- /* More than one importer */
- if (self->pv->importers->next) {
- gtk_widget_show (self->pv->arrow);
- gtk_widget_set_tooltip_text (GTK_WIDGET (self), NULL);
-
- /* Only one importer */
- } else {
- gtk_widget_hide (self->pv->arrow);
- g_object_get (self->pv->importers->data, "label", &label, NULL);
- message = g_strdup_printf (_("Import to: %s"), label);
- gtk_widget_set_tooltip_text (GTK_WIDGET (self), message);
- g_free (message);
- g_free (label);
- }
-
- /* No importers, none compatible */
- } else if (self->pv->created) {
- gtk_widget_hide (self->pv->spinner);
- gtk_widget_hide (self->pv->arrow);
-
- gtk_widget_set_sensitive (GTK_WIDGET (self), FALSE);
- gtk_widget_set_tooltip_text (GTK_WIDGET (self), _("Cannot import because there are no compatible importers"));
-
- /* No importers yet added */
- } else {
- gtk_widget_hide (self->pv->spinner);
- gtk_widget_hide (self->pv->arrow);
-
- gtk_widget_set_sensitive (GTK_WIDGET (self), FALSE);
- gtk_widget_set_tooltip_text (GTK_WIDGET (self), _("No data to import"));
- }
-}
-
-static void
on_import_complete (GObject *importer,
GAsyncResult *result,
gpointer user_data)
diff --git a/gcr/gcr-viewer-widget.c b/gcr/gcr-viewer-widget.c
index a4bf8c6..5db8b62 100644
--- a/gcr/gcr-viewer-widget.c
+++ b/gcr/gcr-viewer-widget.c
@@ -416,7 +416,7 @@ gcr_viewer_widget_load_file (GcrViewerWidget *self,
void
gcr_viewer_widget_load_data (GcrViewerWidget *self,
const gchar *display_name,
- gconstpointer *data,
+ gconstpointer data,
gsize n_data)
{
GError *error = NULL;
diff --git a/gcr/gcr-viewer-widget.h b/gcr/gcr-viewer-widget.h
index a4dbbb1..4e0b746 100644
--- a/gcr/gcr-viewer-widget.h
+++ b/gcr/gcr-viewer-widget.h
@@ -47,7 +47,7 @@ void gcr_viewer_widget_load_file (GcrViewerWidget *self,
void gcr_viewer_widget_load_data (GcrViewerWidget *self,
const gchar *display_name,
- gconstpointer *data,
+ gconstpointer data,
gsize n_data);
#endif /* GCR_VIEWER_WIDGET_H */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]