Skip to content

Commit f68da3c

Browse files
committed
Add clientscript/command triggers to class contributor
1 parent f0ee203 commit f68da3c

File tree

2 files changed

+26
-8
lines changed

2 files changed

+26
-8
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
- Updated to IntelliJ 2024.2.
1717
- Allowed empty lines in sym files.
1818
- Symbols can now be resolved from sub directories.
19+
- Allow for clientscript/command to be looked up in "Search Everywhere".
1920

2021
## [1.5.1] - 2024-04-15
2122

src/main/kotlin/io/runescript/plugin/ide/RsGotoClassContributor.kt

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,29 +11,46 @@ import com.intellij.util.indexing.IdFilter
1111
import io.runescript.plugin.lang.RuneScript
1212
import io.runescript.plugin.lang.psi.RsScript
1313
import io.runescript.plugin.lang.psi.qualifiedName
14+
import io.runescript.plugin.lang.stubs.index.RsClientScriptIndex
15+
import io.runescript.plugin.lang.stubs.index.RsCommandScriptIndex
1416
import io.runescript.plugin.lang.stubs.index.RsProcScriptIndex
1517

1618
class RsGotoClassContributor : ChooseByNameContributorEx, GotoClassContributor {
19+
20+
private val keys = arrayOf(
21+
RsProcScriptIndex.KEY,
22+
RsClientScriptIndex.KEY,
23+
RsCommandScriptIndex.KEY
24+
)
25+
1726
override fun processNames(processor: Processor<in String>, scope: GlobalSearchScope, filter: IdFilter?) {
18-
StubIndex.getInstance().processAllKeys(
19-
RsProcScriptIndex.KEY,
27+
for (key in keys) {
28+
StubIndex.getInstance().processAllKeys(
29+
key,
2030
processor,
2131
scope,
2232
null
23-
)
33+
)
34+
}
2435
}
2536

26-
override fun processElementsWithName(name: String, processor: Processor<in NavigationItem>, parameters: FindSymbolParameters) {
37+
override fun processElementsWithName(
38+
name: String,
39+
processor: Processor<in NavigationItem>,
40+
parameters: FindSymbolParameters
41+
) {
2742
val originScope = parameters.searchScope
28-
StubIndex.getInstance().processElements(
29-
RsProcScriptIndex.KEY,
43+
for (key in keys) {
44+
StubIndex.getInstance().processElements(
45+
key,
3046
name,
3147
parameters.project,
3248
originScope,
3349
null,
3450
RsScript::class.java
35-
) { element ->
36-
processor.process(element)
51+
) { element ->
52+
processor.process(element)
53+
}
3754
}
3855
}
3956

0 commit comments

Comments
 (0)