| 1 | // Copyright © SixtyFPS GmbH <info@slint.dev> |
| 2 | // SPDX-License-Identifier: MIT |
| 3 | |
| 4 | import { Page } from "page.slint" ; |
| 5 | import { GroupBox, BalanceChart } from "../widgets/widgets.slint" ; |
| 6 | |
| 7 | export global BalanceAdapter { |
| 8 | in property <string> title: "Balance" ; |
| 9 | in property <[string]> x-axis-model: [ |
| 10 | "12:00" , |
| 11 | "" , |
| 12 | "" , |
| 13 | "16:00" , |
| 14 | "" , |
| 15 | "" , |
| 16 | "20:00" |
| 17 | ]; |
| 18 | in property <[int]> y-axis-model: [ |
| 19 | 1.0, |
| 20 | 0, |
| 21 | -2, |
| 22 | -4, |
| 23 | -6 |
| 24 | ]; |
| 25 | in property <[float]> model: [ 0.2, 0.5, -1.7, -2.0, -4.0, -5.0, -5.5, -6.0, -6.2, -6.4, -4.5, -3.0, 0.25, 0.5 ]; |
| 26 | in property <float> min: -7.8; |
| 27 | in property <float> max: 2; |
| 28 | in property <string> y-unit: "K" ; |
| 29 | } |
| 30 | |
| 31 | export component Balance inherits Page { |
| 32 | in property <[string]> x-axis-model <=> BalanceAdapter.x-axis-model; |
| 33 | in property <[int]> y-axis-model <=> BalanceAdapter.y-axis-model; |
| 34 | in property <[float]> model <=> BalanceAdapter.model; |
| 35 | in property <float> min <=> BalanceAdapter.min; |
| 36 | in property <float> max <=> BalanceAdapter.max; |
| 37 | in property <string> y-unit <=> BalanceAdapter.y-unit; |
| 38 | in property <string> title <=> BalanceAdapter.title; |
| 39 | |
| 40 | GroupBox { |
| 41 | title: root.title; |
| 42 | |
| 43 | BalanceChart { |
| 44 | x-axis-model: root.x-axis-model; |
| 45 | y-axis-model: root.y-axis-model; |
| 46 | model: root.model; |
| 47 | min: root.min; |
| 48 | max: root.max; |
| 49 | y-unit: root.y-unit; |
| 50 | active: root.active; |
| 51 | } |
| 52 | } |
| 53 | } |