Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen Bakker <j.bakker@atmind.nl>2013-12-09 00:53:35 +0400
committerJeroen Bakker <j.bakker@atmind.nl>2013-12-09 23:22:16 +0400
commit4332cd16fb2b1dd6f83f73232d92d037b69f3f42 (patch)
tree864a94ed851ec7702366a6db3e0daac4d32e88ac /source/blender
parent6c83d92d5827c94672a5b8240cfd27550945afc2 (diff)
Compositor node preview:
moved the hide preview logic to a method on bNodeTreeType. This way the node.c keeps clean, but logic could still be shared. Implementing this per node, can lead to future errors.
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/blenkernel/BKE_blender.h2
-rw-r--r--source/blender/blenkernel/BKE_node.h2
-rw-r--r--source/blender/blenkernel/intern/node.c12
-rw-r--r--source/blender/nodes/composite/node_composite_tree.c10
4 files changed, 17 insertions, 9 deletions
diff --git a/source/blender/blenkernel/BKE_blender.h b/source/blender/blenkernel/BKE_blender.h
index aa6932a42a0..d1e95097009 100644
--- a/source/blender/blenkernel/BKE_blender.h
+++ b/source/blender/blenkernel/BKE_blender.h
@@ -42,7 +42,7 @@ extern "C" {
* and keep comment above the defines.
* Use STRINGIFY() rather than defining with quotes */
#define BLENDER_VERSION 269
-#define BLENDER_SUBVERSION 5
+#define BLENDER_SUBVERSION 6
/* 262 was the last editmesh release but it has compatibility code for bmesh data */
#define BLENDER_MINVERSION 262
#define BLENDER_MINSUBVERSION 0
diff --git a/source/blender/blenkernel/BKE_node.h b/source/blender/blenkernel/BKE_node.h
index eda905a263f..28a4a30fa91 100644
--- a/source/blender/blenkernel/BKE_node.h
+++ b/source/blender/blenkernel/BKE_node.h
@@ -306,6 +306,8 @@ typedef struct bNodeTreeType {
void (*update)(struct bNodeTree *ntree);
int (*validate_link)(struct bNodeTree *ntree, struct bNodeLink *link);
+
+ void (*node_add_init)(struct bNodeTree *ntree, struct bNode *bnode);
/* RNA integration */
ExtensionRNA ext;
diff --git a/source/blender/blenkernel/intern/node.c b/source/blender/blenkernel/intern/node.c
index 147e7909322..85354e4e0d7 100644
--- a/source/blender/blenkernel/intern/node.c
+++ b/source/blender/blenkernel/intern/node.c
@@ -134,16 +134,12 @@ static void node_init(const struct bContext *C, bNodeTree *ntree, bNode *node)
node_add_sockets_from_type(ntree, node, ntype);
- /* Composite node will only show previews for input classes
- * by default, other will be hidden
- * but can be made visible with the show_preview option */
- if (ntree->typeinfo->type == NTREE_COMPOSIT && ntype->nclass != NODE_CLASS_INPUT) {
- node->flag &= ~NODE_PREVIEW;
- }
-
if (ntype->initfunc != NULL)
ntype->initfunc(ntree, node);
-
+
+ if (ntree->typeinfo->node_add_init != NULL)
+ ntree->typeinfo->node_add_init(ntree, node);
+
/* extra init callback */
if (ntype->initfunc_api) {
PointerRNA ptr;
diff --git a/source/blender/nodes/composite/node_composite_tree.c b/source/blender/nodes/composite/node_composite_tree.c
index 31ae46468c3..7da3a35dba0 100644
--- a/source/blender/nodes/composite/node_composite_tree.c
+++ b/source/blender/nodes/composite/node_composite_tree.c
@@ -218,6 +218,15 @@ static void update(bNodeTree *ntree)
}
}
+static void composite_node_add_init(bNodeTree *UNUSED(bnodetree), bNode *bnode) {
+ /* Composite node will only show previews for input classes
+ * by default, other will be hidden
+ * but can be made visible with the show_preview option */
+ if (bnode->typeinfo->nclass != NODE_CLASS_INPUT) {
+ bnode->flag &= ~NODE_PREVIEW;
+ }
+}
+
bNodeTreeType *ntreeType_Composite;
void register_node_tree_type_cmp(void)
@@ -238,6 +247,7 @@ void register_node_tree_type_cmp(void)
tt->local_merge = local_merge;
tt->update = update;
tt->get_from_context = composite_get_from_context;
+ tt->node_add_init = composite_node_add_init;
tt->ext.srna = &RNA_CompositorNodeTree;