2012-08-17 22:18:26 +02:00
|
|
|
#ifndef _TREE_H
|
|
|
|
#define _TREE_H
|
|
|
|
|
2012-08-20 12:20:12 +02:00
|
|
|
#define INC_EXP 0.9
|
|
|
|
#define DEC_EXP 1.1
|
|
|
|
|
2012-08-29 18:37:31 +02:00
|
|
|
bool is_leaf(node_t *);
|
2012-09-01 21:55:35 +02:00
|
|
|
bool is_first_child(node_t *n);
|
2012-09-04 11:14:01 +02:00
|
|
|
bool is_second_child(node_t *n);
|
2012-08-29 18:37:31 +02:00
|
|
|
void change_split_ratio(node_t *, value_change_t);
|
|
|
|
node_t *first_extrema(node_t *);
|
|
|
|
node_t *second_extrema(node_t *);
|
2012-09-04 11:14:01 +02:00
|
|
|
node_t *next_leaf(node_t *);
|
|
|
|
node_t *prev_leaf(node_t *);
|
2012-08-29 18:37:31 +02:00
|
|
|
node_t *find_fence(node_t *, direction_t);
|
|
|
|
node_t *find_neighbor(node_t *, direction_t);
|
2012-09-05 14:07:06 +02:00
|
|
|
void insert_node(desktop_t *, node_t *);
|
2012-08-29 18:37:31 +02:00
|
|
|
void move_fence(node_t *, direction_t, fence_move_t);
|
|
|
|
void rotate_tree(node_t *, rotate_t);
|
|
|
|
void dump_tree(node_t *, char *, int);
|
2012-09-05 14:07:06 +02:00
|
|
|
void focus_node(desktop_t *, node_t *);
|
2012-09-06 14:43:59 +02:00
|
|
|
void remove_node(desktop_t *, node_t *);
|
|
|
|
void transfer_node(desktop_t *, desktop_t *, node_t *);
|
|
|
|
void select_desktop(desktop_t *);
|
2012-08-17 22:18:26 +02:00
|
|
|
|
|
|
|
#endif
|