mirror of
https://github.com/minetest/minetest.git
synced 2024-11-27 10:03:45 +01:00
Two ContentDB GUI fixes (#13806)
This commit is contained in:
parent
4f735fba05
commit
5bfc5d44c0
@ -733,8 +733,16 @@ function store.sort_packages()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Sort installed content by title
|
-- Sort installed content first by "is there an update available?", then by title
|
||||||
table.sort(ret, function(a, b)
|
table.sort(ret, function(a, b)
|
||||||
|
local a_updatable = a.installed_release < a.release
|
||||||
|
local b_updatable = b.installed_release < b.release
|
||||||
|
if a_updatable and not b_updatable then
|
||||||
|
return true
|
||||||
|
elseif b_updatable and not a_updatable then
|
||||||
|
return false
|
||||||
|
end
|
||||||
|
|
||||||
return a.title < b.title
|
return a.title < b.title
|
||||||
end)
|
end)
|
||||||
|
|
||||||
@ -789,7 +797,7 @@ local function get_info_formspec(text)
|
|||||||
return table.concat({
|
return table.concat({
|
||||||
"formspec_version[6]",
|
"formspec_version[6]",
|
||||||
"size[15.75,9.5]",
|
"size[15.75,9.5]",
|
||||||
not TOUCHSCREEN_GUI and "position[0.5,0.55]" or "",
|
TOUCHSCREEN_GUI and "padding[0.01,0.01]" or "position[0.5,0.55]",
|
||||||
|
|
||||||
"label[4,4.35;", text, "]",
|
"label[4,4.35;", text, "]",
|
||||||
"container[0,", H - 0.8 - 0.375, "]",
|
"container[0,", H - 0.8 - 0.375, "]",
|
||||||
@ -819,7 +827,7 @@ function store.get_formspec(dlgdata)
|
|||||||
local formspec = {
|
local formspec = {
|
||||||
"formspec_version[6]",
|
"formspec_version[6]",
|
||||||
"size[15.75,9.5]",
|
"size[15.75,9.5]",
|
||||||
not TOUCHSCREEN_GUI and "position[0.5,0.55]" or "",
|
TOUCHSCREEN_GUI and "padding[0.01,0.01]" or "position[0.5,0.55]",
|
||||||
|
|
||||||
"style[status,downloading,queued;border=false]",
|
"style[status,downloading,queued;border=false]",
|
||||||
|
|
||||||
@ -908,7 +916,10 @@ function store.get_formspec(dlgdata)
|
|||||||
formspec[#formspec + 1] = "]"
|
formspec[#formspec + 1] = "]"
|
||||||
|
|
||||||
-- buttons
|
-- buttons
|
||||||
local left_base = "image_button[-1.55,0;0.7,0.7;" .. core.formspec_escape(defaulttexturedir)
|
local description_width = W - 2.625 - 2 * 0.7 - 2 * 0.15
|
||||||
|
|
||||||
|
local second_base = "image_button[-1.55,0;0.7,0.7;" .. core.formspec_escape(defaulttexturedir)
|
||||||
|
local third_base = "image_button[-2.4,0;0.7,0.7;" .. core.formspec_escape(defaulttexturedir)
|
||||||
formspec[#formspec + 1] = "container["
|
formspec[#formspec + 1] = "container["
|
||||||
formspec[#formspec + 1] = W - 0.375*2
|
formspec[#formspec + 1] = W - 0.375*2
|
||||||
formspec[#formspec + 1] = ",0.1]"
|
formspec[#formspec + 1] = ",0.1]"
|
||||||
@ -918,29 +929,29 @@ function store.get_formspec(dlgdata)
|
|||||||
formspec[#formspec + 1] = core.formspec_escape(defaulttexturedir)
|
formspec[#formspec + 1] = core.formspec_escape(defaulttexturedir)
|
||||||
formspec[#formspec + 1] = "cdb_downloading.png;3;400;]"
|
formspec[#formspec + 1] = "cdb_downloading.png;3;400;]"
|
||||||
elseif package.queued then
|
elseif package.queued then
|
||||||
formspec[#formspec + 1] = left_base
|
formspec[#formspec + 1] = second_base
|
||||||
formspec[#formspec + 1] = "cdb_queued.png;queued;]"
|
formspec[#formspec + 1] = "cdb_queued.png;queued;]"
|
||||||
elseif not package.path then
|
elseif not package.path then
|
||||||
local elem_name = "install_" .. i .. ";"
|
local elem_name = "install_" .. i .. ";"
|
||||||
formspec[#formspec + 1] = "style[" .. elem_name .. "bgcolor=#71aa34]"
|
formspec[#formspec + 1] = "style[" .. elem_name .. "bgcolor=#71aa34]"
|
||||||
formspec[#formspec + 1] = left_base .. "cdb_add.png;" .. elem_name .. "]"
|
formspec[#formspec + 1] = second_base .. "cdb_add.png;" .. elem_name .. "]"
|
||||||
formspec[#formspec + 1] = "tooltip[" .. elem_name .. fgettext("Install") .. tooltip_colors
|
formspec[#formspec + 1] = "tooltip[" .. elem_name .. fgettext("Install") .. tooltip_colors
|
||||||
else
|
else
|
||||||
if package.installed_release < package.release then
|
if package.installed_release < package.release then
|
||||||
|
|
||||||
-- The install_ action also handles updating
|
-- The install_ action also handles updating
|
||||||
local elem_name = "install_" .. i .. ";"
|
local elem_name = "install_" .. i .. ";"
|
||||||
formspec[#formspec + 1] = "style[" .. elem_name .. "bgcolor=#28ccdf]"
|
formspec[#formspec + 1] = "style[" .. elem_name .. "bgcolor=#28ccdf]"
|
||||||
formspec[#formspec + 1] = left_base .. "cdb_update.png;" .. elem_name .. "]"
|
formspec[#formspec + 1] = third_base .. "cdb_update.png;" .. elem_name .. "]"
|
||||||
formspec[#formspec + 1] = "tooltip[" .. elem_name .. fgettext("Update") .. tooltip_colors
|
formspec[#formspec + 1] = "tooltip[" .. elem_name .. fgettext("Update") .. tooltip_colors
|
||||||
else
|
|
||||||
|
description_width = description_width - 0.7 - 0.15
|
||||||
|
end
|
||||||
|
|
||||||
local elem_name = "uninstall_" .. i .. ";"
|
local elem_name = "uninstall_" .. i .. ";"
|
||||||
formspec[#formspec + 1] = "style[" .. elem_name .. "bgcolor=#a93b3b]"
|
formspec[#formspec + 1] = "style[" .. elem_name .. "bgcolor=#a93b3b]"
|
||||||
formspec[#formspec + 1] = left_base .. "cdb_clear.png;" .. elem_name .. "]"
|
formspec[#formspec + 1] = second_base .. "cdb_clear.png;" .. elem_name .. "]"
|
||||||
formspec[#formspec + 1] = "tooltip[" .. elem_name .. fgettext("Uninstall") .. tooltip_colors
|
formspec[#formspec + 1] = "tooltip[" .. elem_name .. fgettext("Uninstall") .. tooltip_colors
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
local web_elem_name = "view_" .. i .. ";"
|
local web_elem_name = "view_" .. i .. ";"
|
||||||
formspec[#formspec + 1] = "image_button[-0.7,0;0.7,0.7;" ..
|
formspec[#formspec + 1] = "image_button[-0.7,0;0.7,0.7;" ..
|
||||||
@ -950,7 +961,6 @@ function store.get_formspec(dlgdata)
|
|||||||
formspec[#formspec + 1] = "container_end[]"
|
formspec[#formspec + 1] = "container_end[]"
|
||||||
|
|
||||||
-- description
|
-- description
|
||||||
local description_width = W - 0.375*5 - 0.85 - 2*0.7 - 0.15
|
|
||||||
formspec[#formspec + 1] = "textarea[1.855,0.3;"
|
formspec[#formspec + 1] = "textarea[1.855,0.3;"
|
||||||
formspec[#formspec + 1] = tostring(description_width)
|
formspec[#formspec + 1] = tostring(description_width)
|
||||||
formspec[#formspec + 1] = ",0.8;;;"
|
formspec[#formspec + 1] = ",0.8;;;"
|
||||||
|
Loading…
Reference in New Issue
Block a user