AppTestGui.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #include "PreCompiled.h"
00025 #ifndef _PreComp_
00026 # include <Python.h>
00027 #endif
00028
00029 #include "UnitTestPy.h"
00030 #include "UnitTestImp.h"
00031 #include "qrc_Test.cpp"
00032
00033 #include <Gui/Language/Translator.h>
00034 #include <Base/Console.h>
00035
00036 class UnitTestModule : public Py::ExtensionModule<UnitTestModule>
00037 {
00038
00039 public:
00040 UnitTestModule() : Py::ExtensionModule<UnitTestModule>("QtUnitGui")
00041 {
00042 TestGui::UnitTestDialogPy::init_type();
00043 add_varargs_method("UnitTest",&UnitTestModule::new_UnitTest,"UnitTest");
00044 add_varargs_method("setTest",&UnitTestModule::setTest,"setTest");
00045 add_varargs_method("addTest",&UnitTestModule::addTest,"addTest");
00046 initialize("This module is the QtUnitGui module");
00047 }
00048
00049 virtual ~UnitTestModule() {}
00050
00051 private:
00052 Py::Object new_UnitTest(const Py::Tuple& args)
00053 {
00054 return Py::asObject(new TestGui::UnitTestDialogPy());
00055 }
00056 Py::Object setTest(const Py::Tuple& args)
00057 {
00058 char *pstr=0;
00059 if (!PyArg_ParseTuple(args.ptr(), "|s", &pstr))
00060 throw Py::Exception();
00061
00062 TestGui::UnitTestDialog* dlg = TestGui::UnitTestDialog::instance();
00063 if (pstr)
00064 dlg->setUnitTest(QString::fromLatin1(pstr));
00065 dlg->show();
00066 dlg->raise();
00067 return Py::None();
00068 }
00069 Py::Object addTest(const Py::Tuple& args)
00070 {
00071 char *pstr=0;
00072 if (!PyArg_ParseTuple(args.ptr(), "|s", &pstr))
00073 throw Py::Exception();
00074
00075 TestGui::UnitTestDialog* dlg = TestGui::UnitTestDialog::instance();
00076 if (pstr)
00077 dlg->addUnitTest(QString::fromLatin1(pstr));
00078 dlg->show();
00079 dlg->raise();
00080 return Py::None();
00081 }
00082 };
00083
00084
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116
00117
00118
00119 void loadTestResource()
00120 {
00121
00122 Q_INIT_RESOURCE(Test);
00123 Gui::Translator::instance()->refresh();
00124 }
00125
00126
00127 extern "C" {
00128 void AppTestGuiExport initQtUnitGui()
00129 {
00130
00131
00132 (void)new UnitTestModule;
00133
00134
00135
00136
00137
00138 Base::Console().Log("Loading GUI of Test module... done\n");
00139
00140
00141 loadTestResource();
00142 return;
00143 }
00144
00145 }