Commit d54ab24d authored by Explorer09's avatar Explorer09
Browse files

New macro GRAPH_HEIGHT for Graph Meter height

(Cherry-picked from e93028d7, the
experimental graph coloring branch)

Currently GRAPH_HEIGHT=4 . This prevents hard-coding the height of the graph
meters, and allows user to change it at compile-time.
parent 09cf369f
...@@ -25,6 +25,8 @@ in the source distribution for its full text. ...@@ -25,6 +25,8 @@ in the source distribution for its full text.
#define GRAPH_DELAY (DEFAULT_DELAY/2) #define GRAPH_DELAY (DEFAULT_DELAY/2)
#define GRAPH_HEIGHT 4 /* Unit: rows (lines) */
/*{ /*{
#include "ListItem.h" #include "ListItem.h"
...@@ -406,14 +408,14 @@ static void GraphMeterMode_draw(Meter* this, int x, int y, int w) { ...@@ -406,14 +408,14 @@ static void GraphMeterMode_draw(Meter* this, int x, int y, int w) {
} }
for (int i = nValues - (w*2) + 2, k = 0; i < nValues; i+=2, k++) { for (int i = nValues - (w*2) + 2, k = 0; i < nValues; i+=2, k++) {
const double dot = (1.0 / (GraphMeterMode_pixPerRow * 4)); const double dot = (1.0 / (GraphMeterMode_pixPerRow * GRAPH_HEIGHT));
int v1 = CLAMP(data->values[i] / dot, 1, GraphMeterMode_pixPerRow * 4); int v1 = CLAMP(data->values[i] / dot, 1, GraphMeterMode_pixPerRow * GRAPH_HEIGHT);
int v2 = CLAMP(data->values[i+1] / dot, 1, GraphMeterMode_pixPerRow * 4); int v2 = CLAMP(data->values[i+1] / dot, 1, GraphMeterMode_pixPerRow * GRAPH_HEIGHT);
int colorIdx = GRAPH_1; int colorIdx = GRAPH_1;
for (int line = 0; line < 4; line++) { for (int line = 0; line < GRAPH_HEIGHT; line++) {
int line1 = CLAMP(v1 - (GraphMeterMode_pixPerRow * (3 - line)), 0, GraphMeterMode_pixPerRow); int line1 = CLAMP(v1 - (GraphMeterMode_pixPerRow * (GRAPH_HEIGHT - 1 - line)), 0, GraphMeterMode_pixPerRow);
int line2 = CLAMP(v2 - (GraphMeterMode_pixPerRow * (3 - line)), 0, GraphMeterMode_pixPerRow); int line2 = CLAMP(v2 - (GraphMeterMode_pixPerRow * (GRAPH_HEIGHT - 1 - line)), 0, GraphMeterMode_pixPerRow);
attrset(CRT_colors[colorIdx]); attrset(CRT_colors[colorIdx]);
mvaddstr(y+line, x+k, GraphMeterMode_dots[line1 * (GraphMeterMode_pixPerRow + 1) + line2]); mvaddstr(y+line, x+k, GraphMeterMode_dots[line1 * (GraphMeterMode_pixPerRow + 1) + line2]);
...@@ -501,7 +503,7 @@ static MeterMode TextMeterMode = { ...@@ -501,7 +503,7 @@ static MeterMode TextMeterMode = {
static MeterMode GraphMeterMode = { static MeterMode GraphMeterMode = {
.uiName = "Graph", .uiName = "Graph",
.h = 4, .h = GRAPH_HEIGHT,
.draw = GraphMeterMode_draw, .draw = GraphMeterMode_draw,
}; };
......
...@@ -13,6 +13,8 @@ in the source distribution for its full text. ...@@ -13,6 +13,8 @@ in the source distribution for its full text.
#define GRAPH_DELAY (DEFAULT_DELAY/2) #define GRAPH_DELAY (DEFAULT_DELAY/2)
#define GRAPH_HEIGHT 4 /* Unit: rows (lines) */
#include "ListItem.h" #include "ListItem.h"
#include <sys/time.h> #include <sys/time.h>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment