mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-11 21:49:51 +00:00
3002118616
* src/buffer.[nC]: can write full source, separaet/rename makeXXXFile. * src/graphics/PreviewLoader.C: rename maleLaTeXFile to writeLaTeXSource * src/frontends/qt3/QViewSourceDialog.h, ui/QViewSourceDialogBase.ui, QViewSource.[hC], QViewSourceDialog.[hC]: qt3 frontend * src/frontends/qt4/QViewSource.[hC], ui/QViewSourceUi.ui, QViewSourceDialog.[hC]: qt4 frontend * src/frontends/controllers/ControlViewSource.[hC]: controller git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14539 a592a061-630c-0410-9148-cb99ea01b6c8
71 lines
1.2 KiB
C++
71 lines
1.2 KiB
C++
// -*- C++ -*-
|
|
/**
|
|
* \file QViewSource.h
|
|
* This file is part of LyX, the document processor.
|
|
* Licence details can be found in the file COPYING.
|
|
*
|
|
* \author John Levon
|
|
* \author Bo Peng
|
|
*
|
|
* Full author contact details are available in file CREDITS.
|
|
*/
|
|
|
|
#ifndef QVIEWSOURCE_H
|
|
#define QVIEWSOURCE_H
|
|
|
|
#include "QDialogView.h"
|
|
#include <QSyntaxHighlighter>
|
|
|
|
namespace lyx {
|
|
namespace frontend {
|
|
|
|
class ControlViewSource;
|
|
class QViewSourceDialog;
|
|
class latexHighlighter;
|
|
|
|
///
|
|
class QViewSource
|
|
: public QController<ControlViewSource, QView<QViewSourceDialog> >
|
|
{
|
|
public:
|
|
///
|
|
friend class QViewSourceDialog;
|
|
///
|
|
QViewSource(Dialog &);
|
|
private:
|
|
/// Apply changes
|
|
virtual void apply() {}
|
|
///
|
|
void update_source();
|
|
/// update
|
|
virtual void update_contents();
|
|
/// build the dialog
|
|
virtual void build_dialog();
|
|
/// latex syntax highlighter
|
|
latexHighlighter * highlighter;
|
|
};
|
|
|
|
|
|
///
|
|
class latexHighlighter : public QSyntaxHighlighter
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
latexHighlighter(QTextDocument * parent);
|
|
|
|
protected:
|
|
void highlightBlock(QString const & text);
|
|
|
|
private:
|
|
QTextCharFormat commentFormat;
|
|
QTextCharFormat keywordFormat;
|
|
QTextCharFormat mathFormat;
|
|
};
|
|
|
|
|
|
} // namespace frontend
|
|
} // namespace lyx
|
|
|
|
#endif // QVIEWSOURCE_H
|