2021-03-01 14:17:06 +00:00
|
|
|
package dev.inmo.kmppscriptbuilder.desktop.views
|
2019-11-20 15:16:34 +00:00
|
|
|
|
|
|
|
import androidx.compose.foundation.layout.*
|
2022-01-04 16:47:37 +00:00
|
|
|
import androidx.compose.material.*
|
2019-11-20 15:16:34 +00:00
|
|
|
import androidx.compose.runtime.*
|
2022-01-04 16:47:37 +00:00
|
|
|
import androidx.compose.ui.Alignment
|
2019-11-20 15:16:34 +00:00
|
|
|
import androidx.compose.ui.Modifier
|
|
|
|
import androidx.compose.ui.unit.dp
|
2021-03-01 14:17:06 +00:00
|
|
|
import dev.inmo.kmppscriptbuilder.core.models.*
|
|
|
|
import dev.inmo.kmppscriptbuilder.desktop.utils.VerticalView
|
2019-11-20 15:16:34 +00:00
|
|
|
|
|
|
|
class ProjectTypeView : VerticalView("Project type") {
|
2022-01-04 16:47:37 +00:00
|
|
|
var projectType by mutableStateOf<ProjectType>(MultiplatformProjectType)
|
|
|
|
|
|
|
|
@Composable
|
|
|
|
private fun addProjectTypeButton(newProjectType: ProjectType) {
|
|
|
|
if (projectType == newProjectType) {
|
|
|
|
Button({}, Modifier.padding(8.dp)) {
|
|
|
|
Text(newProjectType.name)
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
OutlinedButton(
|
|
|
|
{
|
|
|
|
projectType = newProjectType
|
|
|
|
},
|
|
|
|
Modifier.padding(8.dp)
|
|
|
|
) {
|
|
|
|
Text(newProjectType.name)
|
|
|
|
}
|
2019-11-20 15:16:34 +00:00
|
|
|
}
|
2022-01-04 16:47:37 +00:00
|
|
|
}
|
2019-11-20 15:16:34 +00:00
|
|
|
|
|
|
|
override val content: @Composable ColumnScope.() -> Unit = {
|
2022-01-04 16:47:37 +00:00
|
|
|
Row(verticalAlignment = Alignment.CenterVertically) {
|
|
|
|
addProjectTypeButton(MultiplatformProjectType)
|
|
|
|
addProjectTypeButton(JVMProjectType)
|
|
|
|
addProjectTypeButton(JSProjectType)
|
2019-11-20 15:16:34 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|