def __init__(self): QtGui.QMainWindow.__init__(self) self.ui = Ui_MainWindow() self.setupUi() self.tipPupup = TipPupup() self.presenter = MainWindowPresenter(self) self.setupSignals()
def __init__(self, parent=None): QtGui.QMainWindow.__init__(self) self.ui = Ui_MainWindow() self.ui.setupUi(self) self.setWindowIcon(QtGui.QIcon(config.LOGO_PNG)) self.ui.archView.setPixmap(QtGui.QPixmap(config.ARCH_PNG)) self.ui.versionLabel.setText(config.VERSION_INFO) self.setupUi_disconnected() self.tipPupup = TipPupup() self.presenter = MainWindowPresenter(self) self.bleproxyAddressDialog = BleproxyAddressDialog(self) self.progressDialog = ProgressDialog(self) self.menuManager = MenuManager(self) self.setupSignals()
class MainWindow(QtGui.QMainWindow): def __init__(self, parent=None): QtGui.QMainWindow.__init__(self) self.ui = Ui_MainWindow() self.ui.setupUi(self) self.setWindowIcon(QtGui.QIcon(config.LOGO_PNG)) self.ui.archView.setPixmap(QtGui.QPixmap(config.ARCH_PNG)) self.ui.versionLabel.setText(config.VERSION_INFO) self.setupUi_disconnected() self.tipPupup = TipPupup() self.presenter = MainWindowPresenter(self) self.bleproxyAddressDialog = BleproxyAddressDialog(self) self.progressDialog = ProgressDialog(self) self.menuManager = MenuManager(self) self.setupSignals() def setupSignals(self): self.ui.connectBtn.clicked.connect(self.onConnectBtnClicked) self.ui.scanBtn.clicked.connect(self.onScanBtnClicked) self.ui.bleListWgt.itemDoubleClicked.connect(self.onBleItemDoubleClicked) self.ui.bleListWgt.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) self.connect(self.ui.bleListWgt, QtCore.SIGNAL("customContextMenuRequested(const QPoint&)"), self.onBleListWgtPopMenu) self.connect(self.bleproxyAddressDialog, signals.SIG_CONNECT_SERVER, self.onConnectServer) self.connect(sigObject, signals.SIG_MSG_RECVED, self.presenter.handleDataBuff) self.connect(sigObject, signals.SIG_BLE_DEVICE, self.onBleDevice) self.connect(sigObject, signals.SIG_CONNECT_RESULT, self.onConnectResult) self.connect(sigObject, signals.SIG_DISCONNECT_BLE, self.onDisconnectBle) self.connect(sigObject, signals.SIG_SERVER_CLOSED, self.onServerClosed) self.connect(sigObject, signals.SIG_BLE_DISCONNECTED, self.onBleDisconnected) def setupUi_disconnected(self): self.ui.scanBtn.setEnabled(False) self.ui.scanBtn.setText(text.TEXT_ON_NOT_SCANNING) self.ui.connectBtn.setText(text.CONNECT) self.ui.bleListWgt.clear_() def setupUi_connected(self): self.ui.bleListWgt.setEnabled(True) self.ui.scanBtn.setEnabled(True) self.ui.connectBtn.setText(text.DISCONNECT) def onConnectBtnClicked(self): if self.presenter.isConnected(): self.presenter.stopTcpClient() self.setupUi_disconnected() self.ui.sockTab.removeSockForm() self.ui.bleListWgt.setCurAddress(None) else: self.bleproxyAddressDialog.show_() def onDisconnectBle(self): self.ui.sockTab.removeSockForm() self.ui.bleListWgt.setEnabled(True) self.ui.bleListWgt.setCurAddress(None) self.ui.scanBtn.setEnabled(True) self.presenter.setScanning(False) def onServerClosed(self): logger.debug("server closed") self.tipPupup.makeErrorText(text.SERVER_CLOSED, 4000) self.onDisconnectBle() self.presenter.stopTcpClient() self.setupUi_disconnected() def onBleDisconnected(self): self.tipPupup.makeErrorText(text.BLE_DISCONNECTED, 4000) self.onDisconnectBle() def onBleItemDoubleClicked(self, item): if item.isConnected(): logger.debug("already connected") return logger.debug("connect to ble device: %s" % item.getAddress()) ret = self.presenter.connectBleDevice(item.getAddress()) if ret: self.progressDialog.show() else: self.tipPupup.makeErrorText(text.SEND_PKG_ERROR) def onScanBtnClicked(self): ret, scanning = self.presenter.scan() if not ret: return self.ui.scanBtn.setText(scanning and text.TEXT_ON_SCANNING or text.TEXT_ON_NOT_SCANNING) def onConnectServer(self, ip, port): if self.presenter.connectServer(ip, port): logger.debug("connect success") self.setupUi_connected() self.tipPupup.makeInfoText(text.CONNECTED_TIPS) else: logger.error("connect error") self.tipPupup.makeErrorText(text.TCP_CLIENT_CONNECT_ERROR) def onConnectResult(self, result, address, errorString): if self.progressDialog.isActiveWindow(): self.progressDialog.cancel() if not result: logger.debug("Connect ble device error: %s" % errorString) self.tipPupup.makeErrorText(text.CONNECT_BLE_ERROR) return logger.debug("Connect ble device %s OK" % address) #self.tipPupup.makeInfoText(text.CONNECT_BLE_OK) self.ui.scanBtn.setEnabled(False) self.ui.scanBtn.setText(text.TEXT_ON_NOT_SCANNING) self.ui.bleListWgt.setEnabled(False) self.ui.bleListWgt.setCurAddress(address) self.ui.sockTab.addSockForm(self.presenter.getTcpClient()) def onBleDevice(self, name, address, rssi): #logger.debug("%s[%s]\t\t%d" % (name, address, rssi)) self.ui.bleListWgt.addBleDevice(name, address, rssi) def onBleListWgtPopMenu(self, point): if self.ui.bleListWgt.currentItem(): self.ui.bleListWgt.popMenu.exec_(self.ui.bleListWgt.mapToGlobal(point)) def onCpMacAddress(self): curItem = self.ui.bleListWgt.currentItem() if not curItem: return QtGui.QApplication.clipboard().setText(curItem.getAddress()) self.tipPupup.makeInfoText(text.CP_MAC_OK) def closeEvent(self, e): self.presenter.stopTcpClient() e.accept()
class MainWindow(QtGui.QMainWindow): def __init__(self): QtGui.QMainWindow.__init__(self) self.ui = Ui_MainWindow() self.setupUi() self.tipPupup = TipPupup() self.presenter = MainWindowPresenter(self) self.setupSignals() def setupUi(self): self.ui.setupUi(self) self.ui.sockTree.init() self.ui.qrcodeView.setPixmap(QtGui.QPixmap(config.QRCODE_ZFB)) self.ui.githubBtn.setIcon(QtGui.QIcon(config.GITHUB_LOGO)) self.setWindowIcon(QtGui.QIcon(config.LOGO_ICON)) def setupSignals(self): self.ui.createBtn.clicked.connect(self.onCreateBtnClicked) self.ui.removeBtn.clicked.connect(self.onRemoveBtnClicked) self.ui.githubBtn.clicked.connect(self.onGithubBtnClicked) #self.ui.sockTree.itemClicked.connect(self.onSockItemClicked) self.ui.sockTab.currentChanged.connect(self.onSockTabClicked) self.connect(sigObject, signals.SIG_REMOTE_TCP_CLIENT_CONNECTED, self.onRemoteTcpClientConnected) #self.connect(sigObject, signals.SIG_REMOTE_CLOSED, self.onRemoteClosed) self.connect(sigObject, signals.SIG_DATA_RECVED, self.onDataRecved) self.connect(sigObject, signals.SIG_REMOVE_SOCK_TAB, self.onRemoveSockTab) self.connect(self.presenter.createTcpServerDialog, signals.SIG_CREATE_TCP_SERVER, self.onCreateTcpServer) self.connect(self.presenter.createTcpClientDialog, signals.SIG_CREATE_TCP_CLIENT, self.onCreateTcpClient) self.connect(self.presenter.createUdpServerDialog, signals.SIG_CREATE_UDP_SERVER, self.onCreateUdpServer) self.connect(self.presenter.createUdpClientDialog, signals.SIG_CREATE_UDP_CLIENT, self.onCreateUdpClient) def onCreateTcpServer(self, ip, port): self.presenter.createTcpServer(ip, port) def onCreateTcpClient(self, ip, port): self.presenter.createTcpClient(ip, port) def onCreateUdpClient(self, ip, remoteIp, localIp): self.presenter.createUdpClient(ip, remoteIp, localIp) def onCreateUdpServer(self, ip, port): self.presenter.createUdpServer(ip, port) def onDataRecved(self, _id, data): logger.debug("id=%d, data=%s" % (_id, data)) self.ui.sockTab.addData(_id, data, config.RECV_TAG) # def onRemoteClosed(self, _id, parentId): # logger.debug("REMOTE CLOSED") #self.ui.sockTree.removeSocketItemById(_id) #self.presenter.removeRemoteTcpClientById(_id, parentId) def onRemoteTcpClientConnected(self, tcpClient, serverId, _id, address, port): self.ui.sockTree.addRemoteTcpClient(serverId, _id, address, port) self.ui.sockTab.addRemoteTcpClient(tcpClient, _id, "%s:%d" % (address, port)) def onCreateBtnClicked(self): createDialog = self.presenter.getCreateDialog( self.ui.sockTree.currentItem()) if createDialog is None: return createDialog.show_() def onSockItemClicked(self, sockItem, i): self.presenter.onSockItemClicked(sockItem) def onSockTabClicked(self, index): logger.debug("current sockTab index is %d" % index) self.ui.sockTab.clearUnreadIcon(index) def onGithubBtnClicked(self): self.presenter.openGithubSite() def onRemoveBtnClicked(self): self.onRemoveSockTab(None) def onRemoveSockTab(self, _id): self.presenter.removeSockTabById(_id) def onCreateTcpServerResult(self, _id, address): if _id > 0: self.ui.sockTree.addTcpServer(_id, address) else: self.tipPupup.makeErrorText(error.TCP_CREATE_FAILED) def onCreateUdpServerResult(self, udpServer, _id, address): if _id > 0: self.ui.sockTree.addUdpServer(_id, address) self.ui.sockTab.addUdpServer(udpServer, _id, address) else: self.tipPupup.makeErrorText(error.CREATE_UDP_SERVER_FAILED) def onCreateTcpClientResult(self, tcpClient, _id, address): if _id > 0: self.ui.sockTree.addLocalTcpClient(_id, address) self.ui.sockTab.addTcpClient(tcpClient, _id, address) else: self.tipPupup.makeErrorText(error.TCP_CLIENT_CONNECT_ERROR) def onCreateUdpClientResult(self, udpClient, _id, address): if _id > 0: self.ui.sockTree.addLocalUdpClient(_id, address) self.ui.sockTab.addUdpClient(udpClient, _id, address) else: self.tipPupup.makeErrorText(error.UDP_CLIENT_CONNECT_ERROR) def closeEvent(self, e): self.presenter.removeAllSockets() e.accept()
class MainWindow(QtGui.QMainWindow): def __init__(self): QtGui.QMainWindow.__init__(self) self.ui = Ui_MainWindow() self.setupUi() self.tipPupup = TipPupup() self.presenter = MainWindowPresenter(self) self.setupSignals() def setupUi(self): self.ui.setupUi(self) self.ui.sockTree.init() self.ui.qrcodeView.setPixmap(QtGui.QPixmap(config.QRCODE_ZFB)) self.ui.githubBtn.setIcon(QtGui.QIcon(config.GITHUB_LOGO)) self.setWindowIcon(QtGui.QIcon(config.LOGO_ICON)) def setupSignals(self): self.ui.createBtn.clicked.connect(self.onCreateBtnClicked) self.ui.removeBtn.clicked.connect(self.onRemoveBtnClicked) self.ui.githubBtn.clicked.connect(self.onGithubBtnClicked) #self.ui.sockTree.itemClicked.connect(self.onSockItemClicked) self.ui.sockTab.currentChanged.connect(self.onSockTabClicked) self.connect(sigObject, signals.SIG_REMOTE_TCP_CLIENT_CONNECTED, self.onRemoteTcpClientConnected) #self.connect(sigObject, signals.SIG_REMOTE_CLOSED, self.onRemoteClosed) self.connect(sigObject, signals.SIG_DATA_RECVED, self.onDataRecved) self.connect(sigObject, signals.SIG_REMOVE_SOCK_TAB, self.onRemoveSockTab) self.connect(self.presenter.createTcpServerDialog, signals.SIG_CREATE_TCP_SERVER, self.onCreateTcpServer) self.connect(self.presenter.createTcpClientDialog, signals.SIG_CREATE_TCP_CLIENT, self.onCreateTcpClient) self.connect(self.presenter.createUdpServerDialog, signals.SIG_CREATE_UDP_SERVER, self.onCreateUdpServer) self.connect(self.presenter.createUdpClientDialog, signals.SIG_CREATE_UDP_CLIENT, self.onCreateUdpClient) def onCreateTcpServer(self, ip, port): self.presenter.createTcpServer(ip, port) def onCreateTcpClient(self, ip, port): self.presenter.createTcpClient(ip, port) def onCreateUdpClient(self, ip, remoteIp, localIp): self.presenter.createUdpClient(ip, remoteIp, localIp) def onCreateUdpServer(self, ip, port): self.presenter.createUdpServer(ip, port) def onDataRecved(self, _id, data): logger.debug("id=%d, data=%s" % (_id, data)) self.ui.sockTab.addData(_id, data, config.RECV_TAG) # def onRemoteClosed(self, _id, parentId): # logger.debug("REMOTE CLOSED") #self.ui.sockTree.removeSocketItemById(_id) #self.presenter.removeRemoteTcpClientById(_id, parentId) def onRemoteTcpClientConnected(self, tcpClient, serverId, _id, address, port): self.ui.sockTree.addRemoteTcpClient(serverId, _id, address, port) self.ui.sockTab.addRemoteTcpClient(tcpClient, _id, "%s:%d" % (address, port)) def onCreateBtnClicked(self): createDialog = self.presenter.getCreateDialog(self.ui.sockTree.currentItem()) if createDialog is None: return createDialog.show_() def onSockItemClicked(self, sockItem, i): self.presenter.onSockItemClicked(sockItem) def onSockTabClicked(self, index): logger.debug("current sockTab index is %d" % index) self.ui.sockTab.clearUnreadIcon(index) def onGithubBtnClicked(self): self.presenter.openGithubSite() def onRemoveBtnClicked(self): self.onRemoveSockTab(None) def onRemoveSockTab(self, _id): self.presenter.removeSockTabById(_id) def onCreateTcpServerResult(self, _id, address): if _id > 0: self.ui.sockTree.addTcpServer(_id, address) else: self.tipPupup.makeErrorText(error.TCP_CREATE_FAILED) def onCreateUdpServerResult(self, udpServer, _id, address): if _id > 0: self.ui.sockTree.addUdpServer(_id, address) self.ui.sockTab.addUdpServer(udpServer, _id, address) else: self.tipPupup.makeErrorText(error.CREATE_UDP_SERVER_FAILED) def onCreateTcpClientResult(self, tcpClient, _id, address): if _id > 0: self.ui.sockTree.addLocalTcpClient(_id, address) self.ui.sockTab.addTcpClient(tcpClient, _id, address) else: self.tipPupup.makeErrorText(error.TCP_CLIENT_CONNECT_ERROR) def onCreateUdpClientResult(self, udpClient, _id, address): if _id > 0: self.ui.sockTree.addLocalUdpClient(_id, address) self.ui.sockTab.addUdpClient(udpClient, _id, address) else: self.tipPupup.makeErrorText(error.UDP_CLIENT_CONNECT_ERROR) def closeEvent(self, e): self.presenter.removeAllSockets() e.accept()