Open aquamiau opened 2 years ago
@aquamiau Are you aware that you can press the ALT key while hovering over an output pin? If you do this, a green rectangle instead of the green circle appears to indicate that you would enter "Single point wire mode". In this mode, it is not necessary to keep pressing the left mouse button while creating the wire, and you can click to define intermediate wire points.However, these intermediate wire points cannot be edited afterward.
Maybe I should activate "Single point wire mode" by default if the user clicks (press + release) with the left mouse button on an output port? Currently, if you do this, noting happens intentionally.
I'd say both on output and input nodes (and ESC to cancel) - as someone who occasionally works with vector drawings it'd feel intuitive.
I think editable wire points (additionally to moving segments) would make it to manage wires than just moving wire segments by themselves - this was the main part of this feature suggestion. Could be a lot to implement, so hearing what others think about it could help decide if it's worth to implement.
Alternatively, what about making each corner (and joint) movable? Not quite the same, as you can't select multiple to move at once, but I think that would be a very useful feature already that might be a lot simpler to add.
@aquamiau Wires have a property "Layout", which is per default set to "Orthogonal". If you change it to "None", Antares displays handles at every wire segment endpoint (when you move the mouse above the wire), and you can then drag the handles around.
However, with "Orthogonal" layout, I don't see the benefit of being able drag individual end points, because Antares would still need to move the point at the other end of the segment as well in order to maintain the orthogonal layout. And this is IMHO equivalent to moving the entire segment instead of moving individual points.
Or are you suggesting that layout mode "None" should be the default, where users can place the points wherever they want, without maintaining an orthogonal layout?
Being able to move corners (regarding the alternative idea, without actual wire nodes) moves two segments at once - like being able to resize a window at the corner instead of just the sides.
If this was about moving individual wire nodes: Not all corners would be wire nodes, the pathing between two nodes can still create corners, S-shapes etc. - only the created nodes will stay in place. Wire nodes would basically act like components in placing.
And no, please keep the default layout mode at orthogonal, can't imagine anyone wanting to work with "None" 😆
Okay, now I get the idea of moving corners. I'll have to think about the idea adding additional wire nodes - including deleting them again-, especially how difficult this would be to implement
Working on a notebook with a touchpad only can make it difficult to connect components due to having to hold the click. Since clicking an input or output port of a component currently has no effect, it could be used to start drawing a wire to the destination, specified with the next click. This can then also be used to add wire nodes, a set point where the wire has to go through to aid automatic wire layouting. That means, a wire node acts a bit like a component, and the pathing is automatic between two nodes, two components and between a node and a component - but the nodes themselves can only be moved manually. These nodes should be selectable, moveable and deletable. Clicking in the middle of an existing (and already selected) wire could create a node, similar to path drawing tools. These nodes could either be hidden until the wire is selected, or always visible (for example with a small black square).