summaryrefslogtreecommitdiff
path: root/lib/river/include/astal-river.h.in
blob: a8f58e60caf4cb3a81aebd5047b64d4dc13221ba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#ifndef ASTAL_RIVER_H
#define ASTAL_RIVER_H

#include <glib-object.h>


#define ASTAL_RIVER_MAJOR_VERSION @MAJOR_VERSION@
#define ASTAL_RIVER_MINOR_VERSION @MINOR_VERSION@
#define ASTAL_RIVER_MICRO_VERSION @MICRO_VERSION@
#define ASTAL_RIVER_VERSION "@VERSION@"


G_BEGIN_DECLS

#define ASTAL_RIVER_TYPE_OUTPUT (astal_river_output_get_type())

G_DECLARE_FINAL_TYPE(AstalRiverOutput, astal_river_output, ASTAL_RIVER, OUTPUT, GObject)

guint astal_river_output_get_id(AstalRiverOutput *self);

gchar *astal_river_output_get_name(AstalRiverOutput *self);

gchar *astal_river_output_get_layout_name(AstalRiverOutput *self);

gchar *astal_river_output_get_focused_view(AstalRiverOutput *self);

guint astal_river_output_get_focused_tags(AstalRiverOutput *self);

void astal_river_output_set_focused_tags(AstalRiverOutput* self, guint tags);

guint astal_river_output_get_urgent_tags(AstalRiverOutput *self);

guint astal_river_output_get_occupied_tags(AstalRiverOutput *self);

#define ASTAL_RIVER_TYPE_RIVER (astal_river_river_get_type())

G_DECLARE_FINAL_TYPE(AstalRiverRiver, astal_river_river, ASTAL_RIVER, RIVER, GObject)

AstalRiverRiver *astal_river_river_new();

AstalRiverRiver *astal_river_river_get_default();
AstalRiverRiver *astal_river_get_default();

GList *astal_river_river_get_outputs(AstalRiverRiver *self);

AstalRiverOutput *astal_river_river_get_output(AstalRiverRiver *self, gchar *name);

gchar *astal_river_river_get_focused_view(AstalRiverRiver *self);

gchar *astal_river_river_get_focused_output(AstalRiverRiver *self);

gchar *astal_river_river_get_mode(AstalRiverRiver *self);

/**
 * AstalRiverCommandCallback:
 * @success: a #gboolean indicating whether the command was executed successfully
 * @msg: a string containing the result of the command
 *
 * A callback function that is called after a river command is run.
 */
typedef void (*AstalRiverCommandCallback)(gboolean success, const gchar *msg);

void astal_river_river_run_command_async(AstalRiverRiver *self, gint length, const gchar **cmd,
                                         AstalRiverCommandCallback callback);

G_END_DECLS

#endif  // !ASTAL_RIVER_H