[gimp] app: Set_busy() on individual dialog factories
- From: Martin Nordholts <martinn src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] app: Set_busy() on individual dialog factories
- Date: Sun, 28 Feb 2010 19:00:10 +0000 (UTC)
commit 2a51c69e9bf7e280cd6b323d302906daeb96bf40
Author: Martin Nordholts <martinn src gnome org>
Date: Sun Feb 28 19:13:14 2010 +0100
app: Set_busy() on individual dialog factories
app/gui/gui-vtable.c | 4 +-
app/widgets/gimpdialogfactory.c | 51 +++++++-------------------------------
app/widgets/gimpdialogfactory.h | 5 +--
3 files changed, 14 insertions(+), 46 deletions(-)
---
diff --git a/app/gui/gui-vtable.c b/app/gui/gui-vtable.c
index 5432e71..917efa9 100644
--- a/app/gui/gui-vtable.c
+++ b/app/gui/gui-vtable.c
@@ -199,7 +199,7 @@ static void
gui_set_busy (Gimp *gimp)
{
gimp_displays_set_busy (gimp);
- gimp_dialog_factories_set_busy ();
+ gimp_dialog_factory_set_busy (global_dialog_factory);
gdk_flush ();
}
@@ -208,7 +208,7 @@ static void
gui_unset_busy (Gimp *gimp)
{
gimp_displays_unset_busy (gimp);
- gimp_dialog_factories_unset_busy ();
+ gimp_dialog_factory_unset_busy (global_dialog_factory);
gdk_flush ();
}
diff --git a/app/widgets/gimpdialogfactory.c b/app/widgets/gimpdialogfactory.c
index cc3942c..fcc0114 100644
--- a/app/widgets/gimpdialogfactory.c
+++ b/app/widgets/gimpdialogfactory.c
@@ -87,12 +87,6 @@ static gboolean gimp_dialog_factory_dialog_configure (GtkWidget
GimpDialogFactory *factory);
static void gimp_dialog_factory_hide (GimpDialogFactory *factory);
static void gimp_dialog_factory_show (GimpDialogFactory *factory);
-static void gimp_dialog_factories_set_busy_foreach (gconstpointer key,
- GimpDialogFactory *factory,
- gpointer data);
-static void gimp_dialog_factories_unset_busy_foreach (gconstpointer key,
- GimpDialogFactory *factory,
- gpointer data);
G_DEFINE_TYPE (GimpDialogFactory, gimp_dialog_factory, GIMP_TYPE_OBJECT)
@@ -1089,33 +1083,6 @@ gimp_dialog_factory_hide_with_display (GimpDialogFactory *factory)
}
}
-void
-gimp_dialog_factories_set_busy (void)
-{
- GimpDialogFactoryClass *factory_class;
-
- factory_class = g_type_class_peek (GIMP_TYPE_DIALOG_FACTORY);
-
- if (factory_class)
- g_hash_table_foreach (factory_class->factories,
- (GHFunc) gimp_dialog_factories_set_busy_foreach,
- NULL);
-}
-
-void
-gimp_dialog_factories_unset_busy (void)
-{
- GimpDialogFactoryClass *factory_class;
-
- factory_class = g_type_class_peek (GIMP_TYPE_DIALOG_FACTORY);
-
- if (factory_class)
- g_hash_table_foreach (factory_class->factories,
- (GHFunc) gimp_dialog_factories_unset_busy_foreach,
- NULL);
-}
-
-
static GQuark gimp_dialog_factory_key = 0;
static GQuark gimp_dialog_factory_entry_key = 0;
@@ -1443,15 +1410,16 @@ gimp_dialog_factory_show (GimpDialogFactory *factory)
}
}
-static void
-gimp_dialog_factories_set_busy_foreach (gconstpointer key,
- GimpDialogFactory *factory,
- gpointer data)
+void
+gimp_dialog_factory_set_busy (GimpDialogFactory *factory)
{
GdkDisplay *display = NULL;
GdkCursor *cursor = NULL;
GList *list;
+ if (! factory)
+ return;
+
for (list = factory->p->open_dialogs; list; list = g_list_next (list))
{
GtkWidget *widget = list->data;
@@ -1481,13 +1449,14 @@ gimp_dialog_factories_set_busy_foreach (gconstpointer key,
gdk_cursor_unref (cursor);
}
-static void
-gimp_dialog_factories_unset_busy_foreach (gconstpointer key,
- GimpDialogFactory *factory,
- gpointer data)
+void
+gimp_dialog_factory_unset_busy (GimpDialogFactory *factory)
{
GList *list;
+ if (! factory)
+ return;
+
for (list = factory->p->open_dialogs; list; list = g_list_next (list))
{
GtkWidget *widget = list->data;
diff --git a/app/widgets/gimpdialogfactory.h b/app/widgets/gimpdialogfactory.h
index 07b940b..f946048 100644
--- a/app/widgets/gimpdialogfactory.h
+++ b/app/widgets/gimpdialogfactory.h
@@ -166,9 +166,8 @@ void gimp_dialog_factory_set_state (GimpDialogFactory
GimpDialogsState gimp_dialog_factory_get_state (GimpDialogFactory *factory);
void gimp_dialog_factory_show_with_display (GimpDialogFactory *factory);
void gimp_dialog_factory_hide_with_display (GimpDialogFactory *factory);
-
-void gimp_dialog_factories_set_busy (void);
-void gimp_dialog_factories_unset_busy (void);
+void gimp_dialog_factory_set_busy (GimpDialogFactory *factory);
+void gimp_dialog_factory_unset_busy (GimpDialogFactory *factory);
GimpDialogFactory * gimp_dialog_factory_from_widget (GtkWidget *dialog,
GimpDialogFactoryEntry **entry);
void gimp_dialog_factory_set_has_min_size (GtkWindow *window,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]