X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmodest-dimming-rule.h;h=d1f1a295aa3ad4be77c1a3f75b9527bd921f9f73;hp=2cd03c02a1dd8f6321b862c50a85471f02c78514;hb=12a672c559d983c4e49a7e4054ee14c0177ecb1c;hpb=17e149470f77d037df836438e6f3fe00fc632b20 diff --git a/src/modest-dimming-rule.h b/src/modest-dimming-rule.h index 2cd03c0..d1f1a29 100644 --- a/src/modest-dimming-rule.h +++ b/src/modest-dimming-rule.h @@ -49,6 +49,8 @@ typedef struct _ModestDimmingRuleClass ModestDimmingRuleClass; typedef gboolean (*ModestDimmingCallback) (ModestWindow *self, gpointer user_data); +#define MODEST_DIMMING_CALLBACK(x) ((ModestDimmingCallback) (x)) + struct _ModestDimmingRule { GObject parent; @@ -82,6 +84,25 @@ ModestDimmingRule* modest_dimming_rule_new (ModestWindow *win, ModestDimmingCallback dimming_rule, const gchar *action_path); + +/** + * modest_dimming_rule_new: + * @win: the #ModestWindow object which executes dimming rule. + * @dimming_rule: a #ModestDimmingCallback function to check dimmed status. + * @widget: the widget the rule will apply to + * + * Creates a new instance of class #ModestDimmingRule using parameters to + * fill private data, required to process dimming rules. All parameters + * are required and NULL will be returned if one of these parameters is + * invalid or NULL. + * + * Returns: a new instance of #ModestDimmingRule class, or NULL, if parameters + * are invalid. + **/ +ModestDimmingRule* +modest_dimming_rule_new_from_widget (ModestWindow *win, + ModestDimmingCallback dimming_rule, + GtkWidget *widget); /** * modest_dimming_rule_process: * @rule: a #ModestDimmingRule object to process. @@ -116,6 +137,29 @@ void modest_dimming_rule_set_group (ModestDimmingRule *rule, ModestDimmingRulesGroup * modest_dimming_rule_get_group (ModestDimmingRule *rule); +/** + * modest_dimming_rule_get_widget: + * @rule: a #ModestDimmingRule + * + * Widget the dimming rule is referenced to + * + * Returns: a #GtkWidget or %NULL if the dimming rule has no widget attached + */ +const gchar* +modest_dimming_rule_get_action_path (ModestDimmingRule *rule); + +/** + * modest_dimming_rule_get_widget: + * @rule: a #ModestDimmingRule + * + * In case the dimming rule references directly a widget, it + * returns the widget. + * + * Returns: a #GtkWidget or %NULL if the dimming rule has no direct widget attached + */ +GtkWidget * +modest_dimming_rule_get_widget (ModestDimmingRule *rule); + void modest_dimming_rule_set_notification (ModestDimmingRule *rule, const gchar *notification);