From 02b1533ff4002f1015b9c26cf69256d821ddb6b1 Mon Sep 17 00:00:00 2001 From: Kyren223 Date: Thu, 22 Feb 2024 22:34:10 +0200 Subject: Rebranded to "Trident" --- .../me/kyren223/trident/AppSettingsConfigurable.kt | 50 ++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 src/main/kotlin/me/kyren223/trident/AppSettingsConfigurable.kt (limited to 'src/main/kotlin/me/kyren223/trident/AppSettingsConfigurable.kt') diff --git a/src/main/kotlin/me/kyren223/trident/AppSettingsConfigurable.kt b/src/main/kotlin/me/kyren223/trident/AppSettingsConfigurable.kt new file mode 100644 index 0000000..e04b3b8 --- /dev/null +++ b/src/main/kotlin/me/kyren223/trident/AppSettingsConfigurable.kt @@ -0,0 +1,50 @@ +// Copyright 2000-2022 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. +package me.kyren223.trident + +import com.intellij.openapi.options.Configurable +import com.intellij.openapi.util.NlsContexts.ConfigurableName +import javax.swing.JComponent + +class AppSettingsConfigurable : Configurable { + private var settings: SettingsData? = null + override fun getDisplayName(): @ConfigurableName String { + return "Trident Settings" + } + + override fun createComponent(): JComponent { + settings = SettingsData() + return settings!!.panel + } + + override fun isModified(): Boolean { + val settings = AppSettingsState.instance + if (settings.width != this.settings!!.getWidth()) return true + if (settings.height != this.settings!!.getHeight()) return true + if (settings.fontSize != this.settings!!.getFontSize()) return true + if (settings.enterToSelect != this.settings!!.getEnterToSelect()) return true + return false + } + + override fun apply() { + val settings = AppSettingsState.instance + settings.width = this.settings!!.getWidth() + settings.height = this.settings!!.getHeight() + settings.fontSize = this.settings!!.getFontSize() + settings.enterToSelect = this.settings!!.getEnterToSelect() + } + + override fun reset() { + val settings = AppSettingsState.instance + if (this.settings == null) { + this.settings = SettingsData() + } + this.settings!!.setWidth(settings.width) + this.settings!!.setHeight(settings.height) + this.settings!!.setFontSize(settings.fontSize) + this.settings!!.setEnterToSelect(settings.enterToSelect) + } + + override fun disposeUIResources() { + settings = null + } +} -- cgit v1.3.1