Skip to content

Commit

Permalink
ui browser: Add method to write graphical characters
Browse files Browse the repository at this point in the history
To save typing on the switch char set slang stuff.

It also helps in removing more slang direct calls, wrapping them at the
ui_browser level, where at some point I'll try to implement those in
terms of GTK+.

Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/n/tip-63yhb2htv9g3g1olmojzptkd@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
  • Loading branch information
Arnaldo Carvalho de Melo committed Apr 20, 2012
1 parent c4cceae commit 59d038d
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 10 deletions.
7 changes: 7 additions & 0 deletions tools/perf/ui/browser.c
Original file line number Diff line number Diff line change
Expand Up @@ -593,6 +593,13 @@ unsigned int ui_browser__argv_refresh(struct ui_browser *browser)
return row;
}

void ui_browser__write_graph(struct ui_browser *browser __used, int graph)
{
SLsmg_set_char_set(1);
SLsmg_write_char(graph);
SLsmg_set_char_set(0);
}

void ui_browser__init(void)
{
int i = 0;
Expand Down
1 change: 1 addition & 0 deletions tools/perf/ui/browser.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ void ui_browser__refresh_dimensions(struct ui_browser *self);
void ui_browser__reset_index(struct ui_browser *self);

void ui_browser__gotorc(struct ui_browser *self, int y, int x);
void ui_browser__write_graph(struct ui_browser *browser, int graph);
void __ui_browser__show_title(struct ui_browser *browser, const char *title);
void ui_browser__show_title(struct ui_browser *browser, const char *title);
int ui_browser__show(struct ui_browser *self, const char *title,
Expand Down
14 changes: 4 additions & 10 deletions tools/perf/ui/browsers/annotate.c
Original file line number Diff line number Diff line change
Expand Up @@ -71,9 +71,7 @@ static void annotate_browser__write(struct ui_browser *self, void *entry, int ro
slsmg_write_nstring(" ", 9);
}

SLsmg_set_char_set(1);
SLsmg_write_char(SLSMG_VLINE_CHAR);
SLsmg_set_char_set(0);
ui_browser__write_graph(self, SLSMG_VLINE_CHAR);
SLsmg_write_char(' ');

/* The scroll bar isn't being used */
Expand Down Expand Up @@ -116,10 +114,8 @@ static void annotate_browser__write(struct ui_browser *self, void *entry, int ro
if (ins__is_jump(dl->ins)) {
bool fwd = dl->ops.target > (u64)dl->offset;

SLsmg_set_char_set(1);
SLsmg_write_char(fwd ? SLSMG_DARROW_CHAR :
SLSMG_UARROW_CHAR);
SLsmg_set_char_set(0);
ui_browser__write_graph(self, fwd ? SLSMG_DARROW_CHAR :
SLSMG_UARROW_CHAR);
SLsmg_write_char(' ');
} else {
slsmg_write_nstring(" ", 2);
Expand All @@ -131,9 +127,7 @@ static void annotate_browser__write(struct ui_browser *self, void *entry, int ro
if (strcmp(dl->name, "retq")) {
slsmg_write_nstring(" ", 2);
} else {
SLsmg_set_char_set(1);
SLsmg_write_char(SLSMG_LARROW_CHAR);
SLsmg_set_char_set(0);
ui_browser__write_graph(self, SLSMG_LARROW_CHAR);
SLsmg_write_char(' ');
}

Expand Down

0 comments on commit 59d038d

Please sign in to comment.