kmail

This class implements a "reader window", that is a window used for reading or viewing messages. More...

#include <kmreaderwin.h>

Inheritance diagram for KMReaderWin:
KMail::Interface::Observer

List of all members.

Public Slots

void selectAll ()
void clearCache ()
void updateReaderWin ()
void slotScrollUp ()
void slotScrollDown ()
void slotScrollPrior ()
void slotScrollNext ()
void slotJumpDown ()
void slotDocumentChanged ()
void slotDocumentDone ()
void slotTextSelected (bool)
void slotUrlOpen (const KURL &url, const KParts::URLArgs &args)
void slotUrlOn (const TQString &url)
void slotUrlPopup (const TQString &, const TQPoint &mousePos)
void slotFind ()
void slotFindNext ()
void slotToggleFixedFont ()
void slotCopySelectedText ()
void slotUrlClicked ()
void slotMailtoReply ()
void slotMailtoCompose ()
void slotMailtoForward ()
void slotMailtoAddAddrBook ()
void slotMailtoOpenAddrBook ()
void slotUrlCopy ()
void slotUrlOpen (const KURL &url=KURL())
void slotUrlSave ()
void slotAddBookmarks ()
void slotSaveMsg ()
void slotSaveAttachments ()
void slotMessageArrived (KMMessage *msg)
void slotIMChat ()
void contactStatusChanged (const TQString &uid)
void slotLevelQuote (int l)
void slotTouchMessage ()
void fillCommandInfo (partNode *node, KMMessage **msg, int *nodeId)
void slotDeleteAttachment (partNode *node)
void slotEditAttachment (partNode *node)
KMail::CSSHelper * cssHelper ()

Signals

void replaceMsgByUnencryptedVersion ()
void popupMenu (KMMessage &msg, const KURL &url, const TQPoint &mousePos)
void urlClicked (const KURL &url, int button)
void noDrag (void)

Public Member Functions

 KMReaderWin (TQWidget *parent, TQWidget *mainWindow, KActionCollection *actionCollection, const char *name=0, int f=0)
void update (KMail::Interface::Observable *)
void readConfig ()
void writeConfig (bool withSync=true) const
const KMail::HeaderStyleheaderStyle () const
void setHeaderStyleAndStrategy (const KMail::HeaderStyle *style, const KMail::HeaderStrategy *strategy)
const KMail::HeaderStrategy * headerStrategy () const
const KMail::AttachmentStrategy * attachmentStrategy () const
void setAttachmentStrategy (const KMail::AttachmentStrategy *strategy)
TQString overrideEncoding () const
void setOverrideEncoding (const TQString &encoding)
void setPrintFont (const TQFont &font)
const TQTextCodec * overrideCodec () const
virtual void setPrinting (bool enable)
virtual void setMsg (KMMessage *msg, bool force=false, bool updateOnly=false)
void setOriginalMsg (unsigned long serNumOfOriginalMessage, int nodeIdOffset)
void setMsgPart (KMMessagePart *aMsgPart, bool aHTML, const TQString &aFileName, const TQString &pname)
void setMsgPart (partNode *node)
void showHideMimeTree (bool isPlainTextTopLevel)
void setIdOfLastViewedMessage (const TQString &msgId)
void clear (bool force=false)
void saveRelativePosition ()
void update (bool force=false)
virtual void printMsg (void)
TQString copyText ()
bool autoDelete (void) const
void setAutoDelete (bool f)
bool htmlOverride () const
void setHtmlOverride (bool override)
bool htmlLoadExtOverride () const
void setHtmlLoadExtOverride (bool override)
bool htmlMail ()
bool htmlLoadExternal ()
void displaySplashPage (const TQString &info)
void displayAboutPage ()
void displayBusyPage ()
void displayOfflinePage ()
void enableMsgDisplay ()
void atmViewMsg (KMMessagePart *msgPart, int nodeId)
bool atBottom () const
bool isFixedFont ()
void setUseFixedFont (bool useFixedFont)
KMail::HtmlWriterhtmlWriter ()
KToggleAction * toggleFixFontAction ()
KAction * mailToComposeAction ()
KAction * mailToReplyAction ()
KAction * mailToForwardAction ()
KAction * addAddrBookAction ()
KAction * openAddrBookAction ()
KAction * copyAction ()
KAction * selectAllAction ()
KAction * copyURLAction ()
KAction * urlOpenAction ()
KAction * urlSaveAsAction ()
KAction * addBookmarksAction ()
KAction * startImChatAction ()
void objectTreeToDecryptedMsg (partNode *node, NewByteArray &resultingData, KMMessage &theMessage, bool weAreReplacingTheRootNode=false, int recCount=0)
partNode * partNodeFromUrl (const KURL &url)
partNode * partNodeForId (int id)
KURL tempFileUrlFromPartNode (const partNode *node)
void setUpdateAttachment (bool update=true)
KHTMLPart * htmlPart () const
KMMessagemessage (KMFolder **folder=0) const
void openAttachment (int id, const TQString &name)
void saveAttachment (const KURL &tempFileName)
void emitUrlClicked (const KURL &url, int button)
void emitPopupMenu (const KURL &url, const TQPoint &p)
void showAttachmentPopup (int id, const TQString &name, const TQPoint &p)
void setWaitingForSerNum (unsigned long serNum)
TQWidget * mainWindow ()
bool decryptMessage () const
void setDecryptMessageOverwrite (bool overwrite=true)
bool showSignatureDetails () const
void setShowSignatureDetails (bool showDetails=true)
bool showAttachmentQuicklist () const
void setShowAttachmentQuicklist (bool showAttachmentQuicklist=true)
bool showRawToltecMail () const
void setShowRawToltecMail (bool showRawToltecMail)
KMail::Interface::BodyPartMementobodyPartMemento (const partNode *node, const TQCString &which) const
void setBodyPartMemento (const partNode *node, const TQCString &which, KMail::Interface::BodyPartMemento *memento)
void scrollToAttachment (const partNode *node)

Static Public Member Functions

static TQString newFeaturesMD5 ()
static int msgPartFromUrl (const KURL &url)

Protected Slots

void slotCycleHeaderStyles ()
void slotBriefHeaders ()
void slotFancyHeaders ()
void slotEnterpriseHeaders ()
void slotStandardHeaders ()
void slotLongHeaders ()
void slotAllHeaders ()
void slotCycleAttachmentStrategy ()
void slotIconicAttachments ()
void slotSmartAttachments ()
void slotInlineAttachments ()
void slotHideAttachments ()
void slotHeaderOnlyAttachments ()
void slotAtmView (int id, const TQString &name)
void slotDelayedResize ()
void slotHandleAttachment (int)
void disconnectMsgAdded ()
void msgAdded (TQListViewItem *item)

Protected Member Functions

void styleChange (TQStyle &oldStyle)
void setStyleDependantFrameWidth ()
virtual bool event (TQEvent *e)
int pointsToPixel (int pointSize) const
void displayMessage ()
virtual void parseMsg (KMMessage *msg)
TQString writeMsgHeader (KMMessage *aMsg, partNode *vCardNode=0, bool topLevel=false)
TQString writeMessagePartToTempFile (KMMessagePart *msgPart, int partNumber)
TQString createTempDir (const TQString &param=TQString())
void showVCard (KMMessagePart *msgPart)
virtual void initHtmlWidget (void)
virtual void closeEvent (TQCloseEvent *)
virtual void resizeEvent (TQResizeEvent *)
virtual void removeTempFiles ()
bool eventFilter (TQObject *obj, TQEvent *ev)

Friends

class KMail::ObjectTreeParser
class KMail::KHtmlPartHtmlWriter
TQ_OBJECT friend void KMMimePartTree::itemClicked (TQListViewItem *item)
void KMMimePartTree::itemRightClicked (TQListViewItem *item, const TQPoint &)
void KMMimePartTree::slotSaveAs ()
void KMMimePartTree::startDrag ()

Detailed Description

This class implements a "reader window", that is a window used for reading or viewing messages.

Definition at line 76 of file kmreaderwin.h.


Member Function Documentation

void KMReaderWin::atmViewMsg ( KMMessagePart *  msgPart,
int  nodeId 
)

View message part of type message/RFC822 in extra viewer window.

Parameters:
msgPart the part to display
nodeId the part index of the message part that is displayed

Definition at line 2079 of file kmreaderwin.cpp.

const KMail::AttachmentStrategy* KMReaderWin::attachmentStrategy (  )  const [inline]

Get/set the message attachment strategy.

Definition at line 122 of file kmreaderwin.h.

bool KMReaderWin::autoDelete ( void   )  const [inline]

Get/set auto-delete msg flag.

Definition at line 196 of file kmreaderwin.h.

void KMReaderWin::clear ( bool  force = false  )  [inline]

Clear the reader and discard the current message.

Definition at line 180 of file kmreaderwin.h.

void KMReaderWin::clearCache (  )  [slot]

Force update even if message is the same.

Definition at line 1233 of file kmreaderwin.cpp.

void KMReaderWin::closeEvent ( TQCloseEvent *  e  )  [protected, virtual]

Some necessary event handling.

Definition at line 1832 of file kmreaderwin.cpp.

TQString KMReaderWin::copyText (  ) 

Return selected text.

Definition at line 2386 of file kmreaderwin.cpp.

TQString KMReaderWin::createTempDir ( const TQString &  param = TQString()  )  [protected]

Creates a temporary dir for saving attachments, etc.

Will be automatically deleted when another message is viewed.

Parameters:
param Optional part of the directory name.

Definition at line 1721 of file kmreaderwin.cpp.

bool KMReaderWin::decryptMessage (  )  const

Returns wether the message should be decryted.

Definition at line 2819 of file kmreaderwin.cpp.

void KMReaderWin::disconnectMsgAdded (  )  [protected, slot]

Helper functions used to change message selection in the message list after deleting an attachment, see slotDeleteAttachment().

Definition at line 2787 of file kmreaderwin.cpp.

void KMReaderWin::displayAboutPage (  ) 

Display the about page instead of a message.

Definition at line 1323 of file kmreaderwin.cpp.

void KMReaderWin::displayBusyPage (  ) 

Display the 'please wait' page instead of a message.

Definition at line 1304 of file kmreaderwin.cpp.

void KMReaderWin::displayMessage (  )  [protected]

Feeds the HTML viewer with the contents of the given message.

HTML begin/end parts are written around the message.

Definition at line 1452 of file kmreaderwin.cpp.

void KMReaderWin::displayOfflinePage (  ) 

Display the 'we are currently in offline mode' page instead of a message.

Definition at line 1312 of file kmreaderwin.cpp.

void KMReaderWin::displaySplashPage ( const TQString &  info  ) 

Display a generic HTML splash page instead of a message.

Definition at line 1281 of file kmreaderwin.cpp.

void KMReaderWin::enableMsgDisplay (  ) 

Enable the displaying of messages again after an URL was displayed.

Definition at line 1387 of file kmreaderwin.cpp.

bool KMReaderWin::event ( TQEvent *  e  )  [protected, virtual]

Watch for palette changes.

Definition at line 862 of file kmreaderwin.cpp.

bool KMReaderWin::eventFilter ( TQObject *  obj,
TQEvent *  ev 
) [protected]

Event filter.

Definition at line 2651 of file kmreaderwin.cpp.

void KMReaderWin::fillCommandInfo ( partNode *  node,
KMMessage **  msg,
int *  nodeId 
) [slot]

Find the node ID and the message of the attachment that should be edited or deleted.

This is used when setOriginalMsg() was called before, in that case we want to operate on the original message instead of our copy.

See also:
setOriginalMsg

Definition at line 2714 of file kmreaderwin.cpp.

const KMail::HeaderStrategy* KMReaderWin::headerStrategy (  )  const [inline]

Getthe message header strategy.

Definition at line 117 of file kmreaderwin.h.

bool KMReaderWin::htmlLoadExternal (  ) 

Is loading ext.

references to be supported? Takes into account override

Definition at line 2426 of file kmreaderwin.cpp.

bool KMReaderWin::htmlLoadExtOverride (  )  const [inline]

Override default load external references setting.

Definition at line 204 of file kmreaderwin.h.

bool KMReaderWin::htmlMail (  ) 

Is html mail to be supported? Takes into account override.

Definition at line 2419 of file kmreaderwin.cpp.

bool KMReaderWin::htmlOverride (  )  const [inline]

Override default html mail setting.

Definition at line 200 of file kmreaderwin.h.

KHTMLPart* KMReaderWin::htmlPart (  )  const [inline]

Access to the KHTMLPart used for the viewer.

Use with care!

Definition at line 284 of file kmreaderwin.h.

KMail::HtmlWriter* KMReaderWin::htmlWriter (  )  [inline]

Return the HtmlWriter connected to the KHTMLPart we use.

Definition at line 243 of file kmreaderwin.h.

void KMReaderWin::initHtmlWidget ( void   )  [protected, virtual]

HTML initialization.

Definition at line 989 of file kmreaderwin.cpp.

KMMessage * KMReaderWin::message ( KMFolder **  folder = 0  )  const

Returns the current message or 0 if none.

Definition at line 2452 of file kmreaderwin.cpp.

int KMReaderWin::msgPartFromUrl ( const KURL &  url  )  [static]

Returns id of message part from given URL or -1 if invalid.

Definition at line 1761 of file kmreaderwin.cpp.

TQString KMReaderWin::newFeaturesMD5 (  )  [static]

Returns the MD5 hash for the list of new features.

Definition at line 1269 of file kmreaderwin.cpp.

void KMReaderWin::noDrag ( void   )  [signal]

Pgp displays a password dialog.

const TQTextCodec * KMReaderWin::overrideCodec (  )  const

Get codec corresponding to the currently selected override character encoding.

Returns:
The override codec or 0 if auto-detection is selected.

Definition at line 1106 of file kmreaderwin.cpp.

TQString KMReaderWin::overrideEncoding (  )  const [inline]

Get selected override character encoding.

Returns:
The encoding selected by the user or an empty string if auto-detection is selected.

Definition at line 130 of file kmreaderwin.h.

void KMReaderWin::parseMsg ( KMMessage msg  )  [protected, virtual]

Parse given message and add it's contents to the reader window.

Definition at line 1494 of file kmreaderwin.cpp.

partNode * KMReaderWin::partNodeFromUrl ( const KURL &  url  ) 

Returns message part from given URL or null if invalid.

Definition at line 2562 of file kmreaderwin.cpp.

int KMReaderWin::pointsToPixel ( int  pointSize  )  const [protected]

Calculate the pixel size.

Definition at line 1432 of file kmreaderwin.cpp.

void KMReaderWin::popupMenu ( KMMessage msg,
const KURL &  url,
const TQPoint &  mousePos 
) [signal]

The user presses the right mouse button.

'url' may be 0.

void KMReaderWin::printMsg ( void   )  [virtual]

Print current message.

Definition at line 1753 of file kmreaderwin.cpp.

void KMReaderWin::readConfig ( void   ) 

Read settings from app's config file.

Definition at line 878 of file kmreaderwin.cpp.

void KMReaderWin::removeTempFiles (  )  [protected, virtual]

Cleanup the attachment temp files.

Definition at line 844 of file kmreaderwin.cpp.

void KMReaderWin::replaceMsgByUnencryptedVersion (  )  [signal]

Emitted after parsing of a message to have it stored in unencrypted state in it's folder.

void KMReaderWin::saveRelativePosition (  ) 

Saves the relative position of the scroll view.

Call this before calling update() if you want to preserve the current view.

Definition at line 2434 of file kmreaderwin.cpp.

void KMReaderWin::scrollToAttachment ( const partNode *  node  ) 

Scrolls to the given attachment and marks it with a yellow border.

Definition at line 2826 of file kmreaderwin.cpp.

void KMReaderWin::selectAll (  )  [slot]

Select message body.

Definition at line 2380 of file kmreaderwin.cpp.

void KMReaderWin::setDecryptMessageOverwrite ( bool  overwrite = true  )  [inline]

Enforce message decryption.

Definition at line 313 of file kmreaderwin.h.

void KMReaderWin::setHeaderStyleAndStrategy ( const KMail::HeaderStyle style,
const KMail::HeaderStrategy *  strategy 
)

Set the header style and strategy.

We only want them to be set together.

Definition at line 1049 of file kmreaderwin.cpp.

void KMReaderWin::setIdOfLastViewedMessage ( const TQString &  msgId  )  [inline]

Store message id of last viewed message, normally no need to call this function directly, since correct value is set automatically in parseMsg(KMMessage* aMsg, bool onlyProcessHeaders).

Definition at line 176 of file kmreaderwin.h.

void KMReaderWin::setMsg ( KMMessage msg,
bool  force = false,
bool  updateOnly = false 
) [virtual]

Set the message that shall be shown.

If msg is 0, an empty page is displayed.

Definition at line 1143 of file kmreaderwin.cpp.

void KMReaderWin::setMsgPart ( KMMessagePart *  aMsgPart,
bool  aHTML,
const TQString &  aFileName,
const TQString &  pname 
)

Instead of settings a message to be shown sets a message part to be shown.

Definition at line 2112 of file kmreaderwin.cpp.

void KMReaderWin::setOriginalMsg ( unsigned long  serNumOfOriginalMessage,
int  nodeIdOffset 
)

This should be called when setting a message that was constructed from another message, which is the case when viewing encapsulated messages in the seperate reader window.

We need to know the serial number of the original message, and at which part index the encapsulated message was at that original message, so that deleting and editing attachments can work on the original message.

This is a HACK. There really shouldn't be a copy of the original mail.

See also:
slotDeleteAttachment, slotEditAttachment, fillCommandInfo

Definition at line 1136 of file kmreaderwin.cpp.

void KMReaderWin::setOverrideEncoding ( const TQString &  encoding  ) 

Set the override character encoding.

Definition at line 1067 of file kmreaderwin.cpp.

virtual void KMReaderWin::setPrinting ( bool  enable  )  [inline, virtual]

Set printing mode.

Definition at line 142 of file kmreaderwin.h.

void KMReaderWin::setShowSignatureDetails ( bool  showDetails = true  )  [inline]

Show signature details.

Definition at line 319 of file kmreaderwin.h.

void KMReaderWin::setStyleDependantFrameWidth (  )  [protected]

Set the width of the frame to a reasonable value for the current GUI style.

Definition at line 1996 of file kmreaderwin.cpp.

void KMReaderWin::setWaitingForSerNum ( unsigned long  serNum  )  [inline]

Set the serial number of the message this reader window is currently waiting for.

Used to discard updates for already deselected messages.

Definition at line 305 of file kmreaderwin.h.

void KMReaderWin::showHideMimeTree ( bool  isPlainTextTopLevel  ) 

Show or hide the Mime Tree Viewer if configuration is set to smart mode.

Definition at line 1440 of file kmreaderwin.cpp.

bool KMReaderWin::showSignatureDetails (  )  const [inline]

Show signature details.

Definition at line 316 of file kmreaderwin.h.

void KMReaderWin::showVCard ( KMMessagePart *  msgPart  )  [protected]

show window containing infos about a vCard.

Definition at line 1741 of file kmreaderwin.cpp.

void KMReaderWin::slotAtmView ( int  id,
const TQString &  name 
) [protected, slot]

Some attachment operations.

Definition at line 2208 of file kmreaderwin.cpp.

void KMReaderWin::slotCopySelectedText (  )  [slot]

Copy the selected text to the clipboard.

Definition at line 2072 of file kmreaderwin.cpp.

void KMReaderWin::slotFind (  )  [slot]

The user selected "Find" from the menu.

Definition at line 2051 of file kmreaderwin.cpp.

void KMReaderWin::slotFindNext (  )  [slot]

The user selected "Find Next" from the menu.

Definition at line 2057 of file kmreaderwin.cpp.

void KMReaderWin::slotIMChat (  )  [slot]

start IM Chat with addressee

Definition at line 2619 of file kmreaderwin.cpp.

void KMReaderWin::slotMailtoReply (  )  [slot]

Operations on mailto: URLs.

Definition at line 2554 of file kmreaderwin.cpp.

void KMReaderWin::slotScrollUp (  )  [slot]

HTML Widget scrollbar and layout handling.

Definition at line 2326 of file kmreaderwin.cpp.

void KMReaderWin::slotToggleFixedFont (  )  [slot]

The user toggled the "Fixed Font" flag from the view menu.

Definition at line 2063 of file kmreaderwin.cpp.

void KMReaderWin::slotUrlCopy (  )  [slot]

Copy URL in mUrlCurrent to clipboard.

Removes "mailto:" at beginning of URL before copying.

Definition at line 2520 of file kmreaderwin.cpp.

void KMReaderWin::slotUrlOn ( const TQString &  url  )  [slot]

The mouse has moved on or off an URL.

Definition at line 1883 of file kmreaderwin.cpp.

void KMReaderWin::slotUrlOpen ( const KURL &  url,
const KParts::URLArgs &  args 
) [slot]

An URL has been activate with a click.

Definition at line 1911 of file kmreaderwin.cpp.

void KMReaderWin::slotUrlPopup ( const TQString &  aUrl,
const TQPoint &  mousePos 
) [slot]

The user presses the right mouse button on an URL.

Definition at line 1923 of file kmreaderwin.cpp.

void KMReaderWin::slotUrlSave (  )  [slot]

Save the page to a file.

Definition at line 2547 of file kmreaderwin.cpp.

void KMReaderWin::styleChange ( TQStyle &  oldStyle  )  [protected]

reimplemented in order to update the frame width in case of a changed GUI style

Definition at line 2013 of file kmreaderwin.cpp.

void KMReaderWin::update ( bool  force = false  ) 

Re-parse the current message.

Definition at line 2443 of file kmreaderwin.cpp.

void KMReaderWin::update ( KMail::Interface::Observable observable  )  [virtual]
Reimplemented from superclass. from Interface::Observer
Updates the current message

Implements KMail::Interface::Observer.

Definition at line 802 of file kmreaderwin.cpp.

void KMReaderWin::updateReaderWin (  )  [slot]

Refresh the reader window.

Definition at line 1395 of file kmreaderwin.cpp.

void KMReaderWin::urlClicked ( const KURL &  url,
int  button 
) [signal]

The user has clicked onto an URL that is no attachment.

void KMReaderWin::writeConfig ( bool  withSync = true  )  const

Write settings to app's config file.

Calls sync() if withSync is TRUE.

Definition at line 971 of file kmreaderwin.cpp.

TQString KMReaderWin::writeMessagePartToTempFile ( KMMessagePart *  msgPart,
int  partNumber 
) [protected]

Writes the given message part to a temporary file and returns the name of this file or TQString() if writing failed.

Definition at line 1684 of file kmreaderwin.cpp.

TQString KMReaderWin::writeMsgHeader ( KMMessage aMsg,
partNode *  vCardNode = 0,
bool  topLevel = false 
) [protected]

Creates a nice mail header depending on the current selected header style.

Definition at line 1668 of file kmreaderwin.cpp.


The documentation for this class was generated from the following files: