Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class CashOutOptionDialogFragment
- : HeaderDialogFragment() {
- class State {
- var saldoBukaDana: String? = null
- var saldoPelapak: String? = null
- var onSelectSaldoPelapak: View.OnClickListener? = null
- var onSelectBukaDana: View.OnClickListener? = null
- }
- class Actions(state: State) : AppSuxActions<Fragment, Actions, State>(state) {
- fun initState(s: State.() -> Unit) {
- state.s()
- }
- }
- class Fragment : AppSuxFragment<Fragment, Actions, State>() {
- override fun initActions(state: State) = Actions(state)
- override fun initState() = State()
- val adapter get() = linearLayoutAdapter(recyclerView)
- init {
- contentRes = R.layout.fragment_recyclerview
- toolbarTitle = R.string.cairkan.resString()
- }
- override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
- super.onViewCreated(view, savedInstanceState)
- atomicToolbar?.attachBottomView(ToolbarHelper.makeSeparator(context))
- }
- override fun render(state: State) {
- super.render(state)
- val items = mutableListOf<ViewItem<*>>()
- items.add(TextViewItem.item {
- text = { R.string.text_withdraw_option.resString() }
- margin = Frame(
- left = AtomicHelper.STANDARD_MARGIN_2x,
- right = AtomicHelper.STANDARD_MARGIN_2x,
- top = AtomicHelper.STANDARD_MARGIN_2x,
- bottom = AtomicHelper.STANDARD_MARGIN
- )
- })
- items.add(AtomicMenuItem.item {
- title = { R.string.agent_balance.resString().toUpperCase() }
- titleColor = R.color.dark_ash
- subtitle = { state.saldoBukaDana }
- subtitleColor = R.color.text_dark
- subtitleStyle = R.style.Theme_BlTheme
- iconLeft = R.drawable.ic_bukadompet
- margin = Frame(
- left = AtomicHelper.STANDARD_MARGIN_2x,
- right = AtomicHelper.STANDARD_MARGIN_2x,
- top = AtomicHelper.STANDARD_MARGIN,
- bottom = AtomicHelper.STANDARD_MARGIN
- )
- padding = Frame(
- left = AtomicHelper.STANDARD_MARGIN_2x,
- right = AtomicHelper.STANDARD_MARGIN_2x,
- top = AtomicHelper.STANDARD_MARGIN_2x,
- bottom = AtomicHelper.STANDARD_MARGIN_2x
- )
- background = R.drawable.border_dark_sand_1dp
- titleStyle = R.style.Title1_Bold
- subtitleStyle = R.style.Caption_Blblack
- }.withOnItemClickListener { v, adapter, item, position ->
- {}
- true
- })
- items.add(AtomicMenuItem.item {
- title = { R.string.text_buka_dana.resString().toUpperCase() }
- titleColor = R.color.dark_ash
- subtitle = { state.saldoPelapak }
- subtitleColor = R.color.text_dark
- subtitleStyle = R.style.Theme_BlTheme
- iconLeft = R.drawable.ic_bukadompet
- margin = Frame(
- left = AtomicHelper.STANDARD_MARGIN_2x,
- right = AtomicHelper.STANDARD_MARGIN_2x,
- top = AtomicHelper.STANDARD_MARGIN,
- bottom = AtomicHelper.STANDARD_MARGIN_2x
- )
- padding = Frame(
- left = AtomicHelper.STANDARD_MARGIN_2x,
- right = AtomicHelper.STANDARD_MARGIN_2x,
- top = AtomicHelper.STANDARD_MARGIN_2x,
- bottom = AtomicHelper.STANDARD_MARGIN_2x
- )
- background = R.drawable.border_dark_sand_1dp
- titleStyle = R.style.Title1_Bold
- subtitleStyle = R.style.Caption_Blblack
- })
- adapter.set(items)
- }
- }
- }
- ////////////-------------------------
- CashOutOptionDialogFragment.Fragment fragment = new CashOutOptionDialogFragment.Fragment();
- fragment.getActions().initState(state -> {
- state.setSaldoBukaDana(NumberUtils.getFormattedRupiahTextView(saldoBukaDana));
- state.setSaldoPelapak(totalBalance);
- return Unit.INSTANCE;
- });
- PersistentDialog.Companion.builder(getContext())
- .setContent(fragment).show();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement