• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdepimlibs-4.14.10 API Reference
  • KDE Home
  • Contact Us
 

KCalCore Library

  • kcalcore
journal.h
Go to the documentation of this file.
1/*
2 This file is part of the kcalcore library.
3
4 Copyright (c) 2001-2003 Cornelius Schumacher <schumacher@kde.org>
5 Copyright (C) 2003-2004 Reinhold Kainhofer <reinhold@kainhofer.com>
6
7 This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Library General Public
9 License as published by the Free Software Foundation; either
10 version 2 of the License, or (at your option) any later version.
11
12 This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 Library General Public License for more details.
16
17 You should have received a copy of the GNU Library General Public License
18 along with this library; see the file COPYING.LIB. If not, write to
19 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20 Boston, MA 02110-1301, USA.
21*/
30#ifndef KCALCORE_JOURNAL_H
31#define KCALCORE_JOURNAL_H
32
33#include "kcalcore_export.h"
34#include "incidence.h"
35#include "supertrait.h"
36
37namespace KCalCore {
38
43class KCALCORE_EXPORT Journal : public Incidence
44{
45public:
49 typedef QSharedPointer<Journal> Ptr;
50
54 typedef QVector<Ptr> List;
55
59 Journal();
60
64 ~Journal();
65
70 IncidenceType type() const;
71
76 QByteArray typeStr() const;
77
82 Journal *clone() const;
83
88 KDateTime dateTime(DateTimeRole role) const;
89
94 void setDateTime(const KDateTime &dateTime, DateTimeRole role);
95
100 QLatin1String mimeType() const;
101
106 QLatin1String iconName(const KDateTime &recurrenceId = KDateTime()) const;
107
111 static QLatin1String journalMimeType();
112
113protected:
119 bool equals(const IncidenceBase &journal) const;
120
125 virtual IncidenceBase &assign(const IncidenceBase &other);
126
131 virtual void virtual_hook(int id, void *data);
132
133private:
138 bool accept(Visitor &v, IncidenceBase::Ptr incidence);
139
146 Journal &operator=(const Journal &other);
147
148 // For polymorfic serialization
149 void serialize(QDataStream &out);
150 void deserialize(QDataStream &in);
151
152 //@cond PRIVATE
153 class Private;
154 Private *const d;
155 //@endcond
156};
157
158
159} // namespace KCalCore
160
161//@cond PRIVATE
162Q_DECLARE_TYPEINFO(KCalCore::Journal::Ptr, Q_MOVABLE_TYPE);
163Q_DECLARE_METATYPE(KCalCore::Journal::Ptr)
164//@endcond
165
166//@cond PRIVATE
167namespace KPIMUtils {
168// super class trait specialization
169template <> struct SuperClass<KCalCore::Journal> : public SuperClassTrait<KCalCore::Incidence> {};
170}
171//@endcond
172
173#endif
KCalCore::IncidenceBase
An abstract class that provides a common base for all calendar incidence classes.
Definition: incidencebase.h:110
KCalCore::IncidenceBase::IncidenceType
IncidenceType
The different types of incidences, per RFC2445.
Definition: incidencebase.h:121
KCalCore::IncidenceBase::Ptr
QSharedPointer< IncidenceBase > Ptr
A shared pointer to an IncidenceBase.
Definition: incidencebase.h:115
KCalCore::IncidenceBase::DateTimeRole
DateTimeRole
The different types of incidence date/times roles.
Definition: incidencebase.h:133
KCalCore::Incidence
Provides the abstract base class common to non-FreeBusy (Events, To-dos, Journals) calendar component...
Definition: incidence.h:70
KCalCore::Journal
Provides a Journal in the sense of RFC2445.
Definition: journal.h:44
KCalCore::Journal::Ptr
QSharedPointer< Journal > Ptr
A shared pointer to a Journal object.
Definition: journal.h:49
KCalCore::Journal::List
QVector< Ptr > List
List of journals.
Definition: journal.h:54
KCalCore::Visitor
This class provides the interface for a visitor of calendar components.
Definition: visitor.h:44
incidence.h
This file is part of the API for handling calendar data and defines the Incidence class.
KCalCore
TODO: KDE5:
Definition: alarm.h:47
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Thu Jul 21 2022 00:00:00 by doxygen 1.9.5 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KCalCore Library

Skip menu "KCalCore Library"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdepimlibs-4.14.10 API Reference

Skip menu "kdepimlibs-4.14.10 API Reference"
  • akonadi
  •   contact
  •   kmime
  •   socialutils
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kioslave
  •   imap4
  •   mbox
  •   nntp
  • kldap
  • kmbox
  • kmime
  • kontactinterface
  • kpimidentities
  • kpimtextedit
  • kpimutils
  • kresources
  • ktnef
  • kxmlrpcclient
  • mailtransport
  • microblog
  • qgpgme
  • syndication
  •   atom
  •   rdf
  •   rss2
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