mirror of
https://github.com/KAMKEEL/CustomNPC-Plus.git
synced 2026-11-13 19:34:09 +00:00
Added API global engine objects and DataScript global definitions as JS autocomplete suggestions
This commit is contained in:
1 parent
aae2fdb23a
commit
76b6dae9d4
1 file changed
+19
+19
@@ -1,6 +1,7 @@
|
||||
package noppes.npcs.client.gui.util.script.autocomplete;
|
||||
|
||||
import noppes.npcs.client.gui.util.script.interpreter.js_parser.*;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.field.FieldInfo;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.type.synthetic.*;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.type.TypeChecker;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.type.TypeInfo;
|
||||
@@ -155,6 +156,24 @@ public class JSAutocompleteProvider extends JavaAutocompleteProvider {
|
||||
// if needed to suggest global JS types.
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void addLanguageUniqueSuggestions(Context context, List<AutocompleteItem> items) {
|
||||
super.addLanguageUniqueSuggestions(context, items);
|
||||
|
||||
// Add global variables from both global engine objects and document editor/DataScript globals
|
||||
List<String> globalNames = new ArrayList<>();
|
||||
globalNames.addAll(registry.getGlobalEngineObjects().keySet());
|
||||
globalNames.addAll(document.getEditorGlobals().keySet());
|
||||
|
||||
for (String name : globalNames) {
|
||||
FieldInfo fieldInfo = document.resolveVariable(name, context.cursorPosition);
|
||||
if (fieldInfo == null || !fieldInfo.isResolved())
|
||||
continue;
|
||||
|
||||
items.add(AutocompleteItem.fromField(fieldInfo));
|
||||
}
|
||||
}
|
||||
|
||||
protected UsageTracker getUsageTracker() {
|
||||
return UsageTracker.getJSInstance();
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user