diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-05-11 19:44:33 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-05-11 19:44:33 +0000 |
| commit | 58cfbb7f8419e084af6b6b8b00c88ed270c29e88 (patch) | |
| tree | 6d786e87e1fb369d94522a69d0b3f2c694a8ed4e /openbox/slit.h | |
| parent | 506122a110035f810c7d25225661973845a59c62 (diff) | |
Clients Menus and Slits are all 'ObWindow's now.
Stacking is done with ObWindows.
Slits add themselves to the stacking order, as do clients of course.
Added some macros for adding/removing to the stacking order.
Diffstat (limited to 'openbox/slit.h')
| -rw-r--r-- | openbox/slit.h | 55 |
1 files changed, 42 insertions, 13 deletions
diff --git a/openbox/slit.h b/openbox/slit.h index 3dd3d3db..3cdcb309 100644 --- a/openbox/slit.h +++ b/openbox/slit.h @@ -1,11 +1,52 @@ #ifndef __slit_h #define __slit_h +#include "timer.h" +#include "render/render.h" +#include "window.h" +#include "stacking.h" + #include <glib.h> #include <X11/Xlib.h> #include <X11/Xutil.h> -typedef struct Slit Slit; +typedef enum { + SlitPos_Floating, + SlitPos_TopLeft, + SlitPos_Top, + SlitPos_TopRight, + SlitPos_Right, + SlitPos_BottomRight, + SlitPos_Bottom, + SlitPos_BottomLeft, + SlitPos_Left +} SlitPosition; + +typedef struct Slit { + ObWindow obwin; + + Window frame; + StackLayer layer; + + /* user-requested position stuff */ + SlitPosition pos; + int gravity; + int user_x, user_y; + + /* actual position (when not auto-hidden) */ + int x, y; + int w, h; + + gboolean horz; + gboolean hide; + gboolean hidden; + + Appearance *a_frame; + + Timer *hide_timer; + + GList *slit_apps; +} Slit; typedef struct SlitApp { int ignore_unmaps; @@ -19,18 +60,6 @@ typedef struct SlitApp { int h; } SlitApp; -typedef enum { - SlitPos_Floating, - SlitPos_TopLeft, - SlitPos_Top, - SlitPos_TopRight, - SlitPos_Right, - SlitPos_BottomRight, - SlitPos_Bottom, - SlitPos_BottomLeft, - SlitPos_Left -} SlitPosition; - extern GHashTable *slit_map; extern GHashTable *slit_app_map; |
