mirror of
https://github.com/slint-ui/slint.git
synced 2025-09-28 12:54:45 +00:00

* Update docs/reference/src/language/builtins/globals.md Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev> * Update docs/reference/src/language/builtins/globals.md Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev> * Update docs/reference/src/language/builtins/globals.md Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev> * Update docs/reference/src/language/builtins/globals.md Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev> * Update docs/reference/src/language/builtins/globals.md Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev> --------- Co-authored-by: Florian Blasius <florian.blasius@slint-ui.com> Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev> Co-authored-by: Florian Blasius <flovansl@fedora.fritz.box>
42 lines
1.4 KiB
Text
42 lines
1.4 KiB
Text
// Copyright © SixtyFPS GmbH <info@slint.dev>
|
|
// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-1.1 OR LicenseRef-Slint-commercial
|
|
|
|
import { CupertinoPalette } from "styling.slint";
|
|
|
|
export component ProgressIndicator {
|
|
in property <float> progress;
|
|
in property <bool> indeterminate;
|
|
|
|
min-height: 6px;
|
|
horizontal-stretch: 1;
|
|
vertical-stretch: 0;
|
|
accessible-role: progress-indicator;
|
|
accessible-value: root.progress;
|
|
|
|
Rectangle {
|
|
clip: true;
|
|
border-radius: 3px;
|
|
|
|
i-rail := Rectangle {
|
|
border-radius: parent.border-radius;
|
|
background: CupertinoPalette.alternate-control-background;
|
|
border-width: 0.5px;
|
|
border-color: CupertinoPalette.border;
|
|
clip: true;
|
|
|
|
Rectangle {
|
|
border-width: 1px;
|
|
border-color: @radial-gradient(circle, #00000026, #00000000);
|
|
border-radius: parent.border-radius;
|
|
}
|
|
}
|
|
|
|
i-track := Rectangle {
|
|
width: !root.indeterminate ? parent.width * min(1, max(0, root.progress)) : parent.width;
|
|
height: 100%;
|
|
x: !root.indeterminate ? 0px : -parent.width + (parent.width * mod(animation-tick(), 2s) / 1s);
|
|
border-radius: parent.border-radius;
|
|
background: CupertinoPalette.accent-background;
|
|
}
|
|
}
|
|
}
|