Trait kas::widgets::SliderValue

source ·
pub trait SliderValue: Copy + Debug + PartialOrd + Add<Output = Self> + Sub<Output = Self> + 'static {
    // Required methods
    fn default_step() -> Self;
    fn div_as_f64(self, rhs: Self) -> f64;
    fn mul_f64(self, scalar: f64) -> Self;
}
Expand description

Requirements on type used by Slider

Implementations are provided for standard float and integer types.

Required Methods§

source

fn default_step() -> Self

The default step size (usually 1)

source

fn div_as_f64(self, rhs: Self) -> f64

Divide self by another instance of this type, returning an f64

Note: in practice, we always have rhs >= self and expect the result to be between 0 and 1.

source

fn mul_f64(self, scalar: f64) -> Self

Return the result of multiplying self by an f64 scalar

Note: the scalar is expected to be between 0 and 1, hence this operation should not produce a value larger than self.

Also note that this method is not required to preserve precision (e.g. u128::mul_64 may drop some low-order bits with large numbers).

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl SliderValue for f32

source§

fn default_step() -> f32

source§

fn div_as_f64(self, rhs: f32) -> f64

source§

fn mul_f64(self, scalar: f64) -> f32

source§

impl SliderValue for f64

source§

fn default_step() -> f64

source§

fn div_as_f64(self, rhs: f64) -> f64

source§

fn mul_f64(self, scalar: f64) -> f64

source§

impl SliderValue for i8

source§

fn default_step() -> i8

source§

fn div_as_f64(self, rhs: i8) -> f64

source§

fn mul_f64(self, scalar: f64) -> i8

source§

impl SliderValue for i16

source§

fn default_step() -> i16

source§

fn div_as_f64(self, rhs: i16) -> f64

source§

fn mul_f64(self, scalar: f64) -> i16

source§

impl SliderValue for i32

source§

fn default_step() -> i32

source§

fn div_as_f64(self, rhs: i32) -> f64

source§

fn mul_f64(self, scalar: f64) -> i32

source§

impl SliderValue for i64

source§

fn default_step() -> i64

source§

fn div_as_f64(self, rhs: i64) -> f64

source§

fn mul_f64(self, scalar: f64) -> i64

source§

impl SliderValue for i128

source§

fn default_step() -> i128

source§

fn div_as_f64(self, rhs: i128) -> f64

source§

fn mul_f64(self, scalar: f64) -> i128

source§

impl SliderValue for isize

source§

fn default_step() -> isize

source§

fn div_as_f64(self, rhs: isize) -> f64

source§

fn mul_f64(self, scalar: f64) -> isize

source§

impl SliderValue for u8

source§

fn default_step() -> u8

source§

fn div_as_f64(self, rhs: u8) -> f64

source§

fn mul_f64(self, scalar: f64) -> u8

source§

impl SliderValue for u16

source§

fn default_step() -> u16

source§

fn div_as_f64(self, rhs: u16) -> f64

source§

fn mul_f64(self, scalar: f64) -> u16

source§

impl SliderValue for u32

source§

fn default_step() -> u32

source§

fn div_as_f64(self, rhs: u32) -> f64

source§

fn mul_f64(self, scalar: f64) -> u32

source§

impl SliderValue for u64

source§

fn default_step() -> u64

source§

fn div_as_f64(self, rhs: u64) -> f64

source§

fn mul_f64(self, scalar: f64) -> u64

source§

impl SliderValue for u128

source§

fn default_step() -> u128

source§

fn div_as_f64(self, rhs: u128) -> f64

source§

fn mul_f64(self, scalar: f64) -> u128

source§

impl SliderValue for usize

source§

fn default_step() -> usize

source§

fn div_as_f64(self, rhs: usize) -> f64

source§

fn mul_f64(self, scalar: f64) -> usize

source§

impl SliderValue for Duration

Implement for Duration

The default step size is 1 second.

Implementors§