Cicero
09/17/2021, 3:32 PMCicero
09/17/2021, 3:32 PMsealed class FitnessRowItem : FitnessItem {
data class TrainingRowItem(
override val isFavorite: Boolean,
val trainingName: String,
private val durationInMinutes: Int,
override val exerciseImplModels: List<ExerciseImpl.Model>,
override val id: Int,
) : FitnessRowItem() {
override val width: Float = 0.8f
override val footerHeight: Float = 1.2f
@Composable
@ReadOnlyComposable
fun durationDescription(): String {
val hours = durationInMinutes / 60
val minutes = durationInMinutes % 60
return if (hours > 0) {
"$hours:$minutes $minutesLocalizedShort"
} else {
"$minutes $minutesLocalized"
}
}
private val minutesLocalizedShort: String
@Composable
@ReadOnlyComposable
get() = stringResource(id = R.string.pager_item_minutes_short)
private val minutesLocalized: String
@Composable
@ReadOnlyComposable
get() = stringResource(id = R.string.pager_item_minutes)
}
data class ExerciseRowItem(
override val isFavorite: Boolean,
override val exerciseImplModels: List<ExerciseImpl.Model>,
override val id: Int = exerciseImplModels.first().id,
) : FitnessRowItem() {
override val width: Float = 0.4f
override val footerHeight: Float = 0.4f
}
}
Michael Paus
09/17/2021, 4:01 PMadjpd
09/17/2021, 4:13 PMCicero
09/17/2021, 4:20 PMCicero
09/17/2021, 4:41 PMMichael Paus
09/17/2021, 5:57 PMAdam Powell
09/17/2021, 8:08 PMAdam Powell
09/17/2021, 8:09 PMAdam Powell
09/17/2021, 8:09 PM