2 * ion/mod_statusbar/statusbar.h
4 * Copyright (c) Tuomo Valkonen 1999-2008.
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 */