Struct native_windows_gui::ExternCanvas [−][src]
pub struct ExternCanvas {
pub handle: ControlHandle,
}An ExternCanvas is a window/children control that is painted to by an external API (such as OpenGL, Vulkan or DirectX).
When building a ExternCanvas, leaving the parent field empty will create a window-like canvas. If a parent is set, the canvas will be a children control (like a button).
When used as a child, ExternCanvas can be used as a way to add highly dynamic controls to a NWG application (ex: a video player).
Requires the extern-canvas feature.
As a top level window, the extern canvas has the same features as the window control. As a children control, resize and move events cannot be triggered and window parameters are not visible.
Builder parameters:
flags: The window flags. SeeExternCanvasFlagsex_flags: A combination of win32 window extended flags. Unlikeflags, ex_flags must be used straight from winapititle: The text in the window title barsize: The default size of the windowposition: The default position of the window in the desktopicon: The window iconparent: Logical parent of the window, unlike children controls, this is NOT required.
Control events:
OnInit: The window was createdMousePress(_): Generic mouse press events on the buttonOnMouseMove: Generic mouse mouse eventOnMouseWheel: Generic mouse wheel eventOnPaint: Generic on paint eventOnKeyPress: Generic key pressOnKeyRelease: Generic ket releaseOnResize: When the window is resizedOnResizeBegin: Just before the window begins being resized by the userOnResizeEnd: Just after the user stops resizing the windowOnWindowMaximize: When the window is maximizedOnWindowMinimize: When the window is minimizedOnMove: When the window is moved by the userOnMinMaxInfo: When the size or position of the window is about to change and the size of the windows must be restricted
Fields
handle: ControlHandleImplementations
impl ExternCanvas[src]
pub fn builder<'a>() -> ExternCanvasBuilder<'a>[src]
pub fn invalidate(&self)[src]
Invalidate the whole drawing region. For canvas that are children control, this should be called in the paint event.
pub fn icon(&self) -> Option<Icon>[src]
Return the icon of the window
pub fn set_icon(&self, icon: Option<&Icon>)[src]
Set the icon in the window
- icon: The new icon. If None, the icon is removed
pub fn focus(&self) -> bool[src]
Return true if the control currently has the keyboard focus
pub fn set_focus(&self)[src]
Set the keyboard focus on the button
pub fn enabled(&self) -> bool[src]
Return true if the control user can interact with the control, return false otherwise
pub fn set_enabled(&self, v: bool)[src]
Enable or disable the control
pub fn visible(&self) -> bool[src]
Return true if the control is visible to the user. Will return true even if the control is outside of the parent client view (ex: at the position (10000, 10000))
pub fn set_visible(&self, v: bool)[src]
Show or hide the control to the user
pub fn size(&self) -> (u32, u32)[src]
Return the size of the button in the parent window
pub fn physical_size(&self) -> (u32, u32)[src]
Return the physical size of canvas in pixels considering the dpi scale
pub fn set_size(&self, x: u32, y: u32)[src]
Set the size of the button in the parent window
pub fn position(&self) -> (i32, i32)[src]
Return the position of the button in the parent window
pub fn set_position(&self, x: i32, y: i32)[src]
Set the position of the button in the parent window
pub fn text(&self) -> String[src]
Return window title
pub fn set_text<'a>(&self, v: &'a str)[src]
Set the window title
pub fn class_name(&self) -> &'static str[src]
Winapi class name used during control creation
pub fn flags(&self) -> u32[src]
pub fn forced_flags(&self) -> u32[src]
Winapi flags required by the control
Trait Implementations
impl Default for ExternCanvas[src]
fn default() -> ExternCanvas[src]
impl Drop for ExternCanvas[src]
impl From<&'_ ExternCanvas> for ControlHandle[src]
fn from(control: &ExternCanvas) -> Self[src]
impl From<&'_ mut ExternCanvas> for ControlHandle[src]
fn from(control: &mut ExternCanvas) -> Self[src]
impl PartialEq<ControlHandle> for ExternCanvas[src]
fn eq(&self, other: &ControlHandle) -> bool[src]
#[must_use]pub fn ne(&self, other: &Rhs) -> bool1.0.0[src]
impl PartialEq<ExternCanvas> for ControlHandle[src]
Auto Trait Implementations
impl RefUnwindSafe for ExternCanvas
impl !Send for ExternCanvas
impl !Sync for ExternCanvas
impl Unpin for ExternCanvas
impl UnwindSafe for ExternCanvas
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,