From 2db2b47c380727a473abb0147ef99dc21e368b13 Mon Sep 17 00:00:00 2001 From: jonasgaudian <43753916+jonasgaudian@users.noreply.github.com> Date: Tue, 17 Feb 2026 12:26:55 +0100 Subject: [PATCH] add TODO comments for upcoming implementation --- .../view/exercises/StartExerciseScreen.kt | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/eu/gaudian/translator/view/exercises/StartExerciseScreen.kt b/app/src/main/java/eu/gaudian/translator/view/exercises/StartExerciseScreen.kt index f7b14ef..35febb1 100644 --- a/app/src/main/java/eu/gaudian/translator/view/exercises/StartExerciseScreen.kt +++ b/app/src/main/java/eu/gaudian/translator/view/exercises/StartExerciseScreen.kt @@ -89,6 +89,12 @@ fun StartExerciseScreen( } } +//TODO add a settings icon here (top right), this should open a modal bottom sheed with our +// OptionItemSwitch from startscreen +//change the behavior: shuffle cards, default: on +//shuffle languages, default: on +//training mode, default: off +//due today will be place more prominent, not in the bottom sheet @Composable fun TopBarSection(onBackClick: () -> Unit) { Row( @@ -150,6 +156,8 @@ fun SectionHeader(title: String, actionText: String? = null, onActionClick: () - } } +//TODO Get our (exisiting) language pairs from the viewmodel, user should be able to select 0,1 , or several, also order by more popular (amount of flashcard in one language) +// so that more used/popular language pairs appear first @Composable fun LanguagePairSection() { var selectedPair by remember { mutableStateOf(0) } @@ -173,6 +181,7 @@ fun LanguagePairSection() { } } + @Composable fun LanguageChip(text: String, isSelected: Boolean, modifier: Modifier = Modifier, onClick: () -> Unit) { Surface( @@ -198,6 +207,8 @@ fun LanguageChip(text: String, isSelected: Boolean, modifier: Modifier = Modifie } } +//TODO uSe our real categories here +//If there are too many categories (+15) use CategoryDropDown instead of FlowRow @OptIn(ExperimentalLayoutApi::class) @Composable fun CategoriesSection() { @@ -233,9 +244,11 @@ fun CategoriesSection() { } } +//TODO use our real stages here +//Make it a flow row, as all stages in one row does not work @Composable fun DifficultySection() { - val difficulties = listOf("Easy", "Medium", "Hard") + val stages = listOf("New", "Stage 1", "Stage 2", "Stage 3", "Stage 4", "Stage 5", "Learned") var selectedDifficulty by remember { mutableStateOf("Medium") } Column { @@ -249,7 +262,7 @@ fun DifficultySection() { modifier = Modifier.fillMaxSize().padding(4.dp), verticalAlignment = Alignment.CenterVertically ) { - difficulties.forEach { level -> + stages.forEach { level -> val isSelected = selectedDifficulty == level Box( modifier = Modifier @@ -273,6 +286,9 @@ fun DifficultySection() { } } +//TODO add optionitemswitch "Die Today Only", make sure that the amount of cards displayed is correct + +//TODO use the slider from ImportVocabulary dialog here, also with the quick selection of cards @Composable fun NumberOfCardsSection() { var sliderPosition by remember { mutableFloatStateOf(25f) } @@ -321,6 +337,7 @@ fun NumberOfCardsSection() { } } +//TODO use our four question types here, from StartScreen.kt @Composable fun QuestionTypesSection() { var selectedTypes by remember { mutableStateOf(setOf("Multiple Choice", "Spelling")) } @@ -395,7 +412,6 @@ fun QuestionTypeCard(title: String, subtitle: String, icon: ImageVector, isSelec } } } - @Composable fun BottomButtonSection() { Box(