From 25edae00ea1d5a9af4a6599fc7c200bb810fbd49 Mon Sep 17 00:00:00 2001 From: BlockMen Date: Sat, 2 Nov 2013 04:26:44 +0100 Subject: [PATCH] Reworked formspecs and kahrl's hexcolor parser --- builtin/mm_menubar.lua | 4 +- builtin/modstore.lua | 6 +- doc/lua_api.txt | 45 ++++++- src/guiFormSpecMenu.cpp | 261 +++++++++++++++++++++++++++++++--------- src/guiFormSpecMenu.h | 12 +- 5 files changed, 259 insertions(+), 69 deletions(-) diff --git a/builtin/mm_menubar.lua b/builtin/mm_menubar.lua index c3ddbb28..a60ea7ae 100644 --- a/builtin/mm_menubar.lua +++ b/builtin/mm_menubar.lua @@ -30,8 +30,8 @@ end -------------------------------------------------------------------------------- function menubar.refresh() - menubar.formspec = "box[-0.3,5.625;12.4,1.3;000000]" .. - "box[-0.3,5.6;12.4,0.05;FFFFFF]" + menubar.formspec = "box[-0.3,5.625;12.4,1.3;#000000]" .. + "box[-0.3,5.6;12.4,0.05;#FFFFFF]" menubar.buttons = {} local button_base = -0.25 diff --git a/builtin/modstore.lua b/builtin/modstore.lua index 43f7759a..b364ce6b 100644 --- a/builtin/modstore.lua +++ b/builtin/modstore.lua @@ -183,9 +183,9 @@ function modstore.getmodlist(list) retval = retval .. "label[10,-0.4;" .. fgettext("Page $1 of $2", list.page+1, list.pagecount) .. "]" retval = retval .. "button[11.6,-0.1;0.5,0.5;btn_modstore_page_up;^]" - retval = retval .. "box[11.6,0.35;0.28,8.6;000000]" + retval = retval .. "box[11.6,0.35;0.28,8.6;#000000]" local scrollbarpos = 0.35 + (8.1/(list.pagecount-1)) * list.page - retval = retval .. "box[11.6," ..scrollbarpos .. ";0.28,0.5;32CD32]" + retval = retval .. "box[11.6," ..scrollbarpos .. ";0.28,0.5;#32CD32]" retval = retval .. "button[11.6,9.0;0.5,0.5;btn_modstore_page_down;v]" @@ -206,7 +206,7 @@ function modstore.getmodlist(list) if details ~= nil then local screenshot_ypos = (i-1 - (list.page * modstore.modsperpage))*1.9 +0.2 - retval = retval .. "box[0," .. screenshot_ypos .. ";11.4,1.75;FFFFFF]" + retval = retval .. "box[0," .. screenshot_ypos .. ";11.4,1.75;#FFFFFF]" --screenshot if details.screenshot_url ~= nil and diff --git a/doc/lua_api.txt b/doc/lua_api.txt index 93305022..689496e2 100644 --- a/doc/lua_api.txt +++ b/doc/lua_api.txt @@ -873,6 +873,22 @@ list[;;,;,;] list[;;,;,;] ^ Show an inventory list +listcolors[;] +^ Sets background color of slots in HEX-Color format +^ Sets background color of slots on mouse hovering + +listcolors[;;] +^ Sets background color of slots in HEX-Color format +^ Sets background color of slots on mouse hovering +^ Sets color of slots border + +listcolors[;;;;] +^ Sets background color of slots in HEX-Color format +^ Sets background color of slots on mouse hovering +^ Sets color of slots border +^ Sets background color of tooltips +^ Sets font color of tooltips + image[,;,;] ^ Show an image ^ Position and size units are inventory slots @@ -881,11 +897,21 @@ item_image[,;,;] ^ Show an inventory image of registered item/node ^ Position and size units are inventory slots +bgcolor[;] +^ Sets background color of formspec in HEX-Color format +^ If true the background color is drawn fullscreen (does not effect the size of the formspec) + background[,;,;] ^ Use a background. Inventory rectangles are not drawn then. ^ Position and size units are inventory slots ^ Example for formspec 8x4 in 16x resolution: image shall be sized 8*16px x 4*16px +background[,;,;;] +^ Use a background. Inventory rectangles are not drawn then. +^ Position and size units are inventory slots +^ Example for formspec 8x4 in 16x resolution: image shall be sized 8*16px x 4*16px +^ If true the background is clipped to formspec size (x and y are used as offset values, w and h are ignored) + pwdfield[,;,;;