class PrefsPanel(wx.Panel): def __init__(self, parent, delete_callback=None): wx.Panel.__init__(self, parent) self.delete_callback = delete_callback self.cfg = NervenConfig() self.init_ctrls() def init_ctrls(self): self.opt_ctrls = {} sizer = wx.BoxSizer(wx.VERTICAL) for key in self.cfg.options: hsizer = wx.BoxSizer(wx.HORIZONTAL) op = self.cfg.options[key] if op.type == 'bool': self.opt_ctrls[key] = wx.CheckBox(self, -1, op.description) self.opt_ctrls[key].SetValue(self.cfg[key]) hsizer.Add(self.opt_ctrls[key]) else: self.opt_ctrls[key] = wx.TextCtrl(self, value=str(self.cfg[key])) lbl = wx.StaticText(self, label=op.description) hsizer.Add(self.opt_ctrls[key], 1, wx.EXPAND) hsizer.AddSpacer((10, 0)) hsizer.Add(lbl, 1, wx.ALIGN_RIGHT, wx.EXPAND) sizer.Add(hsizer) self.save_btn = wx.Button(self, label='Save') self.close_btn = wx.Button(self, label='Close') self.Bind(wx.EVT_BUTTON, self.on_save, self.save_btn) self.Bind(wx.EVT_BUTTON, self.on_close, self.close_btn) hsizer = wx.BoxSizer(wx.HORIZONTAL) hsizer.Add(self.save_btn) hsizer.Add(self.close_btn) sizer.AddSpacer((0, 10)) sizer.Add(hsizer) sizer.AddSpacer((0, 10)) self.SetSizer(sizer) def do_update(self): pass def close(self): if self.delete_callback is not None: self.delete_callback() self.Destroy() def on_close(self, e): self.close() def on_save(self, e): for key in self.cfg.options: self.cfg[key] = self.opt_ctrls[key].GetValue() self.cfg.write() for cb in callbacks['update_config']: cb() self.close()
class PrefsPanel(wx.Panel): def __init__(self, parent, delete_callback=None): wx.Panel.__init__(self, parent) self.delete_callback = delete_callback self.cfg = NervenConfig() self.init_ctrls() def init_ctrls(self): self.opt_ctrls = {} sizer = wx.BoxSizer(wx.VERTICAL) for key in self.cfg.options: hsizer = wx.BoxSizer(wx.HORIZONTAL) op = self.cfg.options[key] if op.type == 'bool': self.opt_ctrls[key] = wx.CheckBox(self, -1, op.description) self.opt_ctrls[key].SetValue(self.cfg[key]) hsizer.Add(self.opt_ctrls[key]) else: self.opt_ctrls[key] = wx.TextCtrl(self, value=str(self.cfg[key])) lbl = wx.StaticText(self, label=op.description) hsizer.Add(self.opt_ctrls[key], 1, wx.EXPAND) hsizer.AddSpacer((10,0)) hsizer.Add(lbl, 1, wx.ALIGN_RIGHT, wx.EXPAND) sizer.Add(hsizer) self.save_btn = wx.Button(self, label='Save') self.close_btn = wx.Button(self, label='Close') self.Bind(wx.EVT_BUTTON, self.on_save, self.save_btn) self.Bind(wx.EVT_BUTTON, self.on_close, self.close_btn) hsizer = wx.BoxSizer(wx.HORIZONTAL) hsizer.Add(self.save_btn) hsizer.Add(self.close_btn) sizer.AddSpacer((0,10)) sizer.Add(hsizer) sizer.AddSpacer((0,10)) self.SetSizer(sizer) def do_update(self): pass def close(self): if self.delete_callback is not None: self.delete_callback() self.Destroy() def on_close(self, e): self.close() def on_save(self, e): for key in self.cfg.options: self.cfg[key] = self.opt_ctrls[key].GetValue() self.cfg.write() for cb in callbacks['update_config']: cb() self.close()
def init_plot(self): self.cfg = NervenConfig() self.sizer = wx.BoxSizer(wx.VERTICAL) self.plot = SensorPlot(self, SENSOR_PLOT_ID) self.wave_tail = {} self.plotted_axes = {} self.draw_counter = 1001 maxlen = TAIL_LEN*SAMPLE_FREQ for wave in BRAIN_WAVES: self.wave_tail[wave] = deque([0.0]*maxlen, maxlen=maxlen) hsizer0 = wx.BoxSizer(wx.HORIZONTAL) hsizer1 = wx.BoxSizer(wx.HORIZONTAL) self.sizer.Add(hsizer0) self.sizer.Add(self.plot, 1, wx.EXPAND) self.SetSizer(self.sizer)
def __init__(self, parent, id, opts): wx.Frame.__init__(self, parent, MAIN_FRAME_ID, MAIN_TITLE) self.opts = opts self.cfg = NervenConfig(create=True) self.status_bar = self.CreateStatusBar(STATUS_FIELDS) self._create_menu() self._set_poll_timer() self._init_epoc() self.init_notebook() self.init_capture_controls() self.draw_counter = 1001 self.Show(True) self.Maximize(True) if not self.have_epoc: dlg = wx.MessageDialog( self, "Cannot open EEG data stream at %s." % self.cfg['data_path'], "Error", wx.OK) dlg.ShowModal() dlg.Destroy()
def __init__(self, parent, delete_callback=None): wx.Panel.__init__(self, parent) self.delete_callback = delete_callback self.cfg = NervenConfig() self.init_ctrls()
def __init__(self, parent, epoc_mgr): wx.Panel.__init__(self, parent) self.epoc_mgr = epoc_mgr self.cfg = NervenConfig() self.init_plot()
def __init__(self, parent, delete_callback=None): wx.Panel.__init__(self, parent) self.delete_callback = delete_callback self.cfg = NervenConfig() self.init_ctrls()