Fix missing characterSheet action tooltip.
This commit is contained in:
parent
b230d38805
commit
168ee27826
18 changed files with 215 additions and 185 deletions
|
|
@ -46,7 +46,7 @@ import com.pixelized.desktop.lwa.ui.composable.decoratedBox.DecoratedBox
|
|||
import com.pixelized.desktop.lwa.ui.composable.image.DesaturatedAsyncImage
|
||||
import com.pixelized.desktop.lwa.ui.composable.textfield.LwaTextField
|
||||
import com.pixelized.desktop.lwa.ui.composable.textfield.LwaTextFieldUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout2
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.theme.color.component.LwaTextFieldColors
|
||||
import com.pixelized.desktop.lwa.ui.theme.lwa
|
||||
import com.pixelized.desktop.lwa.utils.rememberSaturationFilter
|
||||
|
|
@ -221,9 +221,8 @@ private fun InventoryDialogItem(
|
|||
item: InventoryDialogUio.Item,
|
||||
onItem: (String) -> Unit,
|
||||
) {
|
||||
TooltipLayout2(
|
||||
TooltipLayout(
|
||||
modifier = modifier,
|
||||
delayMillis = 500,
|
||||
tips = item.tooltips,
|
||||
tooltip = { tooltips ->
|
||||
DecoratedBox {
|
||||
|
|
|
|||
|
|
@ -1,10 +1,8 @@
|
|||
package com.pixelized.desktop.lwa.ui.composable.tooltip
|
||||
|
||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||
import androidx.compose.foundation.TooltipArea
|
||||
import androidx.compose.foundation.TooltipPlacement
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Box
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.padding
|
||||
import androidx.compose.foundation.layout.width
|
||||
|
|
@ -13,56 +11,70 @@ import androidx.compose.material.MaterialTheme
|
|||
import androidx.compose.material.Surface
|
||||
import androidx.compose.material.Text
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.Immutable
|
||||
import androidx.compose.runtime.Stable
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.unit.Dp
|
||||
import androidx.compose.ui.unit.DpOffset
|
||||
import androidx.compose.ui.unit.dp
|
||||
|
||||
class TooltipUio(
|
||||
@Stable
|
||||
class BasicTooltipUio(
|
||||
val title: String?,
|
||||
val description: String,
|
||||
)
|
||||
|
||||
@Immutable
|
||||
object BasicTooltipDefault {
|
||||
@Stable
|
||||
val delay: Int = 500
|
||||
|
||||
@Stable
|
||||
val elevation: Dp = 2.dp
|
||||
|
||||
@OptIn(ExperimentalFoundationApi::class)
|
||||
@Stable
|
||||
val placement: TooltipPlacement = TooltipPlacement.CursorPoint(DpOffset(0.dp, 16.dp))
|
||||
}
|
||||
|
||||
@OptIn(ExperimentalFoundationApi::class)
|
||||
@Composable
|
||||
fun TooltipLayout(
|
||||
fun BasicTooltipLayout(
|
||||
modifier: Modifier = Modifier,
|
||||
delayMillis: Int = 1000,
|
||||
tooltipPlacement: TooltipPlacement = TooltipPlacement.CursorPoint(DpOffset(0.dp, 16.dp)),
|
||||
tooltip: TooltipUio?,
|
||||
delayMillis: Int = BasicTooltipDefault.delay,
|
||||
elevation: Dp = BasicTooltipDefault.elevation,
|
||||
tooltipPlacement: TooltipPlacement = BasicTooltipDefault.placement,
|
||||
tooltip: BasicTooltipUio?,
|
||||
content: @Composable () -> Unit,
|
||||
) {
|
||||
when (tooltip) {
|
||||
null -> Box(
|
||||
modifier = modifier,
|
||||
content = { content() },
|
||||
)
|
||||
|
||||
else -> TooltipArea(
|
||||
modifier = modifier,
|
||||
tooltip = {
|
||||
Tooltip(
|
||||
modifier = Modifier.width(width = 448.dp),
|
||||
tooltip = tooltip,
|
||||
)
|
||||
},
|
||||
content = content,
|
||||
delayMillis = delayMillis,
|
||||
tooltipPlacement = tooltipPlacement,
|
||||
)
|
||||
}
|
||||
TooltipLayout(
|
||||
modifier = modifier,
|
||||
delayMillis = delayMillis,
|
||||
tooltipPlacement = tooltipPlacement,
|
||||
tips = tooltip,
|
||||
tooltip = {
|
||||
BasicTooltip(
|
||||
modifier = Modifier.width(width = 448.dp),
|
||||
elevation = elevation,
|
||||
tooltip = it,
|
||||
)
|
||||
},
|
||||
content = content,
|
||||
)
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun Tooltip(
|
||||
private fun BasicTooltip(
|
||||
modifier: Modifier = Modifier,
|
||||
tooltip: TooltipUio,
|
||||
elevation: Dp = BasicTooltipDefault.elevation,
|
||||
tooltip: BasicTooltipUio,
|
||||
) {
|
||||
Surface(
|
||||
modifier = Modifier.padding(16.dp).then(other = modifier),
|
||||
color = MaterialTheme.colors.surface,
|
||||
elevation = 2.dp,
|
||||
elevation = elevation,
|
||||
shape = remember { RoundedCornerShape(4.dp) }
|
||||
) {
|
||||
Column(
|
||||
|
|
@ -6,18 +6,29 @@ import androidx.compose.foundation.TooltipPlacement
|
|||
import androidx.compose.foundation.layout.Box
|
||||
import androidx.compose.foundation.layout.width
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.Immutable
|
||||
import androidx.compose.runtime.Stable
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.unit.DpOffset
|
||||
import androidx.compose.ui.unit.dp
|
||||
|
||||
@Immutable
|
||||
object TooltipDefault {
|
||||
@Stable
|
||||
val delay: Int = 500
|
||||
|
||||
@OptIn(ExperimentalFoundationApi::class)
|
||||
@Stable
|
||||
val placement: TooltipPlacement = TooltipPlacement.CursorPoint(DpOffset(0.dp, 16.dp))
|
||||
}
|
||||
|
||||
@Composable
|
||||
@OptIn(ExperimentalFoundationApi::class)
|
||||
fun <T> TooltipLayout2(
|
||||
fun <T> TooltipLayout(
|
||||
modifier: Modifier = Modifier,
|
||||
delayMillis: Int = 1000,
|
||||
tooltipPlacement: TooltipPlacement = TooltipPlacement.CursorPoint(DpOffset(0.dp, 16.dp)),
|
||||
delayMillis: Int = TooltipDefault.delay,
|
||||
tooltipPlacement: TooltipPlacement = TooltipDefault.placement,
|
||||
tips: T? = null,
|
||||
tooltip: (@Composable (tips: T) -> Unit)? = null,
|
||||
content: @Composable () -> Unit,
|
||||
|
|
@ -40,8 +40,8 @@ import androidx.compose.ui.text.style.TextOverflow
|
|||
import androidx.compose.ui.unit.Dp
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.pixelized.desktop.lwa.ui.composable.shapes.ArrowShape
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.overlay.roll.RollAction
|
||||
import com.pixelized.desktop.lwa.ui.screen.campaign.player.detail.DetailPanelUio
|
||||
import com.pixelized.desktop.lwa.ui.theme.lwa
|
||||
|
|
@ -75,26 +75,26 @@ data class CharacterDetailHeaderUio(
|
|||
val name: String,
|
||||
val level: Int,
|
||||
val hp: String,
|
||||
val hpTooltip: TooltipUio,
|
||||
val hpTooltip: BasicTooltipUio,
|
||||
val maxHp: String,
|
||||
val pp: String,
|
||||
val ppTooltip: TooltipUio,
|
||||
val ppTooltip: BasicTooltipUio,
|
||||
val maxPp: String,
|
||||
val mov: String,
|
||||
val movTooltip: TooltipUio,
|
||||
val movTooltip: BasicTooltipUio,
|
||||
val armor: String,
|
||||
val armorTooltip: TooltipUio,
|
||||
val armorTooltip: BasicTooltipUio,
|
||||
val bonus: String,
|
||||
val bonusTooltip: TooltipUio,
|
||||
val bonusTooltip: BasicTooltipUio,
|
||||
val grow: String,
|
||||
val growTooltip: TooltipUio,
|
||||
val growTooltip: BasicTooltipUio,
|
||||
val learn: String,
|
||||
val learnTooltip: TooltipUio,
|
||||
val learnTooltip: BasicTooltipUio,
|
||||
val reflex: String,
|
||||
val reflexTooltip: TooltipUio,
|
||||
val reflexTooltip: BasicTooltipUio,
|
||||
val reflexRoll: RollAction.Uio,
|
||||
val initiative: String,
|
||||
val initiativeTooltip: TooltipUio,
|
||||
val initiativeTooltip: BasicTooltipUio,
|
||||
)
|
||||
|
||||
@Stable
|
||||
|
|
@ -261,7 +261,7 @@ fun CharacterDetailHeader(
|
|||
),
|
||||
horizontalArrangement = Arrangement.spacedBy(space = 10.dp),
|
||||
) {
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = header.value?.hpTooltip,
|
||||
) {
|
||||
Row(
|
||||
|
|
@ -290,7 +290,7 @@ fun CharacterDetailHeader(
|
|||
)
|
||||
}
|
||||
}
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = header.value?.ppTooltip,
|
||||
) {
|
||||
Row(
|
||||
|
|
@ -322,7 +322,7 @@ fun CharacterDetailHeader(
|
|||
|
||||
Spacer(modifier = Modifier.weight(1f))
|
||||
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = header.value?.reflexTooltip,
|
||||
) {
|
||||
Row(
|
||||
|
|
@ -346,7 +346,7 @@ fun CharacterDetailHeader(
|
|||
)
|
||||
}
|
||||
}
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = header.value?.initiativeTooltip,
|
||||
) {
|
||||
Row(
|
||||
|
|
@ -366,7 +366,7 @@ fun CharacterDetailHeader(
|
|||
)
|
||||
}
|
||||
}
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = header.value?.movTooltip,
|
||||
) {
|
||||
Row(
|
||||
|
|
@ -391,7 +391,7 @@ fun CharacterDetailHeader(
|
|||
)
|
||||
}
|
||||
}
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = header.value?.armorTooltip,
|
||||
) {
|
||||
Row(
|
||||
|
|
@ -411,7 +411,7 @@ fun CharacterDetailHeader(
|
|||
)
|
||||
}
|
||||
}
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = header.value?.bonusTooltip,
|
||||
) {
|
||||
Row(
|
||||
|
|
@ -431,7 +431,7 @@ fun CharacterDetailHeader(
|
|||
)
|
||||
}
|
||||
}
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = header.value?.growTooltip,
|
||||
) {
|
||||
Row(
|
||||
|
|
@ -451,7 +451,7 @@ fun CharacterDetailHeader(
|
|||
)
|
||||
}
|
||||
}
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = header.value?.learnTooltip,
|
||||
) {
|
||||
Row(
|
||||
|
|
|
|||
|
|
@ -4,13 +4,12 @@ import com.pixelized.desktop.lwa.repository.alteration.AlterationRepository
|
|||
import com.pixelized.desktop.lwa.repository.characterSheet.CharacterSheetRepository
|
||||
import com.pixelized.desktop.lwa.repository.settings.SettingsRepository
|
||||
import com.pixelized.desktop.lwa.repository.settings.model.Settings
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.overlay.roll.RollAction
|
||||
import com.pixelized.desktop.lwa.ui.screen.campaign.player.detail.DetailPanelUio
|
||||
import com.pixelized.shared.lwa.model.AlteredCharacterSheetFactory
|
||||
import com.pixelized.shared.lwa.model.alteration.FieldAlteration
|
||||
import com.pixelized.shared.lwa.model.characterSheet.CharacterSheet
|
||||
import com.pixelized.shared.lwa.usecase.ExpressionUseCase
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.flow.SharingStarted
|
||||
import kotlinx.coroutines.flow.StateFlow
|
||||
|
|
@ -96,44 +95,44 @@ class CharacterDetailHeaderFactory(
|
|||
name = alteredCharacterSheet.name,
|
||||
level = alteredCharacterSheet.level,
|
||||
hp = "${maxHp - alteredCharacterSheet.damage}",
|
||||
hpTooltip = TooltipUio(
|
||||
hpTooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__hit_point),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__hit_point)
|
||||
),
|
||||
maxHp = "$maxHp",
|
||||
pp = "${maxPp - alteredCharacterSheet.fatigue}",
|
||||
ppTooltip = TooltipUio(
|
||||
ppTooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__power_point),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__power_point)
|
||||
),
|
||||
maxPp = "$maxPp",
|
||||
mov = "${alteredCharacterSheet.movement}",
|
||||
movTooltip = TooltipUio(
|
||||
movTooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__movement),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__movement)
|
||||
),
|
||||
armor = "${alteredCharacterSheet.armor}",
|
||||
armorTooltip = TooltipUio(
|
||||
armorTooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__armor),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__armor)
|
||||
),
|
||||
bonus = alteredCharacterSheet.damageBonus,
|
||||
bonusTooltip = TooltipUio(
|
||||
bonusTooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__damage_bonus),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__bonus_damage)
|
||||
),
|
||||
grow = "${alteredCharacterSheet.hpGrow}",
|
||||
growTooltip = TooltipUio(
|
||||
growTooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__hp_grow),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__hp_grow)
|
||||
),
|
||||
learn = "${alteredCharacterSheet.learning}",
|
||||
learnTooltip = TooltipUio(
|
||||
learnTooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__learning),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__learning)
|
||||
),
|
||||
reflex = "${alteredCharacterSheet.reflex}",
|
||||
reflexTooltip = TooltipUio(
|
||||
reflexTooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__reflex),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__reflex)
|
||||
),
|
||||
|
|
@ -144,7 +143,7 @@ class CharacterDetailHeaderFactory(
|
|||
rollSuccessValue = alteredCharacterSheet.reflex * 5,
|
||||
),
|
||||
initiative = "${alteredCharacterSheet.initiative}",
|
||||
initiativeTooltip = TooltipUio(
|
||||
initiativeTooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__initiative),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__initiative)
|
||||
),
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ import coil3.compose.AsyncImage
|
|||
import coil3.request.ImageRequest
|
||||
import com.pixelized.desktop.lwa.ui.composable.decoratedBox.DecoratedBox
|
||||
import com.pixelized.desktop.lwa.ui.composable.image.DesaturatedAsyncImage
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout2
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.theme.lwa
|
||||
import com.pixelized.desktop.lwa.utils.extention.calculatePaddings
|
||||
import com.pixelized.desktop.lwa.utils.extention.ribbon
|
||||
|
|
@ -109,9 +109,8 @@ fun InventoryItem(
|
|||
val (start, top, end, bottom) = padding.calculatePaddings()
|
||||
val (_, toolTop, toolEnd, _) = toolTipPaddings.calculatePaddings()
|
||||
|
||||
TooltipLayout2(
|
||||
TooltipLayout(
|
||||
modifier = modifier,
|
||||
delayMillis = 500,
|
||||
tips = item.tooltips,
|
||||
tooltip = { tooltips ->
|
||||
DecoratedBox {
|
||||
|
|
|
|||
|
|
@ -2,8 +2,7 @@ package com.pixelized.desktop.lwa.ui.screen.campaign.player.detail.sheet
|
|||
|
||||
import com.pixelized.desktop.lwa.repository.alteration.AlterationRepository
|
||||
import com.pixelized.desktop.lwa.repository.characterSheet.CharacterSheetRepository
|
||||
import com.pixelized.desktop.lwa.repository.settings.SettingsRepository
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.overlay.roll.RollAction
|
||||
import com.pixelized.desktop.lwa.ui.screen.campaign.player.detail.sheet.item.CharacterDetailSheetActionUio
|
||||
import com.pixelized.desktop.lwa.ui.screen.campaign.player.detail.sheet.item.CharacterDetailSheetCharacteristicUio
|
||||
|
|
@ -81,7 +80,7 @@ class CharacterDetailSheetFactory(
|
|||
CharacterDetailSheetCharacteristicUio(
|
||||
label = getString(Res.string.character_sheet__characteristics__str),
|
||||
value = "${alteredCharacterSheet.strength}",
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__str),
|
||||
description = getString(Res.string.tooltip__characteristics__strength),
|
||||
),
|
||||
|
|
@ -95,7 +94,7 @@ class CharacterDetailSheetFactory(
|
|||
CharacterDetailSheetCharacteristicUio(
|
||||
label = getString(Res.string.character_sheet__characteristics__dex),
|
||||
value = "${alteredCharacterSheet.dexterity}",
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__dex),
|
||||
description = getString(Res.string.tooltip__characteristics__dexterity),
|
||||
),
|
||||
|
|
@ -109,7 +108,7 @@ class CharacterDetailSheetFactory(
|
|||
CharacterDetailSheetCharacteristicUio(
|
||||
label = getString(Res.string.character_sheet__characteristics__con),
|
||||
value = "${alteredCharacterSheet.constitution}",
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__con),
|
||||
description = getString(Res.string.tooltip__characteristics__constitution),
|
||||
),
|
||||
|
|
@ -123,7 +122,7 @@ class CharacterDetailSheetFactory(
|
|||
CharacterDetailSheetCharacteristicUio(
|
||||
label = getString(Res.string.character_sheet__characteristics__hei),
|
||||
value = "${alteredCharacterSheet.height}",
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__hei),
|
||||
description = getString(Res.string.tooltip__characteristics__height),
|
||||
),
|
||||
|
|
@ -137,7 +136,7 @@ class CharacterDetailSheetFactory(
|
|||
CharacterDetailSheetCharacteristicUio(
|
||||
label = getString(Res.string.character_sheet__characteristics__int),
|
||||
value = "${alteredCharacterSheet.intelligence}",
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__int),
|
||||
description = getString(Res.string.tooltip__characteristics__intelligence),
|
||||
),
|
||||
|
|
@ -151,7 +150,7 @@ class CharacterDetailSheetFactory(
|
|||
CharacterDetailSheetCharacteristicUio(
|
||||
label = getString(Res.string.character_sheet__characteristics__pow),
|
||||
value = "${alteredCharacterSheet.power}",
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__pow),
|
||||
description = getString(Res.string.tooltip__characteristics__power),
|
||||
),
|
||||
|
|
@ -165,7 +164,7 @@ class CharacterDetailSheetFactory(
|
|||
CharacterDetailSheetCharacteristicUio(
|
||||
label = getString(Res.string.character_sheet__characteristics__cha),
|
||||
value = "${alteredCharacterSheet.charisma}",
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__cha),
|
||||
description = getString(Res.string.tooltip__characteristics__charisma),
|
||||
),
|
||||
|
|
@ -191,7 +190,7 @@ class CharacterDetailSheetFactory(
|
|||
used = skill.used,
|
||||
occupation = skill.occupation,
|
||||
tooltips = skill.description?.let {
|
||||
TooltipUio(
|
||||
BasicTooltipUio(
|
||||
title = skill.label,
|
||||
description = it,
|
||||
)
|
||||
|
|
@ -218,7 +217,7 @@ class CharacterDetailSheetFactory(
|
|||
used = skill.used,
|
||||
occupation = skill.occupation,
|
||||
tooltips = skill.description?.let {
|
||||
TooltipUio(
|
||||
BasicTooltipUio(
|
||||
title = skill.label,
|
||||
description = it,
|
||||
)
|
||||
|
|
@ -245,7 +244,7 @@ class CharacterDetailSheetFactory(
|
|||
used = skill.used,
|
||||
occupation = skill.occupation,
|
||||
tooltips = skill.description?.let {
|
||||
TooltipUio(
|
||||
BasicTooltipUio(
|
||||
title = skill.label,
|
||||
description = it,
|
||||
)
|
||||
|
|
@ -263,7 +262,7 @@ class CharacterDetailSheetFactory(
|
|||
actionId = action.id,
|
||||
label = action.label,
|
||||
tooltips = action.description?.let {
|
||||
TooltipUio(
|
||||
BasicTooltipUio(
|
||||
title = action.label,
|
||||
description = it,
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.pixelized.desktop.lwa.ui.screen.campaign.player.detail.sheet.item
|
||||
|
||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||
import androidx.compose.foundation.clickable
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.PaddingValues
|
||||
|
|
@ -10,13 +11,16 @@ import androidx.compose.material.Icon
|
|||
import androidx.compose.material.MaterialTheme
|
||||
import androidx.compose.material.Text
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.Immutable
|
||||
import androidx.compose.runtime.Stable
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.text.style.TextOverflow
|
||||
import androidx.compose.ui.unit.Dp
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.pixelized.desktop.lwa.ui.composable.shapes.MasteryShape
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.overlay.roll.RollAction
|
||||
import lwacharactersheet.composeapp.generated.resources.Res
|
||||
import lwacharactersheet.composeapp.generated.resources.ic_d20_24dp
|
||||
|
|
@ -26,46 +30,57 @@ import org.jetbrains.compose.resources.painterResource
|
|||
data class CharacterDetailSheetActionUio(
|
||||
val actionId: String,
|
||||
val label: String,
|
||||
val tooltips: TooltipUio?,
|
||||
val tooltips: BasicTooltipUio?,
|
||||
val roll: RollAction.Uio,
|
||||
)
|
||||
|
||||
@Immutable
|
||||
data object CharacterDetailSheetActionDefault {
|
||||
@Stable
|
||||
val paddingValues = PaddingValues(start = 10.dp, end = 9.dp, top = 6.dp, bottom = 6.dp)
|
||||
|
||||
@Stable
|
||||
val spacing: Dp = 4.dp
|
||||
}
|
||||
|
||||
@OptIn(ExperimentalFoundationApi::class)
|
||||
@Composable
|
||||
fun CharacterDetailSheetAction(
|
||||
modifier: Modifier = Modifier,
|
||||
paddingValues: PaddingValues = PaddingValues(
|
||||
start = 10.dp,
|
||||
end = 9.dp,
|
||||
top = 6.dp,
|
||||
bottom = 6.dp
|
||||
),
|
||||
paddingValues: PaddingValues = CharacterDetailSheetActionDefault.paddingValues,
|
||||
spacing: Dp = CharacterDetailSheetActionDefault.spacing,
|
||||
action: CharacterDetailSheetActionUio,
|
||||
onClick: (CharacterDetailSheetActionUio) -> Unit,
|
||||
) {
|
||||
Row(
|
||||
modifier = Modifier
|
||||
.clickable(onClick = { onClick(action) })
|
||||
.padding(paddingValues = paddingValues)
|
||||
.then(other = modifier),
|
||||
horizontalArrangement = Arrangement.spacedBy(space = 4.dp),
|
||||
verticalAlignment = Alignment.CenterVertically,
|
||||
) {
|
||||
MasteryShape(
|
||||
modifier = Modifier.padding(top = 4.dp, end = 2.dp),
|
||||
multiplier = 2,
|
||||
)
|
||||
Text(
|
||||
modifier = Modifier.weight(1f),
|
||||
style = MaterialTheme.typography.body1,
|
||||
overflow = TextOverflow.Ellipsis,
|
||||
maxLines = 1,
|
||||
text = action.label,
|
||||
)
|
||||
Icon(
|
||||
modifier = Modifier.size(size = 24.dp),
|
||||
painter = painterResource(Res.drawable.ic_d20_24dp),
|
||||
tint = MaterialTheme.colors.primary,
|
||||
contentDescription = null,
|
||||
)
|
||||
}
|
||||
BasicTooltipLayout(
|
||||
tooltip = action.tooltips,
|
||||
content = {
|
||||
Row(
|
||||
modifier = Modifier
|
||||
.clickable(onClick = { onClick(action) })
|
||||
.padding(paddingValues = paddingValues)
|
||||
.then(other = modifier),
|
||||
horizontalArrangement = Arrangement.spacedBy(space = spacing),
|
||||
verticalAlignment = Alignment.CenterVertically,
|
||||
) {
|
||||
MasteryShape(
|
||||
modifier = Modifier.padding(top = 4.dp, end = 2.dp),
|
||||
multiplier = 2,
|
||||
)
|
||||
Text(
|
||||
modifier = Modifier.weight(1f),
|
||||
style = MaterialTheme.typography.body1,
|
||||
overflow = TextOverflow.Ellipsis,
|
||||
maxLines = 1,
|
||||
text = action.label,
|
||||
)
|
||||
Icon(
|
||||
modifier = Modifier.size(size = 24.dp),
|
||||
painter = painterResource(Res.drawable.ic_d20_24dp),
|
||||
tint = MaterialTheme.colors.primary,
|
||||
contentDescription = null,
|
||||
)
|
||||
}
|
||||
}
|
||||
)
|
||||
}
|
||||
|
|
@ -3,7 +3,6 @@ package com.pixelized.desktop.lwa.ui.screen.campaign.player.detail.sheet.item
|
|||
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||
import androidx.compose.foundation.clickable
|
||||
import androidx.compose.foundation.layout.PaddingValues
|
||||
import androidx.compose.foundation.layout.padding
|
||||
import androidx.compose.material.MaterialTheme
|
||||
import androidx.compose.material.Text
|
||||
import androidx.compose.runtime.Composable
|
||||
|
|
@ -14,15 +13,15 @@ import androidx.compose.ui.Modifier
|
|||
import androidx.compose.ui.text.style.TextOverflow
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.pixelized.desktop.lwa.ui.composable.decoratedBox.DecoratedBox
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.overlay.roll.RollAction
|
||||
|
||||
@Stable
|
||||
data class CharacterDetailSheetCharacteristicUio(
|
||||
val value: String,
|
||||
val label: String,
|
||||
val tooltips: TooltipUio,
|
||||
val tooltips: BasicTooltipUio,
|
||||
val roll: RollAction.Uio,
|
||||
)
|
||||
|
||||
|
|
@ -34,7 +33,7 @@ fun CharacterDetailSheetCharacteristic(
|
|||
characteristic: CharacterDetailSheetCharacteristicUio,
|
||||
onClick: () -> Unit,
|
||||
) {
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = characteristic.tooltips,
|
||||
content = {
|
||||
DecoratedBox(
|
||||
|
|
|
|||
|
|
@ -19,8 +19,8 @@ import androidx.compose.ui.text.font.FontWeight
|
|||
import androidx.compose.ui.text.style.TextOverflow
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.pixelized.desktop.lwa.ui.composable.shapes.MasteryShape
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.overlay.roll.RollAction
|
||||
|
||||
@Stable
|
||||
|
|
@ -30,7 +30,7 @@ data class CharacterDetailSheetSkillUio(
|
|||
val value: String,
|
||||
val used: Boolean,
|
||||
val occupation: Boolean,
|
||||
val tooltips: TooltipUio?,
|
||||
val tooltips: BasicTooltipUio?,
|
||||
val roll: RollAction.Uio,
|
||||
)
|
||||
|
||||
|
|
@ -48,7 +48,7 @@ fun CharacterDetailSheetSkill(
|
|||
onSkill: (CharacterDetailSheetSkillUio) -> Unit,
|
||||
onUse: (CharacterDetailSheetSkillUio) -> Unit,
|
||||
) {
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = skill.tooltips,
|
||||
content = {
|
||||
Row(
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
package com.pixelized.desktop.lwa.ui.screen.characterSheet.detail
|
||||
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.overlay.roll.RollAction
|
||||
import com.pixelized.desktop.lwa.ui.screen.characterSheet.detail.CharacterSheetPageUio.Characteristic
|
||||
import com.pixelized.desktop.lwa.ui.screen.characterSheet.detail.CharacterSheetPageUio.Node
|
||||
|
|
@ -66,7 +66,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__str),
|
||||
value = "${alteredCharacterSheet.strength}",
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__str),
|
||||
description = getString(Res.string.tooltip__characteristics__strength),
|
||||
),
|
||||
|
|
@ -82,7 +82,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__dex),
|
||||
value = "${alteredCharacterSheet.dexterity}",
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__dex),
|
||||
description = getString(Res.string.tooltip__characteristics__dexterity),
|
||||
),
|
||||
|
|
@ -98,7 +98,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__con),
|
||||
value = "${alteredCharacterSheet.constitution}",
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__con),
|
||||
description = getString(Res.string.tooltip__characteristics__constitution),
|
||||
),
|
||||
|
|
@ -114,7 +114,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__hei),
|
||||
value = "${alteredCharacterSheet.height}",
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__hei),
|
||||
description = getString(Res.string.tooltip__characteristics__height),
|
||||
),
|
||||
|
|
@ -130,7 +130,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__int),
|
||||
value = "${alteredCharacterSheet.intelligence}",
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__int),
|
||||
description = getString(Res.string.tooltip__characteristics__intelligence),
|
||||
),
|
||||
|
|
@ -146,7 +146,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__pow),
|
||||
value = "${alteredCharacterSheet.power}",
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__pow),
|
||||
description = getString(Res.string.tooltip__characteristics__power),
|
||||
),
|
||||
|
|
@ -162,7 +162,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__cha),
|
||||
value = "${alteredCharacterSheet.charisma}",
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__cha),
|
||||
description = getString(Res.string.tooltip__characteristics__charisma),
|
||||
),
|
||||
|
|
@ -180,7 +180,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__sub_characteristics__movement),
|
||||
value = "${alteredCharacterSheet.movement}",
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__movement),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__movement),
|
||||
),
|
||||
|
|
@ -191,7 +191,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__sub_characteristics__hit_point),
|
||||
value = alteredCharacterSheet.maxHp.let { maxHp -> "${maxHp - alteredCharacterSheet.damage}/${maxHp}" },
|
||||
editable = true,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__hit_point),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__hit_point),
|
||||
),
|
||||
|
|
@ -202,7 +202,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__sub_characteristics__power_point),
|
||||
value = alteredCharacterSheet.maxPp.let { maxPp -> "${maxPp - alteredCharacterSheet.power}/${maxPp}" },
|
||||
editable = true,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__power_point),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__power_point),
|
||||
),
|
||||
|
|
@ -213,7 +213,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__sub_characteristics__damage_bonus),
|
||||
value = alteredCharacterSheet.damageBonus,
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__damage_bonus),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__bonus_damage),
|
||||
),
|
||||
|
|
@ -224,7 +224,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__sub_characteristics__armor),
|
||||
value = "${alteredCharacterSheet.armor}",
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__armor),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__armor),
|
||||
),
|
||||
|
|
@ -235,7 +235,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__sub_characteristics__learning),
|
||||
value = "${alteredCharacterSheet.learning}",
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__learning),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__learning),
|
||||
),
|
||||
|
|
@ -246,7 +246,7 @@ class CharacterSheetFactory(
|
|||
label = getString(Res.string.character_sheet__sub_characteristics__hp_grow),
|
||||
value = "${alteredCharacterSheet.hpGrow}",
|
||||
editable = false,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__hp_grow),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__hp_grow),
|
||||
),
|
||||
|
|
@ -266,7 +266,7 @@ class CharacterSheetFactory(
|
|||
value = value,
|
||||
used = skill.used,
|
||||
tooltips = skill.description?.let {
|
||||
TooltipUio(
|
||||
BasicTooltipUio(
|
||||
title = skill.label,
|
||||
description = it,
|
||||
)
|
||||
|
|
@ -292,7 +292,7 @@ class CharacterSheetFactory(
|
|||
value = value,
|
||||
used = skill.used,
|
||||
tooltips = skill.description?.let {
|
||||
TooltipUio(
|
||||
BasicTooltipUio(
|
||||
title = skill.label,
|
||||
description = it,
|
||||
)
|
||||
|
|
@ -318,7 +318,7 @@ class CharacterSheetFactory(
|
|||
value = value,
|
||||
used = skill.used,
|
||||
tooltips = skill.description?.let {
|
||||
TooltipUio(
|
||||
BasicTooltipUio(
|
||||
title = skill.label,
|
||||
description = it,
|
||||
)
|
||||
|
|
|
|||
|
|
@ -59,8 +59,8 @@ import com.pixelized.desktop.lwa.ui.composable.blur.BlurContent
|
|||
import com.pixelized.desktop.lwa.ui.composable.blur.BlurContentController
|
||||
import com.pixelized.desktop.lwa.ui.composable.character.diminished.CharacterSheetDiminishedDialogViewModel
|
||||
import com.pixelized.desktop.lwa.ui.composable.decoratedBox.DecoratedBox
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.navigation.screen.LocalScreenController
|
||||
import com.pixelized.desktop.lwa.ui.navigation.window.LocalWindow
|
||||
import com.pixelized.desktop.lwa.ui.navigation.window.destination.navigateToCharacterSheetEdit
|
||||
|
|
@ -107,7 +107,7 @@ data class CharacterSheetPageUio(
|
|||
val label: String,
|
||||
val value: String,
|
||||
val editable: Boolean,
|
||||
val tooltips: TooltipUio?,
|
||||
val tooltips: BasicTooltipUio?,
|
||||
val roll: RollAction.Uio?,
|
||||
)
|
||||
|
||||
|
|
@ -117,7 +117,7 @@ data class CharacterSheetPageUio(
|
|||
val label: String,
|
||||
val value: Int,
|
||||
val used: Boolean,
|
||||
val tooltips: TooltipUio? = null,
|
||||
val tooltips: BasicTooltipUio? = null,
|
||||
val roll: RollAction.Uio,
|
||||
)
|
||||
|
||||
|
|
@ -523,7 +523,7 @@ private fun Stat(
|
|||
characteristic: Characteristic,
|
||||
onClick: () -> Unit,
|
||||
) {
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = characteristic.tooltips,
|
||||
content = {
|
||||
DecoratedBox(
|
||||
|
|
@ -560,7 +560,7 @@ private fun SubCharacteristics(
|
|||
characteristic: Characteristic,
|
||||
onCharacteristic: ((characteristic: Characteristic) -> Unit)?,
|
||||
) {
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = characteristic.tooltips,
|
||||
content = {
|
||||
Row(
|
||||
|
|
@ -599,7 +599,7 @@ private fun Skill(
|
|||
onClick: () -> Unit,
|
||||
onUse: () -> Unit,
|
||||
) {
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = node.tooltips,
|
||||
content = {
|
||||
Row(
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import androidx.compose.runtime.mutableStateOf
|
|||
import com.pixelized.desktop.lwa.ui.composable.checkbox.LwaCheckBoxUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.textfield.createLwaTextField
|
||||
import com.pixelized.desktop.lwa.ui.composable.textfield.createLwaTextFieldFlow
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.screen.characterSheet.edit.common.SkillFieldFactory
|
||||
import com.pixelized.desktop.lwa.ui.screen.characterSheet.edit.common.occupation
|
||||
import com.pixelized.desktop.lwa.ui.screen.characterSheet.edit.composable.ActionFieldUio
|
||||
|
|
@ -544,7 +544,7 @@ class CharacterSheetEditFactory(
|
|||
value = skill?.level?.takeIf { it > 0 }?.toString() ?: "",
|
||||
),
|
||||
option = skillFieldFactory.occupationOption(skill?.occupation ?: false),
|
||||
tooltip = TooltipUio(
|
||||
tooltip = BasicTooltipUio(
|
||||
title = label,
|
||||
description = description,
|
||||
)
|
||||
|
|
|
|||
|
|
@ -25,8 +25,8 @@ import androidx.compose.ui.Alignment
|
|||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.text.style.TextOverflow
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.screen.characterSheet.edit.composable.option.CheckedOption
|
||||
import com.pixelized.desktop.lwa.ui.screen.characterSheet.edit.composable.option.DropDownCheckedMenuItem
|
||||
import com.pixelized.desktop.lwa.ui.screen.characterSheet.edit.composable.textfield.TextFieldWrapper
|
||||
|
|
@ -43,7 +43,7 @@ class BaseSkillFieldUio(
|
|||
val bonus: TextFieldWrapperUio,
|
||||
val level: TextFieldWrapperUio,
|
||||
val option: CheckedOption,
|
||||
val tooltip: TooltipUio,
|
||||
val tooltip: BasicTooltipUio,
|
||||
)
|
||||
|
||||
@OptIn(ExperimentalFoundationApi::class)
|
||||
|
|
@ -80,7 +80,7 @@ fun BaseSkillForm(
|
|||
maxLines = 1,
|
||||
text = field.label,
|
||||
)
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
modifier = Modifier
|
||||
.width(width = 96.dp)
|
||||
.padding(start = 16.dp),
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
package com.pixelized.desktop.lwa.ui.screen.levelup
|
||||
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.overlay.roll.RollAction
|
||||
import com.pixelized.desktop.lwa.ui.overlay.roll.RollResult
|
||||
import com.pixelized.desktop.lwa.ui.overlay.roll.RollResult.BoundedRollResult.Result
|
||||
|
|
@ -100,7 +100,7 @@ class LevelUpFactory(
|
|||
icon = Res.drawable.ic_heart_24dp,
|
||||
base = "${alteredCharacterSheet.maxHp}",
|
||||
levelUp = "${levelUpCharacterSheet.maxHp}",
|
||||
tooltip = TooltipUio(
|
||||
tooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__hit_point),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__hit_point)
|
||||
),
|
||||
|
|
@ -109,7 +109,7 @@ class LevelUpFactory(
|
|||
icon = Res.drawable.ic_water_drop_24dp,
|
||||
base = "${alteredCharacterSheet.maxPp}",
|
||||
levelUp = "${levelUpCharacterSheet.maxPp}",
|
||||
tooltip = TooltipUio(
|
||||
tooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__power_point),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__power_point)
|
||||
)
|
||||
|
|
@ -118,7 +118,7 @@ class LevelUpFactory(
|
|||
icon = Res.drawable.ic_swords_24dp,
|
||||
base = alteredCharacterSheet.damageBonus,
|
||||
levelUp = levelUpCharacterSheet.damageBonus,
|
||||
tooltip = TooltipUio(
|
||||
tooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__damage_bonus),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__bonus_damage)
|
||||
),
|
||||
|
|
@ -127,7 +127,7 @@ class LevelUpFactory(
|
|||
icon = Res.drawable.ic_heart_plus_24dp,
|
||||
base = "${alteredCharacterSheet.hpGrow}",
|
||||
levelUp = "${levelUpCharacterSheet.hpGrow}",
|
||||
tooltip = TooltipUio(
|
||||
tooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__hp_grow),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__hp_grow)
|
||||
),
|
||||
|
|
@ -136,7 +136,7 @@ class LevelUpFactory(
|
|||
icon = Res.drawable.ic_cognition_24dp,
|
||||
base = "${alteredCharacterSheet.learning}",
|
||||
levelUp = "${levelUpCharacterSheet.learning}",
|
||||
tooltip = TooltipUio(
|
||||
tooltip = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__sub_characteristics__learning),
|
||||
description = getString(Res.string.tooltip__sub_characteristics__learning)
|
||||
),
|
||||
|
|
@ -161,7 +161,7 @@ class LevelUpFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__str),
|
||||
value = alteredCharacterSheet.strength,
|
||||
selected = selectedCharacteristicId == CharacterSheet.CharacteristicId.STR,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__str),
|
||||
description = getString(Res.string.tooltip__characteristics__strength),
|
||||
),
|
||||
|
|
@ -171,7 +171,7 @@ class LevelUpFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__dex),
|
||||
value = alteredCharacterSheet.dexterity,
|
||||
selected = selectedCharacteristicId == CharacterSheet.CharacteristicId.DEX,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__dex),
|
||||
description = getString(Res.string.tooltip__characteristics__dexterity),
|
||||
),
|
||||
|
|
@ -181,7 +181,7 @@ class LevelUpFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__con),
|
||||
value = alteredCharacterSheet.constitution,
|
||||
selected = selectedCharacteristicId == CharacterSheet.CharacteristicId.CON,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__con),
|
||||
description = getString(Res.string.tooltip__characteristics__constitution),
|
||||
),
|
||||
|
|
@ -191,7 +191,7 @@ class LevelUpFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__hei),
|
||||
value = alteredCharacterSheet.height,
|
||||
selected = selectedCharacteristicId == CharacterSheet.CharacteristicId.HEI,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__hei),
|
||||
description = getString(Res.string.tooltip__characteristics__height),
|
||||
),
|
||||
|
|
@ -201,7 +201,7 @@ class LevelUpFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__int),
|
||||
value = alteredCharacterSheet.intelligence,
|
||||
selected = selectedCharacteristicId == CharacterSheet.CharacteristicId.INT,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__int),
|
||||
description = getString(Res.string.tooltip__characteristics__intelligence),
|
||||
),
|
||||
|
|
@ -211,7 +211,7 @@ class LevelUpFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__pow),
|
||||
value = alteredCharacterSheet.power,
|
||||
selected = selectedCharacteristicId == CharacterSheet.CharacteristicId.POW,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__pow),
|
||||
description = getString(Res.string.tooltip__characteristics__power),
|
||||
),
|
||||
|
|
@ -221,7 +221,7 @@ class LevelUpFactory(
|
|||
label = getString(Res.string.character_sheet__characteristics__cha),
|
||||
value = alteredCharacterSheet.charisma,
|
||||
selected = selectedCharacteristicId == CharacterSheet.CharacteristicId.CHA,
|
||||
tooltips = TooltipUio(
|
||||
tooltips = BasicTooltipUio(
|
||||
title = getString(Res.string.character_sheet__characteristics__cha),
|
||||
description = getString(Res.string.tooltip__characteristics__charisma),
|
||||
),
|
||||
|
|
@ -306,7 +306,7 @@ class LevelUpFactory(
|
|||
levelUp = results.isSkillLeveledUp(skillId = skill.id),
|
||||
occupation = skill.occupation,
|
||||
tooltips = skill.description?.let {
|
||||
TooltipUio(
|
||||
BasicTooltipUio(
|
||||
title = skill.label,
|
||||
description = it,
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1,11 +1,8 @@
|
|||
package com.pixelized.desktop.lwa.ui.screen.levelup.items
|
||||
|
||||
import androidx.compose.animation.AnimatedContent
|
||||
import androidx.compose.animation.SizeTransform
|
||||
import androidx.compose.animation.fadeIn
|
||||
import androidx.compose.animation.fadeOut
|
||||
import androidx.compose.animation.slideInVertically
|
||||
import androidx.compose.animation.slideOutVertically
|
||||
import androidx.compose.animation.togetherWith
|
||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||
import androidx.compose.foundation.clickable
|
||||
|
|
@ -22,8 +19,8 @@ import androidx.compose.ui.text.style.TextAlign
|
|||
import androidx.compose.ui.text.style.TextOverflow
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.pixelized.desktop.lwa.ui.composable.decoratedBox.DecoratedBox
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.theme.lwa
|
||||
|
||||
@Stable
|
||||
|
|
@ -32,7 +29,7 @@ data class LevelUpCharacteristicUio(
|
|||
val value: Int,
|
||||
val label: String,
|
||||
val selected: Boolean,
|
||||
val tooltips: TooltipUio,
|
||||
val tooltips: BasicTooltipUio,
|
||||
)
|
||||
|
||||
@OptIn(ExperimentalFoundationApi::class)
|
||||
|
|
@ -43,7 +40,7 @@ fun LevelUpCharacteristic(
|
|||
characteristic: LevelUpCharacteristicUio,
|
||||
onClick: () -> Unit,
|
||||
) {
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
tooltip = characteristic.tooltips,
|
||||
content = {
|
||||
DecoratedBox(
|
||||
|
|
|
|||
|
|
@ -24,8 +24,8 @@ import androidx.compose.ui.text.font.FontWeight
|
|||
import androidx.compose.ui.text.style.TextOverflow
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.pixelized.desktop.lwa.ui.composable.shapes.MasteryShape
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.overlay.roll.RollAction
|
||||
import com.pixelized.desktop.lwa.ui.theme.lwa
|
||||
import lwacharactersheet.composeapp.generated.resources.Res
|
||||
|
|
@ -40,7 +40,7 @@ data class LevelUpSkillUio(
|
|||
val level: Int,
|
||||
val levelUp: Boolean,
|
||||
val occupation: Boolean,
|
||||
val tooltips: TooltipUio?,
|
||||
val tooltips: BasicTooltipUio?,
|
||||
val roll: RollAction.Uio?,
|
||||
)
|
||||
|
||||
|
|
@ -58,7 +58,7 @@ fun LevelUpSkill(
|
|||
else -> MaterialTheme.lwa.colorScheme.base.primary
|
||||
}
|
||||
)
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
modifier = Modifier
|
||||
.let {
|
||||
when (skill.roll) {
|
||||
|
|
|
|||
|
|
@ -21,8 +21,8 @@ import androidx.compose.ui.Alignment
|
|||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.TooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipLayout
|
||||
import com.pixelized.desktop.lwa.ui.composable.tooltip.BasicTooltipUio
|
||||
import com.pixelized.desktop.lwa.ui.theme.lwa
|
||||
import lwacharactersheet.composeapp.generated.resources.Res
|
||||
import lwacharactersheet.composeapp.generated.resources.generic__arrow
|
||||
|
|
@ -36,7 +36,7 @@ data class LevelUpSubCharacteristicUio(
|
|||
val icon: DrawableResource,
|
||||
val base: String,
|
||||
val levelUp: String,
|
||||
val tooltip: TooltipUio,
|
||||
val tooltip: BasicTooltipUio,
|
||||
)
|
||||
|
||||
@OptIn(ExperimentalFoundationApi::class)
|
||||
|
|
@ -45,7 +45,7 @@ fun LevelUpSubCharacteristic(
|
|||
modifier: Modifier = Modifier,
|
||||
characteristic: LevelUpSubCharacteristicUio?,
|
||||
) {
|
||||
TooltipLayout(
|
||||
BasicTooltipLayout(
|
||||
modifier = modifier,
|
||||
tooltip = characteristic?.tooltip,
|
||||
) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue