aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/pythonextensions/pythonextensionsplugin.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/pythonextensions/pythonextensionsplugin.cpp')
-rw-r--r--plugins/pythonextensions/pythonextensionsplugin.cpp24
1 files changed, 7 insertions, 17 deletions
diff --git a/plugins/pythonextensions/pythonextensionsplugin.cpp b/plugins/pythonextensions/pythonextensionsplugin.cpp
index 078a78c..f0ddcc5 100644
--- a/plugins/pythonextensions/pythonextensionsplugin.cpp
+++ b/plugins/pythonextensions/pythonextensionsplugin.cpp
@@ -164,8 +164,10 @@ QString PythonExtensionsPlugin::pythonPackagePath()
void PythonExtensionsPlugin::initializePythonBindings()
{
// Add our custom module directory
- if (extensionDir().exists())
+ if (extensionDir().exists()) {
+ PyUtil::addToSysPath(extensionDir().path().toStdString());
PyUtil::addToSysPath(pythonPackagePath().toStdString());
+ }
// Initialize the Python context and register global QtCreator variable
if (!PyUtil::bindShibokenModuleObject("PythonExtension", "QtCreator")) {
qWarning() << "Python bindings could not be initialized";
@@ -268,23 +270,11 @@ void PythonExtensionsPlugin::initializePythonExtensions()
// Run the extension initialization code
for (const QString &extension : extension_list) {
qDebug() << "Trying to initialize extension" << extension;
-
- QFile extension_main(extension_dir.absolutePath() + "/" + extension + "/main.py");
- if (extension_main.open(QIODevice::ReadOnly)) {
- QTextStream in(&extension_main);
- QString extension_code = in.readAll();
- if (!PyUtil::runScriptWithPath(
- extension_code.toStdString(),
- QString(extension_dir.absolutePath() + "/" + extension).toStdString()
- )) {
- qWarning() << "Failed to initialize extension" << extension;
- Core::MessageManager::write(Constants::MESSAGE_MANAGER_PREFIX + tr("Failed to initialize extension ") + extension);
- } else {
- m_loadedExtensions << extension;
- }
+ if (!PyUtil::runScript("import " + extension.toStdString())) {
+ qWarning() << "Failed to initialize extension" << extension;
+ Core::MessageManager::write(Constants::MESSAGE_MANAGER_PREFIX + tr("Failed to initialize extension ") + extension);
} else {
- qWarning() << "Failed to load main.py for extension" << extension;
- Core::MessageManager::write(Constants::MESSAGE_MANAGER_PREFIX + tr("Failed to load main.py for extension ") + extension);
+ m_loadedExtensions << extension;
}
}