AppTheme

data class AppTheme(val name: String, val fontFamily: @Composable () -> FontFamily, val backgroundMusic: String = "background-music", val gameMusic: String = "MEGALOVANIA", val placePieceSound: String = "putPiece", val textColor: Color = Color(0xFF000000), val backgroundImage: DrawableResource? = null, val backgroundColor: Color = Color(0xFFFFFFFF), val buttonTextColor: Color = Color(0xFFFFFFFF), val primaryColor: Color = Color(0xFF1976D2), val secondaryColor: Color = Color(0xFFFE4E4E), val boardColor: Color = Color(0xFF009000), val boardBgColor: Color = Color(0xFF006400), val boardSideColor: Color = Color(0xFF000000), val darkPieceColor: Color = Color(0xFF000000), val lightPieceColor: Color = Color(0xFFFFFFFF))

Data class representing a theme configuration for the Reversi application. Contains colors for UI elements and audio resources for different game states.

Constructors

Link copied to clipboard
constructor(name: String, fontFamily: @Composable () -> FontFamily, backgroundMusic: String = "background-music", gameMusic: String = "MEGALOVANIA", placePieceSound: String = "putPiece", textColor: Color = Color(0xFF000000), backgroundImage: DrawableResource? = null, backgroundColor: Color = Color(0xFFFFFFFF), buttonTextColor: Color = Color(0xFFFFFFFF), primaryColor: Color = Color(0xFF1976D2), secondaryColor: Color = Color(0xFFFE4E4E), boardColor: Color = Color(0xFF009000), boardBgColor: Color = Color(0xFF006400), boardSideColor: Color = Color(0xFF000000), darkPieceColor: Color = Color(0xFF000000), lightPieceColor: Color = Color(0xFFFFFFFF))

Properties

Link copied to clipboard
val backgroundColor: Color

Primary background color.

Link copied to clipboard
val backgroundImage: DrawableResource?
Link copied to clipboard

Resource name for background music.

Link copied to clipboard
val boardBgColor: Color

Background color of the game board.

Link copied to clipboard
val boardColor: Color

Color of the game board.

Link copied to clipboard
val boardSideColor: Color

Color of the board's sides/borders.

Link copied to clipboard
val buttonTextColor: Color

Color used for button text.

Link copied to clipboard
val darkPieceColor: Color

Color for dark-colored pieces.

Link copied to clipboard
val fontFamily: @Composable () -> FontFamily
Link copied to clipboard

Resource name for gameplay music.

Link copied to clipboard
val lightPieceColor: Color

Color for light-colored pieces.

Link copied to clipboard

The name of the theme.

Link copied to clipboard

Resource name for the piece placement sound effect.

Link copied to clipboard
val primaryColor: Color

Primary accent color.

Link copied to clipboard
val secondaryColor: Color

Secondary accent color.

Link copied to clipboard
val textColor: Color

Color used for text elements.

Functions

Link copied to clipboard

Gets the list of music resource names (excluding sound effects) for this theme.

Link copied to clipboard

Gets the list of all audio resource names for this theme.