#838 closed enhancement (fixed)
Name selection command/GUI
Reported by: | Owned by: | Conrad Huang | |
---|---|---|---|
Priority: | major | Milestone: | 0.7 |
Component: | General Controls | Version: | |
Keywords: | Cc: | Elaine Meng | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
From chimerax-users:
One thing that is missing is a similar list of selections (yes, ala PyMol). I find these to be extremely useful in a long running session and I was wondering if something like that is planned.
It would be similar to the model window, where you could control each selection and maybe apply view controls to each selection as well - like having components that are cartoon and others stick, etc.
---
Some thoughts:
1) GUI could be a tab in the Model Panel
2) Should somehow interface with upcoming Actions menu
3) Elaine has mocked up the command version at: http://www.cgl.ucsf.edu/home/meng/chimerax/docs/user/commands/name.htm
4) Possibly inspect the contents of the named selection; add notes to a selection
Change History (18)
comment:1 by , 8 years ago
Milestone: | Alpha 4 → Beta Release |
---|
comment:2 by , 8 years ago
Milestone: | Beta Release → 0.5 |
---|
comment:3 by , 8 years ago
Milestone: | 0.5 → 0.6 |
---|
comment:4 by , 8 years ago
Milestone: | 0.6 → 0.7 |
---|
comment:5 by , 8 years ago
Rename "target" command to "name", with syntax like "alias" with "name frozen" for immediate evaluation.
Simplify "Info" column, removing minimum-count items. Preserve atomspec for immediate evaluation targets. Limit "Info" column width to display "..." if too long.
Rename tool to "Basic Actions".
Change "Ribbon" heading to "Cartoon".
comment:6 by , 8 years ago
Oh sorry, the mockup no longer exists since I changed it to the real manpage and edited it to match current behavior. Original mockup did not have "all" keyword for "name list", for example.
Another "to do" is to save the user-defined targets in sessions. I haven't made a ticket for that although I could if you want. Did create a couple tickets for current "name" command bugs: #1084 #1085
comment:7 by , 8 years ago
Personally I find "name list all" too overwhelming to be useful, and this use of "all" differs from "name delete all" where it is supposed to refer only to the user-defined targets. If you do keep "name list all" it would help to have separate disclosure sections (initially closed) for element, atom type, and functional group, and any other extremely large sets of targets we might add.
For the Basic Actions dialog,
(A) a similar grouping of built-in names would be nice. "Hide non-matching names" helps but the list can still be overwhelming without more organization.
(B) when there are many rows, you forget which columns are for atom, cartoon, surface; if I remember correctly, an advantage of the pymol interface was that the icons themselves indicated cartoon, surface, or coloring, so it did not have this problem. We could try to do something more similar, or not... just wanted to mention the issue.
(C) a group suggestion (i.e. not just me) suggestion from an earlier Chimera meeting was to make the color icon square so that it looks more like color wells in other dialogs like Model Panel and Volume Viewer.
I do like that using a Basic Actions icon echoes the corresponding command in the Log. Sorry to put all these different things here; could make separate ticket(s) if you prefer.
comment:8 by , 8 years ago
Oooh, I like this idea:
In the Basic Actions dialog, instead of having all those eyes, could reuse Tom G’s molecule display icons: show and hide cartoon, show and hide atom, show and hide molecular surface. Even if the color icons remained the same as each other, it would be clearer from position what they do, and reduce the problem of trying to remember which column is which.
Also reinforces the meaning of the icons in both places, instead of having a lot of different icons that do the same thing in different tools in the UI.
comment:9 by , 8 years ago
"name list all" = list all names, not just user-defined ones
"name delete all" = delete all user-defined names
Which should change, and to what?
(A) The tool was never intended to display built-ins. I cannot remember who suggested adding that. Greg gets credit for "Hide non-matching names". Currently, I use the very simple mechanism of asking for registered names. To organize into groups similar to the menu, I would need to call something from "chem_group". Before I do that, do people ACTUALLY show built-ins?
(B) Icons now match the shortcut toolbar icons, so much easier to remember/recognize.
(C) "Basic Actions" is implemented using HTML, so the control over the rendering of the color selector is not the same as Model Panel and Volume Viewer. The entire color selector is different for the same reason. I made things more square, but HTML/CSS does not provide that many parameters to play with.
comment:10 by , 8 years ago
In the original mockup, "name list" did not have an "all" keyword. So I suggested removing it, unless the output was made more useful by organization and possibly collapsible sections.
(A) I don't know what the users most likely to benefit from the GUI tool (the command-averse) would prefer. I can guess that the built-ins might be useful, but the forest gets lost for the trees... or maybe the most popular needles are buried in the haystack.
One possibility is to omit the really huge lists (element, atom type, functional group) entirely, another is to make them collapsible. (I guess it would be difficult just to include the common elements?) I have collapsible divs in the User Guide top page (not that it would have to be done that way... there are probably several ways)
http://rbvi.ucsf.edu/chimerax/docs/user/index.html
(B) yay, thanks!!!
(C) if it's just a rectangle or square of a color, you could do it like I did in the "palettes" Users Guide page: http://rbvi.ucsf.edu/chimerax/docs/user/commands/palettes.html
... not sure if they work as clickable links, though, and I don't know how to make a square within a square. Alternatively, perhaps could just make an image icon like the show/hide ones, perhaps a snapshot of a color well in another dialog like Model Panel.
comment:11 by , 8 years ago
For (A) especially since I know you have no shortage of things to do, perhaps can wait to get more info from "real" users of the GUI.
comment:12 by , 8 years ago
By "removing it", you're suggesting that there will be no way to list built-in names at all. Is that correct?
(A) Postpone until feedback from users are available.
(B) done!
(C) The "color well" is not an image. It's rendered by the browser code as "color input", so I only have slight control over what it looks like. Take a look at the current version and see if it's acceptable. At least it's more square. And as TomG points out, the initial color in the well is always yellow/gold, mainly because I didn't want to figure out what the "correct" color is for built-in names, nor do I have a way to indicate "multiple colors are in use". Should I investigate replacing "color input" with an image that pops up the color selector? If so, what should that image look like?
comment:13 by , 8 years ago
How about:
"name list [builtins F/T]" = list names, including builtins (default F)
"name delete all" = delete all user-defined names
follow-up: 14 comment:14 by , 8 years ago
That suggestion re “name list” and “name delete” sounds good. I’m OK with current Basic Actions “color well” appearance and behavior; could possibly revisit changing it in the future, but unless others want changes, could consider it done for this ticket. I hadn’t even realized that they changed color until today! The pymol approach is a static multicolored image, if I remember correctly.
follow-up: 16 comment:16 by , 7 years ago
Hello, I saw that this was completed so tried it out in the latest build. I'm glad it is getting somewhere, but I feel it sell needs some attention. I couldn't write on the ticket, so I'm writing here. 1) If I select some things using the GUI, it would be nice if I could name the selection directly in the Basic Actions GUI (aka, a 'frozen' command) 2) If I name the selection using `name new_sel sel`, although there is a hyperlink to the selection, it doesn't actually highlight the selection when I click it. If I use the 'frozen' command, then this works. It seems like `frozen` should be the default? 3) I would remove the model components part of the basic actions. They are long and IMO, clutter the interface. 4) The images to show/hide certain selections are good; however, a drop-down menu is much easier to maintain and fits better in the space provided. Currently, one must have the Basic Actions take up half the screen. A drop-down would also allow commands to be added. You could then use the same drop-down elsewhere. Thanks for implementing this! I think as the first step, it is very useful. I hope these comments can make it even better. Cheers, -Jared Jared Adolf-Bryfogle, Ph.D. Research Associate Lab of Dr. William Schief The Scripps Research Institute On Sat, Jun 2, 2018 at 4:41 PM, ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> wrote:
follow-up: 17 comment:17 by , 7 years ago
If you use “name blah sel” it is simply a text substitution. So whenever you say “blah” it will be replaced with “sel” and if nothing is selected at the time you actually use it , “blah” will refer to nothing. You should use the “name frozen” option to save the CURRENT selection. The use of “name” (non-frozen) is for specification strings that are long and tedious to type, like a bunch of residue numbers and chain IDs, or complicated booleans with zones and atom types, etc., not to rename the current selection. In other words, the “name” option is not just to name a selection but also to alias a long specification string to something that is easier to remember and type.
follow-up: 18 comment:18 by , 7 years ago
Hi, Jared. Thanks for the feedback. Most of the issues you raise involve user interface design, and we've had a number of discussions about that. I'll give you our rationale for the choices that we made for this round. The problem is that we only have a small sample of users, so each opinion is probably disproportionately weighted. So we released what we have and are open to changing the design after more feedback. So here's my story, and I'm sticking to it :-) On 6/4/2018 6:23 PM, Jared Adolf-Bryfogle wrote: This (or something similar) was in my original design. There was supposed to be an interface where the user can type in a name, and a button click will define that name for the current selection. When I put that in the interface, it took up a lot of space and didn't look very good. So I took it out. I might give that another shot, hopefully better looking than last time. Elaine explained the default vs "frozen" difference. We thought, a priori, that text replacement is the more frequently desired action, but we'll find out as more feedback comes in. If "frozen" is more desirable, we will probably add a command like "name alias" that will act like the current default, and make "name" default to "name frozen". Again, small test population. The components, currently just chains, are useful for quickly manipulating well-defined units in the opened models. We might hide the table behind a "disclosure triangle" (you click on the triangle and it discloses the table) so that it doesn't take up a lot of space initially. We'll see. The interface is loosely modeled on the PyMol interface, which has letters that you can click on. The main advantage of this type of setup is that you need only a single click to do what you want (obviously pretty basic stuff but frequently used). No popups, no dragging the mouse, nothin'. And unless we add three or four more "basic actions", the table is wide enough to support the iconic style rather than the drop-down menu style. Again, thanks for the feedback, Jared. We will be revisiting this, but perhaps not until after we get to the 0.9 release. There are so many things to do. :-o Conrad
Milestone renamed