summaryrefslogtreecommitdiff
path: root/src/main/kotlin/me/kyren223/trident/AppSettingsState.kt
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/kotlin/me/kyren223/trident/AppSettingsState.kt')
-rw-r--r--src/main/kotlin/me/kyren223/trident/AppSettingsState.kt30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/main/kotlin/me/kyren223/trident/AppSettingsState.kt b/src/main/kotlin/me/kyren223/trident/AppSettingsState.kt
new file mode 100644
index 0000000..6d61ea0
--- /dev/null
+++ b/src/main/kotlin/me/kyren223/trident/AppSettingsState.kt
@@ -0,0 +1,30 @@
+package me.kyren223.trident
+
+import com.intellij.openapi.application.ApplicationManager
+import com.intellij.openapi.components.PersistentStateComponent
+import com.intellij.openapi.components.State
+import com.intellij.openapi.components.Storage
+import com.intellij.util.xmlb.XmlSerializerUtil
+
+// 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.
+@State(name = "me.kyren223.trident.AppSettingsState", storages = [Storage("SdkSettingsPlugin.xml")])
+class AppSettingsState : PersistentStateComponent<AppSettingsState?> {
+
+ var enterToSelect = true
+ var width = 800
+ var height = 400
+ var fontSize = 20
+
+ override fun getState(): AppSettingsState {
+ return this
+ }
+
+ override fun loadState(state: AppSettingsState) {
+ XmlSerializerUtil.copyBean(state, this)
+ }
+
+ companion object {
+ val instance: AppSettingsState
+ get() = ApplicationManager.getApplication().getService(AppSettingsState::class.java)
+ }
+}