Added support for compose
IncrementDecrementButton is now available as a composable. The defaults of the composable are best described by the parameters of the composable in code itself.
@Composable
fun IncrementDecrementButton(
modifier: Modifier = Modifier,
fontFamily: FontFamily = FontFamily(typeface = Typeface.DEFAULT),
fontSize: TextUnit = 16.0.sp,
cornerRadius: Dp = 8.dp,
animationType: AnimationType = AnimationType.FADE,
backgroundColor: Color = MaterialTheme.colors.background,
contentColor: Color = MaterialTheme.colors.contentColorFor(backgroundColor),
borderStroke: BorderStroke = BorderStroke(0.dp, Color.White),
value: Int = 0,
onDecrementClick: (Int) -> Unit = {},
onIncrementClick: (Int) -> Unit = {},
onMiddleClick: (Int) -> Unit = {},
decrementComposable: @Composable (cb: (Int) -> Unit) -> Unit = { cb ->
DefaultDecrementComposable(
modifier = modifier,
textColor = contentColor,
fontFamily = fontFamily,
fontSize = fontSize,
backgroundColor = backgroundColor,
cornerRadius = cornerRadius,
borderStroke = borderStroke,
onDecrementClick = { cb(-1) }
)
},
incrementComposable: @Composable (cb: (Int) -> Unit) -> Unit = { cb ->
DefaultIncrementComposable(
modifier = modifier,
textColor = contentColor,
fontFamily = fontFamily,
fontSize = fontSize,
backgroundColor = backgroundColor,
cornerRadius = cornerRadius,
borderStroke = borderStroke,
onIncrementClick = { cb(-1) }
)
},
middleComposable: @Composable (Int, cb: (Int) -> Unit) -> Unit = { buttonValue, cb ->
DefaultMiddleComposable(
modifier = modifier,
textColor = contentColor,
fontFamily = fontFamily,
fontSize = fontSize,
backgroundColor = backgroundColor,
borderStroke = borderStroke,
onMiddleClick = { cb(-1) },
value = buttonValue
)
},
)
You can pass in your own composables as required.