Embedded scripting language in Qt application
To give you a small example of what I'm trying to do is a drawing application.
where the function drawCircle(x,y,r,c) should appellate drawCircleCPP(x,y,r,c) in C++(Qt)
So what I'm looking, are some tutorials and more info about how should I implement this, what libraries do you recommend me, cause this is new to me and I need to start from something.
Drawing however is tricky in the way you imagine it.
As Andre say QtScript is the way to go here. Have a thorough read of the "scripting docs":http://doc.qt.nokia.com/latest/scripting.html.
The key to solving this is in the choice of what objects to expose form the C++ side and the environment in which they operate. We have done this for controlling some hardware devices and also for controlling the analysis of data from scripts.
wow! thanks Andre and ZapB. I knew about QtScript but I always taught it can only be used with QtWebkit only. This solves all my problems in a very easy and fast way.
Qt script was there long before webkit entered Qt :-)
It's just that QtScript now happens to use the same JS backend as WebKit. Although this is likely to be replaced with the V8 JS engine in the future.
[quote author="ZapB" date="1301566923"]It's just that QtScript now happens to use the same JS backend as WebKit. Although this is likely to be replaced with the V8 JS engine in the future.[/quote]
It will be interesting to see how V8 will do. Probably will help a lot with large script files where you need to execute a lot of actions.
True. I still try to stick all of the heavy lifting into the exposed C++ objects though. For what I have done so far I have not really had any performance problems with the JS-Core backend. Greater efficiency is always nice though. ;-)
ok. I've read some of the info in the documentation and some examples I think I made a cleat idea about how to implement this, but I have a new question.
I have actually seen that around somewhere, yes.
I think that somebody on the qt-interest mailing list tried to extract the editor from qt-creator as a stand-alone component earlier this year or late last year. Have a search through the archives to see if you can find it.
thanks again Andre and ZapB. So far the best thing that I found is this post on qtcentre: http://www.qtcentre.org/threads/25501-QtScript-script-text-editor-for-Qt-4.4.3-with-Syntax-Highlighter?p=121992#post121992
I'll try and search on qt-interest mailing list . Let me know if you find something.
This is the "thread":http://lists.qt.nokia.com/pipermail/qt-interest/2010-November/029332.html I was thinking of. I have not tried the attached example, though it looks like it should work if you read the rest of that thread.
For some reason the thread seems to be split in the archives. Just search for "Generic Highlighter" in November 2010 to find all parts.
[quote author="ZapB" date="1301577716"]This is the "thread":http://lists.qt.nokia.com/pipermail/qt-interest/2010-November/029332.html I was thinking of. I have not tried the attached example, though it looks like it should work if you read the rest of that thread.
For some reason the thread seems to be split in the archives. Just search for "Generic Highlighter" in November 2010 to find all parts.[/quote]
Thanks again. I found something. It gave me a few errors. I will try later and see if I can manage to make it work. For those who are interested in the source code can be found in
Cool thanks for that Tobias. That will come in handy.