Struct native_windows_gui::ExternCanvas
source · [−]pub struct ExternCanvas {
pub handle: ControlHandle,
}
Expand description
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. SeeExternCanvasFlags
ex_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: ControlHandle
Implementations
sourceimpl ExternCanvas
impl ExternCanvas
pub fn builder<'a>() -> ExternCanvasBuilder<'a>
sourcepub fn invalidate(&self)
pub fn invalidate(&self)
Invalidate the whole drawing region. For canvas that are children control, this should be called in the paint event.
sourcepub fn set_icon(&self, icon: Option<&Icon>)
pub fn set_icon(&self, icon: Option<&Icon>)
Set the icon in the window
- icon: The new icon. If None, the icon is removed
sourcepub fn enabled(&self) -> bool
pub fn enabled(&self) -> bool
Return true if the control user can interact with the control, return false otherwise
sourcepub fn set_enabled(&self, v: bool)
pub fn set_enabled(&self, v: bool)
Enable or disable the control
sourcepub fn visible(&self) -> bool
pub fn visible(&self) -> bool
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))
sourcepub fn set_visible(&self, v: bool)
pub fn set_visible(&self, v: bool)
Show or hide the control to the user
sourcepub fn physical_size(&self) -> (u32, u32)
pub fn physical_size(&self) -> (u32, u32)
Return the physical size of canvas in pixels considering the dpi scale
sourcepub fn set_position(&self, x: i32, y: i32)
pub fn set_position(&self, x: i32, y: i32)
Set the position of the button in the parent window
sourcepub fn class_name(&self) -> &'static str
pub fn class_name(&self) -> &'static str
Winapi class name used during control creation
pub fn flags(&self) -> u32
sourcepub fn forced_flags(&self) -> u32
pub fn forced_flags(&self) -> u32
Winapi flags required by the control
Trait Implementations
sourceimpl Default for ExternCanvas
impl Default for ExternCanvas
sourcefn default() -> ExternCanvas
fn default() -> ExternCanvas
Returns the “default value” for a type. Read more
sourceimpl Drop for ExternCanvas
impl Drop for ExternCanvas
sourceimpl From<&ExternCanvas> for ControlHandle
impl From<&ExternCanvas> for ControlHandle
sourcefn from(control: &ExternCanvas) -> Self
fn from(control: &ExternCanvas) -> Self
Converts to this type from the input type.
sourceimpl From<&mut ExternCanvas> for ControlHandle
impl From<&mut ExternCanvas> for ControlHandle
sourcefn from(control: &mut ExternCanvas) -> Self
fn from(control: &mut ExternCanvas) -> Self
Converts to this type from the input type.
sourceimpl PartialEq<ControlHandle> for ExternCanvas
impl PartialEq<ControlHandle> for ExternCanvas
sourcefn eq(&self, other: &ControlHandle) -> bool
fn eq(&self, other: &ControlHandle) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourceimpl PartialEq<ExternCanvas> for ControlHandle
impl PartialEq<ExternCanvas> for ControlHandle
sourcefn eq(&self, other: &ExternCanvas) -> bool
fn eq(&self, other: &ExternCanvas) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
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
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more