aboutsummaryrefslogtreecommitdiff
path: root/libindicator/indicator-object.h
diff options
context:
space:
mode:
authorCharles Kerr <charles.kerr@canonical.com>2012-01-23 05:39:50 -0600
committerCharles Kerr <charles.kerr@canonical.com>2012-01-23 05:39:50 -0600
commit4f4190f71f8495e5bcf6779d73157931572e42ac (patch)
treef580039098edc4be81bd39305f052013d18e8d38 /libindicator/indicator-object.h
parent8cb8b9f16b2f24dd99e7e4d86cb46415bfa99cd9 (diff)
downloadlibayatana-indicator-4f4190f71f8495e5bcf6779d73157931572e42ac.tar.gz
libayatana-indicator-4f4190f71f8495e5bcf6779d73157931572e42ac.tar.bz2
libayatana-indicator-4f4190f71f8495e5bcf6779d73157931572e42ac.zip
another iteration of the indicator-object visibility support patch, incorporating ideas from discussion with ted
- some functions were public when they should have been private - the hide/show handler is now a virtual function & is documented in indicator-object.h - added unit tests - the GSettings monitor has been removed
Diffstat (limited to 'libindicator/indicator-object.h')
-rw-r--r--libindicator/indicator-object.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/libindicator/indicator-object.h b/libindicator/indicator-object.h
index a46600f..803f1b3 100644
--- a/libindicator/indicator-object.h
+++ b/libindicator/indicator-object.h
@@ -60,9 +60,6 @@ typedef enum
#define INDICATOR_OBJECT_SIGNAL_SECONDARY_ACTIVATE "secondary-activate"
#define INDICATOR_OBJECT_SIGNAL_SECONDARY_ACTIVATE_ID (g_signal_lookup(INDICATOR_OBJECT_SIGNAL_SECONDARY_ACTIVATE, INDICATOR_OBJECT_TYPE))
-/* the name of the GSettings schema-id property */
-#define INDICATOR_OBJECT_GSETTINGS_SCHEMA_ID "indicator-object-gsettings-schema-id"
-
/* the name of the property to decide whether or not entries are visible by default */
#define INDICATOR_OBJECT_DEFAULT_VISIBILITY "indicator-object-default-visibility"
@@ -97,6 +94,12 @@ typedef struct _IndicatorObjectEntry IndicatorObjectEntry;
@get_show_now: Returns whether the entry is requesting to
be shown "right now" in that it has something important
to tell the user.
+ @entry_being_removed: Called before an entry is removed.
+ The default implementation is to ref and unparent the
+ entry's widgets so that they can be re-added later.
+ @entry_was_added: Called after an entry is added.
+ The default implementation is to unref the entry's widgets if
+ previously reffed by entry_being_removed's default impementation
@entry_activate: Should be called when the menus for a given
entry are shown to the user.
@entry_close: Called when the menu is closed.
@@ -123,6 +126,9 @@ struct _IndicatorObjectClass {
guint (*get_location) (IndicatorObject * io, IndicatorObjectEntry * entry);
gboolean (*get_show_now) (IndicatorObject * io, IndicatorObjectEntry * entry);
+ void (*entry_being_removed) (IndicatorObject * io, IndicatorObjectEntry * entry);
+ void (*entry_was_added) (IndicatorObject * io, IndicatorObjectEntry * entry);
+
void (*entry_activate) (IndicatorObject * io, IndicatorObjectEntry * entry, guint timestamp);
void (*entry_close) (IndicatorObject * io, IndicatorObjectEntry * entry, guint timestamp);