Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Problem] Changing the visibility state of tree items lacks discoverability and is awkward to use #12341

Closed
2 tasks done
NomAnor opened this issue Feb 11, 2024 · 1 comment
Closed
2 tasks done
Labels
Core Issue or PR touches core sections (App, Gui, Base) of FreeCAD Feature FR for improvements or new features

Comments

@NomAnor
Copy link
Contributor

NomAnor commented Feb 11, 2024

Is there an existing issue for this?

  • I have searched the existing issues

Problem description

Currently the visibility of an object can be changed by using the context menu or by pressing space bar. A hidden status is visualized by the item being grayed out.

When designing parts it is often necessary to hide certain objects either to select something behind them or just to see for example the previous design step in part design.

Using the context menu is cumbersome (move mouse to item -> right click -> move mouse to correct item -> click Toggle visibility) and not fast to do. Using the space bar is easy (but still a three step process: move mouse to item -> select item -> press space bar) but not easily discoverable by (new) users.

Adding an icon that allows to toggle the visibility by one click, provides a fast visual indication of the visibility status and a fast process to change the visibility.

@obelisk79 gave a recommendation from the design group to implent this #10805 (comment).
I created a PR to provide an implementation in the style of LinkMerge #12298

Full version info

OS: Arch Linux (XFCE/xfce)
Word size of FreeCAD: 64-bit
Version: 0.22.0dev.35827 (Git)
Build type: Unknown
Branch: main
Hash: 268edeeb6070586c9f55a1e8e272c107ce960d10
Python 3.11.6, Qt 5.15.12, Coin 4.0.2, Vtk 9.3.0, OCC 7.7.2
Locale: German/Germany (de_DE)
Installed mods: 
  * Manipulator 1.5.7
  * ThreadProfile 1.84.0
  * DynamicData 2.60.0
  * lattice2 1.0.0
  * 3D_Printing_Tools
  * freecad.gears 1.0.0
  * Assembly3 0.11.3
  * fasteners 0.4.21

Subproject(s) affected?

None

Anything else?

Examples

An icon (often an eye) to toggle the visibility is a known design element to users from other programs:

This is an example from Blender:

This is an example from Unity:

This is an example from Inkscape:

Freecad

This is how it currently looks in FreeCAD:

This is how it looks in LinkMerge:

Left click on the icon toggles the visibility. Alt+Left click toggles the transparency (green eye).

An example by @obelisk79:

Points for discussion

These are some questions I gathered from comments. In italic are my opinions.

  • Should this be implemented? Yes
  • Should the icon be enabled by a preference? Yes
  • What is the default for that preference? Enabled, for easier discoverability by new users
  • Where to show the icon?
    • Before the nesting arrows (@obelisk79 example)
    • Before the normal icon (LinkMerge and my PR)
    • Right border (Blender, Inkscape)
  • What items show the icon?
    • All (LinkMerge, my PR)
    • All items that are visible in the 3D View. My preference, i couldn't find a function to check for this
    • Selected item types.
  • Should items still be grayed out when showing the icon? I prefer only the icon, no gray out
  • Should the icon show the visibility state (visible, transparent, hidden) or just the same icon and act like a button? Show state
  • What actions are available with the icon? Same as pressing space bar
    • Toggle visibility (Left click)
    • Toggle transparency (Alt+Left click, Left click cycles trough states)

Code of Conduct

  • I agree to follow this project's Code of Conduct
@maxwxyz maxwxyz added Core Issue or PR touches core sections (App, Gui, Base) of FreeCAD Feature FR for improvements or new features labels Feb 11, 2024
@chennes chennes changed the title [Problem] Add an icon for the visibility state to the tree view items [Problem] Changing the visibility state of tree items lacks discoverability and is awkward to use Feb 11, 2024
@NomAnor
Copy link
Contributor Author

NomAnor commented Feb 27, 2024

Icon is implemented by #12298

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Core Issue or PR touches core sections (App, Gui, Base) of FreeCAD Feature FR for improvements or new features
Projects
None yet
Development

No branches or pull requests

2 participants