aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2011-01-04 15:56:53 -0600
committerTed Gould <ted@gould.cx>2011-01-04 15:56:53 -0600
commit949766634a89457fe0477938e189352cba93c163 (patch)
tree6d6c012f279da1abf9bf71dd20868f4fa6a395b9
parent18a5e647a83954ed487e085a3f682d5b62c1e751 (diff)
downloadlibayatana-indicator-949766634a89457fe0477938e189352cba93c163.tar.gz
libayatana-indicator-949766634a89457fe0477938e189352cba93c163.tar.bz2
libayatana-indicator-949766634a89457fe0477938e189352cba93c163.zip
Making it a real signal now
-rw-r--r--libindicator/indicator-object-marshal.list1
-rw-r--r--libindicator/indicator-object.c19
-rw-r--r--libindicator/indicator-object.h2
3 files changed, 22 insertions, 0 deletions
diff --git a/libindicator/indicator-object-marshal.list b/libindicator/indicator-object-marshal.list
index bb447bb..4ea1e8b 100644
--- a/libindicator/indicator-object-marshal.list
+++ b/libindicator/indicator-object-marshal.list
@@ -1,3 +1,4 @@
VOID: POINTER, UINT, UINT
VOID: UINT,ENUM
VOID: POINTER, UINT
+VOID: POINTER, BOOLEAN
diff --git a/libindicator/indicator-object.c b/libindicator/indicator-object.c
index 41484a6..c1aa6af 100644
--- a/libindicator/indicator-object.c
+++ b/libindicator/indicator-object.c
@@ -59,6 +59,7 @@ enum {
ENTRY_MOVED,
SCROLL,
MENU_SHOW,
+ SHOW_NOW_CHANGED,
LAST_SIGNAL
};
@@ -181,6 +182,24 @@ indicator_object_class_init (IndicatorObjectClass *klass)
_indicator_object_marshal_VOID__POINTER_UINT,
G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_UINT);
+ /**
+ IndicatorObject::show-now-changed:
+ @arg0: The #IndicatorObject object
+ @arg1: A pointer to the #IndicatorObjectEntry that
+ is changing it's state
+ @arg2: The state of whether the entry should be shown
+
+ Whether the entry should be shown or not has changed so we need
+ to tell whoever is displaying it.
+ */
+ signals[SHOW_NOW_CHANGED] = g_signal_new (INDICATOR_OBJECT_SIGNAL_SHOW_NOW_CHANGED,
+ G_TYPE_FROM_CLASS(klass),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (IndicatorObjectClass, show_now_changed),
+ NULL, NULL,
+ _indicator_object_marshal_VOID__POINTER_BOOLEAN,
+ G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_BOOLEAN);
+
return;
}
diff --git a/libindicator/indicator-object.h b/libindicator/indicator-object.h
index 1d3f4e9..3491e1f 100644
--- a/libindicator/indicator-object.h
+++ b/libindicator/indicator-object.h
@@ -53,6 +53,8 @@ typedef enum
#define INDICATOR_OBJECT_SIGNAL_SCROLL_ID (g_signal_lookup(INDICATOR_OBJECT_SIGNAL_SCROLL, INDICATOR_OBJECT_TYPE))
#define INDICATOR_OBJECT_SIGNAL_MENU_SHOW "menu-show"
#define INDICATOR_OBJECT_SIGNAL_MENU_SHOW_ID (g_signal_lookup(INDICATOR_OBJECT_SIGNAL_MENU_SHOW, INDICATOR_OBJECT_TYPE))
+#define INDICATOR_OBJECT_SIGNAL_SHOW_NOW_CHANGED "show-now-changed"
+#define INDICATOR_OBJECT_SIGNAL_SHOW_NOW_CHANGED_ID (g_signal_lookup(INDICATOR_OBJECT_SIGNAL_SHOW_NOW_CHANGED, INDICATOR_OBJECT_TYPE))
typedef struct _IndicatorObject IndicatorObject;
typedef struct _IndicatorObjectClass IndicatorObjectClass;