[−][src]Struct pushrod::widget::widget::CanvasWidget
This is the CanvasWidget, which contains a top-level widget for display. It does
not contain any special logic other than being a base for a display layer.
Example usage:
let mut base_widget = CanvasWidget::new(); base_widget.set_origin(100, 100); base_widget.set_size(200, 200); base_widget.set_color([0.5, 0.5, 0.5, 1.0]); // Widgets must be boxed, as they are trait objects. let widget_id = prod.widget_store.add_widget(Box::new(base_widget)); eprintln!("Added widget: ID={}", widget_id); let mut base_widget_2 = CanvasWidget::new(); base_widget_2.set_origin(125, 125); base_widget_2.set_size(100, 100); base_widget_2.set_color([0.75, 0.75, 0.75, 1.0]); // Add the second widget to the top level base widget. let widget_id_2 = prod.widget_store.add_widget_to_parent(Box::new(base_widget_2), widget_id);
Methods
impl CanvasWidget[src]
Implementation of the constructor for the CanvasWidget. Creates a new base widget
that can be positioned anywhere on the screen.
Trait Implementations
impl Widget for CanvasWidget[src]
Implementation of the CanvasWidget object with the Widget traits implemented.
This function only implements config and callbacks, which are used as a base for
all Widgets.
fn config(&mut self) -> &mut Configurable[src]
fn callbacks(&mut self) -> &mut CallbackStore[src]
fn invalidate(&mut self)[src]
Indicates that a widget needs to be redrawn/refreshed.
fn clear_invalidate(&mut self)[src]
Clears the invalidation flag.
fn is_invalidated(&mut self) -> bool[src]
Checks to see whether or not the widget needs to be redrawn/refreshed.
fn set_origin(&mut self, x: i32, y: i32)[src]
Sets the Point of origin for this widget, given the X and Y origin points. Invalidates the widget afterward.
fn get_origin(&mut self) -> Point[src]
Retrieves the Point of origin for this object. Defaults to origin (0, 0) if not set. Read more
fn set_size(&mut self, w: i32, h: i32)[src]
Sets the Size for this widget, given a width and height. Invalidates the widget afterward.
fn get_size(&mut self) -> Size[src]
Retrieves the Size bounds for this widget. Defaults to size (0, 0) if not set. Read more
fn set_color(&mut self, color: Color)[src]
Sets the color for this widget. Invalidates the widget afterward.
fn get_color(&mut self) -> Color[src]
Retrieves the color of this widget. Defaults to white color [1.0; 4] if not set. Read more
fn set_secondary_color(&mut self, color: Color)[src]
Sets the secondary color for this widget. Invalidates the widget afterward.
fn get_secondary_color(&mut self) -> Color[src]
Retrieves the secondary color of this widget. Defaults to black color [0.0, 0.0, 0.0, 1.0] if not set. Read more
fn perform_single_callback(&mut self, callback_id: u32, widget_id: i32)[src]
Performs a callback stored in the CallbackStore for this Widget, but only for the CallbackTypes::SingleCallback enum type. If the callback does not exist, or is not defined properly, it will be silently dropped and ignored. Read more
fn perform_bool_callback(
&mut self,
callback_id: u32,
widget_id: i32,
flag: bool
)[src]
&mut self,
callback_id: u32,
widget_id: i32,
flag: bool
)
Performs a callback stored in the CallbackStore for this Widget, but only for the CallbackTypes::BoolCallback enum type. If the callback does not exist, or is not defined properly, it will be silently dropped and ignored. Read more
fn perform_point_callback(
&mut self,
callback_id: u32,
widget_id: i32,
point: Point
)[src]
&mut self,
callback_id: u32,
widget_id: i32,
point: Point
)
Performs a callback stored in the CallbackStore for this Widget, but only for the CallbackTypes::PointCallback enum type. If the callback does not exist, or is not defined properly, it will be silently dropped and ignored. Read more
fn perform_size_callback(
&mut self,
callback_id: u32,
widget_id: i32,
size: Size
)[src]
&mut self,
callback_id: u32,
widget_id: i32,
size: Size
)
Performs a callback stored in the CallbackStore for this Widget, but only for the CallbackTypes::SizeCallback enum type. If the callback does not exist, or is not defined properly, it will be silently dropped and ignored. Read more
fn perform_button_callback(
&mut self,
callback_id: u32,
widget_id: i32,
button: Button
)[src]
&mut self,
callback_id: u32,
widget_id: i32,
button: Button
)
fn perform_key_callback(
&mut self,
callback_id: u32,
widget_id: i32,
key: Key,
state: ButtonState
)[src]
&mut self,
callback_id: u32,
widget_id: i32,
key: Key,
state: ButtonState
)
Performs a callback stored in the CallbackStore for this Widget, but only for the CallbackTypes::KeyCallback enum type. If the callback does not exist, or is not defined properly, it will be silently dropped and ignored. Read more
fn key_pressed(&mut self, widget_id: i32, key: &Key, state: &ButtonState)[src]
Called when a keyboard event takes place within the bounds of a widget. Includes the widget ID, the key code that was affected, and its state - pressed or released. Read more
fn mouse_entered(&mut self, widget_id: i32)[src]
Called when a mouse enters the bounds of the widget. Includes the widget ID. Only override if you want to signal a mouse enter event. Read more
fn mouse_exited(&mut self, widget_id: i32)[src]
Called when a mouse exits the bounds of the widget. Includes the widget ID. Only override if you want to signal a mouse exit event. Read more
fn mouse_scrolled(&mut self, widget_id: i32, point: Point)[src]
Called when a scroll event is called within the bounds of the widget. Includes the widget ID. Only override if you want to signal a mouse scroll event. Read more
fn mouse_moved(&mut self, widget_id: i32, point: Point)[src]
Called when the mouse pointer is moved inside a widget. Includes the widget ID and point. Only override if you want to track mouse movement. Read more
fn window_resized(&mut self, widget_id: i32, size: Size)[src]
Called when the main window is resized. Includes the widget ID and the new window size. Only override if you want to respond to a window resize (and if the window is resizable.) Read more
fn window_focused(&mut self, widget_id: i32, focused: bool)[src]
Called when a window focus state changes. Includes the widget ID and a focus flag: true when window gains focus, false otherwise. Only override if you want to signal a window focus event. Read more
fn button_down(&mut self, widget_id: i32, button: Button)[src]
Called when a mouse button is clicked down. Includes the widget ID and the button code. Only override if you want to respond to a mouse click. Read more
fn button_up_inside(&mut self, widget_id: i32, button: Button)[src]
Called when a mouse button is released inside the same Widget that it was clicked inside. Includes the widget ID and the button code. Only override if you want to respond to a mouse button release. Read more
fn button_up_outside(&mut self, widget_id: i32, button: Button)[src]
Called when a mouse button is released outside the same Widget that it was clicked inside. Includes the widget ID and the button code. Only override if you want to respond to a mouse button release. Read more
fn on_key_pressed(&mut self, callback: KeyCallback)[src]
fn on_mouse_entered(&mut self, callback: SingleCallback)[src]
Sets the closure action to be performed when a mouse enters a Widget.
fn on_mouse_exited(&mut self, callback: SingleCallback)[src]
Sets the closure action to be performed when a mouse exits a Widget.
fn on_mouse_scrolled(&mut self, callback: PointCallback)[src]
Sets the closure action to be performed when a mouse scrolls inside a Widget.
fn on_mouse_moved(&mut self, callback: PointCallback)[src]
Sets the closure action to be performed when a mouse moves within a Widget. The mouse point is based on the position within the Widget, not its Point relative to the window. Read more
fn on_window_resized(&mut self, callback: SizeCallback)[src]
Sets the window resize action to be performed when the window is resized.
fn on_focused(&mut self, callback: BoolCallback)[src]
Sets the window focused action to be performed when the window is (un)focused.
fn on_button_down(&mut self, callback: ButtonCallback)[src]
Sets the button click action to be performed when a mouse button is clicked.
fn on_button_up_inside(&mut self, callback: ButtonCallback)[src]
Sets the callback to be performed when a mouse button is released within the same Widget that it was pressed down inside. Read more
fn on_button_up_outside(&mut self, callback: ButtonCallback)[src]
Sets the callback to be performed when a mouse button is released outside of the same Widget that it was pressed down inside. Read more
fn draw(&mut self, c: Context, g: &mut G2d, clip: &DrawState)[src]
Draws the contents of the widget, provided a piston2d Context and G2d object. Read more
Auto Trait Implementations
impl !Send for CanvasWidget
impl !Sync for CanvasWidget
Blanket Implementations
impl<T> From for T[src]
impl<T, U> Into for T where
U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T> Borrow for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T, U> TryInto for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<T> SetParameter for T
default fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
T: Parameter<Self>,
Sets value as a parameter of self.