ableos/ableos/src/experiments/y_compositor/window.rs

38 lines
733 B
Rust

use crate::driver_traits::graphics::Point;
pub type MenuBar = Vec<MenuOption>;
pub struct MenuOption {
symbol: char,
}
pub struct Window {
title: String,
position: Point,
fullscreen: bool,
}
// all of these should return a result
impl Window {
pub fn new(title: String, position: Point, fullscreen: bool) -> Self {
Self {
title,
position,
fullscreen,
}
}
pub fn fullscreen(&mut self) {
self.fullscreen = true;
}
pub fn revert_fullscreen(&mut self) {
self.fullscreen = false;
}
pub fn set_title(&mut self) {
todo!();
}
pub fn set_position(&mut self, pos: Point) {
self.position = pos;
}
}