resolveState method
Implementation
FButtonThemeColors resolveState(FButton<T> btn) {
ColorD bgColor = bg;
if (btn.isWidgetDisabled) bgColor = bgDisabled;
else if (btn.clickState.framesHeld > 0) bgColor = bgClicked;
else if (btn.clickState.hovered) bgColor = bgHovered;
ColorD fgColor = fg;
if (btn.isWidgetDisabled) fgColor = fgDisabled;
else if (btn.clickState.framesHeld > 0) fgColor = fgClicked;
else if (btn.clickState.hovered) fgColor = fgHovered;
ColorD borderColor = border;
if (btn.isWidgetDisabled) borderColor = borderDisabled;
else if (btn.clickState.framesHeld > 0) borderColor = borderClicked;
else if (btn.clickState.hovered) borderColor = borderHovered;
return .new(
bg: bgColor,
fg: fgColor,
border: borderColor,
);
}