Hi!
In einigen Anwendungen, die in C++/QT geschrieben sind, hatte ich gesehen, dass es möglich ist Python-Plugins hinzuzufügen.
So können bei einer Mathe/3D Software (KFandango) Python-Scripts geschrieben werden, die mathematische Gleichungen enthalten sind. Diese werden dann geladen & ausgeführt und die Gleichungen visualisiert.
Ich möchte lediglich in ein simples Programm Python-Support einbauen , sodass ich z.B. Grundlegende Klassen erstelle und diese dann per Python-Skript nutzen kann. kann mir jemand vielleicht Tips oder direkten Source geben?
cu & thx Turbo24prg
On Sat, Nov 15, 2003 at 04:19:52PM +0100, Bastian Müller wrote:
Hi!
Hi Bastian,
In einigen Anwendungen, die in C++/QT geschrieben sind, hatte ich gesehen, dass es m??glich ist Python-Plugins hinzuzuf??gen.
Yepp
So k??nnen bei einer Mathe/3D Software (KFandango) Python-Scripts geschrieben werden, die mathematische Gleichungen enthalten sind. Diese werden dann geladen & ausgef??hrt und die Gleichungen visualisiert.
Ich m??chte lediglich in ein simples Programm Python-Support einbauen , sodass ich z.B. Grundlegende Klassen erstelle und diese dann per Python-Skript nutzen kann. kann mir jemand vielleicht Tips oder direkten Source geben?
Für den Weg Qt/KDE in Python ist sicher PyKDE einen Blick wert http://www.riverbankcomputing.co.uk/pykde/docs/index.html
An sonsten: http://www.soffernet.com/jaime/fandango/kfandango-doc.html#id2766674
Ciao, Tobias
Ich glaube das ich hier falsch verstanden wurde. Der Link für PyKDE ist doch dafür gut, QT/KDE-GUI's in Python zu schreiben?
Ich möchte aber Funktionen in C++ schreiben (Test::Test) und eine Funktion einbauen die ein Python-Skript lädt und es ausführt.
cu & thx Turbo24prg
Am 18. November 2003 schrieb Bastian Müller:
Ich glaube das ich hier falsch verstanden wurde. Der Link fÃ?r PyKDE ist doch dafÃ?r gut, QT/KDE-GUI's in Python zu schreiben?
Kannst du bitte deine Umlaute in Ordnung bringen?
Kennst du Boost.Python: http://www.boost.org/libs/python/doc/index.html ?
Torsten
On Tue, Nov 18, 2003 at 08:31:59PM +0100, Bastian Müller wrote: Hi Bastian,
Ich glaube das ich hier falsch verstanden wurde. Der Link f??r PyKDE ist doch daf??r gut, QT/KDE-GUI's in Python zu schreiben?
Ich m??chte aber Funktionen in C++ schreiben (Test::Test) und eine Funktion einbauen die ein Python-Skript l??dt und es ausf??hrt.
Ja, aber in dem Python-Script möchte man ja evtl. auf Resourcen/Daten des Programms zugreifen, und dafür ist dann PyQt/KDE gut.
Ciao, Tobias
On Saturday 15 November 2003 16:19, Bastian Müller wrote:
Hi!
Hi, Zeichensatz-Vernachlässiger :)
Ich möchte lediglich in ein simples Programm Python-Support einbauen , sodass ich z.B. Grundlegende Klassen erstelle und diese dann per Python-Skript nutzen kann. kann mir jemand vielleicht Tips oder direkten Source geben?
Es sind zwei verschiedene Konzepte, die hier zusammenspielen: - Erweitern (extending) - Einbetten (embedding)
Erweitern heißt, daß aus einer C- oder C++-Bibliothek eine Python-Bibliothek (Wrapper) wird. In C ist das nahezu trivial, jeder Funktion ist eine Python-Methode zugeordnet, in C++ ähnlich, aber schon schwieriger.
Einbetten ist nun das Ausführen von Skripten aus einer Anwendung heraus. Meist wird nur eine Methode aufgerufen, manchmal auch ein komplettes Skript, und nachher bekommt die Anwendung wieder die Kontrolle zurück. Wenn diese Skripte nun die Python-Klassen verwenden, die durch obiges Erweitern erstellt wurden, hast du einen Ansatz für eine skriptfähige Applikation.
Als Quelltextbeispiel kann ich mal auf meine Projekte verweisen, allerdings sind dort beide Konzepte getrennt behandelt.
Erweitern: http://cvs.sourceforge.net/viewcvs.py/ggz/playground/ggz-python/pyggzmod/src... pyggzmod_init.c?rev=1.3&view=auto
Einbinden (zusammen mit Perl und Ruby): http://cvs.sourceforge.net/viewcvs.py/ggz/grubby/grubby/modules/ embed.c?rev=1.10&view=auto
Die Dokumentation von python.org ist dazu eigentlich auch ausreichend, nur das Hoch- und Runterzählen von Referenzen kann eventuell Kopfzerbrechen bereiten.
Josef (An PyKamikaze bastelnd und es fast fertig habend...)
On Sat, Nov 15, 2003 at 04:19:52PM +0100, Bastian Müller wrote:
Hi!
In einigen Anwendungen, die in C++/QT geschrieben sind, hatte ich gesehen, dass es m??glich ist Python-Plugins hinzuzuf??gen.
Das wichtigste sollte in der online Dokumentation stehen: "Extending and Embedding the Python Interpreter" http://www.python.org/doc/ext/ext.html
Gruß, Thomas
lug-dd@mailman.schlittermann.de