diff options
Diffstat (limited to 'src/curses-ui/curses-ui.vala')
-rw-r--r-- | src/curses-ui/curses-ui.vala | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/curses-ui/curses-ui.vala b/src/curses-ui/curses-ui.vala index b3efdd5..28fad08 100644 --- a/src/curses-ui/curses-ui.vala +++ b/src/curses-ui/curses-ui.vala @@ -19,6 +19,7 @@ public class CursesUI { Logo banner; ClockWindow clkwin; StatusPanel statuswin; + MessageBoxOverlay mbOverlay; public CursesUI() { /* unicode support */ @@ -36,7 +37,7 @@ public class CursesUI { Curses.init_pair(1, Curses.Color.GREEN, Curses.Color.BLACK); Curses.init_pair(2, Curses.Color.WHITE, Curses.Color.RED); - /* initialize widgets */ + /* initialize widgets */ banner = new Logo(); statuswin = new StatusPanel(); messages = new MessageBox(); @@ -80,6 +81,11 @@ public class CursesUI { } + public void log_overlay(string title, string message, int closeAfter) { + mbOverlay = new MessageBoxOverlay(title, message, closeAfter); + Timeout.add_seconds(closeAfter, closeMbOverlay); + } + public void dialog_open(string title, string message, int closeAfter=0) { dialog = new Dialog(message, title, closeAfter); if (closeAfter > 0) { @@ -87,6 +93,14 @@ public class CursesUI { } } + bool closeMbOverlay() { + mbOverlay = null; + messages.redraw(); + statuswin.redraw(); + // just call me once + return false; + } + bool close() { dialog_close(); // just call me once |