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