[gimp] Turn "popup-manager" into a construct-only property and pass it accordingly



commit 1ae56327539b4e68b81ed94ac78a8311a8ce6f8e
Author: Michael Natterer <mitch gimp org>
Date:   Fri Sep 25 12:28:49 2009 +0200

    Turn "popup-manager" into a construct-only property and pass it accordingly

 app/display/gimpdisplayshell.c |   17 +++++++++++++++--
 1 files changed, 15 insertions(+), 2 deletions(-)
---
diff --git a/app/display/gimpdisplayshell.c b/app/display/gimpdisplayshell.c
index c197881..d29da66 100644
--- a/app/display/gimpdisplayshell.c
+++ b/app/display/gimpdisplayshell.c
@@ -83,6 +83,7 @@
 enum
 {
   PROP_0,
+  PROP_POPUP_MANAGER,
   PROP_DISPLAY,
   PROP_UNIT,
   PROP_TITLE,
@@ -211,6 +212,13 @@ gimp_display_shell_class_init (GimpDisplayShellClass *klass)
   klass->scrolled                  = NULL;
   klass->reconnect                 = NULL;
 
+  g_object_class_install_property (object_class, PROP_POPUP_MANAGER,
+                                   g_param_spec_object ("popup-manager",
+                                                        NULL, NULL,
+                                                        GIMP_TYPE_UI_MANAGER,
+                                                        GIMP_PARAM_READWRITE |
+                                                        G_PARAM_CONSTRUCT_ONLY));
+
   g_object_class_install_property (object_class, PROP_DISPLAY,
                                    g_param_spec_object ("display", NULL, NULL,
                                                         GIMP_TYPE_DISPLAY,
@@ -444,6 +452,9 @@ gimp_display_shell_set_property (GObject      *object,
 
   switch (property_id)
     {
+    case PROP_POPUP_MANAGER:
+      shell->popup_manager = g_value_get_object (value);
+      break;
     case PROP_DISPLAY:
       shell->display = g_value_get_object (value);
       break;
@@ -480,6 +491,9 @@ gimp_display_shell_get_property (GObject    *object,
 
   switch (property_id)
     {
+    case PROP_POPUP_MANAGER:
+      g_value_set_object (value, shell->popup_manager);
+      break;
     case PROP_DISPLAY:
       g_value_set_object (value, shell->display);
       break;
@@ -848,6 +862,7 @@ gimp_display_shell_new (GimpDisplay       *display,
   shell = g_object_new (GIMP_TYPE_DISPLAY_SHELL,
                         "menu-factory",    menu_factory,
                         "display-factory", display_factory,
+                        "popup-manager",   popup_manager,
                         "display",         display,
                         "unit",            unit,
                         /* The window position will be overridden by the
@@ -858,8 +873,6 @@ gimp_display_shell_new (GimpDisplay       *display,
                         GTK_WIN_POS_CENTER,
                         NULL);
 
-  shell->popup_manager = popup_manager;
-
   if (display->image)
     {
       options = shell->options;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]