• 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
kmreaderwin.h
Go to the documentation of this file.
1 /* -*- mode: C++; c-file-style: "gnu" -*-
2  This file is part of KMail, the KDE mail client.
3  Copyright (c) 1997 Markus Wuebben <markus.wuebben@kde.org>
4  Copyright (C) 2013-2015 Laurent Montel <montel@kde.org>
5 
6  This program is free software; you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation; either version 2 of the License, or
9  (at your option) any later version.
10 
11  This program is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License along
17  with this program; if not, write to the Free Software Foundation, Inc.,
18  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19 */
20 
21 #ifndef KMREADERWIN_H
22 #define KMREADERWIN_H
23 
24 #include <QWidget>
25 #include <kurl.h>
26 #include <messageviewer/viewer/viewer.h>
27 #include <messageviewer/interfaces/bodypart.h>
28 #include <Akonadi/Item>
29 #include <KABC/Addressee>
30 class KActionCollection;
31 class KAction;
32 class KToggleAction;
33 class KMenu;
34 namespace MessageViewer {
35 class HeaderStrategy;
36 class HeaderStyle;
37 class CSSHelper;
38 class AttachmentStrategy;
39 }
40 
41 
42 class KJob;
43 
49 class KMReaderWin: public QWidget {
50  Q_OBJECT
51 
52 public:
53  explicit KMReaderWin( QWidget *parent, QWidget *mainWindow,
54  KActionCollection *actionCollection, Qt::WindowFlags f = 0 );
55  virtual ~KMReaderWin();
56 
58  void readConfig();
59 
60  MessageViewer::HeaderStyle * headerStyle() const;
61 
64  void setHeaderStyleAndStrategy( MessageViewer::HeaderStyle * style,
65  MessageViewer::HeaderStrategy * strategy );
67  const MessageViewer::HeaderStrategy * headerStrategy() const;
68 
70  const MessageViewer::AttachmentStrategy * attachmentStrategy() const;
71 
72  void setAttachmentStrategy( const MessageViewer::AttachmentStrategy * strategy );
73 
77  QString overrideEncoding() const;
79  void setOverrideEncoding( const QString & encoding );
80  virtual void setPrinting(bool enable );
81 
82  void setMessage( const Akonadi::Item& item, MessageViewer::Viewer::UpdateMode updateMode = MessageViewer::Viewer::Delayed);
83 
84  void setMessage( KMime::Message::Ptr message );
85 
88  void setMsgPart( KMime::Content* aMsgPart );
89 
91  void clear(bool force = false);
92 
93  void update(bool force = false);
94 
96  QString copyText() const;
97 
99  bool htmlOverride() const;
100  void setHtmlOverride( bool override );
101  MessageViewer::Viewer::DisplayFormatMessage displayFormatMessageOverwrite() const;
102  void setDisplayFormatMessageOverwrite(MessageViewer::Viewer::DisplayFormatMessage format);
103 
104 
106  bool htmlLoadExtOverride() const;
107  void setHtmlLoadExtOverride( bool override );
108 
110  bool htmlMail() const;
111 
113  bool htmlLoadExternal();
114 
116  static QString newFeaturesMD5();
117 
119  void displaySplashPage( const QString &info );
120 
122  void displayAboutPage();
123 
125  void displayBusyPage();
127  void displayOfflinePage();
128 
129  void displayResourceOfflinePage();
130 
131  bool isFixedFont() const;
132  void setUseFixedFont( bool useFixedFont );
133  MessageViewer::Viewer *viewer() { return mViewer; }
134  KToggleAction *toggleFixFontAction() const;
135  KAction *mailToComposeAction() const { return mMailToComposeAction; }
136  KAction *mailToReplyAction() const { return mMailToReplyAction; }
137  KAction *mailToForwardAction() const { return mMailToForwardAction; }
138  KAction *addAddrBookAction() const { return mAddAddrBookAction; }
139  KAction *openAddrBookAction() const { return mOpenAddrBookAction; }
140  KAction *copyAction() const;
141  KAction *selectAllAction() const;
142  KAction *copyURLAction() const;
143  KAction *copyImageLocation() const;
144  KAction *urlOpenAction() const;
145  KAction *urlSaveAsAction() const { return mUrlSaveAsAction; }
146  KAction *addBookmarksAction() const { return mAddBookmarksAction;}
147  KAction *toggleMimePartTreeAction() const;
148  KAction *speakTextAction() const;
149  KAction* translateAction() const;
150  KAction* downloadImageToDiskAction() const;
151  KAction *viewSourceAction() const;
152  KAction *findInMessageAction() const;
153  KAction *saveAsAction() const;
154  KAction *saveMessageDisplayFormatAction() const;
155  KAction *resetMessageDisplayFormatAction() const;
156  KAction *blockImage() const;
157  KAction *openBlockableItems() const;
158  KAction *expandShortUrlAction() const;
159  KAction *createTodoAction() const;
160  KAction *createEventAction() const;
161 
162  KAction *editContactAction() const { return mEditContactAction; }
163 
164  KMenu *viewHtmlOption() const { return mViewHtmlOptions; }
165  KAction *shareImage() const { return mShareImage; }
166 
167  KAction *addToExistingContactAction() const { return mAddEmailToExistingContactAction; }
168 
169  Akonadi::Item message() const;
170 
171  QWidget* mainWindow() { return mMainWindow; }
172 
174  void setDecryptMessageOverwrite( bool overwrite = true );
175 
176  MessageViewer::CSSHelper* cssHelper() const;
177 
178  bool printSelectedText(bool preview);
179 
180  void setContactItem(const Akonadi::Item& contact, const KABC::Addressee &address);
181  void clearContactItem();
182  bool adblockEnabled() const;
183  bool isAShortUrl(const KUrl &url) const;
184 
185  bool mimePartTreeIsEmpty() const;
186 signals:
189  void replaceMsgByUnencryptedVersion();
190 
191  void showStatusBarMessage( const QString &message );
192 
193 public slots:
195  void clearCache();
196 
198  void slotFind();
200  void slotCopySelectedText();
202  void slotMailtoReply();
203  void slotMailtoCompose();
204  void slotMailtoForward();
205  void slotMailtoAddAddrBook();
206  void slotMailtoOpenAddrBook();
208  void slotUrlSave();
209  void slotAddBookmarks();
210  void slotUrlClicked( const Akonadi::Item &, const KUrl& );
211  void slotShowReader(KMime::Content* , bool html, const QString& );
212  void slotShowMessage( KMime::Message::Ptr message, const QString& encoding );
213  void slotDeleteMessage( const Akonadi::Item& );
214  void slotSaveImageOnDisk();
215 
216  void slotPrintComposeResult( KJob *job );
217  void slotEditContact();
218  void contactStored( const Akonadi::Item &item );
219  void slotContactEditorError(const QString &error);
220 
221  void slotContactHtmlOptions();
222  void slotShareImage();
223  void slotMailToAddToExistingContact();
224 
225 protected:
226  KUrl urlClicked() const;
227  KUrl imageUrlClicked() const;
228 
229 private:
230  void createActions();
231  void updateHtmlActions();
232 
233 private:
234  KABC::Addressee mSearchedAddress;
235  Akonadi::Item mSearchedContact;
236  QWidget *mMainWindow;
237  KActionCollection *mActionCollection;
238 
239  KAction *mMailToComposeAction;
240  KAction *mMailToReplyAction;
241  KAction *mMailToForwardAction;
242  KAction *mAddAddrBookAction;
243  KAction *mOpenAddrBookAction;
244  KAction *mUrlSaveAsAction;
245  KAction *mAddBookmarksAction;
246  KAction *mImageUrlSaveAsAction;
247  KAction *mEditContactAction;
248  KAction *mViewAsHtml;
249  KAction *mLoadExternalReference;
250  KAction *mShareImage;
251  KAction *mAddEmailToExistingContactAction;
252 
253  KMenu *mViewHtmlOptions;
254 
255  MessageViewer::Viewer *mViewer;
256 };
257 
258 
259 #endif
260 
KMReaderWin::htmlOverride
bool htmlOverride() const
Override default html mail setting.
QWidget
KMReaderWin::headerStrategy
const MessageViewer::HeaderStrategy * headerStrategy() const
Getthe message header strategy.
Definition: kmreaderwin.cpp:632
KMReaderWin::attachmentStrategy
const MessageViewer::AttachmentStrategy * attachmentStrategy() const
Get/set the message attachment strategy.
Definition: kmreaderwin.cpp:602
KMReaderWin::displayFormatMessageOverwrite
MessageViewer::Viewer::DisplayFormatMessage displayFormatMessageOverwrite() const
Definition: kmreaderwin.cpp:461
KMReaderWin::slotPrintComposeResult
void slotPrintComposeResult(KJob *job)
Definition: kmreaderwin.cpp:782
KMReaderWin::slotFind
void slotFind()
The user selected "Find" from the menu.
Definition: kmreaderwin.cpp:436
KMReaderWin::urlOpenAction
KAction * urlOpenAction() const
Definition: kmreaderwin.cpp:672
KMReaderWin
This class implements a "reader window", that is a window used for reading or viewing messages...
Definition: kmreaderwin.h:49
KMReaderWin::blockImage
KAction * blockImage() const
Definition: kmreaderwin.cpp:895
KMReaderWin::copyURLAction
KAction * copyURLAction() const
Definition: kmreaderwin.cpp:642
KMReaderWin::viewer
MessageViewer::Viewer * viewer()
Definition: kmreaderwin.h:133
KMReaderWin::urlClicked
KUrl urlClicked() const
Definition: kmreaderwin.cpp:713
KMReaderWin::slotMailtoCompose
void slotMailtoCompose()
Definition: kmreaderwin.cpp:497
QWidget::style
QStyle * style() const
KMReaderWin::slotEditContact
void slotEditContact()
Definition: kmreaderwin.cpp:859
KMReaderWin::slotShareImage
void slotShareImage()
Definition: kmreaderwin.cpp:911
KMReaderWin::viewHtmlOption
KMenu * viewHtmlOption() const
Definition: kmreaderwin.h:164
KMReaderWin::slotUrlSave
void slotUrlSave()
Save the page to a file.
Definition: kmreaderwin.cpp:563
KMReaderWin::isAShortUrl
bool isAShortUrl(const KUrl &url) const
Definition: kmreaderwin.cpp:917
KMReaderWin::mailToComposeAction
KAction * mailToComposeAction() const
Definition: kmreaderwin.h:135
KMReaderWin::saveAsAction
KAction * saveAsAction() const
Definition: kmreaderwin.cpp:662
KMReaderWin::createEventAction
KAction * createEventAction() const
Definition: kmreaderwin.cpp:932
KMReaderWin::contactStored
void contactStored(const Akonadi::Item &item)
Definition: kmreaderwin.cpp:879
KMReaderWin::setHeaderStyleAndStrategy
void setHeaderStyleAndStrategy(MessageViewer::HeaderStyle *style, MessageViewer::HeaderStrategy *strategy)
Set the header style and strategy.
Definition: kmreaderwin.cpp:283
KMReaderWin::~KMReaderWin
virtual ~KMReaderWin()
Definition: kmreaderwin.cpp:268
KMReaderWin::headerStyle
MessageViewer::HeaderStyle * headerStyle() const
Definition: kmreaderwin.cpp:637
KMReaderWin::mailToReplyAction
KAction * mailToReplyAction() const
Definition: kmreaderwin.h:136
KMReaderWin::slotShowReader
void slotShowReader(KMime::Content *, bool html, const QString &)
Definition: kmreaderwin.cpp:740
KMReaderWin::message
Akonadi::Item message() const
Definition: kmreaderwin.cpp:491
KMReaderWin::displayResourceOfflinePage
void displayResourceOfflinePage()
Definition: kmreaderwin.cpp:359
QWidget::update
void update()
KMReaderWin::setOverrideEncoding
void setOverrideEncoding(const QString &encoding)
Set the override character encoding.
Definition: kmreaderwin.cpp:288
KMReaderWin::slotMailtoForward
void slotMailtoForward()
Definition: kmreaderwin.cpp:504
KMReaderWin::replaceMsgByUnencryptedVersion
void replaceMsgByUnencryptedVersion()
Emitted after parsing of a message to have it stored in unencrypted state in it's folder...
KMReaderWin::setContactItem
void setContactItem(const Akonadi::Item &contact, const KABC::Addressee &address)
Definition: kmreaderwin.cpp:819
KMReaderWin::setPrinting
virtual void setPrinting(bool enable)
Definition: kmreaderwin.cpp:676
KMReaderWin::cssHelper
MessageViewer::CSSHelper * cssHelper() const
Definition: kmreaderwin.cpp:589
KMReaderWin::expandShortUrlAction
KAction * expandShortUrlAction() const
Definition: kmreaderwin.cpp:922
KMReaderWin::copyImageLocation
KAction * copyImageLocation() const
Definition: kmreaderwin.cpp:647
KMReaderWin::createTodoAction
KAction * createTodoAction() const
Definition: kmreaderwin.cpp:927
KMReaderWin::openAddrBookAction
KAction * openAddrBookAction() const
Definition: kmreaderwin.h:139
KMReaderWin::setDecryptMessageOverwrite
void setDecryptMessageOverwrite(bool overwrite=true)
Enforce message decryption.
Definition: kmreaderwin.cpp:598
KMReaderWin::setDisplayFormatMessageOverwrite
void setDisplayFormatMessageOverwrite(MessageViewer::Viewer::DisplayFormatMessage format)
Definition: kmreaderwin.cpp:466
KMReaderWin::slotMailtoAddAddrBook
void slotMailtoAddAddrBook()
Definition: kmreaderwin.cpp:512
KMReaderWin::KMReaderWin
KMReaderWin(QWidget *parent, QWidget *mainWindow, KActionCollection *actionCollection, Qt::WindowFlags f=0)
Definition: kmreaderwin.cpp:102
KMReaderWin::viewSourceAction
KAction * viewSourceAction() const
Definition: kmreaderwin.cpp:657
KMReaderWin::imageUrlClicked
KUrl imageUrlClicked() const
Definition: kmreaderwin.cpp:718
KMReaderWin::setMsgPart
void setMsgPart(KMime::Content *aMsgPart)
Instead of settings a message to be shown sets a message part to be shown.
Definition: kmreaderwin.cpp:449
KMReaderWin::translateAction
KAction * translateAction() const
Definition: kmreaderwin.cpp:691
KMReaderWin::displayBusyPage
void displayBusyPage()
Display the 'please wait' page instead of a message.
Definition: kmreaderwin.cpp:342
KMReaderWin::mainWindow
QWidget * mainWindow()
Definition: kmreaderwin.h:171
KMReaderWin::setAttachmentStrategy
void setAttachmentStrategy(const MessageViewer::AttachmentStrategy *strategy)
Definition: kmreaderwin.cpp:279
KMReaderWin::setHtmlOverride
void setHtmlOverride(bool override)
KMReaderWin::setHtmlLoadExtOverride
void setHtmlLoadExtOverride(bool override)
Definition: kmreaderwin.cpp:473
KMReaderWin::setMessage
void setMessage(const Akonadi::Item &item, MessageViewer::Viewer::UpdateMode updateMode=MessageViewer::Viewer::Delayed)
KMReaderWin::htmlMail
bool htmlMail() const
Is html mail to be supported? Takes into account override.
Definition: kmreaderwin.cpp:479
KMReaderWin::clear
void clear(bool force=false)
Clear the reader and discard the current message.
Definition: kmreaderwin.cpp:696
KMReaderWin::slotSaveImageOnDisk
void slotSaveImageOnDisk()
Definition: kmreaderwin.cpp:572
QString
KMReaderWin::displayOfflinePage
void displayOfflinePage()
Display the 'we are currently in offline mode' page instead of a message.
Definition: kmreaderwin.cpp:350
KMReaderWin::clearContactItem
void clearContactItem()
Definition: kmreaderwin.cpp:811
KMReaderWin::resetMessageDisplayFormatAction
KAction * resetMessageDisplayFormatAction() const
Definition: kmreaderwin.cpp:890
KMReaderWin::downloadImageToDiskAction
KAction * downloadImageToDiskAction() const
Definition: kmreaderwin.cpp:686
KMReaderWin::adblockEnabled
bool adblockEnabled() const
Definition: kmreaderwin.cpp:900
KMReaderWin::shareImage
KAction * shareImage() const
Definition: kmreaderwin.h:165
KMReaderWin::slotDeleteMessage
void slotDeleteMessage(const Akonadi::Item &)
Definition: kmreaderwin.cpp:754
KMReaderWin::urlSaveAsAction
KAction * urlSaveAsAction() const
Definition: kmreaderwin.h:145
KMReaderWin::saveMessageDisplayFormatAction
KAction * saveMessageDisplayFormatAction() const
Definition: kmreaderwin.cpp:885
KMReaderWin::copyAction
KAction * copyAction() const
Definition: kmreaderwin.cpp:652
KMReaderWin::showStatusBarMessage
void showStatusBarMessage(const QString &message)
KMReaderWin::newFeaturesMD5
static QString newFeaturesMD5()
Returns the MD5 hash for the list of new features.
Definition: kmreaderwin.cpp:325
KMReaderWin::slotContactEditorError
void slotContactEditorError(const QString &error)
Definition: kmreaderwin.cpp:874
KMReaderWin::slotContactHtmlOptions
void slotContactHtmlOptions()
Definition: kmreaderwin.cpp:845
KMReaderWin::toggleFixFontAction
KToggleAction * toggleFixFontAction() const
Definition: kmreaderwin.cpp:612
KMReaderWin::addAddrBookAction
KAction * addAddrBookAction() const
Definition: kmreaderwin.h:138
KMReaderWin::addToExistingContactAction
KAction * addToExistingContactAction() const
Definition: kmreaderwin.h:167
KMReaderWin::editContactAction
KAction * editContactAction() const
Definition: kmreaderwin.h:162
KMReaderWin::slotMailtoOpenAddrBook
void slotMailtoOpenAddrBook()
Definition: kmreaderwin.cpp:541
KMReaderWin::slotMailtoReply
void slotMailtoReply()
Operations on mailto: URLs.
Definition: kmreaderwin.cpp:582
KMReaderWin::isFixedFont
bool isFixedFont() const
Definition: kmreaderwin.cpp:262
KMReaderWin::copyText
QString copyText() const
Return selected text.
Definition: kmreaderwin.cpp:455
KMReaderWin::overrideEncoding
QString overrideEncoding() const
Get selected override character encoding.
Definition: kmreaderwin.cpp:607
KMReaderWin::addBookmarksAction
KAction * addBookmarksAction() const
Definition: kmreaderwin.h:146
KMReaderWin::htmlLoadExtOverride
bool htmlLoadExtOverride() const
Override default load external references setting.
Definition: kmreaderwin.cpp:594
KMReaderWin::openBlockableItems
KAction * openBlockableItems() const
Definition: kmreaderwin.cpp:905
KMReaderWin::findInMessageAction
KAction * findInMessageAction() const
Definition: kmreaderwin.cpp:667
KMReaderWin::htmlLoadExternal
bool htmlLoadExternal()
Is loading ext.
Definition: kmreaderwin.cpp:485
KMReaderWin::toggleMimePartTreeAction
KAction * toggleMimePartTreeAction() const
Definition: kmreaderwin.cpp:622
KMReaderWin::displayAboutPage
void displayAboutPage()
Display the about page instead of a message.
Definition: kmreaderwin.cpp:370
KMReaderWin::printSelectedText
bool printSelectedText(bool preview)
Definition: kmreaderwin.cpp:762
KMReaderWin::mailToForwardAction
KAction * mailToForwardAction() const
Definition: kmreaderwin.h:137
KMReaderWin::slotMailToAddToExistingContact
void slotMailToAddToExistingContact()
Definition: kmreaderwin.cpp:523
KMReaderWin::slotUrlClicked
void slotUrlClicked(const Akonadi::Item &, const KUrl &)
Definition: kmreaderwin.cpp:728
Qt::WindowFlags
typedef WindowFlags
KMReaderWin::slotAddBookmarks
void slotAddBookmarks()
Definition: kmreaderwin.cpp:553
QObject::parent
QObject * parent() const
KMReaderWin::slotShowMessage
void slotShowMessage(KMime::Message::Ptr message, const QString &encoding)
Definition: kmreaderwin.cpp:747
KMReaderWin::setUseFixedFont
void setUseFixedFont(bool useFixedFont)
Definition: kmreaderwin.cpp:257
KMReaderWin::selectAllAction
KAction * selectAllAction() const
Definition: kmreaderwin.cpp:627
KJob
KMReaderWin::slotCopySelectedText
void slotCopySelectedText()
Copy the selected text to the clipboard.
Definition: kmreaderwin.cpp:441
KMReaderWin::mimePartTreeIsEmpty
bool mimePartTreeIsEmpty() const
Definition: kmreaderwin.cpp:617
KMReaderWin::displaySplashPage
void displaySplashPage(const QString &info)
Display a generic HTML splash page instead of a message.
Definition: kmreaderwin.cpp:337
KMReaderWin::clearCache
void clearCache()
Force update even if message is the same.
Definition: kmreaderwin.cpp:294
KMReaderWin::speakTextAction
KAction * speakTextAction() const
Definition: kmreaderwin.cpp:681
KMReaderWin::readConfig
void readConfig()
Read settings from app's config file.
Definition: kmreaderwin.cpp:274
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