forked from qt-creator/qt-creator
CppTools: Move GC() call from CppEditorWidget to CppModelManager
There is no need to have that logic in CppEditorWidget. The CppModelManager knows how many editors are open and can therefore call GC() by itself. Change-Id: I2ed4051ad7b8c87615014d73e29291027d49d2ab Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
This commit is contained in:
@@ -322,8 +322,6 @@ struct CanonicalSymbol
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
int numberOfClosedEditors = 0;
|
|
||||||
|
|
||||||
/// Check if previous line is a CppStyle Doxygen Comment
|
/// Check if previous line is a CppStyle Doxygen Comment
|
||||||
bool isPreviousLineCppStyleComment(const QTextCursor &cursor)
|
bool isPreviousLineCppStyleComment(const QTextCursor &cursor)
|
||||||
{
|
{
|
||||||
@@ -565,13 +563,6 @@ CPPEditorWidget::~CPPEditorWidget()
|
|||||||
if (m_modelManager)
|
if (m_modelManager)
|
||||||
m_modelManager->deleteEditorSupport(editor());
|
m_modelManager->deleteEditorSupport(editor());
|
||||||
|
|
||||||
++numberOfClosedEditors;
|
|
||||||
if (numberOfClosedEditors == 5) {
|
|
||||||
if (m_modelManager)
|
|
||||||
m_modelManager->GC();
|
|
||||||
numberOfClosedEditors = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
delete m_completionSupport;
|
delete m_completionSupport;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -610,6 +610,8 @@ QList<ProjectPart::Ptr> CppModelManager::projectPart(const QString &fileName) co
|
|||||||
/// \brief Removes the CppEditorSupport for the closed editor.
|
/// \brief Removes the CppEditorSupport for the closed editor.
|
||||||
void CppModelManager::deleteEditorSupport(TextEditor::BaseTextEditor *textEditor)
|
void CppModelManager::deleteEditorSupport(TextEditor::BaseTextEditor *textEditor)
|
||||||
{
|
{
|
||||||
|
static short numberOfClosedEditors = 0;
|
||||||
|
|
||||||
QTC_ASSERT(textEditor, return);
|
QTC_ASSERT(textEditor, return);
|
||||||
|
|
||||||
if (!isCppEditor(textEditor))
|
if (!isCppEditor(textEditor))
|
||||||
@@ -624,6 +626,13 @@ void CppModelManager::deleteEditorSupport(TextEditor::BaseTextEditor *textEditor
|
|||||||
}
|
}
|
||||||
|
|
||||||
delete editorSupport;
|
delete editorSupport;
|
||||||
|
|
||||||
|
++numberOfClosedEditors;
|
||||||
|
if (numberOfClosedEditors == 5) {
|
||||||
|
numberOfClosedEditors = 0;
|
||||||
|
GC();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CppModelManager::isCppEditor(Core::IEditor *editor) const
|
bool CppModelManager::isCppEditor(Core::IEditor *editor) const
|
||||||
|
Reference in New Issue
Block a user