def __init__(self): super(MainWindow, self).__init__() uic.loadUi('GUI/mainwindow.ui', self) self.openTabs = {} # Dict for Post-Office self.postman = Postman() self.postman.Post.connect(self.postOffice) ### Parse XML ### root = parseXML(directory="xml") ### Create Devices ### liste = [] for item in root: _class = Devices.getDevice(item[0].value('Type')) liste.append(_class(item)) ### self.wToolbox.setVisible(False) self.wQueue.setVisible(False) ### Prepare Device View ### self.deviceModel = DeviceModel(liste) self.listView.setModel(self.deviceModel) self.listView.doubleClicked.connect(self.tabAdd) self.uiTabs.tabCloseRequested.connect(self.tabClose) ### ### Prepare Queue ### self.qModel = QueueModel() self.treeView.setModel(self.qModel) self.treeView.setItemDelegate(QueueDelegate()) self.queueThread = QueueThread(self.postman) self.thread = QtCore.QThread() self.queueThread.moveToThread(self.thread) self.thread.started.connect(self.queueThread.process) self.queueThread.finished.connect(self.thread.quit) self.queueThread.newMaximum.connect(self.queueProgress.setMaximum) self.queueThread.processed.connect(self.queueProgress.setValue) ### ### Prepare Logging Monitor ### self.monitor = Monitor(self.postman, self) self.actionLogging_Monitor.triggered.connect(self.monitor.show) ### self.bExecute.clicked.connect(self.startExecute) self.bQueueRemoveItem.clicked.connect(self.removeQueueItem) self.bClearAll.clicked.connect(self.qModel.clearAll) self.toolModel = ToolModel(Tools.TOOL_LIST) self.uiToolList.setModel(self.toolModel) self.show()