QuickFix: Migrate to a nicer API for cross-file quick fixes.

This commit is contained in:
Christian Kamm
2010-08-12 13:46:18 +02:00
parent ca5076e5ae
commit 0355e37e53
17 changed files with 202 additions and 292 deletions

View File

@@ -75,8 +75,6 @@ unsigned QmlJSQuickFixState::startPosition(const QmlJS::AST::SourceLocation &loc
QmlJSQuickFixOperation::QmlJSQuickFixOperation(const QmlJSQuickFixState &state, int priority)
: QuickFixOperation(priority)
, _state(state)
, _refactoringChanges(new QmlJSRefactoringChanges(ExtensionSystem::PluginManager::instance()->getObject<QmlJS::ModelManagerInterface>(),
state.snapshot()))
{
}
@@ -84,6 +82,15 @@ QmlJSQuickFixOperation::~QmlJSQuickFixOperation()
{
}
void QmlJSQuickFixOperation::perform()
{
QmlJSRefactoringChanges refactoring(ExtensionSystem::PluginManager::instance()->getObject<QmlJS::ModelManagerInterface>(),
_state.snapshot());
TextEditor::RefactoringFile current = refactoring.file(fileName());
performChanges(&current, &refactoring);
}
const QmlJSQuickFixState &QmlJSQuickFixOperation::state() const
{
return _state;
@@ -94,11 +101,6 @@ QString QmlJSQuickFixOperation::fileName() const
return state().document()->fileName();
}
QmlJSRefactoringChanges *QmlJSQuickFixOperation::refactoringChanges() const
{
return _refactoringChanges.data();
}
QmlJSQuickFixFactory::QmlJSQuickFixFactory()
{
}