1
0
Fork 0
mirror of https://github.com/Zedfrigg/ironbar.git synced 2025-07-01 18:51:04 +02:00

Merge pull request #125 from JakeStanger/feat/custom-slider-label

feat(custom): option to toggle slider label
This commit is contained in:
Jake Stanger 2023-04-23 17:35:40 +01:00 committed by GitHub
commit e5bc44168f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 0 deletions

View file

@ -87,6 +87,7 @@ If your input program requires an integer, you will need to round it.
| `max` | `float` | `100` | Maximum slider value. | | `max` | `float` | `100` | Maximum slider value. |
| `step` | `float` | - | The increment to change when scrolling with the mouse wheel. If left blank, will use the default determined by the environment. | | `step` | `float` | - | The increment to change when scrolling with the mouse wheel. If left blank, will use the default determined by the environment. |
| `length` | `integer` | `null` | Slider length. GTK will automatically size if left unset. | | `length` | `integer` | `null` | Slider length. GTK will automatically size if left unset. |
| `show_label` | `boolean` | `true` | Whether to show the value label above the slider. |
The example slider widget below shows a volume control for MPC, The example slider widget below shows a volume control for MPC,
which updates the server when changed, and polls the server for volume changes to keep the slider in sync. which updates the server when changed, and polls the server for volume changes to keep the slider in sync.

View file

@ -24,6 +24,8 @@ pub struct SliderWidget {
max: f64, max: f64,
step: Option<f64>, step: Option<f64>,
length: Option<i32>, length: Option<i32>,
#[serde(default = "crate::config::default_true")]
show_label: bool,
} }
const fn default_min() -> f64 { const fn default_min() -> f64 {
@ -51,6 +53,7 @@ impl CustomWidget for SliderWidget {
} }
scale.set_range(self.min, self.max); scale.set_range(self.min, self.max);
scale.set_draw_value(self.show_label);
if let Some(on_change) = self.on_change { if let Some(on_change) = self.on_change {
let min = self.min; let min = self.min;