pub trait IFrnTopLevelEventsImpl: IUnknownImpl {
// Required methods
fn closed(&self);
fn paint(&self) -> Result<(), HResult>;
fn resized(&self, size: &FrnSize, reason: FrnPlatformResizeReason);
fn raw_mouse_event(
&self,
type_: FrnRawMouseEventType,
device_type: FrnPointerDeviceType,
time_stamp: u64,
modifiers: FrnInputModifiers,
point: FrnPoint,
delta: FrnVector,
pressure: f32,
x_tilt: f32,
y_tilt: f32,
);
fn raw_key_event(
&self,
type_: FrnRawKeyEventType,
time_stamp: u64,
modifiers: FrnInputModifiers,
key: FrnKey,
physical_key: FrnPhysicalKey,
key_symbol: Option<&CStr>,
) -> bool;
fn raw_text_input_event(&self, time_stamp: u64, text: Option<&CStr>) -> bool;
fn scaling_changed(&self, scaling: f64);
fn run_render_priority_jobs(&self);
fn lost_focus(&self);
fn get_automation_peer(&self) -> Option<ComPtr<IFrnAutomationPeer>>;
fn drag_event(
&self,
type_: FrnDragEventType,
position: FrnPoint,
modifiers: FrnInputModifiers,
effects: FrnDragDropEffects,
clipboard: Option<&IFrnClipboard>,
data_transfer_handle: *mut c_void,
) -> FrnDragDropEffects;
}Expand description
Implement this to provide IFrnTopLevelEvents to native code (see IFrnTopLevelEvents::from_impl).
Required Methods§
fn closed(&self)
fn paint(&self) -> Result<(), HResult>
fn resized(&self, size: &FrnSize, reason: FrnPlatformResizeReason)
fn raw_mouse_event( &self, type_: FrnRawMouseEventType, device_type: FrnPointerDeviceType, time_stamp: u64, modifiers: FrnInputModifiers, point: FrnPoint, delta: FrnVector, pressure: f32, x_tilt: f32, y_tilt: f32, )
fn raw_key_event( &self, type_: FrnRawKeyEventType, time_stamp: u64, modifiers: FrnInputModifiers, key: FrnKey, physical_key: FrnPhysicalKey, key_symbol: Option<&CStr>, ) -> bool
fn raw_text_input_event(&self, time_stamp: u64, text: Option<&CStr>) -> bool
fn scaling_changed(&self, scaling: f64)
fn run_render_priority_jobs(&self)
fn lost_focus(&self)
fn get_automation_peer(&self) -> Option<ComPtr<IFrnAutomationPeer>>
fn drag_event( &self, type_: FrnDragEventType, position: FrnPoint, modifiers: FrnInputModifiers, effects: FrnDragDropEffects, clipboard: Option<&IFrnClipboard>, data_transfer_handle: *mut c_void, ) -> FrnDragDropEffects
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".