Skip to content

Commit

Permalink
perf ui: Move ui_helpline routines to separate file in util/ui/
Browse files Browse the repository at this point in the history
LKML-Reference: <new-submission>
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
  • Loading branch information
acmel committed Aug 10, 2010
1 parent d247eb6 commit 5575536
Show file tree
Hide file tree
Showing 4 changed files with 55 additions and 37 deletions.
2 changes: 2 additions & 0 deletions tools/perf/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -569,7 +569,9 @@ else
EXTLIBS += -lnewt -lslang
LIB_OBJS += $(OUTPUT)util/newt.o
LIB_OBJS += $(OUTPUT)util/ui/browser.o
LIB_OBJS += $(OUTPUT)util/ui/helpline.o
LIB_H += util/ui/browser.h
LIB_H += util/ui/helpline.h
endif
endif

Expand Down
38 changes: 1 addition & 37 deletions tools/perf/util/newt.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
#include "sort.h"
#include "symbol.h"
#include "ui/browser.h"
#include "ui/helpline.h"

#if SLANG_VERSION < 20104
#define slsmg_printf(msg, args...) SLsmg_printf((char *)msg, ##args)
Expand Down Expand Up @@ -94,43 +95,6 @@ void ui_progress__delete(struct ui_progress *self)
free(self);
}

static void ui_helpline__pop(void)
{
newtPopHelpLine();
}

static 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);
}
}

static void ui_helpline__fpush(const char *fmt, ...)
{
va_list ap;

va_start(ap, fmt);
ui_helpline__vpush(fmt, ap);
va_end(ap);
}

static void ui_helpline__puts(const char *msg)
{
ui_helpline__pop();
ui_helpline__push(msg);
}

static int ui_entry__read(const char *title, char *bf, size_t size, int width)
{
struct newtExitStruct es;
Expand Down
43 changes: 43 additions & 0 deletions tools/perf/util/ui/helpline.c
Original file line number Diff line number Diff line change
@@ -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);
}
9 changes: 9 additions & 0 deletions tools/perf/util/ui/helpline.h
Original file line number Diff line number Diff line change
@@ -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_ */

0 comments on commit 5575536

Please sign in to comment.