feat: eae扩展样板管理界面添加f键搜索支持

This commit is contained in:
C-H716 2025-09-13 23:18:30 +08:00
parent 0354d86abf
commit d1ff87df2f
2 changed files with 13 additions and 2 deletions

View File

@ -7,8 +7,10 @@ import com.extendedae_plus.ExtendedAEPlus;
import com.extendedae_plus.init.ModNetwork; import com.extendedae_plus.init.ModNetwork;
import com.extendedae_plus.integration.jei.JeiRuntimeProxy; import com.extendedae_plus.integration.jei.JeiRuntimeProxy;
import com.extendedae_plus.mixin.ae2.accessor.MEStorageScreenAccessor; import com.extendedae_plus.mixin.ae2.accessor.MEStorageScreenAccessor;
import com.extendedae_plus.mixin.extendedae.accessor.GuiExPatternTerminalAccessor;
import com.extendedae_plus.network.OpenCraftFromJeiC2SPacket; import com.extendedae_plus.network.OpenCraftFromJeiC2SPacket;
import com.extendedae_plus.network.PullFromJeiOrCraftC2SPacket; import com.extendedae_plus.network.PullFromJeiOrCraftC2SPacket;
import com.glodblock.github.extendedae.client.gui.GuiExPatternTerminal;
import mezz.jei.api.ingredients.ITypedIngredient; import mezz.jei.api.ingredients.ITypedIngredient;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.gui.screens.Screen;
@ -96,13 +98,18 @@ public final class InputEvents {
var screen = Minecraft.getInstance().screen; var screen = Minecraft.getInstance().screen;
if (screen instanceof MEStorageScreen<?> me) { if (screen instanceof MEStorageScreen<?> me) {
try { try {
MEStorageScreenAccessor acc = (MEStorageScreenAccessor) (Object) me; MEStorageScreenAccessor acc = (MEStorageScreenAccessor) me;
acc.eap$getSearchField().setValue(name); acc.eap$getSearchField().setValue(name);
acc.eap$setSearchText(name); // 同步到 Repo 并刷新 acc.eap$setSearchText(name); // 同步到 Repo 并刷新
event.setCanceled(true); event.setCanceled(true);
return;
} catch (Throwable ignored) { } catch (Throwable ignored) {
} }
}else if (screen instanceof GuiExPatternTerminal<?> gpt) {
try {
GuiExPatternTerminalAccessor acc = (GuiExPatternTerminalAccessor) gpt;
acc.getSearchOutField().setValue(name);
event.setCanceled(true);
}catch (Throwable ignored) {}
} }
} }
} }

View File

@ -1,5 +1,6 @@
package com.extendedae_plus.mixin.extendedae.accessor; package com.extendedae_plus.mixin.extendedae.accessor;
import appeng.client.gui.widgets.AETextField;
import appeng.client.gui.widgets.Scrollbar; import appeng.client.gui.widgets.Scrollbar;
import com.glodblock.github.extendedae.client.gui.GuiExPatternTerminal; import com.glodblock.github.extendedae.client.gui.GuiExPatternTerminal;
import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.Dist;
@ -20,4 +21,7 @@ public interface GuiExPatternTerminalAccessor {
@Accessor("rows") @Accessor("rows")
ArrayList<?> getRows(); ArrayList<?> getRows();
@Accessor("searchOutField")
AETextField getSearchOutField();
} }