~jbicha/hud/build-depend-on-valac-not-gir

« back to all changes in this revision

Viewing changes to service/indicator-tracker.h

Merging the HUD into indicator-appmenu

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
Tracks the various indicators to know when they come on and off
 
3
the bus for searching their menus.
 
4
 
 
5
Copyright 2011 Canonical Ltd.
 
6
 
 
7
Authors:
 
8
    Ted Gould <ted@canonical.com>
 
9
 
 
10
This program is free software: you can redistribute it and/or modify it 
 
11
under the terms of the GNU General Public License version 3, as published 
 
12
by the Free Software Foundation.
 
13
 
 
14
This program is distributed in the hope that it will be useful, but 
 
15
WITHOUT ANY WARRANTY; without even the implied warranties of 
 
16
MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR 
 
17
PURPOSE.  See the GNU General Public License for more details.
 
18
 
 
19
You should have received a copy of the GNU General Public License along 
 
20
with this program.  If not, see <http://www.gnu.org/licenses/>.
 
21
*/
 
22
 
 
23
#ifndef __INDICATOR_TRACKER_H__
 
24
#define __INDICATOR_TRACKER_H__
 
25
 
 
26
#include <glib.h>
 
27
#include <glib-object.h>
 
28
 
 
29
G_BEGIN_DECLS
 
30
 
 
31
#define INDICATOR_TRACKER_TYPE            (indicator_tracker_get_type ())
 
32
#define INDICATOR_TRACKER(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), INDICATOR_TRACKER_TYPE, IndicatorTracker))
 
33
#define INDICATOR_TRACKER_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), INDICATOR_TRACKER_TYPE, IndicatorTrackerClass))
 
34
#define IS_INDICATOR_TRACKER(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), INDICATOR_TRACKER_TYPE))
 
35
#define IS_INDICATOR_TRACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), INDICATOR_TRACKER_TYPE))
 
36
#define INDICATOR_TRACKER_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), INDICATOR_TRACKER_TYPE, IndicatorTrackerClass))
 
37
 
 
38
typedef struct _IndicatorTracker          IndicatorTracker;
 
39
typedef struct _IndicatorTrackerClass     IndicatorTrackerClass;
 
40
typedef struct _IndicatorTrackerPrivate   IndicatorTrackerPrivate;
 
41
typedef struct _IndicatorTrackerIndicator IndicatorTrackerIndicator;
 
42
 
 
43
struct _IndicatorTrackerClass {
 
44
        GObjectClass parent_class;
 
45
};
 
46
 
 
47
struct _IndicatorTracker {
 
48
        GObject parent;
 
49
        IndicatorTrackerPrivate * priv;
 
50
};
 
51
 
 
52
struct _IndicatorTrackerIndicator {
 
53
        gchar * name;
 
54
        gchar * dbus_name;
 
55
        gchar * dbus_name_wellknown;
 
56
        gchar * dbus_object;
 
57
        gchar * prefix;
 
58
};
 
59
 
 
60
GType indicator_tracker_get_type (void);
 
61
IndicatorTracker * indicator_tracker_new (void);
 
62
GArray * indicator_tracker_get_indicators (IndicatorTracker * tracker);
 
63
 
 
64
G_END_DECLS
 
65
 
 
66
#endif