aboutsummaryrefslogtreecommitdiff
path: root/src/group.h
diff options
context:
space:
mode:
authorJohn Ankarstr\xf6m <john@ankarstrom.se>2021-05-29 12:54:47 +0200
committerJohn Ankarstr\xf6m <john@ankarstrom.se>2021-05-29 13:18:40 +0200
commita041d9898e6d699bd8c0c25482ec574feb03c547 (patch)
tree7f094e33fb530152c3ab6238ce7300750b47addb /src/group.h
downloadjwm-a041d9898e6d699bd8c0c25482ec574feb03c547.tar.gz
First commit
This is the original state of the released tarball for JWM 1.8, which will serve as my starting point for further modifications.
Diffstat (limited to 'src/group.h')
-rw-r--r--src/group.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/group.h b/src/group.h
new file mode 100644
index 0000000..ccbf62f
--- /dev/null
+++ b/src/group.h
@@ -0,0 +1,48 @@
+/**
+ * @file font.h
+ * @author Joe Wingbermuehle
+ * @date 2004-2006
+ *
+ * @brief Functions for handling window groups.
+ *
+ */
+
+#ifndef GROUP_H
+#define GROUP_H
+
+struct ClientNode;
+struct GroupType;
+
+typedef enum {
+ OPTION_INVALID = 0,
+ OPTION_STICKY = 1,
+ OPTION_LAYER = 2,
+ OPTION_DESKTOP = 3,
+ OPTION_ICON = 4,
+ OPTION_NOLIST = 5,
+ OPTION_BORDER = 6,
+ OPTION_NOBORDER = 7,
+ OPTION_TITLE = 8,
+ OPTION_NOTITLE = 9,
+ OPTION_PIGNORE = 10,
+ OPTION_MAXIMIZED = 11,
+ OPTION_MINIMIZED = 12,
+ OPTION_SHADED = 13
+} OptionType;
+
+void InitializeGroups();
+void StartupGroups();
+void ShutdownGroups();
+void DestroyGroups();
+
+struct GroupType *CreateGroup();
+void AddGroupClass(struct GroupType *gp, const char *pattern);
+void AddGroupName(struct GroupType *gp, const char *pattern);
+void AddGroupOption(struct GroupType *gp, OptionType option);
+void AddGroupOptionValue(struct GroupType *gp, OptionType option,
+ const char *value);
+
+void ApplyGroups(struct ClientNode *np);
+
+#endif
+