From a0c2d349739f68c77abb4b5b2aec312ce5b1f008 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Luc=C3=A0s?= <86352901+LucasVbr@users.noreply.github.com>
Date: Tue, 14 Jan 2025 17:10:50 +0100
Subject: [PATCH] feat: Use ressources to store strings
---
.../univpau/queezer/view/screens/GameScreen.kt | 3 ++-
.../univpau/queezer/view/screens/HomeScreen.kt | 13 ++++++++-----
.../queezer/view/screens/ScoreScreen.kt | 18 +++++++-----------
app/src/main/res/values/strings.xml | 16 +++++++++++-----
4 files changed, 28 insertions(+), 22 deletions(-)
diff --git a/app/src/main/java/fr/univpau/queezer/view/screens/GameScreen.kt b/app/src/main/java/fr/univpau/queezer/view/screens/GameScreen.kt
index d4ac489..9cfdda6 100644
--- a/app/src/main/java/fr/univpau/queezer/view/screens/GameScreen.kt
+++ b/app/src/main/java/fr/univpau/queezer/view/screens/GameScreen.kt
@@ -286,8 +286,9 @@ fun FinishScreen(gameManager: GameManager, context: Context, navController: NavH
.fillMaxWidth()
.padding(16.dp),
horizontalAlignment = Alignment.CenterHorizontally,
+ verticalArrangement = Arrangement.spacedBy(16.dp)
){
- Text("Partie terminée !", fontSize = 24.sp)
+ Text( context.resources.getString(R.string.party_end), fontSize = 24.sp)
Text("Score : ${gameManager.score}", fontSize = 20.sp)
TrackCardItemList(gameManager.playlist.tracks)
diff --git a/app/src/main/java/fr/univpau/queezer/view/screens/HomeScreen.kt b/app/src/main/java/fr/univpau/queezer/view/screens/HomeScreen.kt
index a03d0b5..6adf480 100644
--- a/app/src/main/java/fr/univpau/queezer/view/screens/HomeScreen.kt
+++ b/app/src/main/java/fr/univpau/queezer/view/screens/HomeScreen.kt
@@ -16,6 +16,7 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.layout.ContentScale
+import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
@@ -26,6 +27,8 @@ import fr.univpau.queezer.ui.theme.Purple40
@Composable
fun HomeScreen(navController: NavHostController) {
+ val context = LocalContext.current;
+
Column(
modifier = Modifier
.fillMaxSize()
@@ -42,7 +45,7 @@ fun HomeScreen(navController: NavHostController) {
)
Text(
- text = "Queezer",
+ text = context.resources.getString(R.string.app_name),
fontSize = 32.sp,
fontWeight = FontWeight.Bold,
color = Purple40
@@ -59,7 +62,7 @@ fun HomeScreen(navController: NavHostController) {
.padding(vertical = 8.dp)
) {
Text(
- "Partie rapide",
+ context.resources.getString(R.string.quick_play),
fontSize = 18.sp
)
}
@@ -73,7 +76,7 @@ fun HomeScreen(navController: NavHostController) {
.fillMaxWidth()
.padding(vertical = 8.dp)
) {
- Text("Partie personnalisée", fontSize = 18.sp)
+ Text(context.resources.getString(R.string.custom_play), fontSize = 18.sp)
}
Button(
@@ -83,7 +86,7 @@ fun HomeScreen(navController: NavHostController) {
.fillMaxWidth()
.padding(vertical = 8.dp)
) {
- Text("Paramètres", fontSize = 18.sp)
+ Text( context.resources.getString(R.string.settings), fontSize = 18.sp)
}
Button(
@@ -92,7 +95,7 @@ fun HomeScreen(navController: NavHostController) {
modifier = Modifier
.fillMaxWidth()
) {
- Text("Scores", fontSize = 18.sp)
+ Text(context.resources.getString(R.string.score), fontSize = 18.sp)
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/fr/univpau/queezer/view/screens/ScoreScreen.kt b/app/src/main/java/fr/univpau/queezer/view/screens/ScoreScreen.kt
index ca63fae..ad797ee 100644
--- a/app/src/main/java/fr/univpau/queezer/view/screens/ScoreScreen.kt
+++ b/app/src/main/java/fr/univpau/queezer/view/screens/ScoreScreen.kt
@@ -1,6 +1,5 @@
package fr.univpau.queezer.view.screens
-import android.util.Log
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.ExperimentalLayoutApi
@@ -12,8 +11,6 @@ import androidx.compose.foundation.layout.size
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.Check
-import androidx.compose.material.icons.filled.KeyboardArrowDown
-import androidx.compose.material.icons.filled.KeyboardArrowUp
import androidx.compose.material3.CenterAlignedTopAppBar
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.FilterChip
@@ -48,7 +45,6 @@ import fr.univpau.queezer.data.filterGames
import fr.univpau.queezer.view.components.GameCardItemList
import fr.univpau.queezer.viewmodel.GameViewModel
import java.util.Locale
-import java.util.concurrent.Flow
@OptIn(ExperimentalMaterial3Api::class, ExperimentalLayoutApi::class)
@Composable
@@ -98,11 +94,11 @@ fun ScoreScreen(navController: NavHostController, gameViewModel: GameViewModel)
) {
Column(horizontalAlignment = Alignment.CenterHorizontally) {
Text(text = "$nbGames", fontSize = 24.sp, fontWeight = androidx.compose.ui.text.font.FontWeight.Bold)
- Text(text = "Parties jouées", fontSize = 14.sp)
+ Text(text = context.resources.getString(R.string.games_played), fontSize = 14.sp)
}
Column(horizontalAlignment = Alignment.CenterHorizontally) {
Text(text = "${String.format(Locale.getDefault(), "%.02f", averageSuccessRate)}%", fontSize = 24.sp, fontWeight = androidx.compose.ui.text.font.FontWeight.Bold)
- Text(text = "De réussite", fontSize = 14.sp)
+ Text(text = context.resources.getString(R.string.average_success_rate), fontSize = 14.sp)
}
}
@@ -117,7 +113,7 @@ fun ScoreScreen(navController: NavHostController, gameViewModel: GameViewModel)
modifier = Modifier.fillMaxWidth(),
verticalArrangement = Arrangement.spacedBy(4.dp),
) {
- Text("Mode de jeu", fontSize = 16.sp)
+ Text(context.resources.getString(R.string.game_mode_label), fontSize = 16.sp)
FlowRow(
modifier = Modifier.fillMaxWidth(),
horizontalArrangement = Arrangement.spacedBy(8.dp),
@@ -155,13 +151,13 @@ fun ScoreScreen(navController: NavHostController, gameViewModel: GameViewModel)
modifier = Modifier.fillMaxWidth(),
verticalArrangement = Arrangement.spacedBy(4.dp),
) {
- Text("Filtrer par", fontSize = 16.sp)
+ Text(context.resources.getString(R.string.filter_by), fontSize = 16.sp)
Row(
modifier = Modifier.fillMaxWidth(),
horizontalArrangement = Arrangement.spacedBy(8.dp),
verticalAlignment = Alignment.CenterVertically
) {
- Text("Date")
+ Text(context.resources.getString(R.string.date), fontSize = 14.sp)
Switch(
checked = filter.orderByNbTitle,
@@ -170,7 +166,7 @@ fun ScoreScreen(navController: NavHostController, gameViewModel: GameViewModel)
}
)
- Text("Nombre de titres")
+ Text(context.resources.getString(R.string.title_count), fontSize = 14.sp)
}
}
}
@@ -180,7 +176,7 @@ fun ScoreScreen(navController: NavHostController, gameViewModel: GameViewModel)
modifier = Modifier.fillMaxWidth(),
horizontalAlignment = Alignment.CenterHorizontally
) {
- Text(text = "Aucune partie trouvée... (。•́︿•̀。)", fontSize = 16.sp, color = MaterialTheme.colorScheme.onSurface)
+ Text(text = context.resources.getString(R.string.games_not_found), fontSize = 16.sp, color = MaterialTheme.colorScheme.onSurface)
}
} else {
GameCardItemList(filteredGames)
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 8e3c09e..4c4438b 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -3,8 +3,8 @@
Partie rapide
Partie personnalisée
- Paramètre
- Score
+ Paramètres
+ Scores
URL de la playlist
@@ -29,12 +29,18 @@
Abandonner
Valider
- Nombre de parties jouées
- Taux de réussite moyen
- Filtrer par
+ Partie jouées
+ De réussite
+ Filtrer par
Date
+ Nombre de titres
La playlist n\'as pas été trouvée
Le nombre de titres et trop grand
La playlist est trop petite pour le nombre de titres demandés
+ Aucune partie trouvée... (。•́︿•̀。)
+
+ Partie terminée !
+
+
\ No newline at end of file