def __init__(self, **kwargs): gtk.VBox.__init__(self, **kwargs) self._frontpanels = qt.frontpanels self._sliders = qt.sliders self._ins = None 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) self._get_but = gtk.Button('Get') self._get_but.connect('clicked', self._get_param_clicked_cb) self._param_edit = gtk.Entry() self._param_edit.set_alignment(0.93) self._set_but = gtk.Button('Set') self._set_but.connect('clicked', self._set_param_clicked_cb) param_getset = gui.pack_hbox([self._get_but, \ self._set_but]) self._function_frame = FunctionFrame() self._make_fp = gtk.Button('Frontpanel') self._make_fp.connect('clicked', self._fp_clicked_cb) self._make_sl = gtk.Button('Slider') self._make_sl.connect('clicked', self._slider_clicked_cb) h1 = gui.pack_hbox([gtk.Label(_L('Instrument')), self._ins_combo]) h2 = gui.pack_hbox([gtk.Label(_L('Parameter')), self._param_combo]) self._table = gtk.Table(4, 2, True) self._table.set_homogeneous(False) self._table.attach(h1, 0, 1, 0, 1) self._table.attach(h2, 0, 1, 1, 2) self._table.attach(self._param_edit, 0, 1, 2, 3) self._table.attach(self._function_frame, 0, 2, 3, 4) self._table.attach(self._make_fp, 1, 2, 0, 1) self._table.attach(self._make_sl, 1, 2, 1, 2) self._table.attach(param_getset, 1, 2, 2, 3) self._table.set_border_width(4) self.add(self._table) self._parameter_changed_cb(None) self.show_all()
def __init__(self, **kwargs): gtk.VBox.__init__(self, **kwargs) self._frontpanels = qt.frontpanels self._sliders = qt.sliders self._ins = None 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) self._get_but = gtk.Button('Get') self._get_but.connect('clicked', self._get_param_clicked_cb) self._param_edit = gtk.Entry() self._param_edit.set_alignment(0.93) self._set_but = gtk.Button('Set') self._set_but.connect('clicked', self._set_param_clicked_cb) param_getset = gui.pack_hbox([self._get_but, \ self._set_but]) self._function_frame = FunctionFrame() self._make_fp = gtk.Button('Frontpanel') self._make_fp.connect('clicked', self._fp_clicked_cb) self._make_sl = gtk.Button('Slider') self._make_sl.connect('clicked', self._slider_clicked_cb) h1 = gui.pack_hbox([ gtk.Label(_L('Instrument')), self._ins_combo]) h2 = gui.pack_hbox([ gtk.Label(_L('Parameter')), self._param_combo]) self._table = gtk.Table(4, 2, True) self._table.set_homogeneous(False) self._table.attach(h1, 0, 1, 0, 1) self._table.attach(h2, 0, 1, 1, 2) self._table.attach(self._param_edit, 0, 1, 2, 3) self._table.attach(self._function_frame, 0, 2, 3, 4) self._table.attach(self._make_fp, 1, 2, 0, 1) self._table.attach(self._make_sl, 1, 2, 1, 2) self._table.attach(param_getset, 1, 2, 2, 3) self._table.set_border_width(4) self.add(self._table) self._parameter_changed_cb(None) self.show_all()
class QTSetInstrumentFrame(gtk.VBox): def __init__(self, **kwargs): gtk.VBox.__init__(self, **kwargs) self._frontpanels = qt.frontpanels self._sliders = qt.sliders self._ins = None 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) self._get_but = gtk.Button('Get') self._get_but.connect('clicked', self._get_param_clicked_cb) self._param_edit = gtk.Entry() self._param_edit.set_alignment(0.93) self._set_but = gtk.Button('Set') self._set_but.connect('clicked', self._set_param_clicked_cb) param_getset = gui.pack_hbox([self._get_but, \ self._set_but]) self._function_frame = FunctionFrame() self._make_fp = gtk.Button('Frontpanel') self._make_fp.connect('clicked', self._fp_clicked_cb) self._make_sl = gtk.Button('Slider') self._make_sl.connect('clicked', self._slider_clicked_cb) h1 = gui.pack_hbox([ gtk.Label(_L('Instrument')), self._ins_combo]) h2 = gui.pack_hbox([ gtk.Label(_L('Parameter')), self._param_combo]) self._table = gtk.Table(4, 2, True) self._table.set_homogeneous(False) self._table.attach(h1, 0, 1, 0, 1) self._table.attach(h2, 0, 1, 1, 2) self._table.attach(self._param_edit, 0, 1, 2, 3) self._table.attach(self._function_frame, 0, 2, 3, 4) self._table.attach(self._make_fp, 1, 2, 0, 1) self._table.attach(self._make_sl, 1, 2, 1, 2) self._table.attach(param_getset, 1, 2, 2, 3) self._table.set_border_width(4) self.add(self._table) self._parameter_changed_cb(None) self.show_all() def _instrument_changed_cb(self, widget): self._ins = self._ins_combo.get_instrument() self._param_combo.set_instrument(self._ins) self._function_frame.set_instrument(self._ins) def _parameter_changed_cb(self, widget): param = self._param_combo.get_parameter() sget, sset = False, False if self._ins is not None: opts = self._ins.get_shared_parameter_options(param) if opts is not None: sget = opts['flags'] & \ (qt.constants.FLAG_GET | qt.constants.FLAG_SOFTGET) sset = opts['flags'] & qt.constants.FLAG_SET self._get_but.set_sensitive(sget) self._set_but.set_sensitive(sset) self._make_sl.set_sensitive(sset) def _param_get_cb(self, val): self._param_edit.set_text('%s' % val) self._get_but.set_sensitive(True) def _param_set_cb(self, boolsucces): self._set_but.set_sensitive(True) def _get_param_clicked_cb(self, widget): param = self._param_combo.get_parameter() self._get_but.set_sensitive(False) self._ins.get(param, callback=self._param_get_cb) def _set_param_clicked_cb(self, widget): param = self._param_combo.get_parameter() val = self._param_edit.get_text() self._set_but.set_sensitive(False) self._ins.set(param, val, callback=self._param_set_cb) def _fp_clicked_cb(self, sender): ins = self._ins_combo.get_instrument() if ins is not None: name = ins.get_name() if name not in self._frontpanels: self._frontpanels[name] = frontpanel.FrontPanel(ins) self._frontpanels[name].show() self._frontpanels[name].present() def _slider_clicked_cb(self, sender): ins = self._ins_combo.get_instrument() param = self._param_combo.get_parameter() if ins is not None and param is not None: name = '%s.%s' % (ins.get_name(), param) if name not in self._sliders: self._sliders[name] = slider.SliderWindow(ins, param) self._sliders[name].show() self._sliders[name].present()
class QTSetInstrumentFrame(gtk.VBox): def __init__(self, **kwargs): gtk.VBox.__init__(self, **kwargs) self._frontpanels = qt.frontpanels self._sliders = qt.sliders self._ins = None 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) self._get_but = gtk.Button('Get') self._get_but.connect('clicked', self._get_param_clicked_cb) self._param_edit = gtk.Entry() self._param_edit.set_alignment(0.93) self._set_but = gtk.Button('Set') self._set_but.connect('clicked', self._set_param_clicked_cb) param_getset = gui.pack_hbox([self._get_but, \ self._set_but]) self._function_frame = FunctionFrame() self._make_fp = gtk.Button('Frontpanel') self._make_fp.connect('clicked', self._fp_clicked_cb) self._make_sl = gtk.Button('Slider') self._make_sl.connect('clicked', self._slider_clicked_cb) h1 = gui.pack_hbox([gtk.Label(_L('Instrument')), self._ins_combo]) h2 = gui.pack_hbox([gtk.Label(_L('Parameter')), self._param_combo]) self._table = gtk.Table(4, 2, True) self._table.set_homogeneous(False) self._table.attach(h1, 0, 1, 0, 1) self._table.attach(h2, 0, 1, 1, 2) self._table.attach(self._param_edit, 0, 1, 2, 3) self._table.attach(self._function_frame, 0, 2, 3, 4) self._table.attach(self._make_fp, 1, 2, 0, 1) self._table.attach(self._make_sl, 1, 2, 1, 2) self._table.attach(param_getset, 1, 2, 2, 3) self._table.set_border_width(4) self.add(self._table) self._parameter_changed_cb(None) self.show_all() def _instrument_changed_cb(self, widget): self._ins = self._ins_combo.get_instrument() self._param_combo.set_instrument(self._ins) self._function_frame.set_instrument(self._ins) def _parameter_changed_cb(self, widget): param = self._param_combo.get_parameter() sget, sset = False, False if self._ins is not None: opts = self._ins.get_shared_parameter_options(param) if opts is not None: sget = opts['flags'] & \ (qt.constants.FLAG_GET | qt.constants.FLAG_SOFTGET) sset = opts['flags'] & qt.constants.FLAG_SET self._get_but.set_sensitive(sget) self._set_but.set_sensitive(sset) self._make_sl.set_sensitive(sset) def _param_get_cb(self, val): self._param_edit.set_text('%s' % val) self._get_but.set_sensitive(True) def _param_set_cb(self, boolsucces): self._set_but.set_sensitive(True) def _get_param_clicked_cb(self, widget): param = self._param_combo.get_parameter() self._get_but.set_sensitive(False) self._ins.get(param, callback=self._param_get_cb) def _set_param_clicked_cb(self, widget): param = self._param_combo.get_parameter() val = self._param_edit.get_text() self._set_but.set_sensitive(False) self._ins.set(param, val, callback=self._param_set_cb) def _fp_clicked_cb(self, sender): ins = self._ins_combo.get_instrument() if ins is not None: name = ins.get_name() if name not in self._frontpanels: self._frontpanels[name] = frontpanel.FrontPanel(ins) self._frontpanels[name].show() self._frontpanels[name].present() def _slider_clicked_cb(self, sender): ins = self._ins_combo.get_instrument() param = self._param_combo.get_parameter() if ins is not None and param is not None: name = '%s.%s' % (ins.get_name(), param) if name not in self._sliders: self._sliders[name] = slider.SliderWindow(ins, param) self._sliders[name].show() self._sliders[name].present()