print_key(footer, "Enter", "Details ", current_view == process_details);
print_key(footer, "Space", "Highlight ", 0);
print_key(footer, "q", "Quit ", 0);
- print_key(footer, "P", "Pref ", 0);
+ print_key(footer, "r", "Pref ", 0);
print_key(footer, "p", "Pause ", toggle_pause);
wrefresh(footer);
double maxcputime;
int nblinedisplayed = 0;
int current_line = 0;
+ int column;
elapsed = data->end - data->start;
maxcputime = elapsed * data->cpu_table->len / 100.0;
set_window_title(center, "CPU Top");
wattron(center, A_BOLD);
- mvwprintw(center, 1, 1, cputopview[0].title);
- mvwprintw(center, 1, 12, cputopview[1].title);
- mvwprintw(center, 1, 22, cputopview[2].title);
- mvwprintw(center, 1, 32, cputopview[3].title);
+ column = 1;
+ for (i = 0; i < 4; i++) {
+ if (cputopview[i].sort)
+ wattron(center, A_UNDERLINE);
+ mvwprintw(center, 1, column, cputopview[i].title);
+ wattroff(center, A_UNDERLINE);
+ column += 10;
+ }
wattroff(center, A_BOLD);
max_center_lines = LINES - 5 - 7 - 1 - header_offset;
mvwprintw(center, current_line + header_offset, 1, "%1.2f",
tmp->totalcpunsec / maxcputime);
/* TGID */
- mvwprintw(center, current_line + header_offset, 12, "%d", tmp->pid);
+ mvwprintw(center, current_line + header_offset, 11, "%d", tmp->pid);
/* PID */
- mvwprintw(center, current_line + header_offset, 22, "%d", tmp->tid);
+ mvwprintw(center, current_line + header_offset, 21, "%d", tmp->tid);
/* NAME */
- mvwprintw(center, current_line + header_offset, 32, "%s", tmp->comm);
+ mvwprintw(center, current_line + header_offset, 31, "%s", tmp->comm);
wattroff(center, COLOR_PAIR(6));
wattroff(center, COLOR_PAIR(5));
nblinedisplayed++;
set_window_title(pref_panel_window, "Process Detail Preferences ");
wattron(pref_panel_window, A_BOLD);
mvwprintw(pref_panel_window, size + 1, 1,
- " 's' to sort");
+ " 's' : sort, space : toggle");
wattroff(pref_panel_window, A_BOLD);
if (*line_selected > (size - 1))
set_window_title(pref_panel_window, "IOTop Preferences ");
wattron(pref_panel_window, A_BOLD);
mvwprintw(pref_panel_window, size + 1, 1,
- " 's' to sort");
+ " 's' : sort, space : toggle");
wattroff(pref_panel_window, A_BOLD);
if (*line_selected > (size - 1))
set_window_title(pref_panel_window, "CPUTop Preferences ");
wattron(pref_panel_window, A_BOLD);
mvwprintw(pref_panel_window, size + 1, 1,
- " 's' to sort");
+ " 's' : sort, space : toggle");
wattroff(pref_panel_window, A_BOLD);
if (*line_selected > (size - 1))
set_window_title(pref_panel_window, "Perf Preferences ");
wattron(pref_panel_window, A_BOLD);
mvwprintw(pref_panel_window, g_hash_table_size(global_perf_liszt) + 1, 1,
- " 's' to sort");
+ " 's' : sort, space : toggle");
wattroff(pref_panel_window, A_BOLD);
if (toggle_sort == 1) {
} else {
print_log("Manually moving forward");
sem_post(&timer);
- /* we force to resume the refresh when moving forward */
- if (toggle_pause > 0)
- resume_display();
+ if (toggle_pause > 0) {
+ sem_post(&pause_sem);
+ update_current_view();
+ sem_wait(&pause_sem);
+ }
}
break;
break;
case 13: /* FIXME : KEY_ENTER ?? */
+ if (pref_panel_visible)
+ break;
if (current_view != process_details) {
previous_view = current_view;
current_view = process_details;
resume_display();
}
break;
- case 'P':
+ case 'r':
toggle_pref_panel();
break;
+ /* ESCAPE, but slow to process, don't know why */
+ case 27:
+ if (pref_panel_visible)
+ toggle_pref_panel();
+ else if (current_view == process_details) {
+ current_view = previous_view;
+ previous_view = process_details;
+ }
+ update_current_view();
+ break;
default:
if (data)
update_current_view();