diff options
Diffstat (limited to 'src/plugins/cpptools/cppmodelmanagersupport.h')
-rw-r--r-- | src/plugins/cpptools/cppmodelmanagersupport.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/plugins/cpptools/cppmodelmanagersupport.h b/src/plugins/cpptools/cppmodelmanagersupport.h index bea1ef58aa..fe592d664d 100644 --- a/src/plugins/cpptools/cppmodelmanagersupport.h +++ b/src/plugins/cpptools/cppmodelmanagersupport.h @@ -33,6 +33,7 @@ #include "cpptools_global.h" +#include <QSharedPointer> #include <QString> namespace TextEditor { class TextDocument; } @@ -45,16 +46,27 @@ class CppCompletionAssistProvider; class CPPTOOLS_EXPORT ModelManagerSupport { public: - virtual ~ModelManagerSupport() = 0; + using Ptr = QSharedPointer<ModelManagerSupport>; - virtual QString id() const = 0; - virtual QString displayName() const = 0; +public: + virtual ~ModelManagerSupport() = 0; virtual CppCompletionAssistProvider *completionAssistProvider() = 0; virtual BaseEditorDocumentProcessor *editorDocumentProcessor( TextEditor::TextDocument *baseTextDocument) = 0; }; +class CPPTOOLS_EXPORT ModelManagerSupportProvider +{ +public: + virtual ~ModelManagerSupportProvider() {} + + virtual QString id() const = 0; + virtual QString displayName() const = 0; + + virtual ModelManagerSupport::Ptr createModelManagerSupport() = 0; +}; + } // CppTools namespace #endif // CPPTOOLS_CPPMODELMANAGERSUPPORT_H |