Init
This commit is contained in:
130
src/commands.rs
Normal file
130
src/commands.rs
Normal file
@@ -0,0 +1,130 @@
|
||||
use std::path::PathBuf;
|
||||
|
||||
use crate::engine::PatternChange;
|
||||
use crate::model::PatternSpeed;
|
||||
use crate::state::{Modal, PatternField};
|
||||
|
||||
#[allow(dead_code)]
|
||||
pub enum AppCommand {
|
||||
// Playback
|
||||
TogglePlaying,
|
||||
TempoUp,
|
||||
TempoDown,
|
||||
|
||||
// Navigation
|
||||
NextStep,
|
||||
PrevStep,
|
||||
StepUp,
|
||||
StepDown,
|
||||
ToggleFocus,
|
||||
SelectEditBank(usize),
|
||||
SelectEditPattern(usize),
|
||||
|
||||
// Pattern editing
|
||||
ToggleStep,
|
||||
LengthIncrease,
|
||||
LengthDecrease,
|
||||
SpeedIncrease,
|
||||
SpeedDecrease,
|
||||
SetLength {
|
||||
bank: usize,
|
||||
pattern: usize,
|
||||
length: usize,
|
||||
},
|
||||
SetSpeed {
|
||||
bank: usize,
|
||||
pattern: usize,
|
||||
speed: PatternSpeed,
|
||||
},
|
||||
|
||||
// Script editing
|
||||
SaveEditorToStep,
|
||||
CompileCurrentStep,
|
||||
CompileAllSteps,
|
||||
DeleteStep {
|
||||
bank: usize,
|
||||
pattern: usize,
|
||||
step: usize,
|
||||
},
|
||||
ResetPattern {
|
||||
bank: usize,
|
||||
pattern: usize,
|
||||
},
|
||||
ResetBank {
|
||||
bank: usize,
|
||||
},
|
||||
CopyPattern {
|
||||
bank: usize,
|
||||
pattern: usize,
|
||||
},
|
||||
PastePattern {
|
||||
bank: usize,
|
||||
pattern: usize,
|
||||
},
|
||||
CopyBank {
|
||||
bank: usize,
|
||||
},
|
||||
PasteBank {
|
||||
bank: usize,
|
||||
},
|
||||
|
||||
// Clipboard
|
||||
CopyStep,
|
||||
PasteStep,
|
||||
LinkPasteStep,
|
||||
HardenStep,
|
||||
|
||||
// Pattern playback
|
||||
QueuePatternChange(PatternChange),
|
||||
TogglePatternPlayback {
|
||||
bank: usize,
|
||||
pattern: usize,
|
||||
},
|
||||
|
||||
// Project
|
||||
RenameBank {
|
||||
bank: usize,
|
||||
name: Option<String>,
|
||||
},
|
||||
RenamePattern {
|
||||
bank: usize,
|
||||
pattern: usize,
|
||||
name: Option<String>,
|
||||
},
|
||||
Save(PathBuf),
|
||||
Load(PathBuf),
|
||||
|
||||
// UI
|
||||
SetStatus(String),
|
||||
ClearStatus,
|
||||
Flash {
|
||||
message: String,
|
||||
duration_ms: u64,
|
||||
},
|
||||
OpenModal(Modal),
|
||||
CloseModal,
|
||||
OpenPatternModal(PatternField),
|
||||
|
||||
// Page navigation
|
||||
PageLeft,
|
||||
PageRight,
|
||||
PageUp,
|
||||
PageDown,
|
||||
|
||||
// Doc navigation
|
||||
DocNextTopic,
|
||||
DocPrevTopic,
|
||||
DocScrollDown(usize),
|
||||
DocScrollUp(usize),
|
||||
DocNextCategory,
|
||||
DocPrevCategory,
|
||||
|
||||
// Patterns view
|
||||
PatternsCursorLeft,
|
||||
PatternsCursorRight,
|
||||
PatternsCursorUp,
|
||||
PatternsCursorDown,
|
||||
PatternsEnter,
|
||||
PatternsBack,
|
||||
PatternsTogglePlay,
|
||||
}
|
||||
Reference in New Issue
Block a user