pub struct State { /* private fields */ }
Expand description
Handles the integration between egui and a winit Window.
Instantiate one of these per viewport/window.
Implementations§
source§impl State
impl State
sourcepub fn new(
egui_ctx: Context,
viewport_id: ViewportId,
display_target: &dyn HasDisplayHandle,
native_pixels_per_point: Option<f32>,
theme: Option<Theme>,
max_texture_side: Option<usize>,
) -> Self
pub fn new( egui_ctx: Context, viewport_id: ViewportId, display_target: &dyn HasDisplayHandle, native_pixels_per_point: Option<f32>, theme: Option<Theme>, max_texture_side: Option<usize>, ) -> Self
Construct a new instance
pub fn init_accesskit<T: From<Event> + Send>( &mut self, window: &Window, event_loop_proxy: EventLoopProxy<T>, )
sourcepub fn set_max_texture_side(&mut self, max_texture_side: usize)
pub fn set_max_texture_side(&mut self, max_texture_side: usize)
Call this once a graphics context has been created to update the maximum texture dimensions that egui will use.
sourcepub fn clipboard_text(&mut self) -> Option<String>
pub fn clipboard_text(&mut self) -> Option<String>
Fetches text from the clipboard and returns it.
sourcepub fn set_clipboard_text(&mut self, text: String)
pub fn set_clipboard_text(&mut self, text: String)
Places the text onto the clipboard.
sourcepub fn allow_ime(&self) -> bool
pub fn allow_ime(&self) -> bool
Returns false
or the last value that Window::set_ime_allowed()
was called with, used for debouncing.
sourcepub fn set_allow_ime(&mut self, allow: bool)
pub fn set_allow_ime(&mut self, allow: bool)
Set the last value that Window::set_ime_allowed()
was called with.
pub fn egui_ctx(&self) -> &Context
sourcepub fn egui_input(&self) -> &RawInput
pub fn egui_input(&self) -> &RawInput
The current input state.
This is changed by Self::on_window_event
and cleared by Self::take_egui_input
.
sourcepub fn egui_input_mut(&mut self) -> &mut RawInput
pub fn egui_input_mut(&mut self) -> &mut RawInput
The current input state.
This is changed by Self::on_window_event
and cleared by Self::take_egui_input
.
sourcepub fn take_egui_input(&mut self, window: &Window) -> RawInput
pub fn take_egui_input(&mut self, window: &Window) -> RawInput
Prepare for a new frame by extracting the accumulated input,
as well as setting the time and screen rectangle.
You need to set egui::RawInput::viewports
yourself though.
Use update_viewport_info
to update the info for each
viewport.
sourcepub fn on_window_event(
&mut self,
window: &Window,
event: &WindowEvent,
) -> EventResponse
pub fn on_window_event( &mut self, window: &Window, event: &WindowEvent, ) -> EventResponse
Call this when there is a new event.
The result can be found in Self::egui_input
and be extracted with Self::take_egui_input
.
pub fn ime_event_enable(&mut self)
pub fn ime_event_disable(&mut self)
pub fn on_mouse_motion(&mut self, delta: (f64, f64))
sourcepub fn on_accesskit_action_request(&mut self, request: ActionRequest)
pub fn on_accesskit_action_request(&mut self, request: ActionRequest)
Call this when there is a new accesskit::ActionRequest
.
The result can be found in Self::egui_input
and be extracted with Self::take_egui_input
.
sourcepub fn handle_platform_output(
&mut self,
window: &Window,
platform_output: PlatformOutput,
)
pub fn handle_platform_output( &mut self, window: &Window, platform_output: PlatformOutput, )
Call with the output given by egui
.
This will, if needed:
- update the cursor
- copy text to the clipboard
- open any clicked urls
- update the IME
Auto Trait Implementations§
impl Freeze for State
impl !RefUnwindSafe for State
impl !Send for State
impl !Sync for State
impl Unpin for State
impl !UnwindSafe for State
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> 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<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more