KitwareMedical / KitwareMedical/SlicerVirtualReality

Make the default movable behavior globally configurable

Open
#197 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
137
Forks
62
Avg merge
8h 8m
Merged PRs (30d)
8

Description

Currently, "Selectable" flag determines is a node can be dragged and it is enabled by default.

In some use cases, it is preferable if nodes are movable by default. In other cases, it is preferable if nodes are not movable by default.

Proposed solution: Instead of using the "Selectable" flag, add a custom `VirtualReality.GrabEnabled` node attribute. If the attribute is not set or set to `default` then the global setting is applied to the node. If the attribute is set to `true` or `false` then that overrides the global setting. The global setting ("All objects are movable by default") should be displayed in the virtual reality module GUI.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing how the Selectable flag currently controls node dragging and how the virtual reality module GUI exposes global settings. Define the GrabEnabled attribute behavior for default, true, and false values, then verify that the GUI setting applies only when the attribute is unset or default and that explicit node values override it.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
ar-vr-xr
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.