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:
Campbell Barton 2010-10-15 04:27:09 +00:00
parent d3fcc2d0b4
commit 68dea6591d
6 changed files with 22 additions and 13 deletions

@ -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] = {
@ -538,11 +538,11 @@ static void socket_circle_draw(bNodeSocket *sock, float size)
else {
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){}