Struct kas::widgets::ScrollBars

source ·
pub struct ScrollBars<W>where
    W: Scrollable,{ /* private fields */ }
Expand description

Scroll bar controls

This is a wrapper adding scroll bar controls around a child. Note that this widget does not enable scrolling; see ScrollBarRegion for that.

Scroll bar positioning does not respect the inner widgets margins, since the result looks poor when content is scrolled. Instead the content should force internal margins by wrapping contents with a (zero-sized) frame. ScrollRegion already does this.

Implementations§

source§

impl<W> ScrollBars<W>where W: Scrollable,

source

pub fn new(inner: W) -> ScrollBars<W>

Construct

By default scroll bars are automatically enabled based on requirements. Use the HasScrollBars trait to adjust this behaviour.

source

pub fn inner(&self) -> &W

Access inner widget directly

source

pub fn inner_mut(&mut self) -> &mut W

Access inner widget directly

Trait Implementations§

source§

impl<W> Clone for ScrollBars<W>where W: Clone + Scrollable,

source§

fn clone(&self) -> ScrollBars<W>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<W> Debug for ScrollBars<W>where W: Debug + Scrollable,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl<W> Default for ScrollBars<W>where W: Scrollable + Default,

source§

fn default() -> ScrollBars<W>

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

impl<W> Deref for ScrollBars<W>where W: Scrollable,

§

type Target = W

The resulting type after dereferencing.
source§

fn deref(&self) -> &<ScrollBars<W> as Deref>::Target

Dereferences the value.
source§

impl<W> DerefMut for ScrollBars<W>where W: Scrollable,

source§

fn deref_mut(&mut self) -> &mut <ScrollBars<W> as Deref>::Target

Mutably dereferences the value.
source§

impl<W> HasBool for ScrollBars<W>where W: Scrollable + HasBool,

source§

fn get_bool(&self) -> bool

Get the widget’s state
source§

fn set_bool(&mut self, state: bool) -> Action

Set the widget’s state
source§

impl<W> HasScrollBars for ScrollBars<W>where W: Scrollable,

source§

fn get_mode(&self) -> ScrollBarMode

Get mode
source§

fn set_mode(&mut self, mode: ScrollBarMode) -> Action

Set mode
source§

fn get_visible_bars(&self) -> (bool, bool)

Get currently visible bars Read more
source§

fn set_visible_bars(&mut self, bars: (bool, bool)) -> Action

Set enabled bars without adjusting mode Read more
source§

fn with_auto_bars(self) -> Selfwhere Self: Sized,

Set auto mode (inline)
source§

fn with_fixed_bars(self, horiz: bool, vert: bool) -> Selfwhere Self: Sized,

Set fixed bars (inline)
source§

fn with_invisible_bars(self, horiz: bool, vert: bool) -> Selfwhere Self: Sized,

Set invisible bars (inline)
source§

impl<W> HasStr for ScrollBars<W>where W: Scrollable + HasStr,

source§

fn get_str(&self) -> &str

Get text by reference
source§

fn get_string(&self) -> String

Get text as a String
source§

impl<W> HasString for ScrollBars<W>where W: Scrollable + HasString,

source§

fn set_str(&mut self, text: &str) -> Action

Set text from a &str Read more
source§

fn set_string(&mut self, text: String) -> Action

Set text from a string
source§

impl<W> Layout for ScrollBars<ScrollRegion<W>>where W: Widget,

source§

fn draw(&mut self, draw: DrawMgr<'_>)

Draw a widget and its children Read more
source§

fn size_rules(&mut self, size_mgr: SizeMgr<'_>, axis: AxisInfo) -> SizeRules

Get size rules for the given axis Read more
source§

fn set_rect(&mut self, mgr: &mut ConfigMgr<'_>, rect: Rect)

Set size and position Read more
source§

fn find_id(&mut self, coord: Coord) -> Option<WidgetId>

Translate a coordinate to a WidgetId Read more
source§

impl<W> Layout for ScrollBars<W>where W: Scrollable,

source§

fn size_rules(&mut self, size_mgr: SizeMgr<'_>, axis: AxisInfo) -> SizeRules

Get size rules for the given axis Read more
source§

fn set_rect(&mut self, mgr: &mut ConfigMgr<'_>, rect: Rect)

Set size and position Read more
source§

fn find_id(&mut self, coord: Coord) -> Option<WidgetId>

Translate a coordinate to a WidgetId Read more
source§

default fn draw(&mut self, draw: DrawMgr<'_>)

Draw a widget and its children Read more
source§

impl<W> Scrollable for ScrollBars<W>where W: Scrollable,

source§

fn scroll_axes(&self, size: Size) -> (bool, bool)

Given size size, returns whether (horiz, vert) scrolling is required
source§

fn max_scroll_offset(&self) -> Offset

Get the maximum scroll offset Read more
source§

fn scroll_offset(&self) -> Offset

Get the current scroll offset Read more
source§

fn set_scroll_offset(&mut self, mgr: &mut EventMgr<'_>, offset: Offset) -> Offset

Set the scroll offset Read more
source§

impl<W> SetAccel for ScrollBars<W>where W: Scrollable + SetAccel,

source§

fn set_accel_string(&mut self, accel: AccelString) -> Action

Set accel string
source§

fn set_accel<T>(&mut self, accel: T) -> Actionwhere T: Into<AccelString>, Self: Sized,

Set text Read more
source§

impl<W> Widget for ScrollBars<W>where W: Scrollable,

source§

fn handle_message(&mut self, mgr: &mut EventMgr<'_>)

Handler for messages from children/descendants Read more
source§

fn handle_scroll(&mut self, mgr: &mut EventMgr<'_>, _: Scroll)

Handler for scrolling Read more
source§

fn pre_configure(&mut self, _: &mut ConfigMgr<'_>, id: WidgetId)

Pre-configuration Read more
source§

fn configure(&mut self, mgr: &mut ConfigMgr<'_>)

Configure widget Read more
source§

fn navigable(&self) -> bool

Is this widget navigable via Tab key? Read more
source§

fn translation(&self) -> Offset

Get translation of children relative to this widget Read more
source§

fn nav_next( &mut self, mgr: &mut ConfigMgr<'_>, reverse: bool, from: Option<usize> ) -> Option<usize>

Navigation in spatial order Read more
source§

fn handle_event(&mut self, mgr: &mut EventMgr<'_>, event: Event) -> Response

Handle an Event sent to this widget Read more
source§

fn steal_event( &mut self, mgr: &mut EventMgr<'_>, id: &WidgetId, event: &Event ) -> Response

Potentially steal an event before it reaches a child Read more
source§

fn handle_unused(&mut self, mgr: &mut EventMgr<'_>, event: Event) -> Response

Handle an event sent to child index but left unhandled Read more
source§

impl<W> WidgetChildren for ScrollBars<W>where W: Scrollable,

source§

fn num_children(&self) -> usize

Get the number of child widgets Read more
source§

fn get_child(&self, _index: usize) -> Option<&dyn Widget>

Get a reference to a child widget by index, or None if the index is out of bounds. Read more
source§

fn get_child_mut(&mut self, _index: usize) -> Option<&mut dyn Widget>

Mutable variant of get Read more
source§

fn find_child_index(&self, id: &WidgetId) -> Option<usize>

Find the child which is an ancestor of this id, if any Read more
source§

fn make_child_id(&mut self, index: usize) -> WidgetId

Make an identifier for a child Read more
source§

impl<W> WidgetCore for ScrollBars<W>where W: Scrollable,

source§

fn id_ref(&self) -> &WidgetId

Get the widget’s identifier Read more
source§

fn rect(&self) -> Rect

Get the widget’s region, relative to its parent.
source§

fn widget_name(&self) -> &'static str

Get the name of the widget struct
source§

fn as_widget(&self) -> &dyn Widget

Erase type
source§

fn as_widget_mut(&mut self) -> &mut dyn Widget

Erase type

Auto Trait Implementations§

§

impl<W> RefUnwindSafe for ScrollBars<W>where W: RefUnwindSafe,

§

impl<W> !Send for ScrollBars<W>

§

impl<W> !Sync for ScrollBars<W>

§

impl<W> Unpin for ScrollBars<W>where W: Unpin,

§

impl<W> UnwindSafe for ScrollBars<W>where W: UnwindSafe,

Blanket Implementations§

source§

impl<W> AdaptWidget for Wwhere W: Widget + ?Sized,

source§

fn map_msg<M, N, F>(self, f: F) -> MapMessage<Self, M, N, F>where M: Debug, N: Debug, Self: Sized, F: FnMut(M) -> N,

Construct a wrapper widget which maps a message of the given type
source§

fn with_reserve<R>(self, r: R) -> Reserve<Self, R>where R: FnMut(SizeMgr<'_>, AxisInfo) -> SizeRules, Self: Sized,

Construct a wrapper widget which reserves extra space Read more
source§

fn with_min_size_px(self, w: i32, h: i32) -> Reserve<Self, WithMinSizePx>where Self: Sized,

Construct a wrapper, setting minimum size in pixels Read more
source§

fn with_min_size_em(self, w: f32, h: f32) -> Reserve<Self, WithMinSizeEm>where Self: Sized,

Construct a wrapper, setting minimum size in Em Read more
source§

fn with_label<D, T>(self, direction: D, label: T) -> WithLabel<Self, D>where D: Directional, T: Into<AccelString>, Self: Sized,

Construct a wrapper widget adding a label
source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

const: unstable · source§

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

Mutably borrows from an owned value. Read more
§

impl<S, T> Cast<T> for Swhere T: Conv<S>,

§

fn cast(self) -> T

Cast from Self to T Read more
§

fn try_cast(self) -> Result<T, Error>

Try converting from Self to T Read more
§

impl<S, T> CastApprox<T> for Swhere T: ConvApprox<S>,

§

fn try_cast_approx(self) -> Result<T, Error>

Try approximate conversion from Self to T Read more
§

fn cast_approx(self) -> T

Cast approximately from Self to T Read more
§

impl<S, T> CastFloat<T> for Swhere T: ConvFloat<S>,

§

fn cast_trunc(self) -> T

Cast to integer, truncating Read more
§

fn cast_nearest(self) -> T

Cast to the nearest integer Read more
§

fn cast_floor(self) -> T

Cast the floor to an integer Read more
§

fn cast_ceil(self) -> T

Cast the ceiling to an integer Read more
§

fn try_cast_trunc(self) -> Result<T, Error>

Try converting to integer with truncation Read more
§

fn try_cast_nearest(self) -> Result<T, Error>

Try converting to the nearest integer Read more
§

fn try_cast_floor(self) -> Result<T, Error>

Try converting the floor to an integer Read more
§

fn try_cast_ceil(self) -> Result<T, Error>

Try convert the ceiling to an integer Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

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

const: unstable · 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.

§

impl<T> NoneValue for Twhere T: Default,

§

type NoneType = T

§

fn null_value() -> T

The none-equivalent value.
§

impl<T> Pointable for T

§

const ALIGN: usize = mem::align_of::<T>()

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<R, P> ReadPrimitive<R> for Pwhere R: Read + ReadEndian<P>, P: Default,

source§

fn read_from_little_endian(read: &mut R) -> Result<Self, Error>

Read this value from the supplied reader. Same as ReadEndian::read_from_little_endian().
source§

fn read_from_big_endian(read: &mut R) -> Result<Self, Error>

Read this value from the supplied reader. Same as ReadEndian::read_from_big_endian().
source§

fn read_from_native_endian(read: &mut R) -> Result<Self, Error>

Read this value from the supplied reader. Same as ReadEndian::read_from_native_endian().
source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

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

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
§

impl<T> Upcast<T> for T

§

fn upcast(&self) -> Option<&T>

§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<W> WidgetExt for Wwhere W: Widget + ?Sized,

source§

fn id(&self) -> WidgetId

Get the widget’s identifier Read more
source§

fn eq_id<T>(&self, rhs: T) -> boolwhere WidgetId: PartialEq<T>,

Test widget identifier for equality Read more
source§

fn identify(&self) -> IdentifyWidget

Display as “StructName#WidgetId”
source§

fn is_ancestor_of(&self, id: &WidgetId) -> bool

Check whether id is self or a descendant Read more
source§

fn is_strict_ancestor_of(&self, id: &WidgetId) -> bool

Check whether id is not self and is a descendant Read more
source§

fn find_widget(&self, id: &WidgetId) -> Option<&dyn Widget>

Find the descendant with this id, if any
source§

fn find_widget_mut(&mut self, id: &WidgetId) -> Option<&mut dyn Widget>

Find the descendant with this id, if any
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more