Skip to content

Commit

Permalink
FBP-237. Using reflection to access 'older' methods
Browse files Browse the repository at this point in the history
  • Loading branch information
valb3r committed Jul 31, 2021
1 parent 03e8fc9 commit fefc13d
Showing 1 changed file with 16 additions and 6 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package com.valb3r.bpmn.intellij.plugin.core.render

import com.intellij.util.ui.UIUtil
import java.awt.geom.Point2D

interface CanvasConstants {
Expand All @@ -12,9 +11,20 @@ interface CanvasConstants {
}

data class DefaultCanvasConstants(
override val epsilon: Float = 0.1f,
override val anchorAttractionThreshold: Float = 5.0f,
override val baseCursorSize: Float = if (UIUtil.isJreHiDPIEnabled()) 20.0f else 10.0f,
override val defaultCameraOrigin: Point2D.Float = Point2D.Float(0f, 0f),
override val defaultZoomRatio: Float = 1f
override val epsilon: Float = 0.1f,
override val anchorAttractionThreshold: Float = 5.0f,
override val baseCursorSize: Float = if (isJreHiDPIEnabled()) 20.0f else 10.0f,
override val defaultCameraOrigin: Point2D.Float = Point2D.Float(0f, 0f),
override val defaultZoomRatio: Float = 1f
): CanvasConstants

fun isJreHiDPIEnabled(): Boolean {
return try {
val jreHighDpiUtil = Class.forName("com.intellij.ui.JreHiDpiUtil")
jreHighDpiUtil.getMethod("isJreHiDPIEnabled").invoke(null) as Boolean
} catch (ex: Exception) {
// TODO com.intellij.util.ui.UIUtil.isJreHiDPIEnabled is scheduled for removal in 2021.3, keeping it as fallback for 2018.1
val uiUtil = Class.forName("com.intellij.util.ui.UIUtil")
uiUtil.getMethod("isJreHiDPIEnabled").invoke(null) as Boolean
}
}

0 comments on commit fefc13d

Please sign in to comment.