aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/gnome-cal.h
blob: 6ac320b51bbff908cf9948d4f452eb5229961c33 (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
/*
 * GnomeCalendar widget
 * Copyright (C) 1998 the Free Software Foundation
 *
 * Authors: Miguel de Icaza (miguel@kernel.org)
 *          Federico Mena-Quintero <federico@helixcode.com>
 */

#ifndef GNOME_CALENDAR_APP_H
#define GNOME_CALENDAR_APP_H

#include <time.h>
#include <libgnome/gnome-defs.h>
#include <gtk/gtkvbox.h>
#include <bonobo.h>
#include <widgets/misc/e-calendar.h>
#include <cal-client/cal-client.h>

BEGIN_GNOME_DECLS



#define GNOME_TYPE_CALENDAR            (gnome_calendar_get_type ())
#define GNOME_CALENDAR(obj)            (GTK_CHECK_CAST ((obj), GNOME_TYPE_CALENDAR, GnomeCalendar))
#define GNOME_CALENDAR_CLASS(klass)    (GTK_CHECK_CAST_CLASS ((klass), GNOME_TYPE_CALENDAR, \
                    GnomeCalendarClass))
#define GNOME_IS_CALENDAR(obj)         (GTK_CHECK_TYPE ((obj), GNOME_TYPE_CALENDAR))
#define GNOME_IS_CALENDAR_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GNOME_TYPE_CALENDAR))

typedef struct _GnomeCalendar GnomeCalendar;
typedef struct _GnomeCalendarClass GnomeCalendarClass;
typedef struct _GnomeCalendarPrivate GnomeCalendarPrivate;

struct _GnomeCalendar {
    GtkVBox vbox;

    /* Private data */
    GnomeCalendarPrivate *priv;
};

struct _GnomeCalendarClass {
    GtkVBoxClass parent_class;
};


typedef enum {
    CALENDAR_OPEN,
    CALENDAR_OPEN_OR_CREATE
} GnomeCalendarOpenMode;

GtkType    gnome_calendar_get_type          (void);
GtkWidget *gnome_calendar_construct     (GnomeCalendar *gcal);

GtkWidget *gnome_calendar_new           (void);

CalClient *gnome_calendar_get_cal_client    (GnomeCalendar *gcal);

gboolean   gnome_calendar_open                  (GnomeCalendar *gcal,
                         char *file,
                         GnomeCalendarOpenMode gcom);
/*
int    gnome_calendar_create        (GnomeCalendar *gcal,
                         char *file);
*/
void       gnome_calendar_next              (GnomeCalendar *gcal);
void       gnome_calendar_previous          (GnomeCalendar *gcal);
void       gnome_calendar_goto              (GnomeCalendar *gcal,
                         time_t new_time);
void       gnome_calendar_dayjump           (GnomeCalendar *gcal,
                         time_t time);
/* Jumps to the current day */
void       gnome_calendar_goto_today            (GnomeCalendar *gcal);
char      *gnome_calendar_get_current_view_name (GnomeCalendar *gcal);
void       gnome_calendar_set_view      (GnomeCalendar  *gcal,
                         char       *page_name,
                         gboolean    reset_range_shown,
                         gboolean    focus);

void       gnome_calendar_set_selected_time_range (GnomeCalendar *gcal,
                           time_t     start_time,
                           time_t     end_time);
void       gnome_calendar_get_selected_time_range (GnomeCalendar *gcal,
                           time_t    *start_time,
                           time_t    *end_time);

void       gnome_calendar_edit_object           (GnomeCalendar *gcal,
                         CalComponent  *comp);

void       gnome_calendar_new_appointment       (GnomeCalendar *gcal);

/* Returns the selected time range for the current view. Note that this may be
   different from the fields in the GnomeCalendar, since the view may clip
   this or choose a more appropriate time. */
void       gnome_calendar_get_current_time_range (GnomeCalendar *gcal,
                          time_t     *start_time,
                          time_t     *end_time);

/* Tells the calendar to reload all config settings. initializing should be
   TRUE when we are setting the config settings for the first time. */
void       gnome_calendar_update_config_settings (GnomeCalendar *gcal,
                          gboolean   initializing);

void       gnome_calendar_set_view_buttons  (GnomeCalendar  *gcal,
                         GtkWidget  *day_button,
                         GtkWidget  *work_week_button,
                         GtkWidget  *week_button,
                         GtkWidget  *month_button);

/* This makes the appropriate radio button in the toolbar active.
   It sets the ignore_view_button_clicks flag so the "clicked" signal handlers
   just return without doing anything. */
void       gnome_calendar_update_view_buttons   (GnomeCalendar  *gcal);



END_GNOME_DECLS

#endif
3 * Remove NLS, DOCS, EXAMPLES and IPV6 from OPTIONS_DEFAULT, they are enabled by...amdmi32016-05-244-4/+4 * Convert tab after WWW: in pkg-descrs to single space as per PHBamdmi32016-05-2413-13/+13 * - Fix trailing whitespace in pkg-messagesamdmi32016-05-191-3/+3 * - Fix trailing whitespace in pkg-descrs, categories [p-x]*amdmi32016-05-1918-36/+36 * Prevent collision with getline(3)bapt2016-05-141-0/+20 * Update the maintainer email address for the ports Iwoodsb022016-05-101-1/+1 * Update to 0.9.1.mat2016-04-185-43/+75 * - Do not attempt to create ${STAGEDIR}${DESKTOPDIR}: `share/applications'danfe2016-04-151-1/+2 * Remove redundant MAN1 definition.cy2016-04-131-1/+0 * Convert to @samplebapt2016-04-101-3/+1 * Remove ${PORTSDIR}/ from dependencies, categories v, w, x, y, and z.mat2016-04-0192-291/+291 * Fixup some whitespace at the beginning of lines problems.mat2016-04-012-2/+2 * - Update to 0.5.0sunpoet2016-04-012-2/+2 * Update to 0.11.1olivierd2016-04-012-6/+5 * - Reassign to the heap, on maintainer's requestculot2016-03-311-1/+1 * - Update to 2.3.5amdmi32016-03-293-15/+12 * - Update to version 2.0.20 and provide working master sitesdanfe2016-03-164-18/+34 * Update to 0.11.0olivierd2016-03-133-7/+14 * Update to 0.20.6gblach2016-03-132-3/+3 * Update to 1.11.90.rakuco2016-03-123-4/+7 * Update to 4.12bapt2016-03-092-3/+3 * Update mutter to 3.18.3.kwm2016-03-042-3/+3 * Update to 1.2.4.vanilla2016-02-182-3/+3 * Update to 0.7.0.rakuco2016-02-163-7/+11 * - Switch to options helpersamdmi32016-02-152-33/+45 * - Clarify LICENSEamdmi32016-02-152-8/+9 * - Add LICENSEamdmi32016-02-152-4/+9 * - Switch to options helpersamdmi32016-02-157-17/+29 * - Add LICENSE_FILEamdmi32016-02-151-2/+5 * - Add LICENSE_FILEamdmi32016-02-152-15/+18 * - Add LICENSE_FILEamdmi32016-02-152-28/+10 * The FreeBSD GNOME team proudly presents GNOME 3.18 for FreeBSD.kwm2016-02-157-94/+12 * Update to 0.20.5gblach2016-02-092-3/+3 * Update x11-wm/awesome to 3.5.8garga2016-02-014-32/+32 * Update to 0.20.3gblach2016-01-313-10/+5 * Update the MATE DE to 1.12.kwm2016-01-252-4/+5 * Upgrade to 1.5.0.vanilla2016-01-162-3/+3 * Upgrade to 1.16.vanilla2016-01-136-123/+3 * Convert LICENSE= "GPLxx # or later" to "GPLxx+"amdmi32016-01-139-9/+9 * Update to 0.20.2gblach2015-12-302-3/+3 * - Add LICENSEamdmi32015-12-299-150/+106 * - Add LICENSE_FILEamdmi32015-12-281-6/+9 * Update to 0.20.1gblach2015-12-272-4/+4 * x11-wm/e16 - update to 1.0.17, take back maintainershipgahr2015-12-242-4/+4 * - Update to 2.3.4miwi2015-12-154-5/+12 * x11-wm/dwm: config.def.h wants x11/sterm after r403178jbeich2015-12-132-2/+3 * Update to the lastest GNOME 3.16 releases.kwm2015-12-123-4/+3 * Remove patch that prevents matwm2 to build with freetype2 2.6.1+kwm2015-12-121-11/+0 * - Update Enlightenment to 0.20.0gblach2015-12-1212-40/+28 * - Clarify LICENSEamdmi32015-12-101-5/+7 * x11-wm/dwm: make DWM_CONF use symlinkjbeich2015-12-071-2/+2 * x11-wm/dwm: simplify patchingjbeich2015-12-073-56/+4 * x11-wm/dwm: convert to option helpersjbeich2015-12-071-12/+8 * x11-wm/dwm: update to 6.1jbeich2015-12-073-44/+20 * Update giflib to 5.1.1antoine2015-12-042-0/+2 * - Fix options handlingamdmi32015-12-021-7/+7 * x11-wm/blackbox: fix build on armmmoll2015-11-302-0/+15 * - Update to 1.4.8miwi2015-11-272-3/+3 * x11-wm/openbox: fix dependencies and default packagenovel2015-11-251-1/+2 * - Update to 0.23amdmi32015-11-243-10/+27 * - Clarify LICENSEamdmi32015-11-174-14/+15 * Update to 0.19.13gblach2015-11-172-3/+3 * Update to the most recent snapshot (2015-09-20).danfe2015-11-164-14/+26 * - Clarify LICENSEamdmi32015-11-142-8/+11 * Mark a few ports BROKEN: unfetchableantoine2015-11-091-0/+2 * Remove expired ports:rene2015-11-025-49/+0 * - Rename x11-wm/clementine to x11-wm/clementine-wm, so the port is not mixed ...amdmi32015-10-237-3/+6 * Resurrect `x11-wm/wmx' port removed by kris@ on Feb 18, 2005. It is stilldanfe2015-10-224-0/+55 * Fix pkg-plist when NLS is off.hrs2015-10-221-27/+27 * Update xcompmgr to 1.1.7.kwm2015-10-202-3/+3 * Update twm to 1.0.9.kwm2015-10-202-3/+3 * Get rid of hand-rolled `do-build' and `do-install' targets which serve thedanfe2015-10-193-10/+32 * Improve shebangfix frameworkamdmi32015-10-191-1/+0 * - Attempt to unbreak on PowerPC (verified) and SPARC (not verified)danfe2015-10-192-30/+21 * - Update to version 2.3.2pawel2015-10-175-23/+14 * - Update to 0.10.1olivierd2015-10-123-4/+20 * Remove iconv(), iconv_open() and iconv_close() symbols from libiconv.tijl2015-10-101-1/+7 * Update to 4.11bapt2015-10-092-3/+3 * - Add LICENSE_FILEamdmi32015-10-081-1/+4 * - cleanupdinoex2015-10-081-1/+1 * - cleanupdinoex2015-10-081-1/+1 * Update to 0.19.12gblach2015-10-072-3/+3 * Update to 0.95.7. Changes include:hrs2015-10-0670-248/+275 * Deprecate ports broken for more than 6 monthsantoine2015-09-271-0/+2 * Update to 0.19.11gblach2015-09-252-3/+3 * - Switch to options helpersamdmi32015-09-181-12/+4 * It seems some people keep adding $FreeBSD$ to patch files.mat2015-09-162-4/+0 * Convert to option helpersbapt2015-09-131-27/+24 * Update to 0.19.10gblach2015-09-132-3/+3 * Update to 4.10.4bapt2015-09-122-3/+3 * - Update to 0.10.0olivierd2015-09-083-5/+8 * - Add NO_ARCHamdmi32015-09-051-6/+3 * - Add LICENSE_FILEamdmi32015-09-051-5/+3 * Update macro to 1.10.2.kwm2015-09-042-3/+3 * - Add LICENSEamdmi32015-09-041-5/+4 * - Cleanup, update MASTER_SITESamdmi32015-09-032-16/+20 * - Update to 2.2.2amdmi32015-09-032-3/+3 * Upgrade to 2.3.1.vanilla2015-09-033-9/+8 * 1: Upgrade to 1.4.8.vanilla2015-09-034-32/+42 * - Fix shebangsamdmi32015-09-031-8/+10 * - Add LICENSE_FILEamdmi32015-09-031-6/+5 * Fix build when NLS option is offgblach2015-09-031-3/+3 * - Add LICENSEamdmi32015-09-012-7/+8 * Update to 0.19.9gblach2015-08-242-3/+3 * - Update The Glorious Glasgow Haskell Compiler to version 7.10.2pgj2015-08-215-10/+23 * Remove UNIQUENAME and LATEST_LINK.mat2015-08-174-5/+0 * Bump PORTREVISION for libupower-glib library version bump in r393607.tijl2015-08-171-1/+1 * Make sure these compiz ports depend on gconf2 so the GCONF_SCHEMASkwm2015-08-103-3/+3 * Update end-user information after revision r393789olivierd2015-08-091-21/+15 * Upgrade to 0.19.8gblach2015-08-062-3/+3 * The FreeBSD GNOME team proudly presents GNOME 3.16 for FreeBSD.kwm2015-08-0610-77/+98 * Part 2 of adding USE_GNOME=intltool to ports that require it.kwm2015-08-053-3/+3 * - Upgrade x11-wm/enlightenment to 0.19.7 [1]gblach2015-08-052-3/+3 * Part 1 of adding USE_GNOME=intltool to ports that require it.kwm2015-08-032-2/+2 * By default libtool replaces -export-symbols <file> with -retain-symbols-filetijl2015-08-022-1/+2 * Update to 4.10.3bapt2015-07-312-3/+3 * Switch default python_CMD used by shebangfix to ${PYTHON_CMD} for portsantoine2015-07-301-2/+1 * Update MATE DE to 1.10.0.kwm2015-07-282-5/+6 * Update to 4.12.3 (bugfix release)olivierd2015-07-202-4/+5 * Fix runtime error:riggs2015-07-171-2/+14 * x11-wm/compiz-fusion: cleanuppgollucci2015-07-161-6/+1 * - Un-break buildriggs2015-07-064-13/+63 * Update to 2.7.2zeising2015-07-054-3/+67 * - Switch to USES=autoreconfamdmi32015-06-242-10/+7 * Convert to USES=jpegantoine2015-06-234-9/+5 * Convert to USES=autoreconfbapt2015-06-221-3/+2 * - Strip binariesamdmi32015-06-171-0/+3 * - Don't duplicate examples in DOCSDIRamdmi32015-06-163-22/+14 * - Add LICENSE_FILEamdmi32015-06-152-3/+7 * Reset dhn's portserwin2015-06-134-4/+4 * - Strip librariesamdmi32015-06-061-1/+5 * Update to 3.6.novel2015-06-013-9/+9 * - clerifyamdmi32015-05-291-3/+3 * Remove $FreeBSD$ from patches files everywhere.mat2015-05-2322-46/+0 * Replace most occurences of github.com in MASTER_SITES with USE_GITHUB usage.mat2015-05-194-6/+9 * Update to 4.12.2 (bugfix)olivierd2015-05-182-3/+3 * Update to 4.12.3 (bugfix)olivierd2015-05-172-4/+4 * MASTER_SITES cleanup.mat2015-05-1411-24/+13 * Remove unneeded patches (discussed with upstream)olivierd2015-05-124-56/+0 * Cleanup DIST* variables.mat2015-05-121-2/+2 * Update to 0.19.5gblach2015-05-102-3/+3 * Update ports in the remaining categories to not use GH_COMMIT.mat2015-05-088-16/+11 * Update to 0.9.1olivierd2015-05-068-110/+51 * USES=xfce: Stop overriding MASTER_SITE_SUBDIR.bdrewery2015-04-291-1/+1 * Add euclid-wm 0.4.3, minimalist, tiling window manager for X11.vanilla2015-04-286-0/+118 * - Update to 0.9.0olivierd2015-04-184-4/+25 * Update to 4.10.2bapt2015-04-172-3/+3 * over to enlightenment@bapt2015-04-171-1/+1 * over to enlightenment@bapt2015-04-171-1/+1 * Over to the enlightement teambapt2015-04-1717-17/+17 * Back to the pool.gblach2015-04-1720-20/+20 * converters/libiconv:tijl2015-04-153-29/+3 * Fix build WITHOUT=NLS.mat2015-04-111-0/+1 * - Switch to USES= metaportolivierd2015-04-081-62/+23 * - Update to version 2.2.1pawel2015-03-304-20/+5 * x11-wm/bspwm: minor fixesrobak2015-03-302-3/+6 * Update to 4.10.1bapt2015-03-302-3/+3 * Update to 4.10bapt2015-03-302-3/+3 * - Add patch, to make verbose logging conditionalolivierd2015-03-292-0/+17 * Update the Gnome stack to the latest in the 3.14 series.kwm2015-03-272-3/+3 * Unbreak build, when Thunar is not setolivierd2015-03-271-0/+1 * Update the cinnamon stack to the latest in the 2.4 series.kwm2015-03-272-3/+3 * Upgrade to 5.6.vanilla2015-03-264-25/+22 * 8 ports categories: Remove $PTHREAD_LIBSmarino2015-03-241-1/+1 * Update to 4.12.1olivierd2015-03-222-4/+4 * Fix plistbapt2015-03-221-3/+3 * Make fonts repecting XDGbapt2015-03-222-9/+8 * - Update to version 0.9pawel2015-03-173