diff options
author | Ted Gould <ted@canonical.com> | 2009-08-03 18:50:57 +0100 |
---|---|---|
committer | Ted Gould <ted@canonical.com> | 2009-08-03 18:50:57 +0100 |
commit | b3d3f3de3bb73ac8cc77ed5c8bde5aeb76073af2 (patch) | |
tree | 34ef8db1cf698114b04b736ef432c6bdc39c208c /libindicate/indicator.c | |
parent | 573c458ef73f399868624e0446f69dc03ced69cb (diff) | |
download | libayatana-indicator-b3d3f3de3bb73ac8cc77ed5c8bde5aeb76073af2.tar.gz libayatana-indicator-b3d3f3de3bb73ac8cc77ed5c8bde5aeb76073af2.tar.bz2 libayatana-indicator-b3d3f3de3bb73ac8cc77ed5c8bde5aeb76073af2.zip |
Adding a function to set the server of the indicator upon creation. indicate_indicator_new_with_server()
Diffstat (limited to 'libindicate/indicator.c')
-rw-r--r-- | libindicate/indicator.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/libindicate/indicator.c b/libindicate/indicator.c index 76eb616..92712bd 100644 --- a/libindicate/indicator.c +++ b/libindicate/indicator.c @@ -204,6 +204,36 @@ indicate_indicator_new (void) } /** + indicate_indicator_new_with_server: + @server: The server that should be associated with this indicator. + + Builds a new indicator object using g_object_new() and sets + the server to the specified server. Also, adds a reference + to the server. + + Return value: A pointer to a new #IndicateIndicator object. +*/ +IndicateIndicator * +indicate_indicator_new_with_server (IndicateServer * server) +{ + g_return_val_if_fail(server != NULL, NULL); + + IndicateIndicator * indicator = g_object_new(INDICATE_TYPE_INDICATOR, NULL); + + IndicateIndicatorPrivate * priv = INDICATE_INDICATOR_GET_PRIVATE(indicator); + if (priv->server != NULL) { + g_object_unref(priv->server); + priv->server = NULL; + } + + priv->server = server; + g_object_ref(priv->server); + + return indicator; +} + + +/** indicate_indicator_show: @indicator: a #IndicateIndicator to act on |