diff options
| author | shedaniel <daniel@shedaniel.me> | 2021-03-20 14:51:53 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2021-03-20 14:51:53 +0800 |
| commit | dae95200cbb2eb3b8851ca955ffd770e0892dedd (patch) | |
| tree | 250a40d22cb533accd27b2bac7a211af6f688485 /runtime/src/main/java/me/shedaniel/rei/impl/SearchArgument.java | |
| parent | ecfc6aa3f7a1540c74f0b17f33642d2dfdfec45d (diff) | |
| download | RoughlyEnoughItems-dae95200cbb2eb3b8851ca955ffd770e0892dedd.tar.gz RoughlyEnoughItems-dae95200cbb2eb3b8851ca955ffd770e0892dedd.tar.bz2 RoughlyEnoughItems-dae95200cbb2eb3b8851ca955ffd770e0892dedd.zip | |
Implement search modes and make tooltip always enabled by default.
Signed-off-by: shedaniel <daniel@shedaniel.me>
Diffstat (limited to 'runtime/src/main/java/me/shedaniel/rei/impl/SearchArgument.java')
| -rw-r--r-- | runtime/src/main/java/me/shedaniel/rei/impl/SearchArgument.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/SearchArgument.java b/runtime/src/main/java/me/shedaniel/rei/impl/SearchArgument.java index 050f16f72..bb209c019 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/SearchArgument.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/SearchArgument.java @@ -26,6 +26,7 @@ package me.shedaniel.rei.impl; import com.google.common.base.MoreObjects; import com.google.common.collect.Lists; import me.shedaniel.math.Point; +import me.shedaniel.rei.api.gui.config.SearchMode; import me.shedaniel.rei.api.gui.widgets.Tooltip; import me.shedaniel.rei.api.ingredient.EntryStack; import me.shedaniel.rei.api.util.CollectionUtils; @@ -90,7 +91,7 @@ public class SearchArgument<T, R> { void addSplitter(int index); - void addPart(SearchArgument<?, ?> argument, Collection<IntRange> grammarRanges, int index); + void addPart(SearchArgument<?, ?> argument, boolean usingGrammar, Collection<IntRange> grammarRanges, int index); } @ApiStatus.Internal @@ -109,6 +110,7 @@ public class SearchArgument<T, R> { while (terms.find()) { String term = MoreObjects.firstNonNull(terms.group(1), terms.group(2)); for (Argument<?, ?> argument : ArgumentsRegistry.ARGUMENT_LIST) { + if (argument.getSearchMode() == SearchMode.NEVER) continue; MatchStatus status = argument.matchesArgumentPrefix(term); if (status.isMatched()) { SearchArgument<?, ?> searchArgument; @@ -124,7 +126,7 @@ public class SearchArgument<T, R> { arguments.add(searchArgument = new SearchArgument<>(argument, status.getText(), !status.isInverted(), terms.start(2) + tokenStartIndex, terms.end(2) + tokenStartIndex, !status.shouldPreserveCasing())); } if (sink != null) { - sink.addPart(searchArgument, status.grammarRanges(), terms.start() + tokenStartIndex); + sink.addPart(searchArgument, status.isUsingGrammar(), status.grammarRanges(), terms.start() + tokenStartIndex); } break; } |
