diff options
Diffstat (limited to 'scriptingplugin.cpp')
| -rw-r--r-- | scriptingplugin.cpp | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/scriptingplugin.cpp b/scriptingplugin.cpp index 46b1394..fc5a24f 100644 --- a/scriptingplugin.cpp +++ b/scriptingplugin.cpp @@ -34,8 +34,10 @@ #include "scriptingconstants.h" #include "scriptmanager.h" #include "runscriptlocatorfilter.h" +#include <coreplugin/messagemanager.h> #include <QtPlugin> +#include <QFileInfo> using namespace Scripting::Internal; @@ -50,13 +52,16 @@ ScriptingPlugin::~ScriptingPlugin() bool ScriptingPlugin::initialize(const QStringList &arguments, QString *errorString) { - Q_UNUSED(arguments) Q_UNUSED(errorString) addAutoReleasedObject(new RunScriptLocatorFilter); m_scriptManager = new ScriptManager(this); + for ( int i=0; i< arguments.count(); ++i ) + if ( arguments[i] == QLatin1String("-execute-script")) + m_startUpScript = arguments[i+1]; + return true; } @@ -67,6 +72,18 @@ void ScriptingPlugin::extensionsInitialized() // plugins that depend on it are completely initialized." } +bool ScriptingPlugin::delayedInitialize() +{ + if ( m_startUpScript.isNull() ) + return false; + if (!QFileInfo(m_startUpScript).exists()) + Core::MessageManager::instance()->printToOutputPane(tr("File %1 doesn't exists").arg(m_startUpScript), + Core::MessageManager::Flash); + else + m_scriptManager->runFile(m_startUpScript); + return true; +} + ExtensionSystem::IPlugin::ShutdownFlag ScriptingPlugin::aboutToShutdown() { // Save settings |
