feat(ui): MAIN and ADVANCED pages, Anvil main page around Mode, Split and Sub level
Producers found the panels crowded: every control had the same weight. The header now carries a MAIN / ADVANCED switch (common-ui header_paged). The main page keeps the controls a first result needs; the advanced page shows everything, as before. - Anvil: Mode (Replace or Enhance), Split and Sub level, plus Octave, Ghost, Keep and Output. Kick lock, Dynamics, Drive, Glide, Phase, Gate and the pitch switches move to Advanced. The note readout says when the original sub plays because tracking is unsure. - Lathe, Temper, Knurl, Planish, Braze: tracking and fine-tuning controls (Gate, Smooth, Snap, Harmonics, Push at, Floor, Bright, Normalize, band gains, Phase) move to Advanced. Lathe labels the octaves of the note in Hz on the harmonic axis. - Forge passes the page to its module pages. - Weld: the main page shows the level won back at full height, Mode, Response and Output; the phase plot, Sections, Low, High and Gate move to Advanced. - editor-check renders the advanced pages with --advanced.
This commit is contained in:
1 parent
d6939a753a
commit
01fd3241eb
10 files changed
+594
-227
No files matched your search
@@ -24,6 +24,8 @@ fn main() {
|
||||
}
|
||||
let patina = plugin == "patina" || args.iter().any(|arg| arg == "--resonance");
|
||||
let compact = std::env::args().any(|arg| arg == "--compact");
|
||||
// Render the ADVANCED page of editors that have one.
|
||||
let advanced = std::env::args().any(|arg| arg == "--advanced");
|
||||
let anvil = plugin == "anvil";
|
||||
let crucible = plugin == "crucible";
|
||||
let lathe = plugin == "lathe";
|
||||
@@ -105,7 +107,10 @@ fn main() {
|
||||
}
|
||||
}
|
||||
let mut anvil_settings = anvil_core::Settings::default();
|
||||
let mut anvil_state = anvil_ui::State::default();
|
||||
let mut anvil_state = anvil_ui::State {
|
||||
advanced,
|
||||
..anvil_ui::State::default()
|
||||
};
|
||||
if anvil {
|
||||
anvil_settings.ghost = 60.;
|
||||
anvil_settings.kick_lock = true;
|
||||
@@ -136,6 +141,7 @@ fn main() {
|
||||
}
|
||||
let mut lathe_settings = lathe_core::Settings::default();
|
||||
let mut lathe_state = lathe_ui::State::default();
|
||||
lathe_state.advanced = advanced;
|
||||
if lathe {
|
||||
// A growl-like map: cut the hollow region, lift the 5th, darker top.
|
||||
lathe_settings.gains[1] = -4.;
|
||||
@@ -168,7 +174,10 @@ fn main() {
|
||||
bright: 12.,
|
||||
..Default::default()
|
||||
};
|
||||
let mut temper_state = temper_ui::State::default();
|
||||
let mut temper_state = temper_ui::State {
|
||||
advanced,
|
||||
..temper_ui::State::default()
|
||||
};
|
||||
if temper {
|
||||
let mut engine = temper_core::Engine::new(48000., 2).unwrap();
|
||||
engine.set_settings(temper_settings).unwrap();
|
||||
@@ -183,7 +192,10 @@ fn main() {
|
||||
temper_state.accept_frame(engine.take_analyzer());
|
||||
}
|
||||
let mut knurl_settings = knurl_core::Settings::default();
|
||||
let mut knurl_state = knurl_ui::State::default();
|
||||
let mut knurl_state = knurl_ui::State {
|
||||
advanced,
|
||||
..knurl_ui::State::default()
|
||||
};
|
||||
if knurl {
|
||||
// An F1 saw bass with the default Fry pattern, jitter and grit.
|
||||
let mut engine = knurl_core::Engine::new(48000., 2).unwrap();
|
||||
@@ -208,6 +220,7 @@ fn main() {
|
||||
forge_core::Stage::Temper,
|
||||
];
|
||||
let mut forge_state = forge_ui::State::default();
|
||||
forge_state.advanced = advanced;
|
||||
forge_state.page = match args
|
||||
.iter()
|
||||
.position(|a| a == "--page")
|
||||
@@ -237,6 +250,7 @@ fn main() {
|
||||
..Default::default()
|
||||
};
|
||||
let mut planish_state = planish_ui::State::default();
|
||||
planish_state.advanced = advanced;
|
||||
if planish {
|
||||
// A distorted F1 saw bass: loud body, thin top, so both directions work.
|
||||
let mut engine = planish_core::Engine::new(48000., 2).unwrap();
|
||||
@@ -255,7 +269,10 @@ fn main() {
|
||||
width: 30.,
|
||||
..Default::default()
|
||||
};
|
||||
let mut braze_state = braze_ui::State::default();
|
||||
let mut braze_state = braze_ui::State {
|
||||
advanced,
|
||||
..braze_ui::State::default()
|
||||
};
|
||||
if braze {
|
||||
// A reese-like F1 saw at 140 BPM, 2.3 beats into the bar.
|
||||
let mut engine = braze_core::Engine::new(48000., 2).unwrap();
|
||||
@@ -324,7 +341,10 @@ fn main() {
|
||||
ballast_state.accept_frame(engine.take_analyzer());
|
||||
}
|
||||
let mut weld_settings = weld_core::Settings::default();
|
||||
let mut weld_state = weld_ui::State::default();
|
||||
let mut weld_state = weld_ui::State {
|
||||
advanced,
|
||||
..weld_ui::State::default()
|
||||
};
|
||||
if weld {
|
||||
// Two layers of an F1 saw bass. The sidechain layer is polarity-flipped and runs
|
||||
// through an allpass at 400 Hz, as an EQ in its chain would leave it. The real
|
||||
|
||||
Reference in new issue
Block a user