Generalized the quickfix collector.

This commit is contained in:
Roberto Raggi
2010-06-03 15:15:11 +02:00
parent 3d81ae8574
commit bcf50a0a49
4 changed files with 162 additions and 124 deletions

View File

@@ -48,10 +48,6 @@ namespace CppTools {
namespace CppEditor {
namespace Internal {
class CPPEditor;
class CppQuickFixOperation;
typedef QSharedPointer<CppQuickFixOperation> CppQuickFixOperationPtr;
class CppQuickFixOperation: public TextEditor::QuickFixOperation
{
Q_DISABLE_COPY(CppQuickFixOperation)
@@ -112,7 +108,7 @@ private:
CPlusPlus::AST *_topLevelNode;
};
class CppQuickFixCollector: public TextEditor::IQuickFixCollector
class CppQuickFixCollector: public TextEditor::QuickFixCollector
{
Q_OBJECT
@@ -120,22 +116,8 @@ public:
CppQuickFixCollector();
virtual ~CppQuickFixCollector();
QList<TextEditor::QuickFixOperation::Ptr> quickFixes() const { return _quickFixes; }
virtual TextEditor::ITextEditable *editor() const;
virtual int startPosition() const;
virtual bool supportsEditor(TextEditor::ITextEditable *editor);
virtual bool triggersCompletion(TextEditor::ITextEditable *editor);
virtual int startCompletion(TextEditor::ITextEditable *editor);
virtual void completions(QList<TextEditor::CompletionItem> *completions);
virtual void complete(const TextEditor::CompletionItem &item);
virtual void cleanup();
private:
CppTools::CppModelManagerInterface *_modelManager;
TextEditor::ITextEditable *_editable;
CPPEditor *_editor;
QList<TextEditor::QuickFixOperation::Ptr> _quickFixes;
virtual TextEditor::QuickFixState *initializeCompletion(TextEditor::ITextEditable *editable);
virtual QList<TextEditor::QuickFixOperation::Ptr> quickFixOperations(TextEditor::BaseTextEditor *editor) const;
};
} // end of namespace Internal