2001-09-26 JP Rosevear <jpr@ximian.com> * pcs/cal.h: new proto * pcs/cal.c (impl_Cal_set_mode): implement set mode method (cal_class_init): set setMode function in epv (cal_notify_mode): notify listener of mode change * pcs/cal-factory.c (add_uri): deal with UriType renaming * pcs/cal-backend.h: add new virtual methods and protos * pcs/cal-backend.c (cal_backend_class_init): init new virtual methods to null (cal_backend_set_mode): sets mode (cal_backend_get_mode): gets mode * pcs/cal-backend-file.c (cal_backend_file_class_init): overide get_mode and set_mode methods (cal_backend_file_get_mode): return mode (notify_mode): have listeners notified of the set mode call (cal_backend_file_set_mode): set the mode by indicating not supported * cal-client/cal-listener.h: update proto * cal-client/cal-listener.c (impl_notifyCalSetMode): implement set mode callback (cal_listener_construct): take set mode callback (cal_listener_new): ditto * cal-client/cal-client.h: update protos, add signal proto * cal-client/cal-client.c (cal_client_class_init): add cal_set_mode signal (cal_set_mode_cb): handle set mode callback from listener (cal_client_open_calendar): pass additional param to cal_listener_new (cal_client_set_mode): wrapper to set the calendar mode * idl/evolution-calendar.idl: make UriType into CalMode, add SetModeStatus enum and notifyCalSetMode method to the listener * gui/calendar-offline-handler.c (create_connection_list): fetch the uri list ourselves (impl_prepareForOffline): reflect param change of create_connect_list (update_offline): ditto (backend_cal_set_mode): set mode call back (backend_cal_opened): cal opened call back, set mode to local (impl_goOffline): reflect UriType renaming * cal-util/cal-util.h: rename UriType to CalMode svn path=/trunk/; revision=13142
81 lines
2.3 KiB
C
81 lines
2.3 KiB
C
/* Evolution calendar client interface object
|
||
*
|
||
* Copyright (C) 2000 Ximian, Inc.
|
||
* Copyright (C) 2000 Ximian, Inc.
|
||
*
|
||
* Authors: Federico Mena-Quintero <federico@ximian.com>
|
||
* Rodrigo Moya <rodrigo@ximian.com>
|
||
*
|
||
* This program is free software; you can redistribute it and/or modify
|
||
* it under the terms of the GNU General Public License as published by
|
||
* the Free Software Foundation; either version 2 of the License, or
|
||
* (at your option) any later version.
|
||
*
|
||
* This program is distributed in the hope that it will be useful,
|
||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
* GNU General Public License for more details.
|
||
*
|
||
* You should have received a copy of the GNU General Public License
|
||
* along with this program; if not, write to the Free Software
|
||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||
*/
|
||
|
||
#ifndef CAL_H
|
||
#define CAL_H
|
||
|
||
#include <libgnome/gnome-defs.h>
|
||
#include <bonobo/bonobo-xobject.h>
|
||
#include "evolution-calendar.h"
|
||
#include "cal-common.h"
|
||
|
||
BEGIN_GNOME_DECLS
|
||
|
||
|
||
|
||
#define CAL_TYPE (cal_get_type ())
|
||
#define CAL(obj) (GTK_CHECK_CAST ((obj), CAL_TYPE, Cal))
|
||
#define CAL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), CAL_TYPE, CalClass))
|
||
#define IS_CAL(obj) (GTK_CHECK_TYPE ((obj), CAL_TYPE))
|
||
#define IS_CAL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), CAL_TYPE))
|
||
|
||
typedef struct _CalPrivate CalPrivate;
|
||
|
||
struct _Cal {
|
||
BonoboXObject object;
|
||
|
||
/* Private data */
|
||
CalPrivate *priv;
|
||
};
|
||
|
||
struct _CalClass {
|
||
BonoboXObjectClass parent_class;
|
||
|
||
POA_GNOME_Evolution_Calendar_Cal__epv epv;
|
||
};
|
||
|
||
GtkType cal_get_type (void);
|
||
|
||
Cal *cal_construct (Cal *cal,
|
||
CalBackend *backend,
|
||
GNOME_Evolution_Calendar_Listener listener);
|
||
|
||
Cal *cal_new (CalBackend *backend, GNOME_Evolution_Calendar_Listener listener);
|
||
|
||
void cal_notify_mode (Cal *cal,
|
||
GNOME_Evolution_Calendar_Listener_SetModeStatus status,
|
||
GNOME_Evolution_Calendar_CalMode mode);
|
||
void cal_notify_update (Cal *cal, const char *uid);
|
||
void cal_notify_remove (Cal *cal, const char *uid);
|
||
|
||
void cal_notify_categories_changed (Cal *cal, GNOME_Evolution_Calendar_StringSeq *categories);
|
||
|
||
char *cal_get_password (Cal *cal, const char *prompt, const char *key);
|
||
void cal_forget_password (Cal *cal, const char *key);
|
||
|
||
|
||
|
||
END_GNOME_DECLS
|
||
|
||
#endif
|