began implementing calendar
This commit is contained in:
parent
5c653f5dce
commit
a1d0e46bfe
4 changed files with 132 additions and 2 deletions
35
DBTApp/.idea/codeStyles/Project.xml
generated
35
DBTApp/.idea/codeStyles/Project.xml
generated
|
|
@ -1,5 +1,40 @@
|
||||||
<component name="ProjectCodeStyleConfiguration">
|
<component name="ProjectCodeStyleConfiguration">
|
||||||
<code_scheme name="Project" version="173">
|
<code_scheme name="Project" version="173">
|
||||||
|
<JavaCodeStyleSettings>
|
||||||
|
<option name="IMPORT_LAYOUT_TABLE">
|
||||||
|
<value>
|
||||||
|
<package name="" withSubpackages="true" static="false" module="true" />
|
||||||
|
<package name="android" withSubpackages="true" static="true" />
|
||||||
|
<package name="androidx" withSubpackages="true" static="true" />
|
||||||
|
<package name="com" withSubpackages="true" static="true" />
|
||||||
|
<package name="junit" withSubpackages="true" static="true" />
|
||||||
|
<package name="net" withSubpackages="true" static="true" />
|
||||||
|
<package name="org" withSubpackages="true" static="true" />
|
||||||
|
<package name="java" withSubpackages="true" static="true" />
|
||||||
|
<package name="javax" withSubpackages="true" static="true" />
|
||||||
|
<package name="" withSubpackages="true" static="true" />
|
||||||
|
<emptyLine />
|
||||||
|
<package name="android" withSubpackages="true" static="false" />
|
||||||
|
<emptyLine />
|
||||||
|
<package name="androidx" withSubpackages="true" static="false" />
|
||||||
|
<emptyLine />
|
||||||
|
<package name="com" withSubpackages="true" static="false" />
|
||||||
|
<emptyLine />
|
||||||
|
<package name="junit" withSubpackages="true" static="false" />
|
||||||
|
<emptyLine />
|
||||||
|
<package name="net" withSubpackages="true" static="false" />
|
||||||
|
<emptyLine />
|
||||||
|
<package name="org" withSubpackages="true" static="false" />
|
||||||
|
<emptyLine />
|
||||||
|
<package name="java" withSubpackages="true" static="false" />
|
||||||
|
<emptyLine />
|
||||||
|
<package name="javax" withSubpackages="true" static="false" />
|
||||||
|
<emptyLine />
|
||||||
|
<package name="" withSubpackages="true" static="false" />
|
||||||
|
<emptyLine />
|
||||||
|
</value>
|
||||||
|
</option>
|
||||||
|
</JavaCodeStyleSettings>
|
||||||
<JetCodeStyleSettings>
|
<JetCodeStyleSettings>
|
||||||
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
|
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
|
||||||
</JetCodeStyleSettings>
|
</JetCodeStyleSettings>
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@ import androidx.navigation.compose.composable
|
||||||
import androidx.navigation.compose.rememberNavController
|
import androidx.navigation.compose.rememberNavController
|
||||||
import de.cdaut.dbtapp.components.BottomNavigationBar
|
import de.cdaut.dbtapp.components.BottomNavigationBar
|
||||||
import de.cdaut.dbtapp.components.SkillsScreen
|
import de.cdaut.dbtapp.components.SkillsScreen
|
||||||
|
import de.cdaut.dbtapp.components.TrackingScreen
|
||||||
import de.cdaut.dbtapp.navigation.Screens
|
import de.cdaut.dbtapp.navigation.Screens
|
||||||
|
|
||||||
class MainActivity : ComponentActivity() {
|
class MainActivity : ComponentActivity() {
|
||||||
|
|
@ -49,7 +50,7 @@ private fun MainContent() {
|
||||||
modifier = Modifier.padding(paddingValues = paddingValues)
|
modifier = Modifier.padding(paddingValues = paddingValues)
|
||||||
) {
|
) {
|
||||||
composable(Screens.Tracking.route) {
|
composable(Screens.Tracking.route) {
|
||||||
Text("Tracking")
|
TrackingScreen()
|
||||||
}
|
}
|
||||||
composable(Screens.Skillslist.route) {
|
composable(Screens.Skillslist.route) {
|
||||||
SkillsScreen()
|
SkillsScreen()
|
||||||
|
|
@ -70,7 +71,6 @@ private fun MainContent() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Preview
|
|
||||||
@Composable
|
@Composable
|
||||||
private fun EmergencyButton() {
|
private fun EmergencyButton() {
|
||||||
FloatingActionButton(
|
FloatingActionButton(
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,79 @@
|
||||||
|
package de.cdaut.dbtapp.components
|
||||||
|
|
||||||
|
import androidx.compose.foundation.background
|
||||||
|
import androidx.compose.foundation.clickable
|
||||||
|
import androidx.compose.foundation.layout.Arrangement
|
||||||
|
import androidx.compose.foundation.layout.Box
|
||||||
|
import androidx.compose.foundation.layout.Column
|
||||||
|
import androidx.compose.foundation.layout.Row
|
||||||
|
import androidx.compose.foundation.layout.fillMaxWidth
|
||||||
|
import androidx.compose.material.icons.Icons
|
||||||
|
import androidx.compose.material.icons.filled.ChevronLeft
|
||||||
|
import androidx.compose.material.icons.filled.ChevronRight
|
||||||
|
import androidx.compose.material3.DatePicker
|
||||||
|
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||||
|
import androidx.compose.material3.Icon
|
||||||
|
import androidx.compose.material3.Text
|
||||||
|
import androidx.compose.material3.rememberDatePickerState
|
||||||
|
import androidx.compose.runtime.Composable
|
||||||
|
import androidx.compose.ui.Alignment
|
||||||
|
import androidx.compose.ui.Modifier
|
||||||
|
import androidx.compose.ui.graphics.Color
|
||||||
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
|
import de.cdaut.dbtapp.util.WeekdayListByLocale
|
||||||
|
|
||||||
|
@Composable
|
||||||
|
fun TrackingScreen() {
|
||||||
|
TopCalendar()
|
||||||
|
}
|
||||||
|
|
||||||
|
@OptIn(ExperimentalMaterial3Api::class)
|
||||||
|
@Preview
|
||||||
|
@Composable
|
||||||
|
private fun DatePickerPreview() {
|
||||||
|
val datePickerState = rememberDatePickerState()
|
||||||
|
DatePicker(datePickerState)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Preview
|
||||||
|
@Composable
|
||||||
|
private fun TopCalendarPrev() {
|
||||||
|
Box(Modifier.background(Color.White)) {
|
||||||
|
TopCalendar()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Composable
|
||||||
|
private fun TopCalendar() {
|
||||||
|
Column {
|
||||||
|
//Top Navigation and display items
|
||||||
|
Row(
|
||||||
|
modifier = Modifier.fillMaxWidth(),
|
||||||
|
verticalAlignment = Alignment.CenterVertically,
|
||||||
|
horizontalArrangement = Arrangement.SpaceBetween
|
||||||
|
) {
|
||||||
|
Text(text = "currentDate")
|
||||||
|
Row {
|
||||||
|
Icon(
|
||||||
|
modifier = Modifier.clickable(onClick = {}),
|
||||||
|
imageVector = Icons.Filled.ChevronLeft,
|
||||||
|
contentDescription = "TODO: Provide"
|
||||||
|
)
|
||||||
|
|
||||||
|
Icon(
|
||||||
|
modifier = Modifier.clickable(onClick = {}),
|
||||||
|
imageVector = Icons.Filled.ChevronRight,
|
||||||
|
contentDescription = "TODO: Provide"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Row(
|
||||||
|
modifier = Modifier.fillMaxWidth(),
|
||||||
|
horizontalArrangement = Arrangement.SpaceBetween
|
||||||
|
) {
|
||||||
|
for (label in WeekdayListByLocale()) {
|
||||||
|
Text(text = label)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
16
DBTApp/app/src/main/java/de/cdaut/dbtapp/util/DateHelpers.kt
Normal file
16
DBTApp/app/src/main/java/de/cdaut/dbtapp/util/DateHelpers.kt
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
package de.cdaut.dbtapp.util
|
||||||
|
|
||||||
|
import java.time.DayOfWeek
|
||||||
|
import java.time.format.TextStyle
|
||||||
|
import java.time.temporal.WeekFields
|
||||||
|
import java.util.Locale
|
||||||
|
|
||||||
|
fun WeekdayListByLocale(): List<String> {
|
||||||
|
val locale = Locale.getDefault()
|
||||||
|
val listOfDayNames = DayOfWeek.entries.map { it.getDisplayName(TextStyle.NARROW, locale).substring(0, 1) }
|
||||||
|
val firstDayOfWeek = WeekFields.of(locale).firstDayOfWeek.ordinal
|
||||||
|
val orderedListOfDayNames =
|
||||||
|
listOfDayNames.subList(firstDayOfWeek, 7) + listOfDayNames.subList(0, firstDayOfWeek)
|
||||||
|
|
||||||
|
return orderedListOfDayNames
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue