]> Dogcows Code - chaz/openbox/blobdiff - openbox/keytree.h
Merge branch 'master' into chaz
[chaz/openbox] / openbox / keytree.h
index f59ef137fed112075c9741ff209bf5562067f9b3..66edc3c7faf0af58ba57827370debed953d6c74d 100644 (file)
@@ -1,7 +1,7 @@
 /* -*- indent-tabs-mode: nil; tab-width: 4; c-basic-offset: 4; -*-
 
    keytree.h for the Openbox window manager
-   Copyright (c) 2003        Ben Jansens
+   Copyright (c) 2003-2007   Dana Jansens
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -19,8 +19,6 @@
 #ifndef __plugin_keyboard_tree_h
 #define __plugin_keyboard_tree_h
 
-#include "action.h"
-
 #include <glib.h>
 
 typedef struct KeyBindingTree {
@@ -28,9 +26,12 @@ typedef struct KeyBindingTree {
     guint key;
     GList *keylist;
     GSList *actions; /* list of Action pointers */
+    gboolean chroot;
 
+    /* the level up in the tree */
+    struct KeyBindingTree *parent;
     /* the next binding in the tree at the same level */
-    struct KeyBindingTree *next_sibling; 
+    struct KeyBindingTree *next_sibling;
     /* the first child of this binding (next binding in a chained sequence).*/
     struct KeyBindingTree *first_child;
 } KeyBindingTree;
@@ -39,5 +40,6 @@ void tree_destroy(KeyBindingTree *tree);
 KeyBindingTree *tree_build(GList *keylist);
 void tree_assimilate(KeyBindingTree *node);
 KeyBindingTree *tree_find(KeyBindingTree *search, gboolean *conflict);
+gboolean tree_chroot(KeyBindingTree *tree, GList *keylist);
 
 #endif
This page took 0.022892 seconds and 4 git commands to generate.