home · contact · privacy
Strongly overhauled keybinding managemment. Window-specific keybindings and a window...
[plomrogue] / src / main.h
index 0bd2cd8d860fbadb30c5483515748dfdc172949d..b3ffc8968f6c3c4fe1e6e3498be4b3007be7055e 100644 (file)
@@ -9,7 +9,9 @@
 
 
 #include <stdint.h> /* for uint32_t*/
+#include "keybindings.h"
 struct WinMeta;
+struct WinConf;
 struct Win;
 struct KeyBinding;
 struct KeysWinData;
@@ -19,22 +21,12 @@ struct MonsterDef;
 
 
 
-struct Wins
-{
-    struct WinMeta * meta;
-    struct Win * keys;
-    struct Win * info;
-    struct Win * log;
-    struct Win * map;
-};
-
-
-
 struct World
 {
     char interactive;                 /* 1: playing; 0: record playback. */
-    struct KeyBinding * keybindings;  /* Pointer to the keybindings. */
-    struct KeysWinData * keyswindata; /* Pointer to key edit window metadata. */
+    struct KeyBiData kb_global;       /* Global keybindings. */
+    struct KeyBiData kb_wingeom;      /* Window geometry config keybindings. */
+    struct KeyBiData kb_winkeys;      /* Window keybinding config keybindings.*/
     uint32_t seed;                    /* Randomness seed. */
     uint32_t turn;                    /* Current game turn. */
     uint16_t score;                   /* Player's score. */
@@ -46,7 +38,9 @@ struct World
     struct Monster * monster;         /* Pointer to the monsters' data. */
     struct Player * player;           /* Pointer to the player data. */
     struct CommandDB * cmd_db;        /* Pointer to the command database. */
-    struct Wins wins;                 /* Pointers to WinMeta, individual Wins.*/
+    struct WinMeta * wmeta;           /* Pointer to window manager's WinMeta. */
+    struct WinConf * winconfs;        /* Pointer to windows' configurations. */
+    char * winconf_ids;               /* Pointer to string of Winconfs' ids. */
 };