pub struct State<Id> { /* private fields */ }Available on crate feature
document-tabs only.Expand description
The open documents, the active one and the order they were used in.
Implementations§
Source§impl<Id: Copy + PartialEq> State<Id>
impl<Id: Copy + PartialEq> State<Id>
Sourcepub fn new(documents: impl IntoIterator<Item = Document<Id>>) -> Self
pub fn new(documents: impl IntoIterator<Item = Document<Id>>) -> Self
Opens documents, pinned ones first, with the first one active.
Ids must be unique.
Sourcepub fn with_active(self, id: Id) -> Self
pub fn with_active(self, id: Id) -> Self
Starts on id, when it exists.
Adds items to the end of every tab’s context menu, such as “Copy
path”. Give them MenuItem::Custom ids.
pub fn document(&self, id: Id) -> Option<&Document<Id>>
pub fn active(&self) -> Option<Id>
pub fn is_active(&self, id: Id) -> bool
The tab context menu.
Sourcepub fn pinned_count(&self) -> usize
pub fn pinned_count(&self) -> usize
How many documents are pinned. They are always the first ones.
Sourcepub fn open(&mut self, document: Document<Id>)
pub fn open(&mut self, document: Document<Id>)
Activates document, adding it at the end of its group (pinned or
not) when it is not open yet.
Sourcepub fn close(&mut self, ids: &[Id]) -> Option<Id>
pub fn close(&mut self, ids: &[Id]) -> Option<Id>
Closes documents. When the active one closes, the most recently used one left becomes active, and is returned.
Sourcepub fn set_modified(&mut self, id: Id, modified: bool)
pub fn set_modified(&mut self, id: Id, modified: bool)
Marks a document as having unsaved changes, or as saved.
pub fn set_label(&mut self, id: Id, label: impl Into<String>)
Trait Implementations§
impl<Id: PartialEq> StructuralPartialEq for State<Id>
Auto Trait Implementations§
impl<Id> Freeze for State<Id>
impl<Id> RefUnwindSafe for State<Id>where
Vec<Document<Id>>: RefUnwindSafe,
Option<Id>: RefUnwindSafe,
Vec<Id>: RefUnwindSafe,
State<MenuItem, Id>: RefUnwindSafe,
State<Id>: RefUnwindSafe,
impl<Id> Send for State<Id>
impl<Id> Sync for State<Id>
impl<Id> Unpin for State<Id>
impl<Id> UnsafeUnpin for State<Id>where
Vec<Document<Id>>: UnsafeUnpin,
Option<Id>: UnsafeUnpin,
Vec<Id>: UnsafeUnpin,
State<MenuItem, Id>: UnsafeUnpin,
State<Id>: UnsafeUnpin,
impl<Id> UnwindSafe for State<Id>where
Vec<Document<Id>>: UnwindSafe,
Option<Id>: UnwindSafe,
Vec<Id>: UnwindSafe,
State<MenuItem, Id>: UnwindSafe,
State<Id>: UnwindSafe,
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<State, Message> IntoBoot<State, Message> for State
impl<State, Message> IntoBoot<State, Message> for State
Source§fn into_boot(self) -> (State, Task<Message>)
fn into_boot(self) -> (State, Task<Message>)
Turns some type into the initial state of some
Application.