header_panel.rs
This commit is contained in:
parent
50238c1577
commit
5c778b4350
3 changed files with 295 additions and 250 deletions
|
@ -10,6 +10,9 @@ use controls_panel::ControlsPanel;
|
|||
mod waveform_panel;
|
||||
use waveform_panel::WaveformPanel;
|
||||
|
||||
mod header_panel;
|
||||
use header_panel::HeaderPanel;
|
||||
|
||||
#[derive(Clone, Copy, Default)]
|
||||
enum Layout {
|
||||
Tree,
|
||||
|
@ -17,6 +20,8 @@ enum Layout {
|
|||
Columns,
|
||||
}
|
||||
|
||||
type Filename = String;
|
||||
|
||||
#[derive(Default)]
|
||||
struct Store {
|
||||
selected_var_refs: MutableVec<wellen::VarRef>,
|
||||
|
@ -37,10 +42,16 @@ fn root() -> impl Element {
|
|||
let hierarchy: Mutable<Option<Rc<wellen::Hierarchy>>> = <_>::default();
|
||||
let selected_var_refs = STORE.selected_var_refs.clone();
|
||||
let layout: Mutable<Layout> = <_>::default();
|
||||
let loaded_filename: Mutable<Option<Filename>> = <_>::default();
|
||||
Column::new()
|
||||
.s(Height::fill())
|
||||
.s(Scrollbars::y_and_clip_x())
|
||||
.s(Font::new().color(color!("Lavender")))
|
||||
.item(HeaderPanel::new(
|
||||
hierarchy.clone(),
|
||||
layout.clone(),
|
||||
loaded_filename.clone(),
|
||||
))
|
||||
.item(
|
||||
Row::new()
|
||||
.s(Height::fill())
|
||||
|
@ -49,6 +60,7 @@ fn root() -> impl Element {
|
|||
hierarchy.clone(),
|
||||
selected_var_refs.clone(),
|
||||
layout.clone(),
|
||||
loaded_filename,
|
||||
))
|
||||
.item_signal(
|
||||
layout
|
||||
|
|
Reference in a new issue