From 2c2f11d52aa5f372e25c6012c7ec033dcbdb7dd6 Mon Sep 17 00:00:00 2001 From: Evgeny Date: Wed, 1 Sep 2021 07:36:19 +0300 Subject: [PATCH] add settings API --- main/widgets-on-off.lua | 39 +++++++++------------------------------ samples/settings-test.lua | 11 +++-------- 2 files changed, 12 insertions(+), 38 deletions(-) diff --git a/main/widgets-on-off.lua b/main/widgets-on-off.lua index e4eea0c..ea320d3 100644 --- a/main/widgets-on-off.lua +++ b/main/widgets-on-off.lua @@ -47,26 +47,7 @@ function on_click(idx) end function on_long_click(idx) - item_idx = idx - - ui:show_context_menu({ - {"sliders-v-square", "Widgets"}, - {"pencil-alt", "Style"}, - {"info", "Info"} - }) -end - -function on_context_menu_click(menu_idx) - if menu_idx == 1 then - dialog_id = "widgets" - ui:show_checkbox_dialog("Select widgets", names, get_checkbox_idx()) - elseif menu_idx == 2 then - dialog_id = "style" - ui:show_radio_dialog("Select style", style, get_radio_idx()) - elseif menu_idx == 3 then - dialog_id = "info" - ui:show_dialog("Widget", names[get_checkbox_idx()[item_idx]]) - end + ui:show_toast(names[get_checkbox_idx()[idx]]) end function on_dialog_action(data) @@ -74,20 +55,18 @@ function on_dialog_action(data) return end - if dialog_id == "widgets" then - local radio_idx = get_radio_idx() - local args = data - table.insert(args, radio_idx) - settings:set(args) - elseif dialog_id == "style" then - local args = get_checkbox_idx() - table.insert(args, data) - settings:set(args) - end + local radio_idx = get_radio_idx() + local args = data + table.insert(args, radio_idx) + settings:set(args) on_resume() end +function on_settings() + ui:show_checkbox_dialog("Select widgets", names, get_checkbox_idx()) +end + --utilities-- function set_default_args() diff --git a/samples/settings-test.lua b/samples/settings-test.lua index 416917c..17b9780 100644 --- a/samples/settings-test.lua +++ b/samples/settings-test.lua @@ -1,18 +1,13 @@ function on_resume() local s1 = { - key1 = "value1", - key2 = "value2", + key1 = "123", + key2 = "val ue 2", } settings:set_kv(s1) local s2 = settings:get_kv() - ui:show_text("key1="..s2.key1.." ".."key2="..s2.key2) + ui:show_text("key1=\""..s2.key1.."\" ".."key2=\""..s2.key2.."\"") end -function on_settings() - local s = settings:get_kv() - - ui:show_dialog("Settings", "key1="..s.key1.." ".."key2="..s.key2) -end