Add "delayedInitialize" feature to plugin manager.

And use it for some of the plugins. It avoids the plugins to
do the timing on their own, and actually adds guarantees about
the order the delayed initialization is done.

Change-Id: I88ad9b46b24b82c91509774170fe0e7e99e88e4b
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
This commit is contained in:
Eike Ziller
2012-02-02 10:47:33 +01:00
parent 8a25c5352b
commit de290e0341
16 changed files with 124 additions and 32 deletions

View File

@@ -46,6 +46,10 @@ QT_FORWARD_DECLARE_CLASS(QUrl)
namespace Core {
struct HelpManagerPrivate;
namespace Internal {
class CorePlugin;
}
class CORE_EXPORT HelpManager : public QObject
{
Q_OBJECT
@@ -91,13 +95,11 @@ signals:
void collectionFileChanged();
void helpRequested(const QUrl &url);
private slots:
void delayedSetupHelpManager();
void setupHelpManager();
private:
void setupHelpManager();
void verifyDocumenation();
HelpManagerPrivate *d;
friend class Internal::CorePlugin; // setupHelpManager
};
} // Core