mirror of
https://github.com/sqlitebrowser/sqlitebrowser.git
synced 2026-05-08 04:49:58 -05:00
cde2393539
This is a first rough implementation of QScintilla support as SQL text editor. It should work mostly and build fine with qmake as well as cmake. The new code supports all the features of the old one plus adding a few subtle improvements. The main point of this, however, is reducing the code we have to maintain and making it easier to add new features to the editor.
70 lines
1.9 KiB
C++
70 lines
1.9 KiB
C++
// This defines the interface to the QsciDocument class.
|
|
//
|
|
// Copyright (c) 2015 Riverbank Computing Limited <info@riverbankcomputing.com>
|
|
//
|
|
// This file is part of QScintilla.
|
|
//
|
|
// This file may be used under the terms of the GNU General Public License
|
|
// version 3.0 as published by the Free Software Foundation and appearing in
|
|
// the file LICENSE included in the packaging of this file. Please review the
|
|
// following information to ensure the GNU General Public License version 3.0
|
|
// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
|
|
//
|
|
// If you do not wish to use this file under the terms of the GPL version 3.0
|
|
// then you may purchase a commercial license. For more information contact
|
|
// info@riverbankcomputing.com.
|
|
//
|
|
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
|
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
|
|
#ifndef QSCIDOCUMENT_H
|
|
#define QSCIDOCUMENT_H
|
|
|
|
#ifdef __APPLE__
|
|
extern "C++" {
|
|
#endif
|
|
|
|
#include <Qsci/qsciglobal.h>
|
|
|
|
|
|
class QsciScintillaBase;
|
|
class QsciDocumentP;
|
|
|
|
|
|
//! \brief The QsciDocument class represents a document to be edited.
|
|
//!
|
|
//! It is an opaque class that can be attached to multiple instances of
|
|
//! QsciScintilla to create different simultaneous views of the same document.
|
|
//! QsciDocument uses implicit sharing so that copying class instances is a
|
|
//! cheap operation.
|
|
class QSCINTILLA_EXPORT QsciDocument
|
|
{
|
|
public:
|
|
//! Create a new unattached document.
|
|
QsciDocument();
|
|
virtual ~QsciDocument();
|
|
|
|
QsciDocument(const QsciDocument &);
|
|
QsciDocument &operator=(const QsciDocument &);
|
|
|
|
private:
|
|
friend class QsciScintilla;
|
|
|
|
void attach(const QsciDocument &that);
|
|
void detach();
|
|
void display(QsciScintillaBase *qsb, const QsciDocument *from);
|
|
void undisplay(QsciScintillaBase *qsb);
|
|
|
|
bool isModified() const;
|
|
void setModified(bool m);
|
|
|
|
QsciDocumentP *pdoc;
|
|
};
|
|
|
|
#ifdef __APPLE__
|
|
}
|
|
#endif
|
|
|
|
#endif
|