gled-model 2.32.1

The data model of gled: projects, scenes, effects, animations, curves and assets
Documentation
use crate::asset::scene::grid::GridLocation;
use serde::{Deserialize, Serialize};

#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
pub struct QuickSceneInstanceIndex {
    pub index: usize,
}

#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
pub enum SceneInstanceUnion {
    Selected,
    Grid(GridLocation),
    Quick(QuickSceneInstanceIndex),
}

pub fn selected_scene_instance_index() -> SceneInstanceUnion {
    SceneInstanceUnion::Selected
}

pub fn quick_scene_instance_index(index: usize) -> SceneInstanceUnion {
    SceneInstanceUnion::Quick(QuickSceneInstanceIndex { index })
}
pub fn grid_scene_instance_index(location: GridLocation) -> SceneInstanceUnion {
    SceneInstanceUnion::Grid(location)
}