[−][src]Struct neutrino::widgets::range::Range
A progress bar with a handle
Fields
name: String
state: RangeState
listener: Option<Box<dyn RangeListener>>
Default values
name: name.to_string()
state:
min: 0
max: 100
value: 0
disabled: false
stretched: false
style: "".to_string()
listener: None
Style
div.range[.disabled]
div.inner-range
::-webkit-slider-runnable-track
::-webkit-slider-thumb
::-ms-track
::-ms-thumb
Example
use std::cell::RefCell; use std::rc::Rc; use neutrino::widgets::range::{Range, RangeListener, RangeState}; use neutrino::utils::theme::Theme; use neutrino::{App, Window}; struct Counter { value: i32, } impl Counter { fn new() -> Self { Self { value: 0 } } fn value(&self) -> i32 { self.value } fn set_value(&mut self, value: i32) { self.value = value; } } struct MyRangeListener { counter: Rc<RefCell<Counter>>, } impl MyRangeListener { pub fn new(counter: Rc<RefCell<Counter>>) -> Self { Self { counter } } } impl RangeListener for MyRangeListener { fn on_change(&self, state: &RangeState) { self.counter.borrow_mut().set_value(state.value()); } fn on_update(&self, state: &mut RangeState) { state.set_value(self.counter.borrow().value()); } } fn main() { let counter = Rc::new(RefCell::new(Counter::new())); let my_listener = MyRangeListener::new(Rc::clone(&counter)); let mut my_range = Range::new("my_range"); my_range.set_listener(Box::new(my_listener)); }
Methods
impl Range
[src]
pub fn new(name: &str) -> Self
[src]
Create a Range
pub fn set_min(&mut self, min: i32)
[src]
Set the min
pub fn set_max(&mut self, max: i32)
[src]
Set the max
pub fn set_value(&mut self, value: i32)
[src]
Set the value
pub fn set_disabled(&mut self)
[src]
Set the disabled flag to true
pub fn set_stretched(&mut self)
[src]
Set the stretched flag to true
pub fn set_listener(&mut self, listener: Box<dyn RangeListener>)
[src]
Set the listener
pub fn set_style(&mut self, style: &str)
[src]
Set the style
Trait Implementations
Auto Trait Implementations
impl !Send for Range
impl Unpin for Range
impl !Sync for Range
impl !UnwindSafe for Range
impl !RefUnwindSafe for Range
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,