2
* Copyright © 2012 Canonical Ltd.
4
* This program is free software: you can redistribute it and/or modify it
5
* under the terms of the GNU General Public License version 3, as
6
* published by the Free Software Foundation.
8
* This program is distributed in the hope that it will be useful, but
9
* WITHOUT ANY WARRANTY; without even the implied warranties of
10
* MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11
* PURPOSE. See the GNU General Public License for more details.
13
* You should have received a copy of the GNU General Public License along
14
* with this program. If not, see <http://www.gnu.org/licenses/>.
16
* Author: Ted Gould <ted@canonical.com>
19
#ifndef __HUD_APPLICATION_LIST_H__
20
#define __HUD_APPLICATION_LIST_H__
22
#include <glib-object.h>
23
#include "application-source.h"
24
#include "hudsource.h"
28
#define HUD_TYPE_APPLICATION_LIST (hud_application_list_get_type ())
29
#define HUD_APPLICATION_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), HUD_TYPE_APPLICATION_LIST, HudApplicationList))
30
#define HUD_APPLICATION_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), HUD_TYPE_APPLICATION_LIST, HudApplicationListClass))
31
#define HUD_IS_APPLICATION_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), HUD_TYPE_APPLICATION_LIST))
32
#define HUD_IS_APPLICATION_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), HUD_TYPE_APPLICATION_LIST))
33
#define HUD_APPLICATION_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), HUD_TYPE_APPLICATION_LIST, HudApplicationListClass))
35
typedef struct _HudApplicationList HudApplicationList;
36
typedef struct _HudApplicationListClass HudApplicationListClass;
37
typedef struct _HudApplicationListPrivate HudApplicationListPrivate;
39
struct _HudApplicationListClass {
40
GObjectClass parent_class;
42
void (*matching_setup) (HudApplicationList * list);
43
HudSource * (*get_focused_app) (HudApplicationList * list);
46
struct _HudApplicationList {
48
HudApplicationListPrivate * priv;
51
GType hud_application_list_get_type (void);
52
HudApplicationList * hud_application_list_new (void);
53
HudApplicationSource * hud_application_list_get_source (HudApplicationList * list,
55
HudSource * hud_application_list_get_focused_app (HudApplicationList * list);
56
HudSource * hud_application_list_get_side_stage_focused_app (HudApplicationList * list);
57
GList * hud_application_list_get_apps (HudApplicationList * list);
59
HudCollector * hud_application_list_get_active_collector (HudApplicationList * list);
63
#endif /* __HUD_APPLICATION_LIST_H__ */