Skip to content

Commit 6e0885d

Browse files
github-actions[bot]RanzuuKogepan229lc-1337
authored
Optimising images contained in scheduled-reason-tooltip for #1180 (#1182)
Co-authored-by: Ranzu <66495944+Ranzuu@users.noreply.github.com> Co-authored-by: Kogepan229 <73163994+Kogepan229@users.noreply.github.com> Co-authored-by: lc-1337 <62835225+lc-1337@users.noreply.github.com>
1 parent 843efa9 commit 6e0885d

File tree

13 files changed

+70
-139
lines changed

13 files changed

+70
-139
lines changed

src/main/java/appeng/api/config/ActionItems.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,5 +37,6 @@ public enum ActionItems {
3737
TOGGLE_SHOW_ONLY_SUBSTITUTE_OFF,
3838
NEXT_PARTITION,
3939
CONTROL_BUTTON_VALUES_OFF,
40-
CONTROL_BUTTON_VALUES_ON
40+
CONTROL_BUTTON_VALUES_ON,
41+
PINS
4142
}

src/main/java/appeng/api/config/Settings.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,6 @@ public enum Settings {
9090

9191
CRAFTING_ALLOW(EnumSet.allOf(CraftingAllow.class)),
9292

93-
CRAFTING_PINS_ROWS(EnumSet.allOf(PinsRows.class)),
94-
PLAYER_PINS_ROWS(EnumSet.allOf(PinsRows.class)),
95-
9693
PAUSE_WHEN_HOLDING_SHIFT(EnumSet.of(YesNo.YES, YesNo.NO));
9794

9895
private final EnumSet<? extends Enum<?>> values;

src/main/java/appeng/client/gui/implementations/GuiCraftConfirm.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -651,12 +651,12 @@ private void drawListFG() {
651651

652652
if (red) {
653653
final int startX = x * (1 + sectionLength) + xo;
654-
final int startY = posY - 4;
654+
final int startY = posY - 3;
655655
drawRect(
656656
startX,
657657
startY,
658658
startX + sectionLength,
659-
startY + offY,
659+
startY + offY - 1,
660660
GuiColors.CraftConfirmMissingItem.getColor());
661661
}
662662

src/main/java/appeng/client/gui/implementations/GuiMEMonitorable.java

Lines changed: 29 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
import org.lwjgl.input.Keyboard;
3939
import org.lwjgl.input.Mouse;
4040

41+
import appeng.api.config.ActionItems;
4142
import appeng.api.config.CraftingStatus;
4243
import appeng.api.config.PinSectionOrder;
4344
import appeng.api.config.PinsRows;
@@ -178,8 +179,8 @@ public GuiMEMonitorable(final InventoryPlayer inventoryPlayer, final ITerminalHo
178179

179180
this.configSrc = ((IConfigurableObject) this.inventorySlots).getConfigManager();
180181

181-
craftingPinsRows = (PinsRows) configSrc.getSetting(Settings.CRAFTING_PINS_ROWS);
182-
playerPinsRows = (PinsRows) configSrc.getSetting(Settings.PLAYER_PINS_ROWS);
182+
craftingPinsRows = PinsRows.DISABLED;
183+
playerPinsRows = PinsRows.DISABLED;
183184

184185
(this.monitorableContainer = (ContainerMEMonitorable) this.inventorySlots).setGui(this);
185186

@@ -251,19 +252,7 @@ protected void actionPerformed(final GuiButton btn) {
251252
NetworkHandler.instance.sendToServer(new PacketSwitchGuis(GuiBridge.GUI_CRAFTING_STATUS));
252253
}
253254

254-
if (!(btn instanceof GuiImgButton iBtn) || iBtn.getSetting() == Settings.ACTIONS) return;
255-
256-
final Enum cv = iBtn.getCurrentValue();
257-
final boolean backwards = Mouse.isButtonDown(1);
258-
final Enum next = Platform.rotateEnum(cv, backwards, iBtn.getSetting().getPossibleValues());
259-
260-
if (btn == this.terminalStyleBox) {
261-
AEConfig.instance.settings.putSetting(iBtn.getSetting(), next);
262-
} else if (btn == this.searchBoxSettings) {
263-
AEConfig.instance.settings.putSetting(iBtn.getSetting(), next);
264-
} else if (btn == this.searchStringSave) {
265-
AEConfig.instance.preserveSearchBar = next == YesNo.YES;
266-
} else if (btn == this.pinsStateButton) {
255+
if (btn == this.pinsStateButton) {
267256
try {
268257
boolean rmb = Mouse.isButtonDown(1);
269258
boolean ctrl = GuiScreen.isCtrlKeyDown();
@@ -286,6 +275,20 @@ protected void actionPerformed(final GuiButton btn) {
286275
}
287276
reinitalize();
288277
return;
278+
}
279+
280+
if (!(btn instanceof GuiImgButton iBtn) || iBtn.getSetting() == Settings.ACTIONS) return;
281+
282+
final Enum cv = iBtn.getCurrentValue();
283+
final boolean backwards = Mouse.isButtonDown(1);
284+
final Enum next = Platform.rotateEnum(cv, backwards, iBtn.getSetting().getPossibleValues());
285+
286+
if (btn == this.terminalStyleBox) {
287+
AEConfig.instance.settings.putSetting(iBtn.getSetting(), next);
288+
} else if (btn == this.searchBoxSettings) {
289+
AEConfig.instance.settings.putSetting(iBtn.getSetting(), next);
290+
} else if (btn == this.searchStringSave) {
291+
AEConfig.instance.preserveSearchBar = next == YesNo.YES;
289292
} else {
290293
try {
291294
NetworkHandler.instance.sendToServer(new PacketValueConfig(iBtn.getSetting().name(), next.name()));
@@ -508,11 +511,9 @@ public void initGui() {
508511
this.pinsStateButton = new GuiImgButton(
509512
getPinButtonX(),
510513
getPinButtonY(),
511-
Settings.CRAFTING_PINS_ROWS,
512-
PinsRows.ONE));
513-
this.repo.setVisiblePinRows(
514-
((PinsRows) configSrc.getSetting(Settings.CRAFTING_PINS_ROWS)).ordinal(),
515-
((PinsRows) configSrc.getSetting(Settings.PLAYER_PINS_ROWS)).ordinal());
514+
Settings.ACTIONS,
515+
ActionItems.PINS));
516+
this.repo.setVisiblePinRows(this.craftingPinsRows.ordinal(), this.playerPinsRows.ordinal());
516517
}
517518

518519
// Enum setting = AEConfig.INSTANCE.getSetting( "Terminal", SearchBoxMode.class, SearchBoxMode.AUTOSEARCH );
@@ -1011,13 +1012,6 @@ public void updateSetting(final IConfigManager manager, final Enum settingName,
10111012
this.ViewBox.set(this.configSrc.getSetting(Settings.VIEW_MODE));
10121013
}
10131014

1014-
if (this.pinsStateButton != null) {
1015-
craftingPinsRows = (PinsRows) this.configSrc.getSetting(Settings.CRAFTING_PINS_ROWS);
1016-
playerPinsRows = (PinsRows) this.configSrc.getSetting(Settings.PLAYER_PINS_ROWS);
1017-
this.repo.setVisiblePinRows(craftingPinsRows.ordinal(), playerPinsRows.ordinal());
1018-
reinitalize();
1019-
}
1020-
10211015
this.repo.updateView();
10221016
}
10231017

@@ -1136,16 +1130,13 @@ public void setAEPins(IAEStack<?>[] pins) {
11361130
}
11371131

11381132
@Override
1139-
public void setCraftingPinsRows(PinsRows rows) {
1140-
configSrc.putSetting(Settings.CRAFTING_PINS_ROWS, rows);
1141-
repo.setVisiblePinRows(rows.ordinal(), ((PinsRows) configSrc.getSetting(Settings.PLAYER_PINS_ROWS)).ordinal());
1142-
}
1143-
1144-
@Override
1145-
public void setPlayerPinsRows(PinsRows rows) {
1146-
configSrc.putSetting(Settings.PLAYER_PINS_ROWS, rows);
1147-
repo.setVisiblePinRows(
1148-
((PinsRows) configSrc.getSetting(Settings.CRAFTING_PINS_ROWS)).ordinal(),
1149-
rows.ordinal());
1133+
public void setPinsRows(PinsRows craftingRows, PinsRows playerRows) {
1134+
if (this.pinsStateButton != null) {
1135+
if (craftingRows != craftingPinsRows || playerRows != playerPinsRows) {
1136+
craftingPinsRows = craftingRows;
1137+
playerPinsRows = playerRows;
1138+
reinitalize();
1139+
}
1140+
}
11501141
}
11511142
}

src/main/java/appeng/client/gui/widgets/GuiCraftingCPUTable.java

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -376,21 +376,32 @@ public void drawFG(int offsetX, int offsetY, int mouseX, int mouseY, int guiLeft
376376

377377
public void drawBG(int offsetX, int offsetY) {
378378
parent.bindTexture("guis/cpu_selector.png");
379+
final int tableLeft = offsetX - CPU_TABLE_WIDTH;
379380
if (CPU_TABLE_HEIGHT != 164) {
380-
parent.drawTexturedModalRect(offsetX - CPU_TABLE_WIDTH, offsetY, 0, 0, CPU_TABLE_WIDTH, 41);
381+
parent.drawTexturedModalRect(tableLeft, offsetY, 0, 0, CPU_TABLE_WIDTH, 41);
381382
int y = 41;
382383
int rows = CPU_TABLE_SLOTS;
383384
for (int row = 1; row < rows - 1; row++) {
384-
parent.drawTexturedModalRect(offsetX - CPU_TABLE_WIDTH, offsetY + y, 0, 41, CPU_TABLE_WIDTH, 23);
385+
parent.drawTexturedModalRect(tableLeft, offsetY + y, 0, 41, CPU_TABLE_WIDTH, 23);
385386
y += 23;
386387
}
387-
parent.drawTexturedModalRect(offsetX - CPU_TABLE_WIDTH, offsetY + y, 0, 133, CPU_TABLE_WIDTH, 31);
388+
parent.drawTexturedModalRect(tableLeft, offsetY + y, 0, 133, CPU_TABLE_WIDTH, 31);
388389
} else {
389-
parent.drawTexturedModalRect(offsetX - CPU_TABLE_WIDTH, offsetY, 0, 0, CPU_TABLE_WIDTH, CPU_TABLE_HEIGHT);
390+
parent.drawTexturedModalRect(tableLeft, offsetY, 0, 0, CPU_TABLE_WIDTH, CPU_TABLE_HEIGHT);
390391
}
392+
drawTopBorderFixPixels(tableLeft, offsetY);
391393
updateScrollBar();
392394
}
393395

396+
// Draws 3 missing pixels
397+
private void drawTopBorderFixPixels(int tableLeft, int tableTop) {
398+
// Copy (93,0) -> (94,0) and (95,0)
399+
parent.drawTexturedModalRect(tableLeft + 94, tableTop, 93, 0, 1, 1);
400+
parent.drawTexturedModalRect(tableLeft + 95, tableTop, 93, 0, 1, 1);
401+
// Copy (93,1) -> (94,1)
402+
parent.drawTexturedModalRect(tableLeft + 94, tableTop + 1, 93, 1, 1, 1);
403+
}
404+
394405
/**
395406
* Tests if a cpu button is under the cursor. Subtract guiLeft, guiTop from x, y before calling
396407
*/

src/main/java/appeng/client/gui/widgets/GuiImgButton.java

Lines changed: 5 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@
4242
import appeng.api.config.OperationMode;
4343
import appeng.api.config.PatternBeSubstitution;
4444
import appeng.api.config.PatternSlotConfig;
45-
import appeng.api.config.PinsRows;
4645
import appeng.api.config.PowerUnits;
4746
import appeng.api.config.PriorityCardMode;
4847
import appeng.api.config.RedstoneMode;
@@ -59,7 +58,6 @@
5958
import appeng.api.config.ViewItems;
6059
import appeng.api.config.YesNo;
6160
import appeng.client.texture.ExtraBlockTextures;
62-
import appeng.core.AEConfig;
6361
import appeng.core.localization.ButtonToolTips;
6462
import appeng.core.localization.GuiText;
6563
import appeng.util.Platform;
@@ -877,44 +875,12 @@ public GuiImgButton(final int x, final int y, final Enum idx, final Enum val) {
877875
ButtonToolTips.CPUOnlyAllowNonPlayerDesc);
878876

879877
this.registerApp(
880-
16 * 15 + 14,
881-
Settings.CRAFTING_PINS_ROWS,
882-
PinsRows.DISABLED,
883-
ButtonToolTips.PinsSection,
884-
ButtonToolTips.PinsSection);
885-
int maxCrafting = AEConfig.instance != null ? AEConfig.instance.maxCraftingPinRows
886-
: PinsRows.values().length - 1;
887-
for (PinsRows r : PinsRows.values()) {
888-
if (r == PinsRows.DISABLED) continue;
889-
if (r.ordinal() > maxCrafting) continue;
890-
this.registerApp(
891-
16 * 15 + 13,
892-
Settings.CRAFTING_PINS_ROWS,
893-
r,
894-
ButtonToolTips.PinsSection,
895-
ButtonToolTips.PinsSectionActive,
896-
ButtonToolTips.PinsSectionHint);
897-
}
898-
899-
this.registerApp(
900-
16 * 15 + 14,
901-
Settings.PLAYER_PINS_ROWS,
902-
PinsRows.DISABLED,
878+
16 * 15 + 13,
879+
Settings.ACTIONS,
880+
ActionItems.PINS,
903881
ButtonToolTips.PinsSection,
904-
ButtonToolTips.PinsSection);
905-
int maxPlayer = AEConfig.instance != null ? AEConfig.instance.maxPlayerPinRows
906-
: PinsRows.values().length - 1;
907-
for (PinsRows r : PinsRows.values()) {
908-
if (r == PinsRows.DISABLED) continue;
909-
if (r.ordinal() > maxPlayer) continue;
910-
this.registerApp(
911-
16 * 15 + 13,
912-
Settings.PLAYER_PINS_ROWS,
913-
r,
914-
ButtonToolTips.PinsSection,
915-
ButtonToolTips.PinsSectionActive,
916-
ButtonToolTips.PinsSectionHint);
917-
}
882+
ButtonToolTips.PinsSectionActive,
883+
ButtonToolTips.PinsSectionHint);
918884

919885
this.registerApp(
920886
16 * 3 + 7,

src/main/java/appeng/container/implementations/ContainerMEMonitorable.java

Lines changed: 5 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -142,8 +142,6 @@ protected ContainerMEMonitorable(final InventoryPlayer ip, final ITerminalHost m
142142
this.clientCM.registerSetting(Settings.SORT_BY, SortOrder.NAME);
143143
this.clientCM.registerSetting(Settings.VIEW_MODE, ViewItems.ALL);
144144
this.clientCM.registerSetting(Settings.SORT_DIRECTION, SortDir.ASCENDING);
145-
this.clientCM.registerSetting(Settings.CRAFTING_PINS_ROWS, PinsRows.DISABLED);
146-
this.clientCM.registerSetting(Settings.PLAYER_PINS_ROWS, PinsRows.DISABLED);
147145

148146
if (Platform.isServer()) {
149147
if (monitorable instanceof ITerminalPins t) {
@@ -235,14 +233,7 @@ public void detectAndSendChanges() {
235233
}
236234

237235
if (pinsHandler != null) {
238-
if (clientCM.getSetting(Settings.CRAFTING_PINS_ROWS) != pinsHandler.getCraftingPinsRows()
239-
|| clientCM.getSetting(Settings.PLAYER_PINS_ROWS) != pinsHandler.getPlayerPinsRows()) {
240-
this.clientCM.putSetting(Settings.CRAFTING_PINS_ROWS, pinsHandler.getCraftingPinsRows());
241-
this.clientCM.putSetting(Settings.PLAYER_PINS_ROWS, pinsHandler.getPlayerPinsRows());
242-
updatePins(true);
243-
} else {
244-
updatePins(false);
245-
}
236+
updatePins(false);
246237
}
247238

248239
if (this.needListUpdate) {
@@ -498,7 +489,7 @@ public IMEMonitor<IAEItemStack> getItemMonitor() {
498489
return getMonitor(ITEM_STACK_TYPE);
499490
}
500491

501-
private int lastUpdate = 0;
492+
private int lastUpdate = 20;
502493

503494
public void updatePins(boolean forceUpdate) {
504495
if (pinsHandler == null || !(host instanceof ITerminalPins itp)) return;
@@ -562,17 +553,10 @@ public IAEStack<?> getPin(int idx) {
562553
return pinsHandler.getPin(idx);
563554
}
564555

565-
public void setCraftingPinsRows(PinsRows rows) {
566-
if (pinsHandler == null) return;
567-
clientCM.putSetting(Settings.CRAFTING_PINS_ROWS, rows);
568-
pinsHandler.setCraftingPinsRows(rows);
569-
updatePins(true);
570-
}
571-
572-
public void setPlayerPinsRows(PinsRows rows) {
556+
@Override
557+
public void setPinsRows(PinsRows craftingRows, PinsRows playerRows) {
573558
if (pinsHandler == null) return;
574-
clientCM.putSetting(Settings.PLAYER_PINS_ROWS, rows);
575-
pinsHandler.setPlayerPinsRows(rows);
559+
pinsHandler.setPinsRows(craftingRows, playerRows);
576560
updatePins(true);
577561
}
578562

src/main/java/appeng/core/AEConfig.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@
2626
import appeng.api.config.CraftingSortOrder;
2727
import appeng.api.config.CraftingStatus;
2828
import appeng.api.config.PinSectionOrder;
29-
import appeng.api.config.PinsRows;
3029
import appeng.api.config.PowerMultiplier;
3130
import appeng.api.config.PowerUnits;
3231
import appeng.api.config.SearchBoxFocusPriority;
@@ -185,8 +184,6 @@ public AEConfig(final File configFile) {
185184
this.settings.registerSetting(Settings.SORT_DIRECTION, SortDir.ASCENDING);
186185
this.settings.registerSetting(Settings.TERMINAL_FONT_SIZE, TerminalFontSize.SMALL);
187186
this.settings.registerSetting(Settings.INTERFACE_TERMINAL_SECTION_ORDER, StringOrder.NATURAL);
188-
this.settings.registerSetting(Settings.CRAFTING_PINS_ROWS, PinsRows.DISABLED);
189-
this.settings.registerSetting(Settings.PLAYER_PINS_ROWS, PinsRows.DISABLED);
190187
this.settings.registerSetting(Settings.PAUSE_WHEN_HOLDING_SHIFT, YesNo.YES);
191188

192189
this.spawnChargedChance = (float) (1.0

src/main/java/appeng/core/sync/packets/PacketPinsUpdate.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,7 @@ public void clientPacketData(final INetworkInfo network, final AppEngPacket pack
8585
if (gs instanceof IPinsHandler iph) {
8686
int craftOrd = Math.max(0, Math.min(craftingRowsOrdinal, PinsRows.values().length - 1));
8787
int playerOrd = Math.max(0, Math.min(playerRowsOrdinal, PinsRows.values().length - 1));
88-
iph.setCraftingPinsRows(PinsRows.values()[craftOrd]);
89-
iph.setPlayerPinsRows(PinsRows.values()[playerOrd]);
88+
iph.setPinsRows(PinsRows.values()[craftOrd], PinsRows.values()[playerOrd]);
9089
if (list != null) iph.setAEPins(list);
9190
}
9291
}
@@ -97,8 +96,7 @@ public void serverPacketData(final INetworkInfo network, final AppEngPacket pack
9796
if (sender.openContainer instanceof IPinsHandler container) {
9897
int craftOrd = Math.max(0, Math.min(craftingRowsOrdinal, PinsRows.values().length - 1));
9998
int playerOrd = Math.max(0, Math.min(playerRowsOrdinal, PinsRows.values().length - 1));
100-
container.setCraftingPinsRows(PinsRows.values()[craftOrd]);
101-
container.setPlayerPinsRows(PinsRows.values()[playerOrd]);
99+
container.setPinsRows(PinsRows.values()[craftOrd], PinsRows.values()[playerOrd]);
102100
}
103101
}
104102
}

src/main/java/appeng/helpers/IPinsHandler.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,11 @@ default PinsRows getCraftingPinsRows() {
3030
return PinsRows.DISABLED;
3131
}
3232

33-
default void setCraftingPinsRows(PinsRows rows) {
34-
throw new UnsupportedOperationException("setCraftingPinsRows is not supported by this handler");
35-
}
36-
3733
default PinsRows getPlayerPinsRows() {
3834
return PinsRows.DISABLED;
3935
}
4036

41-
default void setPlayerPinsRows(PinsRows rows) {
37+
default void setPinsRows(PinsRows craftingRows, PinsRows playerRows) {
4238
throw new UnsupportedOperationException("setPlayerPinsRows is not supported by this handler");
4339
}
4440
}

0 commit comments

Comments
 (0)