forked from bartvdbraak/blender
bugfix [#24247] Duplicating a Composite Group Node no User Count Icon
duplicating nodes wasnt changing the usercount of the referenced ID but file loading deleting was. also removed some unused args.
This commit is contained in:
parent
d3fcc2d0b4
commit
68dea6591d
@ -40,7 +40,7 @@ void ED_init_node_butfuncs(void);
|
||||
|
||||
/* node_draw.c */
|
||||
void ED_node_changed_update(struct ID *id, struct bNode *node);
|
||||
void ED_node_generic_update(struct Main *bmain, struct Scene *scene, struct bNodeTree *ntree, struct bNode *node);
|
||||
void ED_node_generic_update(struct Main *bmain, struct bNodeTree *ntree, struct bNode *node);
|
||||
|
||||
/* node_edit.c */
|
||||
void ED_node_shader_default(struct Material *ma);
|
||||
|
@ -111,7 +111,7 @@ static int has_nodetree(bNodeTree *ntree, bNodeTree *lookup)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void ED_node_generic_update(Main *bmain, Scene *scene, bNodeTree *ntree, bNode *node)
|
||||
void ED_node_generic_update(Main *bmain, bNodeTree *ntree, bNode *node)
|
||||
{
|
||||
Material *ma;
|
||||
Tex *tex;
|
||||
@ -309,7 +309,7 @@ static void node_update(const bContext *C, bNodeTree *ntree, bNode *node)
|
||||
}
|
||||
|
||||
/* based on settings in node, sets drawing rect info. each redraw! */
|
||||
static void node_update_hidden(const bContext *C, bNode *node)
|
||||
static void node_update_hidden(bNode *node)
|
||||
{
|
||||
bNodeSocket *nsock;
|
||||
float rad, drad, hiddenrad= HIDDEN_RAD;
|
||||
@ -392,7 +392,7 @@ static void node_update_group(const bContext *C, bNodeTree *ntree, bNode *gnode)
|
||||
node->locy+= gnode->locy;
|
||||
|
||||
if(node->flag & NODE_HIDDEN)
|
||||
node_update_hidden(C, node);
|
||||
node_update_hidden(node);
|
||||
else
|
||||
node_update(C, ntree, node);
|
||||
node->locx-= gnode->locx;
|
||||
@ -483,7 +483,7 @@ static void node_draw_mute_line(View2D *v2d, SpaceNode *snode, bNode *node)
|
||||
|
||||
/* nice AA filled circle */
|
||||
/* this might have some more generic use */
|
||||
static void circle_draw(float x, float y, float size, int type, int col[3])
|
||||
static void circle_draw(float x, float y, float size, int col[3])
|
||||
{
|
||||
/* 16 values of sin function */
|
||||
static float si[16] = {
|
||||
@ -539,10 +539,10 @@ static void socket_circle_draw(bNodeSocket *sock, float size)
|
||||
col[0]= 100; col[1]= 200; col[2]= 100;
|
||||
}
|
||||
|
||||
circle_draw(sock->locx, sock->locy, size, sock->type, col);
|
||||
circle_draw(sock->locx, sock->locy, size, col);
|
||||
}
|
||||
|
||||
static void node_sync_cb(bContext *C, void *snode_v, void *node_v)
|
||||
static void node_sync_cb(bContext *UNUSED(C), void *snode_v, void *node_v)
|
||||
{
|
||||
SpaceNode *snode= snode_v;
|
||||
|
||||
@ -1103,7 +1103,7 @@ void drawnodespace(const bContext *C, ARegion *ar, View2D *v2d)
|
||||
if(node->flag & NODE_GROUP_EDIT)
|
||||
node_update_group(C, snode->nodetree, node);
|
||||
else if(node->flag & NODE_HIDDEN)
|
||||
node_update_hidden(C, node);
|
||||
node_update_hidden(node);
|
||||
else
|
||||
node_update(C, snode->nodetree, node);
|
||||
}
|
||||
|
@ -98,7 +98,7 @@ static int compo_breakjob(void *cjv)
|
||||
}
|
||||
|
||||
/* called by compo, wmJob sends notifier */
|
||||
static void compo_redrawjob(void *cjv, char *str)
|
||||
static void compo_redrawjob(void *cjv, char *UNUSED(str))
|
||||
{
|
||||
CompoJob *cj= cjv;
|
||||
|
||||
@ -1475,9 +1475,18 @@ bNode *node_add_node(SpaceNode *snode, Scene *scene, int type, float locx, float
|
||||
static int node_duplicate_exec(bContext *C, wmOperator *UNUSED(op))
|
||||
{
|
||||
SpaceNode *snode= CTX_wm_space_node(C);
|
||||
bNode *node;
|
||||
|
||||
ED_preview_kill_jobs(C);
|
||||
|
||||
/* simple id user adjustment, node internal functions dont touch this
|
||||
* but operators and readfile.c do. */
|
||||
for(node= snode->edittree->nodes.first; node; node= node->next) {
|
||||
if(node->flag & SELECT) {
|
||||
id_us_plus(node->id);
|
||||
}
|
||||
}
|
||||
|
||||
ntreeCopyTree(snode->edittree, 1); /* 1 == internally selected nodes */
|
||||
|
||||
ntreeSolveOrder(snode->edittree);
|
||||
|
@ -253,7 +253,7 @@ static void rna_ColorRamp_update(Main *bmain, Scene *scene, PointerRNA *ptr)
|
||||
|
||||
for(node=ntree->nodes.first; node; node=node->next) {
|
||||
if (ELEM3(node->type, SH_NODE_VALTORGB, CMP_NODE_VALTORGB, TEX_NODE_VALTORGB)) {
|
||||
ED_node_generic_update(bmain, scene, ntree, node);
|
||||
ED_node_generic_update(bmain, ntree, node);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -159,7 +159,7 @@ static void rna_Image_end_frame_set(PointerRNA *ptr, int value)
|
||||
|
||||
static void node_update(Main *bmain, Scene *scene, bNodeTree *ntree, bNode *node)
|
||||
{
|
||||
ED_node_generic_update(bmain, scene, ntree, node);
|
||||
ED_node_generic_update(bmain, ntree, node);
|
||||
}
|
||||
|
||||
static void rna_Node_update(Main *bmain, Scene *scene, PointerRNA *ptr)
|
||||
|
@ -219,7 +219,7 @@ void WM_event_add_fileselect(struct bContext *C, struct wmOperator *op){}
|
||||
void WM_cursor_wait (int val) {}
|
||||
void ED_node_texture_default(struct Tex *tx){}
|
||||
void ED_node_changed_update(struct bContext *C, struct bNode *node){}
|
||||
void ED_node_generic_update(struct Main *bmain, struct Scene *scene, struct bNodeTree *ntree, struct bNode *node){}
|
||||
void ED_node_generic_update(struct Main *bmain, struct bNodeTree *ntree, struct bNode *node){}
|
||||
void ED_view3d_scene_layers_update(struct Main *bmain, struct Scene *scene){}
|
||||
int ED_view3d_scene_layer_set(int lay, const int *values){return 0;}
|
||||
void ED_view3d_quadview_update(struct ScrArea *sa, struct ARegion *ar){}
|
||||
|
Loading…
Reference in New Issue
Block a user