summaryrefslogtreecommitdiff
path: root/schist_desktop_gui/src/gui/components/button.rs
diff options
context:
space:
mode:
Diffstat (limited to 'schist_desktop_gui/src/gui/components/button.rs')
-rw-r--r--schist_desktop_gui/src/gui/components/button.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/schist_desktop_gui/src/gui/components/button.rs b/schist_desktop_gui/src/gui/components/button.rs
index bc9e5f9..e071f33 100644
--- a/schist_desktop_gui/src/gui/components/button.rs
+++ b/schist_desktop_gui/src/gui/components/button.rs
@@ -1,5 +1,7 @@
use iced::{widget::Button, Element};
+use crate::style::*;
+
pub fn active_button<'a, Content: Into<Element<'a, Message>>, Message>(
content: Content,
) -> Button<'a, Message> {
@@ -22,3 +24,22 @@ pub fn inactive_button<'a, Content: Into<Element<'a, Message>>, Message>(
.on_press(on_press)
.width(iced::Length::Fill)
}
+
+pub fn panel_button<'a, Content: Into<Element<'a, Message>>, Message>(
+ content: Content,
+ on_press: Message,
+) -> Button<'a, Message> {
+ iced::widget::button(content)
+ .on_press(on_press)
+ .style(|theme: &iced::Theme, _status| iced::widget::button::Style {
+ background: None,
+ border: iced::Border {
+ color: theme.extended_palette().primary.base.text,
+ radius: iced::border::Radius::new(0),
+ width: 2.0,
+ },
+ ..Default::default()
+ })
+ .width(iced::Length::Fill)
+ .padding(iced::Padding::new(SPACING_MD.into()))
+}