import { SettingStatusEnum, status } from "../utils/SettingStatus.mjs"; import { __ID__ } from "../consts.mjs"; import { Logger } from "../utils/Logger.mjs"; import { registerCategorySetting } from "../utils/SubMenuSettings.mjs"; const key = `hotbarButtonSize`; export function hotbarButtonSize() { status[key] = SettingStatusEnum.Unknown; const prevented = Hooks.call(`${__ID__}.preventSetting`, key); if (!prevented) { Logger.log(`Preventing setting "${key}" from being registered`); status[key] = SettingStatusEnum.Blocked; return; }; // #region Registration Logger.log(`Registering setting: ${key}`); document.body.classList.add(`${__ID__}-${key}`); registerCategorySetting(`hotbar`, __ID__, key, { name: `OFT.setting.${key}.name`, hint: `OFT.setting.${key}.hint`, scope: `user`, type: new foundry.data.fields.NumberField({ min: 45, max: 75, step: 5, }), default: 60, // this is the value Foundry uses config: true, requiresReload: false, onChange: (newValue) => { document.body.style.setProperty(`--hotbar-size`, `${newValue}px`); }, }); // #endregion Registration // #region Implementation const hotbarSize = game.settings.get(__ID__, key); document.body.style.setProperty(`--hotbar-size`, `${hotbarSize}px`); // #endregion Implementation status[key] = SettingStatusEnum.Registered; };