From b1fce1b115186933705dd34737241c590bc3cb41 Mon Sep 17 00:00:00 2001 From: isaisstillalive Date: Tue, 7 Jul 2020 08:33:51 +0900 Subject: [PATCH] Refactor dialog buttons --- src/js/core/modal_dialog_elements.js | 15 +++++---------- src/js/game/hud/parts/waypoints.js | 2 +- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/src/js/core/modal_dialog_elements.js b/src/js/core/modal_dialog_elements.js index b6aece75..8252487a 100644 --- a/src/js/core/modal_dialog_elements.js +++ b/src/js/core/modal_dialog_elements.js @@ -365,23 +365,18 @@ export class DialogWithForm extends Dialog { * @param {Application} param0.app * @param {string} param0.title * @param {string} param0.desc - * @param {string=} param0.confirmButton + * @param {array=} param0.buttons + * @param {string=} param0.confirmButtonId * @param {string=} param0.extraButton * @param {Array} param0.formElements */ - constructor({ app, title, desc, formElements, confirmButton = "ok:good", extraButton = null }) { + constructor({ app, title, desc, formElements, buttons = ["cancel", "ok:good"], confirmButtonId = "ok" }) { let html = ""; html += desc + "
"; for (let i = 0; i < formElements.length; ++i) { html += formElements[i].getHtml(); } - let buttons = null; - if (extraButton) { - buttons = [extraButton, "cancel", confirmButton]; - } else { - buttons = ["cancel", confirmButton]; - } super({ app, title: title, @@ -390,10 +385,10 @@ export class DialogWithForm extends Dialog { type: "info", closeButton: true, }); - this.confirmButtonId = confirmButton.split(":")[0]; + this.confirmButtonId = confirmButtonId; this.formElements = formElements; - this.enterHandler = "ok"; + this.enterHandler = confirmButtonId; } internalButtonHandler(id, ...payload) { diff --git a/src/js/game/hud/parts/waypoints.js b/src/js/game/hud/parts/waypoints.js index 88fe5f58..072b02fc 100644 --- a/src/js/game/hud/parts/waypoints.js +++ b/src/js/game/hud/parts/waypoints.js @@ -303,7 +303,7 @@ export class HUDWaypoints extends BaseHUDPart { title: T.dialogs.editMarker.title, desc: T.dialogs.editMarker.desc, formElements: [markerNameInput], - extraButton: "delete:bad", + buttons: ["delete:bad", "cancel", "ok:good"], }); this.root.hud.parts.dialogs.internalShowDialog(dialog);