Feat: add hidden mode and new documentation
This commit is contained in:
@@ -16,6 +16,12 @@ pub enum PatternField {
|
||||
Speed,
|
||||
}
|
||||
|
||||
#[derive(Clone, Copy, PartialEq, Eq)]
|
||||
pub enum ScriptField {
|
||||
Speed,
|
||||
Length,
|
||||
}
|
||||
|
||||
#[derive(Clone, Copy, PartialEq, Eq, Default)]
|
||||
pub enum PatternPropsField {
|
||||
#[default]
|
||||
@@ -155,3 +161,25 @@ impl Default for EditorContext {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub struct ScriptEditorState {
|
||||
pub editor: Editor,
|
||||
pub show_stack: bool,
|
||||
pub stack_cache: RefCell<Option<StackCache>>,
|
||||
pub dirty: bool,
|
||||
pub focused: bool,
|
||||
pub mouse_selecting: bool,
|
||||
}
|
||||
|
||||
impl Default for ScriptEditorState {
|
||||
fn default() -> Self {
|
||||
Self {
|
||||
editor: Editor::new(),
|
||||
show_stack: false,
|
||||
stack_cache: RefCell::new(None),
|
||||
dirty: false,
|
||||
focused: true,
|
||||
mouse_selecting: false,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@ pub use audio::{AudioSettings, DeviceKind, EngineSection, MainLayout, Metrics, S
|
||||
pub use color_scheme::ColorScheme;
|
||||
pub use editor::{
|
||||
CopiedStepData, CopiedSteps, EditorContext, EditorTarget, EuclideanField, PatternField,
|
||||
PatternPropsField, StackCache,
|
||||
PatternPropsField, ScriptEditorState, ScriptField, StackCache,
|
||||
};
|
||||
pub use live_keys::LiveKeyState;
|
||||
pub use modal::{ConfirmAction, Modal, RenameTarget};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
use crate::model::{self, FollowUp, LaunchQuantization, PatternSpeed, SyncMode};
|
||||
use crate::state::editor::{EuclideanField, PatternField, PatternPropsField};
|
||||
use crate::state::editor::{EuclideanField, PatternField, PatternPropsField, ScriptField};
|
||||
use crate::state::file_browser::FileBrowserState;
|
||||
|
||||
#[derive(Clone, PartialEq, Eq)]
|
||||
@@ -69,6 +69,10 @@ pub enum Modal {
|
||||
field: PatternField,
|
||||
input: String,
|
||||
},
|
||||
SetScript {
|
||||
field: ScriptField,
|
||||
input: String,
|
||||
},
|
||||
SetTempo(String),
|
||||
JumpToStep(String),
|
||||
AddSamplePath(Box<FileBrowserState>),
|
||||
|
||||
Reference in New Issue
Block a user