diff options
Diffstat (limited to 'tools/perf/util/ui/helpline.c')
-rw-r--r-- | tools/perf/util/ui/helpline.c | 79 |
1 files changed, 0 insertions, 79 deletions
diff --git a/tools/perf/util/ui/helpline.c b/tools/perf/util/ui/helpline.c deleted file mode 100644 index 2f950c2641c8..000000000000 --- a/tools/perf/util/ui/helpline.c +++ /dev/null | |||
@@ -1,79 +0,0 @@ | |||
1 | #include <stdio.h> | ||
2 | #include <stdlib.h> | ||
3 | #include <string.h> | ||
4 | |||
5 | #include "../debug.h" | ||
6 | #include "helpline.h" | ||
7 | #include "ui.h" | ||
8 | #include "libslang.h" | ||
9 | |||
10 | void ui_helpline__pop(void) | ||
11 | { | ||
12 | } | ||
13 | |||
14 | char ui_helpline__current[512]; | ||
15 | |||
16 | void ui_helpline__push(const char *msg) | ||
17 | { | ||
18 | const size_t sz = sizeof(ui_helpline__current); | ||
19 | |||
20 | SLsmg_gotorc(SLtt_Screen_Rows - 1, 0); | ||
21 | SLsmg_set_color(0); | ||
22 | SLsmg_write_nstring((char *)msg, SLtt_Screen_Cols); | ||
23 | SLsmg_refresh(); | ||
24 | strncpy(ui_helpline__current, msg, sz)[sz - 1] = '\0'; | ||
25 | } | ||
26 | |||
27 | void ui_helpline__vpush(const char *fmt, va_list ap) | ||
28 | { | ||
29 | char *s; | ||
30 | |||
31 | if (vasprintf(&s, fmt, ap) < 0) | ||
32 | vfprintf(stderr, fmt, ap); | ||
33 | else { | ||
34 | ui_helpline__push(s); | ||
35 | free(s); | ||
36 | } | ||
37 | } | ||
38 | |||
39 | void ui_helpline__fpush(const char *fmt, ...) | ||
40 | { | ||
41 | va_list ap; | ||
42 | |||
43 | va_start(ap, fmt); | ||
44 | ui_helpline__vpush(fmt, ap); | ||
45 | va_end(ap); | ||
46 | } | ||
47 | |||
48 | void ui_helpline__puts(const char *msg) | ||
49 | { | ||
50 | ui_helpline__pop(); | ||
51 | ui_helpline__push(msg); | ||
52 | } | ||
53 | |||
54 | void ui_helpline__init(void) | ||
55 | { | ||
56 | ui_helpline__puts(" "); | ||
57 | } | ||
58 | |||
59 | char ui_helpline__last_msg[1024]; | ||
60 | |||
61 | int ui_helpline__show_help(const char *format, va_list ap) | ||
62 | { | ||
63 | int ret; | ||
64 | static int backlog; | ||
65 | |||
66 | pthread_mutex_lock(&ui__lock); | ||
67 | ret = vscnprintf(ui_helpline__last_msg + backlog, | ||
68 | sizeof(ui_helpline__last_msg) - backlog, format, ap); | ||
69 | backlog += ret; | ||
70 | |||
71 | if (ui_helpline__last_msg[backlog - 1] == '\n') { | ||
72 | ui_helpline__puts(ui_helpline__last_msg); | ||
73 | SLsmg_refresh(); | ||
74 | backlog = 0; | ||
75 | } | ||
76 | pthread_mutex_unlock(&ui__lock); | ||
77 | |||
78 | return ret; | ||
79 | } | ||