[IFT] Fix declaration and usages lesson after platform changes in the tab text

GitOrigin-RevId: a9e201c62970944c6212fc559479363d48cb3f58
This commit is contained in:
Alexey Merkulov
2021-05-25 19:38:43 +03:00
committed by intellij-monorepo-bot
parent 1f03890baf
commit ecac79c7ea
4 changed files with 9 additions and 4 deletions

View File

@@ -7,4 +7,5 @@ import training.learn.lesson.general.navigation.DeclarationAndUsagesLesson
class JavaDeclarationAndUsagesLesson : DeclarationAndUsagesLesson() {
override fun LessonContext.setInitialPosition() = caret("foo()")
override val existedFile: String get() = "src/DerivedClass2.java"
override val entityName = "foo"
}

View File

@@ -84,7 +84,6 @@ unknown.language.name=unknown
# This prefix should be enough so Find Action (Ctrl+Shift+A) will show Show Line Numbers at the first item
show.line.number.prefix.to.show.first=show line
surround.and.unwrap.item=Unwrap {0}
usages.tab.name=Usages of
welcome.tab.start.learning.button=Start Learning
welcome.tab.header.learn.ide.features=Learn IDE Features

View File

@@ -2,6 +2,8 @@
package training.learn.lesson.general.navigation
import com.intellij.codeInsight.TargetElementUtil
import com.intellij.core.CoreBundle
import com.intellij.find.FindBundle
import com.intellij.openapi.actionSystem.impl.ActionMenuItem
import com.intellij.openapi.fileEditor.FileEditorManager
import com.intellij.openapi.wm.IdeFocusManager
@@ -16,7 +18,6 @@ import training.dsl.LessonUtil.restoreIfModifiedOrMoved
import training.dsl.TaskRuntimeContext
import training.dsl.checkToolWindowState
import training.dsl.closeAllFindTabs
import training.learn.LearnBundle
import training.learn.LessonsBundle
import training.learn.course.KLesson
@@ -24,6 +25,7 @@ abstract class DeclarationAndUsagesLesson
: KLesson("Declaration and usages", LessonsBundle.message("declaration.and.usages.lesson.name")) {
abstract fun LessonContext.setInitialPosition()
abstract override val existedFile: String
abstract val entityName: String
override val lessonContent: LessonContext.() -> Unit
get() = {
@@ -74,7 +76,7 @@ abstract class DeclarationAndUsagesLesson
text(LessonsBundle.message("declaration.and.usages.find.usages", action(it)))
triggerByUiComponentAndHighlight { ui: BaseLabel ->
ui.text?.contains(LearnBundle.message("usages.tab.name")) ?: false
ui.javaClass.simpleName == "ContentTabLabel" && (ui.text?.contains(entityName) ?: false)
}
restoreIfModifiedOrMoved()
test {
@@ -94,7 +96,9 @@ abstract class DeclarationAndUsagesLesson
}
restoreByUi()
text(LessonsBundle.message("declaration.and.usages.pin.motivation", strong(UIBundle.message("tool.window.name.find"))))
text(LessonsBundle.message("declaration.and.usages.right.click.tab", strong(LearnBundle.message("usages.tab.name"))))
text(LessonsBundle.message("declaration.and.usages.right.click.tab",
strong(FindBundle.message("find.usages.of.element.in.scope.panel.title",
entityName, CoreBundle.message("scope.name.all.places")))))
}
task("PinToolwindowTab") {

View File

@@ -7,4 +7,5 @@ import training.learn.lesson.general.navigation.DeclarationAndUsagesLesson
class PythonDeclarationAndUsagesLesson : DeclarationAndUsagesLesson() {
override fun LessonContext.setInitialPosition() = caret(9, 21)
override val existedFile: String = "src/declaration_and_usages_demo.py"
override val entityName = "discriminant"
}