Skip to content

Commit d202023

Browse files
Nikita Vlaevnikitavlaev
Nikita Vlaev
authored andcommitted
Remove sdk notification panel.
JDK9+ is mostly supported, so no reason to prohibit it's usage.
1 parent 53b1558 commit d202023

File tree

1 file changed

+0
-88
lines changed

1 file changed

+0
-88
lines changed

utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/ui/GenerateTestsDialogWindow.kt

Lines changed: 0 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -31,27 +31,20 @@ import org.utbot.intellij.plugin.ui.utils.parseVersion
3131
import org.utbot.intellij.plugin.ui.utils.suitableTestSourceRoots
3232
import org.utbot.intellij.plugin.ui.utils.testResourceRootTypes
3333
import org.utbot.intellij.plugin.ui.utils.testRootType
34-
import org.utbot.intellij.plugin.util.AndroidApiHelper
35-
import com.intellij.codeInsight.hint.HintUtil
36-
import com.intellij.icons.AllIcons
3734
import com.intellij.ide.impl.ProjectNewWindowDoNotAskOption
3835
import com.intellij.openapi.application.runWriteAction
3936
import com.intellij.openapi.command.WriteCommandAction
4037
import com.intellij.openapi.components.service
41-
import com.intellij.openapi.editor.colors.EditorColorsManager
4238
import com.intellij.openapi.options.ShowSettingsUtil
43-
import com.intellij.openapi.projectRoots.JavaSdkVersion
4439
import com.intellij.openapi.roots.DependencyScope
4540
import com.intellij.openapi.roots.ExternalLibraryDescriptor
4641
import com.intellij.openapi.roots.JavaProjectModelModificationService
4742
import com.intellij.openapi.roots.ModuleRootManager
48-
import com.intellij.openapi.roots.ui.configuration.ClasspathEditor
4943
import com.intellij.openapi.roots.ui.configuration.ProjectStructureConfigurable
5044
import com.intellij.openapi.ui.ComboBox
5145
import com.intellij.openapi.ui.DialogPanel
5246
import com.intellij.openapi.ui.DialogWrapper
5347
import com.intellij.openapi.ui.Messages
54-
import com.intellij.openapi.ui.popup.IconButton
5548
import com.intellij.openapi.vfs.VfsUtil
5649
import com.intellij.openapi.vfs.VfsUtilCore.urlToPath
5750
import com.intellij.openapi.vfs.VirtualFile
@@ -66,32 +59,19 @@ import com.intellij.refactoring.util.classMembers.MemberInfo
6659
import com.intellij.testIntegration.TestIntegrationUtils
6760
import com.intellij.ui.ColoredListCellRenderer
6861
import com.intellij.ui.ContextHelpLabel
69-
import com.intellij.ui.HyperlinkLabel
70-
import com.intellij.ui.IdeBorderFactory.createBorder
71-
import com.intellij.ui.InplaceButton
72-
import com.intellij.ui.JBColor
7362
import com.intellij.ui.JBIntSpinner
74-
import com.intellij.ui.SideBorder
7563
import com.intellij.ui.SimpleTextAttributes
7664
import com.intellij.ui.components.CheckBox
7765
import com.intellij.ui.components.JBLabel
7866
import com.intellij.ui.components.Panel
79-
import com.intellij.ui.components.panels.HorizontalLayout
80-
import com.intellij.ui.components.panels.NonOpaquePanel
8167
import com.intellij.ui.layout.Cell
8268
import com.intellij.ui.layout.CellBuilder
8369
import com.intellij.ui.layout.Row
8470
import com.intellij.ui.layout.panel
8571
import com.intellij.util.IncorrectOperationException
8672
import com.intellij.util.io.exists
87-
import com.intellij.util.lang.JavaVersion
88-
import com.intellij.util.ui.JBUI.Borders.empty
89-
import com.intellij.util.ui.JBUI.Borders.merge
90-
import com.intellij.util.ui.JBUI.scale
9173
import com.intellij.util.ui.JBUI.size
92-
import com.intellij.util.ui.components.BorderLayoutPanel
9374
import java.awt.BorderLayout
94-
import java.awt.Color
9575
import java.nio.file.Files
9676
import java.nio.file.Path
9777
import java.nio.file.Paths
@@ -110,9 +90,6 @@ private const val WILL_BE_CONFIGURED_LABEL = " (will be configured)"
11090
private const val MINIMUM_TIMEOUT_VALUE_IN_SECONDS = 1
11191

11292
class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(model.project) {
113-
companion object {
114-
const val supportedSdkVersion = 8
115-
}
11693

11794
private val membersTable = MemberSelectionTable(emptyList(), null)
11895

@@ -233,76 +210,11 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m
233210
contextHelpLabel?.let { add(it, BorderLayout.LINE_END) }
234211
})
235212

236-
override fun createTitlePane(): JComponent? {
237-
val sdkVersion = findSdkVersion()
238-
//TODO:SAT-1571 investigate Android Studio specific sdk issues
239-
if (sdkVersion?.feature == supportedSdkVersion || AndroidApiHelper.isAndroidStudio()) return null
240-
isOKActionEnabled = false
241-
return SdkNotificationPanel(model, sdkVersion)
242-
}
243-
244213
private fun findTestPackageComboValue(): String {
245214
val packageNames = model.srcClasses.map { it.packageName }.distinct()
246215
return if (packageNames.size == 1) packageNames.first() else SAME_PACKAGE_LABEL
247216
}
248217

249-
private fun findSdkVersion(): JavaVersion? {
250-
val projectSdk = ModuleRootManager.getInstance(model.testModule).sdk
251-
return JavaVersion.tryParse(projectSdk?.versionString)
252-
}
253-
254-
/**
255-
* A panel to inform user about incorrect jdk in project.
256-
*
257-
* Note: this implementation was encouraged by NonModalCommitPromoter.
258-
*/
259-
private inner class SdkNotificationPanel(
260-
private val model: GenerateTestsModel,
261-
private val sdkVersion: JavaVersion?,
262-
) : BorderLayoutPanel() {
263-
init {
264-
border = merge(empty(10), createBorder(JBColor.border(), SideBorder.BOTTOM), true)
265-
266-
addToLeft(JBLabel().apply {
267-
icon = AllIcons.Ide.FatalError
268-
text = if (sdkVersion != null) {
269-
"SDK version $sdkVersion is not supported, use ${JavaSdkVersion.JDK_1_8}"
270-
} else {
271-
"SDK is not defined"
272-
}
273-
})
274-
275-
addToRight(NonOpaquePanel(HorizontalLayout(scale(12))).apply {
276-
add(createConfigureAction())
277-
add(createCloseAction())
278-
})
279-
}
280-
281-
override fun getBackground(): Color? =
282-
EditorColorsManager.getInstance().globalScheme.getColor(HintUtil.ERROR_COLOR_KEY) ?: super.getBackground()
283-
284-
private fun createConfigureAction(): JComponent =
285-
HyperlinkLabel("Setup SDK").apply {
286-
addHyperlinkListener {
287-
val projectStructure = ProjectStructureConfigurable.getInstance(model.project)
288-
val isEdited = ShowSettingsUtil.getInstance().editConfigurable(model.project, projectStructure)
289-
{ projectStructure.select(model.testModule.name, ClasspathEditor.getName(), true) }
290-
291-
val sdkVersion = findSdkVersion()
292-
val sdkFixed = isEdited && sdkVersion?.feature == supportedSdkVersion
293-
if (sdkFixed) {
294-
this@SdkNotificationPanel.isVisible = false
295-
isOKActionEnabled = true
296-
}
297-
}
298-
}
299-
300-
private fun createCloseAction(): JComponent =
301-
InplaceButton(IconButton(null, AllIcons.Actions.Close, AllIcons.Actions.CloseHovered)) {
302-
this@SdkNotificationPanel.isVisible = false
303-
}
304-
}
305-
306218
private fun updateMembersTable() {
307219
val srcClasses = model.srcClasses
308220

0 commit comments

Comments
 (0)