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

KCal Library

  • sources
  • kde-4.12
  • kdepimlibs
  • kcal
todo.h
Go to the documentation of this file.
1 /*
2  This file is part of the kcal library.
3 
4  Copyright (c) 2001-2003 Cornelius Schumacher <schumacher@kde.org>
5  Copyright (C) 2009 Allen Winter <winter@kde.org>
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 */
31 #ifndef KCAL_TODO_H
32 #define KCAL_TODO_H
33 
34 #include "incidence.h"
35 #include <kpimutils/supertrait.h>
36 #include <QtCore/QByteArray>
37 
38 namespace KCal {
39 
44 class KCAL_DEPRECATED_EXPORT Todo : public Incidence
45 {
46  public:
50  typedef ListBase<Todo> List;
51 
55  typedef boost::shared_ptr<Todo> Ptr;
56 
60  typedef boost::shared_ptr<const Todo> ConstPtr;
61 
65  Todo();
66 
71  Todo( const Todo &other );
72 
76  ~Todo();
77 
82  QByteArray type() const;
83 
88  //KDE5: QString typeStr() const;
89 
94  Todo *clone();
95 
105  void setDtDue( const KDateTime &dtDue, bool first = false );
106 
115  KDateTime dtDue( bool first = false ) const;
116 
127  KCAL_DEPRECATED QString dtDueTimeStr(
128  bool shortfmt = true, const KDateTime::Spec &spec = KDateTime::Spec() ) const;
129 
140  KCAL_DEPRECATED QString dtDueDateStr(
141  bool shortfmt = true, const KDateTime::Spec &spec = KDateTime::Spec() ) const;
142 
153  KCAL_DEPRECATED QString dtDueStr(
154  bool shortfmt = true, const KDateTime::Spec &spec = KDateTime::Spec() ) const;
155 
159  bool hasDueDate() const;
160 
166  void setHasDueDate( bool hasDueDate );
167 
171  bool hasStartDate() const;
172 
178  void setHasStartDate( bool hasStartDate );
179 
184  virtual KDateTime dtStart() const;
185 
194  KDateTime dtStart( bool first ) const;
195 
201  void setDtStart( const KDateTime &dtStart );
202 
218  KCAL_DEPRECATED QString dtStartTimeStr(
219  bool shortfmt, bool first, const KDateTime::Spec &spec = KDateTime::Spec() ) const;
220 
225  virtual KCAL_DEPRECATED QString dtStartTimeStr(
226  bool shortfmt = true, const KDateTime::Spec &spec = KDateTime::Spec() ) const;
227 
243  KCAL_DEPRECATED QString dtStartDateStr(
244  bool shortfmt, bool first, const KDateTime::Spec &spec = KDateTime::Spec() ) const;
245 
250  virtual KCAL_DEPRECATED QString dtStartDateStr(
251  bool shortfmt = true, const KDateTime::Spec &spec = KDateTime::Spec() ) const;
252 
268  KCAL_DEPRECATED QString dtStartStr(
269  bool shortfmt, bool first, const KDateTime::Spec &spec = KDateTime::Spec() ) const;
270 
275  virtual KCAL_DEPRECATED QString dtStartStr(
276  bool shortfmt = true, const KDateTime::Spec &spec = KDateTime::Spec() ) const;
277 
283  bool isCompleted() const;
284 
293  void setCompleted( bool completed );
294 
299  int percentComplete() const;
300 
310  void setPercentComplete( int percent );
311 
315  KDateTime completed() const;
316 
323  QString completedStr( bool shortfmt = false ) const;
324 
330  void setCompleted( const KDateTime &completeDate );
331 
336  bool hasCompletedDate() const;
337 
351  bool isInProgress( bool first ) const;
352 
358  bool isOpenEnded() const;
359 
372  bool isNotStarted( bool first ) const;
373 
378  virtual void shiftTimes( const KDateTime::Spec &oldSpec,
379  const KDateTime::Spec &newSpec );
380 
386  void setDtRecurrence( const KDateTime &dt );
387 
391  KDateTime dtRecurrence() const;
392 
402  virtual bool recursOn( const QDate &date,
403  const KDateTime::Spec &timeSpec ) const;
404 
410  bool isOverdue() const;
411 
416  Todo &operator=( const Todo &other );
417 
422  bool operator==( const Todo &todo ) const;
423 
424  protected:
428  virtual KDateTime endDateRecurrenceBase() const;
429 
430  private:
435  bool accept( Visitor &v ) { return v.visit( this ); }
436 
437  //@cond PRIVATE
438  class Private;
439  Private *const d;
440  //@endcond
441 };
442 
443 }
444 
445 //@cond PRIVATE
446 // super class trait specialization
447 namespace KPIMUtils {
448  template <> struct SuperClass<KCal::Todo> : public SuperClassTrait<KCal::Incidence>{};
449 }
450 //@endcond
451 
452 #endif
KCal::Todo::List
ListBase< Todo > List
List of to-dos.
Definition: todo.h:50
KCal::Todo::ConstPtr
boost::shared_ptr< const Todo > ConstPtr
A shared pointer to a non-mutable Todo object.
Definition: todo.h:60
KCal::Todo
Provides a To-do in the sense of RFC2445.
Definition: todo.h:44
KCal::IncidenceBase::Visitor
This class provides the interface for a visitor of calendar components.
Definition: incidencebase.h:112
KCal::Incidence
Provides the abstract base class common to non-FreeBusy (Events, To-dos, Journals) calendar component...
Definition: incidence.h:68
KCal::ListBase
This class provides a template for lists of pointers.
Definition: listbase.h:44
KCal::Todo::Ptr
boost::shared_ptr< Todo > Ptr
A shared pointer to a Todo object.
Definition: todo.h:55
incidence.h
This file is part of the API for handling calendar data and defines the Incidence class...
KCal::IncidenceBase::Visitor::visit
virtual bool visit(Event *event)
Reimplement this function in your concrete subclass of IncidenceBase::Visitor to perform actions on a...
Definition: incidencebase.cpp:513
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:00:58 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KCal Library

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

kdepimlibs API Reference

Skip menu "kdepimlibs API Reference"
  • akonadi
  •   contact
  •   kmime
  •   socialutils
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kldap
  • kmbox
  • kmime
  • kpimidentities
  • kpimtextedit
  • kresources
  • ktnef
  • kxmlrpcclient
  • microblog

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