#include <ncurses.h>
#include "util.h"
+#include "conf.h"
#include "date.h"
#include "cal.h"
#include "view.h"
VIEW(help);
/* View data */
+static const char *names[] = {
+ "day", "week", "month", "year",
+ "|", "events", "todo",
+ "|", "settings", "help",
+};
+
view_t views[] = {
{ "Day", day_init, day_size, day_draw, day_run, {KEY_F(1), '1', } },
{ "Week", week_init, week_size, week_draw, week_run, {KEY_F(2), '2', } },
}
}
+/* Config parser */
+void view_config(const char *group, const char *name, const char *key, const char *value)
+{
+ if (match(group, "view")) {
+ if (match(key, "compact"))
+ COMPACT = get_bool(value);
+ else if (match(key, "active"))
+ ACTIVE = get_enum(value, names, N_ELEMENTS(names));
+ }
+}
+
/* View draw */
void view_resize(void)
{
{
if (ACTIVE != num) {
ACTIVE = num;
+ set_enum("view", 0, "active", ACTIVE,
+ names, N_ELEMENTS(names));
view_draw();
}
return 1;
/* Check for compact mode toggle */
if (key == 'c') {
COMPACT ^= 1;
+ set_bool("view", 0, "compact", COMPACT);
view_resize();
view_draw();
return 1;