Пример #1
0
    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)
Пример #2
0
 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)
Пример #3
0
 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
Пример #4
0
 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)
Пример #5
0
    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)
        '''
Пример #6
0
 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
Пример #8
0
    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)
Пример #9
0
    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
Пример #10
0
    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)
Пример #11
0
    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)
Пример #12
0
 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
Пример #13
0
 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)
Пример #14
0
 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()
Пример #15
0
    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毫秒刷新
Пример #17
0
    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)
Пример #18
0
    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()
Пример #19
0
    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)
Пример #21
0
    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))
Пример #22
0
    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")
Пример #23
0
    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()
Пример #24
0
    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)
Пример #25
0
    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)
Пример #26
0
    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)
Пример #27
0
    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()
Пример #28
0
    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"
Пример #29
0
   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)