From 46d260a4381f88d4ac8b2dc17179db8beaee5718 Mon Sep 17 00:00:00 2001 From: Lukas Fleischer Date: Wed, 16 Jul 2014 20:03:06 +0200 Subject: Warn when reloading with unsaved modifications Since the reload operation overwrites all changes, warn before reloading if there are unsaved modifications. Signed-off-by: Lukas Fleischer --- src/io.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/io.c') diff --git a/src/io.c b/src/io.c index 4ff31e3..acf624b 100644 --- a/src/io.c +++ b/src/io.c @@ -83,6 +83,8 @@ HTABLE_PROTOTYPE(ht_keybindings, ht_keybindings_s) HTABLE_GENERATE(ht_keybindings, ht_keybindings_s, load_keys_ht_getkey, load_keys_ht_compare) +static int modified = 0; + /* Draw a progress bar while saving, loading or exporting data. */ static void progress_bar(progress_bar_t type, int progress) { @@ -430,6 +432,8 @@ void io_save_cal(enum save_display display) if (!io_save_keys()) ERROR_MSG("%s", access_pb); + io_unset_modified(); + /* Print a message telling data were saved */ if (ui_mode == UI_CURSES && conf.system_dialogs) { status_mesg(save_success, enter); @@ -1342,3 +1346,18 @@ int io_file_cp(const char *src, const char *dst) return 1; } + +void io_unset_modified(void) +{ + modified = 0; +} + +void io_set_modified(void) +{ + modified = 1; +} + +int io_get_modified(void) +{ + return modified; +} -- cgit v1.2.3-54-g00ecf