summaryrefslogtreecommitdiffstats
path: root/tools/perf/ui/helpline.h
blob: a2487f93aa48cc4bc53610c5c704c931ddf09c76 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#ifndef _PERF_UI_HELPLINE_H_
#define _PERF_UI_HELPLINE_H_ 1

#include <stdio.h>
#include <stdarg.h>

#include "../util/cache.h"

struct ui_helpline {
	void (*pop)(void);
	void (*push)(const char *msg);
};

extern struct ui_helpline *helpline_fns;

void ui_helpline__init(void);

void ui_helpline__pop(void);
void ui_helpline__push(const char *msg);
void ui_helpline__vpush(const char *fmt, va_list ap);
void ui_helpline__fpush(const char *fmt, ...);
void ui_helpline__puts(const char *msg);

extern char ui_helpline__current[512];

#ifdef NO_NEWT_SUPPORT
static inline int ui_helpline__show_help(const char *format __used,
					 va_list ap __used)
{
	return 0;
}
#else
extern char ui_helpline__last_msg[];
int ui_helpline__show_help(const char *format, va_list ap);
#endif /* NO_NEWT_SUPPORT */

#ifdef NO_GTK2_SUPPORT
static inline int perf_gtk__show_helpline(const char *format __used,
					  va_list ap __used)
{
	return 0;
}
#else
int perf_gtk__show_helpline(const char *format, va_list ap);
#endif /* NO_GTK2_SUPPORT */

#endif /* _PERF_UI_HELPLINE_H_ */