summaryrefslogtreecommitdiffstats
path: root/xembed/tests/qt-common.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'xembed/tests/qt-common.cpp')
-rw-r--r--xembed/tests/qt-common.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/xembed/tests/qt-common.cpp b/xembed/tests/qt-common.cpp
new file mode 100644
index 0000000..9021d7e
--- /dev/null
+++ b/xembed/tests/qt-common.cpp
@@ -0,0 +1,30 @@
+#include "qt-common.h"
+
+#include <qprocess.h>
+
+XEmbedQtChildSite::XEmbedQtChildSite (QWidget *parent, bool active, bool isQt)
+ : QXEmbed (parent)
+{
+ show ();
+
+ QProcess *proc = new QProcess (this);
+
+ proc->setCommunication (QProcess::Stdout);
+
+ if (isQt)
+ proc->addArgument ("./qt-client");
+ else
+ proc->addArgument ("./gtk-client");
+
+ if (active)
+ proc->addArgument (QString::number (winId ()));
+
+ proc->start ();
+
+ if (!active)
+ {
+ QString pid_str = proc->readLineStdout ();
+ embed (pid_str.toLong ());
+ }
+}
+