diff --git a/src/main/java/org/saturnclient/ui2/components/SaturnModule.java b/src/main/java/org/saturnclient/ui2/components/SaturnModule.java index a9c0059..60d27e5 100644 --- a/src/main/java/org/saturnclient/ui2/components/SaturnModule.java +++ b/src/main/java/org/saturnclient/ui2/components/SaturnModule.java @@ -2,8 +2,7 @@ package org.saturnclient.ui2.components; import org.saturnclient.modules.Module; import org.saturnclient.saturnclient.SaturnClient; -import org.saturnclient.saturnclient.config.Property; -import org.saturnclient.saturnclient.config.ThemeManager; +import org.saturnclient.saturnclient.config.Theme; import org.saturnclient.ui2.resources.Fonts; import org.saturnclient.ui2.resources.Textures; import org.saturnclient.ui2.Element; @@ -15,21 +14,12 @@ import org.saturnclient.ui2.screens.ConfigEditor; import net.minecraft.client.render.RenderLayer; public class SaturnModule extends Element { - private static ThemeManager theme = new ThemeManager("Module", "enabled", "hovering"); - private static Property bgColor = theme.property("bg", Property.color(0xFF1d202d)); - private static Property fgColor = theme.property("fg", Property.color(0xFFA1A2B8)); - private static Property iconFg = theme.property("icon-fg", Property.color(0xFFA1A2B8)); - private static Property iconBg = theme.property("icon-bg", Property.color(0xFF2e3248)); - private static Property tagBg = theme.property("tag-bg", Property.color(0xFF2e3248)); - private static Property iconRadius = theme.property("icon-radius", Property.color(10)); - private static Property font = theme.property("font", Property.font(1)); - private static Property radius = theme.property("radius", Property.color(10)); - - static { - theme.propertyStateDefault("enabled", "bg", 0xFF1d202d); - theme.propertyStateDefault("enabled", "icon-bg", 0xFF845eee); - theme.propertyStateDefault("hovering", "fg", 0xFF845eee); - } + // TODO make these states + // static { + // theme.propertyStateDefault("enabled", "bg", 0xFF1d202d); + // theme.propertyStateDefault("enabled", "icon-bg", 0xFF845eee); + // theme.propertyStateDefault("hovering", "fg", 0xFF845eee); + // } private Module mod; @@ -47,43 +37,38 @@ public class SaturnModule extends Element { renderScope.setRenderLayer(RenderLayer::getGuiTextured); + // TODO use this if (mod.isEnabled()) { - theme.setState("enabled"); } - if (ctx.isHovering(width - s - p - 5, height - s - p - 5, s + 10, s + 10)) { - settingsHover = true; - } else if (ctx.isHovering()) { - theme.applyState("hovering"); - } + renderScope.drawRoundedRectangle(0, 0, width, height, Theme.WIDGET_RADIUS.value, Theme.PRIMARY.value); - renderScope.drawRoundedRectangle(0, 0, width, height, radius.value, bgColor.value); + int h = height - (p * 2); - int h = height-(p * 2); + renderScope.drawRoundedRectangle(p, p, h, h, Theme.WIDGET_RADIUS.value, Theme.PRIMARY.value); - renderScope.drawRoundedRectangle(p, p, h, h, iconRadius.value, iconBg.value); + renderScope.drawTexture(mod.getIconTexture(), p + (p / 2), p + (p / 2), 0, 0, h - p, h - p, + Theme.PRIMARY_FG.value); - renderScope.drawTexture(mod.getIconTexture(), p + (p / 2), p + (p / 2), 0, 0, h - p, h - p, iconFg.value); + renderScope.drawText(0.6f, mod.getName(), p + h + 4, p + 1, Theme.FONT.value, Theme.PRIMARY_FG.value); - renderScope.drawText(0.6f, mod.getName(), p+h+4, p + 1, font.value, fgColor.value); - - renderScope.drawText(0.35f, mod.getVersion(), width - p - (int) (Fonts.getWidth(mod.getVersion(), font.value) * 0.35f), p + 1, font.value, fgColor.value); + renderScope.drawText(0.35f, mod.getVersion(), + width - p - (int) (Fonts.getWidth(mod.getVersion(), Theme.FONT.value) * 0.35f), p + 1, Theme.FONT.value, + Theme.PRIMARY_FG.value); int xt = p + h + 4; for (String tag : mod.getTags()) { - int xtb = (int) (Fonts.getWidth(tag, font.value) * 0.4f); - renderScope.drawRoundedRectangle(xt, p + (h/2), xtb + 6, 12, 5, tagBg.value); - renderScope.drawText(0.4f, tag, xt+2, p + (h/2) + 3, font.value, fgColor.value); + int xtb = (int) (Fonts.getWidth(tag, Theme.FONT.value) * 0.4f); + renderScope.drawRoundedRectangle(xt, p + (h / 2), xtb + 6, 12, 5, Theme.ACCENT.value); + renderScope.drawText(0.4f, tag, xt + 2, p + (h / 2) + 3, Theme.FONT.value, Theme.ACCENT_FG.value); xt += xtb + 9; } + // TODO if (settingsHover) { - theme.setState("hovering"); } - renderScope.drawTexture(Textures.SETTINGS, width - s - p, height - s - p, 0, 0, s, s, fgColor.value); - - theme.setState(null); + renderScope.drawTexture(Textures.SETTINGS, width - s - p, height - s - p, 0, 0, s, s, Theme.PRIMARY_FG.value); } @Override