diff options
Diffstat (limited to 'source/blender/blenkernel/BKE_node.h')
-rw-r--r-- | source/blender/blenkernel/BKE_node.h | 31 |
1 files changed, 12 insertions, 19 deletions
diff --git a/source/blender/blenkernel/BKE_node.h b/source/blender/blenkernel/BKE_node.h index 7f19a867093..7cc8c7290f7 100644 --- a/source/blender/blenkernel/BKE_node.h +++ b/source/blender/blenkernel/BKE_node.h @@ -131,8 +131,6 @@ typedef struct bNodeSocketType { int type, subtype; } bNodeSocketType; -typedef void (*NodeSocketDrawFunction)(struct bContext *C, struct uiLayout *layout, struct PointerRNA *ptr, struct PointerRNA *node_ptr); - typedef void *(*NodeInitExecFunction)(struct bNodeExecContext *context, struct bNode *node, bNodeInstanceKey key); typedef void (*NodeFreeExecFunction)(struct bNode *node, void *nodedata); typedef void (*NodeExecFunction)(void *data, int thread, struct bNode *, struct bNodeExecData *execdata, struct bNodeStack **in, struct bNodeStack **out); @@ -162,24 +160,19 @@ typedef struct bNodeType { char storagename[64]; /* struct name for DNA */ - /// Main draw function for the node. - void (*drawfunc)(const struct bContext *C, struct ARegion *ar, struct SpaceNode *snode, + /* Main draw function for the node */ + void (*draw_nodetype)(const struct bContext *C, struct ARegion *ar, struct SpaceNode *snode, struct bNodeTree *ntree, struct bNode *node, bNodeInstanceKey key); - /// Updates the node geometry attributes according to internal state before actual drawing. - void (*drawupdatefunc)(const struct bContext *C, struct bNodeTree *ntree, struct bNode *node); - /// Draw the option buttons on the node. - void (*uifunc)(struct uiLayout *, struct bContext *C, struct PointerRNA *ptr); - /// Additional parameters in the side panel. - void (*uifuncbut)(struct uiLayout *, struct bContext *C, struct PointerRNA *ptr); - /// Additional drawing on backdrop. - void (*uibackdropfunc)(struct SpaceNode *snode, struct ImBuf *backdrop, struct bNode *node, int x, int y); - - /// Draw a node socket. Default draws the input value button. - /* XXX deprecated, only used for the OutputFile node, - * should be removed at some point. - */ - NodeSocketDrawFunction drawinputfunc; - NodeSocketDrawFunction drawoutputfunc; + /* Updates the node geometry attributes according to internal state before actual drawing */ + void (*draw_nodetype_prepare)(const struct bContext *C, struct bNodeTree *ntree, struct bNode *node); + + /* Draw the option buttons on the node */ + void (*draw_buttons)(struct uiLayout *, struct bContext *C, struct PointerRNA *ptr); + /* Additional parameters in the side panel */ + void (*draw_buttons_ex)(struct uiLayout *, struct bContext *C, struct PointerRNA *ptr); + + /* Additional drawing on backdrop */ + void (*draw_backdrop)(struct SpaceNode *snode, struct ImBuf *backdrop, struct bNode *node, int x, int y); /// Optional custom label function for the node header. const char *(*labelfunc)(struct bNode *); |