Correction 1

This commit is contained in:
Chocolaterie
2025-01-21 09:14:54 +01:00
parent da1d0ead3d
commit 4f7b4c2d7d
49 changed files with 1250 additions and 0 deletions

View File

@@ -0,0 +1,77 @@
package com.example.tpfilrouge
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.Button
import androidx.compose.material3.ElevatedButton
import androidx.compose.material3.ElevatedCard
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
import androidx.compose.material3.TextField
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.text.TextStyle
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import com.example.tpfilrouge.ui.theme.TpFilRougeTheme
class LoginActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContent {
LoginActivityPage()
}
}
}
@Composable
fun HintText(label : String){
Text(text = label, style = TextStyle(color = Color.Gray))
}
@Composable
fun EniTextField(label : String){
TextField(value = "", onValueChange = {}, modifier = Modifier.fillMaxWidth(),
placeholder = { HintText(label) })
}
@Composable
fun LoginActivityPage() {
TpFilRougeTheme {
Scaffold(modifier = Modifier.fillMaxSize()) { innerPadding ->
Box(modifier = Modifier.padding(innerPadding)) {
Column(modifier = Modifier.padding(40.dp)) {
Text(
text = "Login", textAlign = TextAlign.Center,
fontSize = 46.sp,
modifier = Modifier
.fillMaxWidth()
.padding(vertical = 80.dp)
)
EniTextField("Email")
EniTextField("Password")
ElevatedButton(onClick = {}, modifier = Modifier.fillMaxWidth()) {
Text(text = "Connexion")
}
}
}
}
}
}
@Preview(showBackground = true)
@Composable
fun LoginActivityPreview() {
LoginActivityPage()
}

View File

@@ -0,0 +1,61 @@
package com.example.tpfilrouge
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.ElevatedButton
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import com.example.tpfilrouge.ui.theme.TpFilRougeTheme
class ResetPasswordActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContent {
ResetPasswordActivityPage()
}
}
}
@Composable
fun ResetPasswordActivityPage() {
TpFilRougeTheme {
Scaffold(modifier = Modifier.fillMaxSize()) { innerPadding ->
Box(modifier = Modifier.padding(innerPadding)) {
Column(modifier = Modifier.padding(40.dp)) {
Text(
text = "Récupération de mot de passe", textAlign = TextAlign.Center,
fontSize = 28.sp,
modifier = Modifier
.fillMaxWidth()
.padding(vertical = 80.dp)
)
EniTextField("Email")
ElevatedButton(onClick = {}, modifier = Modifier.fillMaxWidth()) {
Text(text = "Envoyer le lien de récupération")
}
}
}
}
}
}
@Preview(showBackground = true)
@Composable
fun ResetPasswordActivityPreview() {
ResetPasswordActivityPage()
}

View File

@@ -0,0 +1,66 @@
package com.example.tpfilrouge
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.ElevatedButton
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import com.example.tpfilrouge.ui.theme.TpFilRougeTheme
class SignUpActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContent {
SignUpActivityPage()
}
}
}
@Composable
fun SignUpActivityPage() {
TpFilRougeTheme {
Scaffold(modifier = Modifier.fillMaxSize()) { innerPadding ->
Box(modifier = Modifier.padding(innerPadding)) {
Column(modifier = Modifier.padding(40.dp)) {
Text(
text = "Sign Up", textAlign = TextAlign.Center,
fontSize = 46.sp,
modifier = Modifier
.fillMaxWidth()
.padding(vertical = 80.dp)
)
EniTextField("Pseudo")
EniTextField("Email")
EniTextField("Password")
EniTextField("Password Confirmation")
EniTextField("City Code")
EniTextField("City")
EniTextField("Phone Number")
ElevatedButton(onClick = {}, modifier = Modifier.fillMaxWidth()) {
Text(text = "Sign In")
}
}
}
}
}
}
@Preview(showBackground = true)
@Composable
fun SignUpActivityPreview() {
SignUpActivityPage()
}

View File

@@ -0,0 +1,11 @@
package com.example.tpfilrouge.ui.theme
import androidx.compose.ui.graphics.Color
val Purple80 = Color(0xFFD0BCFF)
val PurpleGrey80 = Color(0xFFCCC2DC)
val Pink80 = Color(0xFFEFB8C8)
val Purple40 = Color(0xFF6650a4)
val PurpleGrey40 = Color(0xFF625b71)
val Pink40 = Color(0xFF7D5260)

View File

@@ -0,0 +1,58 @@
package com.example.tpfilrouge.ui.theme
import android.app.Activity
import android.os.Build
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.darkColorScheme
import androidx.compose.material3.dynamicDarkColorScheme
import androidx.compose.material3.dynamicLightColorScheme
import androidx.compose.material3.lightColorScheme
import androidx.compose.runtime.Composable
import androidx.compose.ui.platform.LocalContext
private val DarkColorScheme = darkColorScheme(
primary = Purple80,
secondary = PurpleGrey80,
tertiary = Pink80
)
private val LightColorScheme = lightColorScheme(
primary = Purple40,
secondary = PurpleGrey40,
tertiary = Pink40
/* Other default colors to override
background = Color(0xFFFFFBFE),
surface = Color(0xFFFFFBFE),
onPrimary = Color.White,
onSecondary = Color.White,
onTertiary = Color.White,
onBackground = Color(0xFF1C1B1F),
onSurface = Color(0xFF1C1B1F),
*/
)
@Composable
fun TpFilRougeTheme(
darkTheme: Boolean = isSystemInDarkTheme(),
// Dynamic color is available on Android 12+
dynamicColor: Boolean = true,
content: @Composable () -> Unit
) {
val colorScheme = when {
dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> {
val context = LocalContext.current
if (darkTheme) dynamicDarkColorScheme(context) else dynamicLightColorScheme(context)
}
darkTheme -> DarkColorScheme
else -> LightColorScheme
}
MaterialTheme(
colorScheme = colorScheme,
typography = Typography,
content = content
)
}

View File

@@ -0,0 +1,34 @@
package com.example.tpfilrouge.ui.theme
import androidx.compose.material3.Typography
import androidx.compose.ui.text.TextStyle
import androidx.compose.ui.text.font.FontFamily
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.sp
// Set of Material typography styles to start with
val Typography = Typography(
bodyLarge = TextStyle(
fontFamily = FontFamily.Default,
fontWeight = FontWeight.Normal,
fontSize = 16.sp,
lineHeight = 24.sp,
letterSpacing = 0.5.sp
)
/* Other default text styles to override
titleLarge = TextStyle(
fontFamily = FontFamily.Default,
fontWeight = FontWeight.Normal,
fontSize = 22.sp,
lineHeight = 28.sp,
letterSpacing = 0.sp
),
labelSmall = TextStyle(
fontFamily = FontFamily.Default,
fontWeight = FontWeight.Medium,
fontSize = 11.sp,
lineHeight = 16.sp,
letterSpacing = 0.5.sp
)
*/
)