package coffee.liz.abstractionengine.ui import androidx.compose.foundation.border import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.size import androidx.compose.foundation.shape.CircleShape import androidx.compose.material3.Button import androidx.compose.material3.ButtonDefaults import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp enum class ArcadeButtonColor { RED, YELLOW } @Composable fun ArcadeButton( label: String, color: ArcadeButtonColor = ArcadeButtonColor.RED, onClick: () -> Unit, modifier: Modifier = Modifier ) { val buttonColor = when (color) { ArcadeButtonColor.RED -> GameBoyColors.ButtonRed ArcadeButtonColor.YELLOW -> GameBoyColors.ButtonYellow } Button( onClick = onClick, modifier = modifier .size(65.dp) .border(1.dp, MaterialTheme.colorScheme.outline, CircleShape), shape = CircleShape, colors = ButtonDefaults.buttonColors( containerColor = buttonColor, contentColor = MaterialTheme.colorScheme.onPrimary ), contentPadding = PaddingValues(0.dp) ) { Text( text = label, fontSize = 20.sp, fontWeight = FontWeight.Bold, color = MaterialTheme.colorScheme.onPrimary ) } }