def adjust_jornada(self): jornadaL = wx.BoxSizer(wx.HORIZONTAL) x = 135 sizeL = (x, 17) style = wx.ALIGN_CENTRE self.txts = [ wx.StaticText(self, -1, 'Entrada', size=sizeL, style=style), wx.StaticText(self, -1, 'Saida Almoço', size=sizeL, style=style), wx.StaticText(self, -1, 'Entrada 2', size=sizeL, style=style), wx.StaticText(self, -1, self.SaidaStates.NORMAL.value, size=sizeL, style=style) ] self.saidaL = self.txts[3] for txt in self.txts: txt.SetForegroundColour((255, 255, 255)) txt.SetBackgroundColour((0, 0, 0)) jornadaL.Add(txt, 0, wx.ALIGN_CENTER) size = (x, 50) self.entrada = gizmos.LEDNumberCtrl(self, -1, size=size, style=gizmos.LED_ALIGN_CENTER | gizmos.LED_DRAW_FADED) self.almoco_start = gizmos.LEDNumberCtrl(self, -1, size=size, style=gizmos.LED_ALIGN_CENTER | gizmos.LED_DRAW_FADED) self.almoco_end = gizmos.LEDNumberCtrl(self, -1, size=size, style=gizmos.LED_ALIGN_CENTER | gizmos.LED_DRAW_FADED) self.saida = gizmos.LEDNumberCtrl(self, -1, size=size, style=gizmos.LED_ALIGN_CENTER | gizmos.LED_DRAW_FADED) jornada = wx.BoxSizer(wx.HORIZONTAL) jornada.Add(self.entrada, 1) jornada.Add(self.almoco_start, 1) jornada.Add(self.almoco_end, 1) jornada.Add(self.saida, 1) return (jornadaL, jornada)
def __init__(self, parent, *args, **kwargs): wx.Panel.__init__(self, parent, *args, **kwargs) self.clock = giz.LEDNumberCtrl(self, size=(280, 70), style=giz.LED_ALIGN_CENTER) self.clock.SetValue(dt.datetime.now().time().strftime('%H %M %S')) self.clock.SetBackgroundColour(wx.NullColour)
def create_wxwindow(self): from wx import gizmos w = gizmos.LEDNumberCtrl(self.parent, self.id, self.pos, self.size, self.style) align = self.style & 7 if align: w.SetAlignment(align) w.SetValue(self.value) return w
def __init__(self, parent, *args, **kwargs): wx.Panel.__init__(self, parent, *args, **kwargs) self.clock = giz.LEDNumberCtrl(self, size=(280, 70), style=giz.LED_ALIGN_CENTER) self.clock.SetValue(dt.datetime.now().time().strftime('%H %M %S')) self.clock.SetBackgroundColour(wx.NullColour) EVT_LINK(self, EVT_TIME_UPDATE_ID, self.timeUpdate) TimeThread(self)
def __init__(self, parent): Pest.BasicTab.__init__(self, parent) style = gizmos.LED_ALIGN_CENTER self.led = gizmos.LEDNumberCtrl(self, -1, (0, 0), (150, 35), style) self.OnTimer(None) self.timer = wx.Timer(self, -1) self.timer.Start(1000) self.Bind(wx.EVT_TIMER, self.OnTimer) '''
def LEDinit(self): led = gizmos.LEDNumberCtrl(self.keybdbk, -1, (830, 15), (150, 40), gizmos.LED_ALIGN_CENTER) led.SetForegroundColour('white') led.SetBackgroundColour('black') self.clock = led self.OnTimer(None) self.timer = wx.Timer() self.timer.Start(1000) self.timer.Bind(wx.EVT_TIMER, self.OnTimer)
def _buildGenInfoSizer(self): """ Build the generator information display panel.""" # LED area uSizer = wx.BoxSizer(wx.HORIZONTAL) flagsR = wx.RIGHT | wx.ALIGN_CENTER_VERTICAL # Frequence LED self.feqLedBt = wx.Button(self, label='Frequency', size=(80, 30)) self.feqLedBt.SetBackgroundColour(wx.Colour('GRAY')) uSizer.Add(self.feqLedBt, flag=flagsR, border=2) self.feqLedDis = gizmos.LEDNumberCtrl(self, -1, size=(80, 35), style=gizmos.LED_ALIGN_CENTER) uSizer.Add(self.feqLedDis, flag=flagsR, border=2) uSizer.AddSpacer(10) # Voltage LED self.volLedBt = wx.Button(self, label='Voltage', size=(80, 30)) self.volLedBt.SetBackgroundColour(wx.Colour('GRAY')) uSizer.Add(self.volLedBt, flag=flagsR, border=2) self.volLedDis = gizmos.LEDNumberCtrl(self, -1, size=(80, 35), style=gizmos.LED_ALIGN_CENTER) uSizer.Add(self.volLedDis, flag=flagsR, border=2) uSizer.AddSpacer(10) # Smoke LED self.smkIdc = wx.Button(self, label='Smoke [OFF]', size=(100, 30), name='smoke') self.smkIdc.SetBackgroundColour(wx.Colour('GRAY')) uSizer.Add(self.smkIdc, flag=flagsR, border=2) uSizer.AddSpacer(10) # Siren LED self.sirenIdc = wx.Button(self, label='Siren [OFF]', size=(100, 30), name='smoke') self.sirenIdc.SetBackgroundColour(wx.Colour('GRAY')) uSizer.Add(self.sirenIdc, flag=flagsR, border=2) uSizer.AddSpacer(10) return uSizer
def __init__(self, parent): XmlPanel.__init__(self, parent) self.clock = gizmos.LEDNumberCtrl(self, -1, (0,0), (500, 80),gizmos.LED_ALIGN_CENTER | wx.NO_BORDER)# | gizmos.LED_DRAW_FADED) self.clock.SetBackgroundColour(parent.GetBackgroundColour()) self.clock.SetForegroundColour(parent.GetForegroundColour()) self.SetBackgroundColour(parent.GetBackgroundColour()) self.OnTimer(None) self.timer = wx.Timer(self) self.timer.Start(1000) self.Bind(wx.EVT_TIMER, self.OnTimer)
def __init__(self, parent=None, id=-1): wx.Window.__init__(self, parent, id, size=(258, 92)) # wx.Window.__init__(self, parent, id, size=sz) self.parent = parent self.Bind(wx.EVT_PAINT, self.OnPaint) self.timer = wx.Timer(self) # 创建定时器 self.Bind(wx.EVT_TIMER, self.OnTimer, self.timer) # 绑定一个定时器事件 self.timeToCount = 0 # 累计秒数 w, h = self.GetClientSize() # print w,h self.led = gizmos.LEDNumberCtrl(self, -1, wx.DefaultPosition, (w - 10, h - 30), gizmos.LED_ALIGN_CENTER) self.led.SetBackgroundColour("black") self.led.SetForegroundColour("red") # 开始按钮 self.startButton = wx.Button(self, id, label=ICON_START) self.startButton.SetToolTip(wx.ToolTip('Start')) self.Bind(wx.EVT_BUTTON, self.OnStart, self.startButton) # 暂停按钮 self.suspendButton = wx.Button(self, id, label=ICON_SUSPEND) self.suspendButton.SetToolTip(wx.ToolTip('Suspend')) self.Bind(wx.EVT_BUTTON, self.OnStop, self.suspendButton) # 重新开始按钮 self.restartButton = wx.Button(self, id, label=ICON_RESTART) self.restartButton.SetToolTip(wx.ToolTip('Restart')) self.Bind(wx.EVT_BUTTON, self.OnRestart, self.restartButton) self.timeRadio = wx.RadioButton(self, -1, "时钟", style=wx.RB_GROUP) self.Bind(wx.EVT_RADIOBUTTON, self.OnRadio, self.timeRadio) self.timerRadio = wx.RadioButton(self, -1, "正计时") self.Bind(wx.EVT_RADIOBUTTON, self.OnRadio, self.timerRadio) self.timer_rRadio = wx.RadioButton(self, -1, "倒计时") self.Bind(wx.EVT_RADIOBUTTON, self.OnRadio, self.timer_rRadio) # sizer sizer = wx.GridBagSizer(hgap=10, vgap=10) sizer.Add(self.led, pos=(0, 0), span=(1, 3), flag=wx.EXPAND) sizer.Add(self.startButton, pos=(1, 0), flag=wx.EXPAND) sizer.Add(self.suspendButton, pos=(1, 1), flag=wx.EXPAND) sizer.Add(self.restartButton, pos=(1, 2), flag=wx.EXPAND) sizer.Add(self.timeRadio, pos=(2, 0), flag=wx.ALIGN_CENTER) sizer.Add(self.timerRadio, pos=(2, 1), flag=wx.ALIGN_CENTER) sizer.Add(self.timer_rRadio, pos=(2, 2), flag=wx.ALIGN_CENTER) self.SetSizer(sizer) self.Fit() self.IsSuspend = False
def __init__(self, parent): wx.Panel.__init__(self, parent) self.SetBackgroundColour("blue") # 时钟效果 led = gizmos.LEDNumberCtrl(self, -1, (0, 0), (300, 50), gizmos.LED_ALIGN_CENTER) self.clock = led self.timer = wx.Timer(self) self.timer.Start(1000) self.Bind(wx.EVT_TIMER, self.OnTimer)
def __init__(self, parent, log): wx.Panel.__init__(self, parent, -1) self.log = log led = gizmos.LEDNumberCtrl(self, -1, (25,25), (280, 50)) led.SetValue("01234") led = gizmos.LEDNumberCtrl(self, -1, (25,100), (280, 50)) led.SetValue("56789") led.SetAlignment(gizmos.LED_ALIGN_RIGHT) led.SetDrawFaded(False) led = gizmos.LEDNumberCtrl(self, -1, (25,175), (280, 50), gizmos.LED_ALIGN_CENTER)# | gizmos.LED_DRAW_FADED) self.clock = led self.OnTimer(None) self.timer = wx.Timer(self) self.timer.Start(1000) self.Bind(wx.EVT_TIMER, self.OnTimer)
def DoCreateResource(self): assert self.GetInstance() is None w = gizmos.LEDNumberCtrl(self.GetParentAsWindow(), self.GetID(), self.GetPosition(), self.GetSize(), self.GetStyle()) # wxLED_ALIGN_MASK was incorrect align = self.GetStyle() & 7 if align: w.SetAlignment(self.GetStyle() & 7) w.SetValue(self.GetText('value')) self.SetupWindow(w) return w
def __init__(self, parent, id): pos = wx.DefaultPosition wx.Frame.__init__(self, parent, id, title='LED Clock', pos=pos, size=(350, 100)) size = wx.DefaultSize style = gizmos.LED_ALIGN_CENTER self.led = gizmos.LEDNumberCtrl(self, -1, pos, size, style) # default colours are green on black self.led.SetBackgroundColour("blue") self.led.SetForegroundColour("yellow") self.OnTimer(None) self.timer = wx.Timer(self, -1) # update clock digits every second (1000ms) self.timer.Start(1000) self.Bind(wx.EVT_TIMER, self.OnTimer)
def __init__(self, parent, id): pos = wx.DefaultPosition wx.Frame.__init__(self, parent, id, title='Clock', pos=pos, size=(600, 100)) size = wx.DefaultSize style = gizmos.LED_ALIGN_CENTER self.led = gizmos.LEDNumberCtrl(self, -1, pos, (20, 20), style) # culori de folosit self.led.SetBackgroundColour("black") self.led.SetForegroundColour("cyan") self.OnTimer(None) self.timer = wx.Timer(self, -1) # update clock digits every second (1000ms) self.timer.Start(1000) self.Bind(wx.EVT_TIMER, self.OnTimer) self.Centre()
def InitUI(self): self.adjust_menu() jornadaL, jornada = self.adjust_jornada() self.countdown = gizmos.LEDNumberCtrl(self, -1, style=gizmos.LED_ALIGN_CENTER | gizmos.LED_DRAW_FADED) lines = wx.BoxSizer(wx.VERTICAL) lines.Add(jornadaL, 1, wx.ALIGN_CENTER) lines.Add(jornada, 1, wx.ALIGN_CENTER) lines.Add(self.countdown, 1, wx.EXPAND) self.SetSizer(lines) self.load_info() self.adjust_events()
def __init__(self, parent, myId): # setup window wx.Window.__init__(self, parent, myId) # setup painter self.SetBackgroundColour("Black") # window背景颜色 self.pen = wx.Pen("??") # instance 画笔属性 self.brush = wx.Brush("??") # 填充色块属性 self.timeToCount = 0 # 累计秒数 self.led = gizmos.LEDNumberCtrl(self, -1, (25, 5), (248, 50), gizmos.LED_ALIGN_CENTER) self.led.SetBackgroundColour("black") self.led.SetForegroundColour("red") # setup timer self.controller = WorldController.Controller() self.timer = wx.Timer(self) # 创建定时器 self.Bind(wx.EVT_TIMER, self.update, self.timer) # 绑定处理事件self.update self.timer.Start(REFRESH_INTERVAL) # 间隔REFRESH_INTERVAL=50毫秒刷新
def __init__(self, parent): """Constructor""" wx.Panel.__init__(self, parent=parent) self.frame = parent # Publisher().subscribe(self.showFrame, ("show.mainframe")) heading = wx.StaticText(self,-1,label="RMUTK ATTENDANCE",pos=(120,10)) headingFont = wx.Font(40, wx.DECORATIVE, wx.NORMAL, wx.NORMAL) heading.SetFont(headingFont) roomNumber = wx.StaticText(self, -1, pos=(260, 100)) roomNumberFont = wx.Font(30, wx.DECORATIVE, wx.NORMAL, wx.NORMAL) roomNumber.SetFont(roomNumberFont) # # clock = AnalogClockWindow(self) # clock.SetBackgroundColour("yellow") roomTxt1 = "Room: " roomTxt2 = manage_db.getRoom("pi-server") clockinBtn = wx.Button(self, label="Press to clock in",pos=(320,240)) clockinBtn.Bind(wx.EVT_BUTTON, self.clockin) enrollBtn = wx.Button(self, label="Enroll user fingerprint",pos=(300,290)) enrollBtn.Bind(wx.EVT_BUTTON, self.regFinger) led = gizmos.LEDNumberCtrl(self, -1, (250, 170), (280, 50), gizmos.LED_ALIGN_CENTER) # | gizmos.LED_DRAW_FADED) self.clock = led self.OnTimer(None) self.timer = wx.Timer(self) self.timer.Start(1) self.Bind(wx.EVT_TIMER, self.OnTimer) roomNumber.SetLabel(roomTxt1 + roomTxt2)
def __init__(self): super().__init__(parent=None, title="Dashboard", size=PI_SCREEN_RESOLUTION) layout = wx.BoxSizer(wx.VERTICAL) textStyle = wx.Font(pointSize=12, family=wx.FONTFAMILY_SWISS, style=wx.FONTSTYLE_NORMAL, weight=wx.FONTWEIGHT_NORMAL, underline=False, faceName="", encoding=wx.FONTENCODING_SYSTEM) self.clock = gizmos.LEDNumberCtrl(self, wx.ID_ANY, wx.DefaultPosition, wx.Size(180, 40), gizmos.LED_ALIGN_CENTER) self.clockTick = wx.Timer(self, 1) # update clock digits every second (1000ms) self.clockTick.Start(1000) self.refreshTimer = wx.Timer(self, 2) # update the rest once an hour self.refreshTimer.Start(3600000) self.Bind(wx.EVT_TIMER, self.OnTimer) layout.Add(self.clock, 0, 0, 0) self.weatherText = wx.StaticText(self) self.weatherText.SetFont(textStyle) layout.Add(self.weatherText, 0, 0, 0) self.weatherGraphic = wx.StaticBitmap(self) layout.Add(self.weatherGraphic, 0, 0, 0) self.rainText = wx.StaticText(self) self.rainText.SetFont(textStyle) layout.Add(self.rainText, 0, 0, 0) self.newsTitle = wx.StaticText(self) self.newsTitle.SetFont(textStyle) layout.Add(self.newsTitle, 0, 0, 0) self.coronavirusText = wx.StaticText(self) self.coronavirusText.SetFont(textStyle) layout.Add(self.coronavirusText, 0, 0, 0) self.newsList = wx.ListBox(self) self.newsList.SetFont(textStyle) layout.Add(self.newsList, 1, wx.EXPAND | wx.ALL, 0) powerButtons = wx.BoxSizer(wx.HORIZONTAL) fanButton = wx.Button(self, wx.ID_ANY, "Fan") fanButton.Bind(wx.EVT_BUTTON, power.toggleFan) powerButtons.Add(fanButton, 0, 0, 0) heaterButton = wx.Button(self, wx.ID_ANY, "Heater") heaterButton.Bind(wx.EVT_BUTTON, power.toggleHeater) powerButtons.Add(heaterButton, 0, 0, 0) layout.Add(powerButtons, 0, 0, 0) self.powerUsage = wx.StaticText(self) self.powerUsage.SetFont(textStyle) layout.Add(self.powerUsage, 0, 0, 0) self.flatConditions = wx.StaticText(self) self.flatConditions.SetFont(textStyle) layout.Add(self.flatConditions, 0, 0, 0) self.trafficInfo = wx.StaticText(self) self.trafficInfo.SetFont(textStyle) layout.Add(self.trafficInfo, 0, 0, 0) self.WANIP = wx.StaticText(self) self.WANIP.SetFont(textStyle) layout.Add(self.WANIP, 0, 0, 0) self.pendingSMS = wx.StaticText(self) self.pendingSMS.SetFont(textStyle) layout.Add(self.pendingSMS, 0, 0, 0) self.signalStrength = wx.StaticText(self) self.signalStrength.SetFont(textStyle) layout.Add(self.signalStrength, 0, 0, 0) refreshBox = wx.BoxSizer(wx.HORIZONTAL) refreshButton = wx.Button(self, wx.ID_ANY, "Refresh") refreshButton.Bind(wx.EVT_BUTTON, self.refreshButtonClick) refreshBox.Add(refreshButton, 0, 0, 0) self.refreshTime = wx.StaticText(self) refreshBox.Add(self.refreshTime, 0, 0, 0) layout.Add(refreshBox, 0, 0, 0) self.refreshedTime = datetime.datetime.min self.refreshAll() self.SetSizer(layout) self.Show()
def _buidUISizer(self): """ Build the main UI Sizer. """ flagsR = wx.RIGHT | wx.ALIGN_CENTER_VERTICAL sizerAll = wx.BoxSizer(wx.VERTICAL) sizerAll.AddSpacer(5) # LED area uSizer = wx.BoxSizer(wx.HORIZONTAL) lbList = ('Frequency : ', 'Voltage : ', 'LoadNum : ') for i in range(3): uSizer.Add(wx.StaticText(self, label=lbList[i]), flag=flagsR, border=2) led = gizmos.LEDNumberCtrl(self, -1, size=(60, 25), style=gizmos.LED_ALIGN_CENTER) self.ledList.append(led) uSizer.AddSpacer(5) uSizer.Add(led, flag=flagsR, border=2) uSizer.AddSpacer(10) uSizer.Add(wx.StaticText(self, label="pump Speed"), flag=flagsR, border=2) self.MotoSP = wx.ComboBox(self, -1, choices=['off', 'low', 'high']) self.MotoSP.SetSelection(0) self.MotoSP.Bind(wx.EVT_COMBOBOX, self.onPumpSpdChange) uSizer.Add(self.MotoSP, flag=flagsR, border=2) sizerAll.Add(uSizer, flag=flagsR, border=2) sizerAll.AddSpacer(5) sizerAll.Add(wx.StaticLine(self, wx.ID_ANY, size=(600, -1), style=wx.LI_HORIZONTAL), flag=flagsR, border=2) mSizer = wx.BoxSizer(wx.HORIZONTAL) # Col 0 : output load sizer: vbox = wx.BoxSizer(wx.VERTICAL) vbox.Add(wx.StaticText(self, label="Load setting: "), flag=flagsR, border=2) vbox.AddSpacer(5) loadLb = ('Airport', 'Train track A', 'Train track B', 'City Pwr', 'Industrial Pwr') for i in range(5): cb = wx.CheckBox(self, label='Load[%s]: %s' % (str(i), loadLb[i])) cb.Bind(wx.EVT_CHECKBOX, self.onCheck) vbox.Add(cb, flag=flagsR, border=2) vbox.AddSpacer(5) mSizer.Add(vbox, flag=flagsR, border=2) mSizer.Add(wx.StaticLine(self, wx.ID_ANY, size=(-1, 140), style=wx.LI_VERTICAL), flag=flagsR, border=2) # Col 1: moto mSizer.AddSpacer(5) gv.iMotoImgPnl = pl.PanelMoto(self) mSizer.Add(gv.iMotoImgPnl, flag=flagsR, border=2) mSizer.AddSpacer(5) mSizer.Add(wx.StaticLine(self, wx.ID_ANY, size=(-1, 140), style=wx.LI_VERTICAL), flag=flagsR, border=2) mSizer.AddSpacer(5) gv.iPumpImgPnl = pl.PanelPump(self) mSizer.Add(gv.iPumpImgPnl, flag=flagsR, border=2) mSizer.AddSpacer(5) mSizer.Add(wx.StaticLine(self, wx.ID_ANY, size=(-1, 140), style=wx.LI_VERTICAL), flag=flagsR, border=2) mSizer.AddSpacer(5) gv.iCtrlPanel = pl.PanelCtrl(self) mSizer.Add(gv.iCtrlPanel, flag=flagsR, border=2) sizerAll.Add(mSizer, flag=flagsR, border=2) return sizerAll
def __init__(self, parent): wx.Frame.__init__(self, parent, id=wx.ID_ANY, title=u"Captura de señales para el gesto 1", pos=wx.DefaultPosition, size=wx.Size(1400, 700), style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL) self.SetSizeHintsSz(wx.DefaultSize, wx.DefaultSize) bSizer4 = wx.BoxSizer(wx.VERTICAL) self.m_staticText2 = wx.StaticText( self, wx.ID_ANY, u"Captura de señales para el primer gesto \n", wx.DefaultPosition, wx.Size(700, -1), 0) self.m_staticText2.Wrap(-1) self.m_staticText2.SetFont( wx.Font(34, 70, 90, 90, False, wx.EmptyString)) bSizer4.Add(self.m_staticText2, 0, wx.ALIGN_CENTER_HORIZONTAL, 10) bSizer49 = wx.BoxSizer(wx.VERTICAL) bSizer50 = wx.BoxSizer(wx.HORIZONTAL) bSizer50.SetMinSize(wx.Size(700, -1)) self.m_staticText30 = wx.StaticText( self, wx.ID_ANY, u"Para iniciar el experimento por favor observe \n ", wx.DefaultPosition, wx.Size(1000, -1), 0) self.m_staticText30.Wrap(-1) self.m_staticText30.SetFont( wx.Font(17, 70, 90, 90, False, wx.EmptyString)) bSizer50.Add(self.m_staticText30, 0, wx.ALL, 5) bSizer52 = wx.BoxSizer(wx.VERTICAL) bSizer52.SetMinSize(wx.Size(90, -1)) self.m_button32 = wx.Button( self, wx.ID_ANY, u"Inicio", wx.Point(-1, -1), wx.Size(150, -1), 0) self.m_button32.SetFont(wx.Font(25, 70, 90, 90, False, wx.EmptyString)) bSizer52.Add(self.m_button32, 0, wx.TOP, 10) bSizer50.Add(bSizer52, 1, 0, 5) self.m_animCtrl1 = AnimationCtrl(self, pos=( 40, 40), size=(24, 24), name="AnimationCtrl") self.m_animCtrl1.LoadFile(u"/Users/macfabian/Desktop/manos.gif") self.m_animCtrl1.Play() self.m_animCtrl1.SetMinSize(wx.Size(200, -1)) bSizer50.Add(self.m_animCtrl1, 0, wx.ALIGN_CENTER, 5) bSizer49.Add(bSizer50, 1, 0, 5) bSizer51 = wx.BoxSizer(wx.VERTICAL) self.m_staticText31 = wx.StaticText( self, wx.ID_ANY, u"Señal EMG", wx.DefaultPosition, wx.DefaultSize, 0) self.m_staticText31.Wrap(-1) self.m_staticText31.SetFont( wx.Font(18, 70, 90, 90, False, wx.EmptyString)) bSizer51.Add(self.m_staticText31, 0, wx.ALL, 5) self.figure = Figure(figsize=(1, 2), dpi=80) self.axes = self.figure.add_subplot(111) t = np.arange(0.0, 3.0, 0.01) s = np.sin(2 * np.pi * t) self.axes.plot(t, s) self.canvas = FigureCanvas(self, -1, self.figure) bSizerEMG = wx.BoxSizer(wx.VERTICAL) bSizerEMG.Add(self.canvas, 1, wx.TOP | wx.LEFT | wx.EXPAND) bSizer49.Add(bSizerEMG, 1, wx.EXPAND, 5) bSizer49.Add(bSizer51, 1, wx.EXPAND, 5) bSizer53 = wx.BoxSizer(wx.VERTICAL) self.m_staticText32 = wx.StaticText( self, wx.ID_ANY, u"Señal EEG", wx.DefaultPosition, wx.DefaultSize, 0) self.m_staticText32.Wrap(-1) self.m_staticText32.SetFont( wx.Font(18, 70, 90, 90, False, wx.EmptyString)) self.figure = Figure(figsize=(1, 2), dpi=80) self.axes = self.figure.add_subplot(111) t = np.arange(0.0, 3.0, 0.01) s = np.sin(2 * np.pi * t) self.axes.plot(t, s) self.canvas = FigureCanvas(self, -1, self.figure) bSizerEEG = wx.BoxSizer(wx.VERTICAL) bSizerEEG.Add(self.canvas, 1, wx.TOP | wx.LEFT | wx.EXPAND) bSizer49.Add(bSizerEEG, 1, wx.EXPAND, 5) bSizer53.Add(self.m_staticText32, 0, wx.ALL, 5) bSizer49.Add(bSizer53, 1, wx.EXPAND, 5) bSizer8 = wx.BoxSizer(wx.HORIZONTAL) self.m_staticText33 = wx.StaticText( self, wx.ID_ANY, u"Tiempo:", wx.DefaultPosition, wx.Size(550, -1), 0) self.m_staticText33.Wrap(-1) self.m_staticText33.SetFont( wx.Font(18, 70, 90, 90, False, wx.EmptyString)) bSizer8.Add(self.m_staticText33, 0, wx.ALL, 5) pos = wx.DefaultPosition size = wx.DefaultSize style = gizmos.LED_ALIGN_CENTER self.led = gizmos.LEDNumberCtrl(self, -1, pos, size, style) self.led.SetBackgroundColour("white") self.led.SetForegroundColour("black") bSizerTimmer = wx.BoxSizer(wx.VERTICAL) bSizerTimmer.Add(self.led, 1, wx.TOP | wx.LEFT | wx.EXPAND) bSizer49.Add(bSizerTimmer, 1, wx.EXPAND, 5) self.button_siguiente = wx.Button( self, wx.ID_ANY, u"Aceptar", wx.DefaultPosition, wx.Size(150, -1), 0) self.button_siguiente.SetFont( wx.Font(18, 70, 90, 90, False, wx.EmptyString)) bSizer8.Add(self.button_siguiente, 0, wx.ALL, 5) self.button_salir = wx.Button( self, wx.ID_ANY, u"Salir", wx.DefaultPosition, wx.Size(150, -1), 0) self.button_salir.SetFont( wx.Font(18, 70, 90, 90, False, wx.EmptyString)) bSizer8.Add(self.button_salir, 0, wx.ALL, 5) bSizer49.Add(bSizer8, 0, wx.TOP, 1) bSizer4.Add(bSizer49, 1, wx.EXPAND, 5) self.SetSizer(bSizer4) self.Layout() self.Centre(wx.BOTH) # Connect Events self.m_button32.Bind(wx.EVT_BUTTON, self.OnClickInicio) self.button_siguiente.Bind(wx.EVT_BUTTON, self.OnClickConcentimiento) self.button_salir.Bind(wx.EVT_BUTTON, self.OnClickSalir)
def __init__(self, parent, id, title): wx.Frame.__init__(self, parent, id, title, wx.DefaultPosition, wx.Size(640, 800)) ##### Create Menu: ##### menubar = wx.MenuBar() file = wx.Menu() file.Append(201, '&Initialize\tCtrl+I', 'initialize frame') file.Append(203, '&Stop update\tCtrl+S', 'stop reading DDX data') file.AppendSeparator() quit = wx.MenuItem(file, 202, '&Quit\tCtrl+Q', 'Quit the Application') file.AppendItem(quit) menubar.Append(file, '&File') self.SetMenuBar(menubar) self.Bind(wx.EVT_MENU, self.onQuit, id=202) self.Bind(wx.EVT_MENU, self.onInit, id=201) self.Bind(wx.EVT_MENU, self.onStop, id=203) self.Centre() #### setup timer: #### self.timer = wx.Timer(self) self.Bind(wx.EVT_TIMER, self.OnUpdate, self.timer) #### setup picture panel: #### #sizer = wx.BoxSizer(wx.VERTICAL) panel = wx.Panel(self, -1, size=(600, 600), style=wx.SUNKEN_BORDER) self.comp = wx.StaticBitmap(panel) #self.comp.SetPosition((89.5,89.5)) #self.comp.Center() self.boat = wx.StaticBitmap(panel) self.wind = wx.StaticBitmap(panel) #self.tacho = wx.StaticBitmap(panel) #self.boat.SetPosition((100,100)) panel.SetBackgroundColour('black') panel.SetPosition((20, 20)) #panel.Center() wx.EVT_PAINT(self, self.OnPaint) self.SetBackgroundColour('black') #### on/off: self.status = wx.StaticText(panel, -1, 'OFF', pos=(550, 570)) self.status.SetForegroundColour('white') #### text below: #### self.text = wx.StaticText(self, -1, 'Wind speed:', pos=(30, 645)) self.text2 = wx.StaticText(self, -1, 'knots', pos=(280, 645)) self.text.SetForegroundColour('white') self.text2.SetForegroundColour('white') newfont = wx.Font(12, wx.TELETYPE, wx.NORMAL, wx.NORMAL) self.text.SetFont(newfont) self.text2.SetFont(newfont) self.wspeed = gizmos.LEDNumberCtrl(self, 100, wx.DefaultPosition, wx.DefaultSize, gizmos.LED_ALIGN_RIGHT) self.wspeed.SetPosition((180, 635)) self.wspeed.SetSize((90, 30)) #### text below: #### self.text3 = wx.StaticText(self, -1, 'Wind direction:', pos=(30, 685)) self.text4 = wx.StaticText(self, -1, 'degree', pos=(280, 685)) self.text3.SetForegroundColour('white') self.text4.SetForegroundColour('white') self.text3.SetFont(newfont) self.text4.SetFont(newfont) self.wdirect = gizmos.LEDNumberCtrl(self, 100) #, gizmos.LED_ALIGN_CENTER) self.wdirect.SetPosition((180, 675)) self.wdirect.SetSize((90, 30))
def __init__(self, parent, id, title): wx.Frame.__init__(self, parent, id, title, size=(800, 600), style=wx.MINIMIZE_BOX | wx.CAPTION | wx.CLOSE_BOX) self.Maximize(False) appimg = wx.Bitmap('img/app.ico', wx.BITMAP_TYPE_ICO) icon = wx.EmptyIcon() icon.CopyFromBitmap(appimg) self.SetIcon(icon) self.process = 0 self.update = 0 self.users = {} self.speed = 0 self.speedCheck = 0 self.tim = 0 self.mgr = aui.AuiManager() self.mgr.SetManagedWindow(self) self.tb = wx.ToolBar(self, style=TBFLAGS) self.tb.SetToolBitmapSize(wx.Size(48, 48)) self.status = self.CreateStatusBar() self.status.SetFieldsCount(3) make = self.status.GetField(1) self.status.SetStatusWidths([250, -2, -1]) rect2 = self.status.GetFieldRect(2) rect1 = self.status.GetFieldRect(1) self.sendtext = wx.StaticText(self.status, -1, "") self.sendtext.SetPosition((rect1.x + 2, rect1.y + 2)) self.sendtext.SetSize((rect1.width - 4, rect1.height - 4)) self.g1 = wx.Gauge(self.status, -1, 50, (110, 95), (250, 25)) self.g1.SetPosition((rect2.x + 2, rect2.y + 2)) self.g1.SetSize((rect2.width - 4, rect2.height - 4)) tsize = (50, 50) create_bmp = wx.Bitmap('img/create_small.png') join_bmp = wx.Bitmap('img/join_small.png') send_bmp = wx.Bitmap('img/send_small.png') stop_bmp = wx.Bitmap('img/cancel_small.png') profile_bmp = wx.Bitmap('img/settings_small.png') disc_bmp = wx.Bitmap('img/discon_small.png') recon_bmp = wx.Bitmap('img/recon_small.png') info_bmp = wx.Bitmap('img/info_small.png') self.tbox = wx.BoxSizer(wx.HORIZONTAL) Lpeers = wx.StaticText(self.tb, -1, 'Peers:\t') self.peers = wx.CheckListBox(self.tb, -1, size=((-1, 68))) self.tbox.Add(Lpeers) self.tbox.Add(self.peers) self.tb.SetToolBitmapSize(tsize) #Toolbars self.tb.AddLabelTool(11, "Create Network", create_bmp, shortHelp="Create Network", longHelp="Create Network") self.tb.AddLabelTool(12, "Join Network", join_bmp, shortHelp="Join Network", longHelp="Join a created Network") self.tb.AddLabelTool(16, "Reconnect", recon_bmp, shortHelp="Reconnect", longHelp="Reconnect to same Network") self.tb.AddLabelTool(17, "Disconnect", disc_bmp, shortHelp="Disconnect", longHelp="Disconnect Network") self.tb.AddLabelTool(13, "Send", send_bmp, shortHelp="Send", longHelp="Send Files/Folders") self.tb.AddLabelTool(14, "Cancel", stop_bmp, shortHelp="Cancel", longHelp="Cancel File(s)") self.tb.AddLabelTool(15, "Preference ", profile_bmp, shortHelp="Preference", longHelp="Preference") self.tb.AddLabelTool(18, "Info ", info_bmp, shortHelp="About", longHelp="About") self.tb.AddSeparator() self.tb.AddSeparator() self.tb.AddControl(Lpeers) self.tb.AddControl(self.peers) self.tb.AddStretchableSpace() self.tb.Realize() self.tb.EnableTool(13, False) self.tb.EnableTool(14, False) #ToolBar Bindings self.Bind(wx.EVT_TOOL, self.CreateNet, id=11) self.Bind(wx.EVT_TOOL, self.JoinNet, id=12) self.Bind(wx.EVT_TOOL, self.OnSend, id=13) self.Bind(wx.EVT_TOOL, self.OnPreference, id=15) self.Bind(wx.EVT_TOOL, self.OnCancel, id=14) self.Bind(wx.EVT_TOOL, self.OnReconnect, id=16) self.Bind(wx.EVT_TOOL, self.OnDisconncet, id=17) self.Bind(wx.EVT_TOOL, self.aboutDialog, id=18) self.dir = wx.GenericDirCtrl(self, -1) tree = self.dir.GetTreeCtrl() #self.Bind(wx.EVT_TREE_SEL_CHANGED,self.tellMe,tree) self.nb = aui.AuiNotebook(self, style=aui.AUI_NB_TOP) self.panel1 = wx.Panel(self) self.panel1.SetBackgroundColour("WHITE") self.panel2 = scrolled.ScrolledPanel(self, -1, size=(140, 300), style=wx.TAB_TRAVERSAL | wx.SUNKEN_BORDER, name="panel1") self.panel2.SetupScrolling() self.queues = wx.ListBox(self, -1) self.probox = wx.BoxSizer(wx.VERTICAL) self.hisbox = wx.BoxSizer(wx.VERTICAL) self.listhis = wx.ListCtrl(self.panel2, -1, style=wx.LC_REPORT) self.listhis.InsertColumn(0, "Filename") self.listhis.InsertColumn(1, "Size") self.listhis.InsertColumn(2, "Date Created") self.listhis.SetColumnWidth(0, 300) self.listhis.SetColumnWidth(1, 90) self.listhis.SetColumnWidth(2, 180) self.real = wx.Menu() openfile = self.real.Append(-1, "Open File") openfolder = self.real.Append(-1, "Open Folder") delete = self.real.Append(-1, "Delete File history") self.realqueue = wx.Menu() deletequeue = self.realqueue.Append(-1, "Delete Queue") self.Bind(wx.EVT_MENU, self.deleteQueue, deletequeue) self.Bind(wx.EVT_MENU, self.openFile, openfile) self.Bind(wx.EVT_MENU, self.openFolder, openfolder) self.Bind(wx.EVT_MENU, self.deleteFile, delete) self.listhis.Bind(wx.EVT_CONTEXT_MENU, self.listMenu) self.queues.Bind(wx.EVT_CONTEXT_MENU, self.queueMenu) self.panel1.SetSizer(self.probox) self.panel2.SetSizer(self.hisbox) self.hisbox.Add(self.listhis, 0, wx.GROW) self.perc = wx.BoxSizer(wx.HORIZONTAL) self.detail1 = wx.BoxSizer(wx.HORIZONTAL) self.detail2 = wx.BoxSizer(wx.HORIZONTAL) self.probox.Clear() self.g1 = wx.Gauge(self.panel1, -1, 50, (110, 40), (250, 25)) self.filename = wx.StaticText(self.panel1, -1, "Filename: ") self.filenamereal = wx.StaticText(self.panel1, -1) self.start = gz.LEDNumberCtrl(self.panel1, -1, size=(75, 30)) self.start.SetValue("--") self.end = gz.LEDNumberCtrl(self.panel1, -1, size=(75, 30)) self.end.SetValue("--") self.filesize = wx.StaticText(self.panel1, -1, "Filesize: ") self.size = wx.StaticText(self.panel1, -1) self.make = wx.StaticText(self.panel1, -1) #self.start.Hide() #self.end.Hide() self.perc.Add(self.start) self.perc.Add(self.end) self.detail1.Add(self.filename) self.detail1.Add(self.filenamereal) self.detail2.Add(self.filesize) self.detail2.Add(self.size) self.probox.Add(self.perc, 0, wx.ALIGN_CENTER | wx.TOP | wx.BOTTOM, 2) self.probox.Add(self.g1, 0, wx.GROW | wx.ALL, 5) self.probox.Add(self.detail1, 0, wx.LEFT | wx.RIGHT, 5) self.probox.Add(self.detail2, 0, wx.LEFT | wx.RIGHT, 5) self.probox.Add(self.make, 0, wx.LEFT | wx.RIGHT, 5) self.probox.Layout() self.probox.RecalcSizes() self.panel1.Layout() self.populateHistory() self.nb.AddPage(self.panel1, "Downloading") self.nb.AddPage(self.panel2, "History") self.Bind(wx.EVT_CLOSE, self.OnCloseWindow) self.nb.SetSelection(1) self.mgr.AddPane(self.tb, aui.AuiPaneInfo().ToolbarPane().Top().Dockable(False)) self.mgr.AddPane(self.dir, aui.AuiPaneInfo().Name('main').CenterPane()) self.mgr.AddPane( self.queues, aui.AuiPaneInfo().Name('side').Right().Caption( "Process Queue").CloseButton(False).BestSize((150, -1))) self.mgr.AddPane( self.nb, aui.AuiPaneInfo().Caption("Thread").Bottom().CloseButton( False).BestSize((-1, 500))) self.mgr.Update() self.Center() pub.subscribe(self.peerListener, "peers") pub.subscribe(self.lostListener, "lost") pub.subscribe(self.processListener, "process") pub.subscribe(self.updateListener, "update") pub.subscribe(self.clearListener, "done") pub.subscribe(self.sendingListener, "analysing") pub.subscribe(self.stopListener, "stopanalysing") pub.subscribe(self.sentListener, "donereceived") pub.subscribe(self.fileQueue, "filequeue") pub.subscribe(self.deleteFileQueue, "deletefile") pub.subscribe(self.folderQueue, "folderqueue") pub.subscribe(self.deleteFileQueue, "deletefolder") pub.subscribe(self.folderFile, "updatefolder")
def __init__(self, parent, saver): pi = 3.1415 self.start_flight_time = 0 wx.Frame.__init__(self, parent, -1, "Flight Recorder", size=(800, 600)) #tworzy "layout" programu self.panel1 = wx.Panel(self, -1, style=wx.SUNKEN_BORDER, size=(400, 300)) self.panel2 = wx.Panel(self, -1, style=wx.SUNKEN_BORDER, pos=(400, 0), size=(400, 300)) self.panel3 = wx.Panel(self, -1, style=wx.SUNKEN_BORDER, pos=(0, 300), size=(400, 300)) self.panel4 = wx.Panel(self, -1, style=wx.SUNKEN_BORDER, pos=(400, 300), size=(400, 300)) self.panel1.SetBackgroundColour("LIGHT GREY") self.panel2.SetBackgroundColour("LIGHT GREY") self.panel3.SetBackgroundColour("LIGHT GREY") self.panel4.SetBackgroundColour("LIGHT GREY") box = wx.BoxSizer(wx.VERTICAL) box.Add(self.panel1, 2, wx.EXPAND) box.Add(self.panel2, 1, wx.EXPAND) #predkosciomierz self.speed = SM.SpeedMeter( self.panel2, agwStyle=SM.SM_DRAW_HAND | SM.SM_DRAW_SECTORS | SM.SM_DRAW_MIDDLE_TEXT | SM.SM_DRAW_SECONDARY_TICKS, pos=(0, 30), size=(400, 300)) # Set The Region Of Existence Of SpeedMeter (Always In Radians!!!!) self.speed.SetAngleRange(-pi / 6, 7 * pi / 6) # Create The Intervals That Will Divide Our SpeedMeter In Sectors intervals = range(0, 901, 50) self.speed.SetIntervals(intervals) # Assign The Same Colours To All Sectors (We Simulate A Car Control For Speed) # Usually This Is Black colours = [wx.BLACK] * 18 self.speed.SetIntervalColours(colours) # Assign The Ticks: Here They Are Simply The String Equivalent Of The Intervals ticks = [str(interval) for interval in intervals] self.speed.SetTicks(ticks) # Set The Ticks/Tick Markers Colour self.speed.SetTicksColour(wx.WHITE) # We Want To Draw 5 Secondary Ticks Between The Principal Ticks self.speed.SetNumberOfSecondaryTicks(5) # Set The Font For The Ticks Markers self.speed.SetTicksFont(wx.Font(7, wx.SWISS, wx.NORMAL, wx.NORMAL)) # Set The Text In The Center Of SpeedMeter self.speed.SetMiddleText("Km/h") # Assign The Colour To The Center Text self.speed.SetMiddleTextColour(wx.WHITE) # Assign A Font To The Center Text self.speed.SetMiddleTextFont(wx.Font(8, wx.SWISS, wx.NORMAL, wx.BOLD)) # Set The Colour For The Hand Indicator self.speed.SetHandColour(wx.Colour(255, 50, 0)) # Do Not Draw The External (Container) Arc. Drawing The External Arc May # Sometimes Create Uglier Controls. Try To Comment This Line And See It # For Yourself! self.speed.DrawExternalArc(False) # Set The Current Value For The SpeedMeter self.speed.SetSpeedValue(1) #wysokosciomierz self.alt = SM.SpeedMeter(self.panel3, agwStyle=SM.SM_DRAW_HAND | SM.SM_DRAW_SECTORS | SM.SM_DRAW_MIDDLE_TEXT | SM.SM_DRAW_SECONDARY_TICKS, pos=(0, 0), size=(350, 250)) # Set The Region Of Existence Of SpeedMeter (Always In Radians!!!!) self.alt.SetAngleRange(-pi, pi) # Create The Intervals That Will Divide Our SpeedMeter In Sectors intervals = range(0, 11, 1) self.alt.SetIntervals(intervals) # Assign The Same Colours To All Sectors (We Simulate A Car Control For Speed) # Usually This Is Black colours = [wx.BLACK] * 10 self.alt.SetIntervalColours(colours) # Assign The Ticks: Here They Are Simply The String Equivalent Of The Intervals ticks = [str(interval) for interval in intervals] self.alt.SetTicks(ticks) # Set The Ticks/Tick Markers Colour self.alt.SetTicksColour(wx.WHITE) # We Want To Draw 5 Secondary Ticks Between The Principal Ticks self.alt.SetNumberOfSecondaryTicks(5) # Set The Font For The Ticks Markers self.alt.SetTicksFont(wx.Font(7, wx.SWISS, wx.NORMAL, wx.NORMAL)) # Set The Text In The Center Of SpeedMeter self.alt.SetMiddleText("0") # Assign The Colour To The Center Text self.alt.SetMiddleTextColour(wx.WHITE) # Assign A Font To The Center Text self.alt.SetMiddleTextFont(wx.Font(10, wx.SWISS, wx.NORMAL, wx.BOLD)) # Set The Colour For The Hand Indicator self.alt.SetHandColour(wx.Colour(255, 255, 0)) # Do Not Draw The External (Container) Arc. Drawing The External Arc May # Sometimes Create Uglier Controls. Try To Comment This Line And See It # For Yourself! self.alt.DrawExternalArc(False) # Set The Current Value For The SpeedMeter self.alt.SetSpeedValue(0) #kompass self.com = SM.SpeedMeter(self.panel4, agwStyle=SM.SM_DRAW_HAND | SM.SM_DRAW_SECTORS | SM.SM_DRAW_MIDDLE_TEXT | SM.SM_DRAW_SECONDARY_TICKS, pos=(0, 0), size=(350, 250)) # Set The Region Of Existence Of SpeedMeter (Always In Radians!!!!) self.com.SetAngleRange(-pi, pi) # Create The Intervals That Will Divide Our SpeedMeter In Sectors intervals = range(0, 9, 1) self.com.SetIntervals(intervals) # Assign The Same Colours To All Sectors (We Simulate A Car Control For Speed) # Usually This Is Black colours = [wx.BLACK] * 8 self.com.SetIntervalColours(colours) # Assign The Ticks: Here They Are Simply The String Equivalent Of The Intervals ticks = ["W", "WS", "N", "NE", "E", "EW", "S", "SN", ""] self.com.SetTicks(ticks) # Set The Ticks/Tick Markers Colour self.com.SetTicksColour(wx.GREEN) # We Want To Draw 5 Secondary Ticks Between The Principal Ticks self.com.SetNumberOfSecondaryTicks(2) # Set The Font For The Ticks Markers self.com.SetTicksFont(wx.Font(7, wx.SWISS, wx.NORMAL, wx.NORMAL)) # Set The Text In The Center Of SpeedMeter self.com.SetMiddleText("") # Assign The Colour To The Center Text self.com.SetMiddleTextColour(wx.WHITE) # Assign A Font To The Center Text self.com.SetMiddleTextFont(wx.Font(10, wx.SWISS, wx.NORMAL, wx.BOLD)) # Set The Colour For The Hand Indicator self.com.SetHandColour(wx.Colour(255, 0, 0)) # Do Not Draw The External (Container) Arc. Drawing The External Arc May # Sometimes Create Uglier Controls. Try To Comment This Line And See It # For Yourself! self.com.DrawExternalArc(False) # Set The Current Value For The SpeedMeter self.com.SetSpeedValue(2) #zegar led pokazujacy czas lotu self.led = gizmos.LEDNumberCtrl(self.panel1, -1, pos=(10, 30), size=(350, 80), style=gizmos.LED_ALIGN_LEFT) # default colours are green on black self.led.SetBackgroundColour("black") self.led.SetForegroundColour("yellow") #self.on_timer(None) self.timer = wx.Timer(self, -1) # update clock digits every second (1000ms) self.timer.Start(1000) MyFrame.start_flight(self, time.time()) self.Bind(wx.EVT_TIMER, self.since_start) #wywolanie obiektu plane i wystartowanie jako watku, czyli wlaczenie symulatoa self.plane = Plane(self, saver) self.plane.start()
def __init__(self, *args, **kwds): # from *args if len(args) == 0: dlg = wx.MessageDialog(self, 'Parameters setting error', 'Error', wx.OK) dlg.ShowModal() dlg.Destroy() return False #self.classid = args[0][0] #self.kidList = args[0][1] #self.adultList = args[0][2] self.recordFileName = args[0][0] #args[0][3] # local variables self.siteList = self.GetSiteList() self.kidList = self.GetKidList() self.adultList = self.GetAdultList() self.observerList = self.GetObserverList() self.classList = self.GetClassList() self.activityList = self.GetActivityList() self.rndKidList = self.kidList[:] self.rndKidList.insert(0, 'Random Select Child') self.vaKidList = self.kidList + self.adultList self.vaKidList.insert(0, '') self.vaKidList.insert(1, '?') self.record = None self.currentGauge = 1 self.observerDict = self.GetRoundInfo() self.currentObserver = '' # GUI kwds["style"] = wx.DEFAULT_FRAME_STYLE wx.Frame.__init__(self, None, -1, **kwds) self.CreateStatusBar() panel = wx.Panel(self, -1) self.SetBackgroundColour((217, 241, 255)) self.label_30 = wx.StaticText(panel, -1, '') self.label_31 = wx.StaticText(panel, -1, "Current observation #:") self.input1 = wx.TextCtrl(panel, -1, '', (95, 105)) self.label_20 = wx.StaticText(panel, -1, "Date:") self.label_21 = wx.StaticText(panel, -1, "") self.label_22 = wx.StaticText(panel, -1, "Observer:") self.combo_box_ObserverList = wx.ComboBox(panel, -1, choices=self.observerList, style=wx.CB_DROPDOWN) self.label_23 = wx.StaticText(panel, -1, "Class:") self.combo_box_ClassList = wx.ComboBox(panel, -1, choices=self.classList, style=wx.CB_DROPDOWN) self.label_24 = wx.StaticText(panel, -1, "Round# (today):") #roundList = [str(i) for i in range(1,21)] #roundList.insert(0,'') #self.combo_box_RoundList= wx.ComboBox(panel, -1, choices=roundList, style=wx.CB_DROPDOWN) self.label_26 = wx.StaticText(panel, -1, "# Children present:") #self.label_27 = wx.StaticText(panel, -1, "") numOfChild = [str(i) for i in range(1, len(self.kidList))] numOfChild.insert(0, '') self.combo_box_ChildrenPresent = wx.ComboBox(panel, -1, choices=numOfChild, style=wx.CB_DROPDOWN) self.label_28 = wx.StaticText(panel, -1, "Site:") self.combo_box_SiteList = wx.ComboBox(panel, -1, choices=self.siteList, style=wx.CB_DROPDOWN) self.label_29 = wx.StaticText(panel, -1, "Activity setting:") self.combo_box_ActivityList = wx.ComboBox(panel, -1, choices=self.activityList, style=wx.CB_DROPDOWN) self.button_randSelKid = buttons.GenBitmapButton( panel, -1, bitRedDice.getsmall_red_diceBitmap(), style=1) self.combo_box_RndChildList = wx.ComboBox(panel, -1, choices=self.rndKidList, style=wx.CB_DROPDOWN) self.button_StartRecord = wx.Button(panel, -1, "Start Recording") self.button_SaveRecord = wx.Button(panel, -1, "Save Record") self.button_DiscardRecord = wx.Button(panel, -1, "Discard Record") self.gauge_Timer = wx.Gauge(panel, -1, size=(100, 30)) self.gauge_Timer1 = wx.Gauge(panel, -1, size=(100, 30)) self.label_6 = wx.StaticText(panel, -1, "Attention:") self.radio_box_Attend = wx.RadioBox(panel, -1, "", choices=["N/A", "Glance", "Look"], majorDimension=0, style=wx.RA_SPECIFY_ROWS) self.label_1 = wx.StaticText(panel, -1, "Joint Attention To:") self.label_2 = wx.StaticText(panel, -1, "Attend Target 1:") self.combo_box_TargetChildList1 = wx.ComboBox(panel, -1, choices=self.vaKidList, style=wx.CB_DROPDOWN) self.label_3 = wx.StaticText(panel, -1, "Attend Target 2:") self.combo_box_TargetChildList2 = wx.ComboBox(panel, -1, choices=self.vaKidList, style=wx.CB_DROPDOWN) self.label_4 = wx.StaticText(panel, -1, "Attend Target 3:") self.combo_box_TargetChildList3 = wx.ComboBox(panel, -1, choices=self.vaKidList, style=wx.CB_DROPDOWN) self.label_5 = wx.StaticText(panel, -1, "Attend Target 4:") self.combo_box_TargetChildList4 = wx.ComboBox(panel, -1, choices=self.vaKidList, style=wx.CB_DROPDOWN) self.label_7 = wx.StaticText(panel, -1, "Affect:") self.radio_box_Affect = wx.RadioBox( panel, -1, "", choices=["N/A", "Positive", "Neutral", "Negtive"], majorDimension=0, style=wx.RA_SPECIFY_ROWS) self.label_8 = wx.StaticText(panel, -1, "6 seconds timer:") self.label_9 = wx.StaticText( panel, -1, """ Coder Note: Observe the target child for a period 6-sec.\ Identify each person with whom the target child follows attending behavior.\ Episodes of joint attention are coded as "G" if the child looks briefly (<3-sec) \ at the reference object and coded as "L"\ if the child looks for a longer (>=3-sec). \ After scoring "G" or "L", record affect. """) self.led = gizmos.LEDNumberCtrl(panel, -1) self.__set_properties() #self.__do_layout() self.Bind(wx.EVT_BUTTON, self.RandomSelectChild, self.button_randSelKid) self.Bind(wx.EVT_COMBOBOX, self.RandomChildSelected, self.combo_box_RndChildList) self.Bind(wx.EVT_BUTTON, self.StartRecord, self.button_StartRecord) self.Bind(wx.EVT_BUTTON, self.SaveRecord, self.button_SaveRecord) self.Bind(wx.EVT_BUTTON, self.DiscardRecord, self.button_DiscardRecord) self.Bind(wx.EVT_COMBOBOX, self.SelectVisualTarget1, self.combo_box_TargetChildList1) self.Bind(wx.EVT_COMBOBOX, self.SelectVisualTarget2, self.combo_box_TargetChildList2) self.Bind(wx.EVT_COMBOBOX, self.SelectVisualTarget3, self.combo_box_TargetChildList3) self.Bind(wx.EVT_COMBOBOX, self.SelectVisualTarget4, self.combo_box_TargetChildList4) self.Bind(wx.EVT_RADIOBOX, self.SelectAttend, self.radio_box_Attend) self.Bind(wx.EVT_RADIOBOX, self.SelectAffect, self.radio_box_Affect) self.Bind(wx.EVT_COMBOBOX, self.ObserverSelected, self.combo_box_ObserverList) id1 = wx.NewId() wx.RegisterId(id1) self.timer = wx.Timer(self, id1) self.Bind(wx.EVT_TIMER, self.OnTimer, self.timer, id1) id2 = wx.NewId() wx.RegisterId(id1) self.statusTimer = wx.Timer(self, id2) self.Bind(wx.EVT_TIMER, self.OnStatusTimer, self.statusTimer, id2) self.count = 0 self.statusTimer.Start(1000) self.OnStatusTimer(None)
def __init__(self, parent): """Constructor""" wx.Panel.__init__(self, parent=parent) self.SetBackgroundColour('#000000') sizer = wx.GridBagSizer(0, 0) gool = '\xe5\xb1(x + 5) = y\xb2 = \xe5\x7c' goo = u'\u20ac' text3 = wx.StaticText(self, -1, gool) sizer.Add(text3, (3, 18), (1, 1), flag=wx.TOP | wx.LEFT | wx.BOTTOM, border=15) text3.SetFont(wx.Font(15, wx.ROMAN, wx.NORMAL, wx.BOLD)) help3 = gbtn.GradientButton(self, 1, label=" Coupon ", bitmap=wx.Bitmap("ima/network.png", wx.BITMAP_TYPE_PNG)) sizer.Add(help3, (3, 6), flag=wx.LEFT | wx.RIGHT, border=5) help4 = gbtn.GradientButton(self, 19, label="Shop File", bitmap=wx.Bitmap("ima/market.png", wx.BITMAP_TYPE_PNG)) sizer.Add(help4, (3, 7), flag=wx.LEFT | wx.RIGHT, border=5) helpi = gbtn.GradientButton(self, 23, label=" Audio ", bitmap=wx.Bitmap("ima/route.png", wx.BITMAP_TYPE_PNG)) sizer.Add(helpi, (3, 8), flag=wx.LEFT | wx.RIGHT, border=5) helpk = gbtn.GradientButton(self, label="Cloud File", bitmap=wx.Bitmap("ima/wifi.png", wx.BITMAP_TYPE_PNG)) sizer.Add(helpk, (3, 9), flag=wx.LEFT | wx.RIGHT, border=5) help5 = gbtn.GradientButton(self, 121, label=" Favourite", bitmap=wx.Bitmap("ima/speedometer.png", wx.BITMAP_TYPE_PNG)) sizer.Add(help5, (5, 6), flag=wx.LEFT | wx.RIGHT, border=5) help6 = gbtn.GradientButton(self, label=" History ", bitmap=wx.Bitmap("ima/his.png", wx.BITMAP_TYPE_PNG)) sizer.Add(help6, (5, 7), flag=wx.LEFT | wx.RIGHT, border=5) help7 = gbtn.GradientButton(self, 34, label="Video-s ", bitmap=wx.Bitmap("ima/video_clip.png", wx.BITMAP_TYPE_PNG)) sizer.Add(help7, (5, 8), flag=wx.LEFT | wx.RIGHT, border=5) helpy = gbtn.GradientButton(self, 9, label="Transfers ", bitmap=wx.Bitmap("ima/transfer.png", wx.BITMAP_TYPE_PNG)) sizer.Add(helpy, (5, 9), flag=wx.LEFT | wx.RIGHT, border=5) helpu = gbtn.GradientButton(self, 1, label="Sign-Up", bitmap=wx.Bitmap("ima/moneyS.png", wx.BITMAP_TYPE_PNG)) sizer.Add(helpu, (15, 18), flag=wx.LEFT | wx.RIGHT, border=5) led = gizmos.LEDNumberCtrl(self, -1, (0, 0), (280, 50)) # | gizmos.LED_DRAW_FADED) sizer.Add(led, (15, 10), (1, 5), flag=wx.LEFT | wx.RIGHT, border=5) ########################################################################### #Bindings #self.Bind(wx.EVT_BUTTON, self.onSwitchPanels, id = 121) ########################################################################### self.clock = led self.OnTimer(None) self.timer = wx.Timer(self) self.timer.Start(1000) self.Bind(wx.EVT_TIMER, self.OnTimer) helpu.SetToolTipString('Sign-up') helpy.SetToolTipString('Check Transfer') help7.SetToolTipString('Choose Video') help6.SetToolTipString('Media History') help5.SetToolTipString('Available Songs') helpk.SetToolTipString('Transfer Files') helpi.SetToolTipString('Play Audio Files') help4.SetToolTipString('Media Stores') help3.SetToolTipString('Album') self.SetSizerAndFit(sizer) self.Centre() self.Show(True)
def __init__(self): self.flag = 0 wx.Frame.__init__(self, None, -1, 'Jbrew Controller', wx.DefaultPosition, size=wx.DisplaySize(), style=wx.DEFAULT_FRAME_STYLE | wx.NO_FULL_REPAINT_ON_RESIZE) '''self.bmp = wx.Image("hops.png", wx.BITMAP_TYPE_PNG).ConvertToBitmap()''' self.set_time = 0 self.timer = None self.received_temp = '' self.rex_mlt = re.compile('m[0-9][0-9]\.[0-9][0-9]|m[0-2][0-9][0-9]\.[0-9][0-9]') self.rex_hlt = re.compile('h[0-9][0-9]\.[0-9][0-9]|h[0-2][0-9][0-9]\.[0-9][0-9]') self.rex_he = re.compile('HE[0-9]') self.temp1 = 0 self.temp2 = 0 self.number = 0 menubar = wx.MenuBar() file = wx.Menu() file.Append(22, 'Change Brew', 'Change Title of Brew') file.Append(23, 'About', 'About dialog') menubar.Append(file, '&File') self.SetMenuBar(menubar) wx.EVT_MENU(self, 22, self.OnChangeBrew) wx.EVT_MENU(self, 23, self.OnAboutDialog) self.panel1 = wx.Panel(self, -1, style=wx.SUNKEN_BORDER) self.panel2 = wx.Panel(self, -1, style=wx.RAISED_BORDER) self.panel1.SetBackgroundColour("black") self.panel3 = wx.Panel(self.panel2, -1, style=wx.SUNKEN_BORDER) self.panel4 = wx.Panel(self.panel2, -1, style=wx.RAISED_BORDER) self.panel3.SetBackgroundColour("black") self.panel4.SetBackgroundColour("black") self.panel5 = wx.Panel(self.panel3, -1) self.panel6 = wx.Panel(self.panel3, -1) self.panel7 = wx.Panel(self.panel3, -1) self.panel5.SetBackgroundColour("black") self.panel6.SetBackgroundColour("yellow") self.panel7.SetBackgroundColour("green") #Bottom section with clock self.panel8 = wx.Panel(self.panel7, -1) self.panel9 = wx.Panel(self.panel7, -1) self.panel10 = wx.Panel(self.panel7, -1) self.panel8.SetBackgroundColour("black") self.panel9.SetBackgroundColour("black") self.panel10.SetBackgroundColour("black") '''self.panel10.SetBackgroundColour(None)''' self.brew_st = wx.StaticText(self.panel1, -1, "BREW: Hoptimistic", (10, 20)) self.mash_st = wx.StaticText(self.panel5, -1, "MASH MONITOR", (10, 10)) self.pump_stat_st = wx.StaticText(self.panel8, -1, "PUMP 1 STATUS:", (10, 0)) self.pump2_stat_st = wx.StaticText(self.panel8, -1, "PUMP 2 STATUS:", (10, 30)) self.controls_st = wx.StaticText(self.panel4, -1, "CONTROLS", (5, 5)) self.pump_control = wx.StaticText(self.panel4, -1, "Pump 1", (10, 70)) self.pump_control2 = wx.StaticText(self.panel4, -1, "Pump 2", (10, 140)) self.pump_toggle = wx.StaticText(self.panel8, -1, "Off", (240, 0)) self.pump2_toggle = wx.StaticText(self.panel8, -1, "Off", (240, 30)) self.he_result = wx.StaticText(self.panel8, -1, "Off", (275, 60)) self.he_status = wx.StaticText(self.panel8, -1, "HEATING ELEMENT:", (10, 60)) self.st_temp = wx.StaticText(self.panel4, -1, "Set Target", (10, 235)) self.st_deg = wx.StaticText(self.panel4, -1, "°F", (75, 270)) self.tc_entry = wx.TextCtrl(self.panel4, -1, "152", (10, 265), (60, 30)) self.tc_time = wx.TextCtrl(self.panel4, -1, "60", (10, 400), (60, 30)) self.st_secs = wx.StaticText(self.panel4, -1, "mins", (75, 405)) self.tc_entry.SetMaxLength(3) self.tc_entry.SetWindowStyleFlag(wx.TE_RIGHT) self.tc_entry.Bind(wx.EVT_LEFT_DOWN, self.OnTempEntry) self.tc_time.SetMaxLength(2) self.tc_time.SetWindowStyleFlag(wx.TE_RIGHT) #self.tc_time.Bind(wx.EVT_CHAR, self.OnTimerEntry) self.tc_time.Bind(wx.EVT_LEFT_DOWN, self.OnTimerEntry) font = wx.Font(18, wx.DECORATIVE, wx.ITALIC, wx.BOLD) self.brew_st.SetFont(font) self.mash_st.SetFont(font) self.pump_stat_st.SetFont(font) self.pump2_stat_st.SetFont(font) self.he_status.SetFont(font) font = wx.Font(16, wx.DECORATIVE, wx.ITALIC, wx.BOLD) self.controls_st.SetFont(font) font = wx.Font(18, wx.DECORATIVE, wx.ITALIC, wx.BOLD) self.he_result.SetFont(font) self.pump_toggle.SetFont(font) self.pump2_toggle.SetFont(font) font = wx.Font(16, wx.DEFAULT, wx.DEFAULT, wx.BOLD) self.pump_control.SetFont(font) self.pump_control2.SetFont(font) self.st_temp.SetFont(font) self.st_deg.SetFont(font) self.tc_entry.SetFont(font) self.tc_time.SetFont(font) self.st_secs.SetFont(font) self.brew_st.SetForegroundColour("yellow") self.mash_st.SetForegroundColour("yellow") self.controls_st.SetForegroundColour("yellow") self.pump_stat_st.SetForegroundColour("orange") self.pump2_stat_st.SetForegroundColour("orange") self.pump_control.SetForegroundColour("yellow") self.pump_control2.SetForegroundColour("yellow") self.pump_toggle.SetForegroundColour("red") self.pump2_toggle.SetForegroundColour("red") self.he_status.SetForegroundColour("orange") self.he_result.SetForegroundColour("red") self.st_temp.SetForegroundColour("yellow") self.st_deg.SetForegroundColour("yellow") self.st_secs.SetForegroundColour("yellow") bs = wx.BoxSizer(wx.VERTICAL) bs.Add(self.panel1, 1, wx.EXPAND) bs.Add(self.panel2, 10, wx.EXPAND) self.SetSizer(bs) font = wx.Font(18, wx.DEFAULT, wx.DEFAULT, wx.BOLD) self.pump_off = 1 pump_btn = ab.AquaButton(self.panel4, -1, label="On/Off", size=(130, 40), pos=(10, 100)) pump_btn.SetFont(font) pump_btn.SetForegroundColour("black") pump_btn.SetBackgroundColor("blue") pump_btn.Bind(wx.EVT_BUTTON, self.OnPump) self.pump2_off = 1 pump_btn2 = ab.AquaButton(self.panel4, -1, label="On/Off", size=(130, 40), pos=(10, 170)) pump_btn2.SetFont(font) pump_btn2.SetForegroundColour("black") pump_btn2.SetBackgroundColor("blue") pump_btn2.Bind(wx.EVT_BUTTON, self.OnPump2) #this is the temperature set button hlt_btn = ab.AquaButton(self.panel4, -1, label="Start", size=(70, 40), pos=(5,300)) hlt_btn.SetFont(font) hlt_btn.SetForegroundColour("black") hlt_btn.SetBackgroundColor("blue") hlt_btn.Bind(wx.EVT_BUTTON, self.OnSetTemp) hlt_btn2 = ab.AquaButton(self.panel4, -1, label="Stop", size=(70, 40), pos=(75,300)) hlt_btn2.SetFont(font) hlt_btn2.SetForegroundColour("black") hlt_btn2.SetBackgroundColor("blue") hlt_btn2.Bind(wx.EVT_BUTTON, self.OnStopTemp) #button that starts the mashing timer ele_btn = ab.AquaButton(self.panel4, -1, label="Start", size=(70, 40), pos=(5, 445)) ele_btn.SetFont(font) ele_btn.SetForegroundColour("black") ele_btn.SetBackgroundColor("blue") ele_btn.Bind(wx.EVT_BUTTON, self.OnStart) #button that stops the mashing timer ele_btn = ab.AquaButton(self.panel4, -1, label="Stop", size=(70, 40), pos=(75, 445)) ele_btn.SetFont(font) ele_btn.SetForegroundColour("black") ele_btn.SetBackgroundColor("blue") ele_btn.Bind(wx.EVT_BUTTON, self.OnStop) #button that resets the timer ele_btn = ab.AquaButton(self.panel4, -1, label="Reset", size=(140, 40), pos=(5, 490)) ele_btn.SetFont(font) ele_btn.SetForegroundColour("black") ele_btn.SetBackgroundColor("blue") ele_btn.Bind(wx.EVT_BUTTON, self.OnReset) bs_bottom = wx.BoxSizer(wx.HORIZONTAL) bs_bottom.Add(self.panel3, 8, wx.EXPAND) bs_bottom.Add(self.panel4, 1, wx.EXPAND) self.panel2.SetSizer(bs_bottom) self.mash_meter = sm.SpeedMeter(self.panel6, extrastyle=sm.SM_DRAW_SECTORS | sm.SM_DRAW_HAND | sm.SM_DRAW_SECONDARY_TICKS | sm.SM_DRAW_MIDDLE_TEXT | sm.SM_DRAW_SPEED_READING) # Set The Region Of Existence Of SpeedMeter (Always In Radians!!!!) #self.mash_meter.SetAngleRange(-pi/6, 7*pi/6) self.mash_meter.SetAngleRange(-pi / 3, 4 * pi / 3) # Create The Intervals That Will Divide Our SpeedMeter In Sectors intervals = range(0, 221, 20) self.mash_meter.SetIntervals(intervals) # Assign The Same Colours To All Sectors (We Simulate A Car Control For Speed) # Usually This Is Black colours = [wx.BLACK] * 11 self.mash_meter.SetIntervalColours(colours) # Assign The Ticks: Here They Are Simply The String Equivalent Of The Intervals ticks = [str(interval) for interval in intervals] self.mash_meter.SetTicks(ticks) # Set The Ticks/Tick Markers Colour self.mash_meter.SetTicksColour(wx.Colour(255, 255, 0)) # We Want To Draw 5 Secondary Ticks Between The Principal Ticks self.mash_meter.SetNumberOfSecondaryTicks(3) # Set The Font For The Ticks Markers self.mash_meter.SetTicksFont(wx.Font(16, wx.SWISS, wx.NORMAL, wx.NORMAL)) # Set The Text In The Center Of SpeedMeter self.mash_meter.SetMiddleText("Mash Temp") # Assign The Colour To The Center Text self.mash_meter.SetMiddleTextColour(wx.WHITE) # Assign A Font To The Center Text self.mash_meter.SetMiddleTextFont(wx.Font(20, wx.SWISS, wx.NORMAL, wx.BOLD)) # Set The Default Speed Reading self.mash_meter.SetSpeedReading(self.mash_meter.GetSpeedValue()) # Assign The Font to the Speed Reading self.mash_meter.SetSpeedReadingFont(wx.Font(22, wx.SWISS, wx.NORMAL, wx.BOLD)) # Assign The Color to the Speed Reading self.mash_meter.SetSpeedReadingColour(wx.WHITE) # Set The Colour For The Hand Indicator self.mash_meter.SetHandColour(wx.Colour(255, 50, 0)) # Do Not Draw The External (Container) Arc. Drawing The External Arc May # Sometimes Create Uglier Controls. Try To Comment This Line And See It # For Yourself! self.mash_meter.DrawExternalArc(True) self.mash_meter.SetSpeedValue(100) self.hlt_meter = sm.SpeedMeter(self.panel6, extrastyle=sm.SM_DRAW_SECTORS | sm.SM_DRAW_HAND | sm.SM_DRAW_SECONDARY_TICKS | sm.SM_DRAW_MIDDLE_TEXT | sm.SM_DRAW_SPEED_READING) # Set The Region Of Existence Of SpeedMeter (Always In Radians!!!!) #self.hlt_meter.SetAngleRange(-pi/6, 7*pi/6) self.hlt_meter.SetAngleRange(-pi / 3, 4 * pi / 3) # Create The Intervals That Will Divide Our SpeedMeter In Sectors intervals = range(0, 221, 20) self.hlt_meter.SetIntervals(intervals) # Assign The Same Colours To All Sectors (We Simulate A Car Control For Speed) # Usually This Is Black colours = [wx.BLACK] * 11 self.hlt_meter.SetIntervalColours(colours) # Assign The Ticks: Here frameThey Are Simply The String Equivalent Of The Intervals ticks = [str(interval) for interval in intervals] self.hlt_meter.SetTicks(ticks) # Set The Ticks/Tick Markers Colour self.hlt_meter.SetTicksColour(wx.Colour(255, 255, 0)) # We Want To Draw 5 Secondary Ticks Between The Principal Ticks self.hlt_meter.SetNumberOfSecondaryTicks(3) # Set The Font For The Ticks Markers self.hlt_meter.SetTicksFont(wx.Font(16, wx.SWISS, wx.NORMAL, wx.NORMAL)) # Set The Text In The Center Of SpeedMeter self.hlt_meter.SetMiddleText("HLT") # Assign The Colour To The Center Text self.hlt_meter.SetMiddleTextColour(wx.WHITE) # Assign A Font To The Center Text self.hlt_meter.SetMiddleTextFont(wx.Font(20, wx.SWISS, wx.NORMAL, wx.BOLD)) # Set The Default Speed Reading self.mash_meter.SetSpeedReading(self.mash_meter.GetSpeedValue()) # Assign The Color to the Speed Reading self.hlt_meter.SetSpeedReading(self.mash_meter.GetSpeedValue()) # Assign The Font to the Speed Reading self.hlt_meter.SetSpeedReadingFont(wx.Font(22, wx.SWISS, wx.NORMAL, wx.BOLD)) # Assign The Color to the Speed Reading self.hlt_meter.SetSpeedReadingColour(wx.WHITE) # Set The Colour For The Hand Indicator self.hlt_meter.SetHandColour(wx.Colour(255, 50, 0)) # Do Not Draw The External (Container) Arc. Drawing The External Arc May # Sometimes Create Uglier Controls. Try To Comment This Line And See It # For Yourself! self.hlt_meter.DrawExternalArc(True) # Set The Current Value For The SpeedMeter self.hlt_meter.SetSpeedValue(100) bs_meters = wx.BoxSizer(wx.VERTICAL) bs_meters.Add(self.panel5, 0, wx.EXPAND) bs_meters.Add(self.panel6, 8, wx.EXPAND) bs_meters.Add(self.panel7, 2, wx.EXPAND) self.panel3.SetSizer(bs_meters) hbs_meters = wx.BoxSizer(wx.HORIZONTAL) hbs_meters.Add(self.mash_meter, 1, wx.EXPAND) hbs_meters.Add(self.hlt_meter, 1, wx.EXPAND) self.panel6.SetSizer(hbs_meters) #begin led timer section self.led = gizmos.LEDNumberCtrl(self.panel9, -1, (100, 0), (200, 50), gizmos.LED_ALIGN_CENTER) #self.OnTimer(None) self.led.SetValue("00:00:00") #self.Bind(wx.EVT_TIMER, self.OnTimer) self.Centre() #end led timer '''wx.EVT_PAINT(self.panel10, self.OnBmp)''' bs_timer = wx.BoxSizer(wx.HORIZONTAL) bs_timer.Add(self.panel8, 1, wx.EXPAND) bs_timer.Add(self.panel9, 1, wx.EXPAND) bs_timer.Add(self.panel10, 1, wx.EXPAND) self.panel7.SetSizer(bs_timer) wx.CallAfter(self.OnInitialOpen)
def __init__(self, parent): wx.Frame.__init__(self, parent, id=wx.ID_ANY, title=u"Captura de señales para el gesto 1", pos=wx.DefaultPosition, size=wx.Size(1400, 1000), style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL) self.SetSizeHintsSz(wx.DefaultSize, wx.DefaultSize) bSizer4 = wx.BoxSizer(wx.VERTICAL) self.panel = wx.Panel(self) sizer = wx.BoxSizer(wx.VERTICAL) self.panel.SetSizer(sizer) self.m_staticText2 = wx.StaticText( self, wx.ID_ANY, u"Captura de señales para el primer gesto \n", wx.DefaultPosition, wx.Size(700, -1), 0) self.m_staticText2.Wrap(-1) self.m_staticText2.SetFont( wx.Font(34, 70, 90, 90, False, wx.EmptyString)) bSizer4.Add(self.m_staticText2, 0, wx.ALIGN_CENTER_HORIZONTAL, 10) bSizer49 = wx.BoxSizer(wx.VERTICAL) bSizer50 = wx.BoxSizer(wx.HORIZONTAL) bSizer50.SetMinSize(wx.Size(700, 50)) self.m_staticText30 = wx.StaticText( self, wx.ID_ANY, u"Para iniciar el experimento por favor observe \n ", wx.DefaultPosition, wx.Size(1000, -1), 0) self.m_staticText30.Wrap(-1) self.m_staticText30.SetFont( wx.Font(17, 70, 90, 90, False, wx.EmptyString)) bSizer50.Add(self.m_staticText30, 0, wx.ALL, 5) bSizer52 = wx.BoxSizer(wx.VERTICAL) bSizer52.SetMinSize(wx.Size(90, -1)) self.m_button32 = wx.Button(self, wx.ID_ANY, u"Inicio", wx.Point(-1, -1), wx.Size(150, -1), 0) self.m_button32.SetFont(wx.Font(25, 70, 90, 90, False, wx.EmptyString)) bSizer52.Add(self.m_button32, 0, wx.TOP, 10) bSizer50.Add(bSizer52, 1, 0, 5) self.m_animCtrl1 = AnimationCtrl(self, pos=(40, 40), size=(14, 14), name="AnimationCtrl") self.m_animCtrl1.LoadFile( r"C:\Users\crist\OneDrive\Escritorio\Universidad\LASER\Tesis\Open_BCI_and_MYO_UD\GUI_Adquisicion/manos.gif" ) self.m_animCtrl1.Play() self.m_animCtrl1.SetMinSize(wx.Size(200, -1)) bSizer50.Add(self.m_animCtrl1, 0, wx.ALIGN_CENTER, 5) bSizer49.Add(bSizer50, 1, 0, 5) bSizer51 = wx.BoxSizer(wx.VERTICAL) bSizer57 = wx.BoxSizer(wx.HORIZONTAL) # grafica EMG self.figureEMG = plt.figure(figsize=(1, 6), dpi=60) self.axes = [ self.figureEMG.add_subplot('81' + str(i)) for i in range(1, 9) ] self.n = 512 [(ax.set_ylim(ymin=-200, ymax=200)) for ax in self.axes] global graphs self.graphs = [ ax.plot(np.arange(self.n), np.zeros(self.n))[0] for ax in self.axes ] plt.ion() self.canvEMG = FigureCanvas(self, wx.ID_ANY, self.figureEMG) bSizer57.Add(self.canvEMG, 1, wx.TOP | wx.LEFT | wx.EXPAND) # grafica EEG self.figureEEG = plt.figure(figsize=(1, 6), dpi=60) self.axesEEG = [ self.figureEEG.add_subplot('81' + str(i)) for i in range(1, 9) ] [(ax.set_ylim([-150000, 150000])) for ax in self.axesEEG] self.m = 100 self.graphsEEG = [ ax.plot(np.arange(self.m), np.zeros(self.m))[0] for ax in self.axesEEG ] plt.ion() self.canvasEEG = FigureCanvas(self, -1, self.figureEEG) bSizer57.Add(self.canvasEEG, 1, wx.TOP | wx.LEFT | wx.EXPAND) bSizer51.Add(bSizer57, 1, wx.EXPAND, 5) bSizer49.Add(bSizer51, 1, wx.EXPAND, 5) bSizer53 = wx.BoxSizer(wx.HORIZONTAL) self.m_staticText31 = wx.StaticText(self, wx.ID_ANY, u"Señal EMG", wx.DefaultPosition, wx.Size(700, 30), 0) self.m_staticText31.Wrap(-1) self.m_staticText31.SetFont( wx.Font(18, 70, 90, 90, False, wx.EmptyString)) bSizer53.Add(self.m_staticText31, 0, wx.LEFT, 5) self.m_staticText32 = wx.StaticText(self, wx.ID_ANY, u"Señal EEG", wx.DefaultPosition, wx.Size(-1, 30), 0) self.m_staticText32.Wrap(-1) self.m_staticText32.SetFont( wx.Font(18, 70, 90, 90, False, wx.EmptyString)) bSizer53.Add(self.m_staticText32, 0, 0, 5) bSizer49.Add(bSizer53, 1, 0, 5) bSizer8 = wx.BoxSizer(wx.HORIZONTAL) self.m_staticText33 = wx.StaticText(self, wx.ID_ANY, u"Tiempo:", wx.DefaultPosition, wx.Size(550, -1), 0) self.m_staticText33.Wrap(-1) self.m_staticText33.SetFont( wx.Font(18, 70, 90, 90, False, wx.EmptyString)) bSizer8.Add(self.m_staticText33, 0, wx.ALL, 5) pos = wx.DefaultPosition size = wx.Size(1, 11) style = gizmos.LED_ALIGN_CENTER self.led = gizmos.LEDNumberCtrl(self, -1, pos, size, style) self.led.SetBackgroundColour("white") self.led.SetForegroundColour("black") bSizerTimmer = wx.BoxSizer(wx.VERTICAL) bSizerTimmer.Add(self.led, 1, wx.TOP | wx.LEFT | wx.EXPAND) bSizer49.Add(bSizerTimmer, 1, wx.EXPAND, 5) self.button_siguiente = wx.Button(self, wx.ID_ANY, u"Aceptar", wx.DefaultPosition, wx.Size(150, -1), 0) self.button_siguiente.SetFont( wx.Font(18, 70, 90, 90, False, wx.EmptyString)) bSizer8.Add(self.button_siguiente, 0, wx.ALL, 5) self.button_salir = wx.Button(self, wx.ID_ANY, u"Salir", wx.DefaultPosition, wx.Size(150, -1), 0) self.button_salir.SetFont( wx.Font(18, 70, 90, 90, False, wx.EmptyString)) bSizer8.Add(self.button_salir, 0, wx.ALL, 5) bSizer49.Add(bSizer8, 0, wx.TOP, 1) bSizer4.Add(bSizer49, 1, wx.EXPAND, 5) self.SetSizer(bSizer4) self.Layout() self.Centre(wx.BOTH) # Connect Events self.m_button32.Bind(wx.EVT_BUTTON, self.OnClickInicio) self.button_siguiente.Bind(wx.EVT_BUTTON, self.OnClickConcentimiento) self.button_salir.Bind(wx.EVT_BUTTON, self.OnClickSalir) # Arrancar conexion myo self.conexionMYO() def hiloMYOConexion(arg): hiloConexionMYO = threading.currentThread() while getattr(hiloConexionMYO, "do_run", True): print("working on %s" % arg) self.mainMYO() print("Stopping as you wish.") self.hiloConexionMYO = threading.Thread(target=hiloMYOConexion, args=("PLOT_EMG_MYO", )) self.hiloConexionMYO.setDaemon(True) self.hiloConexionMYO.start() # Arranca conexion UltraCortex self.datosEEG = [] self.start_board() def hiloPlotUltracortex(arg): hiloPlotUltracortex = threading.currentThread() while getattr(hiloPlotUltracortex, "do_run", True): print("working on %s" % arg) time.sleep(3) self.mainplotUltracortex() print("Stopping as you wish.") self.hiloPlotUltracortex = threading.Thread( target=hiloPlotUltracortex, args=("PLOT_EEG_ULTRACORTEX", )) self.hiloPlotUltracortex.setDaemon(True) self.hiloPlotUltracortex.start()
def __init__(self, parent, id): self.debug = False pos = wx.DefaultPosition wx.Frame.__init__(self, None, -1, title='NI DAQ Utility USB-6259', size=(810, 600)) panel = wx.Panel(self, -1) self.led = gizmos.LEDNumberCtrl(panel, -1, pos=(50, 200), size=(550, 120)) self.led.SetBackgroundColour("black") self.led.SetForegroundColour("red") if self.debug: print "7-segment display done" device_buttons_list = ['PCI-6251M', 'PCI-6025E', 'USB-6259'] self.devices_RadioBox = wx.RadioBox(panel, -1, "DAQ Device", (218, 350), wx.DefaultSize, device_buttons_list, 2, wx.RA_SPECIFY_COLS) self.Bind(wx.EVT_RADIOBOX, self.on_device_change, self.devices_RadioBox) if self.debug: print "DAQ card buttons done" channel_buttons_list = [ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15' ] self.channels_RadioBox = wx.RadioBox(panel, -1, "Channel", (400, 350), wx.DefaultSize, channel_buttons_list, 2, wx.RA_SPECIFY_COLS) self.Bind(wx.EVT_RADIOBOX, self.on_channel_change, self.channels_RadioBox) if self.debug: print "channel select buttons done" gain_buttons_list = [ '+/- 10V', '+/- 5V', '+/- 2V', '+/- 1V', '+/- 0.5V', '+/- 0.2V', '+/- 0.1V', '+/- 0.05V' ] self.gains_RadioBox = wx.RadioBox(panel, -1, "Channel Gain", (518, 350), wx.DefaultSize, gain_buttons_list, 1, wx.RA_SPECIFY_COLS) self.Bind(wx.EVT_RADIOBOX, self.on_gain_change, self.gains_RadioBox) if self.debug: print "gain select buttons done" t1 = wx.StaticText(panel, -1, "Analog Input Voltage", pos=(180, 150)) font = wx.Font(25, wx.DEFAULT, wx.NORMAL, wx.NORMAL) t1.SetFont(font) t2 = wx.StaticText(panel, -1, "Volts", pos=(610, 250)) font = wx.Font(50, wx.DEFAULT, wx.NORMAL, wx.NORMAL) t2.SetFont(font) t3 = wx.StaticText(panel, -1, "Data Acquisition Card Measurement Utility", pos=(22, 20)) font = wx.Font(31, wx.DEFAULT, wx.NORMAL, wx.NORMAL) t3.SetFont(font) if self.debug: print "window text done" #disable +/-.05V selection for initial 6251 card selection self.gains_RadioBox.EnableItem(7, False) self.OnTimer(None) self.timer = wx.Timer(self, -1) # update clock digits every second (1000ms) self.timer.Start(1000) self.Bind(wx.EVT_TIMER, self.OnTimer) self.setup_for_only_6259_installed() if self.debug: print "__init__ done"
def __init__(self): wx.Frame.__init__(self, None, -1, 'Affect Expression: Interval Data Entry', size=(1100, 781) ) global maps, errorReview, coderIDlist, activityList, theclass, nearList,\ childIDList, affectList, taskList,\ adultList,affectIntListPos, affectIntListNeg errorReview = 0 panel = wx.Panel(self, -1) """ Let's make it look good """ self.SetBackgroundColour( (217, 241 , 255)) maps = [] #get configuration file information self.global_paramters = self.GetConfiguration() self.panel_length = 60 # should be 30 for interaction/near neighbor self.maxcount = 60 # should be 30 for interaction/near neighbor if self.global_paramters.has_key('panel_length'): self.panel_length = self.global_paramters['panel_length'] if self.global_paramters.has_key('maxcount'): self.maxcount = self.global_paramters['maxcount'] """ Begin data acquistion section """ """ Mapping Buttons """ ## Quad 1 bmpQ11I = AffExpMaps.getbmpQ11IBitmap() bQ11 = buttons.GenBitmapButton(panel, -1, bmpQ11I, (0, 0)) self.Bind(wx.EVT_BUTTON, self.OnMapButton11, bQ11) bmpQ12I = AffExpMaps.getbmpQ12IBitmap() bQ12 = buttons.GenBitmapButton(panel, -1, bmpQ12I, (193, 0)) self.Bind(wx.EVT_BUTTON, self.OnMapButton12, bQ12) bmpQ13I = AffExpMaps.getbmpQ13IBitmap() bQ13 = buttons.GenBitmapButton(panel, -1, bmpQ13I, (0, 105)) self.Bind(wx.EVT_BUTTON, self.OnMapButton13, bQ13) bmpQ14I = AffExpMaps.getbmpQ14IBitmap() bQ14 = buttons.GenBitmapButton(panel, -1, bmpQ14I, (193, 105)) self.Bind(wx.EVT_BUTTON, self.OnMapButton14, bQ14) ## Quad 2 bmpQ21I = AffExpMaps.getbmpQ21IBitmap() bQ21 = buttons.GenBitmapButton(panel, -1, bmpQ21I, (386, 0)) self.Bind(wx.EVT_BUTTON, self.OnMapButton21, bQ21) bmpQ22I = AffExpMaps.getbmpQ22IBitmap() bQ22 = buttons.GenBitmapButton(panel, -1, bmpQ22I, (579, 0)) self.Bind(wx.EVT_BUTTON, self.OnMapButton22, bQ22) bmpQ23I = AffExpMaps.getbmpQ23IBitmap() bQ23 = buttons.GenBitmapButton(panel, -1, bmpQ23I, (386, 105)) self.Bind(wx.EVT_BUTTON, self.OnMapButton23, bQ23) bmpQ24I = AffExpMaps.getbmpQ24IBitmap() bQ24 = buttons.GenBitmapButton(panel, -1, bmpQ24I, (579, 105)) self.Bind(wx.EVT_BUTTON, self.OnMapButton24, bQ24) ## Quad 3 bmpQ31I = AffExpMaps.getbmpQ31IBitmap() bQ31 = buttons.GenBitmapButton(panel, -1, bmpQ31I, (0, 210)) self.Bind(wx.EVT_BUTTON, self.OnMapButton31, bQ31) bmpQ32I = AffExpMaps.getbmpQ32IBitmap() bQ32 = buttons.GenBitmapButton(panel, -1, bmpQ32I, (193, 210)) self.Bind(wx.EVT_BUTTON, self.OnMapButton32, bQ32) bmpQ33I = AffExpMaps.getbmpQ33IBitmap() bQ33 = buttons.GenBitmapButton(panel, -1, bmpQ33I, (0, 315)) self.Bind(wx.EVT_BUTTON, self.OnMapButton33, bQ33) ## Quad 4 bmpQ41I = AffExpMaps.getbmpQ41IBitmap() bQ41 = buttons.GenBitmapButton(panel, -1, bmpQ41I, (386, 210)) self.Bind(wx.EVT_BUTTON, self.OnMapButton41, bQ41) bmpQ42I = AffExpMaps.getbmpQ42IBitmap() bQ42 = buttons.GenBitmapButton(panel, -1, bmpQ42I, (579, 210)) self.Bind(wx.EVT_BUTTON, self.OnMapButton42, bQ42) ##__________________________________________________________ """ Select Random Child """ wx.StaticText(panel, -1, "Pick Child Randomly", (30,600)) ranKid = AffExpMaps.getsmall_red_diceBitmap() ranKidGet = buttons.GenBitmapButton(panel, -1, ranKid,\ (40, 615), style = 1) self.Bind(wx.EVT_BUTTON, self.OnRanButton, ranKidGet) """ Data Selection Section """ self.playLocation = 101 notice = wx.StaticText(panel, -1, "Classroom: " + str(self.playLocation), (850, 300) ) notice.SetFont(wx.Font(15, wx.SWISS, wx.NORMAL, wx.BOLD, False)) """ Interval List """ eventList = [] for x in range(0,61): eventList.append(str(x)) self.labelInterv = wx.StaticText(panel, -1, " Interval ", (960, 150)) self.event = wx.Choice(panel, -1, (965, 165), choices = eventList) self.event.SetSelection(1) """ Coder List """ coderID = []; coderIDlist = [] coders = csv.reader(open(list_dir + 'coderList.txt'), delimiter=';') for each in coders: coderID.append(int(each[0])) coderIDlist.append(each[1]) wx.StaticText(panel, -1, "Coder ID List:", (785, 150)) self.coderID = wx.Choice(panel, -1, (790, 165), choices = coderIDlist) self.coderID.SetSelection(0) """ Child List; add new names at the end """ child = []; childIDList = [] children = csv.reader(open (list_dir + 'room101List.txt'), delimiter = ';' ) for each in children: child.append(int(each[0])) childIDList.append(each[1]) wx.StaticText(panel, -1, "Child List:", (885, 150)) self.child = wx.Choice(panel, -1, (890, 165), choices = childIDList) self.child.SetSelection(0) """ Activity List """ activityValue = []; activityList = [] activity = csv.reader(open (list_dir + 'activityList.txt'), delimiter = ';' ) for each in activity: activityValue.append(int(each[0])) activityList.append(each[1]) wx.StaticText(panel, -1, "Activity", (785, 200)) self.playActivity = wx.Choice(panel, -1, (790, 215), choices = activityList) self.playActivity.SetSelection(0) """ AffectIntListPositive """ affectIntensityPos = []; affectIntListPos = [] affectIntPos = csv.reader(open (list_dir + "affectIntList.txt"), delimiter = ';' ) for each in affectIntPos: affectIntensityPos.append(int(each[0])) affectIntListPos.append(each[1]) wx.StaticText(panel, -1, "Child Affect: Positive", (210, 350)) self.affectIntensityPos = wx.Choice(panel, -1, (225, 365), choices = affectIntListPos) self.affectIntensityPos.SetSelection(0) """ AffectIntListNegative """ affectIntensityNeg = []; affectIntListNeg = [] affectIntNeg = csv.reader(open (list_dir + "affectIntList.txt"), delimiter = ';' ) for each in affectIntNeg: affectIntensityNeg.append(int(each[0])) affectIntListNeg.append(each[1]) wx.StaticText(panel, -1, "Child Affect: Negative", (340, 350)) self.affectIntensityNeg = wx.Choice(panel, -1, (355, 365), choices = affectIntListNeg) self.affectIntensityNeg.SetSelection(0) """ Task List """ taskValue = []; taskList = [] task = csv.reader(open (list_dir + "taskList.txt"), delimiter = ';' ) for each in task: taskValue.append(int(each[0])) taskList.append(each[1]) """ Affective Tone List """ affectTone = []; affectList = [] affect = csv.reader(open (list_dir + "affectList.txt"), delimiter = ';' ) for each in affect: affectTone.append(int(each[0])) affectList.append(each[1]) """ Nearby List """ nearValue = []; nearList = [] near = csv.reader(open (list_dir + "room101List.txt"), delimiter = ';' ) for each in near: nearValue.append(int(each[0])) nearList.append(each[1]) """ Peers """ """ Initiate 1 """ wx.StaticText(panel, -1, "Initiate 1", (200, 410)) self.initiate1 = wx.Choice(panel, -1, (200, 425), choices = childIDList) self.initiate1.SetSelection(0) """ Initiate 2 """ wx.StaticText(panel, -1, "Initiate 2", (350, 410)) self.initiate2 = wx.Choice(panel, -1, (350, 425), choices = childIDList) self.initiate2.SetSelection(0) """ Receive 1 """ wx.StaticText(panel, -1, "Receive 1", (500, 410)) self.receive1 = wx.Choice(panel, -1, (500, 425), choices = childIDList) self.receive1.SetSelection(0) """ Receive 2 """ wx.StaticText(panel, -1, "Receive 2", (650, 410)) self.receive2 = wx.Choice(panel, -1, (650, 425), choices = childIDList) self.receive2.SetSelection(0) """ Receive 3 """ wx.StaticText(panel, -1, "Receive 3", (805, 410)) self.receive3 = wx.Choice(panel, -1, (805, 425), choices = childIDList) self.receive3.SetSelection(0) """ Initiate Tone """ """ Initiate 1 """ wx.StaticText(panel, -1, "Tone", (225, 460)) self.toneinitiate1 = wx.Choice(panel, -1, (200, 475), choices = affectList) self.toneinitiate1.SetSelection(0) """ Initiate 2 """ wx.StaticText(panel, -1, "Tone", (375, 460)) self.toneinitiate2 = wx.Choice(panel, -1, (350, 475), choices = affectList) self.toneinitiate2.SetSelection(0) """ Receive 1 """ wx.StaticText(panel, -1, "Tone", (525, 460)) self.tonereceive1 = wx.Choice(panel, -1, (500, 475), choices = affectList) self.tonereceive1.SetSelection(0) """ Receive 2 """ wx.StaticText(panel, -1, "Tone", (675, 460)) self.tonereceive2 = wx.Choice(panel, -1, (650, 475), choices = affectList) self.tonereceive2.SetSelection(0) """ Receive 3 """ wx.StaticText(panel, -1, "Tone", (830, 460)) self.tonereceive3 = wx.Choice(panel, -1, (805, 475), choices = affectList) self.tonereceive3.SetSelection(0) """ Category """ """ Category Initiate 1 """ wx.StaticText(panel, -1, "Category", (200, 510)) self.categoryinitiate1 = wx.Choice(panel, -1, (188, 525), choices = taskList) self.categoryinitiate1.SetSelection(0) """ Category Initiate 2 """ wx.StaticText(panel, -1, "Category", (352, 510)) self.categoryinitiate2 = wx.Choice(panel, -1, (340, 525), choices = taskList) self.categoryinitiate2.SetSelection(0) """ Category Receive 1 """ wx.StaticText(panel, -1, "Category", (504, 510)) self.categoryreceive1 = wx.Choice(panel, -1, (492, 525), choices = taskList) self.categoryreceive1.SetSelection(0) """ Category Receive 2 """ wx.StaticText(panel, -1, "Category", (656, 510)) self.categoryreceive2 = wx.Choice(panel, -1, (644, 525), choices = taskList) self.categoryreceive2.SetSelection(0) """ Category Receive 3 """ wx.StaticText(panel, -1, "Category", (808, 510)) self.categoryreceive3 = wx.Choice(panel, -1, (796, 525), choices = taskList) self.categoryreceive3.SetSelection(0) """ Near Persons """ """ Near Persons 1 """ wx.StaticText(panel, -1, "Nearby", (200, 560)) self.Nearbyinitiate1 = wx.Choice(panel, -1, (188, 575), choices = nearList) self.Nearbyinitiate1.SetSelection(0) """ Near Persons 2 """ wx.StaticText(panel, -1, "Nearby", (352, 560)) self.Nearbyinitiate2 = wx.Choice(panel, -1, (340, 575), choices = nearList) self.Nearbyinitiate2.SetSelection(0) """ Near Persons 3 """ wx.StaticText(panel, -1, "Nearby", (504, 560)) self.Nearbyreceive1 = wx.Choice(panel, -1, (492, 575), choices = nearList) self.Nearbyreceive1.SetSelection(0) """ Near Persons 4 """ wx.StaticText(panel, -1, "Nearby", (656, 560)) self.Nearbyreceive2 = wx.Choice(panel, -1, (644, 575), choices = nearList) self.Nearbyreceive2.SetSelection(0) """ Near Persons 5 """ wx.StaticText(panel, -1, "Nearby", (808, 560)) self.Nearbyreceive3 = wx.Choice(panel, -1, (796, 575), choices = nearList) self.Nearbyreceive3.SetSelection(0) """ Manipulate Data and Store: Buttons """ errCheck = wx.Button(panel, -1, "Error Check", (830, 3)) errCheck.SetDefault() self.Bind(wx.EVT_BUTTON, self.OnErrorCheck, errCheck) # Uses OnErrorCheck errCheck.SetFont(wx.Font(15, wx.SWISS, wx.NORMAL, wx.BOLD, False)) errCheck.SetToolTipString("Error Check") errCheck.SetSize(errCheck.GetBestSize()) done = wx.Button(panel, -1, "Submit Data", (830, 53)) self.Bind(wx.EVT_BUTTON, self.OnComplete, done) # Uses OnComplete done.SetFont(wx.Font(15, wx.SWISS, wx.NORMAL, wx.BOLD, False)) done.SetToolTipString("Compile event data") done.SetSize(done.GetBestSize()) ano = wx.Button(panel, -1, "Another Interval", (810, 106)) self.Bind(wx.EVT_BUTTON, self.OnAnother, ano) #Uses OnAnother ano.SetFont(wx.Font(15, wx.SWISS, wx.NORMAL, wx.BOLD, False)) ano.SetToolTipString("Refresh entry values") ano.SetSize(ano.GetBestSize()) q = wx.Button(panel, -1, "Quit", (975, 650)) self.Bind(wx.EVT_BUTTON, self.OnClose, q) #Uses OnClose q.SetFont(wx.Font(15, wx.SWISS, wx.NORMAL, wx.BOLD, False)) q.SetToolTipString("This exits the program...") q.SetSize(q.GetBestSize()) ############ gauge ####################### self.count = 0 wx.StaticText(panel, -1, "Seconds", (5, 535)) self.buttonG = wx.Button(panel, -1, "Press to start timer", (25, 550)) self.buttonG.Bind(wx.EVT_BUTTON, self.buttonGClick) self.gauge1 = wx.Gauge(panel, -1, self.panel_length, (5, 500), (165, 35)) self.gauge1.SetValue(0) self.gauge1.SetBezelFace(3) self.gauge1.SetShadowWidth(3) self.Bind(wx.EVT_TIMER, self.OnTimer) self.timerG = wx.Timer(self, -1) self.timerG.Start(1000) ############### clock ###################### self.led = gizmos.LEDNumberCtrl(panel, -1, (5,460), (165, 35), gizmos.LED_ALIGN_CENTER) self.led.SetBackgroundColour("red") self.red_flag = True self.led.SetForegroundColour("black") self.OnTimer(None) self.timer = wx.Timer(self, -1) # update clock digits every second (1000ms) self.timer.Start(1000) self.Bind(wx.EVT_TIMER, self.OnTimer)