diff options
author | Allan Wang <me@allanwang.ca> | 2017-06-11 10:40:17 -0700 |
---|---|---|
committer | Allan Wang <me@allanwang.ca> | 2017-06-11 10:40:17 -0700 |
commit | b7a493facf1152bc1de872e39cbc299640127bf4 (patch) | |
tree | 947992abc17e186f93dbf2b66115cdd64c9d3bd4 /library/src/main/kotlin/ca/allanwang/kau/kpref/KPrefBinder.kt | |
parent | c00f9e2674f5109a64f1f50873ce08089a2fce33 (diff) | |
download | kau-b7a493facf1152bc1de872e39cbc299640127bf4.tar.gz kau-b7a493facf1152bc1de872e39cbc299640127bf4.tar.bz2 kau-b7a493facf1152bc1de872e39cbc299640127bf4.zip |
Testing data changes
Diffstat (limited to 'library/src/main/kotlin/ca/allanwang/kau/kpref/KPrefBinder.kt')
-rw-r--r-- | library/src/main/kotlin/ca/allanwang/kau/kpref/KPrefBinder.kt | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/library/src/main/kotlin/ca/allanwang/kau/kpref/KPrefBinder.kt b/library/src/main/kotlin/ca/allanwang/kau/kpref/KPrefBinder.kt index 57f4cb9..fc3b6ff 100644 --- a/library/src/main/kotlin/ca/allanwang/kau/kpref/KPrefBinder.kt +++ b/library/src/main/kotlin/ca/allanwang/kau/kpref/KPrefBinder.kt @@ -3,6 +3,7 @@ package ca.allanwang.kau.kpref import android.support.annotation.StringRes import android.support.v7.widget.LinearLayoutManager import android.support.v7.widget.RecyclerView +import ca.allanwang.kau.R import ca.allanwang.kau.dialogs.color.Builder import ca.allanwang.kau.kpref.items.KPrefCheckbox import ca.allanwang.kau.kpref.items.KPrefColorPicker @@ -17,7 +18,7 @@ import com.mikepenz.iconics.typeface.IIcon fun RecyclerView.setKPrefAdapter(builder: KPrefAdapterBuilder.() -> Unit): FastItemAdapter<KPrefItemCore> { layoutManager = LinearLayoutManager(context) val adapter = FastItemAdapter<KPrefItemCore>() - adapter.withOnClickListener { v, _, item, _ -> item.onClick(v) } + adapter.withOnClickListener { v, _, item, _ -> item.onClick(v, v.findViewById(R.id.kau_pref_inner_content)) } val items = KPrefAdapterBuilder() builder.invoke(items) adapter.add(items.list) @@ -27,30 +28,25 @@ fun RecyclerView.setKPrefAdapter(builder: KPrefAdapterBuilder.() -> Unit): FastI class KPrefAdapterBuilder { - var textColor: Int? = null - get() = textColorGetter?.invoke() ?: field - var accentColor: Int? = null - get() = accentColorGetter?.invoke() ?: field - - var textColorGetter: (() -> Int)? = null - var accentColorGetter: (() -> Int)? = null + var textColor: (() -> Int)? = null + var accentColor: (() -> Int)? = null fun header(@StringRes title: Int) = list.add(KPrefHeader(this, title)) fun checkbox(@StringRes title: Int, @StringRes description: Int = -1, iicon: IIcon? = null, - enabled: Boolean = true, + enabler: () -> Boolean = { true }, getter: () -> Boolean, - setter: (value: Boolean) -> Unit) = list.add(KPrefCheckbox(this, title, description, iicon, enabled, getter, setter)) + setter: (value: Boolean) -> Unit) = list.add(KPrefCheckbox(this, title, description, iicon, enabler, getter, setter)) fun colorPicker(@StringRes title: Int, @StringRes description: Int = -1, iicon: IIcon? = null, - enabled: Boolean = true, + enabler: () -> Boolean = { true }, getter: () -> Int, setter: (value: Int) -> Unit, - configs: Builder.() -> Unit = {}) = list.add(KPrefColorPicker(this, title, description, iicon, enabled, getter, setter, configs)) + configs: Builder.() -> Unit = {}) = list.add(KPrefColorPicker(this, title, description, iicon, enabler, getter, setter, configs)) internal val list: MutableList<KPrefItemCore> = mutableListOf() |