summaryrefslogtreecommitdiffstats
path: root/src/curses-ui/logo.vala
diff options
context:
space:
mode:
Diffstat (limited to 'src/curses-ui/logo.vala')
-rw-r--r--src/curses-ui/logo.vala27
1 files changed, 20 insertions, 7 deletions
diff --git a/src/curses-ui/logo.vala b/src/curses-ui/logo.vala
index dbc716d..c795981 100644
--- a/src/curses-ui/logo.vala
+++ b/src/curses-ui/logo.vala
@@ -18,17 +18,30 @@ using Curses;
public class Logo {
Window win;
- public Logo() {
+ public Logo(string binarylocation) {
win = new Window(8, COLS - 2, 0, 1);
win.bkgdset(COLOR_PAIR(1) | Attribute.BOLD);
win.addstr("\n");
- win.addstr(" _ ___ _____ ____ _ \n");
- win.addstr(" | |/ / ||_ _| / ___|| |__ ___ _ __ \n");
- win.addstr(" | ' /| __|| | \\___ \\| '_ \\ / _ \\| '_ \\ \n");
- win.addstr(" | . \\| |_ | | ___) | | | | (_) | |_) )\n");
- win.addstr(" |_|\\_\\\\__||_| |____/|_| |_|\\___/| .__/ \n");
- win.addstr(" |_| \n");
+
+ var file = File.new_for_path (binarylocation + "/../../logo.txt");
+
+ if (!file.query_exists ()) {
+ stderr.printf ("File '%s' doesn't exist.\n", file.get_path ());
+ }
+
+ try {
+ // Open file for reading and wrap returned FileInputStream into a
+ // DataInputStream, so we can read line by line
+ var dis = new DataInputStream (file.read ());
+ string line;
+ // Read lines until end of file (null) is reached
+ while ((line = dis.read_line (null)) != null) {
+ win.addstr(line+"\n");
+ }
+ } catch (Error e) {
+ error ("%s", e.message);
+ }
win.clrtobot();