def test_main_window_raise(main_window, qtbot, start_floating, close, finish_floating): # Add our docks dock1 = QDockWidget() qtbot.addWidget(dock1) dock2 = QDockWidget() qtbot.addWidget(dock2) main_window.addDockWidget(Qt.RightDockWidgetArea, dock1) main_window.addDockWidget(Qt.RightDockWidgetArea, dock2) # Setup dock dock1.setFloating(start_floating) if close: dock1.close() # Re-raise # main_window.raise_dock(dock1) assert dock1.isFloating() == finish_floating
def _build_left_dock(self): # QTreeView for the project view w_project_tree = QDockWidget("Project tree", self) w_project_tree.setFloating(False) self._docks['project tree'] = w_project_tree self.addDockWidget(Qt.LeftDockWidgetArea, w_project_tree) # Add the treeview treeview = QTreeView(w_project_tree) treedelegate = TreeDelegate() treeview.setItemDelegate(treedelegate) pm = ProjectModel() self._models["project"] = pm treeview.setModel(pm) treeview.expandAll() treeview.resizeColumnToContents(0) treeview.resizeColumnToContents(1) w_project_tree.setWidget(treeview) treeview.clicked.connect(self.treeItemClicked) # Formatting Editor w_properties = QDockWidget("Properties editor", self) w_properties.setFloating(False) self._docks['properties'] = w_properties self.addDockWidget(Qt.LeftDockWidgetArea, w_properties) # Create Container widget container = QWidget(w_properties) # Create a verticallayout in which we put a treeview and a tableview v_layout = QVBoxLayout(w_properties) # Positions Properties to start with # the treeview will contain the widgets for the properties of the selected item in the tree treeview = QTreeView(w_properties) v_layout.addWidget(treeview) v_layout.setStretchFactor(treeview, 2) treedelegate = PropertiesTreeDelegate() treeview.setItemDelegate(treedelegate) pm = PropertiesTreeModel() self._models['properties'] = pm treeview.setModel(pm) treeview.expandAll() # The tableview will only contain editable x,y shown as rows tableview = QTableView(w_properties) v_layout.addWidget(tableview) v_layout.setStretchFactor(tableview, 1) container.setLayout(v_layout) w_properties.setWidget(container) # Formatting Editor w_formatting = QDockWidget("Formatting editor", self) w_formatting.setFloating(False) self._docks['formatting'] = w_formatting self.addDockWidget(Qt.LeftDockWidgetArea, w_formatting)
def _build_bottom_dock(self): w_assets = QDockWidget("Assets", self) w_assets.setFloating(False) self._docks['assets'] = w_assets self.addDockWidget(Qt.BottomDockWidgetArea, w_assets)
def _build_right_dock(self): w_data = QDockWidget("Data inspector", self) w_data.setFloating(False) self._docks['data'] = w_data self.addDockWidget(Qt.RightDockWidgetArea, w_data)