diff --git a/ui/record.slint b/ui/record.slint index d8a942a..1dff7b4 100644 --- a/ui/record.slint +++ b/ui/record.slint @@ -13,21 +13,30 @@ export component RecordWidget inherits VerticalBox { in-out property events <=> tl.events; in property<[string]> combo-spans: []; in-out property in-progress: false; - property event-name <=> le.text; + property event-name: ""; + property minimized: false; + property combo-index: 0; tl := Timeline { + preferred-height: 100%; updating: true; + clicked => { + minimized = !minimized; + } } - GridLayout { + if !minimized: GridLayout { spacing-vertical: 8px; spacing-horizontal: 16px; le := LineEdit { placeholder-text: "Event name"; - text: "Event name"; + text: event-name; font-size: 24px; horizontal-alignment: center; colspan: 2; row: 0; + edited(text) => { + event-name = text; + } } Button { text: in-progress ? "Stop" : "Start"; @@ -58,11 +67,12 @@ export component RecordWidget inherits VerticalBox { } ComboBox { model: combo-spans; - current-index: 0; + current-index: combo-index; row: 2; col: 1; selected(current-value) => { root.update-visible-time(current-value); + combo-index = self.current-index; } } } diff --git a/ui/timeline.slint b/ui/timeline.slint index 4b94d03..c9fef81 100644 --- a/ui/timeline.slint +++ b/ui/timeline.slint @@ -25,6 +25,7 @@ global TimeString { export component Timeline inherits Rectangle { callback new-day-started; + callback clicked <=> ta.clicked; in-out property updating: true; in-out property<[TimelineEvent]> events: []; @@ -46,6 +47,11 @@ export component Timeline inherits Rectangle { } } + ta := TouchArea { + preferred-width: 100%; + preferred-height: 100%; + } + background: gray; border-width: 1px; border-color: black;