diff --git a/app/src/main/java/ru/megboyzz/dnevnik/screens/ui/Previews.kt b/app/src/main/java/ru/megboyzz/dnevnik/screens/ui/Previews.kt index 6ba4964..9efc081 100644 --- a/app/src/main/java/ru/megboyzz/dnevnik/screens/ui/Previews.kt +++ b/app/src/main/java/ru/megboyzz/dnevnik/screens/ui/Previews.kt @@ -1,11 +1,11 @@ package ru.megboyzz.dnevnik +import android.util.Log import androidx.compose.animation.ExperimentalAnimationApi import androidx.compose.foundation.BorderStroke import androidx.compose.foundation.background import androidx.compose.foundation.layout.* import androidx.compose.foundation.lazy.grid.GridCells -import androidx.compose.foundation.lazy.grid.LazyHorizontalGrid import androidx.compose.foundation.lazy.grid.LazyVerticalGrid import androidx.compose.foundation.lazy.grid.items import androidx.compose.foundation.rememberScrollState @@ -25,8 +25,10 @@ import ru.megboyzz.dnevnik.screens.ui.calendar.NiceCalendar import ru.megboyzz.dnevnik.screens.ui.piechart.PieChart import ru.megboyzz.dnevnik.screens.ui.piechart.PieChartCard import ru.megboyzz.dnevnik.screens.ui.piechart.PieChartData +import ru.megboyzz.dnevnik.screens.ui.schedule.BaseScheduleCallsCard import ru.megboyzz.dnevnik.screens.ui.schedule.BaseScheduleCard import ru.megboyzz.dnevnik.screens.ui.schedule.BaseScheduleShield +import ru.megboyzz.dnevnik.screens.ui.schedule.CallData import ru.megboyzz.dnevnik.ui.theme.mainBlue import ru.megboyzz.dnevnik.ui.theme.white import java.time.LocalDate @@ -316,7 +318,7 @@ fun ScheduleShieldPrev() { fun ScheduleCardPrev() { val daysOfWeek = daysOfWeek().dropLast(1) - + Log.i("Locale", Locale.getDefault().country) LazyVerticalGrid( columns = GridCells.Fixed(2), verticalArrangement = Arrangement.spacedBy(10.dp), @@ -336,4 +338,19 @@ fun ScheduleCardPrev() { ) } } +} + +@Preview +@Composable +fun ScheduleCallsPrev() { + val calls = listOf( + CallData("9:00", "10:30"), + CallData("10:40", "12:10"), + CallData("12:40", "14:10"), + CallData("14:20", "15:50"), + CallData("18:00", "19:30") + ) + + BaseScheduleCallsCard(callsList = calls) + } \ No newline at end of file diff --git a/app/src/main/java/ru/megboyzz/dnevnik/screens/ui/schedule/ScheduleCalls.kt b/app/src/main/java/ru/megboyzz/dnevnik/screens/ui/schedule/ScheduleCalls.kt new file mode 100644 index 0000000..1127c95 --- /dev/null +++ b/app/src/main/java/ru/megboyzz/dnevnik/screens/ui/schedule/ScheduleCalls.kt @@ -0,0 +1,51 @@ +package ru.megboyzz.dnevnik.screens.ui.schedule + +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.defaultMinSize +import androidx.compose.foundation.layout.padding +import androidx.compose.material.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.unit.dp +import ru.megboyzz.dnevnik.AsString +import ru.megboyzz.dnevnik.R +import ru.megboyzz.dnevnik.screens.ui.BaseCard +import ru.megboyzz.dnevnik.ui.theme.H2 +import ru.megboyzz.dnevnik.ui.theme.dark +import java.util.* + + +//Веремнная сущность для определения пунктов карточки +data class CallData( + val startTime: String, + val endTime: String +) + +@Composable +fun BaseScheduleCallsCard( + callsList: List +) { + BaseCard{ + Column( + verticalArrangement = Arrangement.spacedBy(20.dp), + horizontalAlignment = Alignment.CenterHorizontally, + modifier = Modifier.padding(vertical = 20.dp).defaultMinSize(300.dp) + ) { + for(i in callsList.indices) + Text( + text = "${(i+1).displayTextInRightLocale()} -> ${callsList[i].startTime} - ${callsList[i].endTime}", + style = H2, + color = dark + ) + } + } +} + +@Composable +fun Int.displayTextInRightLocale(): String + = if(Locale.getDefault().country == "RU") + "$this ${R.string.title_lesson.AsString()}" + else + "${R.string.title_lesson.AsString()} $this"