def openfile(self, filepath=''): """open file""" action = self.sender() if isinstance(action, QtGui.QAction) and os.path.isfile(action.text()): filepath = action.text() if not os.path.isfile(filepath): filepath = QtGui.QFileDialog.getOpenFileName(self, caption='请选择698日志文件', filter='*') if filepath: print('filepath: ', filepath) save_config = master_config.MasterConfig() save_config.add_last_file(filepath) save_config.commit() file_size = os.path.getsize(filepath) if file_size > 3000000: reply = QtGui.QMessageBox.question(self, '警告', '打开大型文件会使用较长时间,确定打开吗?',\ QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.No) if reply != QtGui.QMessageBox.Yes: return self.proc_bar.setVisible(True) self.open_action.setEnabled(False) self.setAcceptDrops(False) self.proc_l.setText('处理中') self.setWindowTitle('698日志解析工具_{ver} - {file}'.\ format(ver=config.MASTER_WINDOW_TITLE_ADD, file=filepath)) self.file_now = filepath threading.Thread(target=self.read_file,\ args=(filepath,)).start()
def __init__(self): super(TransWindow, self).__init__() qss_file = open( os.path.join(config.SOFTWARE_PATH, 'styles/white_blue.qss')).read() self.setStyleSheet(qss_file) if config.IS_USE_PYSIDE: self.setup_ui() self.proc_bar.setVisible(False) self.show_level_cb.setChecked(True) self.auto_wrap_cb.setChecked(False) apply_config = master_config.MasterConfig() file_list = apply_config.get_last_file()[::-1] for file_name in file_list: self.file_action = QtWidgets.QAction('%s' % file_name, self) self.file_menu.addAction(self.file_action) self.file_action.triggered.connect(self.openfile) font_size = apply_config.get_font_size() self.input_box.set_font_size(font_size) self.update_wrap_mode() self.setAcceptDrops(True) self.input_box.cursorPositionChanged.connect(self.cursor_changed) self.input_box.textChanged.connect(self.take_input_text) self.msg_box.textChanged.connect(self.start_trans) self.find_last_b.clicked.connect(lambda: self.find_last(True)) self.find_next_b.clicked.connect(lambda: self.find_next(True)) self.msg_next_b.clicked.connect(lambda: self.jump_to_msg('next')) self.msg_priv_b.clicked.connect(lambda: self.jump_to_msg('priv')) self.input_zoom_in_b.clicked.connect(self.input_box.zoomIn) self.input_zoom_out_b.clicked.connect(self.input_box.zoomOut) self.output_zoom_in_b.clicked.connect(self.output_box.zoomIn) self.output_zoom_out_b.clicked.connect(self.output_box.zoomOut) self.output_copy_b.clicked.connect(self.copy_to_clipboard) self.auto_wrap_cb.clicked.connect(self.update_wrap_mode) self.show_level_cb.clicked.connect(self.start_trans) self.show_dtype_cb.clicked.connect(self.start_trans) self.always_top_cb.clicked.connect(self.set_always_top) self.open_action.triggered.connect(self.openfile) self.reload_action.triggered.connect( lambda: self.openfile(filepath=self.file_now)) self.clear_action.triggered.connect(self.clear_box) self.about_action.triggered.connect(config.ABOUT_WINDOW.show) self.find_action.triggered.connect( lambda: self.find_box.setFocus() or self.find_box.selectAll()) self.next_msg_action.triggered.connect( lambda: self.jump_to_msg('next')) self.priv_msg_action.triggered.connect( lambda: self.jump_to_msg('priv')) self.load_file.connect(self.load_text, QtCore.Qt.QueuedConnection) self.set_progress.connect(self.set_progressbar, QtCore.Qt.QueuedConnection) self.find_box.returnPressed.connect(lambda: self.find_next(False)) self.file_now = '' self.msg_find_dict = [] self.last_selection = (0, 0) self.text_find_list = [] self.last_find_text = ''
def __init__(self): super(CommuDialog, self).__init__() if config.IS_USE_PYSIDE: self.setup_ui() # fixme: CommuDialogUi中已经默认setup_ui了这里可以不用设置 self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) self.master_addr_change_b.clicked.connect(lambda: self.master_addr_box.setText('%02X'%random.randint(0, 255))) self.master_addr_box.textChanged.connect(self.set_master_addr) self.serial_combo.addItems(communication.serial_com_scan()) self.serial_link_b.clicked.connect(self.connect_serial) self.serial_cut_b.clicked.connect(self.cut_serial) self.frontend_link_b.clicked.connect(self.connect_frontend) self.frontend_cut_b.clicked.connect(self.cut_frontend) self.server_link_b.clicked.connect(self.connect_server) self.server_cut_b.clicked.connect(self.cut_server) self.close_b.clicked.connect(self.close) # apply config apply_config = master_config.MasterConfig() try: index = communication.serial_com_scan().index(apply_config.get_serial_com()) self.serial_combo.setCurrentIndex(index) except ValueError: pass self.serial_baud.setCurrentIndex(apply_config.get_serial_baud_index()) self.master_addr_box.setText(apply_config.get_master_addr()) self.frontend_box.setText(apply_config.get_frontend_ip()) self.server_box.setText(apply_config.get_server_port()) self.master_addr_filter_cb.setChecked(True) self.close_b.setFocus() self.is_serial_connect = False self.is_frontend_connect = False self.is_server_connect = False
def apply_config(self): """apply config""" apply_config = master_config.MasterConfig() tmn_list = eval(apply_config.get_tmn_list()) for tmn in tmn_list: self.add_tmn_table_row(is_checked=tmn[0], tmn_addr=tmn[1],\ logic_addr=tmn[2], chan_index=tmn[3]) self.always_top_cb.setChecked(apply_config.get_windows_top()) self.quick_read_panel.oad_box.setText(apply_config.get_oad_r())
def closeEvent(self, event): """close event""" # save config save_config = master_config.MasterConfig() save_config.set_font_size(self.input_box.get_font_size()) save_config.commit() # quit event.accept() os._exit(0)
def closeEvent(self, event): """close event""" self.set_master_addr() # save config save_config = master_config.MasterConfig() save_config.set_serial_com(self.serial_combo.currentText()) save_config.set_serial_band_index(self.serial_baud.currentIndex()) save_config.set_master_addr(self.master_addr_box.text()) save_config.set_serial_baud_index(self.serial_baud.currentIndex()) save_config.set_frontend_ip(self.frontend_box.text()) save_config.set_server_port(self.server_box.text()) save_config.commit() event.accept()
def closeEvent(self, event): """close event""" # save config save_config = master_config.MasterConfig() tmn_list = [] for row_num in range(self.tmn_table.rowCount()): tmn_list.append([self.tmn_table.cellWidget(row_num, 0).isChecked(),\ self.tmn_table.item(row_num, 1).text(),\ self.tmn_table.cellWidget(row_num, 2).value(),\ self.tmn_table.cellWidget(row_num, 3).currentIndex()]) save_config.set_tmn_list(tmn_list) save_config.set_windows_top(self.always_top_cb.isChecked()) save_config.set_oad_r(self.quick_read_panel.oad_box.text().replace(' ', '')) save_config.commit() # quit config.COMMU.quit() event.accept() os._exit(0)