ProcessController: fix display of CPU bars for systems having 3 cores
Generalize the drawing of separator lines for every number of cores requesting them. Fix the layout for 3 cores systems. Should fix #8763.
This commit is contained in:
@@ -124,7 +124,7 @@ layoutT layout[] = {
|
|||||||
{ 1, 1, 1 },
|
{ 1, 1, 1 },
|
||||||
{ 5, 1, 5 }, // 1
|
{ 5, 1, 5 }, // 1
|
||||||
{ 3, 1, 4 }, // 2
|
{ 3, 1, 4 }, // 2
|
||||||
{ 1, 1, 1 },
|
{ 2, 1, 3 },
|
||||||
{ 2, 0, 3 }, // 4
|
{ 2, 0, 3 }, // 4
|
||||||
{ 1, 1, 1 },
|
{ 1, 1, 1 },
|
||||||
{ 1, 1, 1 },
|
{ 1, 1, 1 },
|
||||||
@@ -542,16 +542,17 @@ ProcessController::DoDraw(bool force)
|
|||||||
float right = left + gCPUcount * (barWidth + layout[gCPUcount].cpu_inter)
|
float right = left + gCPUcount * (barWidth + layout[gCPUcount].cpu_inter)
|
||||||
- layout[gCPUcount].cpu_inter; // right of CPU frame...
|
- layout[gCPUcount].cpu_inter; // right of CPU frame...
|
||||||
if (force && Parent()) {
|
if (force && Parent()) {
|
||||||
SetHighColor(Parent()->ViewColor ());
|
SetHighColor(Parent()->ViewColor());
|
||||||
FillRect(BRect(right + 1, top - 1, right + 2, bottom + 1));
|
FillRect(BRect(right + 1, top - 1, right + 2, bottom + 1));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (force) {
|
if (force) {
|
||||||
SetHighColor(frame_color);
|
SetHighColor(frame_color);
|
||||||
StrokeRect(BRect(left - 1, top - 1, right, bottom + 1));
|
StrokeRect(BRect(left - 1, top - 1, right, bottom + 1));
|
||||||
if (gCPUcount == 2) {
|
if (gCPUcount > 1 && layout[gCPUcount].cpu_inter == 1) {
|
||||||
StrokeLine(BPoint(left + barWidth, top), BPoint(left + barWidth,
|
for (int x = 1; x < gCPUcount; x++)
|
||||||
bottom));
|
StrokeLine(BPoint(left + x * barWidth + x - 1, top),
|
||||||
|
BPoint(left + x * barWidth + x - 1, bottom));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
float leftMem = bounds.Width() - layout[gCPUcount].mem_width;
|
float leftMem = bounds.Width() - layout[gCPUcount].mem_width;
|
||||||
@@ -592,9 +593,9 @@ ProcessController::DoDraw(bool force)
|
|||||||
fLastBarHeight[x] = barHeight;
|
fLastBarHeight[x] = barHeight;
|
||||||
}
|
}
|
||||||
|
|
||||||
float rightMem = bounds.Width () - 1;
|
float rightMem = bounds.Width() - 1;
|
||||||
float rem = fMemoryUsage * (h + 1);
|
float rem = fMemoryUsage * (h + 1);
|
||||||
float barHeight = floorf (rem);
|
float barHeight = floorf(rem);
|
||||||
rem -= barHeight;
|
rem -= barHeight;
|
||||||
|
|
||||||
rgb_color used_memory_color;
|
rgb_color used_memory_color;
|
||||||
|
|||||||
Reference in New Issue
Block a user