• 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
  • interfaces
  • korganizer
printplugin.h
Go to the documentation of this file.
1 /*
2  This file is part of the KOrganizer interfaces.
3 
4  Copyright (C) 2003 Reinhold Kainhofer <reinhold@kainhofer.com>
5 
6  This library is free software; you can redistribute it and/or
7  modify it under the terms of the GNU Library General Public
8  License as published by the Free Software Foundation; either
9  version 2 of the License, or (at your option) any later version.
10 
11  This library 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 GNU
14  Library General Public License for more details.
15 
16  You should have received a copy of the GNU Library General Public License
17  along with this library; see the file COPYING.LIB. If not, write to
18  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19  Boston, MA 02110-1301, USA.
20 */
21 
22 #ifndef KORG_INTERFACES_PRINTPLUGIN_H
23 #define KORG_INTERFACES_PRINTPLUGIN_H
24 
25 #include <calendarsupport/plugin.h>
26 #include <Akonadi/Calendar/ETMCalendar>
27 
28 #include <KCalCore/Incidence>
29 
30 #include <QPrinter>
31 
32 namespace Akonadi {
33  class ETMCalendar;
34 }
35 namespace KOrg {
36 
37 class CoreHelper;
38 
42 class CalPrinterBase
43 {
44  public:
45  enum PrintType {
46  Incidence = 100,
47  Day=200,
48  Week=300,
49  Month=400,
50  Year=900,
51  Todolist=1000,
52  Journallist=2000,
53  WhatsNext=2100,
54  ItemList=2200
55  };
56 };
57 
62 class PrintPlugin : public CalendarSupport::Plugin
63 {
64  public:
65  PrintPlugin() : CalendarSupport::Plugin(), mConfigWidget(0), mCoreHelper(0), mPrinter(0),
66  mCalendar(0), mConfig(0) {}
67  virtual ~PrintPlugin() {}
68 
69  typedef QList<PrintPlugin*> List;
70  static int interfaceVersion() { return 2; }
71 
72  static QString serviceType()
73  { return QLatin1String( "KOrganizer/PrintPlugin" ); }
74 
75  virtual void setKOrgCoreHelper( KOrg::CoreHelper *helper )
76  { mCoreHelper = helper; }
77 
78  virtual void setConfig( KConfig *cfg ) { mConfig = cfg; }
79 
80  virtual void setCalendar( const Akonadi::ETMCalendar::Ptr &cal ) { mCalendar = cal; }
81 
82  virtual void setSelectedIncidences( KCalCore::Incidence::List inc )
83  { mSelectedIncidences = inc; }
84 
85  virtual KCalCore::Incidence::List selectedIncidences() const
86  { return mSelectedIncidences; }
87 
91  virtual QString groupName() = 0;
95  virtual QString description() = 0;
99  virtual QString info() const = 0;
100 
109  virtual int sortID() { return -1; }
110 
114  virtual bool enabled() { return false; }
115 
116  QWidget *configWidget( QWidget *w )
117  {
118  if ( !mConfigWidget ) {
119  mConfigWidget = createConfigWidget( w );
120  setSettingsWidget();
121  }
122  return mConfigWidget;
123  }
124  /* Create the config widget. setSettingsWidget will be automatically
125  called on it */
126  virtual QWidget *createConfigWidget( QWidget * ) = 0;
127 
131  virtual void doPrint( QPrinter *printer ) = 0;
132 
139  virtual QPrinter::Orientation defaultOrientation()
140  { return QPrinter::Portrait; }
141 
145  virtual void doLoadConfig() {}
149  virtual void doSaveConfig() {}
150 
151  public:
155  virtual void readSettingsWidget() {}
156 
160  virtual void setSettingsWidget() {}
161 
165  virtual void setDateRange( const QDate &from, const QDate &to )
166  {
167  mFromDate = from;
168  mToDate = to;
169  }
170 
171  protected:
172  QDate mFromDate;
173  QDate mToDate;
174 
175  protected:
176  QPointer<QWidget> mConfigWidget;
177  KOrg::CoreHelper *mCoreHelper;
180  QPrinter *mPrinter;
181  Akonadi::ETMCalendar::Ptr mCalendar;
182  KCalCore::Incidence::List mSelectedIncidences;
183  KConfig *mConfig;
184 };
185 
186 class PrintPluginFactory : public CalendarSupport::PluginFactory
187 {
188  public:
189  virtual PrintPlugin *createPluginFactory() = 0;
190 };
191 
192 }
193 
194 #endif
KOrg::PrintPlugin::doSaveConfig
virtual void doSaveConfig()
Save complete config.
Definition: printplugin.h:149
KOrg::PrintPlugin::mFromDate
QDate mFromDate
Definition: printplugin.h:172
KOrg::PrintPlugin::createConfigWidget
virtual QWidget * createConfigWidget(QWidget *)=0
KOrg::PrintPlugin::description
virtual QString description()=0
Returns short description of print format.
KOrg::PrintPlugin::mPrinter
QPrinter * mPrinter
The printer object.
Definition: printplugin.h:180
QWidget
KOrg::PrintPlugin::doPrint
virtual void doPrint(QPrinter *printer)=0
Actually do the printing.
KOrg::PrintPlugin::selectedIncidences
virtual KCalCore::Incidence::List selectedIncidences() const
Definition: printplugin.h:85
KOrg::CalPrinterBase::Incidence
Definition: printplugin.h:46
KOrg::PrintPlugin::List
QList< PrintPlugin * > List
Definition: printplugin.h:69
KOrg::PrintPlugin::mCoreHelper
KOrg::CoreHelper * mCoreHelper
Definition: printplugin.h:177
KOrg::PrintPlugin::setCalendar
virtual void setCalendar(const Akonadi::ETMCalendar::Ptr &cal)
Definition: printplugin.h:80
KOrg::PrintPlugin::setConfig
virtual void setConfig(KConfig *cfg)
Definition: printplugin.h:78
KOrg::PrintPlugin::~PrintPlugin
virtual ~PrintPlugin()
Definition: printplugin.h:67
KOrg::PrintPluginFactory::createPluginFactory
virtual PrintPlugin * createPluginFactory()=0
KOrg::CalPrinterBase
Base class of KOrganizer printer class.
Definition: printplugin.h:42
KOrg::PrintPlugin::setDateRange
virtual void setDateRange(const QDate &from, const QDate &to)
Set date range which should be printed.
Definition: printplugin.h:165
KOrg::PrintPlugin
Base class for KOrganizer printing classes.
Definition: printplugin.h:62
KOrg::PrintPlugin::configWidget
QWidget * configWidget(QWidget *w)
Definition: printplugin.h:116
KOrg::CalPrinterBase::WhatsNext
Definition: printplugin.h:53
KOrg::CalPrinterBase::Month
Definition: printplugin.h:49
KOrg::PrintPlugin::readSettingsWidget
virtual void readSettingsWidget()
Read settings from configuration widget and apply them to current object.
Definition: printplugin.h:155
KOrg::CalPrinterBase::ItemList
Definition: printplugin.h:54
KOrg::CalPrinterBase::Day
Definition: printplugin.h:47
KOrg::CalPrinterBase::Todolist
Definition: printplugin.h:51
KOrg::CalPrinterBase::Year
Definition: printplugin.h:50
KOrg::PrintPlugin::mToDate
QDate mToDate
Definition: printplugin.h:173
KOrg::CalPrinterBase::Week
Definition: printplugin.h:48
KOrg::PrintPlugin::sortID
virtual int sortID()
Returns the sort ID of the plugin.
Definition: printplugin.h:109
KOrg::CoreHelper
Definition: corehelper.h:30
KOrg::PrintPlugin::setSelectedIncidences
virtual void setSelectedIncidences(KCalCore::Incidence::List inc)
Definition: printplugin.h:82
KOrg::CalPrinterBase::Journallist
Definition: printplugin.h:52
KOrg::PrintPlugin::defaultOrientation
virtual QPrinter::Orientation defaultOrientation()
Orientation of printout.
Definition: printplugin.h:139
KOrg::PrintPluginFactory
Definition: printplugin.h:186
KOrg::PrintPlugin::mConfig
KConfig * mConfig
Definition: printplugin.h:183
KOrg::PrintPlugin::info
virtual QString info() const =0
Returns long description of print format.
KOrg::PrintPlugin::setKOrgCoreHelper
virtual void setKOrgCoreHelper(KOrg::CoreHelper *helper)
Definition: printplugin.h:75
KOrg::PrintPlugin::serviceType
static QString serviceType()
Definition: printplugin.h:72
KOrg::PrintPlugin::doLoadConfig
virtual void doLoadConfig()
Load complete config.
Definition: printplugin.h:145
KOrg::PrintPlugin::mConfigWidget
QPointer< QWidget > mConfigWidget
Definition: printplugin.h:176
KOrg::PrintPlugin::setSettingsWidget
virtual void setSettingsWidget()
Set configuration widget to reflect settings of current object.
Definition: printplugin.h:160
KOrg::PrintPlugin::mCalendar
Akonadi::ETMCalendar::Ptr mCalendar
Definition: printplugin.h:181
KOrg::PrintPlugin::enabled
virtual bool enabled()
Returns true if the plugin should be enabled; false otherwise.
Definition: printplugin.h:114
KOrg::PrintPlugin::groupName
virtual QString groupName()=0
Returns KConfig group name where store settings.
KOrg::PrintPlugin::PrintPlugin
PrintPlugin()
Definition: printplugin.h:65
KOrg::CalPrinterBase::PrintType
PrintType
Definition: printplugin.h:45
KOrg::PrintPlugin::mSelectedIncidences
KCalCore::Incidence::List mSelectedIncidences
Definition: printplugin.h:182
KOrg::PrintPlugin::interfaceVersion
static int interfaceVersion()
Definition: printplugin.h:70
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