mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-07 22:09:38 +07:00
[IFT] Add reworked java onboarding lesson
GitOrigin-RevId: f2f92f105fc03a8d206878e1462a981f538ab456
This commit is contained in:
committed by
intellij-monorepo-bot
parent
2cfc4319bd
commit
c794a1f036
@@ -7,6 +7,7 @@ import com.intellij.java.ift.lesson.basic.JavaSelectLesson
|
||||
import com.intellij.java.ift.lesson.basic.JavaSurroundAndUnwrapLesson
|
||||
import com.intellij.java.ift.lesson.completion.*
|
||||
import com.intellij.java.ift.lesson.essential.JavaOnboardingTourLesson
|
||||
import com.intellij.java.ift.lesson.essential.JavaReworkedOnboardingTourLesson
|
||||
import com.intellij.java.ift.lesson.navigation.*
|
||||
import com.intellij.java.ift.lesson.refactorings.JavaExtractMethodCocktailSortLesson
|
||||
import com.intellij.java.ift.lesson.refactorings.JavaRefactoringMenuLesson
|
||||
@@ -29,12 +30,13 @@ import training.learn.lesson.general.assistance.ParameterInfoLesson
|
||||
import training.learn.lesson.general.assistance.QuickPopupsLesson
|
||||
import training.learn.lesson.general.navigation.FindInFilesLesson
|
||||
import training.learn.lesson.general.refactorings.ExtractVariableFromBubbleLesson
|
||||
import training.util.useShortOnboardingLesson
|
||||
|
||||
class JavaLearningCourse : LearningCourseBase(JavaLanguage.INSTANCE.id) {
|
||||
override fun modules(): List<IftModule> = onboardingTour() + stableModules() + CourseManager.instance.findCommonModules("Git")
|
||||
|
||||
private val isOnboardingLessonEnabled: Boolean
|
||||
get() = PlatformUtils.isIntelliJ()
|
||||
get() = PlatformUtils.isIntelliJ() && !useShortOnboardingLesson
|
||||
|
||||
private fun onboardingTour() = if (isOnboardingLessonEnabled) listOf(
|
||||
LearningModule(id = "Java.Onboarding",
|
||||
@@ -54,7 +56,8 @@ class JavaLearningCourse : LearningCourseBase(JavaLanguage.INSTANCE.id) {
|
||||
primaryLanguage = langSupport,
|
||||
moduleType = LessonType.SCRATCH) {
|
||||
fun ls(sampleName: String) = loadSample("EditorBasics/$sampleName")
|
||||
listOf(
|
||||
val adjust = if (useShortOnboardingLesson) listOf(JavaReworkedOnboardingTourLesson()) else emptyList()
|
||||
adjust + listOf(
|
||||
JavaContextActionsLesson(),
|
||||
GotoActionLesson(ls("00.Actions.java.sample"), firstLesson = false),
|
||||
JavaSearchEverywhereLesson(),
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.java.ift.lesson.essential
|
||||
|
||||
import com.intellij.execution.RunManager
|
||||
import training.dsl.LessonContext
|
||||
|
||||
class JavaReworkedOnboardingTourLesson : CommonLogicForOnboardingTours("idea.onboarding.reworked", "Reworked onboarding tour") {
|
||||
override val sample = javaOnboardingTourSample
|
||||
|
||||
override val completionStepExpectedCompletion: String = "length"
|
||||
|
||||
override fun LessonContext.contextActions() = contextActionsForJavaOnboarding(sample)
|
||||
|
||||
override val lessonContent: LessonContext.() -> Unit = {
|
||||
prepareRuntimeTask {
|
||||
rememberJdkAtStart()
|
||||
// So the Current run configuration will be set
|
||||
RunManager.getInstance(project).selectedConfiguration = null
|
||||
}
|
||||
|
||||
prepareSample(sample)
|
||||
|
||||
commonTasks()
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user