• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdepim API Reference
  • KDE Home
  • Contact Us
 

calendarsupport

  • sources
  • kde-4.14
  • kdepim
  • calendarsupport
utils.h
Go to the documentation of this file.
1 /*
2  Copyright (c) 2009, 2010 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com
3  Author: Frank Osterfeld <osterfeld@kde.org>
4  Author: Andras Mantia <andras@kdab.com>
5 
6  This program is free software; you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation; either version 2 of the License, or
9  (at your option) any later version.
10 
11  This program is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License along
17  with this program; if not, write to the Free Software Foundation, Inc.,
18  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19 
20  As a special exception, permission is given to link this program
21  with any edition of Qt, and distribute the resulting executable,
22  without including the source code for Qt in the source distribution.
23 */
24 #ifndef CALENDARSUPPORT_UTILS_H
25 #define CALENDARSUPPORT_UTILS_H
26 
27 #include "calendarsupport_export.h"
28 
29 #include <Akonadi/Collection>
30 #include <Akonadi/Item>
31 #include <Akonadi/Calendar/ETMCalendar>
32 
33 #include <KCalCore/Event>
34 #include <KCalCore/Incidence>
35 #include <KCalCore/Journal>
36 #include <KCalCore/ScheduleMessage>
37 #include <KCalCore/Todo>
38 
39 #include <KDateTime>
40 
41 #include <QModelIndex>
42 
43 namespace KPIMIdentities {
44 class IdentityManager;
45 }
46 
47 namespace KCalCore {
48  class CalFilter;
49 }
50 
51 namespace Akonadi {
52  class ETMCalendar;
53 }
54 
55 class QAbstractItemModel;
56 class QDrag;
57 class QMimeData;
58 
59 typedef QList<QModelIndex> QModelIndexList;
60 
61 namespace CalendarSupport {
62 
63  class Calendar;
67  CALENDARSUPPORT_EXPORT KCalCore::Incidence::Ptr incidence( const Akonadi::Item &item );
68 
72  CALENDARSUPPORT_EXPORT KCalCore::Event::Ptr event( const Akonadi::Item &item );
73 
77  CALENDARSUPPORT_EXPORT KCalCore::Event::List eventsFromItems( const Akonadi::Item::List &items );
78 
82  CALENDARSUPPORT_EXPORT KCalCore::Incidence::List incidencesFromItems(
83  const Akonadi::Item::List &items );
84 
88  CALENDARSUPPORT_EXPORT KCalCore::Todo::Ptr todo( const Akonadi::Item &item );
89 
93  CALENDARSUPPORT_EXPORT KCalCore::Journal::Ptr journal( const Akonadi::Item &item );
94 
98  CALENDARSUPPORT_EXPORT bool hasIncidence( const Akonadi::Item &item );
99 
103  CALENDARSUPPORT_EXPORT bool hasEvent( const Akonadi::Item &item );
104 
108  CALENDARSUPPORT_EXPORT bool hasTodo( const Akonadi::Item &item );
109 
113  CALENDARSUPPORT_EXPORT bool hasJournal( const Akonadi::Item &item );
114 
118  CALENDARSUPPORT_EXPORT bool hasDeleteRights( const Akonadi::Item &item );
119 
123  CALENDARSUPPORT_EXPORT bool hasChangeRights( const Akonadi::Item &item );
124 
128  CALENDARSUPPORT_EXPORT bool isValidIncidenceItemUrl( const KUrl &url,
129  const QStringList &supportedMimeTypes );
130 
131  CALENDARSUPPORT_EXPORT bool isValidIncidenceItemUrl( const KUrl &url );
132 
140  CALENDARSUPPORT_EXPORT bool canDecode( const QMimeData *mimeData );
141 
142  CALENDARSUPPORT_EXPORT QList<KUrl> incidenceItemUrls( const QMimeData *mimeData );
143 
144  CALENDARSUPPORT_EXPORT QList<KUrl> todoItemUrls( const QMimeData *mimeData );
145 
146  CALENDARSUPPORT_EXPORT bool mimeDataHasIncidence( const QMimeData *mimeData );
147  CALENDARSUPPORT_EXPORT bool mimeDataHasTodo( const QMimeData *mimeData );
148 
149  CALENDARSUPPORT_EXPORT KCalCore::Todo::List todos( const QMimeData *mimeData,
150  const KDateTime::Spec &timeSpec );
151 
152  CALENDARSUPPORT_EXPORT KCalCore::Incidence::List incidences( const QMimeData *mimeData,
153  const KDateTime::Spec &timeSpec );
154 
158  CALENDARSUPPORT_EXPORT bool isValidTodoItemUrl( const KUrl &url );
159 
163  CALENDARSUPPORT_EXPORT QMimeData *createMimeData( const Akonadi::Item &item,
164  const KDateTime::Spec &timeSpec );
165 
169  CALENDARSUPPORT_EXPORT QMimeData *createMimeData( const Akonadi::Item::List &items,
170  const KDateTime::Spec &timeSpec );
171 
172 #ifndef QT_NO_DRAGANDDROP
173 
176  CALENDARSUPPORT_EXPORT QDrag *createDrag( const Akonadi::Item &item,
177  const KDateTime::Spec &timeSpec, QWidget *parent );
178 
182  CALENDARSUPPORT_EXPORT QDrag *createDrag( const Akonadi::Item::List &items,
183  const KDateTime::Spec &timeSpec, QWidget *parent );
184 #endif
185 
194  CALENDARSUPPORT_EXPORT Akonadi::Item::List applyCalFilter( const Akonadi::Item::List &items,
195  const KCalCore::CalFilter *filter );
196 
206  CALENDARSUPPORT_EXPORT Akonadi::Collection selectCollection(
207  QWidget *parent, int &dialogCode,
208  const QStringList &mimeTypes,
209  const Akonadi::Collection &defaultCollection = Akonadi::Collection() );
210 
211  CALENDARSUPPORT_EXPORT Akonadi::Item itemFromIndex( const QModelIndex &index );
212 
213  CALENDARSUPPORT_EXPORT Akonadi::Item::List itemsFromModel(
214  const QAbstractItemModel *model,
215  const QModelIndex &parentIndex = QModelIndex(),
216  int start = 0,
217  int end = -1 );
218 
219  CALENDARSUPPORT_EXPORT Akonadi::Collection::List collectionsFromModel(
220  const QAbstractItemModel *model,
221  const QModelIndex &parentIndex = QModelIndex(),
222  int start = 0,
223  int end = -1 );
224 
225  CALENDARSUPPORT_EXPORT Akonadi::Collection collectionFromIndex( const QModelIndex &index );
226 
227  CALENDARSUPPORT_EXPORT Akonadi::Collection::Id collectionIdFromIndex( const QModelIndex &index );
228 
229  CALENDARSUPPORT_EXPORT Akonadi::Collection::List collectionsFromIndexes(
230  const QModelIndexList &indexes );
231 
232  CALENDARSUPPORT_EXPORT QString displayName( Akonadi::ETMCalendar *calendar,
233  const Akonadi::Collection &coll );
234 
235  CALENDARSUPPORT_EXPORT QString subMimeTypeForIncidence(
236  const KCalCore::Incidence::Ptr &incidence );
237 
241  CALENDARSUPPORT_EXPORT QList<QDate> workDays( const QDate &start, const QDate &end );
242 
246  CALENDARSUPPORT_EXPORT QStringList holiday( const QDate &date );
247 
248  CALENDARSUPPORT_EXPORT void saveAttachments( const Akonadi::Item &item,
249  QWidget *parentWidget = 0 );
250 
251  CALENDARSUPPORT_EXPORT QStringList categories( const KCalCore::Incidence::List &incidences );
252 
253  CALENDARSUPPORT_EXPORT bool mergeCalendar(const QString &srcFilename, const KCalCore::Calendar::Ptr &destCalendar);
254 }
255 
256 #endif
QModelIndex
QWidget
CalendarSupport::createMimeData
CALENDARSUPPORT_EXPORT QMimeData * createMimeData(const Akonadi::Item &item, const KDateTime::Spec &timeSpec)
creates mime data object for dragging an akonadi item containing an incidence
Definition: utils.cpp:206
CalendarSupport::createDrag
CALENDARSUPPORT_EXPORT QDrag * createDrag(const Akonadi::Item &item, const KDateTime::Spec &timeSpec, QWidget *parent)
creates a drag object for dragging an akonadi item containing an incidence
Definition: utils.cpp:213
CalendarSupport::isValidIncidenceItemUrl
CALENDARSUPPORT_EXPORT bool isValidIncidenceItemUrl(const KUrl &url, const QStringList &supportedMimeTypes)
returns true if the URL represents an Akonadi item and has one of the given mimetypes.
Definition: utils.cpp:278
CalendarSupport::hasChangeRights
CALENDARSUPPORT_EXPORT bool hasChangeRights(const Akonadi::Item &item)
returns whether this item can be changed
CalendarSupport::incidence
CALENDARSUPPORT_EXPORT KCalCore::Incidence::Ptr incidence(const Akonadi::Item &item)
returns the incidence from an akonadi item, or a null pointer if the item has no such payload ...
Definition: utils.cpp:78
calendarsupport_export.h
QMimeData
CalendarSupport::hasIncidence
CALENDARSUPPORT_EXPORT bool hasIncidence(const Akonadi::Item &item)
returns whether an Akonadi item contains an incidence
Definition: utils.cpp:150
CalendarSupport::todo
CALENDARSUPPORT_EXPORT KCalCore::Todo::Ptr todo(const Akonadi::Item &item)
returns the todo from an akonadi item, or a null pointer if the item has no such payload ...
Definition: utils.cpp:124
QModelIndexList
QList< QModelIndex > QModelIndexList
Definition: utils.h:57
CalendarSupport::mimeDataHasIncidence
CALENDARSUPPORT_EXPORT bool mimeDataHasIncidence(const QMimeData *mimeData)
Definition: utils.cpp:354
CalendarSupport::selectCollection
CALENDARSUPPORT_EXPORT Akonadi::Collection selectCollection(QWidget *parent, int &dialogCode, const QStringList &mimeTypes, const Akonadi::Collection &defaultCollection=Akonadi::Collection())
Shows a modal dialog that allows to select a collection.
Definition: utils.cpp:395
CalendarSupport::hasDeleteRights
CALENDARSUPPORT_EXPORT bool hasDeleteRights(const Akonadi::Item &item)
returns whether this item can be deleted
QDrag
CalendarSupport::subMimeTypeForIncidence
CALENDARSUPPORT_EXPORT QString subMimeTypeForIncidence(const KCalCore::Incidence::Ptr &incidence)
Definition: utils.cpp:637
CalendarSupport::todoItemUrls
CALENDARSUPPORT_EXPORT QList< KUrl > todoItemUrls(const QMimeData *mimeData)
Definition: utils.cpp:337
QDate
QString
CalendarSupport::categories
CALENDARSUPPORT_EXPORT QStringList categories(const KCalCore::Incidence::List &incidences)
Definition: utils.cpp:752
QList
CalendarSupport::incidences
CALENDARSUPPORT_EXPORT KCalCore::Incidence::List incidences(const QMimeData *mimeData, const KDateTime::Spec &timeSpec)
Definition: utils.cpp:377
CalendarSupport::incidencesFromItems
CALENDARSUPPORT_EXPORT KCalCore::Incidence::List incidencesFromItems(const Akonadi::Item::List &items)
returns incidence pointers from an akonadi item.
Definition: utils.cpp:113
CalendarSupport::eventsFromItems
CALENDARSUPPORT_EXPORT KCalCore::Event::List eventsFromItems(const Akonadi::Item::List &items)
returns event pointers from an akonadi item, or a null pointer if the item has no such payload ...
Definition: utils.cpp:102
QStringList
CalendarSupport::itemsFromModel
CALENDARSUPPORT_EXPORT Akonadi::Item::List itemsFromModel(const QAbstractItemModel *model, const QModelIndex &parentIndex=QModelIndex(), int start=0, int end=-1)
Definition: utils.cpp:457
CalendarSupport::displayName
CALENDARSUPPORT_EXPORT QString displayName(Akonadi::ETMCalendar *calendar, const Akonadi::Collection &coll)
Definition: utils.cpp:500
CalendarSupport::hasEvent
CALENDARSUPPORT_EXPORT bool hasEvent(const Akonadi::Item &item)
returns whether an Akonadi item contains an event
Definition: utils.cpp:155
CalendarSupport::collectionsFromIndexes
CALENDARSUPPORT_EXPORT Akonadi::Collection::List collectionsFromIndexes(const QModelIndexList &indexes)
Definition: utils.cpp:491
CalendarSupport::collectionFromIndex
CALENDARSUPPORT_EXPORT Akonadi::Collection collectionFromIndex(const QModelIndex &index)
Definition: utils.cpp:481
CalendarSupport::hasTodo
CALENDARSUPPORT_EXPORT bool hasTodo(const Akonadi::Item &item)
returns whether an Akonadi item contains a todo
Definition: utils.cpp:160
CalendarSupport::saveAttachments
CALENDARSUPPORT_EXPORT void saveAttachments(const Akonadi::Item &item, QWidget *parentWidget=0)
Definition: utils.cpp:688
QAbstractItemModel
CalendarSupport::collectionIdFromIndex
CALENDARSUPPORT_EXPORT Akonadi::Collection::Id collectionIdFromIndex(const QModelIndex &index)
Definition: utils.cpp:486
CalendarSupport::mimeDataHasTodo
CALENDARSUPPORT_EXPORT bool mimeDataHasTodo(const QMimeData *mimeData)
Definition: utils.cpp:349
CalendarSupport::workDays
CALENDARSUPPORT_EXPORT QList< QDate > workDays(const QDate &start, const QDate &end)
Returns a list containing work days between start and .
Definition: utils.cpp:642
CALENDARSUPPORT_EXPORT
#define CALENDARSUPPORT_EXPORT
Definition: calendarsupport_export.h:36
CalendarSupport::journal
CALENDARSUPPORT_EXPORT KCalCore::Journal::Ptr journal(const Akonadi::Item &item)
returns the journal from an akonadi item, or a null pointer if the item has no such payload ...
Definition: utils.cpp:137
CalendarSupport::applyCalFilter
CALENDARSUPPORT_EXPORT Akonadi::Item::List applyCalFilter(const Akonadi::Item::List &items, const KCalCore::CalFilter *filter)
Applies a filter to a list of items containing incidences.
Definition: utils.cpp:268
CalendarSupport::event
CALENDARSUPPORT_EXPORT KCalCore::Event::Ptr event(const Akonadi::Item &item)
returns the event from an akonadi item, or a null pointer if the item has no such payload ...
Definition: utils.cpp:88
CalendarSupport::canDecode
CALENDARSUPPORT_EXPORT bool canDecode(const QMimeData *mimeData)
returns true if the mime data object contains any of the following:
Definition: utils.cpp:317
CalendarSupport::holiday
CALENDARSUPPORT_EXPORT QStringList holiday(const QDate &date)
Returns a list of holidays that occur at.
Definition: utils.cpp:675
CalendarSupport::itemFromIndex
CALENDARSUPPORT_EXPORT Akonadi::Item itemFromIndex(const QModelIndex &index)
Definition: utils.cpp:426
CalendarSupport::todos
CALENDARSUPPORT_EXPORT KCalCore::Todo::List todos(const QMimeData *mimeData, const KDateTime::Spec &timeSpec)
Definition: utils.cpp:360
CalendarSupport::hasJournal
CALENDARSUPPORT_EXPORT bool hasJournal(const Akonadi::Item &item)
returns whether an Akonadi item contains a journal
Definition: utils.cpp:165
CalendarSupport::collectionsFromModel
CALENDARSUPPORT_EXPORT Akonadi::Collection::List collectionsFromModel(const QAbstractItemModel *model, const QModelIndex &parentIndex=QModelIndex(), int start=0, int end=-1)
Definition: utils.cpp:434
CalendarSupport::incidenceItemUrls
CALENDARSUPPORT_EXPORT QList< KUrl > incidenceItemUrls(const QMimeData *mimeData)
Definition: utils.cpp:326
CalendarSupport::mergeCalendar
CALENDARSUPPORT_EXPORT bool mergeCalendar(const QString &srcFilename, const KCalCore::Calendar::Ptr &destCalendar)
Definition: utils.cpp:769
CalendarSupport::isValidTodoItemUrl
CALENDARSUPPORT_EXPORT bool isValidTodoItemUrl(const KUrl &url)
returns true if the URL represents an Akonadi item and has one of the given mimetypes.
Definition: utils.cpp:308
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:31:15 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

calendarsupport

Skip menu "calendarsupport"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdepim API Reference

Skip menu "kdepim API Reference"
  • akonadi_next
  • akregator
  • blogilo
  • calendarsupport
  • console
  •   kabcclient
  •   konsolekalendar
  • kaddressbook
  • kalarm
  •   lib
  • kdgantt2
  • kjots
  • kleopatra
  • kmail
  • knode
  • knotes
  • kontact
  • korgac
  • korganizer
  • ktimetracker
  • libkdepim
  • libkleo
  • libkpgp
  • mailcommon
  • messagelist
  • messageviewer
  • pimprint

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal