CEXASC5XWUEA4SWUKX6HSAXV7DSZTIIBXIQEFZAHAFZ7NUIWQLXAC
button, scrollable, text_input, Align, Button, Color, Column, Command, Container, Element,
Length, Row, Space, Subscription, Text, TextInput,
button, pick_list, scrollable, text_input, Align, Button, Color, Column, Command, Container,
Element, Length, PickList, Row, Space, Subscription, Text, TextInput,
let user_name = Text::new(self.client.current_user_id().localpart())
.size(16)
.width(Length::Fill);
let user_area =
Row::with_children(vec![logout.into(), user_name.into()]).align_items(Align::Center);
let username = self.client.current_user_id().localpart().to_string();
let menu = PickList::new(
&mut self.menu_state,
vec![
username.clone(),
"Join Room".to_string(),
"Logout".to_string(),
],
Some(username),
Message::SelectedMenuOption,
)
.style(theme);
impl pick_list::StyleSheet for PickList {
fn menu(&self) -> pick_list::Menu {
pick_list::Menu {
background: BRIGHT_BG.into(),
text_color: Color::WHITE,
selected_background: ACCENT.into(),
selected_text_color: Color::WHITE,
border_width: 0,
..pick_list::Menu::default()
}
}
fn active(&self) -> pick_list::Style {
pick_list::Style {
background: DARK_BG.into(),
text_color: Color::WHITE,
border_width: 0,
..pick_list::Style::default()
}
}
fn hovered(&self) -> pick_list::Style {
pick_list::Style {
background: ACCENT.into(),
..self.active()
}
}
}