def __init__( self, parent: QtWidgets.QWidget = None, flags: Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = QtCore.Qt.WindowFlags() ) -> None: """Create a tab editor widget.""" super().__init__(parent, flags) self.tabs_model = models.TabsModel() self.selected_tab_combo_box.setModel(self.tabs_model) self._tabs_file: Optional[str] = None self._all_workflows_model: models.WorkflowListModel2 = \ models.WorkflowListModel2() self._active_tab_workflows_model: models.WorkflowListModel2 = \ models.WorkflowListModel2() self.tab_workflows_list_view.setModel( self._active_tab_workflows_model ) self.selected_tab_combo_box.currentIndexChanged.connect( self._changed_tab ) self.new_tab_button.clicked.connect(self._create_new_tab) self.delete_current_tab_button.clicked.connect(self._delete_tab) self.add_items_button.clicked.connect(self._add_items_to_tab) self.remove_items_button.clicked.connect(self._remove_items) self.tabs_model.dataChanged.connect(self.on_modified) self.modified: bool = False self.splitter.setChildrenCollapsible(False)
def __init__(self, *args, **kwargs) -> None: super().__init__(*args, **kwargs) self.setupUi(self) self._tabs_file: Optional[str] = None self._tabs_model: QtCore.QAbstractListModel = models.TabsModel() self._all_workflows_model: models.WorkflowListModel2 = \ models.WorkflowListModel2() self._active_tab_worksflows_model: models.WorkflowListModel2 = \ models.WorkflowListModel2() self.tabWorkflowsListView.setModel(self._active_tab_worksflows_model) self.selectedTabComboBox.setModel(self._tabs_model) self.selectedTabComboBox.currentIndexChanged.connect(self._changed_tab) self.newTabButton.clicked.connect(self._create_new_tab) self.deleteCurrentTabButton.clicked.connect(self._delete_tab) self.addItemsButton.clicked.connect(self._add_items_to_tab) self.removeItemsButton.clicked.connect(self._remove_items) self._tabs_model.dataChanged.connect(self.on_modified) self.modified: bool = False self.splitter.setChildrenCollapsible(False)
def test_model_isub_operator(self): from speedwagon.tabs import TabData tab = TabData("dummy", Mock()) model = models.TabsModel() model += tab assert ("dummy" in model) is True model -= tab assert ("dummy" in model) is False
def test_tabs_model_delete_tab(): test_model = models.TabsModel() new_tab = tabs.TabData("My tab", models.WorkflowListModel2()) # new_tab.tab_name = test_model += new_tab second_new_tab = tabs.TabData("second new tab", models.WorkflowListModel2()) test_model += second_new_tab assert test_model.rowCount() == 2 test_model -= second_new_tab assert test_model.rowCount() == 1
def test_tabs_model_delete_all_tabs(): test_model = models.TabsModel() first_new_tab = tabs.TabData("My tab", models.WorkflowListModel2()) test_model += first_new_tab second_new_tab = tabs.TabData("second new tab", models.WorkflowListModel2()) test_model += second_new_tab assert test_model.rowCount() == 2 test_model -= second_new_tab assert test_model.rowCount() == 1 test_model -= first_new_tab assert test_model.rowCount() == 0
def test_tabs_model_iadd_tab(self): test_model = models.TabsModel() new_tab = tabs.TabData("My tab", models.WorkflowListModel2()) test_model += new_tab assert test_model.rowCount() == 1
def test_model_data(self): from speedwagon.tabs import TabData tab = TabData("dummy", Mock()) model = models.TabsModel() model.add_tab(tab) assert model.data(model.index(0, 0), role=QtCore.Qt.UserRole) == tab
def test_model_iadd_operator(self): from speedwagon.tabs import TabData model = models.TabsModel() model += TabData("dummy", Mock()) assert ("dummy" in model) is True
def test_model_contains_false(self): model = models.TabsModel() assert ("dummy" in model) is False
def test_model_contains(self): from speedwagon.tabs import TabData model = models.TabsModel() model.add_tab(TabData("dummy", Mock())) assert ("dummy" in model) is True