plottery_editor 0.7.0

Graphical Editor of Plottery, a creative coding framework for generative vector graphics and pen plotting.
#[derive(Debug, Clone)]
pub enum RunningState {
    Idle,
    Preparing { msg: String },
    StartingBuild { msg: String },
    Building { msg: String },
    BuildFailed { msg: String },
    BuildKilled { msg: String },
    StartingGetParams { msg: String },
    GetParams { msg: String },
    GetParamsFailed { msg: String },
    GetParamsKilled { msg: String },
    StartingRun { msg: String },
    Running { msg: String },
    RunFailed { msg: String },
    RunKilled { msg: String },
    Updating { msg: String },
}
impl RunningState {
    pub fn is_busy(&self) -> bool {
        !matches!(
            self,
            RunningState::Idle
                | RunningState::BuildFailed { .. }
                | RunningState::RunFailed { .. }
                | RunningState::GetParamsFailed { .. }
                | RunningState::BuildKilled { .. }
                | RunningState::RunKilled { .. }
                | RunningState::GetParamsKilled { .. }
        )
    }
    pub fn is_error(&self) -> bool {
        matches!(
            self,
            RunningState::BuildFailed { .. }
                | RunningState::RunFailed { .. }
                | RunningState::GetParamsFailed { .. }
        )
    }
    pub fn get_msg(&self) -> String {
        match self {
            RunningState::Idle => "".to_string(),
            RunningState::Preparing { msg } => msg.clone(),
            RunningState::StartingBuild { msg } => msg.clone(),
            RunningState::Building { msg } => msg.clone(),
            RunningState::BuildFailed { msg } => msg.clone(),
            RunningState::BuildKilled { msg } => msg.clone(),
            RunningState::StartingRun { msg } => msg.clone(),
            RunningState::Running { msg } => msg.clone(),
            RunningState::RunFailed { msg } => msg.clone(),
            RunningState::RunKilled { msg } => msg.clone(),
            RunningState::Updating { msg } => msg.clone(),
            RunningState::StartingGetParams { msg } => msg.clone(),
            RunningState::GetParams { msg } => msg.clone(),
            RunningState::GetParamsFailed { msg } => msg.clone(),
            RunningState::GetParamsKilled { msg } => msg.clone(),
        }
    }
}