You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kshowmail/kshowmail/kshowmaildoc.h

82 lines
3.3 KiB

/***************************************************************************
kshowmaildoc.h - description
-------------------
begin : Fre Sep 28 23:29:54 CEST 2001
copyright : (C) 2001 by Eggert Ehmke
email : eggert.ehmke@berlin.de
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef KSHOWMAILDOC_H
#define KSHOWMAILDOC_H
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
// include files for QT
#include <tqobject.h>
#include <tqstring.h>
// include files for KDE
#include <kurl.h>
// forward declaration of the Kshowmail classes
class KshowmailView;
/** KshowmailDoc provides a document object for a document-view model.
*
* The KshowmailDoc class provides a document object that can be used in conjunction with the classes KshowmailApp and KshowmailView
* to create a document-view model for standard KDE applications based on TDEApplication and TDEMainWindow. Thereby, the document object
* is created by the KshowmailApp instance and contains the document structure with the according methods for manipulation of the document
* data by KshowmailView objects. Also, KshowmailDoc contains the methods for serialization of the document data from and to files.
*
* @author Source Framework Automatically Generated by KDevelop, (c) The KDevelop Team.
* @version KDevelop version 1.2 code generation
*/
class KshowmailDoc : public TQObject
{
Q_OBJECT
public:
/** Constructor for the fileclass of the application */
KshowmailDoc(TQWidget *parent, const char *name=0);
/** Destructor for the fileclass of the application */
~KshowmailDoc();
/** adds a view to the document which represents the document contents. Usually this is your main view. */
void addView(KshowmailView *view);
/** removes a view from the list of currently connected views */
void removeView(KshowmailView *view);
/** initializes the document generally */
bool newDocument();
/** returns the KURL of the document */
const KURL& URL() const;
/** sets the URL of the document */
void setURL(const KURL& url);
public slots:
/** calls repaint() on all views connected to the document object and is called by the view by which the document has been changed.
* As this view normally repaints itself, it is excluded from the paintEvent.
*/
void slotUpdateAllViews(KshowmailView *sender);
public:
/** the list of the views currently connected to the document */
// no List; just one view
static KshowmailView *pView;
private:
/** the modified flag of the current document */
KURL doc_url;
};
#endif // KSHOWMAILDOC_H