X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=sys.h;h=3599c3da13382c89421d542d2ebefbe600b65cbf;hb=bafa6f74e4a8112b650cb1aa2894bc5c0184fca5;hp=2ac76a1c4c75e84d2f2d3a86197e98e5b1bdc7b7;hpb=7e8ce091da421353576edbd2a4a4e620fe0a62bd;p=wmpus diff --git a/sys.h b/sys.h index 2ac76a1..3599c3d 100644 --- a/sys.h +++ b/sys.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, Andy Spencer + * Copyright (c) 2011-2012, Andy Spencer * * Permission to use, copy, modify, and/or distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -26,22 +26,32 @@ /* Window states */ typedef enum { + ST_HIDE, // completely hidden ST_SHOW, // show as regular window - ST_FULL, // fullscreen/maximized + ST_FULL, // fullscreen (without decorations) + ST_MAX, // maximized (with decorations) ST_SHADE, // show titlebar only ST_ICON, // iconified/minimized - ST_HIDE, // completely hidden + ST_CLOSE, // close the window } state_t; +/* Window types */ +typedef enum { + TYPE_NORMAL, + TYPE_DIALOG, +} type_t; + /* Basic window type */ typedef struct win_sys win_sys_t; typedef struct win_wm win_wm_t; -typedef struct { +typedef struct win { int x, y, z; int w, h; - state_t state; - win_sys_t *sys; - win_wm_t *wm; + state_t state; + type_t type; + struct win *parent; + win_sys_t *sys; + win_wm_t *wm; } win_t; /* Generic key codes, also used for some other events