summaryrefslogtreecommitdiffstats
path: root/qt/qextscintilladocument.h
diff options
context:
space:
mode:
Diffstat (limited to 'qt/qextscintilladocument.h')
-rw-r--r--qt/qextscintilladocument.h61
1 files changed, 61 insertions, 0 deletions
diff --git a/qt/qextscintilladocument.h b/qt/qextscintilladocument.h
new file mode 100644
index 0000000..4dd846c
--- /dev/null
+++ b/qt/qextscintilladocument.h
@@ -0,0 +1,61 @@
+// This defines the interface to the QextScintillaDocument class.
+//
+// Copyright (c) 2006
+// Riverbank Computing Limited <info@riverbankcomputing.co.uk>
+//
+// This file is part of QScintilla.
+//
+// This copy of QScintilla 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, or (at your option) any
+// later version.
+//
+// QScintilla is supplied in the hope that it will be useful, but WITHOUT ANY
+// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+// details.
+//
+// You should have received a copy of the GNU General Public License along with
+// QScintilla; see the file LICENSE. If not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+#ifndef QEXTSCINTILLADOCUMENT_H
+#define QEXTSCINTILLADOCUMENT_H
+
+
+#include <qextscintillaglobal.h>
+
+
+class QextScintillaBase;
+class QextScintillaDocumentP;
+
+
+//! \brief The QextScintillaDocument class represents a document to be editted.
+//!
+//! It is an opaque class that can be attached to multiple instances of
+//! QextScintilla to create different simultaneous views of the same document.
+//! QextScintillaDocument uses implicit sharing so that copying class instances
+//! is a cheap operation.
+class QEXTSCINTILLA_EXPORT QextScintillaDocument
+{
+public:
+ //! Create a new unattached document.
+ QextScintillaDocument();
+ virtual ~QextScintillaDocument();
+
+ QextScintillaDocument(const QextScintillaDocument &);
+ QextScintillaDocument &operator=(const QextScintillaDocument &);
+
+private:
+ friend class QextScintilla;
+
+ void attach(const QextScintillaDocument &that);
+ void detach();
+ void display(QextScintillaBase *qsb,const QextScintillaDocument *from);
+ void undisplay(QextScintillaBase *qsb);
+
+ QextScintillaDocumentP *pdoc;
+};
+
+#endif