From aee7e6254ebccf2df35142953e83247f77e40047 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Tue, 14 Mar 2023 14:55:50 -0600 Subject: [PATCH] WIP: Enable close icon --- src/main.rs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/main.rs b/src/main.rs index 5d6d66b..1803faa 100644 --- a/src/main.rs +++ b/src/main.rs @@ -137,7 +137,8 @@ pub struct Window { pub enum Message { Open, Save, - Tab(segmented_button::Entity), + TabActivate(segmented_button::Entity), + TabClose(segmented_button::Entity), Todo, } @@ -169,7 +170,9 @@ impl Application for Window { .insert() .text(tab.title()) .icon("text-x-generic") + .icon_color(None) .data(tab) + .closable() .activate(); ( @@ -203,7 +206,9 @@ impl Application for Window { .insert() .text(tab.title()) .icon("text-x-generic") + .icon_color(None) .data(tab) + .closable() .activate(); } } @@ -227,7 +232,8 @@ impl Application for Window { self.tab_model.text_set(self.tab_model.active(), title); } } - Message::Tab(entity) => self.tab_model.activate(entity), + Message::TabActivate(entity) => self.tab_model.activate(entity), + Message::TabClose(entity) => self.tab_model.remove(entity), Message::Todo => { log::info!("TODO"); } @@ -259,7 +265,8 @@ impl Application for Window { .spacing(16); let tab_bar = view_switcher::horizontal(&self.tab_model) - .on_activate(Message::Tab) + .on_activate(Message::TabActivate) + .on_close(Message::TabClose) .width(Length::Shrink); let content: Element<_> = column![