Skip to content

Commit 38bd974

Browse files
committed
clean up title bar creation
1 parent a5289fc commit 38bd974

File tree

3 files changed

+37
-13
lines changed

3 files changed

+37
-13
lines changed

src/main/java/com/gregtechceu/gtceu/api/machine/steam/SteamBoilerMachine.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
import com.gregtechceu.gtceu.api.mui.base.drawable.IKey;
1111
import com.gregtechceu.gtceu.api.mui.drawable.UITexture;
1212
import com.gregtechceu.gtceu.api.mui.factory.PosGuiData;
13-
import com.gregtechceu.gtceu.api.mui.theme.ThemeAPI;
1413
import com.gregtechceu.gtceu.api.mui.value.sync.FluidSlotSyncHandler;
1514
import com.gregtechceu.gtceu.api.mui.value.sync.PanelSyncManager;
1615
import com.gregtechceu.gtceu.api.mui.widgets.ProgressWidget;
@@ -325,10 +324,7 @@ public InteractionResult onUse(BlockState state, Level world, BlockPos pos, Play
325324
@Override
326325
public ModularPanel buildUI(PosGuiData data, PanelSyncManager syncManager, UISettings settings) {
327326
ModularPanel panel = GTGuis.createPanel(this, 176, 166);
328-
String theme = this.getDefinition().getThemeId();
329-
UITexture backgroundTexture = (UITexture) ThemeAPI.INSTANCE.getTheme(theme).getPanelTheme().getTheme()
330-
.getBackground();
331-
panel.child(GTMuiWidgets.createTitleBar(this.getDefinition(), 176, (UITexture) backgroundTexture));
327+
panel.child(GTMuiWidgets.createTitleBar(this.getDefinition(), 176));
332328

333329
UITexture progressTexture = isHighPressure() ? GTGuiTextures.PROGRESS_BAR_BOILER_EMPTY_STEEL :
334330
GTGuiTextures.PROGRESS_BAR_BOILER_EMPTY_BRONZE;

src/main/java/com/gregtechceu/gtceu/common/data/mui/GTMuiWidgets.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import com.gregtechceu.gtceu.api.mui.drawable.ItemDrawable;
1515
import com.gregtechceu.gtceu.api.mui.drawable.UITexture;
1616
import com.gregtechceu.gtceu.api.mui.drawable.text.TextRenderer;
17+
import com.gregtechceu.gtceu.api.mui.theme.ThemeAPI;
1718
import com.gregtechceu.gtceu.api.mui.utils.Alignment;
1819
import com.gregtechceu.gtceu.api.mui.value.BoolValue;
1920
import com.gregtechceu.gtceu.api.mui.value.sync.*;
@@ -46,7 +47,16 @@
4647
public class GTMuiWidgets {
4748

4849
public static Flow createTitleBar(MachineDefinition definition, int panelWidth) {
49-
return createTitleBar(definition, panelWidth, GTGuiTextures.BACKGROUND);
50+
UITexture background = GTGuiTextures.BACKGROUND;
51+
if (!definition.getThemeId().equals(ThemeAPI.DEFAULT_ID)) {
52+
background = (UITexture) ThemeAPI.INSTANCE.getTheme(definition.getThemeId()).getPanelTheme().getTheme()
53+
.getBackground();
54+
}
55+
if (background == null) {
56+
background = GTGuiTextures.BACKGROUND;
57+
}
58+
59+
return createTitleBar(definition, panelWidth, background);
5060
}
5161

5262
public static Flow createTitleBar(MachineDefinition definition, int panelWidth, UITexture background) {

src/main/java/com/gregtechceu/gtceu/common/data/mui/GTSingleblockMachinePanels.java

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,12 @@ public class GTSingleblockMachinePanels {
5454
boolean hasXEI = GTRecipeTypeUIs.recipeTypeUIs.containsKey(workableMachine.getRecipeType());
5555

5656
var theme = machine.getDefinition().getThemeId();
57-
panel.child(GTMuiWidgets.createTitleBar(machine.getDefinition(), 176, GTGuiTextures.BACKGROUND))
57+
var backgroundTexture = (UITexture) ThemeAPI.INSTANCE.getTheme(theme).getPanelTheme().getTheme()
58+
.getBackground();
59+
if (backgroundTexture == null) {
60+
backgroundTexture = GTGuiTextures.BACKGROUND;
61+
}
62+
panel.child(GTMuiWidgets.createTitleBar(machine.getDefinition(), 176))
5863
.child(new Row()
5964
.childIf(hasXEI, GTRecipeTypeUIs.recipeTypeUIs.get(workableMachine.getRecipeType())
6065
.getBackedSlotsRow(syncManager, theme, simpleTieredMachine.importItems,
@@ -74,7 +79,7 @@ public class GTSingleblockMachinePanels {
7479
.bottom(16)
7580
.padding(0, 8, 4, 4)
7681
.childPadding(2)
77-
.background(GTGuiTextures.BACKGROUND.getSubArea(0.25f, 0f, 1.0f, 1.0f))
82+
.background(backgroundTexture.getSubArea(0.25f, 0f, 1.0f, 1.0f))
7883
.child(GTMuiWidgets.createPowerButton(workableMachine, syncManager))
7984
.child(GTMuiWidgets.createBatterySlot(simpleTieredMachine, syncManager))
8085
.childIf(autoOutputItem,
@@ -137,8 +142,13 @@ public class GTSingleblockMachinePanels {
137142
boolean hasXEI = GTRecipeTypeUIs.recipeTypeUIs.containsKey(workableMachine.getRecipeType());
138143

139144
var theme = machine.getDefinition().getThemeId();
145+
var backgroundTexture = (UITexture) ThemeAPI.INSTANCE.getTheme(theme).getPanelTheme().getTheme()
146+
.getBackground();
147+
if (backgroundTexture == null) {
148+
backgroundTexture = GTGuiTextures.BACKGROUND;
149+
}
140150

141-
panel.child(GTMuiWidgets.createTitleBar(machine.getDefinition(), 176, GTGuiTextures.BACKGROUND))
151+
panel.child(GTMuiWidgets.createTitleBar(machine.getDefinition(), 176))
142152
.child(new Row()
143153
.childIf(hasXEI, GTRecipeTypeUIs.recipeTypeUIs.get(workableMachine.getRecipeType())
144154
.getBackedSlotsRow(syncManager, theme, simpleTieredMachine.importItems,
@@ -158,7 +168,7 @@ public class GTSingleblockMachinePanels {
158168
.bottom(16)
159169
.padding(0, 8, 4, 4)
160170
.childPadding(2)
161-
.background(GTGuiTextures.BACKGROUND.getSubArea(0.25f, 0f, 1.0f, 1.0f))
171+
.background(backgroundTexture.getSubArea(0.25f, 0f, 1.0f, 1.0f))
162172
.child(GTMuiWidgets.createPowerButton(workableMachine, syncManager))
163173
.child(GTMuiWidgets.createBatterySlot(simpleTieredMachine, syncManager))
164174
.childIf(autoOutputItem,
@@ -219,10 +229,15 @@ public class GTSingleblockMachinePanels {
219229
panel.size(176, 76 + 21 + 18 + 9 + 18 * slotHeight);
220230

221231
var theme = machine.getDefinition().getThemeId();
232+
var backgroundTexture = (UITexture) ThemeAPI.INSTANCE.getTheme(theme).getPanelTheme().getTheme()
233+
.getBackground();
234+
if (backgroundTexture == null) {
235+
backgroundTexture = GTGuiTextures.BACKGROUND;
236+
}
222237

223238
boolean hasXEI = GTRecipeTypeUIs.recipeTypeUIs.containsKey(workableMachine.getRecipeType());
224239

225-
panel.child(GTMuiWidgets.createTitleBar(machine.getDefinition(), 176, GTGuiTextures.BACKGROUND))
240+
panel.child(GTMuiWidgets.createTitleBar(machine.getDefinition(), 176))
226241
.child(new Row()
227242
.childIf(hasXEI, GTRecipeTypeUIs.recipeTypeUIs.get(workableMachine.getRecipeType())
228243
.getBackedSlotsRow(syncManager, theme, simpleTieredMachine.importItems,
@@ -242,7 +257,7 @@ public class GTSingleblockMachinePanels {
242257
.bottom(16)
243258
.padding(0, 8, 4, 4)
244259
.childPadding(2)
245-
.background(GTGuiTextures.BACKGROUND.getSubArea(0.25f, 0f, 1.0f, 1.0f))
260+
.background(backgroundTexture.getSubArea(0.25f, 0f, 1.0f, 1.0f))
246261
.child(GTMuiWidgets.createPowerButton(workableMachine, syncManager))
247262
.child(GTMuiWidgets.createBatterySlot(simpleTieredMachine, syncManager))
248263
.childIf(autoOutputItem,
@@ -294,8 +309,11 @@ public class GTSingleblockMachinePanels {
294309
var theme = machine.getDefinition().getThemeId();
295310
var backgroundTexture = (UITexture) ThemeAPI.INSTANCE.getTheme(theme).getPanelTheme().getTheme()
296311
.getBackground();
312+
if (backgroundTexture == null) {
313+
backgroundTexture = GTGuiTextures.BACKGROUND;
314+
}
297315

298-
panel.child(GTMuiWidgets.createTitleBar(machine.getDefinition(), 176, backgroundTexture))
316+
panel.child(GTMuiWidgets.createTitleBar(machine.getDefinition(), 176))
299317
.child(new Row()
300318
.childIf(hasXEI, GTRecipeTypeUIs.recipeTypeUIs.get(steamMachine.getRecipeType())
301319
.getBackedSlotsRow(syncManager, theme, steamMachine.importItems,

0 commit comments

Comments
 (0)