diff options
author | Allan Wang <me@allanwang.ca> | 2017-06-06 23:24:06 -0700 |
---|---|---|
committer | Allan Wang <me@allanwang.ca> | 2017-06-06 23:24:06 -0700 |
commit | 605a08c2e2e8634263d7626cf7471310add3acb2 (patch) | |
tree | 7652ecc94a4969688ce85ed94ab9233117d78a40 /app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt | |
parent | 067ea15188f20fa268255153e35c2df732fdffee (diff) | |
download | frost-605a08c2e2e8634263d7626cf7471310add3acb2.tar.gz frost-605a08c2e2e8634263d7626cf7471310add3acb2.tar.bz2 frost-605a08c2e2e8634263d7626cf7471310add3acb2.zip |
Preparing preferences
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt')
-rw-r--r-- | app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt b/app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt index d99e8417..ec296309 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt @@ -2,6 +2,7 @@ package com.pitchedapps.frost.utils import android.content.Context import android.content.SharedPreferences +import android.graphics.Color /** * Created by Allan Wang on 2017-05-28. @@ -12,10 +13,16 @@ import android.content.SharedPreferences private val PREFERENCE_NAME = "${com.pitchedapps.frost.BuildConfig.APPLICATION_ID}.prefs" private val LAST_ACTIVE = "last_active" private val USER_ID = "user_id" +private val COLOR_TEXT = "color_text" +private val COLOR_BG = "color_bg" +private val COLOR_HEADER = "color_header" +private val COLOR_ICONS = "color_icons" +private val THEME_TYPE = "theme_type" object Prefs { private const val prefDefaultLong = -2L + private const val prefDefaultInt = -2 lateinit private var c: Context operator fun invoke(c: Context) { @@ -46,6 +53,46 @@ object Prefs { if (value != prefDefaultLong) set(USER_ID, value) } + var textColor: Int = prefDefaultInt + get() { + if (field == prefDefaultInt) field = sp.getInt(COLOR_TEXT, Color.BLACK) + return field + } + set(value) { + field = value + if (value != prefDefaultInt) set(COLOR_TEXT, value) + } + + var bgColor: Int = prefDefaultInt + get() { + if (field == prefDefaultInt) field = sp.getInt(COLOR_BG, Color.WHITE) + return field + } + set(value) { + field = value + if (value != prefDefaultInt) set(COLOR_BG, value) + } + + var headerColor: Int = prefDefaultInt + get() { + if (field == prefDefaultInt) field = sp.getInt(COLOR_HEADER, 0xff3b5998.toInt()) + return field + } + set(value) { + field = value + if (value != prefDefaultInt) set(COLOR_HEADER, value) + } + + var iconColor: Int = prefDefaultInt + get() { + if (field == prefDefaultInt) field = sp.getInt(COLOR_ICONS, Color.WHITE) + return field + } + set(value) { + field = value + if (value != prefDefaultInt) set(COLOR_ICONS, value) + } + private fun set(key: String, value: Boolean) = sp.edit().putBoolean(key, value).apply() private fun set(key: String, value: Int) = sp.edit().putInt(key, value).apply() private fun set(key: String, value: Long) = sp.edit().putLong(key, value).apply() @@ -56,5 +103,9 @@ object Prefs { sp.edit().clear().apply() lastActive = prefDefaultLong userId = prefDefaultLong + textColor = prefDefaultInt + bgColor = prefDefaultInt + headerColor = prefDefaultInt + iconColor = prefDefaultInt } } |