MainMenu: replace textlist with table, remove legacy code
parent
550519dc1d
commit
494eff7911
|
@ -40,16 +40,6 @@ local function render_client_count(n)
|
|||
else return '?' end
|
||||
end
|
||||
|
||||
local function configure_selected_world_params(idx)
|
||||
local worldconfig = modmgr.get_worldconfig(menudata.worldlist:get_list()[idx].path)
|
||||
if worldconfig.creative_mode then
|
||||
core.settings:set("creative_mode", worldconfig.creative_mode)
|
||||
end
|
||||
if worldconfig.enable_damage then
|
||||
core.settings:set("enable_damage", worldconfig.enable_damage)
|
||||
end
|
||||
end
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
function image_column(tooltip)
|
||||
return "image,tooltip=" .. core.formspec_escape(tooltip) .. "," ..
|
||||
|
@ -221,7 +211,6 @@ function menu_handle_key_up_down(fields, textlist, settingname)
|
|||
newidx = oldidx + 1
|
||||
end
|
||||
core.settings:set(settingname, menudata.worldlist:get_raw_index(newidx))
|
||||
configure_selected_world_params(newidx)
|
||||
return true
|
||||
end
|
||||
return false
|
||||
|
@ -336,15 +325,3 @@ function menu_worldmt(selected, setting, value)
|
|||
return nil
|
||||
end
|
||||
end
|
||||
|
||||
function menu_worldmt_legacy(selected)
|
||||
local modes_names = {"creative_mode", "enable_damage", "server_announce"}
|
||||
for _, mode_name in pairs(modes_names) do
|
||||
local mode_val = menu_worldmt(selected, mode_name)
|
||||
if mode_val then
|
||||
core.settings:set(mode_name, mode_val)
|
||||
else
|
||||
menu_worldmt(selected, mode_name, core.settings:get(mode_name))
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -69,10 +69,8 @@ local function main_button_handler(this, fields, name)
|
|||
local world_doubleclick = false
|
||||
|
||||
if fields["sp_worlds"] ~= nil then
|
||||
local event = core.explode_textlist_event(fields["sp_worlds"])
|
||||
local selected = core.get_textlist_index("sp_worlds")
|
||||
|
||||
menu_worldmt_legacy(selected)
|
||||
local event = core.explode_table_event(fields["sp_worlds"])
|
||||
local selected = core.get_table_index("sp_worlds")
|
||||
|
||||
if event.type == "DCL" then
|
||||
world_doubleclick = true
|
||||
|
@ -105,14 +103,14 @@ local function main_button_handler(this, fields, name)
|
|||
|
||||
if fields["cb_server_announce"] then
|
||||
core.settings:set("server_announce", fields["cb_server_announce"])
|
||||
local selected = core.get_textlist_index("srv_worlds")
|
||||
local selected = core.get_table_index("srv_worlds")
|
||||
menu_worldmt(selected, "server_announce", fields["cb_server_announce"])
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
if fields["play"] ~= nil or world_doubleclick or fields["key_enter"] then
|
||||
local selected = core.get_textlist_index("sp_worlds")
|
||||
local selected = core.get_table_index("sp_worlds")
|
||||
gamedata.selected_world = menudata.worldlist:get_raw_index(selected)
|
||||
core.settings:set("maintab_LAST", "local")
|
||||
|
||||
|
@ -166,7 +164,7 @@ local function main_button_handler(this, fields, name)
|
|||
end
|
||||
|
||||
if fields["world_delete"] ~= nil then
|
||||
local selected = core.get_textlist_index("sp_worlds")
|
||||
local selected = core.get_table_index("sp_worlds")
|
||||
if selected ~= nil and
|
||||
selected <= menudata.worldlist:size() then
|
||||
local world = menudata.worldlist:get_list()[selected]
|
||||
|
@ -185,7 +183,7 @@ local function main_button_handler(this, fields, name)
|
|||
end
|
||||
|
||||
if fields["world_configure"] ~= nil then
|
||||
local selected = core.get_textlist_index("sp_worlds")
|
||||
local selected = core.get_table_index("sp_worlds")
|
||||
if selected ~= nil then
|
||||
local configdialog =
|
||||
create_configure_world_dlg(
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
|
||||
--------------------------------------------------------------------------------
|
||||
local password_save = core.settings:get_bool("password_save")
|
||||
local password_tmp = ""
|
||||
|
||||
local function get_formspec(_, _, tabdata)
|
||||
-- Update the cached supported proto info,
|
||||
|
@ -63,13 +64,10 @@ local function get_formspec(_, _, tabdata)
|
|||
core.formspec_escape(defaulttexturedir .. "blank.png")
|
||||
.. ";btn_mp_connect;;true;false]"
|
||||
|
||||
|
||||
local pwd = password_save and core.formspec_escape(core.settings:get("password")) or password_tmp
|
||||
-- Password
|
||||
if password_save then
|
||||
retval = retval .. "pwdfield[10.45,1.81;1.91,0.39;te_pwd;;" ..
|
||||
core.formspec_escape(core.settings:get("password")) .. "]"
|
||||
else
|
||||
retval = retval .. "pwdfield[10.45,1.81;1.91,0.39;te_pwd;;]"
|
||||
end
|
||||
retval = retval .. "pwdfield[10.45,1.81;1.91,0.39;te_pwd;;" .. pwd .. "]"
|
||||
|
||||
if tabdata.fav_selected and fav_selected then
|
||||
if gamedata.fav then
|
||||
|
@ -160,6 +158,8 @@ local function main_button_handler(_, fields, _, tabdata)
|
|||
|
||||
if fields.te_pwd and password_save then
|
||||
core.settings:set("password", fields.te_pwd)
|
||||
else
|
||||
password_tmp = fields.te_pwd
|
||||
end
|
||||
|
||||
if fields.favourites then
|
||||
|
|
Loading…
Reference in New Issue