Ervinn, thanks for your support in this. I guess by Flex you mean Plex.
I think they should separate and have two user action. One is to activate a Thought. That is the Thought is moved to the center, and Thought links are changing. The other action is to Highlight a Thought for editing.
Yes, that sums it up, though my Preference is not to Automatically recenter on activating a thought. I dislike all the shuffling around that occurs when this option is checked. When I activate a thought in EV I want the rest of the plex to stay put.
Talking of preferences, the other EV option Collapse on activate is misleading. To me, "collapse" means fully collapsed. Instead of this, collapse here means collapse down to the first generation only, so in actual fact, even with this option checked, activating a fully collapsed thought in EV causes it to expand to the first generation, something you would not want to try with a thought that might have a hundred thoughts hanging off it. Even with only a few first generation thoughts, activating one can be very disorienting. Added to this, we really have no way of knowing when looking at a fully collapsed thought how many children/parents/jumps are hanging off any gate - all we can tell is that the gate is empty (hollow dot) or has more than one attached thought (solid dot). So clicking it could be a disaster.
I agree with you that we should be able to activate/edit any thought in EV without disturbing the plex at all. Unfortunately, the only way to do this is always keep every thought in the EV fully expanded. But what happens at the outer ends of the plex?
There are only two answers to this:
1) Fully expand the whole Brain! Imagine the memory and CPU cycles required to maintain this display, not to mention the messy background criss-crossing of links connecting distant thoughts. No.
2) Unlink the thoughts at the extremes of an EV from any thoughts not in the EV. This creates problems, of course. These "terminal" thoughts cannot be allowed to have parents or jumps if at the top of the EV; if at the bottom, children or jumps, etc. This is where EV differs from Normal view; the same terminal thoughts would have normal first generation thoughts attached. This is how PB's patented design has worked from the start; the price paid is a more restricted view.
I guess one could create two thoughts with the same name in each terminal case. The one used in the EV would be attached only to other thoughts in that view, as described above; its namesake used only in Normal View, with its normal parents/children/jumps. They would be mutually connected by hyperlinks in their Notes. Not elegant, but a workaround for this problem - which I can't be bothered setting up.
The cure for this is, as we both agree, that clicking any thought in an EV should neither expand nor collapse it - that's what its tabs are for, and unfortunately even the collapse tab is denied us when the thought is active. (Now I think of it, that's probably why - to be consistent with the design philosophy of not collapsing the active thought below its first generation!) So, as a corollary, the active thought should have a collapse tab enabling it to be collapsed completely.
One of my reasons for unchecking Automatically recenter is that I prefer not to have to drag the Plex at all to view all parts of it! So instead of having one huge EV and dragging the background around, I prefer a number of smaller saved EVs. The only problem is that there's no easy way to link them. We can't just click the thought at the top/bottom/L/R side and get switched to another saved EV (another suggestion). This would be analogous to being told which map to continue to in a street directory.
I thought out the different mouse action, also. One could be the simple left click. The other is left click and hold it for one or two seconds. When you do a fast click the Thought is Highlighted, but stays on the Flex. With a slow click, the Thought is Highlighted and also Activated.
I'm not sure what you mean by Highlighting and Activation here, though I reason that Highlighting means making it active (e.g., for editing its note or properties) though without expansion/collapse and Activation means activation plus first-level expansion. In both cases automatic centering would also take place if this preference was enabled. At least, that's what I'd like to see happen.
Yes, a "slow click" might be a good solution. Windows users can see this in action in Windows Explorer, where holding the left mouse button depressed while hovering over a filename in Windows Explorer opens the name editor after a second or so if this option is set (at least, in XP). If this is difficult to achieve in Java, an alternative would be Shift+Click - its current function of selecting all thoughts leading back to the active thought isn't all that useful (to me), so maybe its action could be toggled between these functions. There would be no delay as in slow click, which could prove annoying; however the penalty is that both hands are required (just like activating a hyperlink in Notes!).
Maybe the best solution here is again to offer the OPTION of using one method or the other. A slightly steeper learning curve is a small price to pay for options that take the irritation out of working with an application.