#[derive(Debug, Clone, Default, PartialEq)]
pub struct ContextMenu {
menu_id: String,
position_x: f64,
position_y: f64,
visible: bool,
}
impl ContextMenu {
#[inline]
pub fn new() -> Self {
Self::default()
}
#[inline]
pub fn show(&mut self) {
self.visible = true;
}
#[inline]
pub fn hide(&mut self) {
self.visible = false;
}
#[inline]
pub fn set_menu_id(&mut self, menu_id: String) {
self.menu_id = menu_id;
}
#[inline]
pub fn set_position(&mut self, x: f64, y: f64) {
self.position_x = x;
self.position_y = y;
}
#[inline]
pub fn menu_id(&self) -> &str {
&self.menu_id
}
#[inline]
pub fn position_x(&self) -> f64 {
self.position_x
}
#[inline]
pub fn position_y(&self) -> f64 {
self.position_y
}
#[inline]
pub fn is_visible(&self) -> bool {
self.visible
}
}