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

kmail

  • sources
  • kde-4.14
  • kdepim
  • kmail
  • editor
kmcomposewin.h
Go to the documentation of this file.
1 /*
2  * This file is part of KMail.
3  * Copyright (c) 2009 Constantin Berzan <exit3219@gmail.com>
4  *
5  * Based on KMail code by:
6  * Copyright (c) 1997 Markus Wuebben <markus.wuebben@kde.org>
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation; either version 2 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License along
19  * with this program; if not, write to the Free Software Foundation, Inc.,
20  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21  */
22 
23 #ifndef __KMComposeWin
24 #define __KMComposeWin
25 
26 // KMail includes
27 #include "editor/composer.h"
28 #include "messagecomposer/recipient/recipientseditor.h"
29 
30 // Qt includes
31 #include <QFont>
32 #include <QList>
33 
34 // KDE includes
35 #include <kglobalsettings.h>
36 
37 // LIBKDEPIM includes
38 #include <messagecomposer/composer/kmeditor.h>
39 
40 #include "messagecomposer/sender/messagesender.h"
41 
42 // KDEPIMLIBS includes
43 #include <kmime/kmime_message.h>
44 #include <kmime/kmime_headers.h>
45 
46 // Other includes
47 #include "kleo/enum.h"
48 #include <composer/composerviewbase.h>
49 
50 class QByteArray;
51 class QCheckBox;
52 class QGridLayout;
53 class QLabel;
54 class QPushButton;
55 class QSplitter;
56 
57 class CodecAction;
58 class KActionMenuChangeCase;
59 class KMComposeWin;
60 class KMComposerEditor;
61 class KSelectAction;
62 class KAction;
63 class KJob;
64 class KToggleAction;
65 class KUrl;
66 class KRecentFilesAction;
67 class SnippetWidget;
68 class AttachmentMissingWarning;
69 class ExternalEditorWarning;
70 class KActionMenu;
71 class CryptoStateIndicatorWidget;
72 class StatusBarLabelToggledState;
73 class PotentialPhishingEmailWarning;
74 class KMComposerGlobalAction;
75 namespace boost {
76 template <typename T> class shared_ptr;
77 }
78 namespace MailTransport {
79 class Transport;
80 }
81 namespace KPIMIdentities {
82 class Identity;
83 }
84 
85 namespace KPIMTextEdit {
86 class SelectSpecialChar;
87 }
88 
89 namespace KIO {
90 class Job;
91 }
92 
93 namespace MessageComposer {
94 class ComposerLineEdit;
95 class Composer;
96 }
97 
98 namespace MailCommon {
99 class FolderRequester;
100 }
101 
102 namespace PimCommon {
103 class CustomToolsWidget;
104 class LineEditWithAutoCorrection;
105 class SplitterCollapser;
106 }
107 class KMStorageService;
108 //-----------------------------------------------------------------------------
109 class KMComposeWin : public KMail::Composer
110 {
111  Q_OBJECT
112  Q_CLASSINFO("D-Bus Interface", "org.kde.kmail.mailcomposer")
113 
114  friend class ::KMComposerEditor;
115 
116 private: // mailserviceimpl, kmkernel, kmcommands, callback, kmmainwidget
117  explicit KMComposeWin(const KMime::Message::Ptr &msg, bool lastSignState, bool lastEncryptState, TemplateContext context = NoTemplate,
118  uint identity = 0, const QString & textSelection = QString(),
119  const QString & customTemplate = QString() );
120  ~KMComposeWin();
121 
122 public:
123  static Composer *create( const KMime::Message::Ptr &msg, bool lastSignState, bool lastEncryptState, TemplateContext context = NoTemplate,
124  uint identity = 0, const QString & textSelection = QString(),
125  const QString & customTemplate = QString() );
126 
127  QString dbusObjectPath() const;
128  QString smartQuote( const QString & msg );
129 
134  // TODO clean-up dbus stuff; make the adaptor a friend; etc.
135 public slots:
136 
137  Q_SCRIPTABLE void send( int how );
138 
139  Q_SCRIPTABLE void addAttachmentsAndSend( const KUrl::List & urls,
140  const QString & comment,
141  int how );
142 
143  Q_SCRIPTABLE void addAttachment( const KUrl & url,
144  const QString & comment );
145 
146  Q_SCRIPTABLE void addAttachment( const QString & name,
147  KMime::Headers::contentEncoding cte,
148  const QString& charset,
149  const QByteArray & data,
150  const QByteArray & mimeType );
151 
156 signals:
157  void identityChanged( const KPIMIdentities::Identity &identity );
158 
159 
160 public: // kmkernel, kmcommands, callback
165  void setMessage( const KMime::Message::Ptr &newMsg, bool lastSignState = false, bool lastEncryptState = false,
166  bool mayAutoSign=true, bool allowDecryption=false, bool isModified=false );
167 
168  void setCurrentTransport( int transportId );
169 
175  void setFcc( const QString &idString );
176 
182  void disableWordWrap();
183 
191  void forceDisableHtml();
192 
196  bool isComposing() const;
197 
201  void setTextSelection( const QString& selection );
202 
206  void setCustomTemplate( const QString& customTemplate );
207 
209  void setSigningAndEncryptionDisabled( bool v );
214  void setFolder(const Akonadi::Collection &aFolder );
218  void setFocusToEditor();
219 
224  void setFocusToSubject();
225 
226  bool insertFromMimeData( const QMimeData *source, bool forceAttachment = false );
227 
228  void setCurrentReplyTo(const QString&);
229  void setCollectionForNewMessage( const Akonadi::Collection& folder);
230 
231  void addExtraCustomHeaders( const QMap<QByteArray, QString> &header);
232 
233  KToggleAction *translateAction() const { return mTranslateAction; }
234  KActionMenuChangeCase *changeCaseMenu() const { return mChangeCaseMenu; }
235  KToggleAction *generateShortenUrlAction() const { return mGenerateShortenUrl; }
236 
237  virtual void setCurrentIdentity(uint identity);
238 
239 private:
243  void writeConfig( void );
244 
245 
249  bool isModified() const;
250  bool isComposerModified() const;
251  void changeModifiedState( bool modified );
252 
253 
254 public slots: // kmkernel, callback
255  void slotSendNow();
259  void slotWordWrapToggled( bool );
260 
261  void slotToggleMarkup();
262  void slotTextModeChanged( KRichTextEdit::Mode );
263  void htmlToolBarVisibilityChanged( bool visible );
264  void slotSpellcheckDoneClearStatus();
265  void autoSaveMessage(bool force = false);
269  void setModified( bool modified );
270  void slotFetchJob(KJob*);
271 
272 private slots:
277  void disableHtml( MessageComposer::ComposerViewBase::Confirmation confirmation );
282  void enableHtml();
283 
287  void slotPrint();
288  void slotPrintPreview();
289 
290  void slotInsertRecentFile( const KUrl & );
291  void slotRecentListFileClear();
292 
293  void slotSendNowVia(MailTransport::Transport *transport );
294  void slotSendLater();
295  void slotSendLaterVia(MailTransport::Transport *transport );
296 
300  void slotSaveDraft();
301  void slotSaveTemplate();
302  void slotNewComposer();
303  void slotClose();
304  void slotHelp();
305  void slotPasteAsAttachment();
306  void slotFolderRemoved( const Akonadi::Collection& );
307  void slotLanguageChanged( const QString &language );
308  void slotFccFolderChanged(const Akonadi::Collection&);
309  void slotEditorTextChanged();
310  void slotOverwriteModeChanged();
314  void slotUpdateFont();
315 
319  void slotAddressBook();
320 
324  void slotInsertFile();
325 
329  void slotSpellcheckConfig();
330 
335  void slotSelectCryptoModule( bool init = false );
336 
340  void slotEditToolbars();
341  void slotUpdateToolbars();
342  void slotEditKeys();
343 
347  void readConfig( bool reload = false );
348 
352  void slotUpdWinTitle();
353 
358  void slotEncryptToggled( bool );
359 
363  void slotSignToggled( bool );
364 
365  void slotUpdateView();
366 
373  void slotIdentityChanged( uint uoid, bool initalChange = false );
374 
375  void slotCursorPositionChanged();
376 
377  void slotSpellCheckingStatus( const QString & status );
378 
379  void slotDelayedApplyTemplate( KJob* );
380 
381  void recipientEditorSizeHintChanged();
382  void setMaximumHeaderSize();
383  void slotDoDelayedSend( KJob* );
384 
385  void slotCompletionModeChanged( KGlobalSettings::Completion );
386  void slotConfigChanged();
387 
388  void slotPrintComposeResult( KJob *job );
389 
390  void slotSendFailed(const QString& msg , MessageComposer::ComposerViewBase::FailedType type);
391  void slotSendSuccessful(const QString &messageId);
392 
396  void slotAutoSpellCheckingToggled( bool );
397 
398 
399  virtual void setAutoSaveFileName( const QString& fileName );
400  void slotSpellCheckingLanguage(const QString& language);
401  void forceAutoSaveMessage();
402  void insertSpecialCharacter();
403  void charSelected(const QChar& c);
404  void slotSaveAsFile();
405  void slotCreateAddressBookContact();
406 
407  void slotAttachMissingFile();
408  void slotExplicitClosedMissingAttachment();
409  void slotVerifyMissingAttachmentTimeout();
410  void slotCheckSendNow();
411 
412  void slotUpperCase();
413  void slotLowerCase();
414  void slotSentenceCase();
415 
416  void slotExternalEditorStarted();
417  void slotExternalEditorClosed();
418 
419  void slotInsertShortUrl(const QString &url);
420 
421  void slotShareLinkDone(const QString &fileName);
422 
423  void slotTransportChanged();
424  void slotFollowUpMail(bool toggled);
425  void slotSendNowByShortcut();
426  void slotSnippetWidgetVisibilityChanged(bool b);
427  void slotOverwriteModeWasChanged(bool state);
428  void slotExpandGroupResult(KJob *job);
429  void slotCheckSendNowStep2();
430  void slotPotentialPhishingEmailsFound(const QStringList &list);
431  void slotInsertTextFile(KJob *job);
432 public: // kmcommand
433  // FIXME we need to remove these, but they're pure virtual in Composer.
434  void addAttach( KMime::Content *msgPart );
435 
436  const KPIMIdentities::Identity &identity() const;
437 
439  void disableForgottenAttachmentsCheck();
440 
450  void ignoreStickyFields();
451 
452  uint currentIdentity() const;
453 private:
457  void updateSignatureAndEncryptionStateIndicators();
458 
459  void addFollowupReminder(const QString &messageId);
460  void confirmBeforeSend();
461  void sendNow(bool shortcutUsed);
462 
463  void updateSignature(uint uoid, uint uOldId);
464  Kleo::CryptoMessageFormat cryptoMessageFormat() const;
465  void printComposeResult( KJob *job, bool preview );
466  void printComposer(bool preview);
472  void rethinkFields( bool fromslot=false );
473 
477  QWidget *connectFocusMoving( QWidget *prev, QWidget *next );
478 
482  void rethinkHeaderLine( int aValue, int aMask, int &aRow,
483  QLabel *aLbl, QWidget *aEdt,
484  QPushButton *aBtn = 0 );
485 
486  void rethinkHeaderLine( int value, int mask, int &row,
487  QLabel *lbl, QWidget *cbx, QCheckBox *chk ); // krazy:exclude=qclasses
488 
489 
493  void applyTemplate(uint uoid , uint uOldId);
494 
498  void setQuotePrefix( uint uoid );
499 
504  bool checkRecipientNumber() const;
505 
509  void setupActions();
510  void setupStatusBar(QWidget *w);
511  void setupEditor();
512 
516  QString subject() const;
517  QString from() const;
518  QString replyTo() const;
519 
523  virtual bool queryClose();
524 
529  void setEncryption( bool encrypt, bool setByUser = false );
530 
535  void setSigning( bool sign, bool setByUser = false );
536 
537  MessageComposer::ComposerViewBase::MissingAttachment userForgotAttachment();
538 #if 0
539 
546  static void decryptOrStripOffCleartextSignature( QByteArray & );
547 #endif
548 
551  void doSend( MessageComposer::MessageSender::SendMethod method=MessageComposer::MessageSender::SendDefault,
552  MessageComposer::MessageSender::SaveIn saveIn = MessageComposer::MessageSender::SaveInNone );
553 
554  void doDelayedSend( MessageComposer::MessageSender::SendMethod method, MessageComposer::MessageSender::SaveIn saveIn );
555 
556  void changeCryptoAction();
557  void applyComposerSetting( MessageComposer::ComposerViewBase* mComposerBase );
565  MessageComposer::Composer* createSimpleComposer();
566 
567  bool canSignEncryptAttachments() const;
568 
569  // helper method for rethinkFields
570  int calcColumnWidth( int which, long allShowing, int width ) const;
571 
572 
576  void initHeader( KMime::Message *message, uint identity=0 );
577 
578  inline bool encryptToSelf() const;
579 
580 private:
581  bool showErrorMessage(KJob *job);
582  int validateLineWrapWidth();
583  Akonadi::Collection mCollectionForNewMessage;
584  QMap<QByteArray, QString> mExtraHeaders;
585 
586 
587  QWidget *mMainWidget;
588  MessageComposer::ComposerLineEdit *mEdtFrom, *mEdtReplyTo;
589  PimCommon::LineEditWithAutoCorrection *mEdtSubject;
590  QLabel *mLblIdentity, *mLblTransport, *mLblFcc;
591  QLabel *mLblFrom, *mLblReplyTo;
592  QLabel *mLblSubject;
593  QLabel *mDictionaryLabel;
594  QCheckBox *mBtnIdentity, *mBtnDictionary, *mBtnTransport, *mBtnFcc;
595  bool mDone;
596 
597  KMime::Message::Ptr mMsg;
598  QGridLayout *mGrid;
599  QString mTextSelection;
600  QString mCustomTemplate;
601  bool mLastSignActionState, mLastEncryptActionState, mSigningAndEncryptionExplicitlyDisabled;
602  bool mLastIdentityHasSigningKey, mLastIdentityHasEncryptionKey;
603  Akonadi::Collection mFolder;
604  long mShowHeaders;
605  bool mForceDisableHtml; // Completely disable any HTML. Useful when sending invitations in the
606  // mail body.
607  int mNumHeaders;
608  QFont mBodyFont, mFixedFont;
609  uint mId;
610  TemplateContext mContext;
611 
612  KRecentFilesAction *mRecentAction;
613 
614  KToggleAction *mSignAction, *mEncryptAction, *mRequestMDNAction;
615  KToggleAction *mUrgentAction, *mAllFieldsAction, *mFromAction;
616  KToggleAction *mReplyToAction;
617  KToggleAction *mSubjectAction;
618  KToggleAction *mIdentityAction, *mTransportAction, *mFccAction;
619  KToggleAction *mWordWrapAction, *mFixedFontAction, *mAutoSpellCheckingAction;
620  KToggleAction *mDictionaryAction, *mSnippetAction, *mTranslateAction;
621  KAction *mAppendSignature;
622  KAction *mPrependSignature;
623  KAction *mInsertSignatureAtCursorPosition;
624  KToggleAction *mGenerateShortenUrl;
625 
626  KToggleAction *markupAction;
627 
628  CodecAction *mCodecAction;
629  KSelectAction *mCryptoModuleAction;
630 
631  KAction *mFindText, *mFindNextText, *mReplaceText, *mSelectAll;
632 
633  QSplitter *mHeadersToEditorSplitter;
634  QWidget* mHeadersArea;
635  QSplitter *mSplitter;
636  QSplitter *mSnippetSplitter;
637  QByteArray mOriginalPreferredCharset;
638 
639  MessageComposer::Composer *mDummyComposer;
640  // used for auto saving, printing, etc. Not for sending, which happens in ComposerViewBase
641  QList< MessageComposer::Composer* > mMiscComposers;
642 
643  int mLabelWidth;
644 
645  KActionMenuChangeCase *mChangeCaseMenu;
646 
647  QString mdbusObjectPath;
648  static int s_composerNumber;
649 
650  MessageComposer::ComposerViewBase* mComposerBase;
651 
652 
653  SnippetWidget *mSnippetWidget;
654  PimCommon::CustomToolsWidget *mCustomToolsWidget;
655  QPointer<KPIMTextEdit::SelectSpecialChar> mSelectSpecialChar;
656  AttachmentMissingWarning *mAttachmentMissing;
657  ExternalEditorWarning *mExternalEditorWarning;
658  QTimer *m_verifyMissingAttachment;
659  MailCommon::FolderRequester *mFccFolder;
660  bool mPreventFccOverwrite;
661  bool mCheckForForgottenAttachments;
662  bool mIgnoreStickyFields;
663  bool mWasModified;
664  CryptoStateIndicatorWidget *mCryptoStateIndicatorWidget;
665  KMStorageService *mStorageService;
666  bool mSendNowByShortcutUsed;
667  PimCommon::SplitterCollapser *mSnippetSplitterCollapser;
668  KToggleAction *mFollowUpToggleAction;
669  StatusBarLabelToggledState *mStatusBarLabelToggledOverrideMode;
670  StatusBarLabelToggledState *mStatusBarLabelSpellCheckingChangeMode;
671  PotentialPhishingEmailWarning *mPotentialPhishingEmailWarning;
672  KMComposerGlobalAction *mGlobalAction;
673 };
674 
675 #endif
KMComposeWin::setFolder
void setFolder(const Akonadi::Collection &aFolder)
If this folder is set, the original message is inserted back after canceling.
Definition: kmcomposewin.cpp:1805
QWidget
KMComposeWin::htmlToolBarVisibilityChanged
void htmlToolBarVisibilityChanged(bool visible)
Definition: kmcomposewin.cpp:2984
KMComposeWin::slotSpellcheckDoneClearStatus
void slotSpellcheckDoneClearStatus()
Definition: kmcomposewin.cpp:3009
KMComposeWin::setTextSelection
void setTextSelection(const QString &selection)
Set the text selection the message is a response to.
Definition: kmcomposewin.cpp:1789
CryptoStateIndicatorWidget
Definition: cryptostateindicatorwidget.h:24
ExternalEditorWarning
Definition: externaleditorwarning.h:23
KMail::Composer::NoTemplate
Definition: composer.h:46
KMComposeWin::disableWordWrap
void disableWordWrap()
Disables word wrap completely.
Definition: kmcomposewin.cpp:2452
QByteArray
KMComposeWin::slotWordWrapToggled
void slotWordWrapToggled(bool)
Switch wordWrap on/off.
Definition: kmcomposewin.cpp:2433
KMComposeWin::create
static Composer * create(const KMime::Message::Ptr &msg, bool lastSignState, bool lastEncryptState, TemplateContext context=NoTemplate, uint identity=0, const QString &textSelection=QString(), const QString &customTemplate=QString())
Definition: kmcomposewin.cpp:197
QChar
QFont
KMComposeWin::addAttachmentsAndSend
Q_SCRIPTABLE void addAttachmentsAndSend(const KUrl::List &urls, const QString &comment, int how)
Definition: kmcomposewin.cpp:562
QMap
Definition: kmmainwidget.h:66
KMComposeWin::generateShortenUrlAction
KToggleAction * generateShortenUrlAction() const
Definition: kmcomposewin.h:235
KMComposeWin::setCollectionForNewMessage
void setCollectionForNewMessage(const Akonadi::Collection &folder)
Definition: kmcomposewin.cpp:1079
QPointer< KPIMTextEdit::SelectSpecialChar >
KMComposeWin::identity
const KPIMIdentities::Identity & identity() const
Definition: kmcomposewin.cpp:1979
KMComposeWin::isComposing
bool isComposing() const
Returns true while the message composing is in progress.
Definition: kmcomposewin.cpp:2466
QGridLayout
KMComposeWin
Definition: kmcomposewin.h:109
KMComposeWin::addAttachment
Q_SCRIPTABLE void addAttachment(const KUrl &url, const QString &comment)
Definition: kmcomposewin.cpp:574
KMComposeWin::disableForgottenAttachmentsCheck
void disableForgottenAttachmentsCheck()
Don't check for forgotten attachments for a mail, eg.
Definition: kmcomposewin.cpp:2471
KMComposerGlobalAction
Definition: kmcomposerglobalaction.h:24
KMail::Composer
Definition: composer.h:39
QMimeData
KMComposeWin::identityChanged
void identityChanged(const KPIMIdentities::Identity &identity)
End of D-Bus callable stuff.
KMComposeWin::forceDisableHtml
void forceDisableHtml()
Disables HTML completely.
Definition: kmcomposewin.cpp:2458
boost::shared_ptr
Definition: kmcomposewin.h:76
KMComposeWin::setCurrentReplyTo
void setCurrentReplyTo(const QString &)
Definition: kmcomposewin.cpp:1550
StatusBarLabelToggledState
Definition: statusbarlabeltoggledstate.h:24
KMComposeWin::setCustomTemplate
void setCustomTemplate(const QString &customTemplate)
Set custom template to be used for the message.
Definition: kmcomposewin.cpp:1795
messageId
QString messageId() const
QTimer
KMComposeWin::smartQuote
QString smartQuote(const QString &msg)
Definition: kmcomposewin.cpp:2110
KMComposeWin::translateAction
KToggleAction * translateAction() const
Definition: kmcomposewin.h:233
QCheckBox
KActionMenuChangeCase
Definition: kactionmenuchangecase.h:24
KMComposeWin::setModified
void setModified(bool modified)
Set whether the message should be treated as modified or not.
Definition: kmcomposewin.cpp:1840
KMComposerEditor
Definition: kmcomposereditor.h:30
KMComposeWin::setCurrentIdentity
virtual void setCurrentIdentity(uint identity)
Definition: kmcomposewin.cpp:3340
QString
QList< MessageComposer::Composer * >
KMStorageService
Definition: kmstorageservice.h:27
CodecAction
Definition: codecaction.h:31
QStringList
KMComposeWin::slotFetchJob
void slotFetchJob(KJob *)
Definition: kmcomposewin.cpp:2236
KMComposeWin::setFcc
void setFcc(const QString &idString)
Use the given folder as sent-mail folder if the given folder exists.
Definition: kmcomposewin.cpp:1811
KMComposeWin::slotTextModeChanged
void slotTextModeChanged(KRichTextEdit::Mode)
Definition: kmcomposewin.cpp:2975
KMComposeWin::send
Q_SCRIPTABLE void send(int how)
Start of D-Bus callable stuff.
Definition: kmcomposewin.cpp:546
KMComposeWin::currentIdentity
uint currentIdentity() const
Definition: kmcomposewin.cpp:1557
KMComposeWin::setMessage
void setMessage(const KMime::Message::Ptr &newMsg, bool lastSignState=false, bool lastEncryptState=false, bool mayAutoSign=true, bool allowDecryption=false, bool isModified=false)
Set the message the composer shall work with.
Definition: kmcomposewin.cpp:1562
KMComposeWin::setFocusToSubject
void setFocusToSubject()
Sets the focus to the subject line edit.
Definition: kmcomposewin.cpp:3186
PotentialPhishingEmailWarning
Definition: potentialphishingemailwarning.h:26
QSplitter
KActionMenu
KMComposeWin::setCurrentTransport
void setCurrentTransport(int transportId)
Definition: kmcomposewin.cpp:1545
KMComposeWin::addAttach
void addAttach(KMime::Content *msgPart)
Add an attachment to the list.
Definition: kmcomposewin.cpp:1993
KMail::Composer::TemplateContext
TemplateContext
Definition: composer.h:46
KMComposeWin::setFocusToEditor
void setFocusToEditor()
Sets the focus to the edit-widget.
Definition: kmcomposewin.cpp:3179
KMComposeWin::addExtraCustomHeaders
void addExtraCustomHeaders(const QMap< QByteArray, QString > &header)
Definition: kmcomposewin.cpp:3335
KMComposeWin::slotToggleMarkup
void slotToggleMarkup()
Definition: kmcomposewin.cpp:2969
composer.h
KMComposeWin::slotSendNow
void slotSendNow()
Definition: kmcomposewin.cpp:2820
SnippetWidget
Definition: snippetwidget.h:31
QPushButton
AttachmentMissingWarning
Definition: attachmentmissingwarning.h:23
KMail::Composer::Composer
Composer(const char *name=0)
Definition: composer.h:43
KMComposeWin::autoSaveMessage
void autoSaveMessage(bool force=false)
Definition: kmcomposewin.cpp:1925
QLabel
KMComposeWin::ignoreStickyFields
void ignoreStickyFields()
Ignore the "sticky" setting of the transport combo box and prefer the X-KMail-Transport header field ...
Definition: kmcomposewin.cpp:2476
KMComposeWin::setSigningAndEncryptionDisabled
void setSigningAndEncryptionDisabled(bool v)
Disabled signing and encryption completely for this composer window.
Definition: kmcomposewin.cpp:1800
KJob
KMComposeWin::insertFromMimeData
bool insertFromMimeData(const QMimeData *source, bool forceAttachment=false)
Definition: kmcomposewin.cpp:2116
KMComposeWin::dbusObjectPath
QString dbusObjectPath() const
Definition: kmcomposewin.cpp:528
KMComposeWin::changeCaseMenu
KActionMenuChangeCase * changeCaseMenu() const
Definition: kmcomposewin.h:234
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:34:33 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kmail

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

kdepim API Reference

Skip menu "kdepim API Reference"
  • akonadi_next
  • akregator
  • blogilo
  • calendarsupport
  • console
  •   kabcclient
  •   konsolekalendar
  • kaddressbook
  • kalarm
  •   lib
  • kdgantt2
  • kjots
  • kleopatra
  • kmail
  • knode
  • knotes
  • kontact
  • korgac
  • korganizer
  • ktimetracker
  • libkdepim
  • libkleo
  • libkpgp
  • mailcommon
  • messagelist
  • messageviewer
  • pimprint

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal