document.h

00001 /* This file is part of the KDE libraries
00002    Copyright (C) 2001 Christoph Cullmann <cullmann@kde.org>
00003 
00004    This library is free software; you can redistribute it and/or
00005    modify it under the terms of the GNU Library General Public
00006    License version 2 as published by the Free Software Foundation.
00007 
00008    This library is distributed in the hope that it will be useful,
00009    but WITHOUT ANY WARRANTY; without even the implied warranty of
00010    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00011    Library General Public License for more details.
00012 
00013    You should have received a copy of the GNU Library General Public License
00014    along with this library; see the file COPYING.LIB.  If not, write to
00015    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00016    Boston, MA 02110-1301, USA.
00017 */
00018 
00019 #ifndef __ktexteditor_document_h__
00020 #define __ktexteditor_document_h__
00021 
00022 #include "editor.h"
00023 
00024 namespace KTextEditor
00025 {
00026 
00031 class KTEXTEDITOR_EXPORT Document : public KTextEditor::Editor
00032 {
00033   friend class PrivateDocument;
00034 
00035   Q_OBJECT
00036 
00037   public:
00038     Document ( QObject *parent = 0, const char *name = 0 );
00039     virtual ~Document ();
00040 
00044     unsigned int documentNumber () const;
00045 
00049     QCString documentDCOPSuffix () const;
00050 
00056     virtual class View *createView ( QWidget *parent, const char *name = 0 ) = 0;
00057 
00058     /*
00059     * Returns a list of all views of this document.
00060     */
00061     virtual QPtrList<class View> views () const = 0;
00062 
00063   private:
00064     class PrivateDocument *d;
00065     static unsigned int globalDocumentNumber;
00066     unsigned int myDocumentNumber;
00067 };
00068 
00069 KTEXTEDITOR_EXPORT Document *createDocument ( const char* libname, QObject *parent = 0, const char *name = 0 );
00070 
00071 }
00072 
00073 #endif
KDE Home | KDE Accessibility Home | Description of Access Keys