draft pin tab feature

This commit is contained in:
yggverse 2024-09-23 15:44:33 +03:00
parent 4b78ccb779
commit f2427c453e
8 changed files with 64 additions and 20 deletions

View file

@ -1,30 +1,30 @@
pub struct Tab {
gtk: gtk::Notebook,
tab: gtk::Notebook,
}
impl Tab {
// Construct new object
pub fn new() -> Tab {
Self {
gtk: gtk::Notebook::builder().scrollable(true).build(),
tab: gtk::Notebook::builder().scrollable(true).build(),
}
}
// Actions
pub fn append(&self, label: &gtk::Box, page: &gtk::Box, current: bool) -> u32 {
let page_number = self.gtk.append_page(page, Some(label));
let page_number = self.tab.append_page(page, Some(label));
self.gtk.set_tab_reorderable(page, true);
self.tab.set_tab_reorderable(page, true);
if current {
self.gtk.set_current_page(Some(page_number));
self.tab.set_current_page(Some(page_number));
}
page_number
}
// Getters
pub fn gtk(&self) -> &gtk::Notebook {
&self.gtk
pub fn tab(&self) -> &gtk::Notebook {
&self.tab
}
}