Removed implicit change set and related utility methods.

This commit is contained in:
Erik Verbruggen
2010-06-15 10:22:28 +02:00
parent 4d1602cb0a
commit 54ea41af47
3 changed files with 12 additions and 36 deletions

View File

@@ -93,13 +93,13 @@ void ComponentFromObjectDef::createChanges()
QString imports; QString imports;
UiProgram *prog = semanticInfo().document->qmlProgram(); UiProgram *prog = semanticInfo().document->qmlProgram();
if (prog && prog->imports) { if (prog && prog->imports) {
const int start = position(prog->imports->firstSourceLocation()); const int start = startPosition(prog->imports->firstSourceLocation());
const int end = position(prog->members->member->firstSourceLocation()); const int end = startPosition(prog->members->member->firstSourceLocation());
imports = textOf(start, end); imports = textOf(start, end);
} }
const int start = position(_objDef->firstSourceLocation()); const int start = startPosition(_objDef->firstSourceLocation());
const int end = position(_objDef->lastSourceLocation()); const int end = startPosition(_objDef->lastSourceLocation());
const QString txt = imports + textOf(start, end) + QLatin1String("}\n"); const QString txt = imports + textOf(start, end) + QLatin1String("}\n");
Utils::ChangeSet changes; Utils::ChangeSet changes;

View File

@@ -74,16 +74,18 @@ public:
const QmlJS::AST::SourceLocation loc = member->firstSourceLocation(); const QmlJS::AST::SourceLocation loc = member->firstSourceLocation();
// insert a newline at the beginning of this binding // insert a newline at the beginning of this binding
changes.insert(position(loc), QLatin1String("\n")); changes.insert(startPosition(loc), QLatin1String("\n"));
} }
} }
// insert a newline before the closing brace // insert a newline before the closing brace
changes.insert(position(_objectInitializer->rbraceToken), QLatin1String("\n")); changes.insert(startPosition(_objectInitializer->rbraceToken),
QLatin1String("\n"));
refactoringChanges()->changeFile(fileName(), changes); refactoringChanges()->changeFile(fileName(), changes);
refactoringChanges()->reindent(fileName(), range(position(_objectInitializer->lbraceToken), refactoringChanges()->reindent(fileName(),
position(_objectInitializer->rbraceToken))); range(startPosition(_objectInitializer->lbraceToken),
startPosition(_objectInitializer->rbraceToken)));
} }
@@ -173,31 +175,11 @@ QmlJSRefactoringChanges *QmlJSQuickFixOperation::qmljsRefactoringChanges() const
RefactoringChanges *QmlJSQuickFixOperation::refactoringChanges() const RefactoringChanges *QmlJSQuickFixOperation::refactoringChanges() const
{ return qmljsRefactoringChanges(); } { return qmljsRefactoringChanges(); }
unsigned QmlJSQuickFixOperation::position(const QmlJS::AST::SourceLocation &loc) const unsigned QmlJSQuickFixOperation::startPosition(const QmlJS::AST::SourceLocation &loc) const
{ {
return position(loc.startLine, loc.startColumn); return position(loc.startLine, loc.startColumn);
} }
void QmlJSQuickFixOperation::move(const QmlJS::AST::SourceLocation &loc, int to)
{
move(position(loc.startColumn, loc.startColumn), to);
}
void QmlJSQuickFixOperation::replace(const QmlJS::AST::SourceLocation &loc, const QString &replacement)
{
replace(position(loc.startLine, loc.startColumn), replacement);
}
void QmlJSQuickFixOperation::remove(const QmlJS::AST::SourceLocation &loc)
{
remove(position(loc.startLine, loc.startColumn));
}
void QmlJSQuickFixOperation::copy(const QmlJS::AST::SourceLocation &loc, int to)
{
copy(position(loc.startLine, loc.startColumn), to);
}
QmlJSQuickFixCollector::QmlJSQuickFixCollector() QmlJSQuickFixCollector::QmlJSQuickFixCollector()
{ {
} }

View File

@@ -71,13 +71,7 @@ protected:
QmlJSRefactoringChanges *qmljsRefactoringChanges() const; QmlJSRefactoringChanges *qmljsRefactoringChanges() const;
virtual TextEditor::RefactoringChanges *refactoringChanges() const; virtual TextEditor::RefactoringChanges *refactoringChanges() const;
unsigned position(const QmlJS::AST::SourceLocation &loc) const; unsigned startPosition(const QmlJS::AST::SourceLocation &loc) const;
// token based operations
void move(const QmlJS::AST::SourceLocation &loc, int to);
void replace(const QmlJS::AST::SourceLocation &loc, const QString &replacement);
void remove(const QmlJS::AST::SourceLocation &loc);
void copy(const QmlJS::AST::SourceLocation &loc, int to);
private: private:
SemanticInfo _semanticInfo; SemanticInfo _semanticInfo;