thechiselgroup / biomixer

BioMixer
http://bio-mixer.appspot.com/
16 stars 13 forks source link

Deleting and Dimming Nodes by Clicking Nodes #446

Closed everbeek closed 9 years ago

everbeek commented 9 years ago

This case is meant to apply to both Dimming and Removing nodes. Dimming will be tied in with the checkboxes.

Although deleting from the filter menu is useful because it is easy to find things, and find them in groups, people need to be able to delete nodes from within the graph itself as well.

Add either a right click context menu, or use the drop down menu to do this. Also allow the delete (and maybe backspace) key to delete nodes.

Multi-selection seems vital if users can do this. Add Ctrl-click for selection, and a lasso. After adding this, add a 'Delete All Non-Selected' option.

Also, the node deletion from the checkboxes needs to be improved. For node selection-deletion, use a deletion container...disconnect their arcs, and perhaps fix their location. This keeps them alive in the expansion sets, etc, but prevents them from being seen or affecting layouts. This is a rather big change. Think about it. The intent is to offer a better hiding than the current dimming, and to create a way to delete when node(s) are selected.

everbeek commented 9 years ago

I am contemplating this. I am thinking of adding a node menu item to toggle hiding, versus adding a checkbox to the node popup. I am also thinking of an alternative way of designating nodes for deletion than making them dimmed. I feel like there is sense in the dimming approach, but it is very unusual.

I will add both of those interaction methods.

everbeek commented 9 years ago

I was trying to add a checkbox to the popup, but it wouldn't function. Eventually I figured out that the popup receives the widget constructed as text, and therefore the binding done to the checkbox in javascript does not function properly. How irritating.

I'm having trouble getting JQuery on() and off() to work in this case. If it were feasible, I could hack javascript string functions into the checkbox "onchange" property within the popup, but that is an awkward and bad solution.

everbeek commented 9 years ago

Got it finally! I thought off() needed to be called on the event bound target, but it needs to be called on the same target as on() was called for.

everbeek commented 9 years ago

I am also considering whether hidden but non-deleted nodes should still have hover highlighting, and whether that would apply both when the hidden (dimmed) node is hovered or also when its neighbours are hovered...

Also, I need to address the problems mentioned above regarding node deletion and expansion sets, as well as consideration of whether multi-selection is desirable.

everbeek commented 9 years ago

Closing this issue because the main thrust is satisfied. Multi-selection can be considered if it comes up again.