forked from mirrors/0ad
Fix eslint rule 'prefer-const' in modmod
eslint --no-config-lookup --fix --rule '"prefer-const": 1' \
binaries/data/mods/mod
Ref: #7812
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
This commit is contained in:
@@ -16,7 +16,7 @@ function setStringTags(text, tags)
|
||||
{
|
||||
let result = text;
|
||||
|
||||
for (let tag in tags)
|
||||
for (const tag in tags)
|
||||
result = '[' + tag + '="' + tags[tag] + '"]' + result + '[/' + tag + ']';
|
||||
|
||||
return result;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
function filesizeToObj(filesize)
|
||||
{
|
||||
// We are unlikely to download files measured in units greater than GiB.
|
||||
let units = [
|
||||
const units = [
|
||||
translateWithContext("filesize unit", "B"),
|
||||
translateWithContext("filesize unit", "KiB"),
|
||||
translateWithContext("filesize unit", "MiB"),
|
||||
@@ -195,7 +195,7 @@ function translateObjectKeys(object, keys)
|
||||
{
|
||||
if (keys instanceof Array)
|
||||
{
|
||||
for (let property in object)
|
||||
for (const property in object)
|
||||
{
|
||||
if (keys.indexOf(property) > -1)
|
||||
{
|
||||
@@ -213,7 +213,7 @@ function translateObjectKeys(object, keys)
|
||||
// An empty value means no context.
|
||||
else
|
||||
{
|
||||
for (let property in object)
|
||||
for (const property in object)
|
||||
{
|
||||
if (property in keys)
|
||||
{
|
||||
|
||||
@@ -31,7 +31,7 @@ async function openTerms(page)
|
||||
|
||||
function checkTerms()
|
||||
{
|
||||
for (let page in g_Terms)
|
||||
for (const page in g_Terms)
|
||||
if (!g_Terms[page].accepted)
|
||||
return g_Terms[page].instruction || page;
|
||||
|
||||
@@ -47,6 +47,6 @@ function getTermsHash(page)
|
||||
|
||||
function loadTermsAcceptance()
|
||||
{
|
||||
for (let page in g_Terms)
|
||||
for (const page in g_Terms)
|
||||
g_Terms[page].accepted = Engine.ConfigDB_GetValue("user", g_Terms[page].config) == getTermsHash(page);
|
||||
}
|
||||
|
||||
@@ -153,9 +153,9 @@ function init(data)
|
||||
|
||||
function onTick(closePageCallback)
|
||||
{
|
||||
let progressData = Engine.ModIoGetDownloadProgress();
|
||||
const progressData = Engine.ModIoGetDownloadProgress();
|
||||
|
||||
let handler = g_ModIOState[progressData.status];
|
||||
const handler = g_ModIOState[progressData.status];
|
||||
if (!handler)
|
||||
{
|
||||
warn("Unrecognized progress status: " + progressData.status);
|
||||
@@ -169,16 +169,16 @@ function onTick(closePageCallback)
|
||||
|
||||
function displayMods()
|
||||
{
|
||||
let modsAvailableList = Engine.GetGUIObjectByName("modsAvailableList");
|
||||
let selectedMod = modsAvailableList.list[modsAvailableList.selected];
|
||||
const modsAvailableList = Engine.GetGUIObjectByName("modsAvailableList");
|
||||
const selectedMod = modsAvailableList.list[modsAvailableList.selected];
|
||||
modsAvailableList.selected = -1;
|
||||
|
||||
let displayedMods = clone(g_ModsAvailableOnline);
|
||||
for (let i = 0; i < displayedMods.length; ++i)
|
||||
displayedMods[i].i = i;
|
||||
|
||||
let filterColumns = ["name", "name_id", "summary"];
|
||||
let filterText = Engine.GetGUIObjectByName("modFilter").caption.toLowerCase();
|
||||
const filterColumns = ["name", "name_id", "summary"];
|
||||
const filterText = Engine.GetGUIObjectByName("modFilter").caption.toLowerCase();
|
||||
if (Engine.GetGUIObjectByName("compatibilityFilter").checked)
|
||||
displayedMods = displayedMods.filter(mod => !mod.invalid);
|
||||
displayedMods = displayedMods.filter(mod => filterColumns.some(column => mod[column].toLowerCase().indexOf(filterText) != -1));
|
||||
@@ -200,7 +200,7 @@ function displayMods()
|
||||
|
||||
function clearModList()
|
||||
{
|
||||
let modsAvailableList = Engine.GetGUIObjectByName("modsAvailableList");
|
||||
const modsAvailableList = Engine.GetGUIObjectByName("modsAvailableList");
|
||||
modsAvailableList.selected = -1;
|
||||
modsAvailableList.list_name = [];
|
||||
modsAvailableList.list_name_id = [];
|
||||
@@ -212,7 +212,7 @@ function clearModList()
|
||||
|
||||
function selectedModIndex()
|
||||
{
|
||||
let modsAvailableList = Engine.GetGUIObjectByName("modsAvailableList");
|
||||
const modsAvailableList = Engine.GetGUIObjectByName("modsAvailableList");
|
||||
|
||||
if (modsAvailableList.selected == -1)
|
||||
return undefined;
|
||||
@@ -227,9 +227,9 @@ function isSelectedModInvalid(selected)
|
||||
|
||||
function showModDescription()
|
||||
{
|
||||
let selected = selectedModIndex();
|
||||
let isSelected = selected !== undefined;
|
||||
let isInvalid = isSelectedModInvalid(selected);
|
||||
const selected = selectedModIndex();
|
||||
const isSelected = selected !== undefined;
|
||||
const isInvalid = isSelectedModInvalid(selected);
|
||||
Engine.GetGUIObjectByName("downloadButton").enabled = isSelected && !isInvalid;
|
||||
Engine.GetGUIObjectByName("modDescription").caption = isSelected && !isInvalid ? g_ModsAvailableOnline[selected].summary : "";
|
||||
Engine.GetGUIObjectByName("modError").caption = isSelected && isInvalid ? sprintf(translate("Invalid mod: %(error)s"), { "error": g_ModsAvailableOnline[selected].error }) : "";
|
||||
@@ -270,7 +270,7 @@ async function updateModList(closePageCallback)
|
||||
|
||||
async function downloadMod()
|
||||
{
|
||||
let selected = selectedModIndex();
|
||||
const selected = selectedModIndex();
|
||||
|
||||
if (isSelectedModInvalid(selected))
|
||||
return;
|
||||
@@ -314,10 +314,10 @@ async function progressDialog(dialogCaption, dialogTitle, showProgressBar, butto
|
||||
{
|
||||
Engine.GetGUIObjectByName("downloadDialog_title").caption = dialogTitle;
|
||||
|
||||
let downloadDialog_caption = Engine.GetGUIObjectByName("downloadDialog_caption");
|
||||
const downloadDialog_caption = Engine.GetGUIObjectByName("downloadDialog_caption");
|
||||
downloadDialog_caption.caption = dialogCaption;
|
||||
|
||||
let size = downloadDialog_caption.size;
|
||||
const size = downloadDialog_caption.size;
|
||||
size.rbottom = showProgressBar ? 40 : 80;
|
||||
downloadDialog_caption.size = size;
|
||||
|
||||
@@ -342,11 +342,11 @@ async function progressDialog(dialogCaption, dialogTitle, showProgressBar, butto
|
||||
*/
|
||||
function updateProgressBar(progress, totalSize)
|
||||
{
|
||||
let progressPercent = Math.ceil(progress * 100);
|
||||
const progressPercent = Math.ceil(progress * 100);
|
||||
Engine.GetGUIObjectByName("downloadDialog_progressBar").progress = progressPercent;
|
||||
|
||||
let transferredSize = progress * totalSize;
|
||||
let transferredSizeObj = filesizeToObj(transferredSize);
|
||||
const transferredSize = progress * totalSize;
|
||||
const transferredSizeObj = filesizeToObj(transferredSize);
|
||||
// Translation: Mod file download indicator. Current size over expected final size, with percentage complete.
|
||||
Engine.GetGUIObjectByName("downloadDialog_progressText").caption = sprintf(translate("%(current)s / %(total)s (%(percent)s%%)"), {
|
||||
"current": filesizeToObj(totalSize).unit == transferredSizeObj.unit ? transferredSizeObj.filesize : filesizeToString(transferredSize),
|
||||
@@ -354,9 +354,9 @@ function updateProgressBar(progress, totalSize)
|
||||
"percent": progressPercent
|
||||
});
|
||||
|
||||
let elapsedTime = Date.now() - g_RequestStartTime;
|
||||
let remainingTime = progressPercent ? (100 - progressPercent) * elapsedTime / progressPercent : 0;
|
||||
let avgSpeed = filesizeToObj(transferredSize / (elapsedTime / 1000));
|
||||
const elapsedTime = Date.now() - g_RequestStartTime;
|
||||
const remainingTime = progressPercent ? (100 - progressPercent) * elapsedTime / progressPercent : 0;
|
||||
const avgSpeed = filesizeToObj(transferredSize / (elapsedTime / 1000));
|
||||
// Translation: Mod file download status message.
|
||||
Engine.GetGUIObjectByName("downloadDialog_status").caption = sprintf(translate("Time Elapsed: %(elapsed)s\nEstimated Time Remaining: %(remaining)s\nAverage Speed: %(avgSpeed)s"), {
|
||||
"elapsed": timeToString(elapsedTime),
|
||||
|
||||
@@ -133,7 +133,7 @@ function loadEnabledMods()
|
||||
|
||||
function validateMods()
|
||||
{
|
||||
for (let folder in g_Mods)
|
||||
for (const folder in g_Mods)
|
||||
validateMod(folder, g_Mods[folder], true);
|
||||
}
|
||||
|
||||
@@ -148,7 +148,7 @@ function initGUIFilters()
|
||||
function initGUIButtons(data)
|
||||
{
|
||||
// Either get back to the previous page or quit if there is no previous page
|
||||
let hasPreviousPage = !data || data.cancelbutton || false;
|
||||
const hasPreviousPage = !data || data.cancelbutton || false;
|
||||
Engine.GetGUIObjectByName("cancelButton").hidden = !hasPreviousPage;
|
||||
Engine.GetGUIObjectByName("quitButton").hidden = hasPreviousPage;
|
||||
// Turn 'save' off, it will be enabled on any change.
|
||||
@@ -179,11 +179,11 @@ function displayModLists()
|
||||
|
||||
function displayModList(listObjectName, folders, enabled)
|
||||
{
|
||||
let listObject = Engine.GetGUIObjectByName(listObjectName);
|
||||
const listObject = Engine.GetGUIObjectByName(listObjectName);
|
||||
|
||||
if (listObjectName == "modsDisabledList")
|
||||
{
|
||||
let sortFolder = folder => String(getMod(folder)[listObject.selected_column] || folder);
|
||||
const sortFolder = folder => String(getMod(folder)[listObject.selected_column] || folder);
|
||||
folders.sort((folder1, folder2) =>
|
||||
listObject.selected_column_order *
|
||||
sortFolder(folder1).localeCompare(sortFolder(folder2)));
|
||||
@@ -193,7 +193,7 @@ function displayModList(listObjectName, folders, enabled)
|
||||
if (!enabled && Engine.GetGUIObjectByName("modCompatibleFilter").checked)
|
||||
folders = folders.filter(folder => g_ModsCompatibility[folder]);
|
||||
|
||||
let selected = listObject.selected !== -1 ? listObject.list_name[listObject.selected] : null;
|
||||
const selected = listObject.selected !== -1 ? listObject.list_name[listObject.selected] : null;
|
||||
|
||||
listObject.list_name = folders.map(folder => colorMod(folder, getMod(folder).name || "", enabled));
|
||||
listObject.list_folder = folders.map(folder => colorMod(folder, folder, enabled));
|
||||
@@ -219,7 +219,7 @@ function getModColor(folder, enabled)
|
||||
|
||||
function colorMod(folder, text, enabled)
|
||||
{
|
||||
let color = getModColor(folder, enabled);
|
||||
const color = getModColor(folder, enabled);
|
||||
return color ? coloredText(text, color) : text;
|
||||
}
|
||||
|
||||
@@ -230,7 +230,7 @@ function reloadDisabledMods()
|
||||
|
||||
function enableMod()
|
||||
{
|
||||
let modsDisabledList = Engine.GetGUIObjectByName("modsDisabledList");
|
||||
const modsDisabledList = Engine.GetGUIObjectByName("modsDisabledList");
|
||||
let pos = modsDisabledList.selected;
|
||||
|
||||
if (pos == -1 || !g_ModsCompatibility[g_ModsDisabledFiltered[pos]])
|
||||
@@ -252,13 +252,13 @@ function enableMod()
|
||||
|
||||
function disableMod()
|
||||
{
|
||||
let modsEnabledList = Engine.GetGUIObjectByName("modsEnabledList");
|
||||
let pos = modsEnabledList.selected;
|
||||
const modsEnabledList = Engine.GetGUIObjectByName("modsEnabledList");
|
||||
const pos = modsEnabledList.selected;
|
||||
if (pos == -1)
|
||||
return;
|
||||
|
||||
// Find true position of disabled mod and remove it
|
||||
let disabledMod = g_ModsEnabledFiltered[pos];
|
||||
const disabledMod = g_ModsEnabledFiltered[pos];
|
||||
for (let i = 0; i < g_ModsEnabled.length; ++i)
|
||||
if (g_ModsEnabled[i] == disabledMod)
|
||||
{
|
||||
@@ -292,10 +292,10 @@ function disableMod()
|
||||
|
||||
function filterMod(folder)
|
||||
{
|
||||
let mod = getMod(folder);
|
||||
const mod = getMod(folder);
|
||||
|
||||
let negateFilter = Engine.GetGUIObjectByName("negateFilter").checked;
|
||||
let searchText = Engine.GetGUIObjectByName("modGenericFilter").caption;
|
||||
const negateFilter = Engine.GetGUIObjectByName("negateFilter").checked;
|
||||
const searchText = Engine.GetGUIObjectByName("modGenericFilter").caption;
|
||||
|
||||
if (searchText &&
|
||||
folder.indexOf(searchText) == -1 &&
|
||||
@@ -326,17 +326,17 @@ function moveCurrItem(objectName, up)
|
||||
if (Engine.GetGUIObjectByName("modGenericFilter").caption)
|
||||
return;
|
||||
|
||||
let obj = Engine.GetGUIObjectByName(objectName);
|
||||
let idx = obj.selected;
|
||||
const obj = Engine.GetGUIObjectByName(objectName);
|
||||
const idx = obj.selected;
|
||||
if (idx == -1)
|
||||
return;
|
||||
|
||||
let num = obj.list.length;
|
||||
let idx2 = idx + (up ? -1 : 1);
|
||||
const num = obj.list.length;
|
||||
const idx2 = idx + (up ? -1 : 1);
|
||||
if (idx2 < 0 || idx2 >= num)
|
||||
return;
|
||||
|
||||
let tmp = g_ModsEnabled[idx];
|
||||
const tmp = g_ModsEnabled[idx];
|
||||
g_ModsEnabled[idx] = g_ModsEnabled[idx2];
|
||||
g_ModsEnabled[idx2] = tmp;
|
||||
|
||||
@@ -353,7 +353,7 @@ function areDependenciesMet(folder, disabledAction = false)
|
||||
if (!g_Mods[folder])
|
||||
return false;
|
||||
|
||||
for (let dependency of getMod(folder).dependencies)
|
||||
for (const dependency of getMod(folder).dependencies)
|
||||
{
|
||||
if (!isDependencyMet(dependency))
|
||||
return false;
|
||||
@@ -364,7 +364,7 @@ function areDependenciesMet(folder, disabledAction = false)
|
||||
|
||||
function recomputeCompatibility(disabledAction = false)
|
||||
{
|
||||
for (let mod in g_Mods)
|
||||
for (const mod in g_Mods)
|
||||
g_ModsCompatibility[mod] = areDependenciesMet(mod, disabledAction);
|
||||
}
|
||||
|
||||
@@ -373,8 +373,8 @@ function recomputeCompatibility(disabledAction = false)
|
||||
*/
|
||||
function isDependencyMet(dependency)
|
||||
{
|
||||
let operator = dependency.match(g_RegExpComparisonOperator);
|
||||
let [name, version] = operator ? dependency.split(operator[0]) : [dependency, undefined];
|
||||
const operator = dependency.match(g_RegExpComparisonOperator);
|
||||
const [name, version] = operator ? dependency.split(operator[0]) : [dependency, undefined];
|
||||
|
||||
return g_ModsEnabled.some(folder =>
|
||||
getMod(folder).name == name &&
|
||||
@@ -388,16 +388,16 @@ function isDependencyMet(dependency)
|
||||
*/
|
||||
function versionSatisfied(version1, operator, version2)
|
||||
{
|
||||
let versionList1 = version1.split(/[-_]/)[0].split(/\./g);
|
||||
let versionList2 = version2.split(/[-_]/)[0].split(/\./g);
|
||||
const versionList1 = version1.split(/[-_]/)[0].split(/\./g);
|
||||
const versionList2 = version2.split(/[-_]/)[0].split(/\./g);
|
||||
|
||||
let eq = operator.indexOf("=") != -1;
|
||||
let lt = operator.indexOf("<") != -1;
|
||||
let gt = operator.indexOf(">") != -1;
|
||||
const eq = operator.indexOf("=") != -1;
|
||||
const lt = operator.indexOf("<") != -1;
|
||||
const gt = operator.indexOf(">") != -1;
|
||||
|
||||
for (let i = 0; i < Math.min(versionList1.length, versionList2.length); ++i)
|
||||
{
|
||||
let diff = +versionList1[i] - +versionList2[i];
|
||||
const diff = +versionList1[i] - +versionList2[i];
|
||||
|
||||
if (gt && diff > 0 || lt && diff < 0)
|
||||
return true;
|
||||
@@ -407,7 +407,7 @@ function versionSatisfied(version1, operator, version2)
|
||||
}
|
||||
|
||||
// common prefix matches
|
||||
let ldiff = versionList1.length - versionList2.length;
|
||||
const ldiff = versionList1.length - versionList2.length;
|
||||
if (!ldiff)
|
||||
return eq;
|
||||
|
||||
@@ -420,8 +420,8 @@ function versionSatisfied(version1, operator, version2)
|
||||
|
||||
function sortEnabledMods()
|
||||
{
|
||||
let dependencies = {};
|
||||
for (let folder of g_ModsEnabled)
|
||||
const dependencies = {};
|
||||
for (const folder of g_ModsEnabled)
|
||||
dependencies[folder] = getMod(folder).dependencies.map(d => d.split(g_RegExpComparisonOperator)[0]);
|
||||
|
||||
g_ModsEnabled.sort((folder1, folder2) =>
|
||||
@@ -433,13 +433,13 @@ function sortEnabledMods()
|
||||
|
||||
function selectedMod(listObjectName)
|
||||
{
|
||||
let listObject = Engine.GetGUIObjectByName(listObjectName);
|
||||
let isPickedDisabledList = listObjectName == "modsDisabledList";
|
||||
let otherListObject = Engine.GetGUIObjectByName(isPickedDisabledList ?
|
||||
const listObject = Engine.GetGUIObjectByName(listObjectName);
|
||||
const isPickedDisabledList = listObjectName == "modsDisabledList";
|
||||
const otherListObject = Engine.GetGUIObjectByName(isPickedDisabledList ?
|
||||
"modsEnabledList" : "modsDisabledList");
|
||||
|
||||
let toggleModButton = Engine.GetGUIObjectByName("toggleModButton");
|
||||
let isModSelected = listObject.selected != -1;
|
||||
const toggleModButton = Engine.GetGUIObjectByName("toggleModButton");
|
||||
const isModSelected = listObject.selected != -1;
|
||||
if (isModSelected)
|
||||
{
|
||||
otherListObject.selected = -1;
|
||||
@@ -472,11 +472,11 @@ function selectedMod(listObjectName)
|
||||
*/
|
||||
function getSelectedModUrl()
|
||||
{
|
||||
let modsEnabledList = Engine.GetGUIObjectByName("modsEnabledList");
|
||||
let modsDisabledList = Engine.GetGUIObjectByName("modsDisabledList");
|
||||
const modsEnabledList = Engine.GetGUIObjectByName("modsEnabledList");
|
||||
const modsDisabledList = Engine.GetGUIObjectByName("modsDisabledList");
|
||||
|
||||
let list = modsEnabledList.selected == -1 ? modsDisabledList : modsEnabledList;
|
||||
let folder = list.list[list.selected];
|
||||
const list = modsEnabledList.selected == -1 ? modsDisabledList : modsEnabledList;
|
||||
const folder = list.list[list.selected];
|
||||
return folder && getMod(folder) && getMod(folder).url || undefined;
|
||||
}
|
||||
|
||||
|
||||
@@ -73,9 +73,9 @@ function validateMod(folder, modData, notify)
|
||||
{
|
||||
let valid = true;
|
||||
|
||||
for (let propertyName in g_ModProperties)
|
||||
for (const propertyName in g_ModProperties)
|
||||
{
|
||||
let property = g_ModProperties[propertyName];
|
||||
const property = g_ModProperties[propertyName];
|
||||
|
||||
if (modData[propertyName] === undefined)
|
||||
{
|
||||
@@ -107,7 +107,7 @@ function validateMod(folder, modData, notify)
|
||||
|
||||
function validateName(folder, modData, notify)
|
||||
{
|
||||
let valid = modData.name.match(globalRegExp(g_RegExpName));
|
||||
const valid = modData.name.match(globalRegExp(g_RegExpName));
|
||||
|
||||
if (!valid && notify)
|
||||
warn("mod name of " + folder + " may only contain alphanumeric characters, but found '" + modData.name + "'!");
|
||||
@@ -117,7 +117,7 @@ function validateName(folder, modData, notify)
|
||||
|
||||
function validateVersion(folder, modData, notify)
|
||||
{
|
||||
let valid = modData.version.match(globalRegExp(g_RegExpVersion));
|
||||
const valid = modData.version.match(globalRegExp(g_RegExpVersion));
|
||||
|
||||
if (!valid && notify)
|
||||
warn("mod version of " + folder + " may only contain numbers and at most 2 periods, but found '" + modData.version + "'!");
|
||||
@@ -129,7 +129,7 @@ function validateDependencies(folder, modData, notify)
|
||||
{
|
||||
let valid = true;
|
||||
|
||||
for (let dependency of modData.dependencies)
|
||||
for (const dependency of modData.dependencies)
|
||||
{
|
||||
valid = valid && (
|
||||
dependency.match(globalRegExp(g_RegExpName)) ||
|
||||
@@ -144,7 +144,7 @@ function validateDependencies(folder, modData, notify)
|
||||
|
||||
function validateLabel(folder, modData, notify)
|
||||
{
|
||||
let valid = modData.label.match(g_RegExpLabel);
|
||||
const valid = modData.label.match(g_RegExpLabel);
|
||||
|
||||
if (!valid && notify)
|
||||
warn("mod label of " + folder + " may not be empty!");
|
||||
|
||||
@@ -84,10 +84,10 @@ const g_TestModsInvalid = {
|
||||
}
|
||||
};
|
||||
|
||||
for (let folder in g_ValidTestMods)
|
||||
for (const folder in g_ValidTestMods)
|
||||
if (!validateMod(folder, g_ValidTestMods[folder], false))
|
||||
throw new Error("Valid mod '" + folder + "' should have passed the test.");
|
||||
|
||||
for (let folder in g_TestModsInvalid)
|
||||
for (const folder in g_TestModsInvalid)
|
||||
if (validateMod(folder, g_TestModsInvalid[folder], false))
|
||||
throw new Error("Invalid mod '" + folder + "' should not have passed the test.");
|
||||
|
||||
@@ -8,22 +8,22 @@ function init(data)
|
||||
Engine.GetGUIObjectByName("mbTitleBar").caption = data.title;
|
||||
|
||||
// Set subject
|
||||
let mbTextObj = Engine.GetGUIObjectByName("mbText");
|
||||
const mbTextObj = Engine.GetGUIObjectByName("mbText");
|
||||
mbTextObj.caption = data.message;
|
||||
if (data.font)
|
||||
mbTextObj.font = data.font;
|
||||
|
||||
// Default behaviour
|
||||
let mbCancelHotkey = Engine.GetGUIObjectByName("mbCancelHotkey");
|
||||
const mbCancelHotkey = Engine.GetGUIObjectByName("mbCancelHotkey");
|
||||
|
||||
// Calculate size
|
||||
let mbLRDiff = data.width / 2;
|
||||
let mbUDDiff = data.height / 2;
|
||||
const mbLRDiff = data.width / 2;
|
||||
const mbUDDiff = data.height / 2;
|
||||
Engine.GetGUIObjectByName("mbMain").size = "50%-" + mbLRDiff + " 50%-" + mbUDDiff + " 50%+" + mbLRDiff + " 50%+" + mbUDDiff;
|
||||
|
||||
let captions = data.buttonCaptions || [translate("OK")];
|
||||
const captions = data.buttonCaptions || [translate("OK")];
|
||||
|
||||
let mbButton = [];
|
||||
const mbButton = [];
|
||||
const closePromise = setButtonCaptionsAndVisibility(mbButton, captions, mbCancelHotkey, "mbButton");
|
||||
distributeButtonsHorizontally(mbButton, captions);
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ function initURLButtons(termsURL, urlButtons)
|
||||
});
|
||||
|
||||
urlButtons.forEach((urlButton, i) => {
|
||||
let button = Engine.GetGUIObjectByName("button[" + i + "]");
|
||||
const button = Engine.GetGUIObjectByName("button[" + i + "]");
|
||||
button.caption = urlButton.caption;
|
||||
button.hidden = false;
|
||||
button.tooltip = sprintf(translate("Open %(url)s in the browser."), {
|
||||
@@ -55,23 +55,23 @@ function initURLButtons(termsURL, urlButtons)
|
||||
|
||||
function initLanguageSelection()
|
||||
{
|
||||
let languageLabel = Engine.GetGUIObjectByName("languageLabel");
|
||||
let languageLabelWidth = Engine.GetTextWidth(languageLabel.font, languageLabel.caption);
|
||||
const languageLabel = Engine.GetGUIObjectByName("languageLabel");
|
||||
const languageLabelWidth = Engine.GetTextWidth(languageLabel.font, languageLabel.caption);
|
||||
languageLabel.size = "0 0 " + languageLabelWidth + " 100%";
|
||||
|
||||
let languageDropdown = Engine.GetGUIObjectByName("languageDropdown");
|
||||
const languageDropdown = Engine.GetGUIObjectByName("languageDropdown");
|
||||
languageDropdown.size = (languageLabelWidth + 10) + " 4 100% 100%";
|
||||
|
||||
languageDropdown.list = (() => {
|
||||
let displayNames = Engine.GetSupportedLocaleDisplayNames();
|
||||
let baseNames = Engine.GetSupportedLocaleBaseNames();
|
||||
const displayNames = Engine.GetSupportedLocaleDisplayNames();
|
||||
const baseNames = Engine.GetSupportedLocaleBaseNames();
|
||||
|
||||
// en-US
|
||||
let list = [displayNames[0]];
|
||||
const list = [displayNames[0]];
|
||||
|
||||
// current locale
|
||||
let currentLocaleDict = Engine.GetFallbackToAvailableDictLocale(Engine.GetCurrentLocale());
|
||||
let index = baseNames.indexOf(currentLocaleDict);
|
||||
const currentLocaleDict = Engine.GetFallbackToAvailableDictLocale(Engine.GetCurrentLocale());
|
||||
const index = baseNames.indexOf(currentLocaleDict);
|
||||
if (index == -1)
|
||||
warn("Language '" + currentLocaleDict + "' is not available");
|
||||
else if (currentLocaleDict != baseNames[0])
|
||||
|
||||
Reference in New Issue
Block a user