pub struct Frame { /* private fields */ }
Expand description
Represents the surroundings of your app.
It provides methods to inspect the surroundings (are we on the web?), access to persistent storage, and access to the rendering backend.
Implementations§
Source§impl Frame
impl Frame
Sourcepub fn is_web(&self) -> bool
pub fn is_web(&self) -> bool
True if you are in a web environment.
Equivalent to cfg!(target_arch = "wasm32")
Sourcepub fn info(&self) -> &IntegrationInfo
pub fn info(&self) -> &IntegrationInfo
Information about the integration.
Sourcepub fn storage(&self) -> Option<&dyn Storage>
pub fn storage(&self) -> Option<&dyn Storage>
A place where you can store custom data in a way that persists when you restart the app.
Sourcepub fn storage_mut(&mut self) -> Option<&mut (dyn Storage + 'static)>
pub fn storage_mut(&mut self) -> Option<&mut (dyn Storage + 'static)>
A place where you can store custom data in a way that persists when you restart the app.
Sourcepub fn gl(&self) -> Option<&Arc<Context>>
pub fn gl(&self) -> Option<&Arc<Context>>
A reference to the underlying glow
(OpenGL) context.
This can be used, for instance, to:
- Render things to offscreen buffers.
- Read the pixel buffer from the previous frame (
glow::Context::read_pixels
). - Render things behind the egui windows.
Note that all egui painting is deferred to after the call to App::update
(egui
only collects egui::Shape
s and then eframe paints them all in one go later on).
To get a glow
context you need to compile with the glow
feature flag,
and run eframe using Renderer::Glow
.
Sourcepub fn register_native_glow_texture(&mut self, native: Texture) -> TextureId
pub fn register_native_glow_texture(&mut self, native: Texture) -> TextureId
Register your own glow::Texture
,
and then you can use the returned egui::TextureId
to render your texture with egui
.
This function will take the ownership of your glow::Texture
, so please do not delete your glow::Texture
after registering.
Trait Implementations§
Source§impl HasDisplayHandle for Frame
impl HasDisplayHandle for Frame
Source§fn display_handle(&self) -> Result<DisplayHandle<'_>, HandleError>
fn display_handle(&self) -> Result<DisplayHandle<'_>, HandleError>
Source§impl HasWindowHandle for Frame
impl HasWindowHandle for Frame
Source§fn window_handle(&self) -> Result<WindowHandle<'_>, HandleError>
fn window_handle(&self) -> Result<WindowHandle<'_>, HandleError>
Auto Trait Implementations§
impl Freeze for Frame
impl !RefUnwindSafe for Frame
impl !Send for Frame
impl !Sync for Frame
impl Unpin for Frame
impl !UnwindSafe for Frame
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
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>
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>
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)
&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)
&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> HasRawDisplayHandle for Twhere
T: HasDisplayHandle + ?Sized,
impl<T> HasRawDisplayHandle for Twhere
T: HasDisplayHandle + ?Sized,
Source§fn raw_display_handle(&self) -> Result<RawDisplayHandle, HandleError>
fn raw_display_handle(&self) -> Result<RawDisplayHandle, HandleError>
HasDisplayHandle
insteadSource§impl<T> HasRawWindowHandle for Twhere
T: HasWindowHandle + ?Sized,
impl<T> HasRawWindowHandle for Twhere
T: HasWindowHandle + ?Sized,
Source§fn raw_window_handle(&self) -> Result<RawWindowHandle, HandleError>
fn raw_window_handle(&self) -> Result<RawWindowHandle, HandleError>
HasWindowHandle
instead