Skip to main content

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}