xref: /linux/tools/perf/ui/helpline.h (revision 4413e16d9d21673bb5048a2e542f1aaa00015c2e)
1 #ifndef _PERF_UI_HELPLINE_H_
2 #define _PERF_UI_HELPLINE_H_ 1
3 
4 #include <stdio.h>
5 #include <stdarg.h>
6 
7 #include "../util/cache.h"
8 
9 struct ui_helpline {
10 	void (*pop)(void);
11 	void (*push)(const char *msg);
12 };
13 
14 extern struct ui_helpline *helpline_fns;
15 
16 void ui_helpline__init(void);
17 
18 void ui_helpline__pop(void);
19 void ui_helpline__push(const char *msg);
20 void ui_helpline__vpush(const char *fmt, va_list ap);
21 void ui_helpline__fpush(const char *fmt, ...);
22 void ui_helpline__puts(const char *msg);
23 
24 extern char ui_helpline__current[512];
25 
26 #ifdef NO_NEWT_SUPPORT
27 static inline int ui_helpline__show_help(const char *format __maybe_unused,
28 					 va_list ap __maybe_unused)
29 {
30 	return 0;
31 }
32 #else
33 extern char ui_helpline__last_msg[];
34 int ui_helpline__show_help(const char *format, va_list ap);
35 #endif /* NO_NEWT_SUPPORT */
36 
37 #ifdef NO_GTK2_SUPPORT
38 static inline int perf_gtk__show_helpline(const char *format __maybe_unused,
39 					  va_list ap __maybe_unused)
40 {
41 	return 0;
42 }
43 #else
44 int perf_gtk__show_helpline(const char *format, va_list ap);
45 #endif /* NO_GTK2_SUPPORT */
46 
47 #endif /* _PERF_UI_HELPLINE_H_ */
48