Rework ZramMeter and remove MeterClass.comprisedValues

The 'comprisedValues' boolean property unnecessarily complicates the
drawing algorithms of Bar meters and Graph meters. Since the only user
of 'comprisedValues' is ZramMeter, it is better to rework the meter so
that it no longer needs 'comprisedValues'.

The 'values[ZRAM_METER_UNCOMPRESSED]' now stores the difference between
uncompressed and compressed data size.

Signed-off-by: Kang-Che Sung <explorer09@gmail.com>
6 files changed
tree: 98bfff2502ecee0a09800f034cb960ad862db0b2
  1. .github/
  2. darwin/
  3. docs/
  4. dragonflybsd/
  5. freebsd/
  6. generic/
  7. iwyu/
  8. linux/
  9. netbsd/
  10. openbsd/
  11. pcp/
  12. scripts/
  13. solaris/
  14. unsupported/
  15. zfs/
  16. .editorconfig
  17. .gitignore
  18. .travis.yml
  19. Action.c
  20. Action.h
  21. Affinity.c
  22. Affinity.h
  23. AffinityPanel.c
  24. AffinityPanel.h
  25. AUTHORS
  26. autogen.sh
  27. AvailableColumnsPanel.c
  28. AvailableColumnsPanel.h
  29. AvailableMetersPanel.c
  30. AvailableMetersPanel.h
  31. BatteryMeter.c
  32. BatteryMeter.h
  33. CategoriesPanel.c
  34. CategoriesPanel.h
  35. ChangeLog
  36. ClockMeter.c
  37. ClockMeter.h
  38. ColorsPanel.c
  39. ColorsPanel.h
  40. ColumnsPanel.c
  41. ColumnsPanel.h
  42. CommandLine.c
  43. CommandLine.h
  44. CommandScreen.c
  45. CommandScreen.h
  46. Compat.c
  47. Compat.h
  48. configure.ac
  49. CONTRIBUTING.md
  50. COPYING
  51. CPUMeter.c
  52. CPUMeter.h
  53. CRT.c
  54. CRT.h
  55. DateMeter.c
  56. DateMeter.h
  57. DateTimeMeter.c
  58. DateTimeMeter.h
  59. DiskIOMeter.c
  60. DiskIOMeter.h
  61. DisplayOptionsPanel.c
  62. DisplayOptionsPanel.h
  63. DynamicColumn.c
  64. DynamicColumn.h
  65. DynamicMeter.c
  66. DynamicMeter.h
  67. EnvScreen.c
  68. EnvScreen.h
  69. FileDescriptorMeter.c
  70. FileDescriptorMeter.h
  71. FunctionBar.c
  72. FunctionBar.h
  73. Hashtable.c
  74. Hashtable.h
  75. Header.c
  76. Header.h
  77. HeaderLayout.h
  78. HeaderOptionsPanel.c
  79. HeaderOptionsPanel.h
  80. HostnameMeter.c
  81. HostnameMeter.h
  82. htop.1.in
  83. htop.c
  84. htop.desktop
  85. htop.png
  86. htop.svg
  87. IncSet.c
  88. IncSet.h
  89. InfoScreen.c
  90. InfoScreen.h
  91. ListItem.c
  92. ListItem.h
  93. LoadAverageMeter.c
  94. LoadAverageMeter.h
  95. Machine.c
  96. Machine.h
  97. Macros.h
  98. MainPanel.c
  99. MainPanel.h
  100. Makefile.am
  101. MemoryMeter.c
  102. MemoryMeter.h
  103. MemorySwapMeter.c
  104. MemorySwapMeter.h
  105. Meter.c
  106. Meter.h
  107. MetersPanel.c
  108. MetersPanel.h
  109. NetworkIOMeter.c
  110. NetworkIOMeter.h
  111. NEWS
  112. Object.c
  113. Object.h
  114. OpenFilesScreen.c
  115. OpenFilesScreen.h
  116. OptionItem.c
  117. OptionItem.h
  118. Panel.c
  119. Panel.h
  120. pcp-htop.5.in
  121. pcp-htop.c
  122. Process.c
  123. Process.h
  124. ProcessList.c
  125. ProcessList.h
  126. ProcessLocksScreen.c
  127. ProcessLocksScreen.h
  128. ProvideCurses.h
  129. ProvideTerm.h
  130. README
  131. RichString.c
  132. RichString.h
  133. Scheduling.c
  134. Scheduling.h
  135. ScreenManager.c
  136. ScreenManager.h
  137. ScreensPanel.c
  138. ScreensPanel.h
  139. Settings.c
  140. Settings.h
  141. SignalsPanel.c
  142. SignalsPanel.h
  143. SwapMeter.c
  144. SwapMeter.h
  145. SysArchMeter.c
  146. SysArchMeter.h
  147. TasksMeter.c
  148. TasksMeter.h
  149. test_spec.lua
  150. TESTPLAN
  151. TraceScreen.c
  152. TraceScreen.h
  153. UptimeMeter.c
  154. UptimeMeter.h
  155. UsersTable.c
  156. UsersTable.h
  157. Vector.c
  158. Vector.h
  159. XUtils.c
  160. XUtils.h