diff options
Diffstat (limited to 'gui')
-rw-r--r-- | gui/Android.mk | 6 | ||||
-rw-r--r-- | gui/action.cpp | 27 | ||||
-rwxr-xr-x | gui/devices/1024x600/res/ui.xml | 123 | ||||
-rw-r--r-- | gui/devices/1024x768/res/ui.xml | 123 | ||||
-rw-r--r-- | gui/devices/1080x1920/res/ui.xml | 122 | ||||
-rw-r--r-- | gui/devices/1280x800/res/ui.xml | 123 | ||||
-rw-r--r-- | gui/devices/1920x1200/res/ui.xml | 123 | ||||
-rw-r--r-- | gui/devices/2560x1600/res/ui.xml | 8 | ||||
-rw-r--r-- | gui/devices/320x480/res/ui.xml | 122 | ||||
-rw-r--r-- | gui/devices/480x800/res/ui.xml | 122 | ||||
-rw-r--r-- | gui/devices/480x854/res/ui.xml | 122 | ||||
-rw-r--r-- | gui/devices/540x960/res/ui.xml | 122 | ||||
-rw-r--r-- | gui/devices/720x1280/res/ui.xml | 122 | ||||
-rwxr-xr-x | gui/devices/800x1280/res/ui.xml | 122 | ||||
-rwxr-xr-x | gui/devices/800x480/res/ui.xml | 123 | ||||
-rw-r--r-- | gui/objects.hpp | 66 | ||||
-rw-r--r-- | gui/pages.cpp | 6 | ||||
-rw-r--r-- | gui/slidervalue.cpp | 418 |
18 files changed, 992 insertions, 1008 deletions
diff --git a/gui/Android.mk b/gui/Android.mk index 748c5ec81..35d877bc1 100644 --- a/gui/Android.mk +++ b/gui/Android.mk @@ -17,6 +17,7 @@ LOCAL_SRC_FILES := \ animation.cpp \ conditional.cpp \ slider.cpp \ + slidervalue.cpp \ listbox.cpp \ keyboard.cpp \ input.cpp \ @@ -52,6 +53,11 @@ endif ifneq ($(TW_BRIGHTNESS_PATH),) LOCAL_CFLAGS += -DTW_BRIGHTNESS_PATH=$(TW_BRIGHTNESS_PATH) endif +ifneq ($(TW_MAX_BRIGHTNESS),) + LOCAL_CFLAGS += -DTW_MAX_BRIGHTNESS=$(TW_MAX_BRIGHTNESS) +else + LOCAL_CFLAGS += -DTW_MAX_BRIGHTNESS=255 +endif ifneq ($(TW_NO_SCREEN_BLANK),) LOCAL_CFLAGS += -DTW_NO_SCREEN_BLANK endif diff --git a/gui/action.cpp b/gui/action.cpp index b35074cf0..64049b2c1 100644 --- a/gui/action.cpp +++ b/gui/action.cpp @@ -540,6 +540,33 @@ int GUIAction::doAction(Action action, int isThreaded /* = 0 */) DataManager::SetValue(varName, value); return 0; } + if (arg.find("*") != string::npos) + { + string varName = arg.substr(0, arg.find('*')); + string multiply_by_str = gui_parse_text(arg.substr(arg.find('*') + 1, string::npos)); + int multiply_by = atoi(multiply_by_str.c_str()); + int value; + + DataManager::GetValue(varName, value); + DataManager::SetValue(varName, value*multiply_by); + return 0; + } + if (arg.find("/") != string::npos) + { + string varName = arg.substr(0, arg.find('/')); + string divide_by_str = gui_parse_text(arg.substr(arg.find('/') + 1, string::npos)); + int divide_by = atoi(divide_by_str.c_str()); + int value; + + if(divide_by != 0) + { + DataManager::GetValue(varName, value); + DataManager::SetValue(varName, value/divide_by); + } + return 0; + } + LOGERR("Unable to perform compute '%s'\n", arg.c_str()); + return -1; } if (function == "setguitimezone") diff --git a/gui/devices/1024x600/res/ui.xml b/gui/devices/1024x600/res/ui.xml index 1615ee9c1..b24bda381 100755 --- a/gui/devices/1024x600/res/ui.xml +++ b/gui/devices/1024x600/res/ui.xml @@ -197,6 +197,14 @@ <variable name="mount_storage_row" value="500" /> <variable name="wipe_list_height" value="300" /> <variable name="wipe_button_y" value="190" /> + <variable name="slidervalue_x" value="256" /> + <variable name="slidervalue_w" value="512" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="2" /> + <variable name="slidervalue_padding" value="0" /> + <variable name="slidervalue_sliderw" value="10" /> + <variable name="slidervalue_sliderh" value="50" /> </variables> <templates> @@ -2289,100 +2297,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row4_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%slidervalue_x%" y="%row3_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%slidervalue_x%" y="%row3_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="slidervalue_x" y="%row5_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="slidervalue_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/devices/1024x768/res/ui.xml b/gui/devices/1024x768/res/ui.xml index d16056220..5b9c3fcc5 100644 --- a/gui/devices/1024x768/res/ui.xml +++ b/gui/devices/1024x768/res/ui.xml @@ -197,6 +197,14 @@ <variable name="mount_storage_row" value="500" /> <variable name="wipe_list_height" value="400" /> <variable name="wipe_button_y" value="190" /> + <variable name="slidervalue_x" value="256" /> + <variable name="slidervalue_w" value="512" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="2" /> + <variable name="slidervalue_padding" value="0" /> + <variable name="slidervalue_sliderw" value="10" /> + <variable name="slidervalue_sliderh" value="50" /> </variables> <templates> @@ -2289,100 +2297,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row4_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%slidervalue_x%" y="%row3_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%slidervalue_x%" y="%row3_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="slidervalue_x" y="%row5_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="slidervalue_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/devices/1080x1920/res/ui.xml b/gui/devices/1080x1920/res/ui.xml index 93d539ca0..625cad83d 100644 --- a/gui/devices/1080x1920/res/ui.xml +++ b/gui/devices/1080x1920/res/ui.xml @@ -182,6 +182,13 @@ <variable name="storage_list_height" value="1313" /> <variable name="wipe_list_height" value="1305" /> <variable name="wipe_button_y" value="975" /> + <variable name="slidervalue_w" value="1060" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="3" /> + <variable name="slidervalue_padding" value="30" /> + <variable name="slidervalue_sliderw" value="15" /> + <variable name="slidervalue_sliderh" value="90" /> </variables> <templates> @@ -2266,100 +2273,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row3_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="col1_x" y="%row4_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="col1_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/devices/1280x800/res/ui.xml b/gui/devices/1280x800/res/ui.xml index 5ba47009e..3ffa79dee 100644 --- a/gui/devices/1280x800/res/ui.xml +++ b/gui/devices/1280x800/res/ui.xml @@ -197,6 +197,14 @@ <variable name="mount_storage_row" value="550" /> <variable name="wipe_list_height" value="420" /> <variable name="wipe_button_y" value="250" /> + <variable name="slidervalue_x" value="320" /> + <variable name="slidervalue_w" value="640" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="2" /> + <variable name="slidervalue_padding" value="0" /> + <variable name="slidervalue_sliderw" value="15" /> + <variable name="slidervalue_sliderh" value="60" /> </variables> <templates> @@ -2289,100 +2297,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row4_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%slidervalue_x%" y="%row3_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%slidervalue_x%" y="%row3_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="slidervalue_x" y="%row5_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="slidervalue_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/devices/1920x1200/res/ui.xml b/gui/devices/1920x1200/res/ui.xml index 935080ae6..af9aba6a7 100644 --- a/gui/devices/1920x1200/res/ui.xml +++ b/gui/devices/1920x1200/res/ui.xml @@ -197,6 +197,14 @@ <variable name="mount_storage_row" value="850" /> <variable name="wipe_list_height" value="850" /> <variable name="wipe_button_y" value="375" /> + <variable name="slidervalue_x" value="540" /> + <variable name="slidervalue_w" value="960" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="3" /> + <variable name="slidervalue_padding" value="0" /> + <variable name="slidervalue_sliderw" value="20" /> + <variable name="slidervalue_sliderh" value="80" /> </variables> <templates> @@ -2289,100 +2297,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row4_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%slidervalue_x%" y="%row3_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%slidervalue_x%" y="%row3_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="slidervalue_x" y="%row5_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="slidervalue_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/devices/2560x1600/res/ui.xml b/gui/devices/2560x1600/res/ui.xml index 7c46a9944..12c032bd0 100644 --- a/gui/devices/2560x1600/res/ui.xml +++ b/gui/devices/2560x1600/res/ui.xml @@ -197,6 +197,14 @@ <variable name="mount_storage_row" value="1100" /> <variable name="wipe_list_height" value="1100" /> <variable name="wipe_button_y" value="500" /> + <variable name="slidervalue_x" value="640" /> + <variable name="slidervalue_w" value="1280" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="4" /> + <variable name="slidervalue_padding" value="0" /> + <variable name="slidervalue_sliderw" value="30" /> + <variable name="slidervalue_sliderh" value="90" /> </variables> <templates> diff --git a/gui/devices/320x480/res/ui.xml b/gui/devices/320x480/res/ui.xml index c85db3a23..66865a7c4 100644 --- a/gui/devices/320x480/res/ui.xml +++ b/gui/devices/320x480/res/ui.xml @@ -177,6 +177,13 @@ <variable name="storage_list_height" value="340" /> <variable name="wipe_list_height" value="330" /> <variable name="wipe_button_y" value="270" /> + <variable name="slidervalue_w" value="304" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="1" /> + <variable name="slidervalue_padding" value="8" /> + <variable name="slidervalue_sliderw" value="4" /> + <variable name="slidervalue_sliderh" value="20" /> </variables> <templates> @@ -2253,100 +2260,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row3_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="col1_x" y="%row4_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="col1_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/devices/480x800/res/ui.xml b/gui/devices/480x800/res/ui.xml index 6efca350c..e33e5b1dd 100644 --- a/gui/devices/480x800/res/ui.xml +++ b/gui/devices/480x800/res/ui.xml @@ -177,6 +177,13 @@ <variable name="storage_list_height" value="400" /> <variable name="wipe_list_height" value="550" /> <variable name="wipe_button_y" value="400" /> + <variable name="slidervalue_w" value="460" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="1" /> + <variable name="slidervalue_padding" value="13" /> + <variable name="slidervalue_sliderw" value="7" /> + <variable name="slidervalue_sliderh" value="40" /> </variables> <templates> @@ -2253,100 +2260,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row3_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="col1_x" y="%row4_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="col1_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/devices/480x854/res/ui.xml b/gui/devices/480x854/res/ui.xml index de4d15944..e4487f65c 100644 --- a/gui/devices/480x854/res/ui.xml +++ b/gui/devices/480x854/res/ui.xml @@ -176,6 +176,13 @@ <variable name="storage_list_height" value="400" /> <variable name="wipe_list_height" value="550" /> <variable name="wipe_button_y" value="400" /> + <variable name="slidervalue_w" value="460" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="1" /> + <variable name="slidervalue_padding" value="13" /> + <variable name="slidervalue_sliderw" value="7" /> + <variable name="slidervalue_sliderh" value="40" /> </variables> <templates> @@ -2252,100 +2259,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row3_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="col1_x" y="%row4_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="col1_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/devices/540x960/res/ui.xml b/gui/devices/540x960/res/ui.xml index febc3db14..6ea2e1c64 100644 --- a/gui/devices/540x960/res/ui.xml +++ b/gui/devices/540x960/res/ui.xml @@ -177,6 +177,13 @@ <variable name="storage_list_height" value="675" /> <variable name="wipe_list_height" value="670" /> <variable name="wipe_button_y" value="475" /> + <variable name="slidervalue_w" value="520" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="2" /> + <variable name="slidervalue_padding" value="15" /> + <variable name="slidervalue_sliderw" value="8" /> + <variable name="slidervalue_sliderh" value="45" /> </variables> <templates> @@ -2253,100 +2260,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row3_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="col1_x" y="%row4_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="col1_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/devices/720x1280/res/ui.xml b/gui/devices/720x1280/res/ui.xml index e2a02b1e8..d43aae95d 100644 --- a/gui/devices/720x1280/res/ui.xml +++ b/gui/devices/720x1280/res/ui.xml @@ -182,6 +182,13 @@ <variable name="storage_list_height" value="875" /> <variable name="wipe_list_height" value="870" /> <variable name="wipe_button_y" value="650" /> + <variable name="slidervalue_w" value="700" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="2" /> + <variable name="slidervalue_padding" value="20" /> + <variable name="slidervalue_sliderw" value="10" /> + <variable name="slidervalue_sliderh" value="60" /> </variables> <templates> @@ -2266,100 +2273,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row3_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="col1_x" y="%row4_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="col1_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/devices/800x1280/res/ui.xml b/gui/devices/800x1280/res/ui.xml index 7282c929b..f7226f0fa 100755 --- a/gui/devices/800x1280/res/ui.xml +++ b/gui/devices/800x1280/res/ui.xml @@ -178,6 +178,13 @@ <variable name="storage_list_height" value="875" /> <variable name="wipe_list_height" value="870" /> <variable name="wipe_button_y" value="650" /> + <variable name="slidervalue_w" value="780" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="2" /> + <variable name="slidervalue_padding" value="20" /> + <variable name="slidervalue_sliderw" value="10" /> + <variable name="slidervalue_sliderh" value="60" /> </variables> <templates> @@ -2254,100 +2261,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row3_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%col1_x%" y="%row2_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="col1_x" y="%row4_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="col1_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/devices/800x480/res/ui.xml b/gui/devices/800x480/res/ui.xml index 97fdf44cd..bb324dffd 100755 --- a/gui/devices/800x480/res/ui.xml +++ b/gui/devices/800x480/res/ui.xml @@ -197,6 +197,14 @@ <variable name="mount_storage_row" value="500" /> <variable name="wipe_list_height" value="300" /> <variable name="wipe_button_y" value="150" /> + <variable name="slidervalue_x" value="200" /> + <variable name="slidervalue_w" value="400" /> + <variable name="slidervalue_line_clr" value="#FFFFFF" /> + <variable name="slidervalue_slider_clr" value="#33B5E5" /> + <variable name="slidervalue_lineh" value="1" /> + <variable name="slidervalue_padding" value="0" /> + <variable name="slidervalue_sliderw" value="7" /> + <variable name="slidervalue_sliderh" value="40" /> </variables> <templates> @@ -2297,100 +2305,47 @@ <text>Screen Settings</text> </object> - <object type="text" color="%text_color%"> - <font resource="font" /> - <placement x="%center_x%" y="%row4_text_y%" placement="5" /> - <text>Screen Timeout: %tw_screen_timeout_secs% seconds</text> - </object> - <object type="button"> - <placement x="%col1_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>None</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=0</action> - </object> - - <object type="button"> - <placement x="%col2_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>60</text> - <image resource="medium_button" /> + <placement x="%slidervalue_x%" y="%row3_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_false" /> <action function="set">tw_screen_timeout_secs=60</action> </object> <object type="button"> - <placement x="%col3_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>120</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=120</action> - </object> - - <object type="button"> - <placement x="%col4_medium_x%" y="%row2_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>180</text> - <image resource="medium_button" /> - <action function="set">tw_screen_timeout_secs=180</action> - </object> - - <object type="text" color="%text_color%"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <font resource="font" /> - <placement x="%center_x%" y="%row12_text_y%" placement="5" /> - <text>Brightness: %tw_brightness_display%</text> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col1_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>25%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_25% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=25%</action> - <action function="set">tw_brightness=%tw_brightness_25%</action> - </actions> - </object> - - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col2_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>50%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_50% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=50%</action> - <action function="set">tw_brightness=%tw_brightness_50%</action> - </actions> + <placement x="%slidervalue_x%" y="%row3_text_y%" /> + <font resource="font" color="%text_color%" /> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <text>Enable screen timeout.</text> + <image resource="checkbox_true" /> + <action function="set">tw_screen_timeout_secs=0</action> </object> - <object type="button"> - <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col3_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>75%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_75% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=75%</action> - <action function="set">tw_brightness=%tw_brightness_75%</action> - </actions> + <object type="slidervalue"> + <condition var1="tw_screen_timeout_secs" op="!=" var2="0" /> + <placement x="slidervalue_x" y="%row5_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Screen timeout in seconds:</text> + <data variable="tw_screen_timeout_secs" min="15" max="300" /> </object> - <object type="button"> + <object type="slidervalue"> <condition var1="tw_has_brightnesss_file" var2="1" /> - <placement x="%col4_medium_x%" y="%row4_medium_y%" /> - <font resource="font" color="%button_text_color%" /> - <text>100%</text> - <image resource="medium_button" /> - <actions> - <action function="cmd">echo %tw_brightness_100% > "%tw_brightness_file%"</action> - <action function="set">tw_brightness_display=100%</action> - <action function="set">tw_brightness=%tw_brightness_100%</action> + <placement x="slidervalue_x" y="%row12_text_y%" w="%slidervalue_w%" /> + <font resource="font" color="%text_color%" /> + <colors line="%slidervalue_line_clr%" slider="%slidervalue_slider_clr%" /> + <dimensions lineh="%slidervalue_lineh%" linepadding="%slidervalue_padding%" sliderw="%slidervalue_sliderw%" sliderh="%slidervalue_sliderh%" /> + <text>Brightness: %tw_brightness_pct%%</text> + <data variable="tw_brightness_pct" min="10" max="100" /> + <actions> + <action function="set">tw_brightness=%tw_brightness_max%</action> + <action function="compute">tw_brightness*%tw_brightness_pct%</action> + <action function="compute">tw_brightness/100</action> + <action function="cmd">echo %tw_brightness% > "%tw_brightness_file%"</action> </actions> </object> diff --git a/gui/objects.hpp b/gui/objects.hpp index 973c3cfe9..ff5429a9c 100644 --- a/gui/objects.hpp +++ b/gui/objects.hpp @@ -909,6 +909,72 @@ public: virtual int KeyRepeat(void); }; +class GUISliderValue: public RenderObject, public ActionObject, public Conditional +{ +public: + GUISliderValue(xml_node<>* node); + virtual ~GUISliderValue(); + +public: + // Render - Render the full object to the GL surface + // Return 0 on success, <0 on error + virtual int Render(void); + + // Update - Update any UI component animations (called <= 30 FPS) + // Return 0 if nothing to update, 1 on success and contiue, >1 if full render required, and <0 on error + virtual int Update(void); + + // SetPos - Update the position of the render object + // Return 0 on success, <0 on error + virtual int SetRenderPos(int x, int y, int w = 0, int h = 0); + + // NotifyTouch - Notify of a touch event + // Return 0 on success, >0 to ignore remainder of touch, and <0 on error + virtual int NotifyTouch(TOUCH_STATE state, int x, int y); + + // Notify of a variable change + virtual int NotifyVarChange(std::string varName, std::string value); + + // SetPageFocus - Notify when a page gains or loses focus + virtual void SetPageFocus(int inFocus); + +protected: + int measureText(const std::string& str); + int valueFromPct(float pct); + float pctFromValue(int value); + void loadValue(bool force = false); + + std::string mVariable; + int mMax; + int mMin; + int mValue; + char *mValueStr; + float mValuePct; + std::string mMaxStr; + std::string mMinStr; + Resource *mFont; + GUIText* mLabel; + int mLabelW; + COLOR mTextColor; + COLOR mLineColor; + COLOR mSliderColor; + bool mShowRange; + bool mShowCurr; + int mLineX; + int mLineY; + int mLineH; + int mLinePadding; + int mPadding; + int mSliderY; + int mSliderW; + int mSliderH; + bool mRendered; + int mFontHeight; + GUIAction *mAction; + bool mChangeOnDrag; + int lineW; +}; + // Helper APIs bool LoadPlacement(xml_node<>* node, int* x, int* y, int* w = NULL, int* h = NULL, RenderObject::Placement* placement = NULL); diff --git a/gui/pages.cpp b/gui/pages.cpp index bf44b3856..11fe9b080 100644 --- a/gui/pages.cpp +++ b/gui/pages.cpp @@ -273,6 +273,12 @@ bool Page::ProcessNode(xml_node<>* page, xml_node<>* templates /* = NULL */, int mRenders.push_back(element); mActions.push_back(element); } + else if (type == "slidervalue") + { + GUISliderValue *element = new GUISliderValue(child); + mRenders.push_back(element); + mActions.push_back(element); + } else if (type == "listbox") { GUIListBox* element = new GUIListBox(child); diff --git a/gui/slidervalue.cpp b/gui/slidervalue.cpp new file mode 100644 index 000000000..d369aceb9 --- /dev/null +++ b/gui/slidervalue.cpp @@ -0,0 +1,418 @@ +// slidervalue.cpp - GUISliderValue object + +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <fcntl.h> +#include <sys/reboot.h> +#include <sys/stat.h> +#include <sys/time.h> +#include <sys/mman.h> +#include <sys/types.h> +#include <sys/ioctl.h> +#include <time.h> +#include <unistd.h> +#include <stdlib.h> + +#include <string> + +extern "C" { +#include "../twcommon.h" +#include "../minuitwrp/minui.h" +} + +#include "rapidxml.hpp" +#include "objects.hpp" + +GUISliderValue::GUISliderValue(xml_node<>* node) : Conditional(node) +{ + xml_attribute<>* attr; + xml_node<>* child; + + mMin = 0; + mMax = 100; + mValue = 0; + mLineH = 2; + mLinePadding = 10; + mSliderW = 5; + mSliderH = 30; + mLineX = 0; + mLineY = 0; + mValueStr = NULL; + mAction = NULL; + mShowCurr = true; + mShowRange = false; + mChangeOnDrag = false; + mRendered = false; + + mLabel = NULL; + ConvertStrToColor("white", &mTextColor); + ConvertStrToColor("white", &mLineColor); + ConvertStrToColor("blue", &mSliderColor); + + if (!node) + { + LOGERR("GUISliderValue created without XML node\n"); + return; + } + + mLabel = new GUIText(node); + if(mLabel->Render() < 0) + { + delete mLabel; + mLabel = NULL; + } + + mAction = new GUIAction(node); + + child = node->first_node("font"); + if (child) + { + attr = child->first_attribute("resource"); + if (attr) + mFont = PageManager::FindResource(attr->value()); + + attr = child->first_attribute("color"); + if (attr) + { + std::string color = attr->value(); + ConvertStrToColor(color, &mTextColor); + } + } + + // Load the placement + LoadPlacement(node->first_node("placement"), &mRenderX, &mRenderY, &mRenderW); + + child = node->first_node("colors"); + if (child) + { + attr = child->first_attribute("line"); + if (attr) + ConvertStrToColor(attr->value(), &mLineColor); + + attr = child->first_attribute("slider"); + if (attr) + ConvertStrToColor(attr->value(), &mSliderColor); + } + + child = node->first_node("data"); + if (child) + { + attr = child->first_attribute("variable"); + if (attr) + mVariable = attr->value(); + + attr = child->first_attribute("min"); + if (attr) + { + mMinStr = gui_parse_text(attr->value()); + mMin = atoi(mMinStr.c_str()); + } + + attr = child->first_attribute("max"); + if (attr) + { + mMaxStr = gui_parse_text(attr->value()); + mMax = atoi(mMaxStr.c_str()); + } + + if (mMin > mMax) + mMin = mMax; + + attr = child->first_attribute("default"); + if (attr) + { + string parsevalue = gui_parse_text(attr->value()); + int def = atoi(parsevalue.c_str()); + + if (def < mMin) def = mMin; + else if (def > mMax) def = mMax; + DataManager::SetValue(mVariable, def); + } + + attr = child->first_attribute("showrange"); + if (attr) + mShowRange = atoi(attr->value()); + + attr = child->first_attribute("showcurr"); + if (attr) + mShowCurr = atoi(attr->value()); + + attr = child->first_attribute("changeondrag"); + if (attr) + mChangeOnDrag = atoi(attr->value()); + } + + child = node->first_node("dimensions"); + if (child) + { + attr = child->first_attribute("lineh"); + if (attr) + { + string parsevalue = gui_parse_text(attr->value()); + mLineH = atoi(parsevalue.c_str()); + } + + attr = child->first_attribute("linepadding"); + if (attr) + { + string parsevalue = gui_parse_text(attr->value()); + mPadding = atoi(parsevalue.c_str()); + } + + attr = child->first_attribute("sliderw"); + if (attr) + { + string parsevalue = gui_parse_text(attr->value()); + mSliderW = atoi(parsevalue.c_str()); + } + + attr = child->first_attribute("sliderh"); + if (attr) + { + string parsevalue = gui_parse_text(attr->value()); + mSliderH = atoi(parsevalue.c_str()); + } + } + + gr_getFontDetails(mFont ? mFont->GetResource() : NULL, (unsigned*) &mFontHeight, NULL); + + if(mShowCurr) + { + int maxLen = std::max(strlen(mMinStr.c_str()), strlen(mMaxStr.c_str())); + mValueStr = new char[maxLen+1]; + } + + loadValue(true); + + mLinePadding = mPadding; + if (mShowRange) + { + int textW = std::max(measureText(mMaxStr), measureText(mMinStr)); + mLinePadding += textW; + } + + SetRenderPos(mRenderX, mRenderY, mRenderW); +} + +GUISliderValue::~GUISliderValue() +{ + delete mLabel; + delete mAction; + delete[] mValueStr; +} + +void GUISliderValue::loadValue(bool force) +{ + if(!mVariable.empty()) + { + int value = DataManager::GetIntValue(mVariable); + if(mValue == value && !force) + return; + + mValue = value; + } + + mValue = std::max(mValue, mMin); + mValue = std::min(mValue, mMax); + mValuePct = pctFromValue(mValue); + mRendered = false; +} + +int GUISliderValue::SetRenderPos(int x, int y, int w, int h) +{ + mRenderX = x; + mRenderY = y; + if (w || h) + { + mRenderW = w; + mRenderH = h; + } + + mRenderH = mSliderH; + if(mShowCurr) + mRenderH += mFontHeight; + + if (mLabel) + { + int lw, lh; + mLabel->GetCurrentBounds(lw, lh); + int textX = mRenderX + (mRenderW/2 - lw/2); + + mLabel->SetRenderPos(textX, mRenderY); + + y += lh; + mRenderH += lh; + } + + mSliderY = y; + mLineY = (y + mSliderH/2) - (mLineH/2); + + mLineX = mRenderX + mLinePadding; + + mActionX = mRenderX; + mActionY = mRenderY; + mActionW = mRenderW; + mActionH = mRenderH; + lineW = mRenderW - (mLinePadding * 2); + + return 0; +} + +int GUISliderValue::measureText(const std::string& str) +{ + void* fontResource = NULL; + if (mFont) fontResource = mFont->GetResource(); + + return gr_measureEx(str.c_str(), fontResource); +} + +int GUISliderValue::Render(void) +{ + if (!isConditionTrue()) + { + mRendered = false; + return 0; + } + + if(mLabel) + { + int w, h; + mLabel->GetCurrentBounds(w, h); + if (w != mLabelW) { + mLabelW = w; + int textX = mRenderX + (mRenderW/2 - mLabelW/2); + mLabel->SetRenderPos(textX, mRenderY); + } + int res = mLabel->Render(); + if(res < 0) + return res; + } + + // line + gr_color(mLineColor.red, mLineColor.green, mLineColor.blue, mLineColor.alpha); + gr_fill(mLineX, mLineY, lineW, mLineH); + + // slider + uint32_t sliderX = (mValuePct*lineW)/100 + mLineX; + sliderX -= mSliderW/2; + + gr_color(mSliderColor.red, mSliderColor.green, mSliderColor.blue, mSliderColor.alpha); + gr_fill(sliderX, mSliderY, mSliderW, mSliderH); + + void *fontResource = NULL; + if(mFont) fontResource = mFont->GetResource(); + gr_color(mTextColor.red, mTextColor.green, mTextColor.blue, mTextColor.alpha); + if(mShowRange) + { + int rangeY = (mLineY - mLineH/2) - mFontHeight/2; + gr_textEx(mRenderX + mPadding/2, rangeY, mMinStr.c_str(), fontResource); + gr_textEx(mLineX + lineW + mPadding/2, rangeY, mMaxStr.c_str(), fontResource); + } + + if(mValueStr && mShowCurr) + { + sprintf(mValueStr, "%d", mValue); + int textW = measureText(mValueStr); + gr_textEx(mRenderX + (mRenderW/2 - textW/2), mSliderY+mSliderH, mValueStr, fontResource); + } + + mRendered = true; + return 0; +} + +int GUISliderValue::Update(void) +{ + if (!isConditionTrue()) return mRendered ? 2 : 0; + if (!mRendered) return 2; + + if(mLabel) + return mLabel->Update(); + return 0; +} + +int GUISliderValue::valueFromPct(float pct) +{ + int range = abs(mMax - mMin); + return mMin + (pct * range) / 100; +} + +float GUISliderValue::pctFromValue(int value) +{ + return float((value - mMin) * 100) / abs(mMax - mMin); +} + +int GUISliderValue::NotifyTouch(TOUCH_STATE state, int x, int y) +{ + if (!isConditionTrue()) return -1; + + static bool dragging = false; + switch (state) + { + case TOUCH_START: + if (x >= mRenderX && x <= mRenderX + mRenderW && + y >= mRenderY && y <= mRenderY + mRenderH) + { + dragging = true; + } + // no break + case TOUCH_DRAG: + { + if (!dragging) return 0; + + x = std::max(mLineX, x); + x = std::min(mLineX + lineW, x); + + mValuePct = float(((x - mLineX) * 100) / lineW); + int newVal = valueFromPct(mValuePct); + if (newVal != mValue) { + mRendered = false; + mValue = newVal; + if (mChangeOnDrag) { + if (!mVariable.empty()) + DataManager::SetValue(mVariable, mValue); + if (mAction) + mAction->doActions(); + } + } + break; + } + case TOUCH_RELEASE: + { + if (!dragging) return 0; + dragging = false; + + if (!mVariable.empty()) + DataManager::SetValue(mVariable, mValue); + if (mAction) + mAction->doActions(); + break; + } + case TOUCH_REPEAT: + case TOUCH_HOLD: + break; + } + return 0; +} + +int GUISliderValue::NotifyVarChange(std::string varName, std::string value) +{ + if (mLabel) + mLabel->NotifyVarChange(varName, value); + if (varName == mVariable) { + int newVal = atoi(value.c_str()); + if(newVal != mValue) { + mValue = newVal; + mValuePct = pctFromValue(mValue); + mRendered = false; + } + } + return 0; +} + +void GUISliderValue::SetPageFocus(int inFocus) +{ + if (inFocus) + loadValue(); +} |