forked from qt-creator/qt-creator
		
	TextEditor: Dissolve QuickFixAssistProcessor
... into QuickFixAssistProcessor and QmlJSQuickFixAssistProcessor, by essentially duplicating the class, but moving the actual work to a new a GenericProposal::createProposal(...QuickFixOperations...) Less indirection, and less code in total. Change-Id: I2f8cba970bf587c9cbf04321269a60ed51bfae2a Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
		@@ -30,6 +30,9 @@
 | 
			
		||||
//temp
 | 
			
		||||
#include "qmljsquickfix.h"
 | 
			
		||||
 | 
			
		||||
#include <texteditor/codeassist/genericproposal.h>
 | 
			
		||||
#include <texteditor/codeassist/iassistprocessor.h>
 | 
			
		||||
 | 
			
		||||
#include <utils/algorithm.h>
 | 
			
		||||
 | 
			
		||||
using namespace QmlJSTools;
 | 
			
		||||
@@ -63,6 +66,25 @@ QmlJSRefactoringFilePtr QmlJSQuickFixAssistInterface::currentFile() const
 | 
			
		||||
    return m_currentFile;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ---------------------------
 | 
			
		||||
// QmlJSQuickFixAssistProcessor
 | 
			
		||||
// ---------------------------
 | 
			
		||||
class QmlJSQuickFixAssistProcessor : public IAssistProcessor
 | 
			
		||||
{
 | 
			
		||||
    IAssistProposal *perform(const AssistInterface *interface) override
 | 
			
		||||
    {
 | 
			
		||||
        QSharedPointer<const AssistInterface> assistInterface(interface);
 | 
			
		||||
 | 
			
		||||
        QuickFixOperations quickFixes;
 | 
			
		||||
 | 
			
		||||
        for (QuickFixFactory *factory : QuickFixFactory::allQuickFixFactories())
 | 
			
		||||
            if (qobject_cast<QmlJSQuickFixFactory *>(factory) != nullptr)
 | 
			
		||||
                factory->matchingOperations(assistInterface, quickFixes);
 | 
			
		||||
 | 
			
		||||
        return GenericProposal::createProposal(interface, quickFixes);
 | 
			
		||||
    }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
// ---------------------------
 | 
			
		||||
// QmlJSQuickFixAssistProvider
 | 
			
		||||
// ---------------------------
 | 
			
		||||
@@ -80,7 +102,7 @@ IAssistProvider::RunType QmlJSQuickFixAssistProvider::runType() const
 | 
			
		||||
 | 
			
		||||
IAssistProcessor *QmlJSQuickFixAssistProvider::createProcessor() const
 | 
			
		||||
{
 | 
			
		||||
    return new QuickFixAssistProcessor(QmlJSQuickFixFactory::allQuickFixFactories());
 | 
			
		||||
    return new QmlJSQuickFixAssistProcessor;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
} // namespace QmlJSEditor
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user