diff options
| author | shedaniel <daniel@shedaniel.me> | 2020-02-12 01:55:38 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2020-02-12 02:03:30 +0800 |
| commit | 620b7b47c9c2a3d7e1f54c5a8c82113acaff7438 (patch) | |
| tree | dde7882dac52864c84167799db97cb6f72db90e0 /src/main/java/me/shedaniel/rei/impl/ConfigObjectImpl.java | |
| parent | 5cb938a76b4f93c9f58bc725a1543e511c760aa9 (diff) | |
| download | RoughlyEnoughItems-620b7b47c9c2a3d7e1f54c5a8c82113acaff7438.tar.gz RoughlyEnoughItems-620b7b47c9c2a3d7e1f54c5a8c82113acaff7438.tar.bz2 RoughlyEnoughItems-620b7b47c9c2a3d7e1f54c5a8c82113acaff7438.zip | |
fix favorites saving
Signed-off-by: shedaniel <daniel@shedaniel.me>
Diffstat (limited to 'src/main/java/me/shedaniel/rei/impl/ConfigObjectImpl.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/impl/ConfigObjectImpl.java | 37 |
1 files changed, 35 insertions, 2 deletions
diff --git a/src/main/java/me/shedaniel/rei/impl/ConfigObjectImpl.java b/src/main/java/me/shedaniel/rei/impl/ConfigObjectImpl.java index 2ffdc004c..00657be20 100644 --- a/src/main/java/me/shedaniel/rei/impl/ConfigObjectImpl.java +++ b/src/main/java/me/shedaniel/rei/impl/ConfigObjectImpl.java @@ -20,6 +20,10 @@ import me.shedaniel.rei.gui.config.SearchFieldLocation; import net.minecraft.client.util.InputUtil; import org.jetbrains.annotations.ApiStatus; +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; import java.util.ArrayList; import java.util.List; @@ -27,12 +31,36 @@ import java.util.List; @Config(name = "roughlyenoughitems/config") public class ConfigObjectImpl implements ConfigObject, ConfigData { + @Retention(RetentionPolicy.RUNTIME) + @Target({ElementType.FIELD}) + @interface DontApplyFieldName {} + + @Retention(RetentionPolicy.RUNTIME) + @Target({ElementType.FIELD}) + @interface UseEnumSelectorInstead {} + + @Retention(RetentionPolicy.RUNTIME) + @Target({ElementType.FIELD}) + @interface UseSpecialRecipeTypeScreen {} + + @Retention(RetentionPolicy.RUNTIME) + @Target({ElementType.FIELD}) + @interface UseFilteringScreen {} + + @Retention(RetentionPolicy.RUNTIME) + @Target({ElementType.FIELD}) + @interface UsePercentage { + double min(); + + double max(); + } + @ConfigEntry.Category("!general") @ConfigEntry.Gui.TransitiveObject @DontApplyFieldName public General general = new General(); @ConfigEntry.Category("appearance") @ConfigEntry.Gui.TransitiveObject @DontApplyFieldName private Appearance appearance = new Appearance(); @ConfigEntry.Category("modules") @ConfigEntry.Gui.TransitiveObject @DontApplyFieldName private Modules modules = new Modules(); @ConfigEntry.Category("technical") @ConfigEntry.Gui.TransitiveObject @DontApplyFieldName private Technical technical = new Technical(); @ConfigEntry.Category("performance") @ConfigEntry.Gui.TransitiveObject @DontApplyFieldName private Performance performance = new Performance(); - // @ConfigEntry.Category("filtering") @ConfigEntry.Gui.TransitiveObject @DontApplyFieldName private Filtering filtering = new Filtering(); + @ConfigEntry.Category("filtering") @ConfigEntry.Gui.TransitiveObject @DontApplyFieldName private Filtering filtering = new Filtering(); @Override public boolean isOverlayVisible() { @@ -280,6 +308,11 @@ public class ConfigObjectImpl implements ConfigObject, ConfigData { return general.favorites; } + @Override + public List<EntryStack> getFilteredStacks() { + return filtering.filteredStacks; + } + public static class General { @ConfigEntry.Gui.Excluded public List<EntryStack> favorites = new ArrayList<>(); @Comment("Declares whether cheating mode is on.") private boolean cheating = false; @@ -343,6 +376,6 @@ public class ConfigObjectImpl implements ConfigObject, ConfigData { } public static class Filtering { - private List<EntryStack> filteredStacks = new ArrayList<>(); + @UseFilteringScreen private List<EntryStack> filteredStacks = new ArrayList<>(); } } |
