diff options
author | Erik Verbruggen <erik.verbruggen@nokia.com> | 2010-07-27 09:29:22 +0200 |
---|---|---|
committer | Erik Verbruggen <erik.verbruggen@nokia.com> | 2010-07-27 09:29:22 +0200 |
commit | c8016e8502d9512b681a4a3b253778e15f8f9570 (patch) | |
tree | 7033388330e19c71b34628940ea684d1b545a732 /src/plugins/qmljseditor/qmljsquickfix.cpp | |
parent | 1162b09af7046f11c6e0b85c9c2ae5e64285cf8b (diff) | |
download | qt-creator-c8016e8502d9512b681a4a3b253778e15f8f9570.tar.gz |
Put the quickfix implementations into a separate file.
Diffstat (limited to 'src/plugins/qmljseditor/qmljsquickfix.cpp')
-rw-r--r-- | src/plugins/qmljseditor/qmljsquickfix.cpp | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/src/plugins/qmljseditor/qmljsquickfix.cpp b/src/plugins/qmljseditor/qmljsquickfix.cpp index b7be83002c..8e536fe195 100644 --- a/src/plugins/qmljseditor/qmljsquickfix.cpp +++ b/src/plugins/qmljseditor/qmljsquickfix.cpp @@ -38,7 +38,6 @@ #include <qmljs/qmljsmodelmanagerinterface.h> -#include <QtGui/QApplication> #include <QtCore/QDebug> using namespace QmlJS; @@ -48,81 +47,6 @@ using namespace QmlJSEditor::Internal; using namespace TextEditor; using TextEditor::RefactoringChanges; -namespace { - -class SplitInitializerOp: public QmlJSQuickFixFactory -{ -public: - virtual QList<QmlJSQuickFixOperation::Ptr> match(const QmlJSQuickFixState &state) - { - QList<QmlJSQuickFixOperation::Ptr> result; - - UiObjectInitializer *objectInitializer = 0; - - const int pos = state.textCursor().position(); - - if (QmlJS::AST::Node *member = state.semanticInfo().declaringMember(pos)) { - if (QmlJS::AST::UiObjectBinding *b = QmlJS::AST::cast<QmlJS::AST::UiObjectBinding *>(member)) { - if (b->initializer->lbraceToken.startLine == b->initializer->rbraceToken.startLine) - objectInitializer = b->initializer; - - } else if (QmlJS::AST::UiObjectDefinition *b = QmlJS::AST::cast<QmlJS::AST::UiObjectDefinition *>(member)) { - if (b->initializer->lbraceToken.startLine == b->initializer->rbraceToken.startLine) - objectInitializer = b->initializer; - } - } - - if (objectInitializer) - result.append(QSharedPointer<QmlJSQuickFixOperation>(new Operation(state, objectInitializer))); - return result; - } - - virtual QString description() const - { - return QApplication::translate("QmlJSEditor::QuickFix", "Split initializer"); - } - -private: - class Operation: public QmlJSQuickFixOperation - { - UiObjectInitializer *_objectInitializer; - - public: - Operation(const QmlJSQuickFixState &state, UiObjectInitializer *objectInitializer) - : QmlJSQuickFixOperation(state, 0) - , _objectInitializer(objectInitializer) - {} - - virtual void createChanges() - { - Q_ASSERT(_objectInitializer != 0); - - Utils::ChangeSet changes; - - for (QmlJS::AST::UiObjectMemberList *it = _objectInitializer->members; it; it = it->next) { - if (QmlJS::AST::UiObjectMember *member = it->member) { - const QmlJS::AST::SourceLocation loc = member->firstSourceLocation(); - - // insert a newline at the beginning of this binding - changes.insert(startPosition(loc), QLatin1String("\n")); - } - } - - // insert a newline before the closing brace - changes.insert(startPosition(_objectInitializer->rbraceToken), - QLatin1String("\n")); - - refactoringChanges()->changeFile(fileName(), changes); - refactoringChanges()->reindent(fileName(), - range(startPosition(_objectInitializer->lbraceToken), - startPosition(_objectInitializer->rbraceToken))); - - } - }; -}; - -} // end of anonymous namespace - QmlJSQuickFixState::QmlJSQuickFixState(TextEditor::BaseTextEditor *editor) : QuickFixState(editor) { @@ -232,9 +156,3 @@ QList<TextEditor::QuickFixFactory *> QmlJSQuickFixCollector::quickFixFactories() results.append(f); return results; } - -void QmlJSQuickFixCollector::registerQuickFixes(ExtensionSystem::IPlugin *plugIn) -{ - plugIn->addAutoReleasedObject(new SplitInitializerOp); - plugIn->addAutoReleasedObject(new ComponentFromObjectDef); -} |