pub struct Tabs { /* private fields */ }Expand description
A tab bar with one content view per tab; only the selected one is built. Arrow keys move between tabs and open them; Home and End jump to the ends.
With item instead of tab, it is only the bar, and
what selected changes is up to the app.
use ravenrs_reactive::State;
use ravenrs_widgets::{ButtonSize, Tabs, TabsVariant, Ui};
let view = State::new(0);
let bar = Tabs::new(view.binding())
.variant(TabsVariant::Segmented)
.size(ButtonSize::Small)
.item("Password")
.item("Link by e-mail");
let mut ui = Ui::new(bar, ravenrs_style::Theme::raven_dark());
ui.update();Implementations§
Source§impl Tabs
impl Tabs
Sourcepub fn new(selected: Binding<usize>) -> Self
pub fn new(selected: Binding<usize>) -> Self
Empty tabs; selected holds the zero-based index of the open tab.
Sourcepub fn tab(self, label: impl Into<String>, content: impl View + 'static) -> Self
pub fn tab(self, label: impl Into<String>, content: impl View + 'static) -> Self
Adds a tab with this label and content.
Sourcepub fn item(self, label: impl Into<String>) -> Self
pub fn item(self, label: impl Into<String>) -> Self
Adds a tab with this label and no content, for an app that shows what goes with it elsewhere.
Sourcepub fn variant(self, variant: TabsVariant) -> Self
pub fn variant(self, variant: TabsVariant) -> Self
How the bar looks (TabsVariant::Underline by default).
Sourcepub fn size(self, size: ButtonSize) -> Self
pub fn size(self, size: ButtonSize) -> Self
The bar’s size, on the scale of the buttons (Medium by default).
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Tabs
impl !Send for Tabs
impl !Sync for Tabs
impl !UnwindSafe for Tabs
impl Freeze for Tabs
impl Unpin for Tabs
impl UnsafeUnpin for Tabs
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> ErasedDestructor for Twhere
T: 'static,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<V> ViewExt for Vwhere
V: View,
impl<V> ViewExt for Vwhere
V: View,
Source§fn padding(self, padding: impl Into<Insets>) -> Styled<Self>
fn padding(self, padding: impl Into<Insets>) -> Styled<Self>
Adds padding inside the box, in logical pixels.
Source§fn background(self, fill: impl Into<Fill>) -> Styled<Self>
fn background(self, fill: impl Into<Fill>) -> Styled<Self>
Paints a background behind the content.
Source§fn frame(self, width: Option<f32>, height: Option<f32>) -> Styled<Self>
fn frame(self, width: Option<f32>, height: Option<f32>) -> Styled<Self>
Fixes the width and/or height in logical pixels;
None keeps the content size.