korganizer Library API Documentation

koeditorgeneral.h

00001 /*
00002     This file is part of KOrganizer.
00003     Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org>
00004 
00005     This program is free software; you can redistribute it and/or modify
00006     it under the terms of the GNU General Public License as published by
00007     the Free Software Foundation; either version 2 of the License, or
00008     (at your option) any later version.
00009 
00010     This program is distributed in the hope that it will be useful,
00011     but WITHOUT ANY WARRANTY; without even the implied warranty of
00012     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00013     GNU General Public License for more details.
00014 
00015     You should have received a copy of the GNU General Public License
00016     along with this program; if not, write to the Free Software
00017     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
00018 
00019     As a special exception, permission is given to link this program
00020     with any edition of Qt, and distribute the resulting executable,
00021     without including the source code for Qt in the source distribution.
00022 */
00023 #ifndef KOEDITORGENERAL_H
00024 #define KOEDITORGENERAL_H
00025 
00026 #include <qlineedit.h>
00027 
00028 class QWidget;
00029 class QBoxLayout;
00030 class QLineEdit;
00031 class QLabel;
00032 class QCheckBox;
00033 class KRestrictedLine;
00034 class QPushButton;
00035 class QComboBox;
00036 class KTextEdit;
00037 class KSqueezedTextLabel;
00038 
00039 namespace KCal {
00040 class Incidence;
00041 }
00042 using namespace KCal;
00043 
00044 class FocusLineEdit : public QLineEdit
00045 {
00046     Q_OBJECT
00047   public:
00048     FocusLineEdit( QWidget *parent );
00049     
00050   signals:
00051     void focusReceivedSignal();
00052 
00053   protected:
00054     void focusInEvent ( QFocusEvent *e );
00055   
00056   private:
00057     bool mSkipFirst;
00058 };
00059 
00060 class KOEditorGeneral : public QObject
00061 {
00062     Q_OBJECT
00063   public:
00064     KOEditorGeneral (QObject* parent=0,const char* name=0);
00065     virtual ~KOEditorGeneral();
00066 
00067     void initHeader(QWidget *,QBoxLayout *);
00068     void initDescription(QWidget *,QBoxLayout *);
00069     void initSecrecy(QWidget *,QBoxLayout *);
00070     void initCategories(QWidget *,QBoxLayout *);    
00071     void initAlarm(QWidget *,QBoxLayout *);
00072 
00074     void setDefaults(bool allDay);
00076     void readIncidence(Incidence *);
00078     void writeIncidence(Incidence *);
00079 
00081     bool validateInput() { return true; }
00082 
00083     void enableAlarm( bool enable );
00084 
00085     void setSummary( const QString & );
00086     void setDescription( const QString & );
00087 
00088     QObject *typeAheadReceiver() const;
00089 
00090   public slots:
00091     void setCategories(const QString &);
00092 
00093   protected slots:
00094     void enableAlarmEdit( bool enable );
00095     void disableAlarmEdit( bool disable );
00096     void alarmDisable( bool disable );
00097     void pickAlarmSound();
00098     void pickAlarmProgram();
00099 
00100   signals:
00101     void openCategoryDialog();
00102     void focusReceivedSignal();
00103     
00104   protected:
00105     QLineEdit               *mSummaryEdit;
00106     QLineEdit               *mLocationEdit;
00107     QLabel                  *mAlarmBell;
00108     QCheckBox               *mAlarmButton;
00109     KRestrictedLine         *mAlarmTimeEdit;
00110     QPushButton             *mAlarmSoundButton;
00111     QPushButton             *mAlarmProgramButton;
00112     QComboBox               *mAlarmIncrCombo;
00113     KTextEdit               *mDescriptionEdit;
00114     QLabel                  *mOwnerLabel;
00115     QComboBox               *mSecrecyCombo;
00116     QPushButton             *mCategoriesButton;
00117     KSqueezedTextLabel      *mCategoriesLabel;
00118      
00119   private:
00120     QString mCategories;
00121     QString mAlarmSound;
00122     QString mAlarmProgram;
00123 };
00124 
00125 #endif
KDE Logo
This file is part of the documentation for korganizer Library Version 3.3.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Jul 25 11:20:59 2007 by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2003