Skip to content

Commit

Permalink
refactor: replace InfoCard Painter with ImageVector icons
Browse files Browse the repository at this point in the history
  • Loading branch information
andrekir committed Oct 22, 2024
1 parent 7289896 commit 551f5c9
Showing 1 changed file with 17 additions and 19 deletions.
36 changes: 17 additions & 19 deletions app/src/main/java/com/geeksville/mesh/ui/NodeDetailsScreen.kt
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,9 @@ import androidx.compose.runtime.LaunchedEffect
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.rememberVectorPainter
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.tooling.preview.PreviewParameter
Expand Down Expand Up @@ -228,7 +226,7 @@ private fun NodeDetailsContent(node: NodeEntity) {

@Composable
private fun InfoCard(
icon: Painter,
icon: ImageVector,
text: String,
value: String,
) {
Expand All @@ -246,7 +244,7 @@ private fun InfoCard(
horizontalAlignment = Alignment.CenterHorizontally,
) {
Icon(
painter = icon,
imageVector = icon,
contentDescription = text,
modifier = Modifier.size(24.dp),
)
Expand Down Expand Up @@ -296,57 +294,57 @@ private fun EnvironmentMetrics(
) {
if (temperature != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.Thermostat),
icon = Icons.Default.Thermostat,
text = "Temperature",
value = temperature.toTempString(isFahrenheit)
)
}
if (relativeHumidity != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.WaterDrop),
icon = Icons.Default.WaterDrop,
text = "Humidity",
value = "%.0f%%".format(relativeHumidity)
)
}
if (temperature != 0f && relativeHumidity != 0f) {
val dewPoint = calculateDewPoint(temperature, relativeHumidity)
InfoCard(
icon = painterResource(R.drawable.ic_outlined_dew_point_24),
icon = ImageVector.vectorResource(R.drawable.ic_outlined_dew_point_24),
text = "Dew Point",
value = dewPoint.toTempString(isFahrenheit)
)
}
if (barometricPressure != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.Speed),
icon = Icons.Default.Speed,
text = "Pressure",
value = "%.0f".format(barometricPressure)
)
}
if (gasResistance != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.BlurOn),
icon = Icons.Default.BlurOn,
text = "Gas Resistance",
value = "%.0f".format(gasResistance)
)
}
if (voltage != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.Bolt),
icon = Icons.Default.Bolt,
text = "Voltage",
value = "%.1fV".format(voltage)
)
}
if (current != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.Power),
icon = Icons.Default.Power,
text = "Current",
value = "%.1fmA".format(current)
)
}
if (iaq != 0) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.Air),
icon = Icons.Default.Air,
text = "IAQ",
value = iaq.toString()
)
Expand Down Expand Up @@ -380,42 +378,42 @@ private fun PowerMetrics(node: NodeEntity) = with(node.powerMetrics) {
) {
if (ch1Voltage != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.Bolt),
icon = Icons.Default.Bolt,
text = "Channel 1",
value = "%.1fV".format(ch1Voltage)
)
}
if (ch1Current != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.Power),
icon = Icons.Default.Power,
text = "Channel 1",
value = "%.1fmA".format(ch1Current)
)
}
if (ch2Voltage != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.Bolt),
icon = Icons.Default.Bolt,
text = "Channel 2",
value = "%.1fV".format(ch2Voltage)
)
}
if (ch2Current != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.Power),
icon = Icons.Default.Power,
text = "Channel 2",
value = "%.1fmA".format(ch2Current)
)
}
if (ch3Voltage != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.Bolt),
icon = Icons.Default.Bolt,
text = "Channel 3",
value = "%.1fV".format(ch3Voltage)
)
}
if (ch3Current != 0f) {
InfoCard(
icon = rememberVectorPainter(Icons.Default.Power),
icon = Icons.Default.Power,
text = "Channel 3",
value = "%.1fmA".format(ch3Current)
)
Expand Down

0 comments on commit 551f5c9

Please sign in to comment.