aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/calendar-commands.h
blob: f7afa4b3c2940c8ee5ee601f65efd457e355e242 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
#ifndef CALENDAR_COMMANDS_H
#define CALENDAR_COMMANDS_H

#include <bonobo/bonobo-control.h>
#include "gnome-cal.h"

/* This enum and the following array define the color preferences */

typedef enum {
    COLOR_PROP_OUTLINE_COLOR,   /* Color of calendar outline */
    COLOR_PROP_HEADING_COLOR,   /* Color for headings */
    COLOR_PROP_EMPTY_DAY_BG,    /* Background color for empty days */
    COLOR_PROP_MARK_DAY_BG,     /* Background color for days with appointments */
    COLOR_PROP_PRELIGHT_DAY_BG, /* Background color for prelighted day */
    COLOR_PROP_DAY_FG,      /* Color for day numbers */
    COLOR_PROP_CURRENT_DAY_FG,  /* Color for current day's number */
    COLOR_PROP_TODO_NOT_DUE_YET,    /* Color for Todo items not yet due */
    COLOR_PROP_TODO_DUE_TODAY,      /* Color for Todo items due today */ 
    COLOR_PROP_TODO_OVERDUE,        /* Color for Todo items that are overdue */
    COLOR_PROP_LAST         /* Number of color properties */
} ColorProp;

struct color_prop {
    int r;      /* Values are in [0, 65535] */
    int g;
    int b;
    char *label;    /* Label for properties dialog */
    char *key;  /* Key for gnome_config */
};

extern struct color_prop color_props[];


#define COOKIE_USER_HOME_DIR ((char *) -1)

 
/* Calendar preferences */

extern int day_begin, day_end;
extern char *user_name;
extern int am_pm_flag;
extern int week_starts_on_monday;

/* todo preferences */
extern int todo_show_due_date;

extern int todo_item_dstatus_highlight_overdue;
extern int todo_item_dstatus_highlight_due_today;
extern int todo_item_dstatus_highlight_not_due_yet;

extern int todo_show_time_remaining;
extern int todo_show_priority;
extern char *todo_overdue_font_text;
extern gint todo_current_sort_column;
extern gint todo_current_sort_type;

/* alarm stuff */
#if 0
extern CalendarAlarm alarm_defaults[4];
#endif
extern gboolean beep_on_display;
extern gboolean enable_aalarm_timeout;
extern guint audio_alarm_timeout;
extern const guint MAX_AALARM_TIMEOUT;
extern gboolean enable_snooze;
extern guint snooze_secs;
extern const guint MAX_SNOOZE_SECS;



/* This tells all the calendars to reload the config settings. */
void update_all_config_settings (void);

/*
 * FIXME: These are for the old config code and will be removed eventually.
 */

/* Creates and runs the preferences dialog box */
void properties (GtkWidget *toplevel);

/* Asks for all the time-related displays to be updated when the user changes the time format
 * preferences.
 */
void time_format_changed (void);

/* Asks for all the month items' colors to be reset */
void colors_changed (void);

/* Asks for all todo lists to reflect the accurate properties */
void todo_properties_changed(void);




/* Creates and runs the Go-to date dialog */
void goto_dialog (GnomeCalendar *gcal);

/* Returns a pointer to a statically-allocated string with a representation of the specified color.
 * Values must be in [0, 65535].
 */
char *build_color_spec (int r, int g, int b);

/* Parses a color specification of the form "#%04x%04x%04x" and returns the color components. */
void parse_color_spec (char *spec, int *r, int *g, int *b);

/* Calls build_color_spec() for the color in the specified property number */
char *color_spec_from_prop (ColorProp propnum);

GnomeCalendar *new_calendar (char *full_name,
                 char *geometry,
                 gboolean hidden);

void calendar_set_uri (GnomeCalendar *gcal, char *calendar_file);


/*----------------------------------------------------------------------*/
/* FIXME -- where should this stuff go?                                 */
/*----------------------------------------------------------------------*/

void init_calendar (void);

void calendar_control_activate (BonoboControl *control,
                GnomeCalendar *cal);
void calendar_control_deactivate (BonoboControl *control);

void quit_cmd (BonoboUIComponent *uih, void *user_data, const char *path);

/*extern char *user_calendar_file;*/
extern char *user_name;
extern char *full_name;
extern int debug_alarms;
extern int active_calendars;
extern GList *all_calendars;

#endif /* CALENDAR_COMMANDS_H */