Struct nannou_egui::FrameCtx[][src]

pub struct FrameCtx<'a> { /* fields omitted */ }
Expand description

A wrapper around a CtxRef on which begin_frame was called.

Automatically calls end_frame on drop in the case that it wasn’t already called by the usef.

Implementations

Produces a CtxRef ready for describing the UI for this frame.

End the current frame,

Methods from Deref<Target = CtxRef>

Get a full-screen painter for a new or existing layer

Paint on top of everything else

Methods from Deref<Target = Context>

How much space is still available after panels has been added. This is the “background” area, what egui doesn’t cover with panels (but may cover with windows). This is also the area to which windows are constrained.

Stores all the egui state. If you want to store/restore egui, serialize this.

What egui outputs each frame.

Call this if there is need to repaint the UI, i.e. if you are showing an animation. If this is called at least once in a frame, then there will be another frame right after this. Call as many times as you wish, only one repaint will be issued.

Not valid until first call to CtxRef::begin_frame(). That’s because since we don’t know the proper pixels_per_point until then.

The egui texture, containing font characters etc. Not valid until first call to CtxRef::begin_frame(). That’s because since we don’t know the proper pixels_per_point until then.

Tell egui which fonts to use.

The default egui fonts only support latin and cyrillic alphabets, but you can call this to install additional fonts that support e.g. korean characters.

The new fonts will become active at the start of the next frame.

The Style used by all subsequent windows, panels etc.

The Style used by all new windows, panels etc.

You can also use Ui::style_mut to change the style of a single Ui.

Example:

let mut style: egui::Style = (*ctx.style()).clone();
style.spacing.item_spacing = egui::vec2(10.0, 20.0);
ctx.set_style(style);

The Visuals used by all subsequent windows, panels etc.

You can also use Ui::visuals_mut to change the visuals of a single Ui.

Example:

ctx.set_visuals(egui::Visuals::light()); // Switch to light mode

The number of physical pixels for each logical point.

Set the number of physical pixels for each logical point. Will become active at the start of the next frame.

Note that this may be overwritten by input from the integration via RawInput::pixels_per_point. For instance, when using egui_web the browsers native zoom level will always be used.

Call at the end of each frame. Returns what has happened this frame crate::Output as well as what you need to paint. You can transform the returned shapes into triangles with a call to Context::tessellate.

Tessellate the given shapes into triangle meshes.

How much space is used by panels and windows.

How much space is used by panels and windows. You can shrink your egui area to this size and still fit all egui components.

Is the pointer (mouse/touch) over any egui area?

True if egui is currently interested in the pointer (mouse or touch). Could be the pointer is hovering over a Window or the user is dragging a widget. If false, the pointer is outside of any egui area and so you may be interested in what it is doing (e.g. controlling your game). Returns false if a drag started outside of egui and then moved over an egui area.

Is egui currently using the pointer position (e.g. dragging a slider). NOTE: this will return false if the pointer is just hovering over an egui area.

If true, egui is currently listening on text input (e.g. typing text in a TextEdit).

Move all the graphics at the given layer. Can be used to implement drag-and-drop (see relevant demo).

Top-most layer at the given position.

Wether or not to debug widget layout on hover.

Turn on/off wether or not to debug widget layout on hover.

Returns a value in the range [0, 1], to indicate “how on” this thing is.

The first time called it will return if value { 1.0 } else { 0.0 } Calling this with value = true will always yield a number larger than zero, quickly going towards one. Calling this with value = false will always yield a number less than one, quickly going towards zero.

The function will call Self::request_repaint() when appropriate.

Clear memory of any animations.

Trait Implementations

The resulting type after dereferencing.

Dereferences the value.

Executes the destructor for this type. Read more

Auto Trait Implementations

Blanket Implementations

Convert the source color to the destination color using the specified method Read more

Convert the source color to the destination color using the bradford method by default Read more

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Convert into T with values clamped to the color defined bounds Read more

Convert into T. The resulting color might be invalid in its color space Read more

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more

Performs the conversion.

Performs the conversion.

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.