269b60d8ca67f3762c4cc81efc5031ef54e9301e
[dana/dcompmgr.git] / window.c
1 #include "window.h"
2 #include <glib.h>
3
4 static void window_show(d_window_t *w);
5 static void window_hide(d_window_t *w);
6
7 d_window_t*
8 window_new(xcb_window_t id, struct d_screen *sc)
9 {
10     d_window_t *w;
11
12     w = g_new(d_window_t, 1);
13     w->id = id;
14     w->ref = 1;
15     w->sc = sc;
16
17     /* default functions */
18     w->show = window_show;
19     w->hide = window_hide;
20
21     return w;
22 }
23
24 void
25 window_ref(d_window_t *w)
26 {
27     ++w->ref;
28 }
29
30 void
31 window_unref(d_window_t *w)
32 {
33     if (w && --w->ref == 0) {
34         g_free(w);
35     }
36 }
37
38 static void
39 window_show(d_window_t *w)
40 {
41 }
42
43 static void
44 window_hide(d_window_t *w)
45 {
46 }