@@ -1018,6 +1018,30 @@ class Tui(object):
1018
1018
self .screen .addstr (4 , 1 , 'No matching events reported yet' )
1019
1019
self .screen .refresh ()
1020
1020
1021
+ def show_help_interactive (self ):
1022
+ """Display help with list of interactive commands"""
1023
+ msg = (' c clear filter' ,
1024
+ ' f filter by regular expression' ,
1025
+ ' g filter by guest name' ,
1026
+ ' h display interactive commands reference' ,
1027
+ ' p filter by PID' ,
1028
+ ' q quit' ,
1029
+ ' r reset stats' ,
1030
+ ' x toggle reporting of stats for individual child trace'
1031
+ ' events' ,
1032
+ 'Any other key refreshes statistics immediately' )
1033
+ curses .cbreak ()
1034
+ self .screen .erase ()
1035
+ self .screen .addstr (0 , 0 , "Interactive commands reference" ,
1036
+ curses .A_BOLD )
1037
+ self .screen .addstr (2 , 0 , "Press any key to exit" , curses .A_STANDOUT )
1038
+ row = 4
1039
+ for line in msg :
1040
+ self .screen .addstr (row , 0 , line )
1041
+ row += 1
1042
+ self .screen .getkey ()
1043
+ self .refresh_header ()
1044
+
1021
1045
def show_filter_selection (self ):
1022
1046
"""Draws filter selection mask.
1023
1047
@@ -1142,10 +1166,6 @@ class Tui(object):
1142
1166
sleeptime = DELAY_REGULAR
1143
1167
try :
1144
1168
char = self .screen .getkey ()
1145
- if char == 'x' :
1146
- self .update_drilldown ()
1147
- if char == 'q' :
1148
- break
1149
1169
if char == 'c' :
1150
1170
self .stats .fields_filter = DEFAULT_REGEX
1151
1171
self .refresh_header (0 )
@@ -1160,13 +1180,19 @@ class Tui(object):
1160
1180
self .show_vm_selection_by_guest_name ()
1161
1181
curses .curs_set (0 )
1162
1182
sleeptime = DELAY_INITIAL
1183
+ if char == 'h' :
1184
+ self .show_help_interactive ()
1163
1185
if char == 'p' :
1164
1186
curses .curs_set (1 )
1165
1187
self .show_vm_selection_by_pid ()
1166
1188
curses .curs_set (0 )
1167
1189
sleeptime = DELAY_INITIAL
1190
+ if char == 'q' :
1191
+ break
1168
1192
if char == 'r' :
1169
1193
self .stats .reset ()
1194
+ if char == 'x' :
1195
+ self .update_drilldown ()
1170
1196
except KeyboardInterrupt :
1171
1197
break
1172
1198
except curses .error :
@@ -1237,10 +1263,11 @@ Interactive Commands:
1237
1263
c clear filter
1238
1264
f filter by regular expression
1239
1265
g filter by guest name
1266
+ h display interactive commands reference
1240
1267
p filter by PID
1241
1268
q quit
1242
- x toggle reporting of stats for individual child trace events
1243
1269
r reset stats
1270
+ x toggle reporting of stats for individual child trace events
1244
1271
Press any other key to refresh statistics immediately.
1245
1272
"""
1246
1273
0 commit comments