2 * ion/mod_statusbar/statusbar.h
4 * Copyright (c) Tuomo Valkonen 1999-2009.
6 * See the included file LICENSE for details.
9 #ifndef ION_MOD_STATUSBAR_STATUSBAR_H
10 #define ION_MOD_STATUSBAR_STATUSBAR_H
12 #include <libtu/ptrlist.h>
13 #include <libextl/extl.h>
14 #include <ioncore/common.h>
15 #include <ioncore/gr.h>
16 #include <ioncore/manage.h>
17 #include <ioncore/sizehint.h>
20 #define STATUSBAR_NX_STR "?"
25 WSBELEM_ALIGN_CENTER
=1,
57 INTRCLASS(WStatusBar
);
59 DECLCLASS(WStatusBar
){
64 int natural_w
, natural_h
;
66 WStatusBar
*sb_next
, *sb_prev
;
71 extern bool statusbar_init(WStatusBar
*p
, WWindow
*parent
,
72 const WFitParams
*fp
);
73 extern WStatusBar
*create_statusbar(WWindow
*parent
, const WFitParams
*fp
);
74 extern void statusbar_deinit(WStatusBar
*p
);
76 extern WRegion
*statusbar_load(WWindow
*par
, const WFitParams
*fp
,
79 extern void statusbar_set_natural_w(WStatusBar
*p
, const char *str
);
80 extern void statusbar_size_hints(WStatusBar
*p
, WSizeHints
*h
);
81 extern void statusbar_updategr(WStatusBar
*p
);
82 extern void statusbar_set_contents(WStatusBar
*sb
, ExtlTab t
);
84 extern void statusbar_set_template(WStatusBar
*sb
, const char *tmpl
);
85 extern void statusbar_set_template_table(WStatusBar
*sb
, ExtlTab t
);
86 extern ExtlTab
statusbar_get_template_table(WStatusBar
*sb
);
88 extern WStatusBar
*mod_statusbar_find_suitable(WClientWin
*cwin
,
89 const WManageParams
*param
);
91 #endif /* ION_MOD_STATUSBAR_STATUSBAR_H */