*/
#include "modest-dimming-rule.h"
+#include "modest-ui-dimming-manager.h"
static void modest_dimming_rule_class_init (ModestDimmingRuleClass *klass);
static void modest_dimming_rule_init (ModestDimmingRule *obj);
static void modest_dimming_rule_finalize (GObject *obj);
+static void modest_dimming_rule_dispose (GObject *obj);
typedef struct _ModestDimmingRulePrivate ModestDimmingRulePrivate;
struct _ModestDimmingRulePrivate {
parent_class = g_type_class_peek_parent (klass);
gobject_class->finalize = modest_dimming_rule_finalize;
+ gobject_class->dispose = modest_dimming_rule_dispose;
g_type_class_add_private (gobject_class, sizeof(ModestDimmingRulePrivate));
}
G_OBJECT_CLASS(parent_class)->finalize (obj);
}
+static void
+modest_dimming_rule_dispose (GObject *obj)
+{
+ ModestDimmingRulePrivate *priv;
+
+ priv = MODEST_DIMMING_RULE_GET_PRIVATE(obj);
+
+ if (priv->group != NULL) {
+ g_object_unref (priv->group);
+ priv->group = NULL;
+ }
+
+ G_OBJECT_CLASS(parent_class)->dispose (obj);
+}
+
ModestDimmingRule*
modest_dimming_rule_new(ModestWindow *win,
else
g_printerr ("modest: action path '%s' has not associatd action\n", priv->action_path);
} else if (priv->widget != NULL) {
-#ifdef MODEST_TOOLKIT_HILDON2
- if (GTK_IS_TOOL_ITEM (priv->widget)) {
+ ModestUIDimmingMode mode;
+
+ mode = modest_ui_dimming_manager_get_widget_dimming_mode (priv->widget);
+ switch (mode) {
+ case MODEST_UI_DIMMING_MODE_HIDE:
+ if (dimmed) {
+ gtk_widget_hide (GTK_WIDGET (priv->widget));
+ } else {
+ gtk_widget_show (GTK_WIDGET (priv->widget));
+ }
+ break;
+ case MODEST_UI_DIMMING_MODE_DIM:
+ default:
gtk_widget_set_sensitive (priv->widget, !dimmed);
- } else {
- if (dimmed)
- gtk_widget_hide (priv->widget);
- else
- gtk_widget_show (priv->widget);
+ break;
}
-#else
- gtk_widget_set_sensitive (priv->widget, !dimmed);
-#endif
}
}