This is an automated email from the git hooks/post-receive script.

nomad pushed a commit to branch master
in repository apps/xfdashboard.

commit 14d5fc2abe6217afca76fac3a365989af91eac57
Author: Stephan Haller <no...@froevel.de>
Date:   Tue Jan 17 09:49:58 2017 +0100

    Remove "enabled" property from interface XfdashboardPopupMenuItem and 
implement functions at actors (implementing this interface) to get/set enable 
state.
---
 libxfdashboard/popup-menu-item-button.c    | 36 ++++++++++++++++++++++++++
 libxfdashboard/popup-menu-item-separator.c | 32 ++++++++++++++++++++---
 libxfdashboard/popup-menu-item.c           | 41 ------------------------------
 3 files changed, 65 insertions(+), 44 deletions(-)

diff --git a/libxfdashboard/popup-menu-item-button.c 
b/libxfdashboard/popup-menu-item-button.c
index 73b29f6..31a4af5 100644
--- a/libxfdashboard/popup-menu-item-button.c
+++ b/libxfdashboard/popup-menu-item-button.c
@@ -50,6 +50,7 @@ struct _XfdashboardPopupMenuItemButtonPrivate
 {
        /* Instance related */
        ClutterAction                           *clickAction;
+       gboolean                                        enabled;
 };
 
 /* IMPLEMENTATION: Private variables and methods */
@@ -71,11 +72,43 @@ static void 
_xfdashboard_popup_menu_item_button_clicked(XfdashboardClickAction *
 
 /* IMPLEMENTATION: Interface XfdashboardPopupMenuItem */
 
+/* Get enable state of this pop-up menu item */
+static gboolean 
_xfdashboard_popup_menu_item_button_popup_menu_item_get_enabled(XfdashboardPopupMenuItem
 *inMenuItem)
+{
+       XfdashboardPopupMenuItemButton                  *self;
+       XfdashboardPopupMenuItemButtonPrivate   *priv;
+
+       g_return_val_if_fail(XFDASHBOARD_IS_POPUP_MENU_ITEM_BUTTON(inMenuItem), 
FALSE);
+
+       self=XFDASHBOARD_POPUP_MENU_ITEM_BUTTON(inMenuItem);
+       priv=self->priv;
+
+       /* Return enabled state */
+       return(priv->enabled);
+}
+
+/* Set enable state of this pop-up menu item */
+static void 
_xfdashboard_popup_menu_item_button_popup_menu_item_set_enabled(XfdashboardPopupMenuItem
 *inMenuItem, gboolean inEnabled)
+{
+       XfdashboardPopupMenuItemButton                  *self;
+       XfdashboardPopupMenuItemButtonPrivate   *priv;
+
+       g_return_if_fail(XFDASHBOARD_IS_POPUP_MENU_ITEM_BUTTON(inMenuItem));
+
+       self=XFDASHBOARD_POPUP_MENU_ITEM_BUTTON(inMenuItem);
+       priv=self->priv;
+
+       /* Set enabled state */
+       priv->enabled=inEnabled;
+}
+
 /* Interface initialization
  * Set up default functions
  */
 void 
_xfdashboard_popup_menu_item_button_popup_menu_item_iface_init(XfdashboardPopupMenuItemInterface
 *iface)
 {
+       
iface->get_enabled=_xfdashboard_popup_menu_item_button_popup_menu_item_get_enabled;
+       
iface->set_enabled=_xfdashboard_popup_menu_item_button_popup_menu_item_set_enabled;
 }
 
 /* IMPLEMENTATION: GObject */
@@ -99,6 +132,9 @@ static void 
xfdashboard_popup_menu_item_button_init(XfdashboardPopupMenuItemButt
 
        priv=self->priv=XFDASHBOARD_BUTTON_GET_PRIVATE(self);
 
+       /* Set up default values */
+       priv->enabled=TRUE;
+
        /* This actor reacts on events */
        clutter_actor_set_reactive(CLUTTER_ACTOR(self), TRUE);
 
diff --git a/libxfdashboard/popup-menu-item-separator.c 
b/libxfdashboard/popup-menu-item-separator.c
index d84eb07..26ff949 100644
--- a/libxfdashboard/popup-menu-item-separator.c
+++ b/libxfdashboard/popup-menu-item-separator.c
@@ -150,11 +150,37 @@ static gboolean 
_xfdashboard_popup_menu_item_separator_on_draw_line_canvas(Xfdas
 
 /* IMPLEMENTATION: Interface XfdashboardPopupMenuItem */
 
+/* Get enable state of this pop-up menu item */
+static gboolean 
_xfdashboard_popup_menu_item_separator_popup_menu_item_get_enabled(XfdashboardPopupMenuItem
 *inMenuItem)
+{
+       
g_return_val_if_fail(XFDASHBOARD_IS_POPUP_MENU_ITEM_SEPARATOR(inMenuItem), 
FALSE);
+
+       /* Pop-up menu item separators are always disabled so return FALSE */
+       return(FALSE);
+}
+
+/* Set enable state of this pop-up menu item */
+static void 
_xfdashboard_popup_menu_item_separator_popup_menu_item_set_enabled(XfdashboardPopupMenuItem
 *inMenuItem, gboolean inEnabled)
+{
+       g_return_if_fail(XFDASHBOARD_IS_POPUP_MENU_ITEM_SEPARATOR(inMenuItem));
+
+       /* Pop-up menu item separators are always disabled so warn if someone 
tries
+        * to enabled it, otherwise ignore silently and do nothing.
+        */
+       if(inEnabled)
+       {
+               g_warning(_("Object of type %s is always disabled and cannot be 
enabled."),
+                                       G_OBJECT_TYPE_NAME(inMenuItem));
+       }
+}
+
 /* Interface initialization
  * Set up default functions
  */
 void 
_xfdashboard_popup_menu_item_separator_popup_menu_item_iface_init(XfdashboardPopupMenuItemInterface
 *iface)
 {
+       
iface->get_enabled=_xfdashboard_popup_menu_item_separator_popup_menu_item_get_enabled;
+       
iface->set_enabled=_xfdashboard_popup_menu_item_separator_popup_menu_item_set_enabled;
 }
 
 /* IMPLEMENTATION: ClutterActor */
@@ -326,9 +352,9 @@ static void 
_xfdashboard_popup_menu_item_separator_get_property(GObject *inObjec
  */
 static void 
xfdashboard_popup_menu_item_separator_class_init(XfdashboardPopupMenuItemSeparatorClass
 *klass)
 {
-       XfdashboardActorClass   *actorClass=XFDASHBOARD_ACTOR_CLASS(klass);
-       ClutterActorClass               
*clutterActorClass=CLUTTER_ACTOR_CLASS(klass);
-       GObjectClass                    *gobjectClass=G_OBJECT_CLASS(klass);
+       XfdashboardActorClass                           
*actorClass=XFDASHBOARD_ACTOR_CLASS(klass);
+       ClutterActorClass                                       
*clutterActorClass=CLUTTER_ACTOR_CLASS(klass);
+       GObjectClass                                            
*gobjectClass=G_OBJECT_CLASS(klass);
 
        /* Override functions */
        gobjectClass->dispose=_xfdashboard_popup_menu_item_separator_dispose;
diff --git a/libxfdashboard/popup-menu-item.c b/libxfdashboard/popup-menu-item.c
index 4e5b2e1..c6a8f87 100644
--- a/libxfdashboard/popup-menu-item.c
+++ b/libxfdashboard/popup-menu-item.c
@@ -54,27 +54,6 @@ static guint XfdashboardPopupMenuItemSignals[SIGNAL_LAST]={ 
0, };
                                G_OBJECT_TYPE_NAME(self), \
                                vfunc);
 
-/* Default implementation of virtual function "get_enabled" */
-static gboolean 
_xfdashboard_popup_menu_item_real_get_enabled(XfdashboardPopupMenuItem *self)
-{
-       gboolean                        enabled;
-
-       g_return_val_if_fail(XFDASHBOARD_IS_POPUP_MENU_ITEM(self), FALSE);
-
-       /* By default (if not overidden) retrieve state from property "enabled" 
*/
-       g_object_get(self, "enabled", &enabled, NULL);
-
-       return(enabled);
-}
-
-/* Default implementation of virtual function "set_enabled" */
-static void 
_xfdashboard_popup_menu_item_real_set_enabled(XfdashboardPopupMenuItem *self, 
gboolean inEnabled)
-{
-       g_return_if_fail(XFDASHBOARD_IS_POPUP_MENU_ITEM(self));
-
-       /* By default (if not overidden) set property "enabled" to requested 
state */
-       g_object_set(self, "enabled", inEnabled, NULL);
-}
 
 /* IMPLEMENTATION: GObject */
 
@@ -86,29 +65,9 @@ void 
xfdashboard_popup_menu_item_default_init(XfdashboardPopupMenuItemInterface
        static gboolean         initialized=FALSE;
        GParamSpec                      *property;
 
-       /* The following virtual functions should be overriden if default
-        * implementation does not fit.
-        */
-       iface->get_enabled=_xfdashboard_popup_menu_item_real_get_enabled;
-       iface->set_enabled=_xfdashboard_popup_menu_item_real_set_enabled;
-
        /* Define properties, signals and actions */
        if(!initialized)
        {
-               /* Define properties */
-               /**
-                * XfdashboardPopupMenuItem:enabled:
-                *
-                * A flag indicating if this pop-up menu item is enabled or 
disabled.
-                * It is set to %TRUE if enabled and it is set %FALSE if 
disabled.
-                */
-               property=g_param_spec_boolean("enabled",
-                                                                               
_("Enabled"),
-                                                                               
_("Whether this pop-up menu item is enabled"),
-                                                                               
TRUE,
-                                                                               
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
-               g_object_interface_install_property(iface, property);
-
                /* Define signals */
                /**
                 * XfdashboardPopupMenuItem::activated:

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.
_______________________________________________
Xfce4-commits mailing list
Xfce4-commits@xfce.org
https://mail.xfce.org/mailman/listinfo/xfce4-commits

Reply via email to