pub struct UiContext {Show 15 fields
pub states: HashMap<UiId, WidgetStateRetained>,
pub focused_id: Option<UiId>,
pub hovered_id: Option<UiId>,
pub active_id: Option<UiId>,
pub events: Vec<InputEvent>,
pub draw_cmds: Vec<DrawCmd>,
pub mouse_x: f32,
pub mouse_y: f32,
pub mouse_down: bool,
pub mouse_just_pressed: bool,
pub mouse_just_released: bool,
pub typed_chars: Vec<char>,
pub viewport_w: f32,
pub viewport_h: f32,
pub animators: HashMap<UiId, Animator>,
/* private fields */
}Fields§
§states: HashMap<UiId, WidgetStateRetained>§focused_id: Option<UiId>§hovered_id: Option<UiId>§active_id: Option<UiId>§events: Vec<InputEvent>§draw_cmds: Vec<DrawCmd>§mouse_x: f32§mouse_y: f32§mouse_down: bool§mouse_just_pressed: bool§mouse_just_released: bool§typed_chars: Vec<char>§viewport_w: f32§viewport_h: f32§animators: HashMap<UiId, Animator>Implementations§
Source§impl UiContext
impl UiContext
pub fn new(vw: f32, vh: f32) -> Self
pub fn push_event(&mut self, event: InputEvent)
pub fn begin_frame(&mut self)
pub fn end_frame(&mut self) -> Vec<DrawCmd>
pub fn key_pressed(&self, key: KeyCode) -> bool
pub fn key_held(&self, key: KeyCode) -> bool
pub fn shift(&self) -> bool
pub fn ctrl(&self) -> bool
pub fn alt(&self) -> bool
pub fn push_layout(&mut self, rect: Rect)
pub fn pop_layout(&mut self) -> Option<Rect>
pub fn current_layout(&self) -> Rect
pub fn get_state(&mut self, id: UiId) -> &mut WidgetStateRetained
pub fn is_hovered(&self, rect: &Rect) -> bool
pub fn is_focused(&self, id: UiId) -> bool
pub fn set_focus(&mut self, id: UiId)
pub fn clear_focus(&mut self)
pub fn emit(&mut self, cmd: DrawCmd)
pub fn push_scissor(&mut self, rect: Rect)
pub fn pop_scissor(&mut self)
pub fn fill_rect(&mut self, rect: Rect, color: Color)
pub fn rounded_rect(&mut self, rect: Rect, radius: f32, color: Color)
pub fn text(&mut self, s: &str, x: f32, y: f32, font_size: f32, color: Color)
pub fn line( &mut self, x0: f32, y0: f32, x1: f32, y1: f32, color: Color, width: f32, )
pub fn animator(&mut self, id: UiId) -> &mut Animator
pub fn tick_animators(&mut self, dt: f32)
Auto Trait Implementations§
impl Freeze for UiContext
impl RefUnwindSafe for UiContext
impl Send for UiContext
impl Sync for UiContext
impl Unpin for UiContext
impl UnsafeUnpin for UiContext
impl UnwindSafe for UiContext
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.