ltn

Struct App

Source
pub struct App {
    pub per_map: PerMap,
    pub cs: ColorScheme,
    pub opts: Options,
    pub session: Session,
}

Fields§

§per_map: PerMap§cs: ColorScheme§opts: Options§session: Session

Implementations§

Source§

impl App

Source

pub fn new<F: 'static + Fn(&mut EventCtx<'_>, &mut App) -> Vec<Box<dyn State<App>>>>( ctx: &mut EventCtx<'_>, opts: Options, map_name: MapName, cam: Option<String>, init_states: F, ) -> (App, Vec<Box<dyn State<App>>>)

Source

pub fn draw_with_layering<F: Fn(&mut GfxCtx<'_>)>( &self, g: &mut GfxCtx<'_>, custom: F, )

Draw unzoomed, but after the water/park areas layer, draw something custom.

Source

pub fn partitioning(&self) -> &Partitioning

Source

pub fn calculate_draw_all_local_road_labels(&mut self, ctx: &mut EventCtx<'_>)

Source

pub fn apply_edits(&mut self, edits: MapEdits)

Trait Implementations§

Source§

impl AppLike for App

Source§

fn map(&self) -> &Map

Source§

fn cs(&self) -> &ColorScheme

Source§

fn mut_cs(&mut self) -> &mut ColorScheme

Source§

fn draw_map(&self) -> &DrawMap

Source§

fn mut_draw_map(&mut self) -> &mut DrawMap

Source§

fn opts(&self) -> &Options

Source§

fn mut_opts(&mut self) -> &mut Options

Source§

fn map_switched( &mut self, ctx: &mut EventCtx<'_>, map: Map, timer: &mut Timer<'_>, )

Source§

fn draw_with_opts(&self, g: &mut GfxCtx<'_>, _l: DrawOptions)

Source§

fn make_warper( &mut self, ctx: &EventCtx<'_>, pt: Pt2D, target_cam_zoom: Option<f64>, _: Option<ID>, ) -> Box<dyn State<App>>

Create a widgetry::State that warps to the given point.
Source§

fn sim_time(&self) -> Time

Source§

fn current_stage_and_remaining_time( &self, _: IntersectionID, ) -> (usize, Duration)

§

fn change_color_scheme( &mut self, ctx: &mut EventCtx<'_>, cs: ColorSchemeChoice, ) -> bool

Change the color scheme. Idempotent. Return true if there was a change.
Source§

impl SharedAppState for App

Source§

fn draw_default(&self, g: &mut GfxCtx<'_>)

When DrawBaselayer::DefaultDraw is called, run this.
Source§

fn dump_before_abort(&self, canvas: &Canvas)

Will be called if State::event or State::draw panics.
Source§

fn before_quit(&self, canvas: &Canvas)

Called before a normal exit, like window close
Source§

fn free_memory(&mut self)

If widgetry determines the video card is low on memory, this may be called. The application should make its best effort to delete any unused Drawables.
§

fn before_event(&mut self)

Before State::event is called, call this.
Source§

impl SimpleState<App> for About

Source§

fn on_click( &mut self, _: &mut EventCtx<'_>, _: &mut App, x: &str, _: &mut Panel, ) -> Transition

Called when something on the panel has been clicked. Since the action is just a string, the fallback case can just use unreachable!().
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Source§

fn draw_baselayer(&self) -> DrawBaselayer

§

fn on_click_custom( &mut self, _ctx: &mut EventCtx<'_>, _app: &mut A, _action: Box<dyn CloneableAny>, _panel: &mut Panel, ) -> Transition<A>

Called when something on the panel has been clicked.
§

fn panel_changed( &mut self, _: &mut EventCtx<'_>, _: &mut A, _: &mut Panel, ) -> Option<Transition<A>>

Called when something on the panel has changed. If a transition is returned, stop handling the event and immediately apply the transition.
§

fn on_mouseover(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Called when the mouse has moved.
§

fn other_event(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Transition<A>

If a panel on_click event didn’t occur and panel_changed didn’t return transition, then call this to handle all other events.
Source§

impl SimpleState<App> for ShareProposal

Source§

fn on_click( &mut self, ctx: &mut EventCtx<'_>, app: &mut App, x: &str, _: &mut Panel, ) -> Transition

Called when something on the panel has been clicked. Since the action is just a string, the fallback case can just use unreachable!().
Source§

fn draw_baselayer(&self) -> DrawBaselayer

Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

§

fn on_click_custom( &mut self, _ctx: &mut EventCtx<'_>, _app: &mut A, _action: Box<dyn CloneableAny>, _panel: &mut Panel, ) -> Transition<A>

Called when something on the panel has been clicked.
§

fn panel_changed( &mut self, _: &mut EventCtx<'_>, _: &mut A, _: &mut Panel, ) -> Option<Transition<A>>

Called when something on the panel has changed. If a transition is returned, stop handling the event and immediately apply the transition.
§

fn on_mouseover(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Called when the mouse has moved.
§

fn other_event(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Transition<A>

If a panel on_click event didn’t occur and panel_changed didn’t return transition, then call this to handle all other events.
Source§

impl State<App> for Census

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
Source§

fn recreate( &mut self, ctx: &mut EventCtx<'_>, app: &mut App, ) -> Box<dyn State<App>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
Source§

impl State<App> for ChangeFilterType

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
§

fn recreate(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Box<dyn State<A>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
Source§

impl State<App> for ChangedRoutes

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
§

fn recreate(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Box<dyn State<A>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
Source§

impl State<App> for Crossings

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
Source§

fn recreate( &mut self, ctx: &mut EventCtx<'_>, app: &mut App, ) -> Box<dyn State<App>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
Source§

impl State<App> for CustomizeBoundary

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw(&self, g: &mut GfxCtx<'_>, _: &App)

Draw
§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
§

fn recreate(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Box<dyn State<A>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
Source§

impl State<App> for CycleNetwork

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
Source§

fn recreate( &mut self, ctx: &mut EventCtx<'_>, app: &mut App, ) -> Box<dyn State<App>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
Source§

impl State<App> for DesignLTN

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
Source§

fn recreate( &mut self, ctx: &mut EventCtx<'_>, app: &mut App, ) -> Box<dyn State<App>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
Source§

impl State<App> for FreehandBoundary

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
§

fn recreate(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Box<dyn State<A>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
Source§

impl State<App> for PerResidentImpact

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
Source§

fn recreate( &mut self, ctx: &mut EventCtx<'_>, app: &mut App, ) -> Box<dyn State<App>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
Source§

impl State<App> for PickArea

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
Source§

fn recreate( &mut self, ctx: &mut EventCtx<'_>, app: &mut App, ) -> Box<dyn State<App>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
Source§

impl State<App> for ResolveBusGate

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
§

fn recreate(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Box<dyn State<A>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
Source§

impl State<App> for ResolveOneWayAndFilter

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
§

fn recreate(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Box<dyn State<A>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
Source§

impl State<App> for RoutePlanner

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
Source§

fn recreate( &mut self, ctx: &mut EventCtx<'_>, app: &mut App, ) -> Box<dyn State<App>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
Source§

impl State<App> for SaveDialog

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
§

fn recreate(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Box<dyn State<A>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
Source§

impl State<App> for SelectBoundary

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
§

fn recreate(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Box<dyn State<A>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
Source§

impl State<App> for ShowImpactResults

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
Source§

fn recreate( &mut self, ctx: &mut EventCtx<'_>, app: &mut App, ) -> Box<dyn State<App>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
Source§

impl State<App> for SimpleWarper

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, _: &mut App) -> Transition

Respond to a UI event, such as input or time passing.
Source§

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

Draw
§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, _: &mut A)

Before this state is popped or replaced, call this.
§

fn recreate(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Box<dyn State<A>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.
Source§

impl TripManagementState<App> for RoutePlanner

Source§

fn mut_files(&mut self) -> &mut TripManagement<App, Self>

Source§

fn app_session_current_trip_name(app: &mut App) -> &mut Option<String>

Source§

fn sync_from_file_management(&mut self, ctx: &mut EventCtx<'_>, app: &mut App)

Auto Trait Implementations§

§

impl !Freeze for App

§

impl !RefUnwindSafe for App

§

impl !Send for App

§

impl !Sync for App

§

impl Unpin for App

§

impl !UnwindSafe for App

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
§

impl<T> Downcast for T
where T: 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.
§

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.
§

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.
§

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

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

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

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 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.

§

impl<T> Pointable for T

§

const ALIGN: usize

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<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.
§

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

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

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
§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<G1, G2> Within<G2> for G1
where G2: Contains<G1>,

§

fn is_within(&self, b: &G2) -> bool