ThemeSectionScope.kt 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package org.mjdev.desktop.data
  2. import org.ini4j.Profile
  3. import org.mjdev.desktop.data.DesktopFile.Companion.Prop_ButtonLayout
  4. import org.mjdev.desktop.data.DesktopFile.Companion.Prop_CursorTheme
  5. import org.mjdev.desktop.data.DesktopFile.Companion.Prop_GtkTheme
  6. import org.mjdev.desktop.data.DesktopFile.Companion.Prop_IconTheme
  7. import org.mjdev.desktop.data.DesktopFile.Companion.Prop_MetacityTheme
  8. import org.mjdev.desktop.data.DesktopFile.Companion.Prop_X_Ubuntu_UseOverlayScrollbars
  9. import org.mjdev.desktop.helpers.parsers.Parsers.ParsedBoolean
  10. import org.mjdev.desktop.helpers.parsers.Parsers.ParsedString
  11. class ThemeSectionScope(
  12. override val section: Profile.Section,
  13. ) : ISectionScope {
  14. var GtkTheme: String
  15. get() = ParsedString(section[Prop_GtkTheme])
  16. set(value) {
  17. section[Prop_GtkTheme] = value
  18. }
  19. var MetacityTheme: String
  20. get() = ParsedString(section[Prop_MetacityTheme])
  21. set(value) {
  22. section[Prop_MetacityTheme] = value
  23. }
  24. var IconTheme: String
  25. get() = ParsedString(section[Prop_IconTheme])
  26. set(value) {
  27. section[Prop_IconTheme] = value
  28. }
  29. var CursorTheme: String
  30. get() = ParsedString(section[Prop_CursorTheme])
  31. set(value) {
  32. section[Prop_CursorTheme] = value
  33. }
  34. var ButtonLayout: String
  35. get() = ParsedString(section[Prop_ButtonLayout])
  36. set(value) {
  37. section[Prop_ButtonLayout] = value
  38. }
  39. var UseOverlayScrollbars: Boolean
  40. get() = ParsedBoolean(section[Prop_X_Ubuntu_UseOverlayScrollbars])
  41. set(value) {
  42. section[Prop_X_Ubuntu_UseOverlayScrollbars] = value.toString()
  43. }
  44. }