]> Pileus Git - wmpus/commitdiff
Move state to win_t
authorAndy Spencer <andy753421@gmail.com>
Thu, 13 Oct 2011 08:09:53 +0000 (08:09 +0000)
committerAndy Spencer <andy753421@gmail.com>
Wed, 26 Oct 2011 05:20:33 +0000 (05:20 +0000)
sys-win32.c
sys.h

index 463b6ffb315e425d80edab9c8ce41f58c4df9a7a..d6c1c7fe04d9ce88bc6921d2b75f7ff1b56195ea 100644 (file)
@@ -35,7 +35,6 @@ static int NO_CAPTURE = 0;
 /* Internal structures */
 struct win_sys {
        HWND hwnd;
-       state_t state;
 };
 
 typedef struct {
@@ -250,7 +249,7 @@ LRESULT CALLBACK ShlProc(int msg, WPARAM wParam, LPARAM lParam)
        case HSHELL_WINDOWDESTROYED:
                printf("ShlProc: %p - window destroyed\n", hwnd);
                if ((win = win_find(hwnd,0)) &&
-                   win->sys->state == st_show) {
+                   win->state == st_show) {
                        wm_remove(win);
                        win_remove(win);
                }
@@ -367,7 +366,7 @@ void sys_show(win_t *win, state_t state)
                [st_icon ] {"icon" , SW_MINIMIZE},
                [st_hide ] {"hide" , SW_HIDE    },
        };
-       win->sys->state = state;
+       win->state = state;
        printf("sys_show: %s\n", map[state].str);
        ShowWindow(win->sys->hwnd, map[state].cmd);
 }
diff --git a/sys.h b/sys.h
index e55b0a36e25e9b95222641135068a1b3a8db4032..0a243bfff072b146e56878d543d06a2fd9531b6e 100644 (file)
--- a/sys.h
+++ b/sys.h
  * and control windows. */
 
 
+/* Window states */
+typedef enum {
+       st_show,  // show as regular window
+       st_full,  // fullscreen/maximized
+       st_shade, // show titlebar only
+       st_icon,  // iconified/minimized
+       st_hide,  // completely hidden
+} state_t;
+
 /* Basic window type */
 typedef struct win_sys win_sys_t;
 typedef struct win_wm  win_wm_t;
 typedef struct {
        int x, y, z;
        int w, h;
+       state_t    state;
        win_sys_t *sys;
        win_wm_t  *wm;
 } win_t;
@@ -78,15 +88,6 @@ typedef struct {
 } ptr_t;
 #define PTR(...) ((ptr_t){__VA_ARGS__})
 
-/* Window states */
-typedef enum {
-       st_show,  // show as regular window
-       st_full,  // fullscreen/maximized
-       st_shade, // show titlebar only
-       st_icon,  // iconified/minimized
-       st_hide,  // completely hidden
-} state_t;
-
 
 /* Move the window to the specified location and set it's
  * geometry. The position and size include borders and