summaryrefslogtreecommitdiff
path: root/src/plugins/qmljseditor/qmljsquickfix.cpp
diff options
context:
space:
mode:
authorErik Verbruggen <erik.verbruggen@nokia.com>2010-07-27 09:29:22 +0200
committerErik Verbruggen <erik.verbruggen@nokia.com>2010-07-27 09:29:22 +0200
commitc8016e8502d9512b681a4a3b253778e15f8f9570 (patch)
tree7033388330e19c71b34628940ea684d1b545a732 /src/plugins/qmljseditor/qmljsquickfix.cpp
parent1162b09af7046f11c6e0b85c9c2ae5e64285cf8b (diff)
downloadqt-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.cpp82
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);
-}