/*
- * Copyright (C) 2012 Andy Spencer <andy753421@gmail.com>
+ * Copyright (C) 2012-2013 Andy Spencer <andy753421@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
#define COLOR_WORK 8
#define COLOR_OTHER 9
+/* Display flags */
+#define SHOW_DETAILS 0x1
+#define SHOW_ACTIVE 0x2
+
+/* Edit modes */
+typedef enum {
+ EDIT_NONE,
+ EDIT_CAL,
+ EDIT_EVENT,
+ EDIT_TODO,
+} edit_t;
+
/* Config data */
-extern int COMPACT;
-extern int ACTIVE;
+extern int COMPACT; // reduce layout spacing
+extern int MORNING; // first line to display
+
+/* Global data */
+extern edit_t EDIT; // edit mode 0=cal 1=event 3=todo
+
+/* Curses typedefs */
+typedef struct _win_st WINDOW;
/* Curses functions */
void wmvresize(WINDOW *win, int top, int left, int rows, int cols);
/* Helper functions */
void event_box(WINDOW *win, event_t *event, int y, int x, int h, int w);
-void event_line(WINDOW *win, event_t *event, int y, int x, int w, int full);
-void todo_line(WINDOW *win, todo_t *todo, int y, int x, int w, int full);
+void event_line(WINDOW *win, event_t *event, int y, int x, int w, int flags);
+void todo_line(WINDOW *win, todo_t *todo, int y, int x, int w, int flags);
/* View functions */
void view_init(void);
+void view_main(void);
+void view_exit(void);
void view_config(const char *group, const char *name, const char *key, const char *value);
-void view_resize(void);
-void view_draw(void);
-int view_run(int key, mmask_t btn, int row, int col);
+void view_edit(edit_t mode);