Ejemplo n.º 1
0
    def __init__(self, **kwargs):
        gtk.VBox.__init__(self, **kwargs)

        self._instruments = qt.instruments

        self._add_frame = gtk.Frame()
        self._add_frame.set_label(_L('Create'))

        name_label = gtk.Label(_L('Name'))
        self._name_entry = gtk.Entry()
        self._name_entry.connect('changed', self._name_changed_cb)

        type_label = gtk.Label(_L('Type'))
        self._type_dropdown = dropdowns.InstrumentTypeDropdown()
        self._type_dropdown.connect('changed', self._dropdown_changed_cb)
        self._add_button = gtk.Button(_L('Add'))
        self._add_button.connect('clicked', self._add_clicked_cb)
        self._add_button.set_sensitive(False)

        gpib_label = gtk.Label(_L('GPIB')) #not necessary to have _L
        self._gpib_entry = gtk.Entry()        

        self._argument_table = ArgumentTable(3, 2, exclude=['self', 'name'])
        self._argument_table.attach(name_label, 0, 1, 0, 1)
        self._argument_table.attach(self._name_entry, 1, 2, 0, 1)
        self._argument_table.attach(type_label, 0, 1, 1, 2)
        self._argument_table.attach(self._type_dropdown, 1, 2, 1, 2)

        self._argument_table.attach(gpib_label, 0, 1, 2, 3)
        self._argument_table.attach(self._gpib_entry, 1, 2, 2, 3)


        vbox = gui.pack_vbox([
            self._argument_table,
            self._add_button
            ], False, False)
        vbox.set_border_width(4)
        self._add_frame.add(vbox)

        vbox = gui.pack_vbox([
            self._add_frame,
            ], False,False)
        vbox.set_border_width(4)
        self.add(vbox)

        self.show_all()
Ejemplo n.º 2
0
    def __init__(self, **kwargs):
        gtk.VBox.__init__(self, **kwargs)

        self._instruments = qt.instruments

        self._add_frame = gtk.Frame()
        self._add_frame.set_label(_L('Create'))

        name_label = gtk.Label(_L('Name'))
        self._name_entry = gtk.Entry()
        self._name_entry.connect('changed', self._name_changed_cb)

        type_label = gtk.Label(_L('Type'))
        self._type_dropdown = dropdowns.InstrumentTypeDropdown()
        self._type_dropdown.connect('changed', self._dropdown_changed_cb)
        self._add_button = gtk.Button(_L('Add'))
        self._add_button.connect('clicked', self._add_clicked_cb)
        self._add_button.set_sensitive(False)

        gpib_label = gtk.Label(_L('GPIB'))  #not necessary to have _L
        self._gpib_entry = gtk.Entry()

        self._argument_table = ArgumentTable(3, 2, exclude=['self', 'name'])
        self._argument_table.attach(name_label, 0, 1, 0, 1)
        self._argument_table.attach(self._name_entry, 1, 2, 0, 1)
        self._argument_table.attach(type_label, 0, 1, 1, 2)
        self._argument_table.attach(self._type_dropdown, 1, 2, 1, 2)

        self._argument_table.attach(gpib_label, 0, 1, 2, 3)
        self._argument_table.attach(self._gpib_entry, 1, 2, 2, 3)

        vbox = gui.pack_vbox([self._argument_table, self._add_button], False,
                             False)
        vbox.set_border_width(4)
        self._add_frame.add(vbox)

        vbox = gui.pack_vbox([
            self._add_frame,
        ], False, False)
        vbox.set_border_width(4)
        self.add(vbox)

        self.show_all()
Ejemplo n.º 3
0
    def __init__(self, **kwargs):
        gtk.VBox.__init__(self, **kwargs)

        self._instruments = qt.instruments
        self._frontpanels = qt.frontpanels

        self._action_frame = gtk.Frame()
        self._action_frame.set_label(_L('Manage'))

        self._ins_dropdown = dropdowns.InstrumentDropdown()

        self._frontpanel_button = gtk.Button(_L('Frontpanel'))
        self._frontpanel_button.connect('clicked', self._fp_clicked_cb)

        self._reload_button = gtk.Button(_L('Reload'))
        self._reload_button.connect('clicked', self._reload_clicked_cb)

        self._remove_button = gtk.Button(_L('Remove'))
        self._remove_button.connect('clicked', self._remove_clicked_cb)

        vbox = gui.pack_vbox([
            self._ins_dropdown,
            gui.pack_hbox([
                self._frontpanel_button,
                self._reload_button,
                self._remove_button
                ], True, True)
            ], False, False)
        vbox.set_border_width(4)
        self._action_frame.add(vbox)

        vbox = gui.pack_vbox([
            self._action_frame
            ], False,False)
        vbox.set_border_width(4)

        self.add(vbox)

        self.show_all()
Ejemplo n.º 4
0
    def __init__(self, **kwargs):
        gtk.VBox.__init__(self, **kwargs)

        self._instruments = qt.instruments
        self._frontpanels = qt.frontpanels

        self._action_frame = gtk.Frame()
        self._action_frame.set_label(_L('Manage'))

        self._ins_dropdown = dropdowns.InstrumentDropdown()

        self._frontpanel_button = gtk.Button(_L('Frontpanel'))
        self._frontpanel_button.connect('clicked', self._fp_clicked_cb)

        self._reload_button = gtk.Button(_L('Reload'))
        self._reload_button.connect('clicked', self._reload_clicked_cb)

        self._remove_button = gtk.Button(_L('Remove'))
        self._remove_button.connect('clicked', self._remove_clicked_cb)

        vbox = gui.pack_vbox([
            self._ins_dropdown,
            gui.pack_hbox([
                self._frontpanel_button, self._reload_button,
                self._remove_button
            ], True, True)
        ], False, False)
        vbox.set_border_width(4)
        self._action_frame.add(vbox)

        vbox = gui.pack_vbox([self._action_frame], False, False)
        vbox.set_border_width(4)

        self.add(vbox)

        self.show_all()
Ejemplo n.º 5
0
    def __init__(self, axis):
        gtk.Frame.__init__(self, 'Axis %s' % axis)
        self._axis = axis
        self._plot = None
        self._ignore_changes = False

        self._label_entry = gtk.Entry()
        self._label_but = gtk.Button(_L('Set'))
        self._label_but.connect('clicked', self._label_clicked_cb)
        self._label_entry.connect('activate', self._label_clicked_cb)

        self._min_range = gtk.Entry()
        self._min_range.set_width_chars(10)
        self._max_range = gtk.Entry()
        self._max_range.set_width_chars(10)
        self._range_but = gtk.Button(_L('Set'))
        self._range_but.connect('clicked', self._range_clicked_cb)
        self._min_range.connect('activate', self._range_clicked_cb)
        self._max_range.connect('activate', self._range_clicked_cb)

        self._logcheck = gtk.CheckButton('Log')
        self._logcheck.set_active(False)
        self._logcheck.connect('toggled', self._log_toggled_cb)

        vbox = gui.pack_vbox([
            gui.pack_hbox([
                gtk.Label(_L('Label')),
                self._label_entry,
                self._label_but], True, True),
            gui.pack_hbox([
                self._logcheck,
                gtk.Label(_L('Range')),
                self._min_range,
                self._max_range,
                self._range_but], True, True),
            ], False, False)

        self.add(vbox)
Ejemplo n.º 6
0
    def __init__(self, axis):
        gtk.Frame.__init__(self, 'Axis %s' % axis)
        self._axis = axis
        self._plot = None
        self._ignore_changes = False

        self._label_entry = gtk.Entry()
        self._label_but = gtk.Button(_L('Set'))
        self._label_but.connect('clicked', self._label_clicked_cb)
        self._label_entry.connect('activate', self._label_clicked_cb)

        self._min_range = gtk.Entry()
        self._min_range.set_width_chars(10)
        self._max_range = gtk.Entry()
        self._max_range.set_width_chars(10)
        self._range_but = gtk.Button(_L('Set'))
        self._range_but.connect('clicked', self._range_clicked_cb)
        self._min_range.connect('activate', self._range_clicked_cb)
        self._max_range.connect('activate', self._range_clicked_cb)

        self._logcheck = gtk.CheckButton('Log')
        self._logcheck.set_active(False)
        self._logcheck.connect('toggled', self._log_toggled_cb)

        vbox = gui.pack_vbox([
            gui.pack_hbox(
                [gtk.Label(_L('Label')), self._label_entry, self._label_but],
                True, True),
            gui.pack_hbox([
                self._logcheck,
                gtk.Label(_L('Range')), self._min_range, self._max_range,
                self._range_but
            ], True, True),
        ], False, False)

        self.add(vbox)
Ejemplo n.º 7
0
    def __init__(self):
        qtwindow.QTWindow.__init__(self, 'gnuplot', 'Gnuplot Tweak')
        self.connect("delete-event", self._delete_event_cb)

        self._ignore_changes = False
        self._current_plot = None
        self._plot_state = {}

        self._plot_dropdown = dropdowns.NamedListDropdown(qt.plots)
        self._plot_dropdown.connect('changed', self._plot_changed_cb)

        self._styles_dropdown = dropdowns.StringListDropdown([])
        self._styles_dropdown.connect('changed', self._style_changed_cb)

        self._maxpoints_entry = gtk.Entry()
        self._maxpoints_but = gtk.Button(_L('Set'))
        self._maxpoints_but.connect('clicked', self._maxpoints_clicked_cb)
        self._maxpoints_entry.connect('activate', self._maxpoints_clicked_cb)

        self._maxtraces_entry = gtk.Entry()
        self._maxtraces_but = gtk.Button(_L('Set'))
        self._maxtraces_but.connect('clicked', self._maxtraces_clicked_cb)
        self._maxtraces_entry.connect('activate', self._maxtraces_clicked_cb)

        self._mintime_entry = gtk.Entry()
        self._mintime_but = gtk.Button(_L('Set'))
        self._mintime_but.connect('clicked', self._mintime_clicked_cb)
        self._mintime_entry.connect('activate', self._mintime_clicked_cb)

        self._legend_check = gtk.CheckButton('Legend')
        self._legend_check.set_active(False)
        self._legend_check.connect('toggled', self._legend_toggled_cb)
        self._legendpos_dropdown = dropdowns.StringListDropdown([])
        self._legendpos_dropdown.connect('changed', self._legendpos_changed_cb)

        self._palette_dropdown = dropdowns.StringListDropdown([])
        self._palette_dropdown.connect('changed', self._palette_changed_cb)

        self._gamma_hid = None
        self._gamma_spin = gtk.SpinButton()
        self._gamma_spin.set_range(0.0, 5.0)
        self._gamma_spin.set_digits(2)
        self._gamma_spin.set_increments(0.01, 0.1)
        self._gamma_spin.set_value(1)
        self._gamma_spin.connect('changed', self._gamma_changed_cb)

        self._save_as_frame = gtk.Frame(_L('Save as'))
        list = ['']
        self._save_as_dropdown = dropdowns.StringListDropdown(list)

        self._filename_entry = gtk.Entry()
        self._save_button = gtk.Button(_L('Save'))
        self._save_button.connect('clicked', self._save_clicked_cb)

        vbox = gui.pack_vbox([
            gui.pack_hbox([
                gtk.Label(_L('Filename')),
                self._filename_entry,
                self._save_as_dropdown,
                self._save_button], True, True),
            ], False, False)
        self._save_as_frame.add(vbox)

        self._axis_x = AxisSettings('x')
        self._axis_y = AxisSettings('y')
        self._axis_z = AxisSettings('z')
        self._axis_cb = AxisSettings('cb')

        self._autorange_xy = gtk.Button(_L('Autorange XY'))
        self._autorange_xy.connect('clicked', self._autorange_xyz_cb, False)
        self._autorange_xyz = gtk.Button(_L('Autorange XYZ'))
        self._autorange_xyz.connect('clicked', self._autorange_xyz_cb, True)

        self._clear_button = gtk.Button(_L('Clear'))
        self._clear_button.connect('clicked', self._clear_clicked_cb)

        self._del_button = gtk.Button(_L('Delete'))
        self._del_button.connect('clicked', self._del_clicked_cb)

        vbox = gui.pack_vbox([
            gui.pack_hbox([
                gtk.Label(_L('Plot')),
                self._plot_dropdown,
                self._clear_button,
                self._del_button], True, True),
            gui.pack_hbox([
                gtk.Label(_L('Style')),
                self._styles_dropdown], True, True),
            gui.pack_hbox([
                self._legend_check,
                self._legendpos_dropdown], True, True),
            gui.pack_hbox([
                gtk.Label(_L('Max Points')),
                self._maxpoints_entry,
                self._maxpoints_but], True, True),
            gui.pack_hbox([
                gtk.Label(_L('Max Traces')),
                self._maxtraces_entry,
                self._maxtraces_but], True, True),
            gui.pack_hbox([
                gtk.Label(_L('Min Time')),
                self._mintime_entry,
                self._mintime_but], True, True),
            gui.pack_hbox([
                gtk.Label(_L('Palette')),
                self._palette_dropdown,
                gtk.Label(_L('Gamma')),
                self._gamma_spin], True, True),
            self._save_as_frame,
            self._axis_x,
            self._axis_y,
            self._axis_z,
            self._axis_cb,
            gui.pack_hbox([
                self._autorange_xy,
                self._autorange_xyz], True, True),
    	], False, False)
        vbox.set_border_width(4)
        self.add(vbox)

        vbox.show_all()
Ejemplo n.º 8
0
    def __init__(self):
        '''
        Initialization of main window
        '''
        # Default parameters
        self._nfig = 1
        self._hid = 0  # Proxy connect hid
        self._plottype = 'none'
        self._data_obj = None
        self._operations = [
            'None', 'Plot 2D', 'Plot 3D', 'Plot 2D Difference',
            'Plot 3D - horizontal offset', 'Plot 3D - vertical offset',
            'Plot 3D - horizontal difference', 'Plot 3D - vertical difference',
            'Close all'
        ]
        self._cid = 0  # Connect ID for crosshair
        self._xdata = None
        self._ydata = None
        self._x = None
        self._y = None
        self._z = None
        self._offset = None

        # Create a new window
        self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)

        # Set title
        self.window.set_title("QTLab Analysis")

        # Handler for delete_event
        self.window.connect("delete_event", self._delete_event)

        # Border for the window
        self.window.set_border_width(10)

        # Button
        # self.plot2d_button = gtk.Button("Plot XY")
        # self.plot2d_button.connect("clicked", self._plot2d_cb)

        # self.plot3d_button = gtk.Button("Plot XYZ")
        # self.plot3d_button.connect("clicked", self._plot3d_cb)

        self.go_button = gtk.Button("Go")
        self.go_button.connect("clicked", self._go_cb)

        self._dir_entry = gtk.Entry()
        self._dir_entry.connect('activate', self._dir_activate_cb)

        self._dir_button = gtk.Button(_L('Browse'))
        self._dir_button.connect('clicked', self._dir_button_clicked_cb)

        self._dir_hbox = gui.pack_hbox((gtk.Label('Choose filename (*.dat): '),
                                        self._dir_entry, self._dir_button),
                                       True, True)

        # Dropdowns
        self._data_dropdown = dropdowns.NamedListDropdown(qt.data)
        self._data_dropdown.connect('changed', self._data_dropdown_changed_cb)

        self._colnames_dropdown_x = dropdowns.StringListDropdown([])
        self._colnames_dropdown_y = dropdowns.StringListDropdown([])
        self._colnames_dropdown_z = dropdowns.StringListDropdown([])
        self._operations_dropdown = dropdowns.StringListDropdown(
            self._operations)
        self._operations_dropdown.connect('changed',
                                          self._operations_dropdown_changed_cb)

        # Checkboxes
        self._hold_check = gtk.CheckButton('Hold on')
        self._hold_check.set_active(False)

        self._newfig_check = gtk.CheckButton('New figure')
        self._newfig_check.set_active(False)

        self._liveplot_check = gtk.CheckButton('Live plot')
        self._liveplot_check.set_active(False)
        self._liveplot_check.connect("clicked", self._liveplot_cb)

        # Pack vbox
        self.vbox = gui.pack_vbox([
            gui.pack_hbox(
                [gtk.Label(_L('Choose data: ')), self._data_dropdown], True,
                True),
            self._dir_hbox,
            gui.pack_hbox([gtk.Label(_L('X: ')), self._colnames_dropdown_x],
                          True, True),
            gui.pack_hbox([gtk.Label(_L('Y: ')), self._colnames_dropdown_y],
                          True, True),
            gui.pack_hbox([gtk.Label(_L('Z: ')), self._colnames_dropdown_z],
                          True, True),
            gui.pack_hbox(
                [gtk.Label(_L('Operations: ')), self._operations_dropdown],
                True, True),
            self.go_button,
            gui.pack_hbox(
                [self._hold_check, self._newfig_check, self._liveplot_check],
                True, True),
        ], False, False)
        self.window.add(self.vbox)

        self._data_dropdown.show()
        self._colnames_dropdown_x.show()
        self._colnames_dropdown_y.show()
        self._colnames_dropdown_z.show()
        self._operations_dropdown.show()
        self.go_button.show()
        self.vbox.show_all()
        self.window.show()
Ejemplo n.º 9
0
    def __init__(self):
        qtwindow.QTWindow.__init__(self, 'data', _L('Data Browser'))
        self.connect("delete-event", self._delete_event_cb)

        self._browser = None
        self._meta_tags = set([])
        self._meta_tag = 'header'
        self._cur_path = None

        self._dir_entry = gtk.Entry()
        self._dir_entry.connect('activate', self._dir_activate_cb)
        self._dir_button = gtk.Button(_L('Browse'))
        self._dir_button.connect('clicked', self._dir_button_clicked_cb)
        self._dir_hbox = gui.pack_hbox(
                (gtk.Label('Directory'), self._dir_entry, self._dir_button),
                True, True)

        self._plot2d_button = gtk.Button(_L('Plot2D'))
        self._plot2d_button.connect('clicked', self._plot2d_clicked_cb)
        self._plot3d_button = gtk.Button(_L('Plot3D'))
        self._plot3d_button.connect('clicked', self._plot3d_clicked_cb)
        self._plot_name = gtk.Entry()
        self._plot_name.set_text('databrowser')
        self._plot_style = gtk.Entry()
        self._columns = gtk.Entry()
        self._clear_check = gtk.CheckButton()
        self._clear_check.set_active(True)
        self._clear_button = gtk.Button(_L('Clear'))
        self._clear_button.connect('clicked', self._clear_clicked_cb)
        self._ofs_entry = gtk.Entry()
        self._traceofs_entry = gtk.Entry()

        vbox1 = gui.pack_vbox([
            gui.pack_hbox([
                gtk.Label(_L('Name')),
                self._plot_name], False, False),
            gui.pack_hbox([
                gtk.Label(_L('Clear')),
                self._clear_check], False, False),
            gui.pack_hbox([
                gtk.Label(_L('Style')),
                self._plot_style], False, False),
            gui.pack_hbox([
                gtk.Label(_L('Columns')),
                self._columns], False, False),
            ], False, False)
        vbox2 = gui.pack_vbox([
            gui.pack_hbox([
                gtk.Label(_L('Offset')),
                self._ofs_entry], False, False),
            gui.pack_hbox([
                gtk.Label(_L('Trace offset')),
                self._traceofs_entry], False, False),
            ], False, False)

        self._plot_box = gui.pack_vbox([
            gui.pack_hbox([vbox1, vbox2], True, True),
            gui.pack_hbox([self._plot2d_button, self._plot3d_button,
                self._clear_button], True, True),
            ], True, True)
        self._plot_box.set_border_width(4)
        self._plot_frame = gtk.Frame('Plot')
        self._plot_frame.add(self._plot_box)

        self._entries_model = gtk.ListStore(str)
        self._entries_model.set_sort_column_id(0, gtk.SORT_ASCENDING)
        self._entry_map = {}
        self._entries_view = qttable.QTTable([(_L('Filename'), {})], \
                self._entries_model)
        self._entries_view.connect('row-activated', self._row_activated_cb)
        self._entries_scroll = gtk.ScrolledWindow()
        self._entries_scroll.set_policy(gtk.POLICY_AUTOMATIC, \
                gtk.POLICY_AUTOMATIC)
        self._entries_scroll.add_with_viewport(self._entries_view)

        self._info_view = gtk.TextView()
        self._info_view.set_border_width(4)
        self._meta_dropdown = dropdowns.StringListDropdown([])
        self._meta_dropdown.connect('changed', self._meta_drop_changed_cb)
        self._info_box = gui.pack_vbox([
            self._meta_dropdown,
            self._info_view], False, False)
        self._info_box.set_border_width(4)

        self._views_hbox = gui.pack_hbox(
                (self._entries_scroll, self._info_box), True, True)

        vbox = gtk.VBox()
        vbox.pack_start(self._dir_hbox, False, False)
        vbox.pack_start(self._plot_frame, False, False)
        vbox.pack_start(self._views_hbox, True, True)
        self.add(vbox)

        vbox.show_all()
Ejemplo n.º 10
0
    def __init__(self):
        '''
        Initialization of main window
        '''
        self._plottype = 'none'

        # Create a new window
        self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)

        # Set title
        self.window.set_title("QTLab Analysis")

        # Handler for delete_event
        self.window.connect("delete_event", self.delete_event)

        # Border for the window
        self.window.set_border_width(10)

        # Buttons
        self.plot2d_button = gtk.Button("Plot XY")
        self.plot2d_button.connect("clicked", self.plot2d_cb)

        self.plot3d_button = gtk.Button("Plot XYZ")
        self.plot3d_button.connect("clicked", self.plot3d_cb)

        # Dropdowns
        self._data_dropdown = dropdowns.NamedListDropdown(qt.data)
        self._data_dropdown.connect('changed', self._data_dropdown_changed_cb)

        self._colnames_dropdown_x = dropdowns.StringListDropdown([])
        self._colnames_dropdown_y = dropdowns.StringListDropdown([])
        self._colnames_dropdown_z = dropdowns.StringListDropdown([])

        # Checkboxes
        self._hold_check = gtk.CheckButton('Hold on')
        self._hold_check.set_active(False)

        self._newfig_check = gtk.CheckButton('New figure')
        self._newfig_check.set_active(False)
        self._nfig = 1

        self._liveplot_check = gtk.CheckButton('Live plot')
        self._liveplot_check.set_active(False)
        self._liveplot_check.connect("clicked", self._liveplot_cb)
        self._hid = 0  # Proxy connect hid

        # Pack vbox
        self.vbox = gui.pack_vbox([
            gui.pack_hbox(
                [gtk.Label(_L('Choose data: ')), self._data_dropdown], True,
                True),
            gui.pack_hbox([gtk.Label(_L('X: ')), self._colnames_dropdown_x],
                          True, True),
            gui.pack_hbox([gtk.Label(_L('Y: ')), self._colnames_dropdown_y],
                          True, True),
            gui.pack_hbox([gtk.Label(_L('Z: ')), self._colnames_dropdown_z],
                          True, True),
            self.plot2d_button,
            self.plot3d_button,
            gui.pack_hbox(
                [self._hold_check, self._newfig_check, self._liveplot_check],
                True, True),
        ], False, False)
        self.window.add(self.vbox)

        self._data_dropdown.show()
        self._colnames_dropdown_x.show()
        self._colnames_dropdown_y.show()
        self._colnames_dropdown_z.show()
        self.plot2d_button.show()
        self.plot3d_button.show()
        self.vbox.show_all()
        self.window.show()
Ejemplo n.º 11
0
    def __init__(self):
        qtwindow.QTWindow.__init__(self, 'data', _L('Data Browser'))
        self.connect("delete-event", self._delete_event_cb)

        self._browser = None
        self._meta_tags = set([])
        self._meta_tag = 'header'
        self._cur_path = None

        self._dir_entry = gtk.Entry()
        self._dir_entry.connect('activate', self._dir_activate_cb)
        self._dir_button = gtk.Button(_L('Browse'))
        self._dir_button.connect('clicked', self._dir_button_clicked_cb)
        self._dir_hbox = gui.pack_hbox(
                (gtk.Label('Directory'), self._dir_entry, self._dir_button),
                True, True)

        self._plot2d_button = gtk.Button(_L('Plot2D'))
        self._plot2d_button.connect('clicked', self._plot2d_clicked_cb)
        self._plot3d_button = gtk.Button(_L('Plot3D'))
        self._plot3d_button.connect('clicked', self._plot3d_clicked_cb)
        self._plot_name = gtk.Entry()
        self._plot_name.set_text('databrowser')
        self._plot_style = gtk.Entry()
        self._columns = gtk.Entry()
        self._clear_check = gtk.CheckButton()
        self._clear_check.set_active(True)
        self._clear_button = gtk.Button(_L('Clear'))
        self._clear_button.connect('clicked', self._clear_clicked_cb)
        self._ofs_entry = gtk.Entry()
        self._traceofs_entry = gtk.Entry()

        vbox1 = gui.pack_vbox([
            gui.pack_hbox([
                gtk.Label(_L('Name')),
                self._plot_name], False, False),
            gui.pack_hbox([
                gtk.Label(_L('Clear')),
                self._clear_check], False, False),
            gui.pack_hbox([
                gtk.Label(_L('Style')),
                self._plot_style], False, False),
            gui.pack_hbox([
                gtk.Label(_L('Columns')),
                self._columns], False, False),
            ], False, False)
        vbox2 = gui.pack_vbox([
            gui.pack_hbox([
                gtk.Label(_L('Offset')),
                self._ofs_entry], False, False),
            gui.pack_hbox([
                gtk.Label(_L('Trace offset')),
                self._traceofs_entry], False, False),
            ], False, False)

        self._plot_box = gui.pack_vbox([
            gui.pack_hbox([vbox1, vbox2], True, True),
            gui.pack_hbox([self._plot2d_button, self._plot3d_button,
                self._clear_button], True, True),
            ], True, True)
        self._plot_box.set_border_width(4)
        self._plot_frame = gtk.Frame('Plot')
        self._plot_frame.add(self._plot_box)

        self._entries_model = gtk.ListStore(str)
        self._entries_model.set_sort_column_id(0, gtk.SORT_ASCENDING)
        self._entry_map = {}
        self._entries_view = qttable.QTTable([(_L('Filename'), {})], \
                self._entries_model)
        self._entries_view.connect('row-activated', self._row_activated_cb)
        self._entries_scroll = gtk.ScrolledWindow()
        self._entries_scroll.set_policy(gtk.POLICY_AUTOMATIC, \
                gtk.POLICY_AUTOMATIC)
        self._entries_scroll.add_with_viewport(self._entries_view)

        self._info_view = gtk.TextView()
        self._info_view.set_border_width(4)
        self._meta_dropdown = dropdowns.StringListDropdown([])
        self._meta_dropdown.connect('changed', self._meta_drop_changed_cb)
        self._info_box = gui.pack_vbox([
            self._meta_dropdown,
            self._info_view], False, False)
        self._info_box.set_border_width(4)

        self._views_hbox = gui.pack_hbox(
                (self._entries_scroll, self._info_box), True, True)

        vbox = gtk.VBox()
        vbox.pack_start(self._dir_hbox, False, False)
        vbox.pack_start(self._plot_frame, False, False)
        vbox.pack_start(self._views_hbox, True, True)
        self.add(vbox)

        vbox.show_all()
Ejemplo n.º 12
0
    def __init__(self):
        qtwindow.QTWindow.__init__(self, 'watch', 'Watch')
        self.connect("delete-event", self._delete_event_cb)
        qt.flow.connect('measurement-start', self._mstart_cb)
        qt.flow.connect('measurement-end', self._mend_cb)

        self._watch = {}
        self._paused = False

        self._frame = gtk.Frame()
        self._frame.set_label(_L('Add variable'))

        self._ins_combo = dropdowns.InstrumentDropdown()
        self._ins_combo.connect('changed', self._instrument_changed_cb)

        self._param_combo = dropdowns.InstrumentParameterDropdown()
        self._param_combo.connect('changed', self._parameter_changed_cb)

        label = gtk.Label(_L('Interval'))
        self._interval = gtk.SpinButton(climb_rate=1, digits=0)
        self._interval.set_range(0, 100000)
        self._interval.set_value(500)
        interval = gui.pack_hbox(
            [label, self._interval, gtk.Label('ms')], False, False)

        self._graph_check = gtk.CheckButton('Graph')
        self._graph_check.set_active(True)
        self._graph_check.connect('toggled', self._graph_toggled_cb)
        label = gtk.Label('Data points')
        self._npoints = gtk.SpinButton(climb_rate=1, digits=0)
        self._npoints.set_range(10, 1000)
        self._npoints.set_value(100)
        self._npoints.set_increments(1, 10)
        graph = gui.pack_hbox([self._graph_check, label, self._npoints], True,
                              False)

        self._ma_check = gtk.CheckButton('Moving average')
        self._ma_check.set_active(False)
        self._ma_check.connect('toggled', self._ma_toggled_cb)
        label = gtk.Label('Constant')
        self._ma_const = gtk.SpinButton(climb_rate=0.01, digits=2)
        self._ma_const.set_sensitive(False)
        self._ma_const.set_range(0, 1.0)
        self._ma_const.set_increments(0.01, 0.1)
        self._ma_const.set_value(0.95)
        ma = gui.pack_hbox([self._ma_check, label, self._ma_const], True,
                           False)

        self._add_button = gtk.Button(_L('Add'))
        self._add_button.connect('clicked', self._add_clicked_cb)
        self._remove_button = gtk.Button(_L('Remove'))
        self._remove_button.connect('clicked', self._remove_clicked_cb)
        self._pause_button = gtk.ToggleButton(_L('Pause'))
        self._pause_button.set_active(False)
        self._pause_button.connect('clicked', self._toggle_pause_cb)
        buttons = gui.pack_hbox(
            [self._add_button, self._remove_button, self._pause_button], False,
            False)

        self._tree_model = gtk.ListStore(str, str, str)
        self._tree_view = QTTable([
            (_L('Parameter'), {}),
            (_L('Delay'), {}),
            (_L('Value'), {
                'scale': 3.0
            }),
        ], self._tree_model)

        vbox = gui.pack_vbox([
            self._ins_combo,
            self._param_combo,
            interval,
            graph,
            ma,
            buttons,
        ], False, False)
        vbox.set_border_width(4)
        self._frame.add(vbox)

        vbox = gui.pack_vbox([
            self._frame,
            self._tree_view,
        ], False, False)
        self.add(vbox)

        vbox.show_all()
Ejemplo n.º 13
0
    def __init__(self):
        qtwindow.QTWindow.__init__(self, 'watch', 'Watch')
        self.connect("delete-event", self._delete_event_cb)
        qt.flow.connect('measurement-start', self._mstart_cb)
        qt.flow.connect('measurement-end', self._mend_cb)

        self._watch = {}
        self._paused = False

        self._frame = gtk.Frame()
        self._frame.set_label(_L('Add variable'))

        self._ins_combo = dropdowns.InstrumentDropdown()
        self._ins_combo.connect('changed', self._instrument_changed_cb)

        self._param_combo = dropdowns.InstrumentParameterDropdown()
        self._param_combo.connect('changed', self._parameter_changed_cb)

        label = gtk.Label(_L('Interval'))
        self._interval = gtk.SpinButton(climb_rate=1, digits=0)
        self._interval.set_range(0, 100000)
        self._interval.set_value(500)
        interval = gui.pack_hbox([label, self._interval, gtk.Label('ms')],
                False, False)

        self._graph_check = gtk.CheckButton('Graph')
        self._graph_check.set_active(True)
        self._graph_check.connect('toggled', self._graph_toggled_cb)
        label = gtk.Label('Data points')
        self._npoints = gtk.SpinButton(climb_rate=1, digits=0)
        self._npoints.set_range(10, 1000)
        self._npoints.set_value(100)
        self._npoints.set_increments(1, 10)
        graph = gui.pack_hbox([self._graph_check, label, self._npoints],
                True, False)

        self._ma_check = gtk.CheckButton('Moving average')
        self._ma_check.set_active(False)
        self._ma_check.connect('toggled', self._ma_toggled_cb)
        label = gtk.Label('Constant')
        self._ma_const = gtk.SpinButton(climb_rate=0.01, digits=2)
        self._ma_const.set_sensitive(False)
        self._ma_const.set_range(0, 1.0)
        self._ma_const.set_increments(0.01, 0.1)
        self._ma_const.set_value(0.95)
        ma = gui.pack_hbox([self._ma_check, label, self._ma_const],
                True, False)

        self._add_button = gtk.Button(_L('Add'))
        self._add_button.connect('clicked', self._add_clicked_cb)
        self._remove_button = gtk.Button(_L('Remove'))
        self._remove_button.connect('clicked', self._remove_clicked_cb)
        self._pause_button = gtk.ToggleButton(_L('Pause'))
        self._pause_button.set_active(False)
        self._pause_button.connect('clicked', self._toggle_pause_cb)
        buttons = gui.pack_hbox([self._add_button, self._remove_button,
                self._pause_button], False, False)

        self._tree_model = gtk.ListStore(str, str, str)
        self._tree_view = QTTable([
            (_L('Parameter'), {}),
            (_L('Delay'), {}),
            (_L('Value'), {'scale': 3.0}),
            ], self._tree_model)

        vbox = gui.pack_vbox([
            self._ins_combo,
    		self._param_combo,
    		interval,
            graph,
            ma,
    		buttons,
    	], False, False)
        vbox.set_border_width(4)
        self._frame.add(vbox)

        vbox = gui.pack_vbox([
            self._frame,
            self._tree_view,
        ], False, False)
        self.add(vbox)

        vbox.show_all()
Ejemplo n.º 14
0
    def __init__(self):
        qtwindow.QTWindow.__init__(self, 'gnuplot', 'Gnuplot Tweak')
        self.connect("delete-event", self._delete_event_cb)

        self._ignore_changes = False
        self._current_plot = None
        self._plot_state = {}

        self._plot_dropdown = dropdowns.NamedListDropdown(qt.plots)
        self._plot_dropdown.connect('changed', self._plot_changed_cb)

        self._styles_dropdown = dropdowns.StringListDropdown([])
        self._styles_dropdown.connect('changed', self._style_changed_cb)

        self._maxpoints_entry = gtk.Entry()
        self._maxpoints_but = gtk.Button(_L('Set'))
        self._maxpoints_but.connect('clicked', self._maxpoints_clicked_cb)
        self._maxpoints_entry.connect('activate', self._maxpoints_clicked_cb)

        self._maxtraces_entry = gtk.Entry()
        self._maxtraces_but = gtk.Button(_L('Set'))
        self._maxtraces_but.connect('clicked', self._maxtraces_clicked_cb)
        self._maxtraces_entry.connect('activate', self._maxtraces_clicked_cb)

        self._mintime_entry = gtk.Entry()
        self._mintime_but = gtk.Button(_L('Set'))
        self._mintime_but.connect('clicked', self._mintime_clicked_cb)
        self._mintime_entry.connect('activate', self._mintime_clicked_cb)

        self._legend_check = gtk.CheckButton('Legend')
        self._legend_check.set_active(False)
        self._legend_check.connect('toggled', self._legend_toggled_cb)
        self._legendpos_dropdown = dropdowns.StringListDropdown([])
        self._legendpos_dropdown.connect('changed', self._legendpos_changed_cb)

        self._palette_dropdown = dropdowns.StringListDropdown([])
        self._palette_dropdown.connect('changed', self._palette_changed_cb)

        self._gamma_hid = None
        self._gamma_spin = gtk.SpinButton()
        self._gamma_spin.set_range(0.0, 5.0)
        self._gamma_spin.set_digits(2)
        self._gamma_spin.set_increments(0.01, 0.1)
        self._gamma_spin.set_value(1)
        self._gamma_spin.connect('changed', self._gamma_changed_cb)

        self._save_as_frame = gtk.Frame(_L('Save as'))
        list = ['']
        self._save_as_dropdown = dropdowns.StringListDropdown(list)

        self._filename_entry = gtk.Entry()
        self._save_button = gtk.Button(_L('Save'))
        self._save_button.connect('clicked', self._save_clicked_cb)

        vbox = gui.pack_vbox([
            gui.pack_hbox([
                gtk.Label(_L('Filename')), self._filename_entry,
                self._save_as_dropdown, self._save_button
            ], True, True),
        ], False, False)
        self._save_as_frame.add(vbox)

        self._axis_x = AxisSettings('x')
        self._axis_y = AxisSettings('y')
        self._axis_z = AxisSettings('z')
        self._axis_cb = AxisSettings('cb')

        self._autorange_xy = gtk.Button(_L('Autorange XY'))
        self._autorange_xy.connect('clicked', self._autorange_xyz_cb, False)
        self._autorange_xyz = gtk.Button(_L('Autorange XYZ'))
        self._autorange_xyz.connect('clicked', self._autorange_xyz_cb, True)

        self._clear_button = gtk.Button(_L('Clear'))
        self._clear_button.connect('clicked', self._clear_clicked_cb)

        self._del_button = gtk.Button(_L('Delete'))
        self._del_button.connect('clicked', self._del_clicked_cb)

        vbox = gui.pack_vbox([
            gui.pack_hbox([
                gtk.Label(_L('Plot')), self._plot_dropdown, self._clear_button,
                self._del_button
            ], True, True),
            gui.pack_hbox([gtk.Label(_L('Style')), self._styles_dropdown],
                          True, True),
            gui.pack_hbox([self._legend_check, self._legendpos_dropdown], True,
                          True),
            gui.pack_hbox([
                gtk.Label(_L('Max Points')), self._maxpoints_entry,
                self._maxpoints_but
            ], True, True),
            gui.pack_hbox([
                gtk.Label(_L('Max Traces')), self._maxtraces_entry,
                self._maxtraces_but
            ], True, True),
            gui.pack_hbox([
                gtk.Label(_L('Min Time')), self._mintime_entry,
                self._mintime_but
            ], True, True),
            gui.pack_hbox([
                gtk.Label(_L('Palette')), self._palette_dropdown,
                gtk.Label(_L('Gamma')), self._gamma_spin
            ], True, True),
            self._save_as_frame,
            self._axis_x,
            self._axis_y,
            self._axis_z,
            self._axis_cb,
            gui.pack_hbox([self._autorange_xy, self._autorange_xyz], True,
                          True),
        ], False, False)
        vbox.set_border_width(4)
        self.add(vbox)

        vbox.show_all()
Ejemplo n.º 15
0
 def __init__(self):
     '''
     Initialization of main window
     '''
     self._plottype = 'none'
     
     # Create a new window
     self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
     
     # Set title
     self.window.set_title("QTLab Analysis")
     
     # Handler for delete_event
     self.window.connect("delete_event", self.delete_event)
     
     # Border for the window
     self.window.set_border_width(10)
     
     # Buttons
     self.plot2d_button = gtk.Button("Plot XY")
     self.plot2d_button.connect("clicked", self.plot2d_cb)
     
     self.plot3d_button = gtk.Button("Plot XYZ")
     self.plot3d_button.connect("clicked", self.plot3d_cb)
     
     # Dropdowns
     self._data_dropdown = dropdowns.NamedListDropdown(qt.data)
     self._data_dropdown.connect('changed', self._data_dropdown_changed_cb)
     
     self._colnames_dropdown_x = dropdowns.StringListDropdown([])
     self._colnames_dropdown_y = dropdowns.StringListDropdown([])
     self._colnames_dropdown_z = dropdowns.StringListDropdown([])
     
     # Checkboxes
     self._hold_check = gtk.CheckButton('Hold on')
     self._hold_check.set_active(False)
     
     self._newfig_check = gtk.CheckButton('New figure')
     self._newfig_check.set_active(False)
     self._nfig = 1
     
     self._liveplot_check = gtk.CheckButton('Live plot')
     self._liveplot_check.set_active(False)
     self._liveplot_check.connect("clicked", self._liveplot_cb)
     self._hid = 0 # Proxy connect hid
     
     # Pack vbox
     self.vbox = gui.pack_vbox([
         gui.pack_hbox([
             gtk.Label(_L('Choose data: ')),
             self._data_dropdown], True, True),
         gui.pack_hbox([
             gtk.Label(_L('X: ')),
             self._colnames_dropdown_x], True, True),
         gui.pack_hbox([
             gtk.Label(_L('Y: ')),
             self._colnames_dropdown_y], True, True),
         gui.pack_hbox([
             gtk.Label(_L('Z: ')),
             self._colnames_dropdown_z], True, True),
         self.plot2d_button,
         self.plot3d_button,
         gui.pack_hbox([self._hold_check,
         self._newfig_check,
         self._liveplot_check], True,True),
     ], False, False)
     self.window.add(self.vbox)
     
     self._data_dropdown.show()
     self._colnames_dropdown_x.show()
     self._colnames_dropdown_y.show()
     self._colnames_dropdown_z.show()
     self.plot2d_button.show()
     self.plot3d_button.show()
     self.vbox.show_all()
     self.window.show()
Ejemplo n.º 16
0
 def __init__(self):
     '''
     Initialization of main window
     '''
     # Default parameters
     self._nfig = 1
     self._hid = 0 # Proxy connect hid
     self._plottype = 'none'
     self._data_obj = None
     self._operations = ['None', 'Plot 2D', 'Plot 3D', 'Plot 2D Difference', 'Plot 3D - horizontal offset', 'Plot 3D - vertical offset', 'Plot 3D - horizontal difference', 'Plot 3D - vertical difference', 'Close all']
     self._cid = 0 # Connect ID for crosshair
     self._xdata = None
     self._ydata = None
     self._x = None
     self._y = None
     self._z = None
     self._offset = None
     
     # Create a new window
     self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
     
     # Set title
     self.window.set_title("QTLab Analysis")
     
     # Handler for delete_event
     self.window.connect("delete_event", self._delete_event)
     
     # Border for the window
     self.window.set_border_width(10)
     
     # Button
     # self.plot2d_button = gtk.Button("Plot XY")
     # self.plot2d_button.connect("clicked", self._plot2d_cb)
     
     # self.plot3d_button = gtk.Button("Plot XYZ")
     # self.plot3d_button.connect("clicked", self._plot3d_cb)
     
     self.go_button = gtk.Button("Go")
     self.go_button.connect("clicked", self._go_cb)
     
     self._dir_entry = gtk.Entry()
     self._dir_entry.connect('activate', self._dir_activate_cb)
     
     self._dir_button = gtk.Button(_L('Browse'))
     self._dir_button.connect('clicked', self._dir_button_clicked_cb)
     
     self._dir_hbox = gui.pack_hbox(
             (gtk.Label('Choose filename (*.dat): '), self._dir_entry, self._dir_button),
             True, True)
     
     
     # Dropdowns
     self._data_dropdown = dropdowns.NamedListDropdown(qt.data)
     self._data_dropdown.connect('changed', self._data_dropdown_changed_cb)
     
     self._colnames_dropdown_x = dropdowns.StringListDropdown([])
     self._colnames_dropdown_y = dropdowns.StringListDropdown([])
     self._colnames_dropdown_z = dropdowns.StringListDropdown([])        
     self._operations_dropdown = dropdowns.StringListDropdown(self._operations)
     self._operations_dropdown.connect('changed', self._operations_dropdown_changed_cb)
     
     # Checkboxes
     self._hold_check = gtk.CheckButton('Hold on')
     self._hold_check.set_active(False)
     
     self._newfig_check = gtk.CheckButton('New figure')
     self._newfig_check.set_active(False)
     
     self._liveplot_check = gtk.CheckButton('Live plot')
     self._liveplot_check.set_active(False)
     self._liveplot_check.connect("clicked", self._liveplot_cb)
     
     # Pack vbox
     self.vbox = gui.pack_vbox([
         gui.pack_hbox([
             gtk.Label(_L('Choose data: ')),
             self._data_dropdown], True, True),
         self._dir_hbox,
         gui.pack_hbox([
             gtk.Label(_L('X: ')),
             self._colnames_dropdown_x], True, True),
         gui.pack_hbox([
             gtk.Label(_L('Y: ')),
             self._colnames_dropdown_y], True, True),
         gui.pack_hbox([
             gtk.Label(_L('Z: ')),
             self._colnames_dropdown_z], True, True),
         gui.pack_hbox([
             gtk.Label(_L('Operations: ')),
             self._operations_dropdown], True, True),
         self.go_button,
         gui.pack_hbox([self._hold_check,
         self._newfig_check,
         self._liveplot_check], True,True),
     ], False, False)
     self.window.add(self.vbox)
     
     self._data_dropdown.show()
     self._colnames_dropdown_x.show()
     self._colnames_dropdown_y.show()
     self._colnames_dropdown_z.show()
     self._operations_dropdown.show()
     self.go_button.show()
     self.vbox.show_all()
     self.window.show()