1
1
package com.coder.toolbox.views
2
2
3
3
import com.coder.toolbox.CoderToolboxContext
4
- import com.coder.toolbox.services.CoderSettingsService
5
4
import com.jetbrains.toolbox.api.ui.actions.RunnableActionDescription
6
5
import com.jetbrains.toolbox.api.ui.components.CheckboxField
7
6
import com.jetbrains.toolbox.api.ui.components.TextField
@@ -17,28 +16,33 @@ import kotlinx.coroutines.flow.StateFlow
17
16
* TODO@JB: There is no scroll, and our settings do not fit. As a consequence,
18
17
* I have not been able to test this page.
19
18
*/
20
- class CoderSettingsPage (
21
- context : CoderToolboxContext ,
22
- private val settings : CoderSettingsService ,
23
- ) : CoderPage(context, context.i18n.ptrl("Coder Settings "), false ) {
19
+ class CoderSettingsPage (context : CoderToolboxContext ) : CoderPage(context, context.i18n.ptrl("Coder Settings "), false ) {
24
20
// TODO: Copy over the descriptions, holding until I can test this page.
25
21
private val binarySourceField =
26
- TextField (context.i18n.ptrl(" Binary source" ), settings.binarySource, TextType .General )
22
+ TextField (context.i18n.ptrl(" Binary source" ), context. settings.binarySource, TextType .General )
27
23
private val binaryDirectoryField =
28
- TextField (context.i18n.ptrl(" Binary directory" ), settings.binaryDirectory, TextType .General )
24
+ TextField (context.i18n.ptrl(" Binary directory" ), context. settings.binaryDirectory, TextType .General )
29
25
private val dataDirectoryField =
30
- TextField (context.i18n.ptrl(" Data directory" ), settings.dataDirectory, TextType .General )
31
- private val enableDownloadsField = CheckboxField (settings.enableDownloads, context.i18n.ptrl(" Enable downloads" ))
26
+ TextField (context.i18n.ptrl(" Data directory" ), context.settings.dataDirectory, TextType .General )
27
+ private val enableDownloadsField =
28
+ CheckboxField (context.settings.enableDownloads, context.i18n.ptrl(" Enable downloads" ))
32
29
private val enableBinaryDirectoryFallbackField =
33
- CheckboxField (settings.enableBinaryDirectoryFallback, context.i18n.ptrl(" Enable binary directory fallback" ))
30
+ CheckboxField (
31
+ context.settings.enableBinaryDirectoryFallback,
32
+ context.i18n.ptrl(" Enable binary directory fallback" )
33
+ )
34
34
private val headerCommandField =
35
- TextField (context.i18n.ptrl(" Header command" ), settings.headerCommand, TextType .General )
36
- private val tlsCertPathField = TextField (context.i18n.ptrl(" TLS cert path" ), settings.tlsCertPath, TextType .General )
37
- private val tlsKeyPathField = TextField (context.i18n.ptrl(" TLS key path" ), settings.tlsKeyPath, TextType .General )
38
- private val tlsCAPathField = TextField (context.i18n.ptrl(" TLS CA path" ), settings.tlsCAPath, TextType .General )
35
+ TextField (context.i18n.ptrl(" Header command" ), context.settings.headerCommand, TextType .General )
36
+ private val tlsCertPathField =
37
+ TextField (context.i18n.ptrl(" TLS cert path" ), context.settings.tlsCertPath, TextType .General )
38
+ private val tlsKeyPathField =
39
+ TextField (context.i18n.ptrl(" TLS key path" ), context.settings.tlsKeyPath, TextType .General )
40
+ private val tlsCAPathField =
41
+ TextField (context.i18n.ptrl(" TLS CA path" ), context.settings.tlsCAPath, TextType .General )
39
42
private val tlsAlternateHostnameField =
40
- TextField (context.i18n.ptrl(" TLS alternate hostname" ), settings.tlsAlternateHostname, TextType .General )
41
- private val disableAutostartField = CheckboxField (settings.disableAutostart, context.i18n.ptrl(" Disable autostart" ))
43
+ TextField (context.i18n.ptrl(" TLS alternate hostname" ), context.settings.tlsAlternateHostname, TextType .General )
44
+ private val disableAutostartField =
45
+ CheckboxField (context.settings.disableAutostart, context.i18n.ptrl(" Disable autostart" ))
42
46
43
47
override val fields: StateFlow <List <UiField >> = MutableStateFlow (
44
48
listOf (
@@ -59,17 +63,17 @@ class CoderSettingsPage(
59
63
override val actionButtons: StateFlow <List <RunnableActionDescription >> = MutableStateFlow (
60
64
listOf (
61
65
Action (context.i18n.ptrl(" Save" ), closesPage = true ) {
62
- settings.binarySource = binarySourceField.textState.value
63
- settings.binaryDirectory = binaryDirectoryField.textState.value
64
- settings.dataDirectory = dataDirectoryField.textState.value
65
- settings.enableDownloads = enableDownloadsField.checkedState.value
66
- settings.enableBinaryDirectoryFallback = enableBinaryDirectoryFallbackField.checkedState.value
67
- settings.headerCommand = headerCommandField.textState.value
68
- settings.tlsCertPath = tlsCertPathField.textState.value
69
- settings.tlsKeyPath = tlsKeyPathField.textState.value
70
- settings.tlsCAPath = tlsCAPathField.textState.value
71
- settings.tlsAlternateHostname = tlsAlternateHostnameField.textState.value
72
- settings.disableAutostart = disableAutostartField.checkedState.value
66
+ context. settings.binarySource = binarySourceField.textState.value
67
+ context. settings.binaryDirectory = binaryDirectoryField.textState.value
68
+ context. settings.dataDirectory = dataDirectoryField.textState.value
69
+ context. settings.enableDownloads = enableDownloadsField.checkedState.value
70
+ context. settings.enableBinaryDirectoryFallback = enableBinaryDirectoryFallbackField.checkedState.value
71
+ context. settings.headerCommand = headerCommandField.textState.value
72
+ context. settings.tlsCertPath = tlsCertPathField.textState.value
73
+ context. settings.tlsKeyPath = tlsKeyPathField.textState.value
74
+ context. settings.tlsCAPath = tlsCAPathField.textState.value
75
+ context. settings.tlsAlternateHostname = tlsAlternateHostnameField.textState.value
76
+ context. settings.disableAutostart = disableAutostartField.checkedState.value
73
77
},
74
78
)
75
79
)
0 commit comments