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

korganizer

  • sources
  • kde-4.12
  • kdepim
  • korganizer
  • printing
calprintdefaultplugins.h
Go to the documentation of this file.
1 /*
2  This file is part of KOrganizer.
3 
4  Copyright (c) 1998 Preston Brown <pbrown@kde.org>
5  Copyright (C) 2003 Reinhold Kainhofer <reinhold@kainhofer.com>
6  Copyright (C) 2008 Ron Goodheart <rong.dev@gmail.com>
7  Copyright (c) 2012 Allen Winter <winter@kde.org>
8 
9  This program is free software; you can redistribute it and/or modify
10  it under the terms of the GNU General Public License as published by
11  the Free Software Foundation; either version 2 of the License, or
12  (at your option) any later version.
13 
14  This program is distributed in the hope that it will be useful,
15  but WITHOUT ANY WARRANTY; without even the implied warranty of
16  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17  GNU General Public License for more details.
18 
19  You should have received a copy of the GNU General Public License along
20  with this program; if not, write to the Free Software Foundation, Inc.,
21  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
22 
23  As a special exception, permission is given to link this program
24  with any edition of Qt, and distribute the resulting executable,
25  without including the source code for Qt in the source distribution.
26 */
27 #ifndef CALPRINTDEFAULTPLUGINS_H
28 #define CALPRINTDEFAULTPLUGINS_H
29 
30 #include "calprintpluginbase.h"
31 
32 #include "ui_calprintincidenceconfig_base.h"
33 #include "ui_calprintdayconfig_base.h"
34 #include "ui_calprintweekconfig_base.h"
35 #include "ui_calprintmonthconfig_base.h"
36 #include "ui_calprinttodoconfig_base.h"
37 
38 #include <KLocale>
39 
40 using namespace KCalCore;
41 using namespace KOrg;
42 
43 class CalPrintIncidence : public CalPrintPluginBase
44 {
45  public:
46  CalPrintIncidence();
47  virtual ~CalPrintIncidence();
48  virtual QString groupName()
49  {
50  return QString::fromLatin1("Print incidence");
51  }
52  virtual QString description()
53  {
54  return i18n( "Print &incidence" );
55  }
56  virtual QString info() const
57  {
58  return i18n( "Prints an incidence on one page" );
59  }
60  virtual int sortID()
61  {
62  return CalPrinterBase::Incidence;
63  }
64 
65  // Enable the Print Incidence option only if there are selected incidences.
66  virtual bool enabled()
67  {
68  if ( mSelectedIncidences.count() > 0 ) {
69  return true;
70  } else {
71  return false;
72  }
73  }
74  virtual QWidget *createConfigWidget( QWidget * );
75  virtual QPrinter::Orientation defaultOrientation()
76  {
77  return QPrinter::Portrait;
78  }
79 
80  public:
81  void print( QPainter &p, int width, int height );
82  virtual void readSettingsWidget();
83  virtual void setSettingsWidget();
84  virtual void loadConfig();
85  virtual void saveConfig();
86 
87  protected:
88  int printCaptionAndText( QPainter &p, const QRect &box, const QString &caption,
89  const QString &text, QFont captionFont, QFont textFont );
90 
91  bool mShowOptions;
92  bool mShowSubitemsNotes;
93  bool mShowAttendees;
94  bool mShowAttachments;
95  bool mShowNoteLines;
96 };
97 
98 class CalPrintDay : public CalPrintPluginBase
99 {
100  public:
101  CalPrintDay();
102  virtual ~CalPrintDay();
103  virtual QString groupName()
104  {
105  return QString::fromLatin1( "Print day" );
106  }
107  virtual QString description()
108  {
109  return i18n( "Print da&y" );
110  }
111  virtual QString info() const
112  {
113  return i18n( "Prints all events of a single day on one page" );
114  }
115  virtual int sortID()
116  {
117  return CalPrinterBase::Day;
118  }
119  virtual bool enabled()
120  {
121  return true;
122  }
123  virtual QWidget *createConfigWidget( QWidget * );
124 
125  public:
126  void print( QPainter &p, int width, int height );
127  virtual void readSettingsWidget();
128  virtual void setSettingsWidget();
129  virtual void loadConfig();
130  virtual void saveConfig();
131  virtual void setDateRange( const QDate &from, const QDate &to );
132 
133  protected:
134  enum eDayPrintType {
135  Filofax=0,
136  Timetable,
137  SingleTimetable
138  } mDayPrintType;
139  QTime mStartTime, mEndTime;
140  bool mIncludeDescription;
141  bool mSingleLineLimit;
142  bool mIncludeTodos;
143  bool mIncludeAllEvents;
144  bool mExcludeTime;
145 };
146 
147 class CalPrintWeek : public CalPrintPluginBase
148 {
149  public:
150  CalPrintWeek();
151  virtual ~CalPrintWeek();
152 
153  virtual QString groupName()
154  {
155  return QString::fromLatin1( "Print week" );
156  }
157  virtual QString description()
158  {
159  return i18n( "Print &week" );
160  }
161  virtual QString info() const
162  {
163  return i18n( "Prints all events of one week on one page" );
164  }
165  virtual int sortID()
166  {
167  return CalPrinterBase::Week;
168  }
169  virtual bool enabled()
170  {
171  return true;
172  }
173  virtual QWidget *createConfigWidget( QWidget * );
174 
178  virtual QPrinter::Orientation defaultOrientation();
179 
180  public:
181  void print( QPainter &p, int width, int height );
182  virtual void readSettingsWidget();
183  virtual void setSettingsWidget();
184  virtual void loadConfig();
185  virtual void saveConfig();
186  virtual void setDateRange( const QDate &from, const QDate &to );
187 
188  protected:
189  enum eWeekPrintType {
190  Filofax=0,
191  Timetable,
192  SplitWeek
193  } mWeekPrintType;
194  QTime mStartTime, mEndTime;
195  bool mSingleLineLimit;
196  bool mIncludeTodos;
197  bool mIncludeDescription;
198  bool mExcludeTime;
199 };
200 
201 class CalPrintMonth : public CalPrintPluginBase
202 {
203  public:
204  CalPrintMonth();
205  virtual ~CalPrintMonth();
206  virtual QString groupName()
207  {
208  return QString::fromLatin1("Print month");
209  }
210  virtual QString description()
211  {
212  return i18n( "Print mont&h" );
213  }
214  virtual QString info() const
215  {
216  return i18n( "Prints all events of one month on one page" );
217  }
218  virtual int sortID()
219  {
220  return CalPrinterBase::Month;
221  }
222  virtual bool enabled()
223  {
224  return true;
225  }
226  virtual QWidget *createConfigWidget( QWidget * );
227  virtual QPrinter::Orientation defaultOrientation()
228  {
229  return QPrinter::Landscape;
230  }
231 
232  public:
233  void print( QPainter &p, int width, int height );
234  virtual void readSettingsWidget();
235  virtual void setSettingsWidget();
236  virtual void loadConfig();
237  virtual void saveConfig();
238  virtual void setDateRange( const QDate &from, const QDate &to );
239 
240  protected:
241  bool mWeekNumbers;
242  bool mRecurDaily;
243  bool mRecurWeekly;
244  bool mIncludeTodos;
245  bool mSingleLineLimit;
246  bool mIncludeDescription;
247 };
248 
249 class CalPrintTodos : public CalPrintPluginBase
250 {
251  public:
252  CalPrintTodos();
253  virtual ~CalPrintTodos();
254 
255  virtual QString groupName()
256  {
257  return QString::fromLatin1( "Print to-dos" );
258  }
259  virtual QString description()
260  {
261  return i18n( "Print to-&dos" );
262  }
263  virtual QString info() const
264  {
265  return i18n( "Prints all to-dos in a (tree-like) list" );
266  }
267  virtual int sortID()
268  {
269  return CalPrinterBase::Todolist;
270  }
271  virtual bool enabled()
272  {
273  return true;
274  }
275  virtual QWidget *createConfigWidget( QWidget * );
276 
277  public:
278  void print( QPainter &p, int width, int height );
279  virtual void readSettingsWidget();
280  virtual void setSettingsWidget();
281  virtual void loadConfig();
282  virtual void saveConfig();
283 
284  protected:
285  QString mPageTitle;
286 
287  enum eTodoPrintType {
288  TodosAll = 0,
289  TodosUnfinished,
290  TodosDueRange
291  } mTodoPrintType;
292 
293  enum eTodoSortField {
294  TodoFieldSummary = 0,
295  TodoFieldStartDate,
296  TodoFieldDueDate,
297  TodoFieldPriority,
298  TodoFieldPercentComplete,
299  TodoFieldUnset
300  } mTodoSortField;
301 
302  enum eTodoSortDirection {
303  TodoDirectionAscending = 0,
304  TodoDirectionDescending,
305  TodoDirectionUnset
306  } mTodoSortDirection;
307 
308  bool mIncludeDescription;
309  bool mIncludePriority;
310  bool mIncludeDueDate;
311  bool mIncludePercentComplete;
312  bool mConnectSubTodos;
313  bool mStrikeOutCompleted;
314  bool mSortField;
315  bool mSortDirection;
316 };
317 
318 class CalPrintIncidenceConfig : public QWidget, public Ui::CalPrintIncidenceConfig_Base
319 {
320  public:
321  explicit CalPrintIncidenceConfig( QWidget *parent ) : QWidget( parent )
322  {
323  setupUi( this );
324  }
325 };
326 
327 class CalPrintDayConfig : public QWidget, public Ui::CalPrintDayConfig_Base
328 {
329  public:
330  explicit CalPrintDayConfig( QWidget *parent ) : QWidget( parent )
331  {
332  setupUi( this );
333  }
334 };
335 
336 class CalPrintWeekConfig : public QWidget, public Ui::CalPrintWeekConfig_Base
337 {
338  public:
339  explicit CalPrintWeekConfig( QWidget *parent ) : QWidget( parent )
340  {
341  setupUi( this );
342  }
343 };
344 
345 class CalPrintMonthConfig : public QWidget, public Ui::CalPrintMonthConfig_Base
346 {
347  public:
348  explicit CalPrintMonthConfig( QWidget *parent ) : QWidget( parent )
349  {
350  setupUi( this );
351  }
352 };
353 
354 class CalPrintTodoConfig : public QWidget, public Ui::CalPrintTodoConfig_Base
355 {
356  public:
357  explicit CalPrintTodoConfig( QWidget *parent ) : QWidget( parent )
358  {
359  setupUi( this );
360  }
361 };
362 
363 #endif
CalPrintDay
Definition: calprintdefaultplugins.h:98
CalPrintWeek::mStartTime
QTime mStartTime
Definition: calprintdefaultplugins.h:194
CalPrintIncidence::groupName
virtual QString groupName()
Returns KConfig group name where store settings.
Definition: calprintdefaultplugins.h:48
CalPrintWeek::eWeekPrintType
eWeekPrintType
Definition: calprintdefaultplugins.h:189
CalPrintIncidence::description
virtual QString description()
Returns short description of print format.
Definition: calprintdefaultplugins.h:52
CalPrintDay::enabled
virtual bool enabled()
Returns true if the plugin should be enabled; false otherwise.
Definition: calprintdefaultplugins.h:119
CalPrintWeek::sortID
virtual int sortID()
Returns the sort ID of the plugin.
Definition: calprintdefaultplugins.h:165
CalPrintMonth::mIncludeDescription
bool mIncludeDescription
Definition: calprintdefaultplugins.h:246
CalPrintMonth::groupName
virtual QString groupName()
Returns KConfig group name where store settings.
Definition: calprintdefaultplugins.h:206
CalPrintWeekConfig::CalPrintWeekConfig
CalPrintWeekConfig(QWidget *parent)
Definition: calprintdefaultplugins.h:339
CalPrintTodos::enabled
virtual bool enabled()
Returns true if the plugin should be enabled; false otherwise.
Definition: calprintdefaultplugins.h:271
CalPrintIncidenceConfig
Definition: calprintdefaultplugins.h:318
CalPrintTodos::eTodoSortField
eTodoSortField
Definition: calprintdefaultplugins.h:293
QWidget
calprintpluginbase.h
CalPrintWeek::Timetable
Definition: calprintdefaultplugins.h:191
CalPrintMonth::defaultOrientation
virtual QPrinter::Orientation defaultOrientation()
Orientation of printout.
Definition: calprintdefaultplugins.h:227
CalPrintIncidence::defaultOrientation
virtual QPrinter::Orientation defaultOrientation()
Orientation of printout.
Definition: calprintdefaultplugins.h:75
CalPrintTodos::mIncludeDueDate
bool mIncludeDueDate
Definition: calprintdefaultplugins.h:310
CalPrintWeek::mExcludeTime
bool mExcludeTime
Definition: calprintdefaultplugins.h:198
CalPrintTodos::TodoFieldPercentComplete
Definition: calprintdefaultplugins.h:298
CalPrintTodos::eTodoPrintType
eTodoPrintType
Definition: calprintdefaultplugins.h:287
CalPrintMonthConfig::CalPrintMonthConfig
CalPrintMonthConfig(QWidget *parent)
Definition: calprintdefaultplugins.h:348
CalPrintTodos::mIncludeDescription
bool mIncludeDescription
Definition: calprintdefaultplugins.h:308
CalPrintDay::groupName
virtual QString groupName()
Returns KConfig group name where store settings.
Definition: calprintdefaultplugins.h:103
CalPrintDay::info
virtual QString info() const
Returns long description of print format.
Definition: calprintdefaultplugins.h:111
CalPrintWeek::description
virtual QString description()
Returns short description of print format.
Definition: calprintdefaultplugins.h:157
CalPrintMonth::description
virtual QString description()
Returns short description of print format.
Definition: calprintdefaultplugins.h:210
CalPrintMonth::mIncludeTodos
bool mIncludeTodos
Definition: calprintdefaultplugins.h:244
CalPrintTodos::TodoDirectionDescending
Definition: calprintdefaultplugins.h:304
CalPrintTodos::eTodoSortDirection
eTodoSortDirection
Definition: calprintdefaultplugins.h:302
CalPrintTodos::mIncludePriority
bool mIncludePriority
Definition: calprintdefaultplugins.h:309
CalPrintTodos::mSortField
bool mSortField
Definition: calprintdefaultplugins.h:314
CalPrintIncidence::mShowAttachments
bool mShowAttachments
Definition: calprintdefaultplugins.h:94
CalPrintDay::Timetable
Definition: calprintdefaultplugins.h:136
CalPrintTodoConfig
Definition: calprintdefaultplugins.h:354
CalPrintTodos::TodoFieldDueDate
Definition: calprintdefaultplugins.h:296
CalPrintMonth::mWeekNumbers
bool mWeekNumbers
Definition: calprintdefaultplugins.h:241
CalPrintWeekConfig
Definition: calprintdefaultplugins.h:336
CalPrintDay::mSingleLineLimit
bool mSingleLineLimit
Definition: calprintdefaultplugins.h:141
CalPrintTodos::info
virtual QString info() const
Returns long description of print format.
Definition: calprintdefaultplugins.h:263
CalPrintTodos::sortID
virtual int sortID()
Returns the sort ID of the plugin.
Definition: calprintdefaultplugins.h:267
CalPrintMonth::mRecurWeekly
bool mRecurWeekly
Definition: calprintdefaultplugins.h:243
CalPrintWeek::groupName
virtual QString groupName()
Returns KConfig group name where store settings.
Definition: calprintdefaultplugins.h:153
CalPrintDay::mIncludeTodos
bool mIncludeTodos
Definition: calprintdefaultplugins.h:142
CalPrintDay::mExcludeTime
bool mExcludeTime
Definition: calprintdefaultplugins.h:144
CalPrintDayConfig::CalPrintDayConfig
CalPrintDayConfig(QWidget *parent)
Definition: calprintdefaultplugins.h:330
CalPrintTodoConfig::CalPrintTodoConfig
CalPrintTodoConfig(QWidget *parent)
Definition: calprintdefaultplugins.h:357
CalPrintTodos::groupName
virtual QString groupName()
Returns KConfig group name where store settings.
Definition: calprintdefaultplugins.h:255
CalPrintMonth::enabled
virtual bool enabled()
Returns true if the plugin should be enabled; false otherwise.
Definition: calprintdefaultplugins.h:222
CalPrintWeek::info
virtual QString info() const
Returns long description of print format.
Definition: calprintdefaultplugins.h:161
CalPrintIncidence
Definition: calprintdefaultplugins.h:43
CalPrintTodos::mSortDirection
bool mSortDirection
Definition: calprintdefaultplugins.h:315
CalPrintIncidence::mShowOptions
bool mShowOptions
Definition: calprintdefaultplugins.h:91
CalPrintIncidence::enabled
virtual bool enabled()
Returns true if the plugin should be enabled; false otherwise.
Definition: calprintdefaultplugins.h:66
CalPrintPluginBase
Base class for KOrganizer printing classes.
Definition: calprintpluginbase.h:64
CalPrintMonth::mRecurDaily
bool mRecurDaily
Definition: calprintdefaultplugins.h:242
CalPrintMonth::sortID
virtual int sortID()
Returns the sort ID of the plugin.
Definition: calprintdefaultplugins.h:218
CalPrintIncidence::info
virtual QString info() const
Returns long description of print format.
Definition: calprintdefaultplugins.h:56
CalPrintDay::eDayPrintType
eDayPrintType
Definition: calprintdefaultplugins.h:134
CalPrintTodos::TodoFieldStartDate
Definition: calprintdefaultplugins.h:295
CalPrintIncidence::mShowNoteLines
bool mShowNoteLines
Definition: calprintdefaultplugins.h:95
CalPrintDay::sortID
virtual int sortID()
Returns the sort ID of the plugin.
Definition: calprintdefaultplugins.h:115
CalPrintIncidenceConfig::CalPrintIncidenceConfig
CalPrintIncidenceConfig(QWidget *parent)
Definition: calprintdefaultplugins.h:321
CalPrintTodos::mConnectSubTodos
bool mConnectSubTodos
Definition: calprintdefaultplugins.h:312
CalPrintDayConfig
Definition: calprintdefaultplugins.h:327
CalPrintWeek::mSingleLineLimit
bool mSingleLineLimit
Definition: calprintdefaultplugins.h:195
CalPrintDay::description
virtual QString description()
Returns short description of print format.
Definition: calprintdefaultplugins.h:107
CalPrintTodos
Definition: calprintdefaultplugins.h:249
CalPrintTodos::mPageTitle
QString mPageTitle
Definition: calprintdefaultplugins.h:285
CalPrintTodos::description
virtual QString description()
Returns short description of print format.
Definition: calprintdefaultplugins.h:259
CalPrintIncidence::sortID
virtual int sortID()
Returns the sort ID of the plugin.
Definition: calprintdefaultplugins.h:60
CalPrintMonth
Definition: calprintdefaultplugins.h:201
CalPrintWeek::enabled
virtual bool enabled()
Returns true if the plugin should be enabled; false otherwise.
Definition: calprintdefaultplugins.h:169
CalPrintDay::mIncludeDescription
bool mIncludeDescription
Definition: calprintdefaultplugins.h:140
CalPrintTodos::TodosUnfinished
Definition: calprintdefaultplugins.h:289
CalPrintWeek::mIncludeTodos
bool mIncludeTodos
Definition: calprintdefaultplugins.h:196
CalPrintIncidence::mShowSubitemsNotes
bool mShowSubitemsNotes
Definition: calprintdefaultplugins.h:92
CalPrintMonth::info
virtual QString info() const
Returns long description of print format.
Definition: calprintdefaultplugins.h:214
CalPrintTodos::mIncludePercentComplete
bool mIncludePercentComplete
Definition: calprintdefaultplugins.h:311
CalPrintTodos::mStrikeOutCompleted
bool mStrikeOutCompleted
Definition: calprintdefaultplugins.h:313
CalPrintDay::mIncludeAllEvents
bool mIncludeAllEvents
Definition: calprintdefaultplugins.h:143
CalPrintIncidence::mShowAttendees
bool mShowAttendees
Definition: calprintdefaultplugins.h:93
CalPrintMonthConfig
Definition: calprintdefaultplugins.h:345
CalPrintMonth::mSingleLineLimit
bool mSingleLineLimit
Definition: calprintdefaultplugins.h:245
CalPrintDay::mStartTime
QTime mStartTime
Definition: calprintdefaultplugins.h:139
CalPrintTodos::TodoFieldPriority
Definition: calprintdefaultplugins.h:297
CalPrintWeek
Definition: calprintdefaultplugins.h:147
CalPrintWeek::mIncludeDescription
bool mIncludeDescription
Definition: calprintdefaultplugins.h:197
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:56:19 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

korganizer

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

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

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