multiverse/widgets/create_room/
mod.rs

1use crossterm::event::KeyEvent;
2use ratatui::prelude::*;
3
4use crate::widgets::popup_input::PopupInput;
5
6#[derive(Default)]
7pub struct CreateRoomView {
8    input: PopupInput,
9}
10
11impl CreateRoomView {
12    pub fn new() -> Self {
13        Self { input: PopupInput::new("Create Room", "(Enter name for new room)") }
14    }
15
16    pub fn get_text(&self) -> Option<String> {
17        let name = self.input.get_input();
18        if !name.is_empty() { Some(name) } else { None }
19    }
20
21    pub fn handle_key_press(&mut self, key: KeyEvent) {
22        self.input.handle_key_press(key);
23    }
24}
25
26impl Widget for &mut CreateRoomView {
27    fn render(self, area: Rect, buf: &mut Buffer) {
28        self.input.render(area, buf);
29    }
30}