diff options
Diffstat (limited to 'server/tree.h')
-rw-r--r-- | server/tree.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/server/tree.h b/server/tree.h index 82f9ce3b..6e83f7a8 100644 --- a/server/tree.h +++ b/server/tree.h @@ -52,11 +52,17 @@ struct Shadow { DrawItem* owner; }; +#define IS_SHADOW(item) ((item)->type == TREE_ITEM_TYPE_SHADOW) +#define SHADOW(item) ((Shadow*)(item)) + struct Container { TreeItem base; Ring items; }; +#define IS_CONTAINER(item) ((item)->type == TREE_ITEM_TYPE_CONTAINER) +#define CONTAINER(item) ((Container*)(item)) + struct DrawItem { TreeItem base; uint8_t effect; @@ -65,7 +71,10 @@ struct DrawItem { }; #define IS_DRAW_ITEM(item) ((item)->type == TREE_ITEM_TYPE_DRAWABLE) +#define DRAW_ITEM(item) ((DrawItem*)(item)) void tree_item_dump (TreeItem *item); +Shadow* shadow_new (DrawItem *item, const SpicePoint *delta); +Container* container_new (DrawItem *item); #endif /* TREE_H_ */ |