diff options
author | Ton Roosendaal <ton@blender.org> | 2006-01-03 14:34:28 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2006-01-03 14:34:28 +0300 |
commit | 4bc4eac1e5c15d45a25b3586ea637a1e035f5e1e (patch) | |
tree | 2a3f00c73e1c23b9c23f50bed6b1928482e787db /source/blender/blenkernel | |
parent | 85f089f3b951c110cd70f9864ba2536119d54453 (diff) |
Orange; tweaks for further integrating node editing in UI
- Previews inside groups now get updated too
- Activating nodes inside of groups updates UI and preview render correctly
- Entering/leaving groups updates UI and previewrender
- Material Node: now draws socket name next to colorpicker for inputs
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/BKE_material.h | 1 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/material.c | 23 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/node.c | 5 |
3 files changed, 5 insertions, 24 deletions
diff --git a/source/blender/blenkernel/BKE_material.h b/source/blender/blenkernel/BKE_material.h index 820e88fed11..423a6a0cbf9 100644 --- a/source/blender/blenkernel/BKE_material.h +++ b/source/blender/blenkernel/BKE_material.h @@ -56,7 +56,6 @@ ID *material_from(struct Object *ob, int act); void assign_material(struct Object *ob, struct Material *ma, int act); void new_material_to_objectdata(struct Object *ob); -struct Material *get_active_matlayer(struct Material *); void init_render_material(struct Material *); void init_render_materials(void); void end_render_material(struct Material *); diff --git a/source/blender/blenkernel/intern/material.c b/source/blender/blenkernel/intern/material.c index 7e00fde33b3..c617541e225 100644 --- a/source/blender/blenkernel/intern/material.c +++ b/source/blender/blenkernel/intern/material.c @@ -579,29 +579,6 @@ void new_material_to_objectdata(Object *ob) ob->actcol= ob->totcol; } -/* will be renamed... now easy to re-use for nodes! */ -Material *get_active_matlayer(Material *ma) -{ - - if(ma==NULL) return NULL; - - if(ma->use_nodes) { - bNode *node= nodeGetActiveID(ma->nodetree, ID_MA); - if(node && node->id) { - return (Material *)node->id; - } - return NULL; - } - else { - MaterialLayer *ml; - for(ml= ma->layers.first; ml; ml= ml->next) - if(ml->flag & ML_ACTIVE) break; - if(ml) - return ml->mat; - } - return ma; -} - static void do_init_render_material(Material *ma) { MTex *mtex; diff --git a/source/blender/blenkernel/intern/node.c b/source/blender/blenkernel/intern/node.c index 246f214df61..c526bc36d15 100644 --- a/source/blender/blenkernel/intern/node.c +++ b/source/blender/blenkernel/intern/node.c @@ -1141,9 +1141,14 @@ void ntreeInitPreview(bNodeTree *ntree, int xsize, int ysize) { bNode *node; + if(ntree==NULL) + return; + for(node= ntree->nodes.first; node; node= node->next) { if(node->typeinfo->flag & NODE_PREVIEW) /* hrms, check for closed nodes? */ nodeInitPreview(node, xsize, ysize); + if(node->type==NODE_GROUP && (node->flag & NODE_GROUP_EDIT)) + ntreeInitPreview((bNodeTree *)node->id, xsize, ysize); } } |