aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/sqlitestudiocli/clicommandexecutor.cpp
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2014-12-06 17:33:25 -0500
committerLibravatarUnit 193 <unit193@ubuntu.com>2014-12-06 17:33:25 -0500
commit7167ce41b61d2ba2cdb526777a4233eb84a3b66a (patch)
treea35c14143716e1f2c98f808c81f89426045a946f /SQLiteStudio3/sqlitestudiocli/clicommandexecutor.cpp
Imported Upstream version 2.99.6upstream/2.99.6
Diffstat (limited to 'SQLiteStudio3/sqlitestudiocli/clicommandexecutor.cpp')
-rw-r--r--SQLiteStudio3/sqlitestudiocli/clicommandexecutor.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/SQLiteStudio3/sqlitestudiocli/clicommandexecutor.cpp b/SQLiteStudio3/sqlitestudiocli/clicommandexecutor.cpp
new file mode 100644
index 0000000..6a3072e
--- /dev/null
+++ b/SQLiteStudio3/sqlitestudiocli/clicommandexecutor.cpp
@@ -0,0 +1,24 @@
+#include "clicommandexecutor.h"
+#include "commands/clicommand.h"
+
+CliCommandExecutor::CliCommandExecutor(QObject *parent) :
+ QObject(parent)
+{
+}
+
+void CliCommandExecutor::execCommand(CliCommand* cmd)
+{
+ connect(cmd, SIGNAL(execComplete()), this, SLOT(asyncExecutionComplete()));
+ cmd->execute();
+ if (!cmd->isAsyncExecution())
+ {
+ delete cmd;
+ emit executionComplete();
+ }
+}
+
+void CliCommandExecutor::asyncExecutionComplete()
+{
+ sender()->deleteLater();
+ emit executionComplete();
+}