Opened 4 years ago
Closed 2 years ago
#6703 closed defect (fixed)
Chimera-like selection behavior for left/right arrow keys
| Reported by: | Owned by: | Eric Pettersen | |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | UI | Version: | |
| Keywords: | Cc: | Elaine Meng | |
| Blocked By: | Blocking: | ||
| Notify when closed: | Platform: | all | |
| Project: | ChimeraX |
Description (last modified by )
The following bug report has been submitted:
Platform: macOS-10.16-x86_64-i386-64bit
ChimeraX Version: 1.3 (2021-12-08 23:08:33 UTC)
Description
In Chimera, left/right arrow keys would invert the existing selection (i.e. moving from a selected helix to selecting everything except the helix). This was a very useful key binding for rapid creation of selections of interest. The functionality exists in the Select toolbar menu, but the key bindings would be nice to implement for user efficiency/speed.
Thanks for all your work on a wonderful program!
Log:
UCSF ChimeraX version: 1.3 (2021-12-08)
© 2016-2021 Regents of the University of California. All rights reserved.
How to cite UCSF ChimeraX
> help
> open 25428 fromDatabase emdb
Summary of feedback from opening 25428 fetched from emdb
---
note | Fetching compressed map 25428 from
ftp://ftp.ebi.ac.uk/pub/databases/emdb/structures/EMD-25428/map/emd_25428.map.gz
Opened emdb 25428 as #1, grid size 300,300,300, pixel 1.08, shown at level
0.016, step 2, values float32
> volume #1 level 0.03
> volume #1 step 1
> lighting soft
> turn y 1
> turn y 1 inf
Expected 'forever' or an integer >= 1 or a keyword
> turn y 1 forever
> freeze
Unknown command: freeze
> freeze
Unknown command: freeze
> turn y 1
> stop
> volume #1 style mesh
> volume #1 style image
> volume #1
> volume #1 maximumIntensityProjection true
> volume #1 region 0,0,149,299,299,149 step 1 maximumIntensityProjection false
> showOutlineBox true
> volume #1 region 0,0,0,299,299,299 step 1
> volume #1 region 0,0,0,299,299,299 step 1 colorMode opaque8 orthoplanes xyz
> positionPlanes 149,149,149 imageMode orthoplanes
> volume #1 imageMode "box faces"
> volume #1 colorMode auto8 imageMode "tilted slab" tiltedSlabAxis
> -0.2379,0.5104,-0.8263 tiltedSlabOffset -121.8 tiltedSlabSpacing 1.08
> tiltedSlabPlaneCount 60
> volume #1 style surface
> volume #1 style image colorMode opaque8 imageMode "box faces"
> volume #1 style surface
> close #1
> open 25428 format ccp4 fromDatabase emdb
Opened emdb 25428 as #1, grid size 300,300,300, pixel 1.08, shown at level
0.016, step 2, values float32
> volume #1 step 1
> volume #1 level 0.03
> set bgColor white
> lighting full
> lighting simple
> graphics silhouettes true
> set bgColor gray
> set bgColor white
> set bgColor black
> set bgColor white
OpenGL version: 4.1 ATI-4.8.13
OpenGL renderer: AMD Radeon Pro 555 OpenGL Engine
OpenGL vendor: ATI Technologies Inc.Hardware:
Hardware Overview:
Model Name: MacBook Pro
Model Identifier: MacBookPro14,3
Processor Name: Quad-Core Intel Core i7
Processor Speed: 2.8 GHz
Number of Processors: 1
Total Number of Cores: 4
L2 Cache (per Core): 256 KB
L3 Cache: 6 MB
Hyper-Threading Technology: Enabled
Memory: 16 GB
System Firmware Version: 447.80.3.0.0
OS Loader Version: 540.100.7~14
SMC Version (system): 2.45f5
Software:
System Software Overview:
System Version: macOS 12.3 (21E230)
Kernel Version: Darwin 21.4.0
Time since boot: 13 days 22:16
Graphics/Displays:
Intel HD Graphics 630:
Chipset Model: Intel HD Graphics 630
Type: GPU
Bus: Built-In
VRAM (Dynamic, Max): 1536 MB
Vendor: Intel
Device ID: 0x591b
Revision ID: 0x0004
Automatic Graphics Switching: Supported
gMux Version: 4.0.29 [3.2.8]
Metal Family: Supported, Metal GPUFamily macOS 2
Radeon Pro 555:
Chipset Model: Radeon Pro 555
Type: GPU
Bus: PCIe
PCIe Lane Width: x8
VRAM (Total): 2 GB
Vendor: AMD (0x1002)
Device ID: 0x67ef
Revision ID: 0x00c7
ROM Revision: 113-C980AJ-927
VBIOS Version: 113-C9801AP-A02
EFI Driver Version: 01.A0.927
Automatic Graphics Switching: Supported
gMux Version: 4.0.29 [3.2.8]
Metal Family: Supported, Metal GPUFamily macOS 2
Displays:
Color LCD:
Display Type: Built-In Retina LCD
Resolution: 2880 x 1800 Retina
Framebuffer Depth: 24-Bit Color (ARGB8888)
Main Display: Yes
Mirror: Off
Online: Yes
Automatically Adjust Brightness: Yes
Connection Type: Internal
Locale: (None, 'UTF-8')
PyQt5 5.15.2, Qt 5.15.2
Installed Packages:
alabaster: 0.7.12
appdirs: 1.4.4
appnope: 0.1.2
Babel: 2.9.1
backcall: 0.2.0
blockdiag: 2.0.1
certifi: 2021.5.30
cftime: 1.5.1.1
charset-normalizer: 2.0.9
ChimeraX-AddCharge: 1.2.2
ChimeraX-AddH: 2.1.11
ChimeraX-AlignmentAlgorithms: 2.0
ChimeraX-AlignmentHdrs: 3.2
ChimeraX-AlignmentMatrices: 2.0
ChimeraX-Alignments: 2.2.3
ChimeraX-AlphaFold: 1.0
ChimeraX-AltlocExplorer: 1.0.1
ChimeraX-AmberInfo: 1.0
ChimeraX-Arrays: 1.0
ChimeraX-Atomic: 1.31
ChimeraX-AtomicLibrary: 4.2
ChimeraX-AtomSearch: 2.0
ChimeraX-AtomSearchLibrary: 1.0
ChimeraX-AxesPlanes: 2.0
ChimeraX-BasicActions: 1.1
ChimeraX-BILD: 1.0
ChimeraX-BlastProtein: 2.0
ChimeraX-BondRot: 2.0
ChimeraX-BugReporter: 1.0
ChimeraX-BuildStructure: 2.6.1
ChimeraX-Bumps: 1.0
ChimeraX-BundleBuilder: 1.1
ChimeraX-ButtonPanel: 1.0
ChimeraX-CageBuilder: 1.0
ChimeraX-CellPack: 1.0
ChimeraX-Centroids: 1.2
ChimeraX-ChemGroup: 2.0
ChimeraX-Clashes: 2.2.2
ChimeraX-ColorActions: 1.0
ChimeraX-ColorGlobe: 1.0
ChimeraX-ColorKey: 1.5
ChimeraX-CommandLine: 1.1.5
ChimeraX-ConnectStructure: 2.0
ChimeraX-Contacts: 1.0
ChimeraX-Core: 1.3
ChimeraX-CoreFormats: 1.1
ChimeraX-coulombic: 1.3.2
ChimeraX-Crosslinks: 1.0
ChimeraX-Crystal: 1.0
ChimeraX-CrystalContacts: 1.0
ChimeraX-DataFormats: 1.2.2
ChimeraX-Dicom: 1.0
ChimeraX-DistMonitor: 1.1.5
ChimeraX-DistUI: 1.0
ChimeraX-Dssp: 2.0
ChimeraX-EMDB-SFF: 1.0
ChimeraX-ExperimentalCommands: 1.0
ChimeraX-FileHistory: 1.0
ChimeraX-FunctionKey: 1.0
ChimeraX-Geometry: 1.1
ChimeraX-gltf: 1.0
ChimeraX-Graphics: 1.1
ChimeraX-Hbonds: 2.1.2
ChimeraX-Help: 1.2
ChimeraX-HKCage: 1.3
ChimeraX-IHM: 1.1
ChimeraX-ImageFormats: 1.2
ChimeraX-IMOD: 1.0
ChimeraX-IO: 1.0.1
ChimeraX-ItemsInspection: 1.0
ChimeraX-Label: 1.1
ChimeraX-ListInfo: 1.1.1
ChimeraX-Log: 1.1.4
ChimeraX-LookingGlass: 1.1
ChimeraX-Maestro: 1.8.1
ChimeraX-Map: 1.1
ChimeraX-MapData: 2.0
ChimeraX-MapEraser: 1.0
ChimeraX-MapFilter: 2.0
ChimeraX-MapFit: 2.0
ChimeraX-MapSeries: 2.1
ChimeraX-Markers: 1.0
ChimeraX-Mask: 1.0
ChimeraX-MatchMaker: 2.0.4
ChimeraX-MDcrds: 2.6
ChimeraX-MedicalToolbar: 1.0.1
ChimeraX-Meeting: 1.0
ChimeraX-MLP: 1.1
ChimeraX-mmCIF: 2.4
ChimeraX-MMTF: 2.1
ChimeraX-Modeller: 1.2.6
ChimeraX-ModelPanel: 1.2.1
ChimeraX-ModelSeries: 1.0
ChimeraX-Mol2: 2.0
ChimeraX-Morph: 1.0
ChimeraX-MouseModes: 1.1
ChimeraX-Movie: 1.0
ChimeraX-Neuron: 1.0
ChimeraX-Nucleotides: 2.0.2
ChimeraX-OpenCommand: 1.7
ChimeraX-PDB: 2.6.5
ChimeraX-PDBBio: 1.0
ChimeraX-PDBLibrary: 1.0.2
ChimeraX-PDBMatrices: 1.0
ChimeraX-PickBlobs: 1.0
ChimeraX-Positions: 1.0
ChimeraX-PresetMgr: 1.0.1
ChimeraX-PubChem: 2.1
ChimeraX-ReadPbonds: 1.0.1
ChimeraX-Registration: 1.1
ChimeraX-RemoteControl: 1.0
ChimeraX-ResidueFit: 1.0
ChimeraX-RestServer: 1.1
ChimeraX-RNALayout: 1.0
ChimeraX-RotamerLibMgr: 2.0.1
ChimeraX-RotamerLibsDunbrack: 2.0
ChimeraX-RotamerLibsDynameomics: 2.0
ChimeraX-RotamerLibsRichardson: 2.0
ChimeraX-SaveCommand: 1.5
ChimeraX-SchemeMgr: 1.0
ChimeraX-SDF: 2.0
ChimeraX-Segger: 1.0
ChimeraX-Segment: 1.0
ChimeraX-SelInspector: 1.0
ChimeraX-SeqView: 2.4.6
ChimeraX-Shape: 1.0.1
ChimeraX-Shell: 1.0
ChimeraX-Shortcuts: 1.1
ChimeraX-ShowAttr: 1.0
ChimeraX-ShowSequences: 1.0
ChimeraX-SideView: 1.0
ChimeraX-Smiles: 2.1
ChimeraX-SmoothLines: 1.0
ChimeraX-SpaceNavigator: 1.0
ChimeraX-StdCommands: 1.6.1
ChimeraX-STL: 1.0
ChimeraX-Storm: 1.0
ChimeraX-Struts: 1.0
ChimeraX-Surface: 1.0
ChimeraX-SwapAA: 2.0
ChimeraX-SwapRes: 2.1
ChimeraX-TapeMeasure: 1.0
ChimeraX-Test: 1.0
ChimeraX-Toolbar: 1.1
ChimeraX-ToolshedUtils: 1.2
ChimeraX-Tug: 1.0
ChimeraX-UI: 1.13.7
ChimeraX-uniprot: 2.2
ChimeraX-UnitCell: 1.0
ChimeraX-ViewDockX: 1.0.1
ChimeraX-VIPERdb: 1.0
ChimeraX-Vive: 1.1
ChimeraX-VolumeMenu: 1.0
ChimeraX-VTK: 1.0
ChimeraX-WavefrontOBJ: 1.0
ChimeraX-WebCam: 1.0
ChimeraX-WebServices: 1.0
ChimeraX-Zone: 1.0
colorama: 0.4.4
cxservices: 1.1
cycler: 0.11.0
Cython: 0.29.24
decorator: 5.1.0
docutils: 0.17.1
filelock: 3.0.12
funcparserlib: 0.3.6
grako: 3.16.5
h5py: 3.6.0
html2text: 2020.1.16
idna: 3.3
ihm: 0.21
imagecodecs: 2021.4.28
imagesize: 1.3.0
ipykernel: 5.5.5
ipython: 7.23.1
ipython-genutils: 0.2.0
jedi: 0.18.0
Jinja2: 3.0.1
jupyter-client: 6.1.12
jupyter-core: 4.9.1
kiwisolver: 1.3.2
lxml: 4.6.3
lz4: 3.1.3
MarkupSafe: 2.0.1
matplotlib: 3.4.3
matplotlib-inline: 0.1.3
MolecularDynamicsViewer: 1.4
msgpack: 1.0.2
netCDF4: 1.5.7
networkx: 2.6.3
numexpr: 2.8.0
numpy: 1.21.2
openvr: 1.16.801
packaging: 21.0
ParmEd: 3.2.0
parso: 0.8.3
pexpect: 4.8.0
pickleshare: 0.7.5
Pillow: 8.3.2
pip: 21.2.4
pkginfo: 1.7.1
prompt-toolkit: 3.0.23
psutil: 5.8.0
ptyprocess: 0.7.0
pycollada: 0.7.1
pydicom: 2.1.2
Pygments: 2.10.0
PyOpenGL: 3.1.5
PyOpenGL-accelerate: 3.1.5
pyparsing: 3.0.6
PyQt5-commercial: 5.15.2
PyQt5-sip: 12.8.1
PyQtWebEngine-commercial: 5.15.2
python-dateutil: 2.8.2
pytz: 2021.3
pyzmq: 22.3.0
qtconsole: 5.1.1
QtPy: 1.11.3
RandomWords: 0.3.0
requests: 2.26.0
scipy: 1.7.1
setuptools: 57.5.0
sfftk-rw: 0.7.1
six: 1.16.0
snowballstemmer: 2.2.0
sortedcontainers: 2.4.0
Sphinx: 4.2.0
sphinx-autodoc-typehints: 1.12.0
sphinxcontrib-applehelp: 1.0.2
sphinxcontrib-blockdiag: 2.0.0
sphinxcontrib-devhelp: 1.0.2
sphinxcontrib-htmlhelp: 2.0.0
sphinxcontrib-jsmath: 1.0.1
sphinxcontrib-qthelp: 1.0.3
sphinxcontrib-serializinghtml: 1.1.5
suds-jurko: 0.6
tifffile: 2021.4.8
tinyarray: 1.2.3
tornado: 6.1
traitlets: 5.1.1
urllib3: 1.26.7
wcwidth: 0.2.5
webcolors: 1.11.1
wheel: 0.37.0
wheel-filename: 1.3.0
Change History (2)
comment:1 by , 4 years ago
| Cc: | added |
|---|---|
| Component: | Unassigned → UI |
| Owner: | set to |
| Platform: | → all |
| Project: | → ChimeraX |
| Status: | new → accepted |
| Summary: | ChimeraX bug report submission → Chimera-like selection behavior for left/right arrow keys |
comment:2 by , 2 years ago
| Description: | modified (diff) |
|---|---|
| Resolution: | → fixed |
| Status: | accepted → closed |
Made the left/right arrow keys invert the selection. This differs from Chimera in a couple of ways:
(1) In Chimera the left arrow key undid the last selection. This is basically available in ChimeraX as Edit→Undo as long as the selection change was the last thing you did. That, along with the fact that wanting to undo the last selection changed didn't seem common enough to assign to an arrow key, persuaded us to assign it as selection inversion instead.
(2) In Chimera, using the right arrow key without shift inverted the selection only in models that had something selected, whereas with the arrow key it would invert the selection in all models. Chimera doesn't currently have support for only-in-selected-models inversion, so the key always does global inversion.
Change: https://github.com/RBVI/ChimeraX/commit/dd9b4825d7bc9487f50a614c6c5248dd5ab538af
Hi Josh,
--Eric