viewport_lib/interaction/input/mode.rs
1/// The current input mode determines which bindings are active.
2#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
3#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4#[non_exhaustive]
5pub enum InputMode {
6 /// Default mode: orbit/pan/zoom, object selection, shortcuts.
7 Normal,
8 /// WASD fly-through camera mode.
9 FlyMode,
10 /// Keyboard-driven object manipulation (G/R/S + axis constraint).
11 Manipulating,
12}