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

kontact

sdsummarywidget.h

Go to the documentation of this file.
00001 /*
00002   This file is part of Kontact.
00003 
00004   Copyright (c) 2003 Tobias Koenig <tokoe@kde.org>
00005   Copyright (c) 2004 Allen Winter <winter@kde.org>
00006 
00007   This program is free software; you can redistribute it and/or modify
00008   it under the terms of the GNU General Public License as published by
00009   the Free Software Foundation; either version 2 of the License, or
00010   (at your option) any later version.
00011 
00012   This program is distributed in the hope that it will be useful,
00013   but WITHOUT ANY WARRANTY; without even the implied warranty of
00014   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00015   GNU General Public License for more details.
00016 
00017   You should have received a copy of the GNU General Public License
00018   along with this program; if not, write to the Free Software
00019   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00020 
00021   As a special exception, permission is given to link this program
00022   with any edition of Qt, and distribute the resulting executable,
00023   without including the source code for Qt in the source distribution.
00024 */
00025 
00026 #ifndef SDSUMMARYWIDGET_H
00027 #define SDSUMMARYWIDGET_H
00028 
00029 #include <kontactinterfaces/summary.h>
00030 #include <libkholidays/kholidays.h>
00031 
00032 namespace Kontact {
00033   class Plugin;
00034 }
00035 namespace KCal {
00036   class Event;
00037   class CalendarResources;
00038   class ResourceCalendar;
00039 }
00040 class QEvent;
00041 class QGridLayout;
00042 class QLabel;
00043 class QWidget;
00044 
00045 class SDSummaryWidget : public Kontact::Summary
00046 {
00047   Q_OBJECT
00048 
00049   public:
00050     SDSummaryWidget( Kontact::Plugin *plugin, QWidget *parent );
00051 
00052     QStringList configModules() const;
00053     void configUpdated();
00054     void updateSummary( bool force = false )
00055     {
00056       Q_UNUSED( force );
00057       updateView();
00058     }
00059 
00060   protected:
00061     virtual bool eventFilter( QObject *obj, QEvent *e );
00062 
00063   private slots:
00064     void updateView();
00065     void popupMenu( const QString &uid );
00066     void mailContact( const QString &uid );
00067     void viewContact( const QString &uid );
00068 
00069   private:
00070     int span( KCal::Event *event );
00071     int dayof( KCal::Event *event, const QDate &date );
00072     bool initHolidays();
00073     void dateDiff( const QDate &date, int &days, int &years );
00074     KCal::ResourceCalendar *usingBirthdayResource();
00075     bool check( KCal::ResourceCalendar *cal, const QDate &date, const QString &summary );
00076     QGridLayout *mLayout;
00077     QList<QLabel*> mLabels;
00078     Kontact::Plugin *mPlugin;
00079     KCal::CalendarResources *mCalendar;
00080     int mDaysAhead;
00081     bool mShowBirthdaysFromKAB;
00082     bool mShowBirthdaysFromCal;
00083     bool mShowAnniversariesFromKAB;
00084     bool mShowAnniversariesFromCal;
00085     bool mShowHolidays;
00086     bool mShowSpecialsFromCal;
00087 
00088     LibKHolidays::KHolidays *mHolidays;
00089 };
00090 
00091 #endif

kontact

Skip menu "kontact"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members

kdepim

Skip menu "kdepim"
  • akonadi
  •   clients
  •   kabc
  •   kcal
  •   kcm
  • akregator
  • console
  •   kabcclient
  •   konsolekalendar
  • kaddressbook
  • kalarm
  •   lib
  • kdgantt
  • kdgantt1
  • kjots
  • kleopatra
  • kmail
  • kmobiletools
  • knode
  • knotes
  • kontact
  • kontactinterfaces
  • korganizer
  •   korgac
  • kpilot
  • ktimetracker
  • libkdepim
  • libkholidays
  • libkleo
  • libkpgp
  • maildir
Generated for kdepim by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal