Feat: optimizations

This commit is contained in:
2026-02-05 23:15:46 +01:00
parent 5a83c4c1d1
commit 53167e35b6
22 changed files with 175 additions and 215 deletions

View File

@@ -419,44 +419,16 @@ impl App {
.unwrap_or_default();
if script.trim().is_empty() {
if let Some(step) = self
.project_state
.project
.pattern_at_mut(bank, pattern)
.step_mut(step_idx)
{
step.command = None;
}
return;
}
let ctx = self.create_step_context(step_idx, link);
match self.script_engine.evaluate(&script, &ctx) {
Ok(cmds) => {
if let Some(step) = self
.project_state
.project
.pattern_at_mut(bank, pattern)
.step_mut(step_idx)
{
step.command = if cmds.is_empty() {
None
} else {
Some(cmds.join("\n"))
};
}
Ok(_) => {
self.ui.flash("Script compiled", 150, FlashKind::Info);
}
Err(e) => {
if let Some(step) = self
.project_state
.project
.pattern_at_mut(bank, pattern)
.step_mut(step_idx)
{
step.command = None;
}
self.ui
.flash(&format!("Script error: {e}"), 300, FlashKind::Error);
}
@@ -477,33 +449,11 @@ impl App {
.unwrap_or_default();
if script.trim().is_empty() {
if let Some(step) = self
.project_state
.project
.pattern_at_mut(bank, pattern)
.step_mut(step_idx)
{
step.command = None;
}
continue;
}
let ctx = self.create_step_context(step_idx, link);
if let Ok(cmds) = self.script_engine.evaluate(&script, &ctx) {
if let Some(step) = self
.project_state
.project
.pattern_at_mut(bank, pattern)
.step_mut(step_idx)
{
step.command = if cmds.is_empty() {
None
} else {
Some(cmds.join("\n"))
};
}
}
let _ = self.script_engine.evaluate(&script, &ctx);
}
}
@@ -1054,7 +1004,7 @@ impl App {
[self.editor_ctx.pattern];
if let Some(source) = pattern.step(self.editor_ctx.step).and_then(|s| s.source)
{
self.editor_ctx.step = source;
self.editor_ctx.step = source as usize;
}
self.load_step_to_editor();
}