<div dir="ltr">I promised to look into this, but i don&#39;t mind if somebody else will pick it up :)<div><br></div><div>Currently there is the &quot;Hide Previews&quot; button in compositor nodes, but this is not working atm due to the new node categories system and it&#39;s also not really solid enough (it switches off previews in the <span style="color:rgb(0,0,0)">node_add_node function, but this is only called for a handful of C operators now). I think this should be removed.</span></div>
<div><span style="color:rgb(0,0,0)"><br></span></div><div><span style="color:rgb(0,0,0)">Then there is the question at which point the preview flag should be un-set. It could be done as part of the node categories system, which supports initialization of nodes with a settings dictionary (in python). But there are a number of nodes that can be added with non-python operators which would lack this behavior then (viewers, file output, default nodes in new trees). Also since the feature is common to all the compo nodes i would suggest deeper integration.</span></div>
<div><span style="color:rgb(0,0,0)"><br></span></div><div><span style="color:rgb(0,0,0)">It can be done as a common init function for compo nodes (initfunc in bNodeType). It&#39;s a bit of monkey work to add superclass calls, but not too difficult:</span></div>
<div><span style="color:rgb(0,0,0)"><br></span></div><div><div><font color="#000000">static void node_composit_init_common(bNodeTree *UNUSED(ntree), bNode *node)</font></div><div><font color="#000000">{</font></div><div><span style="color:rgb(0,0,0);white-space:pre">        /* disable all compositor node previews by default */</span><font color="#000000"><br>
</font></div><div><span style="color:rgb(0,0,0);white-space:pre">        </span><font color="#000000">node-&gt;flag &amp;= ~NODE_PREVIEW;<br></font></div><div><span style="color:rgb(0,0,0)">}</span><br></div></div><div><font color="#000000"><br>
</font></div><div><font color="#000000"><br></font></div><div><font color="#000000">Subclasses with init() should call the superclass method (a bit awkward in C, will become nicer if we move nodes to python):</font></div>
<div><font color="#000000"><br></font></div><div><div><font color="#000000">static void node_composit_init_boxmask(bNodeTree *ntree, bNode *node)</font></div><div><font color="#000000">{</font></div><div><font color="#000000"><span class="" style="white-space:pre">        </span>NodeBoxMask *data = MEM_callocN(sizeof(NodeBoxMask), &quot;NodeBoxMask&quot;);</font></div>
<div><font color="#000000"><br></font></div><div><span style="color:rgb(0,0,0);white-space:pre">        </span><span style="color:rgb(0,0,0)">node_composit_init_common(ntree, node);</span><br></div><div><font color="#000000"><br>
</font></div><div><font color="#000000"><span class="" style="white-space:pre">        </span>data-&gt;x = 0.5;</font></div><div><font color="#000000"><span class="" style="white-space:pre">        </span>data-&gt;y = 0.5;</font></div>
<div><font color="#000000"><span class="" style="white-space:pre">        </span>data-&gt;width = 0.2;</font></div><div><font color="#000000"><span class="" style="white-space:pre">        </span>data-&gt;height = 0.1;</font></div><div>
<font color="#000000"><span class="" style="white-space:pre">        </span>data-&gt;rotation = 0.0;</font></div><div><font color="#000000"><span class="" style="white-space:pre">        </span>node-&gt;storage = data;</font></div><div>
<font color="#000000">}</font></div><div style="color:rgb(0,0,0)"><br></div></div><div><span style="color:rgb(0,0,0)"><br></span></div><div>Input nodes can then set the flag explicitly:</div><div><div><br></div><div>static void node_composit_init_image(bNodeTree *ntree, bNode *node)</div>
<div>{</div><div><span class="" style="white-space:pre">        </span>ImageUser *iuser = MEM_callocN(sizeof(ImageUser), &quot;node image user&quot;);</div><div><br></div><div><span style="white-space:pre">        </span><span style="color:rgb(0,0,0)">node_composit_init_common(ntree, node);</span><br>
</div><div><span style="white-space:pre">        /* enable previews for input nodes */</span><span style="color:rgb(0,0,0)"><br></span></div><div><span style="white-space:pre">        </span><span style="color:rgb(0,0,0)">node-&gt;flag |= NODE_PREVIEW;</span><span style="white-space:pre"><br>
</span></div><div><br></div><div><span class="" style="white-space:pre">        </span>node-&gt;storage = iuser;</div><div><span class="" style="white-space:pre">        </span>iuser-&gt;frames = 1;</div><div><span class="" style="white-space:pre">        </span>iuser-&gt;sfra = 1;</div>
<div><span class="" style="white-space:pre">        </span>iuser-&gt;fie_ima = 2;</div><div><span class="" style="white-space:pre">        </span>iuser-&gt;ok = 1;</div><div><span class="" style="white-space:pre">        </span></div><div><span class="" style="white-space:pre">        </span>/* setup initial outputs */</div>
<div><span class="" style="white-space:pre">        </span>cmp_node_image_verify_outputs(ntree, node);</div><div>}</div></div><div><br></div>

</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Nov 19, 2013 at 8:16 AM, Sebastian König <span dir="ltr">&lt;<a href="mailto:sebastiankoenig@posteo.de" target="_blank">sebastiankoenig@posteo.de</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);margin:0px;line-height:auto">
<div style="margin:0px">Hey!</div><div style="margin:0px"><br></div><div style="margin:0px">Yes, I think it would be fine to make thumbnails just be hidden by default.</div><div style="margin:0px">However, it’s also true they do provide some very helpful feedback when it comes to input nodes.</div>
<div style="margin:0px"><br></div><div style="margin:0px">Even though it would make the default „hidden preview“ a bit inconsistent, i do believe this would be the most desirable behavior:</div><div style="margin:0px">- Input nodes are always created with their previews enabled.</div>
<div style="margin:0px">- Every other node has the preview disabled, except for the viewer node. </div><div style="margin:0px">- Since the composite output makes the whole node-tree calculate all the time when it has thumbnail expanded I think it should also be collapsed by default. (also in startup.blend)</div>
<div style="margin:0px"><br></div><div style="margin:0px"><br></div><div style="margin:0px">So, speaking as a non developer I think you only would have to exclude the input nodes from the button that controls the default behavior for new nodes, though in reality I suppose there’d have to be some if/else stuff. :)</div>
<div style="margin:0px"><br></div><div style="margin:0px"><br></div><div style="margin:0px">Sebastian</div><div style="margin:0px"><br></div><div style="margin:0px"><br></div><div style="font-family:helvetica"><span style="font-family:helvetica,arial"></span>-- <br>
Sebastian König<br>Schenkendorfstrasse 45<div>04275 Leipzig</div><div>Germany</div><div><a href="mailto:sebastiankoenig@posteo.de" target="_blank">sebastiankoenig@posteo.de</a></div><div><a href="http://www.3dzentrale.com" target="_blank">www.3dzentrale.com</a></div>
</div></div> <br><p style="color:#a0a0a8">On 19. November 2013 at 05:46:31, LswaN (<a href="mailto://subscription57@live.com" target="_blank">subscription57@live.com</a>) wrote:</p> <blockquote type="cite"><span><div bgcolor="#FFFFFF" text="#000000">
<div>






<div>I&#39;d like to add my 2 cents here.
Regarding the thumbnails, I think hidden by default is a bit better
than removing them altogether. I agree with David that thumbs can
be helpful when you just need a quick at-a-glance view of what is
going on in a set of nodes.<br>
<br>
Also, Blender did auto-link new nodes to your selected node at one
time, but iirc the feature was removed because people often found
its choices for linking  confusing/unpredictable. For example,
if you added a mix node, you might end up with the auto-link
connected to the wrong input of the mix node.<br>
Personally, I liked the feature (even though it wasn&#39;t perfect), so
I wouldn&#39;t mind seeing it make a comeback.<br>
<br>
On 11/18/2013 8:57 PM, Aditia A. Pratama wrote:<br></div>
<blockquote type="cite">
<p>I agree with sean. Thumbs take to much space for me...but yeah
for only for non-footage nodes. I also propose to hide node by
default option in user pref, so when calling node it will in hidden
mode which is very easy to navigate and attach.</p>
<p>There&#39;s also one usability request by me, but need your opinion
guys. How about auto link nodes. Let say I&#39;ve selected image node
and then I called blur node, it will auto linked by last selected
node, so instead drag your node around it will be more faster that
way IMO.</p>
<p>For viewer node, i think it&#39;s better to have canvas like
vse.</p>
<div class="gmail_quote">On Nov 19, 2013 5:37 AM, &quot;David McSween&quot;
&lt;<a href="mailto:3pointedit@gmail.com" target="_blank">3pointedit@gmail.com</a>&gt;
wrote:<br type="attribution">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<p dir="ltr">Yes I agree that thumbs can become clutter and are
often inaccurate but they provide handy visual ques or sign posts
for your process. Perhaps default to closed/hidden would be better.
They can be replaced with viewer nodes but you can&#39;t send multiple
viewer nodes to the uv image window. It would be really helpful to
allocate unique names to viewer nodes, so that you can call them
independently on their own uv image windows. This would allow the
user to compare details of node outputs.</p>
<div class="gmail_quote">On 19 Nov 2013 07:30, &quot;Sean Kennedy&quot;
&lt;<a href="mailto:mack_dadd2@hotmail.com" target="_blank">mack_dadd2@hotmail.com</a>&gt; wrote:<br type="attribution">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<div dir="ltr">I&#39;m all for removing thumbnails, at least on
non-footage nodes. It could be useful on image nodes, movie clips,
etc, because if you have a lot of footage being used, it could help
keep it visually organized. But even on those, making it default to
not show the thumbnail is ideal.
<div><br></div>
<div>sean</div>
<div>
<div><br>
<div>
<hr>
Date: Mon, 18 Nov 2013 22:20:08 +0100<br>
From: <a href="mailto:m.dewanchand@atmind.nl" target="_blank">m.dewanchand@atmind.nl</a><br>
To: <a href="mailto:bf-compositor@blender.org" target="_blank">bf-compositor@blender.org</a><br>
Subject: Re: [Bf-compositor] Wiki Page<br>
<br>
<div>Hi Sebastian,<br>
<br>
Nice! Just missing some priorities....<br>
Regarding status updates; when starting a project the developer can
create a page for it, containing details about the project /
solution / progress, and link it to the main page.<br>
<br>
So should we start removing thumbnail previews? If yes, do you also
want to remove the preview from the input- and output nodes?<br>
<br>
Rgds,<br>
J &amp; M<br>
<br>
Sebastian König schreef op 11/8/13 1:25 PM:<br></div>
<blockquote>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
Hey all!</div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
<br></div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
I have started to fill in the wiki page.</div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
<a href="http://wiki.blender.org/index.php/Dev:Ref/Proposals/Compositor" target="_blank">http://wiki.blender.org/index.php/Dev:Ref/Proposals/Compositor</a></div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
I&#39;m not super experienced with Wiki editing, so feel free to edit
and elaborate.</div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
I am also open to suggestions how to improve the
order/appearance/structure.</div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
<br></div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
Probably there should also be some kind of indication what’s
being worked on, what’s the status etc.</div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
<br></div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
More to come.</div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
<br></div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
Cheers!</div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
<br></div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
Sebastian</div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
<br></div>
<div style="font-family:Helvetica,Arial;font-size:13px;color:rgba(0,0,0,1.0);line-height:auto">
<br></div>
<br>
<br>
<pre>_______________________________________________
Bf-compositor mailing list
<a href="mailto:Bf-compositor@blender.org" target="_blank">Bf-compositor@blender.org</a>
<a href="http://lists.blender.org/mailman/listinfo/bf-compositor" target="_blank">http://lists.blender.org/mailman/listinfo/bf-compositor</a>
</pre></blockquote>
<br>
<br>
_______________________________________________ Bf-compositor
mailing list <a href="mailto:Bf-compositor@blender.org" target="_blank">Bf-compositor@blender.org</a> <a href="http://lists.blender.org/mailman/listinfo/bf-compositor" target="_blank">http://lists.blender.org/mailman/listinfo/bf-compositor</a></div>

</div>
</div>
</div>
</div>
<br>
_______________________________________________<br>
Bf-compositor mailing list<br>
<a href="mailto:Bf-compositor@blender.org" target="_blank">Bf-compositor@blender.org</a><br>
<a href="http://lists.blender.org/mailman/listinfo/bf-compositor" target="_blank">http://lists.blender.org/mailman/listinfo/bf-compositor</a><br>

<br></blockquote>
</div>
<br>
_______________________________________________<br>
Bf-compositor mailing list<br>
<a href="mailto:Bf-compositor@blender.org" target="_blank">Bf-compositor@blender.org</a><br>

<a href="http://lists.blender.org/mailman/listinfo/bf-compositor" target="_blank">http://lists.blender.org/mailman/listinfo/bf-compositor</a><br>

<br></blockquote>
</div>
<br>
<fieldset></fieldset>
<br>
<pre>_______________________________________________
Bf-compositor mailing list
<a href="mailto:Bf-compositor@blender.org" target="_blank">Bf-compositor@blender.org</a>
<a href="http://lists.blender.org/mailman/listinfo/bf-compositor" target="_blank">http://lists.blender.org/mailman/listinfo/bf-compositor</a>
</pre></blockquote>
<br>


_______________________________________________
<br>Bf-compositor mailing list
<br><a href="mailto:Bf-compositor@blender.org" target="_blank">Bf-compositor@blender.org</a>
<br><a href="http://lists.blender.org/mailman/listinfo/bf-compositor" target="_blank">http://lists.blender.org/mailman/listinfo/bf-compositor</a>
<br></div></div></span></blockquote></div><br>_______________________________________________<br>
Bf-compositor mailing list<br>
<a href="mailto:Bf-compositor@blender.org">Bf-compositor@blender.org</a><br>
<a href="http://lists.blender.org/mailman/listinfo/bf-compositor" target="_blank">http://lists.blender.org/mailman/listinfo/bf-compositor</a><br>
<br></blockquote></div><br></div>