diff --git a/src/app/rstats/qgsrstatsconsole.cpp b/src/app/rstats/qgsrstatsconsole.cpp index 5dde656b4959..f3d645fffc86 100644 --- a/src/app/rstats/qgsrstatsconsole.cpp +++ b/src/app/rstats/qgsrstatsconsole.cpp @@ -61,17 +61,11 @@ QgsRStatsConsole::QgsRStatsConsole( QWidget *parent, QgsRStatsRunner *runner ) vl->addWidget( splitter ); -#if 0 - connect( mInputEdit, &QgsInteractiveRWidget::execCommand, this, [ = ]( const QString & command ) + connect( mRunner, &QgsRStatsRunner::commandStarted, this, [ = ]( const QString & command ) { - if ( mRunner->busy() ) - return; - mOutput->append( ( mOutput->text().isEmpty() ? QString() : QString( '\n' ) ) + QStringLiteral( "> " ) + command ); mOutput->moveCursorToEnd(); - mRunner->execCommand( command ); } ); -#endif connect( mRunner, &QgsRStatsRunner::errorOccurred, this, [ = ]( const QString & error ) { diff --git a/src/app/rstats/qgsrstatsrunner.cpp b/src/app/rstats/qgsrstatsrunner.cpp index 5cac97f01fba..c7a8d6bca12e 100644 --- a/src/app/rstats/qgsrstatsrunner.cpp +++ b/src/app/rstats/qgsrstatsrunner.cpp @@ -930,6 +930,8 @@ QgsRStatsRunner::~QgsRStatsRunner() int QgsRStatsRunner::execCommandImpl( const QString &command ) { + emit commandStarted( command ); + // todo result handling... QMetaObject::invokeMethod( mSession.get(), "execCommand", Qt::QueuedConnection, Q_ARG( QString, command ) ); diff --git a/src/app/rstats/qgsrstatsrunner.h b/src/app/rstats/qgsrstatsrunner.h index ce4bdca8ed01..cd6e4719a0f2 100644 --- a/src/app/rstats/qgsrstatsrunner.h +++ b/src/app/rstats/qgsrstatsrunner.h @@ -113,6 +113,7 @@ class QgsRStatsRunner: public QObject, public QgsCodeInterpreter void showMessage( const QString &message ); void errorOccurred( const QString &error ); void busyChanged( bool busy ); + void commandStarted( const QString &command ); void commandFinished( const QVariant &result ); protected: