Use display capabilities instead of hardcoded constants

GitOrigin-RevId: f31c0bff76387b9e402cdbe8bed94e35b16969fb
This commit is contained in:
Konstantin Bulenkov
2020-03-21 13:40:16 +00:00
committed by intellij-monorepo-bot
parent 79e97242d9
commit faee42ea61
@@ -6,6 +6,7 @@ import com.intellij.openapi.actionSystem.AnActionEvent
import com.intellij.openapi.project.DumbAwareAction
import com.intellij.ui.components.dialog
import com.intellij.ui.layout.*
import java.awt.GraphicsEnvironment
/**
* @author Konstantin Bulenkov
@@ -13,13 +14,18 @@ import com.intellij.ui.layout.*
class ConfigureCustomSizeAction: DumbAwareAction() {
override fun actionPerformed(e: AnActionEvent) {
val centerPanel = panel {
row("Width:") { intTextField(CustomSizeModel::width, 20, 1..1000).focused() }
row("Height:") { intTextField(CustomSizeModel::height, 20, 1..1000) }
row("Width:") { intTextField(CustomSizeModel::width, 20, 1..maxWidth()).focused() }
row("Height:") { intTextField(CustomSizeModel::height, 20, 1..maxHeight()) }
}
dialog("Default Size", centerPanel, project = e.project).show()
}
private fun maxWidth(): Int = maxWindowBounds().width
private fun maxHeight(): Int = maxWindowBounds().height
private fun maxWindowBounds() = GraphicsEnvironment.getLocalGraphicsEnvironment().maximumWindowBounds
object CustomSizeModel {
var width by propComponentProperty(defaultValue = 640)
var height by propComponentProperty(defaultValue = 300)