TextEditor: Move CompletionAssistProvider construction

... to the editor factories and pass it to the document, not the widget.
Saves some code, puts fewer objects into the object pool.

Change-Id: Iaaf250af74dc4e0c62700873accbb40ba88b7d9e
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: David Schulz <david.schulz@digia.com>
This commit is contained in:
hjk
2014-10-01 22:39:47 +02:00
parent 5bb8134ec1
commit 1f65111e55
25 changed files with 78 additions and 97 deletions

View File

@@ -79,7 +79,6 @@ bool AndroidPlugin::initialize(const QStringList &arguments, QString *errorMessa
addAutoReleasedObject(new Internal::AndroidDeviceFactory);
addAutoReleasedObject(new Internal::AndroidPotentialKit);
addAutoReleasedObject(new Internal::JavaEditorFactory);
addAutoReleasedObject(new Internal::JavaCompletionAssistProvider);
ProjectExplorer::KitManager::registerKitInformation(new Internal::AndroidGdbServerKitInformation);
// AndroidManifest.xml editor

View File

@@ -40,6 +40,7 @@ namespace Internal {
class JavaCompletionAssistProvider : public TextEditor::CompletionAssistProvider
{
Q_OBJECT
public:
JavaCompletionAssistProvider();
~JavaCompletionAssistProvider();
@@ -53,8 +54,7 @@ private:
mutable QStringList m_keywords;
};
}
}
} // namespace Internal
} // namespace Android
#endif // JAVACOMPLETIONASSISTPROVIDER_H

View File

@@ -48,20 +48,6 @@
namespace Android {
namespace Internal {
//
// JavaEditorWidget
//
class JavaEditorWidget : public TextEditor::TextEditorWidget
{
public:
JavaEditorWidget()
{
setCompletionAssistProvider(ExtensionSystem::PluginManager::getObject<JavaCompletionAssistProvider>());
}
};
//
// JavaDocument
//
@@ -106,12 +92,11 @@ JavaEditorFactory::JavaEditorFactory()
addMimeType(Constants::JAVA_MIMETYPE);
setDocumentCreator([]() { return new JavaDocument; });
setEditorWidgetCreator([]() { return new JavaEditorWidget; });
setAutoCompleterCreator([]() { return new JavaAutoCompleter; });
setGenericSyntaxHighlighter(QLatin1String(Constants::JAVA_MIMETYPE));
setCommentStyle(Utils::CommentDefinition::CppStyle);
setEditorActionHandlers(TextEditor::TextEditorActionHandler::UnCommentSelection);
setCompletionAssistProvider(new JavaCompletionAssistProvider);
}
} // namespace Internal