! \internal */
| 998 | \internal |
| 999 | */ |
| 1000 | bool PluginSpecPrivate::initializePlugin() |
| 1001 | { |
| 1002 | if (hasError) |
| 1003 | return false; |
| 1004 | if (state != PluginSpec::Loaded) { |
| 1005 | if (state == PluginSpec::Initialized) |
| 1006 | return true; |
| 1007 | errorString = QCoreApplication::translate("PluginSpec", "Initializing the plugin failed because state != Loaded"); |
| 1008 | hasError = true; |
| 1009 | return false; |
| 1010 | } |
| 1011 | if (!plugin) { |
| 1012 | errorString = QCoreApplication::translate("PluginSpec", "Internal error: have no plugin instance to initialize"); |
| 1013 | hasError = true; |
| 1014 | return false; |
| 1015 | } |
| 1016 | QString err; |
| 1017 | if (!plugin->initialize(arguments, &err)) { |
| 1018 | errorString = QCoreApplication::translate("PluginSpec", "Plugin initialization failed: %1").arg(err); |
| 1019 | hasError = true; |
| 1020 | return false; |
| 1021 | } |
| 1022 | state = PluginSpec::Initialized; |
| 1023 | return true; |
| 1024 | } |
| 1025 | |
| 1026 | /*! |
| 1027 | \internal |