www.spaceplanner.app

Web client to the spaceplanner API
git clone git://jacobedwards.org/www.spaceplanner.app
Log | Files | Refs

commit d8e4a0f6d545349869b70ff2340f482d89877975
parent 437b79fbaa65f0640095b5e5812fee6b468c5f43
Author: Jacob R. Edwards <jacob@jacobedwards.org>
Date:   Tue, 17 Sep 2024 21:03:52 -0700

Fix furniture menu

1. Replace erroneous references to 'height' with 'depth'
2. Initialize name input with name parameter
3. Fix the variety selection from being reset when a new menu is opened

Diffstat:
Mfiles/floorplans/floorplan/main.js | 26+++++++++++++-------------
1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/files/floorplans/floorplan/main.js b/files/floorplans/floorplan/main.js @@ -746,7 +746,7 @@ function furnitureHandler(ev, editor, state) { } } -function enumSelection(input, values) { +function enumSelection(input, values, selected) { let a = typeof(values.keys) === "function" for (let i in values) { let opt = input.appendChild(document.createElement("option")) @@ -789,7 +789,7 @@ function furnitureMenu(editor, pointOrID) { y: p.y, type, width: v.width ?? 9600, - depth: v.height ?? 9600, + depth: v.depth ?? 9600, name: null } @@ -797,12 +797,12 @@ function furnitureMenu(editor, pointOrID) { } let items = [ - menuItem("name", "Name"), + menuItem("name", "Name", { attributes: { value: params.name } }), menuItem("type", "Type", { break: false, enum: editor.furniture_types, attributes: { value: params.type, required: true } }), - menuItem("variety", "Variety", { enum: editor.furniture_types[params.type].varieties, attributes: { value: editor.variety(id) } }), + menuItem("variety", "Variety", { enum: editor.furniture_types[params.type].varieties, attributes: { value: editor.varietyFrom(params) } }), menuItem("width", "Width", { attributes: { value: params.width, required: true } }), - menuItem("depth", "Depth", { attributes: { value: params.height, required: true } }), - menuItem("angle", "Angle", { attributes: { value: params.angle, min: 0, max: 359, type: "number", value: 0, required: true } }), + menuItem("depth", "Depth", { attributes: { value: params.depth, required: true } }), + menuItem("angle", "Angle", { attributes: { value: params.angle, min: 0, max: 359, type: "number", required: true } }), menuItem("cancel", null, { attributes: { value: "Cancel", type: "button" }}), menuItem("done", null, { attributes: { value: "Done", type: "submit" }}) ] @@ -812,7 +812,7 @@ function furnitureMenu(editor, pointOrID) { } const fromVariety = function(type, variety) { - console.debug(`Setting with and depth to ${variety} ${type}`) + console.log(`Setting with and depth to ${variety} ${type}`) if (variety == null) { return } @@ -829,16 +829,16 @@ function furnitureMenu(editor, pointOrID) { fromVariety() return } - let v = menuItem("variety", "Variety", { enum: vars, attributes: { - value: editor.varietyFrom(params) - }}) + let v = menuItem("variety", "Variety", { enum: vars }) let c = makeItem(v) + items[keys.variety].container.replaceWith(c) + items[keys.variety] = v + items[keys.variety].input.value = editor.varietyFrom(params) + fromVariety(items[keys.type].input.value) + c.addEventListener("change", function(ev) { fromVariety(items[keys.type].input.value, ev.target.value) }) - items[keys.variety].container.replaceWith(c) - items[keys.variety] = v - fromVariety(items[keys.type].input.value, items[keys.variety].input.value) } let menu = makeMenu(items)