Struct NumberSelect

Source
pub struct NumberSelect {
    pub handle: ControlHandle,
    /* private fields */
}
Expand description

A NumberSelect control is a pair of arrow buttons that the user can click to increment or decrement a value. NumberSelect is implemented as a custom control because the one provided by winapi really sucks.

Requires the number-select feature.

Builder parameters:

  • parent: Required. The number select parent container.
  • value: The default value of the number select
  • size: The number select size.
  • position: The number select position.
  • enabled: If the number select can be used by the user. It also has a grayed out look if disabled.
  • flags: A combination of the NumberSelectFlags values.
  • font: The font used for the number select text

Control events:

  • MousePress(_): Generic mouse press events on the button
  • OnMouseMove: Generic mouse mouse event
use native_windows_gui as nwg;
fn build_number_select(num_select: &mut nwg::NumberSelect, window: &nwg::Window, font: &nwg::Font) {
    nwg::NumberSelect::builder()
        .font(Some(font))
        .parent(window)
        .build(num_select);
}

Fields§

§handle: ControlHandle

Implementations§

Source§

impl NumberSelect

Source

pub fn builder<'a>() -> NumberSelectBuilder<'a>

Source

pub fn data(&self) -> NumberSelectData

Returns inner data specifying the possible input of a number select See NumberSelectData for the possible values

Source

pub fn set_data(&self, v: NumberSelectData)

Sets the inner data specifying the possible input of a number select. Also update the value display. See NumberSelectData for the possible values

Source

pub fn font(&self) -> Option<Font>

Returns the font of the control

Source

pub fn set_font(&self, font: Option<&Font>)

Sets the font of the control

Source

pub fn focus(&self) -> bool

Returns true if the control currently has the keyboard focus

Source

pub fn set_focus(&self)

Sets the keyboard focus on the button.

Source

pub fn enabled(&self) -> bool

Returns true if the control user can interact with the control, return false otherwise

Source

pub fn set_enabled(&self, v: bool)

Enable or disable the control

Source

pub fn visible(&self) -> bool

Returns true if the control is visible to the user. Will return true even if the control is outside of the parent client view (ex: at the position (10000, 10000))

Source

pub fn set_visible(&self, v: bool)

Show or hide the control to the user

Source

pub fn size(&self) -> (u32, u32)

Returns the size of the control in the parent window

Source

pub fn set_size(&self, x: u32, y: u32)

Sets the size of the control in the parent window

Source

pub fn position(&self) -> (i32, i32)

Returns the position of the control in the parent window

Source

pub fn set_position(&self, x: i32, y: i32)

Sets the position of the control in the parent window

Source

pub fn class_name(&self) -> &'static str

Winapi class name used during control creation

Source

pub fn flags(&self) -> u32

Winapi base flags used during window creation

Source

pub fn forced_flags(&self) -> u32

Winapi flags required by the control

Trait Implementations§

Source§

impl Default for NumberSelect

Source§

fn default() -> NumberSelect

Returns the “default value” for a type. Read more
Source§

impl Drop for NumberSelect

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl From<&NumberSelect> for ControlHandle

Source§

fn from(control: &NumberSelect) -> Self

Converts to this type from the input type.
Source§

impl From<&mut NumberSelect> for ControlHandle

Source§

fn from(control: &mut NumberSelect) -> Self

Converts to this type from the input type.
Source§

impl PartialEq<ControlHandle> for NumberSelect

Source§

fn eq(&self, other: &ControlHandle) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<NumberSelect> for ControlHandle

Source§

fn eq(&self, other: &NumberSelect) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.