diff --git a/packages/userscript/source/ui/ResourcesSettingsUi.ts b/packages/userscript/source/ui/ResourcesSettingsUi.ts index 17023f358..19c2950b6 100644 --- a/packages/userscript/source/ui/ResourcesSettingsUi.ts +++ b/packages/userscript/source/ui/ResourcesSettingsUi.ts @@ -3,6 +3,7 @@ import { ucfirst } from "../tools/Format"; import { UserScript } from "../UserScript"; import { ConsumeButton } from "./components/buttons-text/ConsumeButton"; import { StockButton } from "./components/buttons-text/StockButton"; +import { LabelListItem } from "./components/LabelListItem"; import { SettingListItem } from "./components/SettingListItem"; import { SettingsList } from "./components/SettingsList"; import { SettingsPanel, SettingsPanelOptions } from "./components/SettingsPanel"; @@ -16,10 +17,17 @@ export class ResourcesSettingsUi extends SettingsPanel { options?: SettingsPanelOptions> ) { const label = host.engine.i18n("ui.resources"); - super(host, label, settings, options); + super(host, label, settings, { + ...options, + settingItem: new LabelListItem( + host, + label, + "M38.4 42 25.85 29.45l2.85-2.85 12.55 12.55ZM9.35 42 6.5 39.15 21 24.65l-5.35-5.35-1.15 1.15-2.2-2.2v4.25l-1.2 1.2L5 17.6l1.2-1.2h4.3L8.1 14l6.55-6.55q.85-.85 1.85-1.15 1-.3 2.2-.3 1.2 0 2.2.425 1 .425 1.85 1.275l-5.35 5.35 2.4 2.4-1.2 1.2 5.2 5.2 6.1-6.1q-.4-.65-.625-1.5-.225-.85-.225-1.8 0-2.65 1.925-4.575Q32.9 5.95 35.55 5.95q.75 0 1.275.15.525.15.875.4l-4.25 4.25 3.75 3.75 4.25-4.25q.25.4.425.975t.175 1.325q0 2.65-1.925 4.575Q38.2 19.05 35.55 19.05q-.9 0-1.55-.125t-1.2-.375Z" + ), + }); // Disable checkbox. Resource control is always active. - this.readOnly = true; + //this.readOnly = true; // Add all the current resources this._resources = []; diff --git a/packages/userscript/source/ui/UserInterface.ts b/packages/userscript/source/ui/UserInterface.ts index 18612712b..3d02a6e80 100644 --- a/packages/userscript/source/ui/UserInterface.ts +++ b/packages/userscript/source/ui/UserInterface.ts @@ -219,8 +219,8 @@ export class UserInterface extends UiComponent { this._addRule( `#ks ul li.ks-setting .ks-icon-label { display: inline-block; - margin-right: 10px; - margin-left: 3px; + margin-right: 4px; + margin-left: 2px; vertical-align: middle; }` ); diff --git a/packages/userscript/source/ui/components/LabelListItem.ts b/packages/userscript/source/ui/components/LabelListItem.ts index 187ad58a5..def4d4f54 100644 --- a/packages/userscript/source/ui/components/LabelListItem.ts +++ b/packages/userscript/source/ui/components/LabelListItem.ts @@ -1,9 +1,7 @@ import { UserScript } from "../../UserScript"; -import { UiComponent } from "./UiComponent"; - -export class LabelListItem extends UiComponent { - readonly element: JQuery; +import { ListItem } from "./ListItem"; +export class LabelListItem extends ListItem { /** * Construct a new label list item. * @@ -11,35 +9,20 @@ export class LabelListItem extends UiComponent { * @param label The label on the setting element. * @param icon When set to an SVG path, will be used as an icon on the label. * @param delimiter Should there be additional padding below this element? - * @param additionalClasses A list of CSS classes to attach to the element. */ constructor( host: UserScript, label: string, icon: string | undefined = undefined, - delimiter = false, - additionalClasses = [] + delimiter = false ) { - super(host); - - const element = $(`
  • `); - for (const cssClass of ["ks-setting", delimiter ? "ks-delimiter" : "", ...additionalClasses]) { - element.addClass(cssClass); - } + super(host, label, delimiter); if (icon) { const iconElement = $("
    ", { html: ``, }).addClass("ks-icon-label"); - element.append(iconElement); + iconElement.insertBefore(this.elementLabel); } - - const elementLabel = $("