pub struct ProfilesScreen<G: GameData> { /* private fields */ }Expand description
The profiles, the one in use marked, and a row to add one. Cancel closes it.
Implementations§
Source§impl<G: GameData> ProfilesScreen<G>
impl<G: GameData> ProfilesScreen<G>
Sourcepub const NAME: &'static str = "profiles"
pub const NAME: &'static str = "profiles"
Name reported by Screen::name.
Sourcepub fn painted_by(self, paint: Paint<G>) -> Self
pub fn painted_by(self, paint: Paint<G>) -> Self
The same screen with its view painted by paint instead of
glyph::paint: a game’s look for a device of its own.
Sourcepub fn opening_after_add(self, open: AfterAdd<G>) -> Self
pub fn opening_after_add(self, open: AfterAdd<G>) -> Self
The same screen opening the screen open makes in its place once a
profile is added (and in use), instead of closing: the game’s
first-launch setup for the new profile, say.
Sourcepub fn actions_for(ctx: &Ctx<G>, id: ProfileId) -> Vec<ProfileAction>
pub fn actions_for(ctx: &Ctx<G>, id: ProfileId) -> Vec<ProfileAction>
What can be done to id: use it unless it is in use, rename it,
delete it unless it is the only one.
Sourcepub fn naming(&self) -> Option<NamePurpose>
pub fn naming(&self) -> Option<NamePurpose>
What the name box is for, while it is open.
Sourcepub fn view(&self, ctx: &Ctx<G>) -> ProfilesView
pub fn view(&self, ctx: &Ctx<G>) -> ProfilesView
The screen as it is now, as plain data for a skin to paint
(glyph::paint).
Trait Implementations§
Source§impl<G: GameData> Debug for ProfilesScreen<G>
impl<G: GameData> Debug for ProfilesScreen<G>
Source§impl<G: GameData> Screen<G> for ProfilesScreen<G>
impl<G: GameData> Screen<G> for ProfilesScreen<G>
Source§fn actions(&self) -> Option<Vec<G::Action>>
fn actions(&self) -> Option<Vec<G::Action>>
Its rows, its menus and questions, and the name grid.
Source§fn update(
&mut self,
ctx: &mut Ctx<G>,
input: &FrameInput<G::Action>,
) -> Transition<G>
fn update( &mut self, ctx: &mut Ctx<G>, input: &FrameInput<G::Action>, ) -> Transition<G>
Handles one frame:
input holds this frame’s actions (often none)
and elapsed time. Called only while this screen is on top.Source§fn draw(&self, ctx: &Ctx<G>, buf: &mut GlyphBuffer)
fn draw(&self, ctx: &Ctx<G>, buf: &mut GlyphBuffer)
Paints the screen. An opaque screen must cover the whole buffer.
Source§fn as_any(&self) -> Option<&dyn Any>
fn as_any(&self) -> Option<&dyn Any>
This screen as
Any, for tests that look inside a screen on the
stack (ScreenStack::find). None unless the screen opts in.Source§fn debug_draw(&self, ctx: &Ctx<G>, out: &mut Gizmos)
fn debug_draw(&self, ctx: &Ctx<G>, out: &mut Gizmos)
Hands in what the debug view shows of this screen (ADR-0085): its
gizmos, each in its channel, in console pixels, built from
self
and ctx alone, so looking changes nothing. A channel’s helper
(the grid kit’s layout_gizmos)
does the work. Called after draw on every screen
drawn, bottom up, only while debug tools are on
(Ctx::debug_tools). Does nothing unless the screen has
something to show.Source§fn is_overlay(&self) -> bool
fn is_overlay(&self) -> bool
Whether the screen below shows through (drawn first, then this one).
Source§fn state_hash(&self) -> Option<StateHash>
fn state_hash(&self) -> Option<StateHash>
The hash of the game’s state this screen holds, which goes in each
frame’s hash in a session record (
Game::state_hash), most simply
shuyi_core::state_hash(&self.rules).ok(): so a playback that plays
differently is found at the frame the state moved. None unless the
screen opts in.Source§fn as_any_mut(&mut self) -> Option<&mut dyn Any>
fn as_any_mut(&mut self) -> Option<&mut dyn Any>
as_any, mutable (ScreenStack::find_mut).Source§fn covered(&mut self, _ctx: &mut Ctx<G>)
fn covered(&mut self, _ctx: &mut Ctx<G>)
Called when a screen is pushed on top of this one
(
Transition::Push): it is no longer updated until it is
uncovered. Not called when the screen above
swaps itself for another (Transition::Replace). Does nothing
unless the screen needs it.Source§fn uncovered(
&mut self,
ctx: &mut Ctx<G>,
result: Option<ScreenResult>,
) -> Transition<G>
fn uncovered( &mut self, ctx: &mut Ctx<G>, result: Option<ScreenResult>, ) -> Transition<G>
Called when the screen above pops and this one is on top again:
result is what it popped with (Transition::PopWith), None
after a plain Transition::Pop. The transition returned is
applied at once, as if from update, so a screen
can act on the answer in the same frame: push the next screen, or
pop with an answer of its own. By default, nothing happens. Read moreAuto Trait Implementations§
impl<G> Freeze for ProfilesScreen<G>
impl<G> RefUnwindSafe for ProfilesScreen<G>
impl<G> Send for ProfilesScreen<G>
impl<G> Sync for ProfilesScreen<G>
impl<G> Unpin for ProfilesScreen<G>
impl<G> UnsafeUnpin for ProfilesScreen<G>
impl<G> UnwindSafe for ProfilesScreen<G>
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