SVN_SILENT made messages (.desktop file)
[kdepim.git] / calendarviews / viewerapp / mainwindow.h
blobc1f45a83c49b63537f417310a08e11c19bc05bb1
1 /*
2 Copyright (C) 2010 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.net
3 Author: Kevin Krammer, krake@kdab.com
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License along
16 with this program; if not, write to the Free Software Foundation, Inc.,
17 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20 #ifndef MAINWINDOW_H
21 #define MAINWINDOW_H
23 #include "ui_mainwindow.h"
25 #include <Akonadi/Calendar/ETMCalendar>
26 #include <QMainWindow>
28 namespace Akonadi {
29 class IncidenceChanger;
32 namespace boost {
33 template <typename T> class shared_ptr;
36 namespace EventViews
38 class Prefs;
39 typedef boost::shared_ptr<Prefs> PrefsPtr;
42 class QAction;
43 class Settings;
45 class MainWindow : public QMainWindow
47 Q_OBJECT
48 public:
49 explicit MainWindow( const QStringList &viewNames );
51 ~MainWindow();
53 private:
54 const QStringList mViewNames;
56 Ui_MainWindow mUi;
58 Akonadi::ETMCalendar::Ptr mCalendar;
59 Akonadi::IncidenceChanger *mIncidenceChanger;
60 Settings *mSettings;
61 EventViews::PrefsPtr *mViewPreferences;
63 private:
64 void addView( const QString &viewName );
66 private Q_SLOTS:
67 void delayedInit();
68 void addViewTriggered( QAction *action );
71 #endif