##// END OF EJS Templates
fixed example for 2.0 API...
florianlink -
r151:a5a8aa72950d
parent child
Show More
1 NO CONTENT: modified file
NO CONTENT: modified file
@@ -1,14 +1,14
1 from PythonQt import CustomObject
1 from PythonQt.example import CustomObject
2
2
3 # create a new object
3 # create a new object
4 custom = CustomObject("John","Doe")
4 custom = CustomObject("John","Doe")
5
5
6 # print the methods available
6 # print the methods available
7 print dir(custom)
7 print dir(custom)
8
8
9 # set a name
9 # set a name
10 custom.setFirstName("Mike")
10 custom.setFirstName("Mike")
11 custom.setLastName("Michels")
11 custom.setLastName("Michels")
12
12
13 # get the name
13 # get the name
14 print custom.firstName() + " " + custom.lastName();
14 print custom.firstName() + " " + custom.lastName();
@@ -1,69 +1,69
1 /*
1 /*
2 *
2 *
3 * Copyright (C) 2010 MeVis Medical Solutions AG All Rights Reserved.
3 * Copyright (C) 2010 MeVis Medical Solutions AG All Rights Reserved.
4 *
4 *
5 * This library is free software; you can redistribute it and/or
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
8 * version 2.1 of the License, or (at your option) any later version.
9 *
9 *
10 * This library is distributed in the hope that it will be useful,
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
13 * Lesser General Public License for more details.
14 *
14 *
15 * Further, this software is distributed without any warranty that it is
15 * Further, this software is distributed without any warranty that it is
16 * free of the rightful claim of any third person regarding infringement
16 * free of the rightful claim of any third person regarding infringement
17 * or the like. Any license provided herein, whether implied or
17 * or the like. Any license provided herein, whether implied or
18 * otherwise, applies only to this software file. Patent licenses, if
18 * otherwise, applies only to this software file. Patent licenses, if
19 * any, provided herein do not apply to combinations of this program with
19 * any, provided herein do not apply to combinations of this program with
20 * other software, or any other product whatsoever.
20 * other software, or any other product whatsoever.
21 *
21 *
22 * You should have received a copy of the GNU Lesser General Public
22 * You should have received a copy of the GNU Lesser General Public
23 * License along with this library; if not, write to the Free Software
23 * License along with this library; if not, write to the Free Software
24 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25 *
25 *
26 * Contact information: MeVis Medical Solutions AG, Universitaetsallee 29,
26 * Contact information: MeVis Medical Solutions AG, Universitaetsallee 29,
27 * 28359 Bremen, Germany or:
27 * 28359 Bremen, Germany or:
28 *
28 *
29 * http://www.mevis.de
29 * http://www.mevis.de
30 *
30 *
31 */
31 */
32
32
33 //----------------------------------------------------------------------------------
33 //----------------------------------------------------------------------------------
34 /*!
34 /*!
35 // \file PyGuiExample.cpp
35 // \file PyGuiExample.cpp
36 // \author Florian Link
36 // \author Florian Link
37 // \author Last changed by $Author: florian $
37 // \author Last changed by $Author: florian $
38 // \date 2007-04
38 // \date 2007-04
39 */
39 */
40 //----------------------------------------------------------------------------------
40 //----------------------------------------------------------------------------------
41
41
42 #include "PythonQt.h"
42 #include "PythonQt.h"
43 #include "gui/PythonQtScriptingConsole.h"
43 #include "gui/PythonQtScriptingConsole.h"
44 #include "CustomObject.h"
44 #include "CustomObject.h"
45
45
46 #include <QApplication>
46 #include <QApplication>
47
47
48 int main( int argc, char **argv )
48 int main( int argc, char **argv )
49 {
49 {
50 QApplication qapp(argc, argv);
50 QApplication qapp(argc, argv);
51
51
52 PythonQt::init(PythonQt::IgnoreSiteModule | PythonQt::RedirectStdOut);
52 PythonQt::init(PythonQt::IgnoreSiteModule | PythonQt::RedirectStdOut);
53
53
54 PythonQtObjectPtr mainContext = PythonQt::self()->getMainModule();
54 PythonQtObjectPtr mainContext = PythonQt::self()->getMainModule();
55 PythonQtScriptingConsole console(NULL, mainContext);
55 PythonQtScriptingConsole console(NULL, mainContext);
56
56
57 // register the type with QMetaType
57 // register the type with QMetaType
58 qRegisterMetaType<CustomObject>("CustomObject");
58 qRegisterMetaType<CustomObject>("CustomObject");
59 // add a wrapper object for the new variant type
59 // add a wrapper object for the new variant type
60 PythonQt::self()->registerCPPClass("CustomObject","","", PythonQtCreateObject<CustomObjectWrapper>);
60 PythonQt::self()->registerCPPClass("CustomObject","","example", PythonQtCreateObject<CustomObjectWrapper>);
61
61
62 mainContext.evalFile(":example.py");
62 mainContext.evalFile(":example.py");
63
63
64 console.appendCommandPrompt();
64 console.appendCommandPrompt();
65 console.show();
65 console.show();
66
66
67 return qapp.exec();
67 return qapp.exec();
68 }
68 }
69
69
General Comments 0
You need to be logged in to leave comments. Login now