feat: 设置界面增加文件名模板配置项
This commit is contained in:
@@ -60,6 +60,7 @@ fun SettingsScreen(
|
|||||||
var titleStyle by remember { mutableStateOf(WatermarkStyle.Default) }
|
var titleStyle by remember { mutableStateOf(WatermarkStyle.Default) }
|
||||||
var defaultTheme by remember { mutableStateOf("") }
|
var defaultTheme by remember { mutableStateOf("") }
|
||||||
var recorderName by remember { mutableStateOf("") }
|
var recorderName by remember { mutableStateOf("") }
|
||||||
|
var fileNameTemplate by remember { mutableStateOf("{project}_{inspector}_{date}") }
|
||||||
|
|
||||||
// 加载配置
|
// 加载配置
|
||||||
scope.launch {
|
scope.launch {
|
||||||
@@ -80,9 +81,12 @@ fun SettingsScreen(
|
|||||||
scope.launch {
|
scope.launch {
|
||||||
preferencesManager.defaultTheme.collect { defaultTheme = it }
|
preferencesManager.defaultTheme.collect { defaultTheme = it }
|
||||||
}
|
}
|
||||||
scope.launch {
|
scope.launch {
|
||||||
preferencesManager.recorderName.collect { recorderName = it }
|
preferencesManager.recorderName.collect { recorderName = it }
|
||||||
}
|
}
|
||||||
|
scope.launch {
|
||||||
|
preferencesManager.fileNameTemplate.collect { fileNameTemplate = it }
|
||||||
|
}
|
||||||
|
|
||||||
Scaffold(
|
Scaffold(
|
||||||
topBar = {
|
topBar = {
|
||||||
@@ -105,6 +109,7 @@ fun SettingsScreen(
|
|||||||
preferencesManager.setTitleStyle(titleStyle)
|
preferencesManager.setTitleStyle(titleStyle)
|
||||||
preferencesManager.setDefaultTheme(defaultTheme)
|
preferencesManager.setDefaultTheme(defaultTheme)
|
||||||
preferencesManager.setRecorderName(recorderName)
|
preferencesManager.setRecorderName(recorderName)
|
||||||
|
preferencesManager.setFileNameTemplate(fileNameTemplate)
|
||||||
}
|
}
|
||||||
// 返回主界面
|
// 返回主界面
|
||||||
onNavigateBack()
|
onNavigateBack()
|
||||||
@@ -291,7 +296,7 @@ fun SettingsScreen(
|
|||||||
|
|
||||||
Divider()
|
Divider()
|
||||||
|
|
||||||
SettingsItem(title = "记录人信息") {
|
SettingsItem(title = "记录人信息") {
|
||||||
OutlinedTextField(
|
OutlinedTextField(
|
||||||
value = recorderName,
|
value = recorderName,
|
||||||
onValueChange = { scope.launch { preferencesManager.setRecorderName(it) } },
|
onValueChange = { scope.launch { preferencesManager.setRecorderName(it) } },
|
||||||
@@ -300,6 +305,25 @@ fun SettingsScreen(
|
|||||||
singleLine = true
|
singleLine = true
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Divider()
|
||||||
|
|
||||||
|
SettingsItem(title = "文件名模板") {
|
||||||
|
OutlinedTextField(
|
||||||
|
value = fileNameTemplate,
|
||||||
|
onValueChange = { scope.launch { preferencesManager.setFileNameTemplate(it) } },
|
||||||
|
label = { Text("文件名模板") },
|
||||||
|
placeholder = { Text("{project}_{inspector}_{date}") },
|
||||||
|
modifier = Modifier.fillMaxWidth(),
|
||||||
|
singleLine = true
|
||||||
|
)
|
||||||
|
Spacer(modifier = Modifier.height(4.dp))
|
||||||
|
Text(
|
||||||
|
text = "可用占位符:{project} {device} {inspector} {date} {time}",
|
||||||
|
style = MaterialTheme.typography.bodySmall,
|
||||||
|
color = Color.Gray
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Spacer(modifier = Modifier.height(16.dp))
|
Spacer(modifier = Modifier.height(16.dp))
|
||||||
|
|||||||
Reference in New Issue
Block a user