Rebuild climate sliders

Solves #1459
Solves #1510
Solves #1531
Solves #1542
Solves #1547
This commit is contained in:
Edward Firmo
2024-01-07 01:33:58 +01:00
parent d17206c57d
commit 4590c9e1c7
31 changed files with 1223 additions and 356 deletions

View File

@@ -104,7 +104,7 @@ Text tft_version
Dragging : 0
Send Component ID : on press and release
Associated Keyboard: none
Text : 4.2dev.4
Text : 4.2dev.5
Max. Text Size : 9
Text esph_version

View File

@@ -19,6 +19,7 @@ Page climate
vis target_high,0
vis target_low,0
vis current_temp,0
vis climateslider,0
vis slider_high,0
vis slider_low,0
vis button01,0
@@ -34,13 +35,38 @@ Page climate
}
Page Exit Event
if(timer01.en==1)
covx embedded.val,va2.txt,0,0
if(timer0.en==1)
{
timer01.en=0
covx temp_number.val,va1.txt,0,0
climatesetting.txt="{\"page\": \"climate\", \"component\": \"climate_position\", \"value\": "+va1.txt+"}"
timer0.en=0
covx temp_number0.val,va1.txt,0,0
climatesetting.txt="{\"page\": \"climate\", \"key\": \"temperature\", \"value\": "+va1.txt+", \"embedded\": "+va2.txt+"}"
printh 92
prints "nspanelevent",0
prints "localevent",0
printh 00
prints climatesetting.txt,0
printh 00
printh FF FF FF
}
if(timer1.en==1)
{
timer1.en=0
covx temp_number1.val,va1.txt,0,0
climatesetting.txt="{\"page\": \"climate\", \"key\": \"target_temp_high\", \"value\": "+va1.txt+", \"embedded\": "+va2.txt+"}"
printh 92
prints "localevent",0
printh 00
prints climatesetting.txt,0
printh 00
printh FF FF FF
}
if(timer2.en==1)
{
timer2.en=0
covx temp_number2.val,va1.txt,0,0
climatesetting.txt="{\"page\": \"climate\", \"key\": \"target_temp_low\", \"value\": "+va1.txt+", \"embedded\": "+va2.txt+"}"
printh 92
prints "localevent",0
printh 00
prints climatesetting.txt,0
printh 00
@@ -80,7 +106,7 @@ Variable (int32) temp_step
Scope: local
Value: 0
Variable (int32) temp_number
Variable (int32) temp_number0
Attributes
ID : 33
Scope: local
@@ -118,12 +144,24 @@ Variable (int32) active_slider
Scope: local
Value: 1
Variable (int32) hvac_mode
Variable (int32) is_temp_range
Attributes
ID : 44
Scope: local
Value: 0
Variable (int32) temp_number1
Attributes
ID : 48
Scope: local
Value: 0
Variable (int32) temp_number2
Attributes
ID : 49
Scope: local
Value: 0
Text current_temp
Attributes
ID : 3
@@ -469,18 +507,15 @@ Slider slider_high
Events
Touch Release Event
if(hvac_mode.val!=3)
{
slider_low.val=slider_high.val
}
temp_number.val=slider_high.val*temp_step.val
temp_number.val+=temp_offset.val
va0.val=temp_number.val/10
active_slider.val=1
temp_number1.val=slider_high.val*temp_step.val
temp_number1.val+=temp_offset.val
va0.val=temp_number1.val/10
covx va0.val,target_high.txt,0,0
va0.val=temp_number.val%10
va0.val=temp_number1.val%10
covx va0.val,va1.txt,0,0
target_high.txt+="."+va1.txt
timer01.en=1
timer1.en=1
Slider slider_low
Attributes
@@ -494,18 +529,37 @@ Slider slider_low
Events
Touch Release Event
if(hvac_mode.val!=3)
{
slider_high.val=slider_low.val
}
temp_number.val=slider_high.val*temp_step.val
temp_number.val+=temp_offset.val
va0.val=temp_number.val/10
active_slider.val=2
temp_number2.val=slider_low.val*temp_step.val
temp_number2.val+=temp_offset.val
va0.val=temp_number2.val/10
covx va0.val,target_low.txt,0,0
va0.val=temp_number2.val%10
covx va0.val,va1.txt,0,0
target_low.txt+="."+va1.txt
timer2.en=1
Slider climateslider
Attributes
ID : 45
Scope : local
Dragging : 0
Send Component ID: on press and release
Position : 20
Upper range limit: 40
Lower range limit: 0
Events
Touch Release Event
active_slider.val=0
temp_number0.val=climateslider.val*temp_step.val
temp_number0.val+=temp_offset.val
va0.val=temp_number0.val/10
covx va0.val,target_high.txt,0,0
va0.val=temp_number.val%10
va0.val=temp_number0.val%10
covx va0.val,va1.txt,0,0
target_high.txt+="."+va1.txt
timer01.en=1
timer0.en=1
Button button_back
Attributes
@@ -530,20 +584,58 @@ Hotspot decrease_temp
Events
Touch Press Event
if(slider_high.val>0)
if(active_slider.val==0)
{
slider_high.val--
temp_number.val=slider_high.val*temp_step.val
temp_number.val+=temp_offset.val
va0.val=temp_number.val/10
covx va0.val,target_high.txt,0,0
va0.val=temp_number.val%10
covx va0.val,va1.txt,0,0
target_high.txt+="."+va1.txt
if(climateslider.val>0)
{
climateslider.val--
temp_number0.val=climateslider.val*temp_step.val
temp_number0.val+=temp_offset.val
va0.val=temp_number0.val/10
covx va0.val,target_high.txt,0,0
va0.val=temp_number0.val%10
covx va0.val,va1.txt,0,0
target_high.txt+="."+va1.txt
}
}else if(active_slider.val==1)
{
if(slider_high.val>0)
{
slider_high.val--
temp_number1.val=slider_high.val*temp_step.val
temp_number1.val+=temp_offset.val
va0.val=temp_number1.val/10
covx va0.val,target_high.txt,0,0
va0.val=temp_number1.val%10
covx va0.val,va1.txt,0,0
target_high.txt+="."+va1.txt
}
}else if(active_slider.val==2)
{
if(slider_low.val>0)
{
slider_low.val--
temp_number2.val=slider_low.val*temp_step.val
temp_number2.val+=temp_offset.val
va0.val=temp_number2.val/10
covx va0.val,target_low.txt,0,0
va0.val=temp_number2.val%10
covx va0.val,va1.txt,0,0
target_low.txt+="."+va1.txt
}
}
Touch Release Event
timer01.en=1
if(active_slider.val==0)
{
timer0.en=1
}else if(active_slider.val==1)
{
timer1.en=1
}else if(active_slider.val==2)
{
timer2.en=1
}
Hotspot increase_temp
Attributes
@@ -554,20 +646,58 @@ Hotspot increase_temp
Events
Touch Press Event
if(slider_high.val<slider_high.maxval)
if(active_slider.val==0)
{
slider_high.val++
temp_number.val=slider_high.val*temp_step.val
temp_number.val+=temp_offset.val
va0.val=temp_number.val/10
covx va0.val,target_high.txt,0,0
va0.val=temp_number.val%10
covx va0.val,va1.txt,0,0
target_high.txt+="."+va1.txt
if(climateslider.val<climateslider.maxval)
{
climateslider.val++
temp_number0.val=climateslider.val*temp_step.val
temp_number0.val+=temp_offset.val
va0.val=temp_number0.val/10
covx va0.val,target_high.txt,0,0
va0.val=temp_number0.val%10
covx va0.val,va1.txt,0,0
target_high.txt+="."+va1.txt
}
}else if(active_slider.val==1)
{
if(slider_high.val<slider_high.maxval)
{
slider_high.val++
temp_number1.val=slider_high.val*temp_step.val
temp_number1.val+=temp_offset.val
va0.val=temp_number1.val/10
covx va0.val,target_high.txt,0,0
va0.val=temp_number1.val%10
covx va0.val,va1.txt,0,0
target_high.txt+="."+va1.txt
}
}else if(active_slider.val==2)
{
if(slider_low.val<slider_low.maxval)
{
slider_low.val++
temp_number2.val=slider_low.val*temp_step.val
temp_number2.val+=temp_offset.val
va0.val=temp_number2.val/10
covx va0.val,target_low.txt,0,0
va0.val=temp_number2.val%10
covx va0.val,va1.txt,0,0
target_low.txt+="."+va1.txt
}
}
Touch Release Event
timer01.en=1
if(active_slider.val==0)
{
timer0.en=1
}else if(active_slider.val==1)
{
timer1.en=1
}else if(active_slider.val==2)
{
timer2.en=1
}
Timer swipestore
Attributes
@@ -581,7 +711,7 @@ Timer swipestore
swipex=tch0
swipey=tch1
Timer timer01
Timer timer0
Attributes
ID : 27
Scope : local
@@ -590,10 +720,10 @@ Timer timer01
Events
Timer Event
timer01.en=0
timer0.en=0
covx embedded.val,va2.txt,0,0
covx temp_number.val,va1.txt,0,0
climatesetting.txt="{\"page\": \"climate\", \"key\": \"set_temperature\", \"value\": "+va1.txt+", \"embedded\": "+va2.txt+"}"
covx temp_number0.val,va1.txt,0,0
climatesetting.txt="{\"page\": \"climate\", \"key\": \"temperature\", \"value\": "+va1.txt+", \"embedded\": "+va2.txt+"}"
printh 92
prints "localevent",0
printh 00
@@ -642,6 +772,46 @@ Timer wakeup_timer
wakeup_timer.en=0
}
Timer timer1
Attributes
ID : 46
Scope : local
Period (ms): 1000
Enabled : no
Events
Timer Event
timer1.en=0
covx embedded.val,va2.txt,0,0
covx temp_number1.val,va1.txt,0,0
climatesetting.txt="{\"page\": \"climate\", \"key\": \"target_temp_high\", \"value\": "+va1.txt+", \"embedded\": "+va2.txt+"}"
printh 92
prints "localevent",0
printh 00
prints climatesetting.txt,0
printh 00
printh FF FF FF
Timer timer2
Attributes
ID : 47
Scope : local
Period (ms): 1000
Enabled : no
Events
Timer Event
timer2.en=0
covx embedded.val,va2.txt,0,0
covx temp_number2.val,va1.txt,0,0
climatesetting.txt="{\"page\": \"climate\", \"key\": \"target_temp_low\", \"value\": "+va1.txt+", \"embedded\": "+va2.txt+"}"
printh 92
prints "localevent",0
printh 00
prints climatesetting.txt,0
printh 00
printh FF FF FF
TouchCap swipe
Attributes
ID : 1