diff options
Diffstat (limited to 'src/ui/core.c')
-rw-r--r-- | src/ui/core.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/ui/core.c b/src/ui/core.c index 1e9d18e4..992a5701 100644 --- a/src/ui/core.c +++ b/src/ui/core.c @@ -205,6 +205,11 @@ ui_windows_full(void) return TRUE; } +gboolean ui_win_exists(int index) +{ + return (windows[index] != NULL); +} + gboolean ui_duck_exists(void) { @@ -550,12 +555,46 @@ ui_close_current(void) current_win_dirty = TRUE; } +void ui_close_win(int index) +{ + win_free(windows[index]); + windows[index] = NULL; + status_bar_inactive(index); + + if (index == current_index) { + _set_current(0); + } + + status_bar_active(0); + title_bar_title(); + + current_win_dirty = TRUE; +} + win_type_t ui_current_win_type(void) { return current->type; } +int +ui_current_win_index(void) +{ + return current_index; +} + +win_type_t +ui_win_type(int index) +{ + return windows[index]->type; +} + +char * +ui_recipient(int index) +{ + return strdup(windows[index]->from); +} + char * ui_current_recipient(void) { |