diff options
Diffstat (limited to 'src/calcurse.h')
-rw-r--r-- | src/calcurse.h | 67 |
1 files changed, 39 insertions, 28 deletions
diff --git a/src/calcurse.h b/src/calcurse.h index 39a2af1..8322416 100644 --- a/src/calcurse.h +++ b/src/calcurse.h @@ -1,7 +1,7 @@ /* * Calcurse - text-based organizer * - * Copyright (c) 2004-2020 calcurse Development Team <misc@calcurse.org> + * Copyright (c) 2004-2023 calcurse Development Team <misc@calcurse.org> * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -111,9 +111,6 @@ #define STATUSHEIGHT 2 #define MAX_NOTESIZ 40 -/* Format for appointment hours is: HH:MM */ -#define HRMIN_SIZE 6 - /* Maximum number of colors available. */ #define NBUSERCOLORS 6 @@ -142,9 +139,11 @@ */ #define DAYINSEC (DAYINMIN * MININSEC) #define NEXTDAY(date) date_sec_change((date), 0, 1) +#define PREVDAY(date) date_sec_change((date), 0, -1) #define DAYLEN(date) (NEXTDAY(date) - (date)) #define ENDOFDAY(date) (NEXTDAY(date) - 1) #define HOURINSEC (HOURINMIN * MININSEC) +#define DAY(date) (update_time_in_date(date, 0, 0)) /* Calendar window. */ #define CALHEIGHT 8 @@ -153,7 +152,7 @@ * The argument (d) is the "Sunday"-numbering of member tm_wday in struct tm. */ #define WDAY(d) \ - (ui_calendar_week_begins_on_monday() ? ((d ? d : WEEKINDAYS) - 1) : d) + (modify_wday(d, -ui_calendar_get_wday_start())) /* Key definitions. */ #define CTRLVAL 0x1F @@ -304,9 +303,11 @@ struct conf { int input_datefmt; /* format for reading date */ enum pos heading_pos; /* left/center/right for heading in appts panel */ char day_heading[BUFSIZ]; /* format for displaying heading in appts panel */ + char timefmt[BUFSIZ]; /* format for displaying time in appts panel*/ }; #define EMPTY_DAY_DEFAULT "--" +#define EMPTY_EVENT_DESC_DEFAULT _("(empty description)") /* Daemon-related configuration. */ struct dmon_conf { @@ -336,6 +337,9 @@ enum datefmt { /* Day heading default format. */ #define DAY_HEADING_DEFAULT "%B %e, %Y" +/* Appointment time default format. */ +#define APPT_TIME_DEFAULT "%H:%M" + /* * Calcurse representation of the date of a day in the calendar. * When time_t is a 32-bit signed integer, the year range is 1902 - 2037. @@ -510,11 +514,11 @@ struct notify_app { struct io_file { FILE *fd; - char name[BUFSIZ]; + char *name; }; -/* Available keys. */ -enum key { +/* Virtual keys. */ +enum vkey { KEY_GENERIC_CANCEL, KEY_GENERIC_SELECT, KEY_GENERIC_CREDITS, @@ -525,6 +529,7 @@ enum key { KEY_GENERIC_COPY, KEY_GENERIC_PASTE, KEY_GENERIC_CHANGE_VIEW, + KEY_GENERIC_PREV_VIEW, KEY_GENERIC_IMPORT, KEY_GENERIC_EXPORT, KEY_GENERIC_GOTO, @@ -564,7 +569,7 @@ enum key { KEY_RAISE_PRIORITY, KEY_LOWER_PRIORITY, - NBKEYS, + NBVKEYS, KEY_UNDEF, /* Non-configurable, context sensitive key bindings. */ @@ -669,7 +674,6 @@ struct nbar { char datefmt[BUFSIZ]; /* format for displaying date */ char timefmt[BUFSIZ]; /* format for displaying time */ char cmd[BUFSIZ]; /* notification command */ - const char *shell; /* user shell to launch notif. cmd */ unsigned notify_all; /* notify all appointments */ pthread_mutex_t mutex; }; @@ -808,7 +812,7 @@ void ui_calendar_set_current_date(void); struct date *ui_calendar_get_today(void); void ui_calendar_set_first_day_of_week(enum wday); void ui_calendar_change_first_day_of_week(void); -unsigned ui_calendar_week_begins_on_monday(void); +int ui_calendar_get_wday_start(void); void ui_calendar_store_current_date(struct date *); void ui_calendar_init_slctd_day(void); struct date *ui_calendar_get_slctd_day(void); @@ -854,6 +858,7 @@ void day_display_item_date(struct day_item *, WINDOW *, int, time_t, int, int); void day_display_item(struct day_item *, WINDOW *, int, int, int, int); void day_write_stdout(time_t, const char *, const char *, const char *, const char *, int *); +void day_do_storage(int day_changed); void day_popup_item(struct day_item *); int day_check_if_item(struct date); unsigned day_chk_busy_slices(struct date, int, int *); @@ -924,7 +929,7 @@ unsigned io_file_exists(const char *); int io_check_file(const char *); int io_check_data_files(void); void io_export_data(enum export_type, int); -void io_import_data(enum import_type, char *, const char *, const char *, +int io_import_data(enum import_type, char *, const char *, const char *, const char *, const char *, const char *); struct io_file *io_log_init(void); void io_log_print(struct io_file *, int, const char *); @@ -936,7 +941,6 @@ void io_set_lock(void); unsigned io_dump_pid(char *); unsigned io_get_pid(char *); int io_files_equal(const char *, const char *); -int io_file_is_empty(char *); int io_file_cp(const char *, const char *); void io_unset_modified(void); void io_set_modified(void); @@ -946,24 +950,26 @@ int io_get_modified(void); void keys_init(void); void keys_free(void); void keys_dump_defaults(char *); -const char *keys_get_label(enum key); -enum key keys_get_action(int); +const char *keys_get_label(enum vkey); +const char *keys_get_binding(enum vkey); +enum vkey keys_get_action(int); int keys_wgetch(WINDOW *); void keys_wait_for_any_key(WINDOW *); -enum key keys_get(WINDOW *, int *, int *); -int keys_assign_binding(int, enum key); -void keys_remove_binding(int, enum key); +enum vkey keys_get(WINDOW * win, int *, int *); +int keys_assign_binding(int, enum vkey); +void keys_remove_binding(int, enum vkey); int keys_str2int(const char *); char *keys_int2str(int); -int keys_action_count_keys(enum key); -const char *keys_action_firstkey(enum key); -const char *keys_action_nkey(enum key, int); -char *keys_action_allkeys(enum key); +int keys_action_count_keys(enum vkey); +const char *keys_action_firstkey(enum vkey); +const char *keys_action_nkey(enum vkey, int); +char *keys_action_allkeys(enum vkey); void keys_display_bindings_bar(WINDOW *, int *, int, int, int); -void keys_popup_info(enum key); +void keys_popup_info(enum vkey); void keys_save_bindings(FILE *); -int keys_check_missing_bindings(void); -void keys_fill_missing(void); +int keys_check_missing(void); +int keys_check_undefined(void); +int keys_fill_missing(void); /* listbox.c */ void listbox_init(struct listbox *, int, int, int, int, const char *, @@ -1019,6 +1025,7 @@ void edit_note(char **, const char *); void view_note(const char *, const char *); void erase_note(char **); void note_read(char *, FILE *); +void note_read_contents(char *, size_t, FILE *); void note_gc(void); /* notify.c */ @@ -1105,6 +1112,7 @@ void recur_event_paste_item(struct recur_event *, time_t); void recur_apoint_paste_item(struct recur_apoint *, time_t); int recur_next_occurrence(time_t, long, struct rpt *, llist_t *, time_t, time_t *); int recur_nth_occurrence(time_t, long, struct rpt *, llist_t *, int, time_t *); +int recur_prev_occurrence(time_t, long, struct rpt *, llist_t *, time_t, time_t *); /* sigs.c */ @@ -1228,6 +1236,8 @@ time_t date_sec_change(time_t, int, int); time_t update_time_in_date(time_t, unsigned, unsigned); time_t get_sec_date(struct date); long min2sec(unsigned); +int modify_wday(int,int); +char *get_wday_default_string(int); void draw_scrollbar(struct scrollwin *, int); void item_in_popup(const char *, const char *, const char *, const char *); time_t get_today(void); @@ -1248,9 +1258,9 @@ int parse_date_increment(const char *, unsigned *, time_t); int parse_datetime(const char *, time_t *, time_t); void file_close(FILE *, const char *); void psleep(unsigned); -int fork_exec(int *, int *, const char *, const char *const *); -int shell_exec(int *, int *, const char *, const char *const *); -int child_wait(int *, int *, int); +int fork_exec(int *, int *, int *, int, const char *, const char *const *); +int shell_exec(int *, int *, int *, int, const char *, const char *const *); +int child_wait(int *, int *, int *, int); void press_any_key(void); void print_apoint(const char *, time_t, struct apoint *); void print_event(const char *, time_t, struct event *); @@ -1323,6 +1333,7 @@ void wins_sbar_wdec(void); enum win wins_slctd(void); void wins_slctd_set(enum win); void wins_slctd_next(void); +void wins_slctd_prev(void); void wins_init(void); void wins_scrollwin_init(struct scrollwin *, int, int, int, int, const char *); void wins_scrollwin_resize(struct scrollwin *, int, int, int, int); |