octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: eliminating GUI event listener class


From: Daniel J Sebald
Subject: Re: eliminating GUI event listener class
Date: Mon, 08 Apr 2013 11:49:07 -0500
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.24) Gecko/20111108 Fedora/3.1.16-1.fc14 Thunderbird/3.1.16

On 04/08/2013 11:23 AM, John W. Eaton wrote:
The only thing we are using the event listener object for is to
handle cleaning up the GUI when we exit from Octave. I tried to
switch that to using signals and slots but was not successful.

Can anyone explain the proper way to exit a Qt application like the
one we have with multiple threads? Where does qtApp->quit need to be
called?

My guess is that you are issuing a signal from inside the Octave executable, which triggers the Octave thread to close, then returning to that code (no longer running) causes the crash. (The event listener approach initiates the closing of the application from the GUI thread side.

There is probably a better way. Simply let Octave thread finish or terminate. There is a signal that is issued by the thread which can be connected to something on the GUI side before the Octave thread is started:

http://qt-project.org/doc/qt-4.8/qthread.html#finished
http://qt-project.org/doc/qt-4.8/qthread.html#terminated

Create a slot that will close the GUI upon getting one (or both?) of those signals. Right now, GUI/IDE isn't saving modified files, so something needs to be fixed there.

Dan


reply via email to

[Prev in Thread] Current Thread [Next in Thread]