Page buttonpage04
    Attributes
        ID                 : 0
        Scope              : local
        Dragging           : 0
        Send Component ID  : on press and release
        Locked             : no
        Swide up page ID   : disabled
        Swide down page ID : disabled
        Swide left page ID : disabled
        Swide right page ID: disabled
    
    Events
        Preinitialize Event
            if(api==0)
            {
                page home
            }else
            {
                vis 255,0
                vis button_back,1
                vis page_label,1
                sys0=is_buttonpage01+is_buttonpage02+is_buttonpage03+is_buttonpage04
                if(sys0>1)
                {
                    if(is_buttonpage01==1)
                    {
                        page_index.txt+="â—‹"
                    }
                    if(is_buttonpage02==1)
                    {
                        page_index.txt+="â—‹"
                    }
                    if(is_buttonpage03==1)
                    {
                        page_index.txt+="â—‹"
                    }
                    page_index.txt+="â—"
                    vis page_index,1
                }
            }
            printh 92
            prints "current_page",0
            printh 00
            prints "buttonpage04",0
            printh 00
            printh FF FF FF
        
Variable (string) lastclick
    Attributes
        ID            : 4
        Scope         : local
        Text          : 
        Max. Text Size: 100
    
Variable (string) click_comp
    Attributes
        ID            : 7
        Scope         : local
        Text          : 
        Max. Text Size: 8
    
Variable (string) page_name
    Attributes
        ID            : 9
        Scope         : local
        Text          : buttonpage04
        Max. Text Size: 12
    
Variable (int32) confirm
    Attributes
        ID   : 11
        Scope: local
        Value: 0
    
Text page_label
    Attributes
        ID                 : 3
        Scope              : local
        Dragging           : 0
        Send Component ID  : on press and release
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 100
    
Text page_index
    Attributes
        ID                 : 5
        Scope              : local
        Dragging           : 0
        Send Component ID  : on press and release
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 12
    
Text button01pic
    Attributes
        ID                 : 12
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 0
    
Text button02pic
    Attributes
        ID                 : 13
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 0
    
Text button03pic
    Attributes
        ID                 : 14
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 0
    
Text button04pic
    Attributes
        ID                 : 15
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 0
    
Text button05pic
    Attributes
        ID                 : 16
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 0
    
Text button06pic
    Attributes
        ID                 : 17
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 0
    
Text button07pic
    Attributes
        ID                 : 18
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 0
    
Text button08pic
    Attributes
        ID                 : 19
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 0
    
Text button01text
    Attributes
        ID                 : 20
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 22
    
Text button02text
    Attributes
        ID                 : 21
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 22
    
Text button03text
    Attributes
        ID                 : 22
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 22
    
Text button04text
    Attributes
        ID                 : 23
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 22
    
Text button05text
    Attributes
        ID                 : 24
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 22
    
Text button06text
    Attributes
        ID                 : 25
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 22
    
Text button07text
    Attributes
        ID                 : 26
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 22
    
Text button08text
    Attributes
        ID                 : 27
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 22
    
Text button01icon
    Attributes
        ID                 : 28
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 10
    
Text button02icon
    Attributes
        ID                 : 29
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 10
    
Text button03icon
    Attributes
        ID                 : 30
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 10
    
Text button04icon
    Attributes
        ID                 : 31
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 10
    
Text button05icon
    Attributes
        ID                 : 32
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 10
    
Text button06icon
    Attributes
        ID                 : 33
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 10
    
Text button07icon
    Attributes
        ID                 : 34
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 10
    
Text button08icon
    Attributes
        ID                 : 35
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 10
    
Text button01bri
    Attributes
        ID                 : 36
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 4
    
Text button02bri
    Attributes
        ID                 : 37
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 4
    
Text button03bri
    Attributes
        ID                 : 38
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 4
    
Text button04bri
    Attributes
        ID                 : 39
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 4
    
Text button05bri
    Attributes
        ID                 : 40
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 4
    
Text button06bri
    Attributes
        ID                 : 41
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 4
    
Text button07bri
    Attributes
        ID                 : 42
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 4
    
Text button08bri
    Attributes
        ID                 : 43
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 4
    
Text unavailable
    Attributes
        ID                 : 52
        Scope              : local
        Dragging           : 0
        Send Component ID  : disabled
        Associated Keyboard: none
        Text               : 
        Max. Text Size     : 1
    
Button button_back
    Attributes
        ID               : 6
        Scope            : local
        Dragging         : 0
        Send Component ID: on press and release
        State            : unpressed
        Text             : î…˜
        Max. Text Size   : 3
    
    Events
        Touch Press Event
            page home
        
Hotspot button01
    Attributes
        ID               : 44
        Scope            : local
        Dragging         : 0
        Send Component ID: on press and release
    
    Events
        Touch Press Event
            click_comp.txt="button01"
            click_timer.en=1
        
        Touch Release Event
            if(click_timer.en==1)
            {
                click_timer.en=0
                sys0=confirm.val&1
                if(sys0>0)
                {
                    confirm.body.txt=button01text.txt
                    confirm.page_id.val=dp
                    confirm.page_name.txt=page_name.txt
                    confirm.component.txt=click_comp.txt
                    page confirm
                }else
                {
                    lastclick.txt="{\"page\": \""+page_name.txt+"\", \"event\": \"short_click\", \"component\": \""+click_comp.txt+"\"}"
                    printh 92
                    prints "localevent",0
                    printh 00
                    prints lastclick.txt,0
                    printh 00
                    printh FF FF FF
                }
            }
        
Hotspot button02
    Attributes
        ID               : 45
        Scope            : local
        Dragging         : 0
        Send Component ID: on press and release
    
    Events
        Touch Press Event
            click_comp.txt="button02"
            click_timer.en=1
        
        Touch Release Event
            if(click_timer.en==1)
            {
                click_timer.en=0
                sys0=confirm.val&2
                if(sys0>0)
                {
                    confirm.body.txt=button02text.txt
                    confirm.page_id.val=dp
                    confirm.page_name.txt=page_name.txt
                    confirm.component.txt=click_comp.txt
                    page confirm
                }else
                {
                    lastclick.txt="{\"page\": \""+page_name.txt+"\", \"event\": \"short_click\", \"component\": \""+click_comp.txt+"\"}"
                    printh 92
                    prints "localevent",0
                    printh 00
                    prints lastclick.txt,0
                    printh 00
                    printh FF FF FF
                }
            }
        
Hotspot button03
    Attributes
        ID               : 46
        Scope            : local
        Dragging         : 0
        Send Component ID: on press and release
    
    Events
        Touch Press Event
            click_comp.txt="button03"
            click_timer.en=1
        
        Touch Release Event
            if(click_timer.en==1)
            {
                click_timer.en=0
                sys0=confirm.val&4
                if(sys0>0)
                {
                    confirm.body.txt=button03text.txt
                    confirm.page_id.val=dp
                    confirm.page_name.txt=page_name.txt
                    confirm.component.txt=click_comp.txt
                    page confirm
                }else
                {
                    lastclick.txt="{\"page\": \""+page_name.txt+"\", \"event\": \"short_click\", \"component\": \""+click_comp.txt+"\"}"
                    printh 92
                    prints "localevent",0
                    printh 00
                    prints lastclick.txt,0
                    printh 00
                    printh FF FF FF
                }
            }
        
Hotspot button04
    Attributes
        ID               : 47
        Scope            : local
        Dragging         : 0
        Send Component ID: on press and release
    
    Events
        Touch Press Event
            click_comp.txt="button04"
            click_timer.en=1
        
        Touch Release Event
            if(click_timer.en==1)
            {
                click_timer.en=0
                sys0=confirm.val&8
                if(sys0>0)
                {
                    confirm.body.txt=button04text.txt
                    confirm.page_id.val=dp
                    confirm.page_name.txt=page_name.txt
                    confirm.component.txt=click_comp.txt
                    page confirm
                }else
                {
                    lastclick.txt="{\"page\": \""+page_name.txt+"\", \"event\": \"short_click\", \"component\": \""+click_comp.txt+"\"}"
                    printh 92
                    prints "localevent",0
                    printh 00
                    prints lastclick.txt,0
                    printh 00
                    printh FF FF FF
                }
            }
        
Hotspot button05
    Attributes
        ID               : 48
        Scope            : local
        Dragging         : 0
        Send Component ID: on press and release
    
    Events
        Touch Press Event
            click_comp.txt="button05"
            click_timer.en=1
        
        Touch Release Event
            if(click_timer.en==1)
            {
                click_timer.en=0
                sys0=confirm.val&16
                if(sys0>0)
                {
                    confirm.body.txt=button05text.txt
                    confirm.page_id.val=dp
                    confirm.page_name.txt=page_name.txt
                    confirm.component.txt=click_comp.txt
                    page confirm
                }else
                {
                    lastclick.txt="{\"page\": \""+page_name.txt+"\", \"event\": \"short_click\", \"component\": \""+click_comp.txt+"\"}"
                    printh 92
                    prints "localevent",0
                    printh 00
                    prints lastclick.txt,0
                    printh 00
                    printh FF FF FF
                }
            }
        
Hotspot button06
    Attributes
        ID               : 49
        Scope            : local
        Dragging         : 0
        Send Component ID: on press and release
    
    Events
        Touch Press Event
            click_comp.txt="button06"
            click_timer.en=1
        
        Touch Release Event
            if(click_timer.en==1)
            {
                click_timer.en=0
                sys0=confirm.val&32
                if(sys0>0)
                {
                    confirm.body.txt=button06text.txt
                    confirm.page_id.val=dp
                    confirm.page_name.txt=page_name.txt
                    confirm.component.txt=click_comp.txt
                    page confirm
                }else
                {
                    lastclick.txt="{\"page\": \""+page_name.txt+"\", \"event\": \"short_click\", \"component\": \""+click_comp.txt+"\"}"
                    printh 92
                    prints "localevent",0
                    printh 00
                    prints lastclick.txt,0
                    printh 00
                    printh FF FF FF
                }
            }
        
Hotspot button07
    Attributes
        ID               : 50
        Scope            : local
        Dragging         : 0
        Send Component ID: on press and release
    
    Events
        Touch Press Event
            click_comp.txt="button07"
            click_timer.en=1
        
        Touch Release Event
            if(click_timer.en==1)
            {
                click_timer.en=0
                sys0=confirm.val&64
                if(sys0>0)
                {
                    confirm.body.txt=button07text.txt
                    confirm.page_id.val=dp
                    confirm.page_name.txt=page_name.txt
                    confirm.component.txt=click_comp.txt
                    page confirm
                }else
                {
                    lastclick.txt="{\"page\": \""+page_name.txt+"\", \"event\": \"short_click\", \"component\": \""+click_comp.txt+"\"}"
                    printh 92
                    prints "localevent",0
                    printh 00
                    prints lastclick.txt,0
                    printh 00
                    printh FF FF FF
                }
            }
        
Hotspot button08
    Attributes
        ID               : 51
        Scope            : local
        Dragging         : 0
        Send Component ID: on press and release
    
    Events
        Touch Press Event
            click_comp.txt="button08"
            click_timer.en=1
        
        Touch Release Event
            if(click_timer.en==1)
            {
                click_timer.en=0
                sys0=confirm.val&128
                if(sys0>0)
                {
                    confirm.body.txt=button08text.txt
                    confirm.page_id.val=dp
                    confirm.page_name.txt=page_name.txt
                    confirm.component.txt=click_comp.txt
                    page confirm
                }else
                {
                    lastclick.txt="{\"page\": \""+page_name.txt+"\", \"event\": \"short_click\", \"component\": \""+click_comp.txt+"\"}"
                    printh 92
                    prints "localevent",0
                    printh 00
                    prints lastclick.txt,0
                    printh 00
                    printh FF FF FF
                }
            }
        
Timer swipestore
    Attributes
        ID         : 2
        Scope      : local
        Period (ms): 50
        Enabled    : no
    
    Events
        Timer Event
            swipex=tch0
            swipey=tch1
        
Timer click_timer
    Attributes
        ID         : 8
        Scope      : local
        Period (ms): 800
        Enabled    : no
    
    Events
        Timer Event
            lastclick.txt="{\"page\": \""+page_name.txt+"\", \"event\": \"long_click\", \"component\": \""+click_comp.txt+"\"}"
            printh 92
            prints "localevent",0
            printh 00
            prints lastclick.txt,0
            printh 00
            printh FF FF FF
            click_timer.en=0
        
Timer wakeup_timer
    Attributes
        ID         : 10
        Scope      : local
        Period (ms): 100
        Enabled    : yes
    
    Events
        Timer Event
            if(dim<brightness)
            {
                dimdelta=brightness-dim
                dimdelta/=10
                if(dimdelta<1)
                {
                    dimdelta=1
                }
                dim+=dimdelta
            }else
            {
                wakeup_timer.en=0
            }
        
TouchCap swipe
    Attributes
        ID   : 1
        Scope: local
        Value: 0
    
    Events
        Touch Press Event
            swipestore.en=1 // Start swipestore timer
        
        Touch Release Event
            swipestore.en=0
            // Touch has ended, x
            if(tch0==0)
            {
                swipec=swipex-tch2
                // From Left to Right
                if(swipec>swipedx)
                {
                    // Navigate back based on active status
                    if(is_entitypage03==1)
                    {
                        page entitypage03
                    }else if(is_entitypage02==1)
                    {
                        page entitypage02
                    }else if(is_entitypage01==1)
                    {
                        page entitypage01
                    }else
                    {
                        page home
                    }
                }
                // Right to Left swipe now navigates to home, looping back to the start.
                swipec2=0-swipedx
                if(swipec<swipec2)
                {
                    page home
                }
            }
            // Touch has ended, y
            if(tch1==0)
            {
                swipec=swipey-tch3
                // From Up to Down
                if(swipec>100)
                {
                    if(is_entitypage03==1&&is_entitypage02==1)
                    {
                        page entitypage02
                    }else if(is_entitypage03==1||is_entitypage02==1)
                    {
                        if(is_entitypage01==1)
                        {
                            page entitypage01
                        }else
                        {
                            page home
                        }
                    }else
                    {
                        page home
                    }
                }
                // Down to Up
                swipec=0-swipedy
                if(swipec<-100)
                {
                    // Navigate back up the sequence based on active status
                    if(is_entitypage01==1)
                    {
                        page entitypage01
                    }else if(is_entitypage02==1)
                    {
                        page entitypage02
                    }else if(is_entitypage03==1)
                    {
                        page entitypage03
                    }else
                    {
                        page home
                    }
                }
            }
        
