diff options
author | Christian Kamm <christian.d.kamm@nokia.com> | 2011-02-03 15:48:14 +0100 |
---|---|---|
committer | Christian Kamm <christian.d.kamm@nokia.com> | 2011-05-24 12:45:07 +0200 |
commit | 779fafcbfe6f92dd1288664fae512f69bc12418b (patch) | |
tree | 38a3b75cc3a18f386ab72102e97f06ffa24d4d29 /src/plugins/cpptools/cppqtstyleindenter.h | |
parent | f69eb52944a7fc8306cbb72b7325a610045dea7a (diff) | |
download | qt-creator-779fafcbfe6f92dd1288664fae512f69bc12418b.tar.gz |
Make C++ code style configurable.
Change-Id: Iaf08edb2361146e6b5e1cbafdb716a23c938875b
Done-with: Jarek Kobus
Task-number: QTCREATORBUG-2670
Task-number: QTCREATORBUG-4310
Task-number: QTCREATORBUG-2763
Task-number: QTCREATORBUG-3623
Task-number: QTCREATORBUG-567
Reviewed-on: http://codereview.qt.nokia.com/74
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Diffstat (limited to 'src/plugins/cpptools/cppqtstyleindenter.h')
-rw-r--r-- | src/plugins/cpptools/cppqtstyleindenter.h | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/src/plugins/cpptools/cppqtstyleindenter.h b/src/plugins/cpptools/cppqtstyleindenter.h new file mode 100644 index 0000000000..a544e8b304 --- /dev/null +++ b/src/plugins/cpptools/cppqtstyleindenter.h @@ -0,0 +1,72 @@ +/************************************************************************** +** +** This file is part of Qt Creator +** +** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +** +** Contact: Nokia Corporation (info@qt.nokia.com) +** +** +** GNU Lesser General Public License Usage +** +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this file. +** Please review the following information to ensure the GNU Lesser General +** Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** Other Usage +** +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** If you have questions regarding the use of this file, please contact +** Nokia at info@qt.nokia.com. +** +**************************************************************************/ + +#ifndef CPPQTSTYLEINDENTER_H +#define CPPQTSTYLEINDENTER_H + +#include "cpptools_global.h" +#include <texteditor/indenter.h> +#include "cppcodestylesettingspage.h" + +namespace TextEditor +{ +class IFallbackPreferences; +} + +namespace CppTools { + +class CPPTOOLS_EXPORT CppQtStyleIndenter : public TextEditor::Indenter +{ +public: + CppQtStyleIndenter(); + virtual ~CppQtStyleIndenter(); + + virtual bool isElectricCharacter(const QChar &ch) const; + virtual void indentBlock(QTextDocument *doc, + const QTextBlock &block, + const QChar &typedChar, + TextEditor::BaseTextEditorWidget *editor); + + virtual void indent(QTextDocument *doc, + const QTextCursor &cursor, + const QChar &typedChar, + TextEditor::BaseTextEditorWidget *editor); + + virtual void setCodeStylePreferences(TextEditor::IFallbackPreferences *preferences); +private: + CppCodeStyleSettings codeStyleSettings() const; + CppCodeStylePreferences *m_cppCodeStylePreferences; +}; + +} // CppTools + +#endif // CPPQTSTYLEINDENTER_H |