Files
jap_learn/src/styling.rs
T

39 lines
1.0 KiB
Rust
Raw Normal View History

2026-08-01 13:04:18 +03:00
use iced::border::Radius;
2026-08-01 17:23:43 +03:00
use iced::Element;
2026-08-01 13:04:18 +03:00
use iced::widget::button::{primary, Status};
2026-08-01 17:23:43 +03:00
use iced::widget::{button, container};
2026-08-01 13:04:18 +03:00
use crate::repetitions::Style;
2026-08-01 17:16:58 +03:00
use iced_core::{Border, Theme};
2026-08-01 17:23:43 +03:00
use iced_core::alignment::Horizontal::Left;
use iced_core::Length::Fill;
2026-08-01 13:04:18 +03:00
pub const DEFAULT_SPACING: f32 = 16.0;
pub const ACCENT_FONT_SIZE: f32 = 22.0;
const BUTTON_RADIUS: f32 = 8.0;
pub fn jl_button(theme: &Theme, status: Status) -> Style {
let mut style = primary(theme, status);
style.border = Border
{
color: Default::default(),
width: 0.0,
radius: Radius::new(BUTTON_RADIUS),
};
style
2026-08-01 17:16:58 +03:00
}
2026-08-01 17:23:43 +03:00
pub fn back_overlay<'a, T: Clone + 'a>(content: Element<'a, T>, back_message: T) -> Element<'a, T> {
container(
iced::widget::column![
button("Назад")
.style(jl_button)
.on_press(back_message),
content
]
.align_x(Left)
.width(Fill),
)
.center_x(Fill)
.padding(10)
.into()
}