Branch data Line data Source code
1 : : /*************************************************************************** 2 : : qgspythonrunner.cpp 3 : : --------------------- 4 : : begin : May 2011 5 : : copyright : (C) 2011 by Martin Dobias 6 : : email : wonder dot sk at gmail dot com 7 : : *************************************************************************** 8 : : * * 9 : : * This program is free software; you can redistribute it and/or modify * 10 : : * it under the terms of the GNU General Public License as published by * 11 : : * the Free Software Foundation; either version 2 of the License, or * 12 : : * (at your option) any later version. * 13 : : * * 14 : : ***************************************************************************/ 15 : : #include "qgspythonrunner.h" 16 : : #include "qgslogger.h" 17 : : 18 : : QgsPythonRunner *QgsPythonRunner::sInstance = nullptr; 19 : : 20 : : /////////////////////////// 21 : : // static methods 22 : : 23 : 0 : bool QgsPythonRunner::isValid() 24 : : { 25 : 0 : return nullptr != sInstance; 26 : : } 27 : : 28 : 0 : bool QgsPythonRunner::run( const QString &command, const QString &messageOnError ) 29 : : { 30 : 0 : if ( sInstance ) 31 : : { 32 : 0 : QgsDebugMsgLevel( "Running " + command, 3 ); 33 : 0 : return sInstance->runCommand( command, messageOnError ); 34 : : } 35 : : else 36 : : { 37 : 0 : QgsDebugMsg( QStringLiteral( "Unable to run Python command: runner not available!" ) ); 38 : 0 : return false; 39 : : } 40 : 0 : } 41 : : 42 : 0 : bool QgsPythonRunner::eval( const QString &command, QString &result ) 43 : : { 44 : 0 : if ( sInstance ) 45 : : { 46 : 0 : return sInstance->evalCommand( command, result ); 47 : : } 48 : : else 49 : : { 50 : 0 : QgsDebugMsg( QStringLiteral( "Unable to run Python command: runner not available!" ) ); 51 : 0 : return false; 52 : : } 53 : 0 : } 54 : : 55 : 0 : void QgsPythonRunner::setInstance( QgsPythonRunner *runner ) 56 : : { 57 : 0 : delete sInstance; 58 : 0 : sInstance = runner; 59 : 0 : } 60 : :