Skip to main content

danceinterpreter_rs/ui/
mod.rs

1use iced::widget::{container, text, tooltip};
2use iced::{Element, Theme};
3
4pub mod config_window;
5pub mod song_window;
6pub mod widget;
7pub mod widgets;
8
9/// Wraps a widget in a tooltip with a readable styled container.
10pub fn with_tooltip<'a, Message: 'a>(
11    content: impl Into<Element<'a, Message>>,
12    label: impl text::IntoFragment<'a>,
13) -> Element<'a, Message> {
14    tooltip(
15        content,
16        container(text(label)).padding([4, 8]).style(|t: &Theme| {
17            container::Style::default()
18                .background(t.extended_palette().background.strong.color)
19                .border(iced::border::rounded(4))
20        }),
21        tooltip::Position::Bottom,
22    )
23    .gap(4)
24    .into()
25}