2009-08-09 Frederic Culot * src/notify.c (notify_thread_app): rewritten * src/sigs.c: remove calcurse lock file when SIGTERM is received * src/io.c (ical_read_note): memory leak fixed 2009-08-02 Frederic Culot * src/args.c: help on '--status' flag added * src/calcurse.1: manpage updated with the '--status' flag and the new daemon.log file in calcurse data directory * src/notify.c (notify_config_bar): rewritten to handle scrolling * src/custom.c: conf_set_scrsize not static anymore (changed to custom_set_swsiz) 2009-08-01 Frederic Culot * src/vars.c: new variable to store daemon configuration * src/notify.c (print_option, notify_app_txt): new functions notification configuration menu updated with daemon-related variables * src/io.c (io_save_conf): save daemon configuration options * src/custom (custom_load_conf): restore daemon configuration options * src/utils.c (exit_calcurse): start daemon only if requested * src/dmon.c (DMON_LOG): log daemon activity only if requested * src/notify.c (notify_needs_reminder): new function * src/notify.c (notify_get_next_bkgd) * src/dmon.c (dmon_start): improved how the daemon checks for appointments to remind 2009-07-29 Frederic Culot * src/custom.c (custom_load_conf): use a larger buffer to read configuration data * src/io.c (io_extract_data): do not read past the maximum length * src/dmon.c (dmon_start): avoid multiple notifications of the same appointment, and logs added * src/notify.c (notify_launch_cmd): return an error code * src/notify.c (notify_get_next_bkgd): new function 2009-07-27 Frederic Culot * src/utils.c (free_user_data): new function * src/dmon.c: work on allocating and freeing memory associated with user data + log problems related to data file access * src/io.c (io_file_exist): new function 2009-07-26 Frederic Culot * src/args.c (parse_args): check for file presence added (thanks again Chris for reporting it) * src/io.c (io_unset_lock): function removed * src/io.c (io_get_pid): new function * src/args.c (status_arg): new function * src/args.c: --status flag added * src/dmon.c (dmon_stop): new function * src/dmon.c: DMON_LOG and DMON_ABRT defines added * po/POTFILES.in: dmon.c added in the list 2009-07-23 Frederic Culot * src/io.c (io_fprintln): new function * src/utils.c (nowstr): new function * src/dmon.c (dmon_start): log messages added * src/vars.[ch]: daemon log and pid file path added * src/io.c: incorrect duration format when exporting to ical (thanks Chris for reporting it) * src/io.c (io_dump_pid): new function 2009-07-20 Frederic Culot * src/utils.c (psleep): new function * configure.ac: check for some headers added * src/notify.c (notify_time_left, notify_launch_cmd) (notify_get_next): new functions * src/Makefile.am * src/dmon.[ch]: new files to implement calcurse daemon * src/utils.c (psleep): new function 2009-07-19 Frederic Culot * src/mem.c (dbg_free): no need to double check for null pointer when freeing memory * src/apoint.c * src/event.c * src/io.c * src/recur.c: make use of erase_note() whenever possible * src/calcurse.c * src/sigs.[ch]: new way of handling signals 2009-07-15 Frederic Culot * src/io.c: could not import ical files anymore if notes were not attached to items (thanks Chris for reporting it) * src/args.c (app_arg): memory leak fixed * src/args.c (parse_args): dates are now written properly again when using the '-r' flags (thanks again Chris for your report) 2009-07-12 Frederic Culot * configure.ac * src/var.h: sdtbool header removed, unsigned type use instead * mem.c (xmalloc, xcalloc, xrealloc, xstrdup, xfree): new functions * src/custom.c * src/help.c * src/notify.c: calcurse version removed from menu titles * src/args.c (parse_args): fixed a bug that prevented the todo items from being imported or exported * src/calcurse.c: avoid a FATAL ERROR if user directory does not exist (thanks Antoine for reporting it) 2009-07-11 Frederic Culot * === Released 2.6 === * NEWS: updated 2009-07-10 Frederic Culot * doc/manual_*.html: manuals updated with the '-S' flag 2009-07-05 Frederic Culot * src/utils.c (getstring): prevent character deletion before the beginning of the string (thanks Martin for reporting the bug) * configure.ac: switched to 2.6 Add a check for regex.h header * src/args.c: support for search based on regex added (many thanks to Erik for providing the patch) * README: Erik Saule added to the list of contributors * src/calcurse.1: manpage updated with the -S flag description * src/io.c (ical_store_event): Support for events which spans over several days added (thanks Andreas for reporting the bug) * Switch to the BSD license * TODO: support for regex-based searches added 2009-06-28 Frederic Culot * src/io.c (io_save_apts, io_save_conf, io_save_todo) (io_save_keys): new functions * src/args.c (parse_args): simplified the way data files are loaded and saved * src/args.c: it is now possible to export data from a given apts file even if the user does not have any home directory (thanks Ben for reporting this bug) 2009-06-27 Frederic Culot * src/io.c: do not export completed tasks * src/help.c (help_screen): help page updated for the flag command * src/args.c (help_arg): help updated for the -t command line flag * src/calcurse.1: updated the -t flag description * src/manual_*.html: html manuals updated 2009-06-26 Frederic Culot * src/args.c: do not print todo items twice if -d and -t flags are given (thanks Timo for reporting the bug) * src/todo.c (todo_flag): new function * src/args.c (todo_arg): function adapted to display completed tasks * src/todo.c: todos can now be flagged as completed * src/wins.c (wins_status_bar): flag command added in todo panel 2009-06-23 Frederic Culot * src/io.c: missing 'T' letter added in DURATION field for ical export (thanks cuz for reporting this) * src/utils.c (exit_calcurse): remove lock only if interactive mode was launched * src/args.c (parse_args): make the argument given to -r or -s flags optional 2009-06-22 Frederic Culot * autogen.sh: check for gettextize added 2009-06-21 Frederic Culot * src/notify.c (notify_free_app): new function * src/utils.c (exit_calcurse): free memory associated with structure used for appointments notification * src/utils.c: fixed a memory leak caused by a wrong usage of the notify_app structure * src/io.c (io_set_lock, io_unset_lock): new functions to implement a basic locking mechanism in order to avoid having two calcurse instances running at the same time 2009-06-20 Frederic Culot * src/custom.c (set_confwin_attr): new function * src/custom.c: fix a bug that caused calcurse to freeze under OpenBSD when changing theme color from within the configuration screen * src/calendar.c (calendar_update_panel): day names and selected date are now in the same colour as user's theme inside calendar panel * src/args.c (version_args): Copyright date updated 2009-06-01 Frederic Culot * src/io.c: patch submitted by Francois Boulogne to fix gcc 'format-security' issue (thanks Francois for reporting this) 2009-05-22 Frederic Culot * src/apoint.c * src/event.c * src/recur.c: make use of stdio's BUFSIZ instead of my own define 2009-01-25 Frederic Culot * === Released 2.5 === * NEWS: updated 2009-01-24 Frederic Culot * src/keys.c: make it possible to use KEY_HOME and KEY_END to define new key bindings * src/keys.c (custom_keys_config): prevent user from assigning a non-recognized key * src/utils.c (warnbox): new function * src/utils.h (WARN_MSG): new macro * doc/manual_*.html: manuals updated for 2.5 version * configure.ac: switch to 2.5 * src/calcurse.1: manpage updated for 2.5 version * src/args.c (parse_args): load keys even in non-interactive mode to avoid the loss of user configured key bindings * src/calendar.c (calendar_stop_date_thread): do not crash when canceling the thread if it was not started before 2009-01-23 Frederic Culot * configure.ac: improve configuration script to be able to link with ncursesw if ncurses is not available 2009-01-22 Frederic Culot * src/notify.c (notify_stop_main_thread): avoid a possible segfault if this function is called before the thread was launched (thanks Jan for reporting this) * configure.ac: switch to 2.5_beta 2009-01-05 Frederic Culot * src/custom.c (custom_general_config, print_general_options): iso date format (yyyy-mm-dd) added * src/utils.c (parse_date) * src/custom.c (custom_load_conf) * src/io.c (io_save_cal): iso date format added * TODO: updated 2009-01-04 Frederic Culot * src/help.c (help_screen): help page added to describe the cut and paste feature * doc/manual_*.html: information about periodic saves added in manuals 2009-01-03 Frederic Culot * src/day.c (day_saved_item_init, day_saved_item_free): suppressed * src/utils.c (status_bar): moved to wins_status_bar * src/utils.c (erase_status_bar): moved to wins_erase_status_bar * src/utils.c (other_status_page): moved to wins_other_status_page * src/utils.c (reset_status_page): moved to wins_reset_status_page * src/mem.c (dbg_realloc): wrong copy from old memory area to newly allocated one fixed + other fixes 2009-01-02 Frederic Culot * src/io.c (io_stop_pthread_save): do not crash when canceling the thread if it was not started before * src/vars.c (vars_free): suppressed * src/notify.c (notify_free_vars, notify_free_bar): suppressed 2009-01-01 Frederic Culot * src/event.c (event_free_bkp, event_llist_free): new functions * src/apoint.c (apoint_dup, apoint_paste_item, apoint_free_bkp): new functions * src/recur.c (recur_event_free_bkp, recur_event_dup) (recur_event_paste_item, recur_event_llist_free, recur_add_exc) (exc_dup, recur_apoint_free_bkp, recur_apoint_dup): new functions * src/utils.c (get_item_time, get_item_hour, get_item_min): new functions * src/recur.c: fixed a two-years old bug (appeared in version 1.5) that made repeated items with exceptions load uncorrectly in some cases (thanks Jan for reporting it) * TODO: updated (it is now possible to move an item from one date to another by using the cut/paste feature) 2008-12-30 Frederic Culot * src/keys.c: added key bindings for cut and paste * src/keys.c (keys_fill_missing): new function * src/io.c (io_load_keys): load default key bindings for missing keys (meaning they were added with new version of calcurse) * src/utils.c (status_bar): added status bar labels for cut and paste commands * src/calcurse.c: handle cut and paste commands * src/apoint.c (apoint_cut, apoint_paste): new functions * src/day.c (day_cut_item, day_paste_item): new functions * src/event.c (event_dup, event_paste_item): new functions 2008-12-28 Frederic Culot * mem.[ch]: new files to build wrappers around libc's memory management functions * configure.c: enable-memory-debug compilation option added * src/utils.c (mem_free): function removed * src/apoint.c (apoint_llist_free): new function * src/day.c (day_saved_item_init, day_saved_item_free): new functions * src/todo.c (todo_free_list): new_function * src/recur.c (recur_apoint_llist_free, free_exc): new functions * src/notify.c (notify_free_vars, notify_free_bar): new functions * src/vars.c (vars_free): new function * src/io.c * src/custom.c: new option to periodically save data * io.c (io_start_psave_thread, io_stop_psave_thread) (io_psave_thread, display_mark): new functions to implement periodic saves * TODO: updated (auto-save functionality added) 2008-12-27 Frederic Culot * === Released 2.4 === * NEWS * configure.ac: update for 2.4 2008-12-20 Frederic Culot * TODO: update for 2.4 * src/custom.c (custom_layout_config, display_layout_config) (layout_selection_bar): new functions 2008-12-18 Frederic Culot * src/notify.c (notify_check_next_app): create thread detached to avoid a memory leak 2008-12-15 Frederic Culot * src/todo.c (todo_delete) * src/day.c (day_edit_item): fixed a bug that prevented from editing an item * src/keys.c: generic-escape renamed into generic-cancel * src/utils.c (getstring): make the escape key work again to cancel editing * src/apoint.c (apoint_delete_bynum) * src/day.c (day_erase_item): fixed a possible freeze when deleting an appointment's note 2008-12-14 Frederic Culot * === Released 2.4_beta === * NEWS: update for 2.4_beta * src/recur.c (recur_day_is_exc): suppressed * src/recur.c (foreach_date_dump): exception dates are now properly taken into account * src/apoint.c * src/calendar.c * src/custom.c * src/event.c * src/io.c * src/recur.c: make use of error handling macros * src/utils.c (status_bar): do not show 'credits' key binding inside status bar * src/custom.c (custom_general_config): make it possible to scroll up and down again 2008-12-13 Frederic Culot * src/recur.c (recur_item_inday) * src/utils.c (date_sec_change): daylight saving time unwanted offset fixed (thanks youshe and Jan for reporting the problem) 2008-12-12 Frederic Culot * src/utils.c (mycpy): suppressed and replaced by strdup * src/utils.c (aerror, ierror): suppressed * src/utils.c (warnbox): moved to fatalbox * src/utils.h (ERROR_MSG): file name and line number added to displayed error message * src/utils.h (ASSERT): suppressed 2008-12-09 Frederic Culot * src/calcurse.1: manpage update for 2.4 * doc/manual_*.html: update for 2.4 2008-12-08 Frederic Culot * src/custom.c (custom_color_config_bar): new function * configure.ac * TODO: update for 2.4_beta * configure.ac: do not overwrite CFLAGS * src/i18n.h: include locale.h in case we have ENABLE_NLS 2008-12-07 Frederic Culot * src/keys.c: arrow keys can now also be used to define key bindings * src/keys.c (keys_check_missing_bindings): new function 2008-12-06 Frederic Culot * src/io.c (io_load_keys): use of a temporary file to log errors when loading user-defined key bindings * src/io.c (io_log_init, io_log_dislpay, io_log_free) (io_log_print): new functions 2008-12-03 Frederic Culot * src/help.c (help_screen): help texts size overflow fixed * src/io.c (io_export_data): progress bar now displayed properly when exporting data 2008-12-02 Frederic Culot * src/help.c (help_screen): help pages updated 2008-11-30 Frederic Culot * src/io.c (is_blank): new function 2008-11-29 Frederic Culot * src/help.c (help_write_pad): updated to display key bindings 2008-11-26 Frederic Culot * src/help.c (help_screen): updated to display user-defined keys 2008-11-25 Frederic Culot * src/io.c (io_save_cal): updated to save user-defined keys * src/keys.c (keys_save_bindings): new function 2008-11-23 Frederic Culot * src/keys.c (keys_popup_info, keys_action_count_keys): new function * src/utils.c (popup): updated to take a message to be displayed as extra argument 2008-11-22 Frederic Culot * src/custom.c (custom_keys_config_bar): new function * src/keys.c (keys_display_bindings_bar) (keys_action_nkey): new functions * src/utils.c (format_key): moved to keys_format_label 2008-11-16 Frederic Culot * src/custom.c (config_bar): renamed into custom_config_bar and updated to display key configuration menu * src/custom.c (general_conf_set_scrsize): renamed into conf_set_scrsize * src/custom.c (custom_keys_config, print_keys_bindings) (print_key_incolor, print_key_reverse): new functions * src/utils.c (print_option_incolor): renamed into print_bool_option_incolor * src/wins.c (wins_scrollwin_up, wins_scrollwin_down): amount of lines to be scrolled can now be specified 2008-11-15 Frederic Culot * src/keys.c (keys_dump_defaults, dump_intro, keys_str2int) (keys_int2str, keys_init, add_key_str, del_key_str): new functions * src/io.c (key_to_ascii): moved to src/keys.c * src/utils.c (status_bar): updated to display user keybindings * src/utils.c (format_key): new function 2008-11-09 Frederic Culot * src/io.c (io_load_keys, key_to_ascii): new function * src/keys.c (keys_assign_binding, keys_remove_binding) (keys_get_key): new functions 2008-11-08 Frederic Culot * src/keys.[ch]: new files to manage user-definable keybindings * src/htable.h: hash table project imported * src/Makefile.am: keys.[ch], htable.h added * po/POTFILES: keys.c added 2008-10-15 Frederic Culot * === Released 2.3 === * doc/manual_nl.html * po/nl.po: Dutch translation and manual updated, thanks Jeremy * NEWS * configure.ac * TODO: update for 2.3 2008-09-29 Frederic Culot * === Released 2.3_beta === * NEWS: update for 2.3_beta * io.c (ical_read_rrule): interval is now correctly retrieved, wherever it is inside ical RRULE property * io.c (ical_compute_rpt_until): new function 2008-09-24 Frederic Culot * src/io.c (ical_read_note): do not create note if it has zero length * src/io.c (ical_datetime2long): function rewritten 2008-09-23 Frederic Culot * src/io.c: some fixes after ical import tests * src/io.c (ical_unfold_content, ical_unformat_line): new functions * po/fr.po: translation updated * src/utils.c (mem_free): new function 2008-09-21 Frederic Culot * src/utils.c (status_bar): 'I' keybinding added to import data * src/help.c (help_screen, wanted_page): import function help text added * src/args.c (usage, help_arg, parse_args): import flag added * src/io.c (io_save_cal): ui mode (command line or curses mode) taken into account * src/utils.h: DISPLAY macro renamed into ERROR_MSG * src/calcurse.1: manpage updated * doc/manual_*.html: manuals updated * po/fr.po: translation updated * configure.ac * TODO: update for 2.3_beta 2008-09-20 Frederic Culot * src/io.c (io_import_data): temporary log file created to store import process report * src/io.c (ical_log_init, ical_log): new functions * src/utils.c (warnbox): new function * src/utils.h: DISPLAY, EXIT, EXIT_IF, RETURN_IF and RETVAL_IF macros defined * src/vars.c: global variable ui_mode added 2008-09-16 Frederic Culot * src/io.c (ical_read_note): file created to store ical item description * src/io.c (ical_store_todo, ical_store_event, ical_store_apoint) (get_import_stream): new functions 2008-09-15 Frederic Culot * src/io.h: import_type_t added, export_mode_t changed to io_mode_t * src/utils.c (str_toupper): new function * src/io.c (ical_chk_header, ical_datetime2long) (ical_durtime2long, ical_durlong, ical_read_rrule, ical_add_exc) (ical_read_exdate, ical_read_note, ical_read_event) (ical_read_todo, io_import_data): new functions to handle icalendar import 2008-08-28 Frederic Culot * === Released 2.2 === * configure.ac * NEWS: update 2008-08-18 Frederic Culot * src/io.c (io_init): wrong data path init fixed (thanks Herbert for reporting it) 2008-08-12 Frederic Culot * === Released 2.2_beta === * po/fr.po: translation updated * configure.ac * TODO * NEWS: update for 2.2_beta 2008-08-11 Frederic Culot * src/utils.c (date_sec2ical_*): functions replaced by date_sec2date_fmt() * src/args.c (parse_args, usage, help_arg): option added to '-x' flag to choose export format * src/help.c (help_screen): help text updated with pcal export * src/calcurse.1: manpage updated * doc/manual_*.html: manuals updated 2008-08-10 Frederic Culot * src/calcurse.c: new menu added presenting export format selection * src/io.c (io_export_bar, pcal_export_header) (pcal_export_recur_events, pcal_export_events) (pcal_export_recur_apoints, pcal_export_apoints) (pcal_export_todo, pcal_export_footer, foreach_date_dump): new functions * src/io.c (io_export_data, get_export_stream) (pcal_dump_event): handling of pcal export * src/io.h: export_type_t type defined * src/utils.c (date_sec2date_fmt, date_sec_change): new functions * src/calendar.c (calendar_start_of_year, calendar_end_of_year): new functions * src/recur.c (recur_day_is_exc): new function 2008-08-08 Frederic Culot * src/calcurse.1: manpage updated with new command line options * doc/manual_*.html: manuals updated with new command line options 2008-08-06 Frederic Culot * src/args.c (parse_args, help_arg, usage): '-s', '-r' and '-D' flags added (thanks Erik for submiting the patch) * src/args.c (date_arg_extended, more_info, display_app): new functions to handle '-s' and '-r' flags * src/io.c (io_init): handling of '-D' option * src/vars.h: new way of defining default paths 2008-08-03 Frederic Culot * src/calendar.c (calendar_goto_today): new function * src/calcurse.c: CTRL-G, '0' and '$' keybindings added * src/help.c (help_screen, wanted_page): help text updated * src/utils.c (status_bar): new bindings added * src/utils.c (other_status_page): fixed a bug in status page number calculation 2008-05-17 Frederic Culot * === Released 2.1 === * NEWS: update 2008-05-03 Frederic Culot * src/recur.c: typo fixed (thanks Jeremy for reporting it) * po/nl.po: Dutch translation updated, thanks Jeremy * src/recur.c (recur_apoint_new, recur_event_new): memory leak fixed (thanks Tony for reporting it) 2008-04-26 Frederic Culot * === Released 2.1_beta === * NEWS: update * ChangeLog: format changed * src/calcurse.c: unuseful call to notify_check_next_app suppressed 2008-04-20 Frederic Culot * po/fr.po: updates * src/help.c: correction done in the '>' command help text * doc/*.html: html manuals updated with date format configuration options 2008-04-19 Frederic Culot * src/custom.c: scrollbar added in general configuration menu * some memory leaks fixed using valgrind * minor code cleanup 2008-04-18 Frederic Culot * Generic functions to handle scrolling windows created 2008-04-12 Frederic Culot * src/*: Yet another style for source code. GNU style now used (I am fed up with tabs...) 2008-04-09 Frederic Culot * Tony's patch concerning date format configuration imported, many thanks to him * TODO: list updated 2008-04-05 Frederic Culot * '-N' flag added, which allows the display of note contents in non-interactive mode (many thanks to Erik Saule for submiting this patch) * src/calcurse.1: updates * doc/*.html: updates 2008-04-04 Frederic Culot * 'o' sign no longer used to display events in non-interactive mode (that was annoying because it means 'about' in Polish, thanks fEnIo for reporting the problem) * bugfix: correct number of lines now skipped when displaying appointments using '-d' option (thanks Tony for reporting the bug) * bugfix: no more segfault when changing a todo item priority which did not have any notes attached to it (fixes Debian Bug #469297) 2008-03-30 Frederic Culot * doc/manual_it.html: Italian manual added, many thanks to Leandro Noferini 2008-03-02 Frederic Culot * === Released 2.0 === * NEWS: update * po/*.po: updates * doc/manual_nl.html * po/nl.po: Dutch manual and translation updated, thanks Jeremy 2008-02-16 Frederic Culot * === Released 2.0_beta === * bugfix: check for null pointer added when drawing color configuration window (which could remain invisible otherwise) * po/calcurse.pot: updates for version 2.0 * NEWS: update 2008-02-14 Frederic Culot * doc/*.html: manuals updated with parts related to notes 2008-02-13 Frederic Culot * src/calcurse.1: manpage updated * NOTESIZ shortened to be 6 characters long, as only 6 'X' are used in the glibc version of mkstemp(3). * src/wins.c (wins_launch_external): fixed a wrong calculated len which lead to erroneus note file name 2008-02-11 Frederic Culot * TODO: list updated * src/utils.c: status bar updated to display the new 'N' (edit note) and '>' (view note) keybindings * src/help.c: online help pages added for 'N' and '>' keybindings 2008-02-10 Frederic Culot * doc/*.html: manuals updated to make use of css style sheet * src/notify.c (notify_thread_app): memory leak fixed * configure.ac: check for limits.h header added * src/wins.c (wins_launch_external): asprintf() call replaced as it is not fully portable 2008-02-03 Frederic Culot * doc/manual.css: css style sheet added for manuals * doc/manual_fr.html: update to make use of css style sheet 2008-01-26 Frederic Culot * configure.ac: linking against pthread instead of lpthread (thanks ajacoutot@) check for errno.h presence added 2008-01-20 Frederic Culot * src/day.c (day_edit_item): complete rewrite so that there is no need to first delete the item and then recreate it * src/event.c (event_get): new function * src/apoint.c (apoint_get): new function 2008-01-17 Frederic Culot * src/utils.c (exit_calcurse): screen is now cleared completely when calcurse exits * src/io.c (io_export_data): it is now possible to cancel calendar export * src/day.c (day_edit_item): null-terminating character missing 2008-01-13 Frederic Culot * Ability to attach notes to appointments and events added 2007-12-31 Frederic Culot * Notes attached to todos can now be suppressed 2008-12-30 Frederic Culot * src/todo.c: Ability to attach notes to todo items added * Call to an external editor or pager to edit/view notes implemented * 'N' and '>' keystrokes added to edit or view notes * src/utils.h (ierror): function improved 2007-12-09 Frederic Culot * src/recur.c (recur_item_inday): leap years should now be properly handled * src/calendar.c (calendar_move_up, calendar_move_down) (calendar_move_left, calendar_move_right): modifications to properly handle leap years and gathered together into calendar_move() * src/calendar.c (date_change): new function 2007-10-22 Frederic Culot * === Released 1.9 === * TODO: * NEWS: updates * po/*.po: updates 2007-10-21 Frederic Culot * src/wins.h: window_t structure updated to store WINDOW pointer window_e enum updated to shorten names, winprop_e and wins_prop() suppressed cwin, awin, twin, swin variables suppressed * src/help.c (help_screen): update to make automatic resize available inside help screens (thanks Sebastian for reporting the problem) * src/help.c (help_wins_reset, help_wins_init, help_wins_reinit) (wanted_page): new functions * src/help.c: help_pages_e enum added * src/custom.c (custom_general_config): * src/notify.c (notify_config_bar): updates to handle basic window resizing * src/custom.c (custom_confwin_init, display_color_config): new functions * src/custom.c (custom_color_config): rewrite 2007-10-14 Frederic Culot * src/args.c (next_arg): rewrite * src/args.c (date_arg): improvements * src/wins.c (wins_reset): avoid blank screen when resizing under Linux * src/notify.c (notify_config_bar) no need to stop thread if it was not started before * src/calendar.c (calendar_change_day, calendar_move_*): prevent user from entering an unsupported date 2007-10-08 Frederic Culot * doc/manual_nl.html: * po/nl.po: Dutch manual and translation updated, many thanks to Jeremy * bugfix: possible problem when using -n flag without any upcoming appointment (thanks Herbert for reporting this problem) 2007-10-07 Frederic Culot * src/sigs.c: handling of SIGWINCH improved * doc/manual_de.html: * po/de.po: German manual and translation updated, many thanks to Michael Schulz 2007-09-16 Frederic Culot * configure.ac: bugfix: wrong symbol used for pthread library (thanks Michael for noticing this bug) * src/utils.c (popup): keypad() used, to avoid possible unwanted interactions (status bar could change for example when viewing an item description and pressing an arrow key) * export to /tmp/calcurse.ics is now performed in case $HOME is not set 2007-09-01 Frederic Culot * src/args.c (date_arg): fixed a shift in date_arg(), thanks Herbert for reporting this bug 2007-08-31 Frederic Culot * === Released 1.9_beta === * NEWS: update 2007-08-19 Frederic Culot * src/wins.c (wins_reset): update to handle notification bar reset * src/calcurse.c: no more check for terminal size in main loop * src/io.c: avoid core when trying to load a calendar file from current directory * doc/*.html: manuals updated with part related to moon phase calculation * po/fr.po: french translation updated * TODO: * README: updates 2007-08-15 Frederic Culot * src/sigs.c: handling of SIGWINCH added * src/wins.c (wins_prop, wins_layout, wins_set_layout) (wins_reset): new functions layout is not part of conf_t type anymore, and becomes a static variable in wins.c * src/apoint.c (apoint_hilt, apoint_hilt_set) (apoint_hilt_decrease, apoint_hilt_increase): new functions scroll_pad_down and scroll_pad_up moved to apoint_scroll_pad_down and apoint_scroll_pad_up * src/todo.c (todo_hilt, todo_hilt_set, todo_hilt_decrease) (todo_hilt_increase, todo_saved_mesg, todo_nb, todo_set_nb) (todo_set_first, todo_first_increase, todo_first_decrease) (todo_hilt_pos): new functions 2007-08-12 Frederic Culot * Moon phase calculation added * src/calendar.c (calendar_get_pom, pom, potm, dotr, adj360): new functions added, based on the OpenBSD version of pom(6) * TODO: list updated 2007-08-04 Frederic Culot * src/utils.h: ASSERT macro created * src/utils.h (aerror, ierror) new functions created to improve error handling while in ncurses mode * src/utils.c (exit_calcurse): update to take exit code as argument * src/day.c (day_item_s2apoint_s): memory leak fixed 2007-07-29 Frederic Culot * compiler warnings fixed 2007-07-28 Frederic Culot * doc/manual_nl.html: * po/nl.po: Dutch manual and po file added, many thanks to Jeremy Roon * configure.ac: * Makefile.am: * src/Makefile.am: various improvements * src/*: unuseful headers removed some functions became static * src/utils.c (check_date): moved to utils.c * src/wins.c (border_color, border_nocolor): moved to wins.c 2007-07-26 Frederic Culot * src/calcurse.c: global variables suppressed 2007-07-22 Frederic Culot * src/utils.c (exit_calcurse): new function * src/wins.c (wins_slctd_init, wins_slctd_set, wins_slctd_next) (wins_slctd): new functions * src/sigs.[ch]: new files to store signal handling routines * src/calcurse.c: which_pan global variable suppressed 2007-07-21 Frederic Culot * src/wins.[ch]: new files to store windows handling related routines window handling routines moved to wins.c and wins.h * src/utils.c (erase_status_bar): new function * several routines moved from calcurse.c to more appropriate source files: update_app_panel() moved to apoint_update_panel() update_todo_panel() moved to todo_update_panel() add_item() moved to apoint_add() del_item() split into apoint_delete() and todo_delete() init_vars() moved to vars_init() print_notify_options() moved to notify_print_options() config_notify_bar() moved to notify_config_bar() 2007-07-20 Frederic Culot * src/day.c (day_process_storage): store_day moved to day_process_storage * src/vars.h: enum window_number moved to vars.h and became window_e window_t type created * src/day.h: day_items_nb_t added * src/*: several routines updated to make use of the newly created window_t type 2007-07-01 Frederic Culot * src/calendar.c (calendar_date_thread): new function to check for day changes (thanks Jupp for reporting the problem) * src/calendar.[ch]: code cleanup: global variables today and slctd_day moved to calendar.c and date_t type created * src/calendar.c (calendar_store_current_date) (calendar_get_slctd_day, calendar_get_slctd_day_sec) (calendar_init_slctd_day, calendar_move_up, calendar_move_down) (calendar_move_left, calendar_move_right) (calendar_set_first_day_of_week) (calendar_change_first_day_of_week) (calendar_week_begins_on_monday): new functions 2007-05-22 Frederic Culot * === Released 1.8 === * NEWS: * doc/*.html: * po/*.po: updates 2007-05-12 Frederic Culot * doc/manual_fr.html: * doc/manual_en.html: French and English manuals updated 2007-05-06 Frederic Culot * src/utils.c (del_char): make use of memmove * src/vars.h: layout variable added to conf_t type * src/custom.c (custom_load_conf): code cleanup * bugfixes: layout is now correctly restored (thanks Jose for reporting that bug) getstring() now properly handles erasing of characters apad width is now correctly updated when changing layout notify bar init sequence modified to avoid a possible segfault right part of progress bar now properly displayed item ending time is now assigned to correct day in day_edit_item() 2007-04-24 Frederic Culot * src/custom.c (custom_color_config): made more robust regarding values returned by pair_content() Many thanks to Herbert for reporting bugs related to color configuration 2007-04-22 Frederic Culot * src/custom.c (custom_color_theme_name): update to handle ncurses different returned values (depending on if ncurses was compiled with --enable-ext-funcs) 2007-04-21 Frederic Culot * src/custom.c (custom_color_config): modified to take terminal's vertical length into account * src/custom.c (custom_color_theme_name): update to handle colorless theme 2007-04-15 Frederic Culot * === Released 1.8_beta === * src/args.c (help_arg): updated to display help for the --export argument * src/args.c (usage): update * src/calcurse.1: manpage updated * doc/manual_en.html: english manual updated * configure.ac: updated to check for new header files 2007-04-14 Frederic Culot * bugfixes: wrong define used in notify_update_bar() recurrent appointment description is now loaded correctly while the item contains exceptions item state is now saved for endless recurrent appointments correct item is now highligthed when changing day inside appointment panel with CTRL keys * src/notify.c (notify_catch_children, notify_thread_children): function suppressed, because zombie processes are now catched using signals * src/calcurse.c (sigchld_handler, init_sighandler): new functions 2007-04-04 Frederic Culot * src/*: MAX_LENGTH replaced by stdio.h's BUFSIZ use of MININSEC and DAYINSEC defines * src/day.c (day_edit_item): typestr size corrected * src/utils.c (date_sec2date_str): bugfix: 01/01/1970 is not returned anymore if 0 is given to date_sec2date_str() 2007-03-24 Frederic Culot * TODO: update * src/help.c: online help updated to add the export and flag command * src/args.c (parse_args): '-x' flag added to export data in non-interactive mode * src/notify.c (notify_init_vars): init_notify_bar() moved from calcurse.c to notify_init_vars() * src/custom.c (custom_load_conf): load_conf() moved from calcurse.c to custom_load_conf() fill_config_var() moved from calcurse.c to custom.c * src/io.c (io_extract_data, io_save_cal): extract_data() renamed to io_extract_data() and save_cal() to io_save_cal() * src/vars.h: conf_t type created 2007-03-19 Frederic Culot * src/utils.c (status_bar): update to add 'X' and '!' keybindings 2007-03-17 Frederic Culot * src/vars.h: HOURINSEC and MININSEC defined * src/io.c (io_export_events, io_export_recur_events) (io_export_recur_apoints, io_recur_type, io_export_valarm): new functions * src/io.c (progress_bar): update to display a bar when exporting data 2007-03-12 Frederic Culot * src/utils.c (date_sec2ical_datetime, date_sec2ical_date): new functions * src/io.c (io_export_apoints): update to call date_sec2ical_datetime() 2007-03-11 Frederic Culot * src/calcurse.c: 'X' command added, to export data in iCal format * src/io.c (io_export_data, io_get_export_stream) (io_export_header, io_export_footer, io_export_todo) (io_export_apoints): new functions 2007-03-10 Frederic Culot * src/calcurse.c: global variable 'colr' suppressed * src/io.c (save_cal): modified to save new version of user-defined color theme * src/custom.c (custom_color_theme_name): new function to return color theme name * src/custom.c (custom_load_color): update to load new version of user-defined color theme * src/recur.c (recur_item_inday): improved, thanks to Tony's patch 2007-03-04 Frederic Culot * src/custom.c (custom_color_config): color_config() rewritten and changed to custom_color_config(), to allow more color choices and the use of terminal's default background color * src/custom.c (custom_load_color): new function * border_color() and border_nocolor() updated to take into account new color definitions update_windows() updated to avoid the use of the 'colr' variable 2007-02-28 Frederic Culot * bugfix: CTRL-D problems while editing items fixed Thanks Toucouch for reporting this bug 2007-02-25 Frederic Culot * src/notify.c (init_notify_bar): update to get user shell * src/notify.c (notify_launch_cmd): new function to launch user-defined command by forking a new process * src/notify.c (notify_catch_children, notify_thread_children): new functions to avoid zombie processes when launching user-defined command 2007-02-24 Frederic Culot * src/calcurse.c: '!' command added, to switch appointment notification state * init_notify_bar(), config_notify_bar() and print_notify_options() modified to add the notification command option * src/apoint.c (apoint_switch_notify): new function * src/recur.c (recur_apoint_switch_notify): new function * src/day.c (day_item_nb): new function * save_cal(), recur_apoint_write(), and apoint_write() updated to save item state to disk * load_app(), load_conf(), apoint_scan(), recur_apoint_scan(), apoint_new() and recur_apoint_new() updated to read item state 2007-01-20 Frederic Culot * === Released 1.7 === * TODO: list updated * NEWS: file updated 2007-01-17 Frederic Culot * doc/manual_es.html: * po/es.po: Spanish manual and translation updated, many thanks to Jose 2007-01-16 Frederic Culot * src/utils.c (getstring): better handling of return values to take into account user canceling * po/de.po: German translation updated * TODO: file updated * calcurse version updated to 1.7 and copyright extended to 2007 * doc/*.html: html manuals updated because 'calcurse -ta' cannot be used any longer 2007-01-10 Frederic Culot * doc/manual_de.html: * po/de.po: German manual and translation updated, many thanks to Chris M. * bugfix: Edit command no longer crashes when trying to edit an unexisting item * bugfix: pressing 'CTRL-T' while inside appointment panel no longers create an appointment but a todo, as expected * src/calendar.c (goto_day): better checking of the entered date 2006-01-05 Frederic Culot * src/args.c (next_arg): newline suppressed 2006-12-21 Frederic Culot * src/day.c (day_write_pad): * src/calcurse.c (update_todo_panel): display adjustments 2006-12-19 Frederic Culot * bugfix in init_wins(): max label length is now MAX_LENGTH * src/day.c (day_edit_item): bugfix: end time does not change if start time is edited * po/fr.po: french translation updated * README: update 2006-12-18 Frederic Culot * === Released 1.7_beta === * src/utils.c (getstring): CTRL-K now works properly 2006-12-15 Frederic Culot * TODO: file updated: one more thing to improve... * small bugfixes 2006-12-14 Frederic Culot * improvements in the memory deallocation in day_edit_item(), updatestring(), next_arg() * src/utils.c (updatestring): now returns a value indicating if there was a canceling when modifying text * TODO: update 2006-12-13 Frederic Culot * src/todo.c (todo_new_item): call to getstring() corrected * doc/*.html: documentation about the built-in input line editor added * src/utils.c (item_in_popup): improved to replace the scroller() function by an ncurses pad scroller() function suppressed 2006-12-12 Frederic Culot * doc/manual_en.html: * doc/manual_fr.html: english and french html manuals updated * src/help.c: help screen updated for repeat command 2006-12-11 Frederic Culot * src/help.c (help_arg): updated to take long options into account * src/calcurse.1: manpage updated 2006-12-10 Frederic Culot * src/help.c: help screen added for the 'Edit Item' command * date format modified for the 'Go To' command 2006-12-08 Frederic Culot * src/day.c (day_edit_item): finished * src/day.c (day_edit_time): new function * src/day.c (day_erase_item): updated to add the 'force_erase' flag * src/recur.c (recur_get_event, recur_get_apoint): new functions * datesec2str() changed to date_sec2hour_str(), and date_sec2date_str() created update_time_in_date() created 2006-12-01 Frederic Culot * datesec2str() created 2006-11-30 Frederic Culot * 'Edit Itm' command added in the status bar * src/day.c (day_edit_item): new function 2006-11-28 Frederic Culot * add_char() modified to use memmove() instead of memcpy() 2006-11-02 Frederic Culot * getstring() modified to take the max string length as an argument * updatestring() and todo_edit_item() created * add_char() simplified, using memcpy() * 'E' key added to edit already existing items 2006-10-28 Frederic Culot * getstring() improved to allow the modification of an existing string * showstring(), showcursor(), add_char() and delete_char() created * getstring() calls in todo_new_item(), recur_repeat_item(), goto_day(), config_notify_bar() and add_item() updated * display_item(), display_item_date() and day_write_pad() updated to add an asterisk in front of recurrent items 2006-10-17 Frederic Culot * src/args.c (parse_args): use of getopt_long() instead of getopt, to make the '-t' priority number optional, and to allow the use of long options * configure.ac: check for getopt.h header file added 2006-10-16 Frederic Culot * bugfix: when creating a recurrent item, the entered end-date is now included again * '-t' flag now takes a priority number for argument 2006-10-01 Frederic Culot * === Released 1.6 === * doc/manual_de.html: * po/de.po: german manual and translation updated by Chris M. * bugfix: CTRL-J now works properly * bugfix: a number of minutes can no longer be entered while creating a new appointment * TODO: list updated * NEWS: file updated 2006-09-25 Frederic Culot * doc/manual_es.html: * po/es.po: spanish translation and manual updated by Jose Lopez 2006-09-22 Frederic Culot * doc/manual_es.html: spanish manual updated by Jose Lopez * src/Makefile.am: bugfix: LOCALEDIR is now defined in src/Makefile.am instead of configure.ac, to prevent from conflicting definitions. Thanks to Jose for reporting that bug. 2006-09-19 Frederic Culot * doc/manual_fr.html: * doc/manual_de.html: * doc/manual_es.html: french, german and spanish manuals updated 2006-09-18 Frederic Culot * added test on warning time interval in config_notify_bar() * print_general_options() modified to print text one line upper * bugfix: pressing enter no longer switches to next week in calendar panel * doc/manual_en.html: update 2006-09-17 Frederic Culot * config_notify_bar() improved * getstring() improved to check for escape sequence * src/help.c (help_screen): update * po/fr.po: french translation updated 2006-09-16 Frederic Culot * '-n' flag implemented * src/args.c (parse_args, help_arg, usage): updates * next_arg(), now() created * src/calcurse.1: manpage updated * notify_app_s structure updated * apoint_check_next(), recur_apoint_check_next() and recur_repeat_item() updated * config_notify_bar() and print_notify_options() improved * src/utils.c (mycpy): new function 2006-09-15 Frederic Culot * nbar_s structure created to store notify-bar settings * save_cal() and load_conf() updated to write and read the user configuration concerning the notify-bar * init_var(), help_screen() and config_bar() updated * config_notify_bar(), print_notify_options(), init_notify_bar(), notify_bar(), notify_start_main_thread() and notify_stop_main_thread() created 2006-09-14 Frederic Culot * fixed a bug which caused the recurrent appointments not to show up in the notify-bar * added the time left before next appointment inside notify-bar * fixed a bug in recur_item_inday() which caused the appointments to have a wrong start time when repeated * bugfix: no more deletion of the wrong recurrent appointment * today() created * notify_check_added(), notify_check_repeated() and notify_same_item(), notify_same_recur_item() created 2006-09-12 Frederic Culot * implementation of a mutex lock to protect the appointment linked lists from race conditions * src/apoint.c (apoint_llist_init): new function * src/recur.c (recur_apoint_llist_init): new function * several routines in apoint.c and recur.c updated to take those new lists structure into account 2006-09-11 Frederic Culot * po/es.po: small bugfixes * src/vars.h: DAYINSEC moved from recur.c to vars.h * src/apoint.c (apoint_check_next): new function * src/recur.c (recur_apoint_check_next): new function * src/notify.c (notify_check_next_app, notify_thread_app): new functions 2006-09-09 Frederic Culot * src/Makefile.am: update to take notify.h and .c into account, and link to lpthread added * configure.ac: added test for pthread library and switched to 1.6 * help window size updated to take notification bar into account * src/notify.[ch]: new files * src/notify.c (notify_init_bar, notify_reinit_bar) (notify_update_bar, notify_extract_aptsfile, notify_thread_sub): new functions * Makefile.am: updated to add the spanish manual * doc/manual_es.html: * po/es.po: spanish manual and translations added, many thanks to Jose for providing them * doc/*.html: manuals updated (thanks section) 2006-09-08 Frederic Culot * fixed a bug appearing when trying to delete a newly repeated item 2006-09-07 Frederic Culot * fixed a bug which prevented status bar keybindings from being translated * src/recur.c (recur_repeat_item): the repeated end date can no longer be before the item start time. Thanks Chris for reporting that bug * po/fr.po: french translation updated * TODO: list updated 2006-09-06 Frederic Culot * src/utils.c (status_bar): rewritten from scratch to allow more than one page of keybindings * src/utils.c (reset_status_page, other_status_page): new functions * src/calcurse.c: 'O' keybinding added to switch between status bar pages * general keybindings added which apply whatever panel is selected (^A, ^T, ^H, ^J, ^K, ^L) * changed the redraw keybinding from ^L to ^R * src/help.c: added help pages concerning the general bindings and the 'O' command 2006-09-03 Frederic Culot * src/args.c (todo_args): update to display priorities * po/fr.po: new entries translated and fixed 'fuzzy' translations * layout_config() improved, and new layout configurations added * get_screen_config() updated to take new layouts into account * TODO: list updated 2006-09-02 Frederic Culot * src/help.c: help text added for the 'Priority' function and updated for the 'Add' function * src/todo.c (todo_get_position): fixed a possible infinite loop * src/calcurse.c: improved the ToDo panel scrolling while changing item priority * src/day.c (day_write_pad): fixed a bug which could cause a misplacement of the line between events and appointments 2006-08-31 Frederic Culot * src/todo.c (todo_chg_priority, todo_get_item) (todo_get_position): new functions * src/todo.c (todo_insert): suppressed * src/todo.c (todo_new_item): updated to ask for priority * src/todo.c (todo_add): updated to sort items by priority order * src/todo.c (update_todo_panel): updated to display todo priority * '+/-' menu added to handle todo priorities 2006-08-30 Frederic Culot * 'id' added to todo_s structure * load_todo() and save_cal() updated to take this id into account * src/todo.c (todo_new_item): moved add_todo() from calcurse.c to todo_new_item() * bugfix: pressing 'R' while no item was selected caused a segfault. Thanks to Chris for reporting that bug 2006-08-26 Frederic Culot * === Released 1.5 === 2006-08-25 Frederic Culot * src/io.c (load_app): fixed a data format bug * src/day.c: events and appointments are now sorted properly 2006-08-24 Frederic Culot * src/recur.c: forgot to wait for user's key pressed... * repeat command disabled for todo panel * configure.ac: * src/calcurse.1: switched to version number 1.5 * doc/*.html: manuals thanks section updated 2006-08-23 Frederic Culot * independant status bar created for the todo panel * src/day.c: fixed a memory allocation problem * src/help.c: online help text updated for the repeat and delete commands 2006-08-22 Frederic Culot * src/recur.c: compilation warnings corrected * src/calcurse.c (add_item): screen refreshing process ameliorated 2006-08-21 Frederic Culot * po/en.po: * po/de.po: English and German translation added 2006-08-19 Frederic Culot * src/io.c: fixed a bug that could cause a fatal error when loading from file an endless recurrent item with non-repeated days * src/recur.c: fixed a bug which could result in an infinite loop when saving multiple days * src/calcurse.c: a newly created appointment or event is now correctly highlighted * src/recur.c (recur_repeat_item): updated to check if the frequence is valid 2006-08-16 Frederic Culot * src/recur.c (recur_exc_scan): new function * src/recur.c (recur_event_new, recur_apoint_new): update to take non-repeated days into account 2006-08-06 Frederic Culot * src/recur.c (recur_item_inday): update to take non-repeated days into account * src/recur.c (recur_repeat_item, day_get_item): new functions * 'R' menu key added to repeat an event or an appointment 2006-08-02 Frederic Culot * bugfix: Debian bug #377543 fixed, thanks to Neil for reporting it * src/recur.c (recur_event_erase, recur_apoint_erase) (recur_write_exc): new functions * src/recur.c (recur_event_write, recur_apoint_write): update to call recur_writ_exc() if there are exceptions to be written * src/day.c (day_erase_item, del_item): updates * ESCAPE key definition added 2006-08-01 Frederic Culot * src/day.h: MAX_TYPES added * src/day.c (day_erase_item): new function * del_apoint() renamed to del_item and updated to take recurrent items into account 2006-07-27 Frederic Culot * back to work after my ibook's logic board crash :( * autogen.sh: new file 2006-06-25 Frederic Culot * src/args.c (app_arg): updated to take recurrent items into account * src/recur.c (recur_apoint_s2apoint_s): new function * added help text concerning possible formats to be entered when using '-h' flag in non-interactive mode * fixed a bug related to localtime() which returns a statically allocated structure that can be overwritten by subsequent calls to the function (which was the case with recurrent items) * load_app(), recur_event_scan(), recur_apoint_scan(), recur_item_inday(), recur_event_write() and recur_apoint_write() updated to take endless recurrent items into account 2006-06-24 Frederic Culot * cvs keywords added inside source files * apoint_sec2str() and display_item_date() modified to take recurrent items into account * src/day.c (day_check_if_item): new function 2006-06-18 Frederic Culot * src/day.c (day_store_recur_events, day_store_recur_apoints): new functions * src/recur.c (recur_item_inday): new function 2006-06-17 Frederic Culot * src/day.c (day_popup_item): new function * src/day.c (day_store_items): pointers to number_events_inday and number_apoints_inday passed to day_store_items() * src/day.c (day_write_pad): update to reallocate memory for day_saved_item structure 2006-06-16 Frederic Culot * src/day.c (day_free_list): free_aday() and free_eday() suppressed and replaced by day_free_list() * src/day.c (day_store_items): new function * store_day() updated to call day_store_items() * src/day.c (day_store_events, day_store_apoints): eday_store() and aday_store suppressed and replaced by day_store_events() and day_store_apoints() * src/day.c (day_add_event, day_add_apoint): edayadd() and edayadd() suppressed and replaced by day_add_event() and day_add_apoint() * src/day.c (day_write_pad): write_app_pad() suppressed and replaced by day_write_pad() * src/day.c (day_item_s2apoint_s): new function 2006-06-14 Frederic Culot * src/day.[ch]: new files created to store processes related to the currently selected day inside calendar (this is to ease the implementation of recursive items) * src/Makefile.am: update 2006-06-08 Frederic Culot * src/recur.c (recur_save_data, recur_char2def): new functions 2006-06-07 Frederic Culot * src/recur.c (recur_apoint_scan, recur_event_scan): new functions * load_app() updated to read recursive events from file 2006-06-06 Frederic Culot * bugfix: Debian Bug Report #369550 regarding the segfault which appeared when calcurse was launched in non-interactive mode without data files * src/recur.[ch]: new files added to implement recursive events * src/Makefile.am: update * src/recur.c (recur_event_new, recur_apoint_new, recur_def2char) (recur_apoint_write, recur_event_write): new functions 2006-05-15 Frederic Culot * === Released 1.4 === * TODO: * README: * src/calcurse.1: * doc/*.html: updates 2006-05-13 Frederic Culot * NEWS: file updated 2006-05-11 Frederic Culot * doc/manual_de.html: manual finished, many thanks to Michael Schulz * doc/manual_fr.html: update 2006-05-08 Frederic Culot * doc/manual_en.html: update * bugfix: added test at the end of color_config() to check the need of using colorization or not 2006-05-07 Frederic Culot * po/fr.po: french translation finished * src/calcurse.1: manpage updated 2006-06-05 Frederic Culot * configure.ac: added LOCALEDIR definition * usage_try() created 2006-04-27 Frederic Culot * configure.ac: * src/vars.h: removed VERSION definition from vars.h to only use the one from configure.ac * src/calcurse.c: include config.h 2006-04-26 Frederic Culot * updated exit() calls by using EXIT_SUCCESS and EXIT_FAILURE * end of source preparation for i18n * replaced required confirmation string from 'yes' and 'no' to 'y' and 'n' * 'gettextization' of source package: Makefile.am (SUBDIRS): Add po. (ACLOCAL_AMFLAGS): New variable. (EXTRA_DIST): Add config.rpath, mkinstalldirs, m4/ChangeLog. configure.ac (AC_OUTPUT): Add po/Makefile.in. 2006-04-25 Frederic Culot * updated parts related to general config variables to handle i18n: general config variables type changed to boolean fill_config_var() created switch_option() suppressed 2006-04-23 Frederic Culot * progress_bar() modified to better fit the data file structure * user_conf_t created to allow translation of configuration variables 2006-04-22 Frederic Culot * translatable strings marked for i18n * doc/manual_de.html: new manual (german translation of calcurse manual, thanks to Michael Schultz) 2006-04-20 Frederic Culot * src/i18n.h: new file added to prepare for internationalization * src/Makefile.am: update 2006-04-18 Frederic Culot * code cleanup: color_config() simplified 2006-04-17 Frederic Culot * variable 'colorize' added * color number '0' added to be able to run calcurse in black&white even on color terminals 2006-04-16 Frederic Culot * border_nocolor() created to correctly handle panel borders in non-color terminals * 'week_begins_on_monday' option added, giving the ability to change the first day of the week (thanks to Joe's remarks) 2006-04-09 Frederic Culot * bugfix: stderr replaced by stdout in version_arg(), help_arg(), todo_arg(), app_arg(), date_arg(), arg_print_date(), usage() (thanks go to Soren for reporting that bug) 2006-04-08 Frederic Culot * doc/manual_fr.html: new file containing the french manual translation 2006-04-05 Frederic Culot * README: file rewritten to take into account the new documentation structure 2006-04-02 Frederic Culot * support for non-color terminals added : window attribute levels defined in vars.h attribute_s structure created in custom.h custom_init_attr(), custom_apply_attr(), and custom_remove_attr() created in custom.c init_vars() updated in calcurse.c 2006-03-30 Frederic Culot * doc/: repertory created to contain calcurse documentation and its translations. * Makefile.am: update to take the new repertory into account 2006-03-23 Frederic Culot * manual_en.html: new file created, in order to replace the actual documentation contained in the README file 2006-03-17 Frederic Culot * === Released 1.3 === * bugfix: newpad added in init_vars to correct a bug causing core dump on Solaris * bugfix: no more wrong event duration when entering end time in [hh:mm] format * bugfix: first_todo_onscreen corrected to avoid the disappearing of todo items * updated the copyright text which appears with the -v flag * manpage updated * README updated * online help updated * TODO list updated 2006-03-14 Frederic Culot * replaced true and false #define by stdbool.h 2006-03-13 Frederic Culot * online help screens updated 2006-03-09 Frederic Culot * typedef help_page_t added to add a title to each help page * help_screen() and write_help_pad() updated to use new help_page_t type 2006-03-07 Frederic Culot * src/var.h: #define true and false added * online help screens updated 2006-03-06 Frederic Culot * source file headers updated 2006-02-26 Frederic Culot * get_help_lines() created * scrollbar added inside help screens 2006-02-25 Frederic Culot * help_screen() updated, now using a pad to display help screens * write_help_pad() created 2006-02-19 Frederic Culot * display structure updated to take into account the scrollbars * previous_item_mark() and next_item_mark() suppressed, scrollbar used instead * bugfix: hilt_tod and hilt_app were not updated when deleting an item * day_changed variable added and store_day() updated * bugfix: pad scrolling was not updated when deleting an item in the appointment panel * bugfix: scrollbar length and top position were not correct in some cases 2006-02-18 Frederic Culot * enum window_number created * bugfix: start and end time now properly displayed when viewing an appointment in popup window * bugfix: wrong highlited item when changing day fixed * draw_scrollbar() created to display a real bar inside panels instead of 'v' and '^' marks * update_todo_panel() and update_app_panel updated to display the scrollbar 2006-02-16 Frederic Culot * del_apoint() updated to take events into account 2006-02-11 Frederic Culot * configure.ac: AC_HEADR_STDBOOL added * init_vars() created * do_storage variable added to check if we really need to update the appointment panel items inside pad * free_aday() and free_eday() created 2006-02-09 Frederic Culot * pad_s structure created * get_item_line(), scroll_pad_down() and scroll_pad_up() created 2006-02-05 Frederic Culot * get_item_line() created 2006-02-04 Frederic Culot * work on the way appointment panel scrolls * updated the way appointments are displayed in popup windows 2006-01-28 Frederic Culot * write_app_pad() improved 2006-01-26 Frederic Culot * improved the windows refresh order in update_windows() 2006-01-25 Frederic Culot * changed MAX_LENGTH to 512 * the pad used to display appointments has a fixed length now 2006-01-14 Frederic Culot * store_day() created to speed up the appointment panel update * create_app_pad(), write_app_pad(), show_app_pad() created to improve the way appointment panel scrolls 2006-01-10 Frederic Culot * added ifndef..define tests at the beginning of .h 2006-01-08 Frederic Culot * added definition of CTRL keys in vars.h * added the ability to erase characters with CTRL-H when entering text (to fix a problem reported by Brendan who was not able to delete with its English keyboard) 2006-01-07 Frederic Culot * progress_bar() created in order to see progression while saving data to file * 'skip_progress_bar' option added * changed color 5 to be yellow on black and color 7 to be black on yellow (this is to draw the newly created progress bar) 2005-12-31 Frederic Culot * src/Makefile.am: removed the -lpanel * README: update * add_item() and check_time() modified so that : o an appointment start time can now be entered in both hh:mm and h:mm formats o for the appointment end time, either a duration in minutes or the appointment end time can be entered * help_arg() and app_arg() updated to take events into account when running calcurse in non-interactive mode * arg_print_date() created to simplify app_arg() structure 2005-12-27 Frederic Culot * work on a better way to handle appointment and todo panels with the use of ncurses scrolling functions 2005-12-26 Frederic Culot * bugfix: fixed compiler warnings, thanks to Uwe 2005-12-11 Frederic Culot * bugfix: fixed the January 0 bug * bugfix: current date is no longer highlighted in every year of the future and the past (thanks to Michael for reporting that bug) * improved the way items are shown inside popup windows (variable 'show_apoint' removed, call to item_in_popup added when 'V' pressed) 2005-12-10 Frederic Culot * update_app_panel() and update_todo_panel() improved 2005-12-04 Frederic Culot * update_app_panel() updated to show events: now events are displayed first in the appointment panel, followed by an horizontal line * update_cal_panel() updated to highlight days containing events in calendar view 2005-12-03 Frederic Culot * Loading of events implemented: load_app() updated 2005-11-30 Frederic Culot * Saving of events implemented 2005-11-29 Frederic Culot * Continuation of events item implementation * add_apts() updated (it is now called add_item) to check if an appointment or an event is entered 2005-11-28 Frederic Culot * Replaced everything related to 'event' by 'apoint' to prepare the incoming event items (meaning all-day long items) * src/event.[ch]: new files to deal with events * Makefile.am: update 2005-11-26 Frederic Culot * === Released 1.2 === * Fixed problems with scroller() within the help screen 2005-11-20 Frederic Culot * Improved the way help screens are refreshed * Removed call to doupdate() inside scroller(), to prevent redondancy * config_bar() and check_data_files() updated * 'skip_system_dialogs' option added 2005-11-19 Frederic Culot * reinit_wins() created to redraw windows after resizing or layout change * redraw_screen() improved and renamed it into get_screen_config() * fixed cursor position (did not manage to hide it :-( 2005-11-08 Frederic Culot * changed all mvprintvw() calls to mvwprintw(), to improve the way calcurse interface is refreshed. 2005-11-06 Frederic Culot * Work on window handling : o erase_panel() suppressed because no longer used 2005-11-05 Frederic Culot * Handling of status bar improved : o creation of an ncurses window instead of using stdscr o erase_status_bar() replaced by erase_window_part() * cal_error() replaced by status_mesg() 2005-11-03 Frederic Culot * ncurses library use improved: screen no longer flickers when refreshed 2005-11-02 Frederic Culot * erase_window_part() written to erase parts of windows 2005-11-01 Frederic Culot * changed abbreviation for 'Wednesday' from 'Wen' to 'Wed' * panel library removed, calcurse does not use it anymore * work on the windows refreshing process : update_all() created 2005-10-29 Frederic Culot * === Released 1.1 === * source code cleanup 2005-10-25 Frederic Culot * bugfix : Debian Bug Report #335430 regarding the GoTo today function which goes to the day calcurse was started instead of the current day is now fixed 2005-10-23 Frederic Culot * '-c' flag added to allow the use of multiple calendars 2005-10-20 Frederic Culot * src/calcurse.1: * README: updates * configure.ac: improved with the help of Michael 2005-10-19 Frederic Culot * '-d' flag added to list appointments for the N upcoming days or for a given day 2005-10-15 Frederic Culot * Cleaning up of the source code so that it follows the K&R style * '-t' flag added to list todos in non interactive mode * '-a' flag added to list current day's appointments in non interactive mode 2005-10-13 Frederic Culot * src/args.[ch]: functions created to handle command-line arguments * '-h' and -'v' flag added to display help and version in non interactive mode 2005-10-08 Frederic Culot * === Released 1.0 (first stable release) === * help screen updated * manpage and TODO updated 2005-10-06 Frederic Culot * bugfix : Debian Bug Report #330869 regarding the October 0 which does not exist, is now fixed 2005-10-05 Frederic Culot * default options "auto-save", "confirm-quit", and "confirm-delete" set to "yes" 2005-10-03 Frederic Culot * manpage written * README updated 2005-09-13 Frederic Culot * === Released 1.0rc4 === * bugfix release : o some people reported a segfault while changing general options in the config screen, this no longer happens o the Makefile was not linking to proper library (-lcurse instead of -lncurse), this is fixed o Calcurse no longer ends while trying to delete an event which was just created (thanks to Alex's patch) o changed date format to be like September 13, 2005 instead of September, 13 2005 2005-09-11 Frederic Culot * === Released 1.0rc3 (first public release) === * adding of licence header in source files 2005-09-04 Frederic Culot * source code splitted : creation of custom.c, custom.h * update of the Makefile * layout_config() : previous layout is now saved to restore it if no choice is made * color_config() : previous colour is also saved as in layout_config() 2005-08-31 Frederic Culot * source code splitted : creation of vars.c, vars.h, io.c, io.h, help.c, help.h * update of the Makefile * modification of the cal_error function 2005-08-30 Frederic Culot * source code splitted : creation of calendar.c & calendar.h * update of the Makefile 2005-08-29 Frederic Culot * source code splitted : creation of utils.c & utils.h, update of the Makefile 2005-07-03 Frederic Culot * redraw_screen() created for initialization of screen * draw_screen() optimization for slow machine 2005-07-02 Frederic Culot * help screen updated * is_all_digit() created to check if a string is made of digits * check_event_time() created to check a new appointment time format * bugfixes: * when 'G' pressed, no crash when invalid day is entered * when 'V' pressed, no crash when no event is highlited * Calcurse is now started in calendar view * scrolling problems fixed in app or todo view * first event is highlited if it is the first time a panel is visited * check if an new appointment format is valid * we can now move from year to year in calendar view * config screen is ok in OpenBSD too now 2005-06-26 Frederic Culot * === Version 1.0rc2 === * translation of the Changelog * writing of the README file * comments in the code * use of gnu autotools for building CalCurse package 2005-06-19 Frederic Culot * scroller() improvement : the line is cut at the end of the last word, not in the middle of it, and the 'next page' and 'previous page' function was added * bug concerning the event printing in popup windows solved 2005-06-18 Frederic Culot * help improved 2005-06-17 Frederic Culot * writing of a function to erase appointments 2005-06-14 Frederic Culot * writing of a function to erase todo events * adding of the confirm_delete variable 2005-06-12 Frederic Culot * improvement of the status bar, it is now dependant of the terminal size * adding of the terminal minimum size test * adding of a scrolling function in the ToDo panel if there is more events than the panel lines * creation of the ~/.calcurse repertory if it does not exist when CalCurse is launched 2005-06-04 Frederic Culot * colorization of the selected event * view function created to print out an event in a popup window (ok for ToDo events) * active panel is now colorized 2005-05-26 Frederic Culot * update_todo_panel() now improved :) (3 dots are added at the end of the event if it is longer than the panel size) * erase_tod() created to erase the todo panel * erase_tod(), erase_app() and erase_cal() linked in one single function : erase_panel() * popup() created to print a popup window 2005-05-25 Frederic Culot * tries for improving update_todo_panel() :( 2005-05-18 Frederic Culot * changing of the status bar (different bars for calendar and other panels) 2005-05-14 Frederic Culot * possibility to change the selected panel with TAB key 2005-05-12 Frederic Culot * scroller() improved 2005-04-20 Frederic Culot * scroller() function created * help screen improved, with scroller description 2005-04-10 Frederic Culot * the bug concerning the erasing of calendar lines is solved : a refresh() was missing :( * -> CalCurse testing version is now almost over :) 2005-04-08 Frederic Culot * help menu improved, with a description for each possible action in Calcurse 2005-04-07 Frederic Culot * adding of the auto-save and auto-confirm variables with tests when quitting Calcurse * adding of general options in the config menu (auto-save and confirm-quit added) * writing of general_config(), print_general_options(), switch_options and print_option_incolor() * improvement of functions to read and save user config, to take those two new options into account 2005-04-02 Frederic Culot * === Version 1.0rc1 === * test function (e key) suppressed * add_apts() finished * goto_day() finished (we can now enter any day to go to) * -> CalCurse v. 1.0rc1 ;) 2005-04-01 Frederic Culot * work with Alex : * ToDo events are put in right order * writing of todo.h and todo.c * writing of date2sec() * improvement of the function to create and print the Appointments, which are now put in right order * writing of event_delete_bynum() * writing of a function to colorize a day which contains an event * improvement of the Makefile 2005-03-27 Frederic Culot * do_modifs_todo() finished : the ToDo events are now properly erased 2005-03-06 Frederic Culot * improvements of do_modifs_todo() 2005-03-05 Frederic Culot * extract_data() created to read the user conf from file * extract_todo() becomes extract_data() -> the user config is now properly read 2005-03-03 Frederic Culot * load_conf() created to load the user config 2005-03-02 Frederic Culot * improvement of save_cal() to save the user configuration (creation of the file .calcurse/conf, update of check_data_files) 2005-03-01 Frederic Culot * improvement of do_modifs_todo() * writing of the test function (when 'e' is pressed) 2005-02-27 Frederic Culot * layout_config() finished * adding of the GPL licence 2005-02-26 Frederic Culot * adding of the layout variable * writing of layout_config() started 2005-02-25 Frederic Culot * adding of a DEFINE for version number * creation of the help page * creation of the configuration menu, with color changing for now on 2004-03-15 Frederic Culot * beginning of the project