summaryrefslogtreecommitdiffstats
path: root/tools/perf/util/ui
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2010-08-08 19:48:31 -0300
committerArnaldo Carvalho de Melo <acme@redhat.com>2010-08-10 16:08:51 -0300
commit5575536fc7ad7577a4e687a13e2f49acebc519f3 (patch)
tree9cba0637a9fa243b78be5f1083deff11a27f45e9 /tools/perf/util/ui
parentd247eb6b924bbc2f13748c89b6c72c7a3d46645c (diff)
downloadop-kernel-dev-5575536fc7ad7577a4e687a13e2f49acebc519f3.zip
op-kernel-dev-5575536fc7ad7577a4e687a13e2f49acebc519f3.tar.gz
perf ui: Move ui_helpline routines to separate file in util/ui/
LKML-Reference: <new-submission> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/ui')
-rw-r--r--tools/perf/util/ui/helpline.c43
-rw-r--r--tools/perf/util/ui/helpline.h9
2 files changed, 52 insertions, 0 deletions
diff --git a/tools/perf/util/ui/helpline.c b/tools/perf/util/ui/helpline.c
new file mode 100644
index 0000000..6a11e130
--- /dev/null
+++ b/tools/perf/util/ui/helpline.c
@@ -0,0 +1,43 @@
+#define _GNU_SOURCE
+#include <stdio.h>
+#include <stdlib.h>
+#include <newt.h>
+
+#include "helpline.h"
+
+void ui_helpline__pop(void)
+{
+ newtPopHelpLine();
+}
+
+void ui_helpline__push(const char *msg)
+{
+ newtPushHelpLine(msg);
+}
+
+static void ui_helpline__vpush(const char *fmt, va_list ap)
+{
+ char *s;
+
+ if (vasprintf(&s, fmt, ap) < 0)
+ vfprintf(stderr, fmt, ap);
+ else {
+ ui_helpline__push(s);
+ free(s);
+ }
+}
+
+void ui_helpline__fpush(const char *fmt, ...)
+{
+ va_list ap;
+
+ va_start(ap, fmt);
+ ui_helpline__vpush(fmt, ap);
+ va_end(ap);
+}
+
+void ui_helpline__puts(const char *msg)
+{
+ ui_helpline__pop();
+ ui_helpline__push(msg);
+}
diff --git a/tools/perf/util/ui/helpline.h b/tools/perf/util/ui/helpline.h
new file mode 100644
index 0000000..56d8c1d
--- /dev/null
+++ b/tools/perf/util/ui/helpline.h
@@ -0,0 +1,9 @@
+#ifndef _PERF_UI_HELPLINE_H_
+#define _PERF_UI_HELPLINE_H_ 1
+
+void ui_helpline__pop(void);
+void ui_helpline__push(const char *msg);
+void ui_helpline__fpush(const char *fmt, ...);
+void ui_helpline__puts(const char *msg);
+
+#endif /* _PERF_UI_HELPLINE_H_ */
OpenPOWER on IntegriCloud