summaryrefslogtreecommitdiff
path: root/src/defs.h
diff options
context:
space:
mode:
authoruint23 <[email protected]>2025-04-20 01:28:31 +0100
committeruint23 <[email protected]>2025-04-20 01:28:31 +0100
commit87179f825fd1c46b59cce38aafd8b4102fca2685 (patch)
treeb384c15d41ffdc48a1427244daf16d90b9bd75f3 /src/defs.h
parent29a67d193e8dbbb8985fbef4cc6f24589947b869 (diff)
added workspaces
whoops, forgot to commit for a whiiilllleee
Diffstat (limited to 'src/defs.h')
-rw-r--r--src/defs.h47
1 files changed, 43 insertions, 4 deletions
diff --git a/src/defs.h b/src/defs.h
index ec4ab25..b7b2d20 100644
--- a/src/defs.h
+++ b/src/defs.h
@@ -15,11 +15,50 @@
#define MARGIN (gaps + BORDER_WIDTH)
#define OUT_IN (2 * BORDER_WIDTH)
#define LENGTH(X) (sizeof X / sizeof X[0])
-#define BIND(mod, key, cmdstr) { (mod), XK_##key, { cmdstr }, 0 }
-#define CALL(mod, key, fnptr) { (mod), XK_##key, { .fn = fnptr }, 1 }
-#define CMD(name, ...) \
+#define BIND(mod, key, cmdstr) { (mod), XK_##key, { cmdstr }, False }
+#define CALL(mod, key, fnptr) { (mod), XK_##key, { .fn = fnptr }, True }
+#define CMD(name, ...) \
static const char *name[] = { __VA_ARGS__, NULL }
+static void change_ws1(void);
+static void moveto_ws1(void);
+static void change_ws2(void);
+static void moveto_ws2(void);
+static void change_ws3(void);
+static void moveto_ws3(void);
+static void change_ws4(void);
+static void moveto_ws4(void);
+static void change_ws5(void);
+static void moveto_ws5(void);
+static void change_ws6(void);
+static void moveto_ws6(void);
+static void change_ws7(void);
+static void moveto_ws7(void);
+static void change_ws8(void);
+static void moveto_ws8(void);
+static void change_ws9(void);
+static void moveto_ws9(void);
+
+#define INIT_WORKSPACE \
+static void change_ws1(void) { change_workspace(0); } \
+static void moveto_ws1(void) { move_to_workspace(0); } \
+static void change_ws2(void) { change_workspace(1); } \
+static void moveto_ws2(void) { move_to_workspace(1); } \
+static void change_ws3(void) { change_workspace(2); } \
+static void moveto_ws3(void) { move_to_workspace(2); } \
+static void change_ws4(void) { change_workspace(3); } \
+static void moveto_ws4(void) { move_to_workspace(3); } \
+static void change_ws5(void) { change_workspace(4); } \
+static void moveto_ws5(void) { move_to_workspace(4); } \
+static void moveto_ws6(void) { move_to_workspace(5); } \
+static void change_ws6(void) { change_workspace(5); } \
+static void moveto_ws7(void) { move_to_workspace(6); } \
+static void change_ws7(void) { change_workspace(6); } \
+static void moveto_ws8(void) { move_to_workspace(7); } \
+static void change_ws8(void) { change_workspace(7); } \
+static void moveto_ws9(void) { move_to_workspace(8); } \
+static void change_ws9(void) { change_workspace(8); } \
+
#define UDIST(a,b) abs((int)(a) - (int)(b))
#define MAXCLIENTS 99
#define MAXGAPS 100
@@ -36,7 +75,7 @@ typedef struct {
unsigned int mods;
KeySym keysym;
Action action;
- int is_func;
+ Bool is_func;
} Binding;
typedef struct Client{