On 10.10.2009, at 19:42, Piotr Korzuszek wrote:
Looks like running Qt before Felix and Felix in separate thread
works good
enough :-)
Yep,
the only requirement, is to call exec in the main thread. Everything
else is allowed (of course).
Regards,
Clement
Thanks for your help!
On Fri, Oct 9, 2009 at 10:22 PM, Clement Escoffier <
[email protected]> wrote:
On 09.10.2009, at 21:54, Piotr Korzuszek wrote:
Are you sure? Because I'm just running Qt in start() without any
error.
Well, it might be fuzzy and the event dispatcher (GUI Thread for
Jambi)
needs to be the main thread. I did that for Windows without a lot
of issues,
but on Mac it was terrible...
Anyway I have an idea: to use this
http://felix.apache.org/site/apache-felix-framework-launching-and-embedding.htmlto
run Qt init before Felix and then load other bundles, but I don't
know
how to make them to access Qt classes yet :-), neither if this is
really a
good idea.
That's what I did. Initializing QT. Starting Felix, Provisioning
all the
bundles, and calling exec.
Regards,
Clement
On Fri, Oct 9, 2009 at 9:39 PM, Clement Escoffier <
[email protected]> wrote:
On 09.10.2009, at 21:29, Piotr Korzuszek wrote:
Hi Clement, thanks for reply,
Sorry, but I knew that already. The thing is that when I put
QApplication.init() and QApplication.exec() in bundle start()
method
then
I
cannot do anything in Felix console after running that bundle,
because
start() cannot return.
I've tried to run QApplication.init() in Main thread and
QApplication.exec()
in other thread but this only results in this:
---
QApplication::exec: Must be called from the main thread
---
Or maybe I misunderstood you?
No, Felix does not start bundle in the main thread (it is
absolutely not
required). So, it will not work if you try to call such method in
the
start
method of a bundle. It has to be in the main thread : i.e.
initialized
externally.
Regards,
Clement
On Fri, Oct 9, 2009 at 8:23 PM, Clement Escoffier <
[email protected]> wrote:
On 09.10.2009, at 19:54, Piotr Korzuszek wrote:
Hello,
I'm trying to make Qt and Felix work together. The problem is
that
when
I
run the Qt main loop (QApplication.exec()) the main thread is
locked
until
the GUI is closed (so Felix is too).
I cannot put this in seperate thread because it complains to
me about
not
being in the main thread. On the Qt forum developers motivates
this
behavior
by Mac OS X GUI system that must be handled in the main thread.
Any ideas how to solve this?
Hi,
QTBambi has to be initialized in the main thread. So, the init
method
has
to be called in the Main thread ( the thread executing the main
method).
However, on Mac, you must set the -XstartOnFirstThread to
execute the
main
method in the Main thread.
Regards,
Clement
--
Pozdrawiam
Piotr Korzuszek
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
--
Pozdrawiam
Piotr Korzuszek
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
--
Pozdrawiam
Piotr Korzuszek
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
--
Pozdrawiam
Piotr Korzuszek
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]