From 981f8b3acf7e76f27c02f4ced80d55b424cc7497 Mon Sep 17 00:00:00 2001 From: Tannin Date: Sun, 3 Feb 2013 12:49:25 +0100 Subject: initial commit to mercurial repository. Corresponds to MO version 0.12.6 --- src/textviewer.h | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 src/textviewer.h (limited to 'src/textviewer.h') diff --git a/src/textviewer.h b/src/textviewer.h new file mode 100644 index 00000000..c0d29607 --- /dev/null +++ b/src/textviewer.h @@ -0,0 +1,93 @@ +/* +Copyright (C) 2012 Sebastian Herbord. All rights reserved. + +This file is part of Mod Organizer. + +Mod Organizer 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 3 of the License, or +(at your option) any later version. + +Mod Organizer is distributed 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 Mod Organizer. If not, see . +*/ + +#ifndef TEXTVIEWER_H +#define TEXTVIEWER_H + +#include +#include +#include +#include +#include "loghighlighter.h" + +namespace Ui { + class TextViewer; +} + + +/** + * @brief tabbed text editor + **/ +class TextViewer : public QDialog +{ + Q_OBJECT + +public: + + /** + * @brief constructor + * @param parent parent widget + **/ + explicit TextViewer(QWidget *parent = 0); + + ~TextViewer(); + + /** + * @brief set the description text to inform the user what he's editing + * + * @param description the description to set + **/ + void setDescription(const QString &description); + + /** + * @brief add a new tab with the specified file open + * + * @param fileName name of the file to open + * @param writable if true, the file can be modified + **/ + void addFile(const QString &fileName, bool writable); + +protected: + + void closeEvent(QCloseEvent *event); + bool eventFilter(QObject *obj, QEvent *event); + +private slots: + + void saveFile(); + void modified(); + void patternChanged(QString newPattern); + void findNext(); + +private: + + void saveFile(const QTextEdit *editor); + void find(); + +private: + + Ui::TextViewer *ui; + QTabWidget *m_EditorTabs; + std::set m_Modified; + FindDialog *m_FindDialog; + QString m_FindPattern; + +}; + +#endif // TEXTVIEWER_H -- cgit v1.3.1