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

korganizer

koattendeeeditor.h

Go to the documentation of this file.
00001 /*
00002   Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org>
00003   Copyright (C) 2003-2004 Reinhold Kainhofer <reinhold@kainhofer.com>
00004   Copyright (c) 2007 Volker Krause <vkrause@kde.org>
00005 
00006   This program is free software; you can redistribute it and/or modify
00007   it under the terms of the GNU General Public License as published by
00008   the Free Software Foundation; either version 2 of the License, or
00009   (at your option) any later version.
00010 
00011   This program is distributed in the hope that it will be useful,
00012   but WITHOUT ANY WARRANTY; without even the implied warranty of
00013   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00014   GNU General Public License for more details.
00015 
00016   You should have received a copy of the GNU General Public License along
00017   with this program; if not, write to the Free Software Foundation, Inc.,
00018   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00019 */
00020 
00021 #ifndef KOATTENDEEEDITOR_H
00022 #define KOATTENDEEEDITOR_H
00023 
00024 #include <kcal/attendee.h>
00025 #include <QWidget>
00026 
00027 class KComboBox;
00028 class QBoxLayout;
00029 class QCheckBox;
00030 class QLabel;
00031 class QPushButton;
00032 class Q3HBox;
00033 class Q3ListViewItem;
00034 
00035 namespace KPIM {
00036   class AddresseeLineEdit;
00037 }
00038 
00039 namespace KABC {
00040   class Addressee;
00041 }
00042 
00043 namespace KCal {
00044   class Incidence;
00045 }
00046 
00050 class KOAttendeeEditor : public QWidget
00051 {
00052   Q_OBJECT
00053   public:
00054     KOAttendeeEditor( QWidget *parent );
00055 
00056     virtual void insertAttendee( KCal::Attendee *attendee, bool fetchFB = true ) = 0;
00057 
00058     virtual void readIncidence( KCal::Incidence *incidence );
00059     virtual void writeIncidence( KCal::Incidence *incidence );
00060 
00062     void cancelAttendeeIncidence( KCal::Incidence *incidence );
00063 
00064   public slots:
00065     void acceptForMe();
00066     void declineForMe();
00067 
00068   signals:
00069     void updateAttendeeSummary( int count );
00070 
00071   protected:
00072     void initOrganizerWidgets( QWidget *parent, QBoxLayout *layout );
00073     void initEditWidgets( QWidget *parent, QBoxLayout *layout );
00074 
00080     void insertAttendeeFromAddressee( const KABC::Addressee &a, const KCal::Attendee *at=0 );
00081 
00082     void fillOrganizerCombo();
00083     virtual Q3ListViewItem* hasExampleAttendee() const = 0;
00084     bool isExampleAttendee( const KCal::Attendee* ) const;
00085     virtual KCal::Attendee *currentAttendee() const = 0;
00086     virtual void updateCurrentItem() = 0;
00087 
00088     virtual void changeStatusForMe( KCal::Attendee::PartStat status ) = 0;
00089 
00090     virtual bool eventFilter( QObject *, QEvent * );
00091 
00092   protected slots:
00093     void addNewAttendee();
00094     void openAddressBook();
00095 
00096     void setEnableAttendeeInput( bool enabled );
00097     void updateAttendeeInput();
00098     void clearAttendeeInput();
00099     void fillAttendeeInput( KCal::Attendee *a );
00100     void updateAttendee();
00101 
00102   protected:
00103     KPIM::AddresseeLineEdit *mNameEdit;
00104     QString mUid;
00105     KComboBox *mRoleCombo;
00106     QCheckBox *mRsvpButton;
00107     KComboBox *mStatusCombo;
00108 
00109     Q3HBox *mOrganizerHBox;
00110     KComboBox *mOrganizerCombo; // either we organize it (combo shown)
00111     QLabel *mOrganizerLabel; // or someone else does (just a label is shown)
00112 
00113     QLabel *mDelegateLabel;
00114 
00115     QPushButton *mAddButton;
00116     QPushButton *mRemoveButton;
00117     QPushButton *mAddressBookButton;
00118 
00119     QList<KCal::Attendee*> mdelAttendees;
00120     QList<KCal::Attendee*> mnewAttendees;
00121 
00122   private:
00123     bool mDisableItemUpdate;
00124 };
00125 
00126 #endif

korganizer

Skip menu "korganizer"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • 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