sample plugin added to mark a calendar to be available offline or revert
availability svn path=/trunk/; revision=27681
This commit is contained in:
@ -1,6 +1,6 @@
|
||||
2004-10-20 JP Rosevear <jpr@novell.com>
|
||||
|
||||
* select-one-source.c: implement a plugin that allows the user to
|
||||
limit the displayed task lists or calendars to the current
|
||||
calendar or task list
|
||||
2004-10-22 Harish Krishnaswamy <kharish@novell.com>
|
||||
|
||||
* mark-calendar-offline.c: implement a plugin that lets the user mark a
|
||||
calendar to be available for off-line use, if it is not already set to be so
|
||||
and vice versa
|
||||
|
||||
|
||||
@ -4,8 +4,8 @@ INCLUDES = \
|
||||
|
||||
@EVO_PLUGIN_RULE@
|
||||
|
||||
plugin_DATA = org-gnome-select-one-source.eplug
|
||||
plugin_LTLIBRARIES = liborg-gnome-select-one-source.la
|
||||
plugin_DATA = org-gnome-mark-calendar-offline.eplug
|
||||
plugin_LTLIBRARIES = liborg-gnome-mark-calendar-offline.la
|
||||
|
||||
liborg_gnome_select_one_source_la_SOURCES = select-one-source.c
|
||||
liborg_gnome_select_one_source_la_LDFLAGS = -module -avoid-version
|
||||
liborg_gnome_mark_calendar_offline_la_SOURCES = mark-calendar-offline.c
|
||||
liborg_gnome_mark_calendar_offline_la_LDFLAGS = -module -avoid-version
|
||||
|
||||
54
plugins/select-one-source/mark-calendar-offline.c
Normal file
54
plugins/select-one-source/mark-calendar-offline.c
Normal file
@ -0,0 +1,54 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
|
||||
*
|
||||
* Authors: Harish Krishnaswamy (kharish@novell.com)
|
||||
*
|
||||
* Copyright 2004 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
*
|
||||
* 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 Street #330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
*/
|
||||
|
||||
/* This is prototype code only, this may, or may not, use undocumented
|
||||
* unstable or private internal function calls.
|
||||
* This code has been derived from the source of the sample eplugin
|
||||
* select_one_source.
|
||||
*/
|
||||
|
||||
#include <glib.h>
|
||||
#include <glib/gi18n.h>
|
||||
#include <libedataserver/e-source.h>
|
||||
#include <libedataserverui/e-source-selector.h>
|
||||
#include <calendar/gui/e-cal-popup.h>
|
||||
|
||||
void org_gnome_mark_calendar_offline (EPlugin *ep, ECalPopupTargetSource *target);
|
||||
void org_gnome_mark_calendar_no_offline (EPlugin *ep, ECalPopupTargetSource *target);
|
||||
|
||||
void
|
||||
org_gnome_mark_calendar_no_offline (EPlugin *ep, ECalPopupTargetSource *target)
|
||||
{
|
||||
ESource *source;
|
||||
|
||||
source = e_source_selector_peek_primary_selection (target->selector);
|
||||
e_source_set_property (source, "offline", "0");
|
||||
}
|
||||
|
||||
void
|
||||
org_gnome_mark_calendar_offline (EPlugin *ep, ECalPopupTargetSource *target)
|
||||
{
|
||||
ESource *source;
|
||||
|
||||
source = e_source_selector_peek_primary_selection (target->selector);
|
||||
e_source_set_property (source, "offline", "1");
|
||||
}
|
||||
|
||||
@ -0,0 +1,16 @@
|
||||
<e-plugin-list>
|
||||
<e-plugin id="org.gnome.evolution.mark_calendar_offline" type="shlib" name="Mark calendar offline" description="Marks the selected calendar for offline viewing"
|
||||
location="@PLUGINDIR@/liborg-gnome-mark-calendar-offline.so">
|
||||
|
||||
<hook class="org.gnome.evolution.calendar.popup:1.0">
|
||||
<menu id="org.gnome.evolution.calendar.source.popup" target="source">
|
||||
<item type="item" path="28.mark_calendar_offline" label="_Mark Calendar for offline use" icon="stock_disconnect" visible="offline" activate="org_gnome_mark_calendar_offline"/>
|
||||
</menu>
|
||||
</hook>
|
||||
<hook class="org.gnome.evolution.calendar.popup:1.0">
|
||||
<menu id="org.gnome.evolution.calendar.source.popup" target="source">
|
||||
<item type="item" path="28.mark_calendar_no_offline" label="_Do not make this available offline" icon="stock_connect" visible="no-offline" activate="org_gnome_mark_calendar_no_offline"/>
|
||||
</menu>
|
||||
</hook>
|
||||
</e-plugin>
|
||||
</e-plugin-list>
|
||||
Reference in New Issue
Block a user