def setupUi(self, *args): # called in MainWindowBase.__init__() # put the log widget at the bottom self.addDockWidget(Qt.BottomDockWidgetArea, self._setupLogWidget()) # file widget at the top self.toolbox = ToolBox(self) self._addToolboxItem(self._setupFileWidget()) self._addToolboxItem(self._setupDataWidget()) self._addToolboxItem(self._setupOptimWidget()) self._addToolboxItem(self._setupModelWidget()) self._addToolboxItem(self._setupStatsWidget()) # set up central widget of the main window self.centralLayout = QVBoxLayout() # put buttons in central widget self.centralLayout.addWidget(self.toolbox) self.centralLayout.addWidget(self._setupStartButton()) centralWidget = QWidget(self) centralWidget.setLayout(self.centralLayout) centralWidget.setSizePolicy(QSizePolicy.Preferred, QSizePolicy.Maximum) self.setCentralWidget(centralWidget) self.onStartupSignal.connect(self.initUi) # set program icon, same for Win+Lin icopath = "resources/icon/mcsas.ico" if isMac(): icopath = "resources/icon/mcsas.icns" icopath = QFileInfo(makeAbsolutePath(icopath)).absoluteFilePath() self.setWindowIcon(QIcon(icopath))
main_window = QMainWindow() ui_file = os.path.join(os.path.dirname(os.path.realpath(__file__)), '..', 'src', 'slider_simple.ui') loadUi(ui_file, main_window) # set icons for tabs icons = { 0: 'square.png', 1: 'triangle.png', 2: 'circle.png', 3: 'cross.png', } for index, filename in icons.iteritems(): filename = os.path.realpath( os.path.join(os.path.dirname(__file__), '..', 'icons', filename)) icon = QIcon(filename) if not icon.isNull(): main_window.PoseList_tabWidget.setTabText(index, '') main_window.PoseList_tabWidget.setTabIcon(index, icon) # hide design-only widgets #main_window.square_tableWidget.setVisible(False) sigint_called = False def sigint_handler(*args): global sigint_called print('\nsigint_handler()') sigint_called = True main_window.close()