Message: 3
Date: Thu, 08 May 2008 12:15:32 -0400
From: "John W. Eaton" <address@hidden>
Subject: Yet another GUI releated thought
To: S?ren Hauberg <address@hidden>
Cc: Octave Maintainers List <address@hidden>
Message-ID: <address@hidden>
Content-Type: text/plain; charset=iso-8859-1
On 7-May-2008, S?ren Hauberg wrote:
| I'm still not convinced that it is necessary to make Octave thread
| safe or similar complicated things to provide a graphical
interface to
| Octave. I don't really understand the input handling in Octave,
so this
| has been developed in a "Hmmm, I wonder what happens if I press this
| button..." style.
| What I have done is the following:
| In 'src/input.cc' I have added:
|
| // TRUE if the GUI is being used
| bool using_gui = true;
|
| Then later (same file) I have changed the function 'gnu_readline'
so it
| reads
|
| if (!using_gui)
| retval = command_editor::readline (s, eof);
| else
| retval = GUI::readline (s, eof);
|
| This is probably the wrong place to do this, but it seems to work
| (haven't tested much, though). The function 'GUI::readline'
returns when
| the user pressed Return in the GUI. The GUI is being started in
| 'octave_main' in 'src/octave.cc' in a separate thread.
If the GUI runs in a separate thread and Octave is not thread safe,
then how do you make the GUI responsive while Octave is off doing some
calculation?