summaryrefslogtreecommitdiffstats
path: root/src/curses-ui/curses-ui.vala
diff options
context:
space:
mode:
Diffstat (limited to 'src/curses-ui/curses-ui.vala')
-rw-r--r--src/curses-ui/curses-ui.vala16
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