Remove TextEditor::RefactoringChanges::editorForFile

This also fixes a bug with setting text cursor in InsertDefOperation in
case of split editors (where the cursor could be set in a non-active
editor on the target file).

Change-Id: I1c011386537bc88a89d4d66bec79dfe06faac3c6
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
This commit is contained in:
Eike Ziller
2013-07-18 09:40:50 +02:00
parent e782e72341
commit 7b4895d7ec
4 changed files with 24 additions and 31 deletions

View File

@@ -56,19 +56,6 @@ RefactoringChanges::RefactoringChanges(RefactoringChangesData *data)
RefactoringChanges::~RefactoringChanges()
{}
BaseTextEditorWidget *RefactoringChanges::editorForFile(const QString &fileName)
{
Core::EditorManager *editorManager = Core::EditorManager::instance();
const QList<Core::IEditor *> editors = editorManager->editorsForFileName(fileName);
foreach (Core::IEditor *editor, editors) {
BaseTextEditorWidget *textEditor = qobject_cast<BaseTextEditorWidget *>(editor->widget());
if (textEditor != 0)
return textEditor;
}
return 0;
}
QList<QPair<QTextCursor, QTextCursor > > RefactoringChanges::rangesToSelections(QTextDocument *document,
const QList<Range> &ranges)
{
@@ -190,7 +177,9 @@ RefactoringFile::RefactoringFile(const QString &fileName, const QSharedPointer<R
, m_editorCursorPosition(-1)
, m_appliedOnce(false)
{
m_editor = RefactoringChanges::editorForFile(fileName);
QList<Core::IEditor *> editors = Core::EditorManager::documentModel()->editorsForFilePath(fileName);
if (!editors.isEmpty())
m_editor = qobject_cast<TextEditor::BaseTextEditorWidget *>(editors.first()->widget());
}
RefactoringFile::~RefactoringFile()
@@ -251,6 +240,11 @@ QString RefactoringFile::fileName() const
return m_fileName;
}
BaseTextEditorWidget *RefactoringFile::editor() const
{
return m_editor;
}
int RefactoringFile::position(unsigned line, unsigned column) const
{
QTC_ASSERT(line != 0, return -1);