def setupLayout(self): self.constraint_editor = ListEditor() if self.selectops: self.optree = DraggableTreeWidget() self.propertieswindow = qg.QWidget() ok_button = qg.QPushButton('&Ok', self) cancel_button = qg.QPushButton('&Cancel', self) ok_button.clicked.connect(self.accept) cancel_button.clicked.connect(self.reject) sublayout = qg.QHBoxLayout() sublayout.addStretch(1) sublayout.addWidget(ok_button) sublayout.addWidget(cancel_button) sublayout.addStretch(1) self.graphicsview = GraphicsView() self.scene = GraphicsScene(self.graphicsview) self.graphicsview.setScene(self.scene) self.graphicsview.finish_init() self.scene.connect_mouse_modes(self.graphicsview) centrallayout = qg.QVBoxLayout() centrallayout.addWidget(self.graphicsview) centrallayout.addLayout(sublayout) centralwidget = qg.QWidget() centralwidget.setLayout(centrallayout) if self.selectops: self.optreedock = qg.QDockWidget() self.optreedock.setWidget(self.optree) self.optreedock.setAllowedAreas(qc.Qt.AllDockWidgetAreas) self.optreedock.setWindowTitle('Operatons') self.constraintdock = qg.QDockWidget() self.constraintdock.setWidget(self.constraint_editor) self.constraintdock.setAllowedAreas(qc.Qt.AllDockWidgetAreas) self.constraintdock.setWindowTitle('Constraints') self.constraintdock.setMinimumHeight(200) self.propdock = qg.QDockWidget() self.propdock.setWidget(self.propertieswindow) self.propdock.setAllowedAreas(qc.Qt.AllDockWidgetAreas) self.propdock.setWindowTitle('Properties') self.propdock.setMinimumHeight(200) if self.selectops: self.addDockWidget(qc.Qt.LeftDockWidgetArea, self.optreedock) self.addDockWidget(qc.Qt.RightDockWidgetArea, self.constraintdock) self.addDockWidget(qc.Qt.RightDockWidgetArea, self.propdock) self.setCentralWidget(centralwidget) self.setWindowTitle('Sketcher') # self.set_nominal_size() if self.selectops: self.optreedock.closeEvent = lambda event: self.action_uncheck( self.menu_system.actions['view_operations']) self.constraintdock.closeEvent = lambda event: self.action_uncheck( self.menu_system.actions['view_constraints']) self.propdock.closeEvent = lambda event: self.action_uncheck( self.menu_system.actions['view_properties'])