mirror of
https://github.com/Myzel394/NumberHub.git
synced 2025-06-19 08:45:27 +02:00
Format numbers in batch converter
This commit is contained in:
parent
8d62cb0009
commit
1846485ce9
@ -185,6 +185,7 @@ internal class ConverterViewModel @Inject constructor(
|
|||||||
input = calculation?.toPlainString() ?: input.text,
|
input = calculation?.toPlainString() ?: input.text,
|
||||||
scale = prefs.digitsPrecision,
|
scale = prefs.digitsPrecision,
|
||||||
outputFormat = prefs.outputFormat,
|
outputFormat = prefs.outputFormat,
|
||||||
|
formatterSymbols = AllFormatterSymbols.getById(prefs.separator)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
.onEach {
|
.onEach {
|
||||||
|
@ -35,6 +35,8 @@ import androidx.compose.ui.tooling.preview.Preview
|
|||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
import com.sadellie.unitto.core.base.R
|
import com.sadellie.unitto.core.base.R
|
||||||
import com.sadellie.unitto.core.ui.common.UnittoSearchBar
|
import com.sadellie.unitto.core.ui.common.UnittoSearchBar
|
||||||
|
import com.sadellie.unitto.core.ui.common.textfield.FormatterSymbols
|
||||||
|
import com.sadellie.unitto.core.ui.common.textfield.formatExpression
|
||||||
import com.sadellie.unitto.data.common.format
|
import com.sadellie.unitto.data.common.format
|
||||||
import com.sadellie.unitto.data.model.unit.AbstractUnit
|
import com.sadellie.unitto.data.model.unit.AbstractUnit
|
||||||
import com.sadellie.unitto.data.model.unit.DefaultUnit
|
import com.sadellie.unitto.data.model.unit.DefaultUnit
|
||||||
@ -116,7 +118,8 @@ private fun RightSideScreen(
|
|||||||
input = uiState.input,
|
input = uiState.input,
|
||||||
shortName = stringResource(it.shortName),
|
shortName = stringResource(it.shortName),
|
||||||
scale = uiState.scale,
|
scale = uiState.scale,
|
||||||
outputFormat = uiState.outputFormat
|
outputFormat = uiState.outputFormat,
|
||||||
|
formatterSymbols = uiState.formatterSymbols
|
||||||
),
|
),
|
||||||
isFavorite = it.isFavorite,
|
isFavorite = it.isFavorite,
|
||||||
isSelected = it.id == uiState.unitTo?.id,
|
isSelected = it.id == uiState.unitTo?.id,
|
||||||
@ -139,14 +142,18 @@ private fun formatUnitToSupportLabel(
|
|||||||
input: String,
|
input: String,
|
||||||
shortName: String,
|
shortName: String,
|
||||||
scale: Int,
|
scale: Int,
|
||||||
outputFormat: Int
|
outputFormat: Int,
|
||||||
|
formatterSymbols: FormatterSymbols
|
||||||
): String {
|
): String {
|
||||||
try {
|
try {
|
||||||
if ((unitFrom is DefaultUnit) and (unitTo is DefaultUnit)) {
|
if ((unitFrom is DefaultUnit) and (unitTo is DefaultUnit)) {
|
||||||
unitFrom as DefaultUnit
|
unitFrom as DefaultUnit
|
||||||
unitTo as DefaultUnit
|
unitTo as DefaultUnit
|
||||||
|
|
||||||
val conversion = unitFrom.convert(unitTo, BigDecimal(input)).format(scale, outputFormat)
|
val conversion = unitFrom
|
||||||
|
.convert(unitTo, BigDecimal(input))
|
||||||
|
.format(scale, outputFormat)
|
||||||
|
.formatExpression(formatterSymbols)
|
||||||
|
|
||||||
return "$conversion $shortName"
|
return "$conversion $shortName"
|
||||||
}
|
}
|
||||||
|
@ -20,6 +20,7 @@ package com.sadellie.unitto.feature.converter
|
|||||||
|
|
||||||
import androidx.compose.ui.text.input.TextFieldValue
|
import androidx.compose.ui.text.input.TextFieldValue
|
||||||
import com.sadellie.unitto.core.base.OutputFormat
|
import com.sadellie.unitto.core.base.OutputFormat
|
||||||
|
import com.sadellie.unitto.core.ui.common.textfield.FormatterSymbols
|
||||||
import com.sadellie.unitto.data.model.UnitGroup
|
import com.sadellie.unitto.data.model.UnitGroup
|
||||||
import com.sadellie.unitto.data.model.UnitsListSorting
|
import com.sadellie.unitto.data.model.UnitsListSorting
|
||||||
import com.sadellie.unitto.data.model.unit.AbstractUnit
|
import com.sadellie.unitto.data.model.unit.AbstractUnit
|
||||||
@ -35,4 +36,5 @@ internal data class RightSideUIState(
|
|||||||
val input: String = "",
|
val input: String = "",
|
||||||
val scale: Int = 3,
|
val scale: Int = 3,
|
||||||
val outputFormat: Int = OutputFormat.PLAIN,
|
val outputFormat: Int = OutputFormat.PLAIN,
|
||||||
|
val formatterSymbols: FormatterSymbols = FormatterSymbols.Spaces
|
||||||
)
|
)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user