Example #1
0
 def __init__(self, parent=None):
     super(ExportCsvDialog, self).__init__(parent)
     self.ui = uic.loadUi(get_ui_file('export_csv_dialog.ui'), self)
     # Read the last-used lists
     self.settings = self.parent().window().settings
     self.settings.beginGroup('export_csv')
     try:
         self.delimiter = self.settings.value('delimiter',
                                              DEFAULT_DELIMITER)
         self.lineterminator = self.settings.value('lineterminator',
                                                   DEFAULT_LINETERMINATOR)
         self.quotechar = self.settings.value('quotechar',
                                              DEFAULT_QUOTECHAR)
         self.quoting = int(self.settings.value('quoting', DEFAULT_QUOTING))
         self.header_row = bool(
             self.settings.value('header_row', DEFAULT_HEADER_ROW))
         self.timestamp_format = self.settings.value(
             'timestamp_format', DEFAULT_TIMESTAMP_FORMAT)
     finally:
         self.settings.endGroup()
     # Connect up signals
     self.ui.timestamp_default_button.clicked.connect(
         self.timestamp_default_clicked)
     self.ui.timestamp_format_edit.textChanged.connect(
         self.timestamp_format_changed)
     self.timestamp_format_changed()
Example #2
0
 def __init__(self, parent=None):
     super(MainWindow, self).__init__(parent)
     self.dummy_logger = None
     self.ui = uic.loadUi(get_ui_file('main_window.ui'), self)
     # Read configuration
     self.settings = QtCore.QSettings()
     self.settings.beginGroup('main_window')
     try:
         self.resize(self.settings.value('size', QtCore.QSize(640, 480)))
         self.move(self.settings.value('position', QtCore.QPoint(100, 100)))
     finally:
         self.settings.endGroup()
     # Configure status bar elements
     self.ui.progress_label = QtGui.QLabel('')
     self.statusBar().addWidget(self.ui.progress_label)
     self.progress_index = 0
     # Connect up signals to methods
     self.ui.mdi_area.subWindowActivated.connect(self.window_changed)
     self.ui.quit_action.setIcon(get_icon('application-exit'))
     self.ui.about_action.triggered.connect(self.about)
     self.ui.about_action.setIcon(get_icon('help-about'))
     self.ui.about_qt_action.triggered.connect(self.about_qt)
     self.ui.about_qt_action.setIcon(get_icon('help-about'))
     self.ui.connect_action.setIcon(get_icon('document-open'))
     self.ui.connect_action.triggered.connect(self.connect_logger)
     self.ui.close_action.setIcon(get_icon('window-close'))
     self.ui.close_action.triggered.connect(self.close_file)
     self.ui.export_action.setIcon(get_icon('x-office-document'))
     self.ui.export_action.triggered.connect(self.export_file)
     self.ui.refresh_action.setIcon(get_icon('view-refresh'))
     self.ui.refresh_action.triggered.connect(self.refresh_window)
     self.ui.status_bar_action.triggered.connect(self.toggle_status)
     self.ui.view_menu.aboutToShow.connect(self.update_status)
 def __init__(self, parent=None):
     super(ConnectDialog, self).__init__(parent)
     self.ui = uic.loadUi(get_ui_file('connect_dialog.ui'), self)
     # Read the last-used lists
     self.settings = self.parent().settings
     self.settings.beginGroup('last_used')
     try:
         try:
             import serial.tools.list_ports
             com_ports = [
                 path for (path, name, hw) in sorted(
                     serial.tools.list_ports.comports(), key=itemgetter(0))
             ]
         except ImportError:
             com_ports = []
         count = self.settings.beginReadArray('com_ports')
         try:
             for i in range(count):
                 self.settings.setArrayIndex(i)
                 com_port = self.settings.value('port')
                 if com_port in com_ports:
                     com_ports.remove(com_port)
                 com_ports.insert(0, com_port)
         finally:
             self.settings.endArray()
         for com_port in com_ports:
             self.ui.com_port_combo.addItem(com_port)
         self.ui.com_port_combo.setEditText(
             self.settings.value('com_port', ''))
     finally:
         self.settings.endGroup()
     # Connect up signals
     self.ui.com_port_combo.editTextChanged.connect(self.com_port_changed)
     self.com_port_changed()
Example #4
0
 def __init__(self, parent=None):
     super(ConnectDialog, self).__init__(parent)
     self.ui = uic.loadUi(get_ui_file('connect_dialog.ui'), self)
     # Read the last-used lists
     self.settings = self.parent().settings
     self.settings.beginGroup('last_used')
     try:
         try:
             import serial.tools.list_ports
             com_ports = [
                 path for (path, name, hw) in sorted(
                     serial.tools.list_ports.comports(), key=itemgetter(0))
                 ]
         except ImportError:
             com_ports = []
         count = self.settings.beginReadArray('com_ports')
         try:
             for i in range(count):
                 self.settings.setArrayIndex(i)
                 com_port = self.settings.value('port')
                 if com_port in com_ports:
                     com_ports.remove(com_port)
                 com_ports.insert(0, com_port)
         finally:
             self.settings.endArray()
         for com_port in com_ports:
             self.ui.com_port_combo.addItem(com_port)
         self.ui.com_port_combo.setEditText(
             self.settings.value('com_port', ''))
     finally:
         self.settings.endGroup()
     # Connect up signals
     self.ui.com_port_combo.editTextChanged.connect(self.com_port_changed)
     self.com_port_changed()
 def __init__(self, parent=None):
     super(ExportExcelDialog, self).__init__(parent)
     self.ui = uic.loadUi(get_ui_file('export_excel_dialog.ui'), self)
     # Read the last-used lists
     self.settings = self.parent().window().settings
     self.settings.beginGroup('export_excel')
     try:
         self.header_row = bool(self.settings.value('header_row', DEFAULT_HEADER_ROW))
         self.row_colors = bool(self.settings.value('row_colors', DEFAULT_ROW_COLORS))
     finally:
         self.settings.endGroup()
 def __init__(self, data_logger):
     super(DataLoggerWindow, self).__init__(None)
     self.ui = uic.loadUi(get_ui_file('data_logger_window.ui'), self)
     self.ui.bottles_view.setModel(DataLoggerModel(data_logger))
     for col in range(self.ui.bottles_view.model().columnCount()):
         self.ui.bottles_view.resizeColumnToContents(col)
     self.ui.bottles_view.doubleClicked.connect(
         self.bottles_view_double_clicked)
     # TODO What about pressing Enter instead of double clicking?
     self.setWindowTitle(
         '%s on %s' % (data_logger.id, data_logger.port.port))
     self.exporter = DataLoggerExporter(self)
 def __init__(self, data_logger):
     super(DataLoggerWindow, self).__init__(None)
     self.ui = uic.loadUi(get_ui_file('data_logger_window.ui'), self)
     self.ui.bottles_view.setModel(DataLoggerModel(data_logger))
     for col in range(self.ui.bottles_view.model().columnCount()):
         self.ui.bottles_view.resizeColumnToContents(col)
     self.ui.bottles_view.doubleClicked.connect(
         self.bottles_view_double_clicked)
     # TODO What about pressing Enter instead of double clicking?
     self.setWindowTitle('%s on %s' %
                         (data_logger.id, data_logger.port.port))
     self.exporter = DataLoggerExporter(self)
 def __init__(self, parent=None):
     super(ExportCsvDialog, self).__init__(parent)
     self.ui = uic.loadUi(get_ui_file('export_csv_dialog.ui'), self)
     # Read the last-used lists
     self.settings = self.parent().window().settings
     self.settings.beginGroup('export_csv')
     try:
         self.delimiter = self.settings.value('delimiter', DEFAULT_DELIMITER)
         self.lineterminator = self.settings.value('lineterminator', DEFAULT_LINETERMINATOR)
         self.quotechar = self.settings.value('quotechar', DEFAULT_QUOTECHAR)
         self.quoting = int(self.settings.value('quoting', DEFAULT_QUOTING))
         self.header_row = bool(self.settings.value('header_row', DEFAULT_HEADER_ROW))
         self.timestamp_format = self.settings.value('timestamp_format', DEFAULT_TIMESTAMP_FORMAT)
     finally:
         self.settings.endGroup()
     # Connect up signals
     self.ui.timestamp_default_button.clicked.connect(self.timestamp_default_clicked)
     self.ui.timestamp_format_edit.textChanged.connect(self.timestamp_format_changed)
     self.timestamp_format_changed()
Example #9
0
 def __init__(self, bottle):
     super(BottleWindow, self).__init__(None)
     self.ui = uic.loadUi(get_ui_file('bottle_window.ui'), self)
     self.ui.readings_view.setModel(BottleModel(DataAnalyzer(bottle, delta=True)))
     for col in range(self.ui.readings_view.model().columnCount()):
         self.ui.readings_view.resizeColumnToContents(col)
     self.exporter = BottleExporter(self)
     if matplotlib:
         self.figure = Figure(figsize=(5.0, 5.0), facecolor='w', edgecolor='w')
         self.canvas = FigureCanvas(self.figure)
         self.axes = self.figure.add_subplot(111)
         self.ui.splitter.addWidget(self.canvas)
         self.redraw_timer = QtCore.QTimer()
         self.redraw_timer.setInterval(200) # msecs
         self.redraw_timer.timeout.connect(self.redraw_timeout)
         self.ui.splitter.splitterMoved.connect(self.splitter_moved)
     self.refresh_edits()
     self.setWindowTitle('Bottle %s' % bottle.serial)
     self.ui.absolute_check.toggled.connect(self.absolute_toggled)
     self.ui.points_spin.valueChanged.connect(self.points_changed)
Example #10
0
 def __init__(self, bottle):
     super(BottleWindow, self).__init__(None)
     self.ui = uic.loadUi(get_ui_file('bottle_window.ui'), self)
     self.ui.readings_view.setModel(
         BottleModel(DataAnalyzer(bottle, delta=True)))
     for col in range(self.ui.readings_view.model().columnCount()):
         self.ui.readings_view.resizeColumnToContents(col)
     self.exporter = BottleExporter(self)
     if matplotlib:
         self.figure = Figure(figsize=(5.0, 5.0),
                              facecolor='w',
                              edgecolor='w')
         self.canvas = FigureCanvas(self.figure)
         self.axes = self.figure.add_subplot(111)
         self.ui.splitter.addWidget(self.canvas)
         self.redraw_timer = QtCore.QTimer()
         self.redraw_timer.setInterval(200)  # msecs
         self.redraw_timer.timeout.connect(self.redraw_timeout)
         self.ui.splitter.splitterMoved.connect(self.splitter_moved)
     self.refresh_edits()
     self.setWindowTitle('Bottle %s' % bottle.serial)
     self.ui.absolute_check.toggled.connect(self.absolute_toggled)
     self.ui.points_spin.valueChanged.connect(self.points_changed)
Example #11
0
 def __init__(self, parent=None):
     super(MainWindow, self).__init__(parent)
     self.dummy_logger = None
     self.ui = uic.loadUi(get_ui_file('main_window.ui'), self)
     # Read configuration
     self.settings = QtCore.QSettings()
     self.settings.beginGroup('main_window')
     try:
         self.resize(
             self.settings.value(
                 'size', QtCore.QSize(640, 480)))
         self.move(
             self.settings.value(
                 'position', QtCore.QPoint(100, 100)))
     finally:
         self.settings.endGroup()
     # Configure status bar elements
     self.ui.progress_label = QtGui.QLabel('')
     self.statusBar().addWidget(self.ui.progress_label)
     self.progress_index = 0
     # Connect up signals to methods
     self.ui.mdi_area.subWindowActivated.connect(self.window_changed)
     self.ui.quit_action.setIcon(get_icon('application-exit'))
     self.ui.about_action.triggered.connect(self.about)
     self.ui.about_action.setIcon(get_icon('help-about'))
     self.ui.about_qt_action.triggered.connect(self.about_qt)
     self.ui.about_qt_action.setIcon(get_icon('help-about'))
     self.ui.connect_action.setIcon(get_icon('document-open'))
     self.ui.connect_action.triggered.connect(self.connect_logger)
     self.ui.close_action.setIcon(get_icon('window-close'))
     self.ui.close_action.triggered.connect(self.close_file)
     self.ui.export_action.setIcon(get_icon('x-office-document'))
     self.ui.export_action.triggered.connect(self.export_file)
     self.ui.refresh_action.setIcon(get_icon('view-refresh'))
     self.ui.refresh_action.triggered.connect(self.refresh_window)
     self.ui.status_bar_action.triggered.connect(self.toggle_status)
     self.ui.view_menu.aboutToShow.connect(self.update_status)