Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 205281
b: refs/heads/master
c: 13f499f
h: refs/heads/master
i:
  205279: 90c2a02
v: v3
  • Loading branch information
Arnaldo Carvalho de Melo committed Jun 21, 2010
1 parent bd3d853 commit c79485b
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 32 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 46b0a07a45b07ed5ca8053bbb6ec522982d1a1dd
refs/heads/master: 13f499f076c67675e6e3022973729b5d906a84e9
60 changes: 29 additions & 31 deletions trunk/tools/perf/util/newt.c
Original file line number Diff line number Diff line change
Expand Up @@ -328,6 +328,32 @@ static void ui_browser__reset_index(struct ui_browser *self)
self->seek(self, 0, SEEK_SET);
}

static int ui_browser__show(struct ui_browser *self, const char *title)
{
if (self->form != NULL)
return 0;
ui_browser__refresh_dimensions(self);
newtCenteredWindow(self->width + 2, self->height, title);
self->form = newt_form__new();
if (self->form == NULL)
return -1;

self->sb = newtVerticalScrollbar(self->width + 1, 0, self->height,
HE_COLORSET_NORMAL,
HE_COLORSET_SELECTED);
if (self->sb == NULL)
return -1;

newtFormAddHotKey(self->form, NEWT_KEY_UP);
newtFormAddHotKey(self->form, NEWT_KEY_DOWN);
newtFormAddHotKey(self->form, NEWT_KEY_PGUP);
newtFormAddHotKey(self->form, NEWT_KEY_PGDN);
newtFormAddHotKey(self->form, NEWT_KEY_HOME);
newtFormAddHotKey(self->form, NEWT_KEY_END);
newtFormAddComponent(self->form, self->sb);
return 0;
}

static int objdump_line__show(struct objdump_line *self, struct list_head *head,
int width, struct hist_entry *he, int len,
bool current_entry)
Expand Down Expand Up @@ -406,39 +432,10 @@ static int ui_browser__refresh_entries(struct ui_browser *self)
return 0;
}

static int ui_browser__run(struct ui_browser *self, const char *title,
struct newtExitStruct *es)
static int ui_browser__run(struct ui_browser *self, struct newtExitStruct *es)
{
if (self->form) {
newtFormDestroy(self->form);
newtPopWindow();
}

ui_browser__refresh_dimensions(self);
newtCenteredWindow(self->width + 2, self->height, title);
self->form = newt_form__new();
if (self->form == NULL)
return -1;

self->sb = newtVerticalScrollbar(self->width + 1, 0, self->height,
HE_COLORSET_NORMAL,
HE_COLORSET_SELECTED);
if (self->sb == NULL)
return -1;

newtFormAddHotKey(self->form, NEWT_KEY_UP);
newtFormAddHotKey(self->form, NEWT_KEY_DOWN);
newtFormAddHotKey(self->form, NEWT_KEY_PGUP);
newtFormAddHotKey(self->form, NEWT_KEY_PGDN);
newtFormAddHotKey(self->form, ' ');
newtFormAddHotKey(self->form, NEWT_KEY_HOME);
newtFormAddHotKey(self->form, NEWT_KEY_END);
newtFormAddHotKey(self->form, NEWT_KEY_TAB);
newtFormAddHotKey(self->form, NEWT_KEY_RIGHT);

if (ui_browser__refresh_entries(self) < 0)
return -1;
newtFormAddComponent(self->form, self->sb);

while (1) {
off_t offset;
Expand Down Expand Up @@ -733,7 +730,8 @@ int hist_entry__tui_annotate(struct hist_entry *self)
}

browser.width += 18; /* Percentage */
ret = ui_browser__run(&browser, self->ms.sym->name, &es);
ui_browser__show(&browser, self->ms.sym->name);
ui_browser__run(&browser, &es);
newtFormDestroy(browser.form);
newtPopWindow();
list_for_each_entry_safe(pos, n, &head, node) {
Expand Down

0 comments on commit c79485b

Please sign in to comment.