mirror of https://github.com/xzeldon/htop.git
alignment improvements
This commit is contained in:
parent
953ec71235
commit
6d90e58c01
6
CRT.c
6
CRT.c
|
@ -123,6 +123,8 @@ int CRT_colors[LAST_COLORELEMENT] = { 0 };
|
|||
|
||||
int CRT_cursorX = 0;
|
||||
|
||||
int CRT_scrollHAmount = 5;
|
||||
|
||||
char* CRT_termType;
|
||||
|
||||
void *backtraceArray[128];
|
||||
|
@ -173,6 +175,10 @@ void CRT_init(int delay, int colorScheme) {
|
|||
CRT_hasColors = false;
|
||||
}
|
||||
CRT_termType = getenv("TERM");
|
||||
if (String_eq(CRT_termType, "linux"))
|
||||
CRT_scrollHAmount = 20;
|
||||
else
|
||||
CRT_scrollHAmount = 5;
|
||||
if (String_eq(CRT_termType, "xterm") || String_eq(CRT_termType, "xterm-color") || String_eq(CRT_termType, "vt220")) {
|
||||
define_key("\033[H", KEY_HOME);
|
||||
define_key("\033[F", KEY_END);
|
||||
|
|
2
CRT.h
2
CRT.h
|
@ -109,6 +109,8 @@ extern int CRT_colors[LAST_COLORELEMENT];
|
|||
|
||||
extern int CRT_cursorX;
|
||||
|
||||
extern int CRT_scrollHAmount;
|
||||
|
||||
char* CRT_termType;
|
||||
|
||||
void *backtraceArray[128];
|
||||
|
|
|
@ -18,8 +18,8 @@ in the source distribution for its full text.
|
|||
typedef struct CheckItem_ {
|
||||
Object super;
|
||||
char* text;
|
||||
bool value;
|
||||
bool* ref;
|
||||
bool value;
|
||||
} CheckItem;
|
||||
|
||||
}*/
|
||||
|
|
|
@ -14,8 +14,8 @@ in the source distribution for its full text.
|
|||
typedef struct CheckItem_ {
|
||||
Object super;
|
||||
char* text;
|
||||
bool value;
|
||||
bool* ref;
|
||||
bool value;
|
||||
} CheckItem;
|
||||
|
||||
|
||||
|
|
2
Header.c
2
Header.c
|
@ -37,9 +37,9 @@ typedef struct Header_ {
|
|||
Vector* leftMeters;
|
||||
Vector* rightMeters;
|
||||
ProcessList* pl;
|
||||
bool margin;
|
||||
int height;
|
||||
int pad;
|
||||
bool margin;
|
||||
} Header;
|
||||
|
||||
}*/
|
||||
|
|
2
Header.h
2
Header.h
|
@ -21,9 +21,9 @@ typedef struct Header_ {
|
|||
Vector* leftMeters;
|
||||
Vector* rightMeters;
|
||||
ProcessList* pl;
|
||||
bool margin;
|
||||
int height;
|
||||
int pad;
|
||||
bool margin;
|
||||
} Header;
|
||||
|
||||
|
||||
|
|
31
Meter.c
31
Meter.c
|
@ -143,6 +143,7 @@ MeterClass* Meter_types[] = {
|
|||
&RightCPUsMeter_class,
|
||||
&LeftCPUs2Meter_class,
|
||||
&RightCPUs2Meter_class,
|
||||
&BlankMeter_class,
|
||||
NULL
|
||||
};
|
||||
|
||||
|
@ -470,3 +471,33 @@ MeterMode* Meter_modes[] = {
|
|||
&LEDMeterMode,
|
||||
NULL
|
||||
};
|
||||
|
||||
/* Blank meter */
|
||||
|
||||
static void BlankMeter_setValues(Meter* this, char* buffer, int size) {
|
||||
(void) this; (void) buffer; (void) size;
|
||||
}
|
||||
|
||||
static void BlankMeter_display(Object* cast, RichString* out) {
|
||||
(void) cast;
|
||||
RichString_prune(out);
|
||||
}
|
||||
|
||||
int BlankMeter_attributes[] = {
|
||||
DEFAULT_COLOR
|
||||
};
|
||||
|
||||
MeterClass BlankMeter_class = {
|
||||
.super = {
|
||||
.extends = Class(Meter),
|
||||
.delete = Meter_delete,
|
||||
.display = BlankMeter_display,
|
||||
},
|
||||
.setValues = BlankMeter_setValues,
|
||||
.defaultMode = TEXT_METERMODE,
|
||||
.total = 100.0,
|
||||
.attributes = BlankMeter_attributes,
|
||||
.name = "Blank",
|
||||
.uiName = "Blank",
|
||||
.caption = ""
|
||||
};
|
||||
|
|
6
Meter.h
6
Meter.h
|
@ -123,4 +123,10 @@ ListItem* Meter_toListItem(Meter* this);
|
|||
|
||||
extern MeterMode* Meter_modes[];
|
||||
|
||||
/* Blank meter */
|
||||
|
||||
extern int BlankMeter_attributes[];
|
||||
|
||||
extern MeterClass BlankMeter_class;
|
||||
|
||||
#endif
|
||||
|
|
|
@ -29,9 +29,9 @@ in the source distribution for its full text.
|
|||
#include "FunctionBar.h"
|
||||
|
||||
typedef struct OpenFiles_ProcessData_ {
|
||||
char* data[256];
|
||||
struct OpenFiles_FileData_* files;
|
||||
int error;
|
||||
char* data[256];
|
||||
} OpenFiles_ProcessData;
|
||||
|
||||
typedef struct OpenFiles_FileData_ {
|
||||
|
|
|
@ -14,9 +14,9 @@ in the source distribution for its full text.
|
|||
#include "FunctionBar.h"
|
||||
|
||||
typedef struct OpenFiles_ProcessData_ {
|
||||
char* data[256];
|
||||
struct OpenFiles_FileData_* files;
|
||||
int error;
|
||||
char* data[256];
|
||||
} OpenFiles_ProcessData;
|
||||
|
||||
typedef struct OpenFiles_FileData_ {
|
||||
|
|
34
Panel.c
34
Panel.c
|
@ -53,12 +53,12 @@ struct Panel_ {
|
|||
WINDOW* window;
|
||||
Vector* items;
|
||||
int selected;
|
||||
int scrollV, scrollH;
|
||||
int scrollHAmount;
|
||||
int oldSelected;
|
||||
char* eventHandlerBuffer;
|
||||
int scrollV;
|
||||
short scrollH;
|
||||
bool needsRedraw;
|
||||
RichString header;
|
||||
char* eventHandlerBuffer;
|
||||
};
|
||||
|
||||
}*/
|
||||
|
@ -110,10 +110,6 @@ void Panel_init(Panel* this, int x, int y, int w, int h, ObjectClass* type, bool
|
|||
this->oldSelected = 0;
|
||||
this->needsRedraw = true;
|
||||
RichString_beginAllocated(this->header);
|
||||
if (String_eq(CRT_termType, "linux"))
|
||||
this->scrollHAmount = 20;
|
||||
else
|
||||
this->scrollHAmount = 5;
|
||||
}
|
||||
|
||||
void Panel_done(Panel* this) {
|
||||
|
@ -299,18 +295,16 @@ void Panel_draw(Panel* this, bool focus) {
|
|||
Object_display(itemObj, &item);
|
||||
int itemLen = RichString_sizeVal(item);
|
||||
int amt = MIN(itemLen - scrollH, this->w);
|
||||
if (i == this->selected) {
|
||||
bool selected = (i == this->selected);
|
||||
if (selected) {
|
||||
attrset(highlight);
|
||||
RichString_setAttr(&item, highlight);
|
||||
mvhline(y + j, x+0, ' ', this->w);
|
||||
if (amt > 0)
|
||||
RichString_printoffnVal(item, y+j, x+0, scrollH, amt);
|
||||
attrset(CRT_colors[RESET_COLOR]);
|
||||
} else {
|
||||
mvhline(y+j, x+0, ' ', this->w);
|
||||
if (amt > 0)
|
||||
RichString_printoffnVal(item, y+j, x+0, scrollH, amt);
|
||||
}
|
||||
mvhline(y + j, x, ' ', this->w);
|
||||
if (amt > 0)
|
||||
RichString_printoffnVal(item, y+j, x, scrollH, amt);
|
||||
if (selected)
|
||||
attrset(CRT_colors[RESET_COLOR]);
|
||||
RichString_end(item);
|
||||
}
|
||||
for (int i = y + (last - first); i < y + this->h; i++)
|
||||
|
@ -330,13 +324,13 @@ void Panel_draw(Panel* this, bool focus) {
|
|||
mvhline(y+ this->oldSelected - this->scrollV, x+0, ' ', this->w);
|
||||
if (scrollH < oldLen)
|
||||
RichString_printoffnVal(old, y+this->oldSelected - this->scrollV, x,
|
||||
this->scrollH, MIN(oldLen - scrollH, this->w));
|
||||
scrollH, MIN(oldLen - scrollH, this->w));
|
||||
attrset(highlight);
|
||||
mvhline(y+this->selected - this->scrollV, x+0, ' ', this->w);
|
||||
RichString_setAttr(&new, highlight);
|
||||
if (scrollH < newLen)
|
||||
RichString_printoffnVal(new, y+this->selected - this->scrollV, x,
|
||||
this->scrollH, MIN(newLen - scrollH, this->w));
|
||||
scrollH, MIN(newLen - scrollH, this->w));
|
||||
attrset(CRT_colors[RESET_COLOR]);
|
||||
RichString_end(new);
|
||||
RichString_end(old);
|
||||
|
@ -383,13 +377,13 @@ bool Panel_onKey(Panel* this, int key) {
|
|||
case KEY_LEFT:
|
||||
case KEY_CTRLB:
|
||||
if (this->scrollH > 0) {
|
||||
this->scrollH -= 5;
|
||||
this->scrollH -= CRT_scrollHAmount;
|
||||
this->needsRedraw = true;
|
||||
}
|
||||
return true;
|
||||
case KEY_RIGHT:
|
||||
case KEY_CTRLF:
|
||||
this->scrollH += 5;
|
||||
this->scrollH += CRT_scrollHAmount;
|
||||
this->needsRedraw = true;
|
||||
return true;
|
||||
case KEY_PPAGE:
|
||||
|
|
6
Panel.h
6
Panel.h
|
@ -42,12 +42,12 @@ struct Panel_ {
|
|||
WINDOW* window;
|
||||
Vector* items;
|
||||
int selected;
|
||||
int scrollV, scrollH;
|
||||
int scrollHAmount;
|
||||
int oldSelected;
|
||||
char* eventHandlerBuffer;
|
||||
int scrollV;
|
||||
short scrollH;
|
||||
bool needsRedraw;
|
||||
RichString header;
|
||||
char* eventHandlerBuffer;
|
||||
};
|
||||
|
||||
|
||||
|
|
99
Process.c
99
Process.c
|
@ -94,7 +94,6 @@ typedef struct Process_ {
|
|||
Object super;
|
||||
|
||||
struct ProcessList_ *pl;
|
||||
bool updated;
|
||||
|
||||
pid_t pid;
|
||||
char* comm;
|
||||
|
@ -110,12 +109,12 @@ typedef struct Process_ {
|
|||
pid_t tgid;
|
||||
int tpgid;
|
||||
unsigned long int flags;
|
||||
#ifdef DEBUG
|
||||
unsigned long int minflt;
|
||||
unsigned long int cminflt;
|
||||
unsigned long int majflt;
|
||||
unsigned long int cmajflt;
|
||||
#endif
|
||||
|
||||
uid_t st_uid;
|
||||
float percent_cpu;
|
||||
float percent_mem;
|
||||
char* user;
|
||||
|
||||
unsigned long long int utime;
|
||||
unsigned long long int stime;
|
||||
unsigned long long int cutime;
|
||||
|
@ -126,7 +125,53 @@ typedef struct Process_ {
|
|||
IOPriority ioPriority;
|
||||
char starttime_show[8];
|
||||
time_t starttime_ctime;
|
||||
|
||||
#ifdef HAVE_TASKSTATS
|
||||
unsigned long long io_rchar;
|
||||
unsigned long long io_wchar;
|
||||
unsigned long long io_syscr;
|
||||
unsigned long long io_syscw;
|
||||
unsigned long long io_read_bytes;
|
||||
unsigned long long io_write_bytes;
|
||||
unsigned long long io_cancelled_write_bytes;
|
||||
double io_rate_read_bps;
|
||||
unsigned long long io_rate_read_time;
|
||||
double io_rate_write_bps;
|
||||
unsigned long long io_rate_write_time;
|
||||
#endif
|
||||
|
||||
int processor;
|
||||
int m_size;
|
||||
int m_resident;
|
||||
int m_share;
|
||||
int m_trs;
|
||||
int m_drs;
|
||||
int m_lrs;
|
||||
int m_dt;
|
||||
|
||||
#ifdef HAVE_OPENVZ
|
||||
unsigned int ctid;
|
||||
unsigned int vpid;
|
||||
#endif
|
||||
#ifdef HAVE_VSERVER
|
||||
unsigned int vxid;
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_CGROUP
|
||||
char* cgroup;
|
||||
#endif
|
||||
#ifdef HAVE_OOM
|
||||
unsigned int oom;
|
||||
#endif
|
||||
|
||||
int exit_signal;
|
||||
bool updated;
|
||||
|
||||
#ifdef DEBUG
|
||||
unsigned long int minflt;
|
||||
unsigned long int cminflt;
|
||||
unsigned long int majflt;
|
||||
unsigned long int cmajflt;
|
||||
long int itrealvalue;
|
||||
unsigned long int vsize;
|
||||
long int rss;
|
||||
|
@ -144,45 +189,7 @@ typedef struct Process_ {
|
|||
unsigned long int nswap;
|
||||
unsigned long int cnswap;
|
||||
#endif
|
||||
int exit_signal;
|
||||
int processor;
|
||||
int m_size;
|
||||
int m_resident;
|
||||
int m_share;
|
||||
int m_trs;
|
||||
int m_drs;
|
||||
int m_lrs;
|
||||
int m_dt;
|
||||
uid_t st_uid;
|
||||
float percent_cpu;
|
||||
float percent_mem;
|
||||
char* user;
|
||||
#ifdef HAVE_OPENVZ
|
||||
unsigned int ctid;
|
||||
unsigned int vpid;
|
||||
#endif
|
||||
#ifdef HAVE_VSERVER
|
||||
unsigned int vxid;
|
||||
#endif
|
||||
#ifdef HAVE_TASKSTATS
|
||||
unsigned long long io_rchar;
|
||||
unsigned long long io_wchar;
|
||||
unsigned long long io_syscr;
|
||||
unsigned long long io_syscw;
|
||||
unsigned long long io_read_bytes;
|
||||
unsigned long long io_write_bytes;
|
||||
unsigned long long io_cancelled_write_bytes;
|
||||
double io_rate_read_bps;
|
||||
unsigned long long io_rate_read_time;
|
||||
double io_rate_write_bps;
|
||||
unsigned long long io_rate_write_time;
|
||||
#endif
|
||||
#ifdef HAVE_CGROUP
|
||||
char* cgroup;
|
||||
#endif
|
||||
#ifdef HAVE_OOM
|
||||
unsigned int oom;
|
||||
#endif
|
||||
|
||||
} Process;
|
||||
|
||||
}*/
|
||||
|
|
102
Process.h
102
Process.h
|
@ -73,7 +73,6 @@ typedef struct Process_ {
|
|||
Object super;
|
||||
|
||||
struct ProcessList_ *pl;
|
||||
bool updated;
|
||||
|
||||
pid_t pid;
|
||||
char* comm;
|
||||
|
@ -89,12 +88,12 @@ typedef struct Process_ {
|
|||
pid_t tgid;
|
||||
int tpgid;
|
||||
unsigned long int flags;
|
||||
#ifdef DEBUG
|
||||
unsigned long int minflt;
|
||||
unsigned long int cminflt;
|
||||
unsigned long int majflt;
|
||||
unsigned long int cmajflt;
|
||||
#endif
|
||||
|
||||
uid_t st_uid;
|
||||
float percent_cpu;
|
||||
float percent_mem;
|
||||
char* user;
|
||||
|
||||
unsigned long long int utime;
|
||||
unsigned long long int stime;
|
||||
unsigned long long int cutime;
|
||||
|
@ -105,7 +104,53 @@ typedef struct Process_ {
|
|||
IOPriority ioPriority;
|
||||
char starttime_show[8];
|
||||
time_t starttime_ctime;
|
||||
|
||||
#ifdef HAVE_TASKSTATS
|
||||
unsigned long long io_rchar;
|
||||
unsigned long long io_wchar;
|
||||
unsigned long long io_syscr;
|
||||
unsigned long long io_syscw;
|
||||
unsigned long long io_read_bytes;
|
||||
unsigned long long io_write_bytes;
|
||||
unsigned long long io_cancelled_write_bytes;
|
||||
double io_rate_read_bps;
|
||||
unsigned long long io_rate_read_time;
|
||||
double io_rate_write_bps;
|
||||
unsigned long long io_rate_write_time;
|
||||
#endif
|
||||
|
||||
int processor;
|
||||
int m_size;
|
||||
int m_resident;
|
||||
int m_share;
|
||||
int m_trs;
|
||||
int m_drs;
|
||||
int m_lrs;
|
||||
int m_dt;
|
||||
|
||||
#ifdef HAVE_OPENVZ
|
||||
unsigned int ctid;
|
||||
unsigned int vpid;
|
||||
#endif
|
||||
#ifdef HAVE_VSERVER
|
||||
unsigned int vxid;
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_CGROUP
|
||||
char* cgroup;
|
||||
#endif
|
||||
#ifdef HAVE_OOM
|
||||
unsigned int oom;
|
||||
#endif
|
||||
|
||||
int exit_signal;
|
||||
bool updated;
|
||||
|
||||
#ifdef DEBUG
|
||||
unsigned long int minflt;
|
||||
unsigned long int cminflt;
|
||||
unsigned long int majflt;
|
||||
unsigned long int cmajflt;
|
||||
long int itrealvalue;
|
||||
unsigned long int vsize;
|
||||
long int rss;
|
||||
|
@ -123,45 +168,7 @@ typedef struct Process_ {
|
|||
unsigned long int nswap;
|
||||
unsigned long int cnswap;
|
||||
#endif
|
||||
int exit_signal;
|
||||
int processor;
|
||||
int m_size;
|
||||
int m_resident;
|
||||
int m_share;
|
||||
int m_trs;
|
||||
int m_drs;
|
||||
int m_lrs;
|
||||
int m_dt;
|
||||
uid_t st_uid;
|
||||
float percent_cpu;
|
||||
float percent_mem;
|
||||
char* user;
|
||||
#ifdef HAVE_OPENVZ
|
||||
unsigned int ctid;
|
||||
unsigned int vpid;
|
||||
#endif
|
||||
#ifdef HAVE_VSERVER
|
||||
unsigned int vxid;
|
||||
#endif
|
||||
#ifdef HAVE_TASKSTATS
|
||||
unsigned long long io_rchar;
|
||||
unsigned long long io_wchar;
|
||||
unsigned long long io_syscr;
|
||||
unsigned long long io_syscw;
|
||||
unsigned long long io_read_bytes;
|
||||
unsigned long long io_write_bytes;
|
||||
unsigned long long io_cancelled_write_bytes;
|
||||
double io_rate_read_bps;
|
||||
unsigned long long io_rate_read_time;
|
||||
double io_rate_write_bps;
|
||||
unsigned long long io_rate_write_time;
|
||||
#endif
|
||||
#ifdef HAVE_CGROUP
|
||||
char* cgroup;
|
||||
#endif
|
||||
#ifdef HAVE_OOM
|
||||
unsigned int oom;
|
||||
#endif
|
||||
|
||||
} Process;
|
||||
|
||||
|
||||
|
@ -178,6 +185,9 @@ void Process_getMaxPid();
|
|||
#define ONE_M (ONE_K * ONE_K)
|
||||
#define ONE_G (ONE_M * ONE_K)
|
||||
|
||||
#define ONE_DECIMAL_K 1000
|
||||
#define ONE_DECIMAL_M (ONE_DECIMAL_K * ONE_DECIMAL_K)
|
||||
|
||||
void Process_delete(Object* cast);
|
||||
|
||||
extern ObjectClass Process_class;
|
||||
|
|
|
@ -99,6 +99,7 @@ typedef struct CPUData_ {
|
|||
} CPUData;
|
||||
|
||||
typedef struct ProcessList_ {
|
||||
const char **treeStr;
|
||||
Vector* processes;
|
||||
Vector* processes2;
|
||||
Hashtable* processTable;
|
||||
|
@ -106,7 +107,6 @@ typedef struct ProcessList_ {
|
|||
|
||||
Panel* panel;
|
||||
int following;
|
||||
bool userOnly;
|
||||
uid_t userId;
|
||||
const char* incFilter;
|
||||
Hashtable* pidWhiteList;
|
||||
|
@ -151,7 +151,7 @@ typedef struct ProcessList_ {
|
|||
bool countCPUsFromZero;
|
||||
bool updateProcessNames;
|
||||
bool accountGuestInCPUMeter;
|
||||
const char **treeStr;
|
||||
bool userOnly;
|
||||
|
||||
} ProcessList;
|
||||
|
||||
|
|
|
@ -79,6 +79,7 @@ typedef struct CPUData_ {
|
|||
} CPUData;
|
||||
|
||||
typedef struct ProcessList_ {
|
||||
const char **treeStr;
|
||||
Vector* processes;
|
||||
Vector* processes2;
|
||||
Hashtable* processTable;
|
||||
|
@ -86,7 +87,6 @@ typedef struct ProcessList_ {
|
|||
|
||||
Panel* panel;
|
||||
int following;
|
||||
bool userOnly;
|
||||
uid_t userId;
|
||||
const char* incFilter;
|
||||
Hashtable* pidWhiteList;
|
||||
|
@ -131,7 +131,7 @@ typedef struct ProcessList_ {
|
|||
bool countCPUsFromZero;
|
||||
bool updateProcessNames;
|
||||
bool accountGuestInCPUMeter;
|
||||
const char **treeStr;
|
||||
bool userOnly;
|
||||
|
||||
} ProcessList;
|
||||
|
||||
|
|
|
@ -154,6 +154,7 @@ void RichString_prune(RichString* this) {
|
|||
free(this->chptr);
|
||||
this->chptr = this->chstr;
|
||||
this->chlen = 0;
|
||||
RichString_setChar(this, 0, 0);
|
||||
}
|
||||
|
||||
void RichString_setAttr(RichString* this, int attrs) {
|
||||
|
|
|
@ -27,8 +27,8 @@ typedef struct Settings_ {
|
|||
ProcessList* pl;
|
||||
Header* header;
|
||||
int colorScheme;
|
||||
bool changed;
|
||||
int delay;
|
||||
bool changed;
|
||||
} Settings;
|
||||
|
||||
}*/
|
||||
|
|
|
@ -20,8 +20,8 @@ typedef struct Settings_ {
|
|||
ProcessList* pl;
|
||||
Header* header;
|
||||
int colorScheme;
|
||||
bool changed;
|
||||
int delay;
|
||||
bool changed;
|
||||
} Settings;
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue