CppEditor: Pimpl CppEditorWidget

...to cut some build depedencies.

Change-Id: I11b7e5f3c12b6821d0825a94ad74a7e4b69c4b12
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
This commit is contained in:
Nikolai Kosjar
2014-05-20 09:24:48 -04:00
parent 870e58bfd1
commit fd5da10b66
4 changed files with 366 additions and 336 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -31,35 +31,33 @@
#define CPPEDITOR_H #define CPPEDITOR_H
#include "cppeditordocument.h" #include "cppeditordocument.h"
#include "cppfollowsymbolundercursor.h"
#include "cppfunctiondecldeflink.h" #include "cppfunctiondecldeflink.h"
#include <cpptools/commentssettings.h> #include <cpptools/commentssettings.h>
#include <cpptools/cppsemanticinfo.h>
#include <texteditor/basetexteditor.h> #include <texteditor/basetexteditor.h>
#include <texteditor/semantichighlighter.h>
#include <utils/qtcoverride.h> #include <utils/qtcoverride.h>
#include <utils/uncommentselection.h> #include <utils/uncommentselection.h>
#include <QFutureWatcher> #include <QScopedPointer>
#include <QModelIndex>
QT_BEGIN_NAMESPACE
class QSortFilterProxyModel;
class QToolButton;
QT_END_NAMESPACE
namespace CPlusPlus { namespace CPlusPlus {
class OverviewModel; class OverviewModel;
class Symbol; class Symbol;
} }
namespace Utils { class TreeViewComboBox; } namespace CppTools {
class SemanticInfo;
}
namespace CppEditor { namespace CppEditor {
namespace Internal { namespace Internal {
class CPPEditorWidget; class CPPEditorWidget;
class CPPEditorWidgetPrivate;
class FollowSymbolUnderCursor;
class CPPEditor : public TextEditor::BaseTextEditor class CPPEditor : public TextEditor::BaseTextEditor
{ {
@@ -204,44 +202,8 @@ private:
bool handleDocumentationComment(QKeyEvent *e); bool handleDocumentationComment(QKeyEvent *e);
bool isStartOfDoxygenComment(const QTextCursor &cursor) const; bool isStartOfDoxygenComment(const QTextCursor &cursor) const;
QPointer<CppTools::CppModelManagerInterface> m_modelManager; private:
QScopedPointer<CPPEditorWidgetPrivate> d;
CPPEditorDocument *m_cppEditorDocument;
Utils::TreeViewComboBox *m_outlineCombo;
CPlusPlus::OverviewModel *m_outlineModel;
QModelIndex m_outlineModelIndex;
QSortFilterProxyModel *m_proxyModel;
QAction *m_sortAction;
QTimer *m_updateOutlineTimer;
QTimer *m_updateOutlineIndexTimer;
QTimer *m_updateUsesTimer;
QTimer *m_updateFunctionDeclDefLinkTimer;
QHash<int, QTextCharFormat> m_semanticHighlightFormatMap;
QList<QTextEdit::ExtraSelection> m_renameSelections;
int m_currentRenameSelection;
static const int NoCurrentRenameSelection = -1;
bool m_inRename, m_inRenameChanged, m_firstRenameChange;
QTextCursor m_currentRenameSelectionBegin;
QTextCursor m_currentRenameSelectionEnd;
CppTools::SemanticInfo m_lastSemanticInfo;
QList<TextEditor::QuickFixOperation::Ptr> m_quickFixes;
QScopedPointer<QFutureWatcher<TextEditor::HighlightingResult> > m_highlightWatcher;
unsigned m_highlightRevision; // the editor revision that requested the highlight
QScopedPointer<QFutureWatcher<QList<int> > > m_referencesWatcher;
unsigned m_referencesRevision;
int m_referencesCursorPosition;
FunctionDeclDefLinkFinder *m_declDefLinkFinder;
QSharedPointer<FunctionDeclDefLink> m_declDefLink;
CppTools::CommentsSettings m_commentsSettings;
QScopedPointer<FollowSymbolUnderCursor> m_followSymbolUnderCursor;
QToolButton *m_preprocessorButton;
}; };
} // namespace Internal } // namespace Internal

View File

@@ -33,6 +33,7 @@
#include "cppeditor.h" #include "cppeditor.h"
#include <coreplugin/editormanager/editormanager.h> #include <coreplugin/editormanager/editormanager.h>
#include <cpptools/cppsemanticinfo.h>
#include <cplusplus/CppDocument.h> #include <cplusplus/CppDocument.h>
#include <QDir> #include <QDir>

View File

@@ -31,6 +31,7 @@
#include "cppeditorplugin.h" #include "cppeditorplugin.h"
#include "cppeditortestcase.h" #include "cppeditortestcase.h"
#include "cppelementevaluator.h" #include "cppelementevaluator.h"
#include "cppfollowsymbolundercursor.h"
#include "cppvirtualfunctionassistprovider.h" #include "cppvirtualfunctionassistprovider.h"
#include "cppvirtualfunctionproposalitem.h" #include "cppvirtualfunctionproposalitem.h"