# Python imports # Lib imports import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk # Application imports from ..sections_tab_widget import SectionsTabWidget from ..page_widget import Page class Pages(Gtk.Notebook): def __init__(self, close_tab): super(Pages, self).__init__() self._close_tab = close_tab self._tab_widget = SectionsTabWidget(self, self._close_tab) self._setup_styling() self._setup_signals() self._load_widgets() self.show_all() def _setup_styling(self): self.set_tab_pos(1) # NOTE: LEFT = 0, RIGHT = 1, TOP = 2, BOTTOM = 3 def _setup_signals(self): ... def _load_widgets(self): page = Page(self.close_tab) page_num = self.append_page(page, page.get_tab_widget()) self.set_tab_detachable(page, False) self.set_tab_reorderable(page, True) self.show_all() self.set_current_page(page_num) def get_tab_widget(self): return self._tab_widget def close_tab(self, button, page, eve = None): page_num = self.page_num(page) self.remove_page(page_num)