Add child destination in the mapdetail
This commit is contained in:
parent
50b0eb31d4
commit
0e85c343c0
4 changed files with 52 additions and 5 deletions
|
|
@ -18,11 +18,14 @@ class WorldParser @Inject constructor() {
|
|||
val child = line.parse(column = CHILD)
|
||||
val x = line.parseFloat(column = X)
|
||||
val y = line.parseFloat(column = Y)
|
||||
if (child != null && x != null && y != null) {
|
||||
if (child != null) {
|
||||
val world = WorldDto(
|
||||
parent = parent,
|
||||
child = child,
|
||||
position = Offset(x = x, y = y),
|
||||
position = when {
|
||||
x != null && y != null -> Offset(x = x, y = y)
|
||||
else -> Offset.Unspecified
|
||||
},
|
||||
)
|
||||
worlds.add(world)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ import androidx.compose.foundation.layout.Arrangement
|
|||
import androidx.compose.foundation.layout.Box
|
||||
import androidx.compose.foundation.layout.BoxWithConstraints
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.Row
|
||||
import androidx.compose.foundation.layout.fillMaxSize
|
||||
import androidx.compose.foundation.layout.fillMaxWidth
|
||||
import androidx.compose.foundation.layout.heightIn
|
||||
|
|
@ -68,6 +69,7 @@ import com.pixelized.rplexicon.ui.composable.rememberBackgroundGradient
|
|||
import com.pixelized.rplexicon.ui.navigation.LocalScreenNavHost
|
||||
import com.pixelized.rplexicon.ui.navigation.screens.navigateToLocationDetail
|
||||
import com.pixelized.rplexicon.ui.theme.LexiconTheme
|
||||
import com.pixelized.rplexicon.utilitary.LOS_HOLLOW
|
||||
import com.pixelized.rplexicon.utilitary.annotateWithDropCap
|
||||
import com.pixelized.rplexicon.utilitary.extentions.lexicon
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
|
|
@ -359,12 +361,12 @@ private fun LocationContent(
|
|||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.heightIn(min = this@constraint.maxHeight)
|
||||
.padding(all = 16.dp),
|
||||
.padding(vertical = 16.dp),
|
||||
horizontalAlignment = Alignment.CenterHorizontally,
|
||||
verticalArrangement = Arrangement.spacedBy(space = 24.dp),
|
||||
) {
|
||||
Text(
|
||||
textAlign = TextAlign.Center,
|
||||
modifier = Modifier.padding(horizontal = 16.dp),
|
||||
style = MaterialTheme.typography.headlineSmall,
|
||||
text = annotateWithDropCap(
|
||||
text = item.value?.name ?: "",
|
||||
|
|
@ -373,7 +375,9 @@ private fun LocationContent(
|
|||
)
|
||||
item.value?.description?.let {
|
||||
Text(
|
||||
modifier = Modifier.fillMaxWidth(),
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.padding(horizontal = 16.dp),
|
||||
style = MaterialTheme.typography.bodyMedium,
|
||||
text = annotateWithDropCap(
|
||||
text = it,
|
||||
|
|
@ -381,6 +385,44 @@ private fun LocationContent(
|
|||
),
|
||||
)
|
||||
}
|
||||
if (item.value?.marquees?.isNotEmpty() == true) {
|
||||
Column {
|
||||
Text(
|
||||
modifier = Modifier
|
||||
.padding(bottom = 8.dp)
|
||||
.padding(horizontal = 16.dp),
|
||||
style = MaterialTheme.typography.titleMedium,
|
||||
text = annotateWithDropCap(
|
||||
text = stringResource(id = R.string.map_destination),
|
||||
style = MaterialTheme.lexicon.typography.titleMediumDropCap,
|
||||
)
|
||||
)
|
||||
item.value?.marquees?.forEach {
|
||||
Row(
|
||||
modifier = Modifier
|
||||
.clickable { onDestination(it) }
|
||||
.minimumInteractiveComponentSize()
|
||||
.fillMaxWidth()
|
||||
.padding(horizontal = 16.dp),
|
||||
horizontalArrangement = Arrangement.spacedBy(space = 8.dp),
|
||||
) {
|
||||
Text(
|
||||
modifier = Modifier.alignByBaseline(),
|
||||
style = MaterialTheme.typography.bodyMedium,
|
||||
text = LOS_HOLLOW
|
||||
)
|
||||
Text(
|
||||
modifier = Modifier.alignByBaseline(),
|
||||
style = MaterialTheme.typography.bodyMedium,
|
||||
text = annotateWithDropCap(
|
||||
text = it.name,
|
||||
style = MaterialTheme.lexicon.typography.bodyMediumDropCap,
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -88,6 +88,7 @@
|
|||
|
||||
<string name="map_title">Carte</string>
|
||||
<string name="map_label">Coordonnées</string>
|
||||
<string name="map_destination">Destinations :</string>
|
||||
|
||||
<string name="character_sheet_tab_proficiency">Talents</string>
|
||||
<string name="character_sheet_tab_inventory">Inventaire</string>
|
||||
|
|
|
|||
|
|
@ -88,6 +88,7 @@
|
|||
|
||||
<string name="map_title">Map</string>
|
||||
<string name="map_label">Coordinates</string>
|
||||
<string name="map_destination">Destinations:</string>
|
||||
|
||||
<string name="character_sheet_tab_proficiency">Proficiencies</string>
|
||||
<string name="character_sheet_tab_inventory">Inventory</string>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue