Hey all; I've been doing a lot of thinking about how the Network/Composite loci deal with getting inputs and outputs. To summarize the situation right now (based on the last discussion we had on this): Whenever a new node is added inside of a Composite Locus (or Network, for Overflow) all of the unconnected inputs and outputs are "inherited" by the parent Composite Locus, so that they can potentially be connected with other loci in the same level as the parent Composite Locus. This is the situation of things right now if you grab the latest Piper from CVS. Now that I've got this way implemented, however, I really don't like it :-<. There are a few problems I see with it: 1. The composite loci end up with a ton of NetInputs and NetOutputs (to use Overflow terminology), and I think this will make it really tough to see what NetInputs and NetOutputs go with which internal Loci, even when viewing the names of inputs and outputs is implimented. 2. Having been thinking more about it, it seems like this behavior isn't really what I would want as a default. It seems like that 90% of the time when I add a new locus I'm planning on connecting it to other loci in the same network. So, based on this we are doing a lot of extra work with adding and removing inputs for maybe 10% of the cases when an input or output will feed to the outside of a network. In addition, this behavior may be confusing to a user, who wouldn't expect to see inputs appearing and dissappearing randomly. 3. The situation gets messed up when you have a composite inside of another composite. Then if you add a new locus to the inner composite, the new inputs are inherited into that composite, and then since they aren't connected there, are then inherited again into the outer composite. 4. All of the above stuff makes this kind of a pain to maintain, and also slows things down quite a bit. What I'd like to propose is that we change this behavior to be similar to that used in Overflow. A user would have to click on an input or output and then specifically request that it be inherited to the parent locus. The user would then also supply a name for it (like in Overflow) and then this name would help associate the NetInput with the internal locus connector to which it is associated. What do people think about this? Should I do it? Better suggestions? Defenders of the current way? Brad