mirror of
https://github.com/Kornstalx/5etools-mirror-2.github.io.git
synced 2025-10-28 20:45:35 -05:00
v1.198.1
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
export class InitiativeTrackerUi {
|
||||
static $getBtnPlayerVisible (isVisible, fnOnClick, isTriState, ...additionalClasses) {
|
||||
let isVisNum = Number(isVisible || false);
|
||||
|
||||
const getTitle = () => isVisNum === 0 ? `Hidden in player view` : isVisNum === 1 ? `Shown in player view` : `Shown in player view on player characters, hidden in player view on monsters`;
|
||||
const getClasses = () => `${isVisNum === 0 ? `btn-default` : isVisNum === 1 ? `btn-primary` : `btn-primary btn-primary--half`} btn btn-xs ${additionalClasses.join(" ")}`;
|
||||
const getIconClasses = () => isVisNum === 0 ? `glyphicon glyphicon-eye-close` : `glyphicon glyphicon-eye-open`;
|
||||
|
||||
const $dispIcon = $(`<span class="glyphicon ${getIconClasses()}"></span>`);
|
||||
const $btnVisible = $$`<button class="${getClasses()}" title="${getTitle()}" tabindex="-1">${$dispIcon}</button>`
|
||||
.on("click", () => {
|
||||
if (isVisNum === 0) isVisNum++;
|
||||
else if (isVisNum === 1) isVisNum = isTriState ? 2 : 0;
|
||||
else if (isVisNum === 2) isVisNum = 0;
|
||||
|
||||
$btnVisible.title(getTitle());
|
||||
$btnVisible.attr("class", getClasses());
|
||||
$dispIcon.attr("class", getIconClasses());
|
||||
|
||||
fnOnClick();
|
||||
});
|
||||
|
||||
return $btnVisible;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user