kpimidentities
signatureconfigurator.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef KPIMIDENTITIES_SIGNATURECONFIGURATOR_H
00022 #define KPIMIDENTITIES_SIGNATURECONFIGURATOR_H
00023
00024 #include "kpimidentities_export.h"
00025 #include "signature.h"
00026 #include <QtGui/QWidget>
00027
00028 using KPIMIdentities::Signature;
00029
00030 class QCheckBox;
00031 class KComboBox;
00032 class KUrlRequester;
00033 class KLineEdit;
00034 class KToolBar;
00035 class KRichTextWidget;
00036 class QString;
00037 class QPushButton;
00038 class QTextEdit;
00039 class QTextCharFormat;
00040
00041 namespace KPIMIdentities {
00042
00048 class KPIMIDENTITIES_EXPORT SignatureConfigurator : public QWidget
00049 {
00050 Q_OBJECT
00051 public:
00055 SignatureConfigurator( QWidget * parent=0 );
00056
00060 virtual ~SignatureConfigurator();
00061
00065 enum ViewMode { ShowCode, ShowHtml };
00066
00070 bool isSignatureEnabled() const;
00071
00075 void setSignatureEnabled( bool enable );
00076
00081 Signature::Type signatureType() const;
00082
00086 void setSignatureType( Signature::Type type );
00087
00092 QString inlineText() const;
00093
00097 void setInlineText( const QString & text );
00098
00103 QString fileURL() const;
00104
00109 void setFileURL( const QString & url );
00110
00115 QString commandURL() const;
00116
00120 void setCommandURL( const QString & url );
00121
00126 Signature signature() const;
00127
00131 void setSignature( const Signature & sig );
00132
00133 private:
00134 void toggleHtmlBtnState( ViewMode state );
00135
00136 void initHtmlState();
00137
00138
00139
00140 QString asCleanedHTML() const;
00141
00142 protected Q_SLOTS:
00143 void slotEnableEditButton( const QString & );
00144 void slotEdit();
00145 void slotSetHtml();
00146
00147 protected:
00148 QCheckBox * mEnableCheck;
00149 QCheckBox * mHtmlCheck;
00150 KComboBox * mSourceCombo;
00151 KUrlRequester * mFileRequester;
00152 QPushButton * mEditButton;
00153 KLineEdit * mCommandEdit;
00154 KToolBar * mEditToolBar;
00155 KToolBar * mFormatToolBar;
00156 KRichTextWidget * mTextEdit;
00157
00158
00159 private:
00160
00161 class Private;
00162 Private *const d;
00163
00164 };
00165
00166 }
00167
00168 #endif