summaryrefslogtreecommitdiffstats
path: root/Process.c
diff options
context:
space:
mode:
authorHisham Muhammad <hisham@gobolinux.org>2018-01-28 04:09:06 -0200
committerHisham Muhammad <hisham@gobolinux.org>2018-01-30 12:59:11 -0200
commit5beff29a3df7097cc4d256b27888ee730b1a45d0 (patch)
treecdc2d5f30e82db0f7415c2998bbb75cd5beba78f /Process.c
parentd1219abc558141a96ea25aa1db1c2dd3171c5132 (diff)
Add support for multiple screens, switchable using Tab
Diffstat (limited to 'Process.c')
-rw-r--r--Process.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/Process.c b/Process.c
index 6551afd7..e08ea93b 100644
--- a/Process.c
+++ b/Process.c
@@ -391,7 +391,8 @@ void Process_writeField(Process* this, RichString* str, ProcessField field) {
attr = CRT_colors[PROCESS_THREAD];
baseattr = CRT_colors[PROCESS_THREAD_BASENAME];
}
- if (!this->settings->treeView || this->indent == 0) {
+ ScreenSettings* ss = this->settings->ss;
+ if (!ss->treeView || this->indent == 0) {
Process_writeCommand(this, attr, baseattr, str);
return;
} else {
@@ -412,7 +413,7 @@ void Process_writeField(Process* this, RichString* str, ProcessField field) {
buf += written;
n -= written;
}
- const char* draw = CRT_treeStr[lastItem ? (this->settings->direction == 1 ? TREE_STR_BEND : TREE_STR_TEND) : TREE_STR_RTEE];
+ const char* draw = CRT_treeStr[lastItem ? (ss->direction == 1 ? TREE_STR_BEND : TREE_STR_TEND) : TREE_STR_RTEE];
xSnprintf(buf, n, "%s%s ", draw, this->showChildren ? CRT_treeStr[TREE_STR_SHUT] : CRT_treeStr[TREE_STR_OPEN] );
RichString_append(str, CRT_colors[PROCESS_TREE], buffer);
Process_writeCommand(this, attr, baseattr, str);
@@ -483,7 +484,7 @@ void Process_writeField(Process* this, RichString* str, ProcessField field) {
void Process_display(Object* cast, RichString* out) {
Process* this = (Process*) cast;
- ProcessField* fields = this->settings->fields;
+ ProcessField* fields = this->settings->ss->fields;
RichString_prune(out);
for (int i = 0; fields[i]; i++)
As_Process(this)->writeField(this, out, fields[i]);
@@ -553,14 +554,15 @@ long Process_pidCompare(const void* v1, const void* v2) {
long Process_compare(const void* v1, const void* v2) {
Process *p1, *p2;
Settings *settings = ((Process*)v1)->settings;
- if (settings->direction == 1) {
+ ScreenSettings* ss = settings->ss;
+ if (ss->direction == 1) {
p1 = (Process*)v1;
p2 = (Process*)v2;
} else {
p2 = (Process*)v1;
p1 = (Process*)v2;
}
- switch (settings->sortKey) {
+ switch (ss->sortKey) {
case PERCENT_CPU:
return (p2->percent_cpu > p1->percent_cpu ? 1 : -1);
case PERCENT_MEM:

© 2014-2024 Faster IT GmbH | imprint | privacy policy