[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Promising new Qt GUI
From: |
John Swensen |
Subject: |
Re: Promising new Qt GUI |
Date: |
Wed, 6 Apr 2011 15:33:27 -0400 |
On Apr 6, 2011, at 2:40 PM, Michael Goffioul wrote:
> 2011/4/6 John Swensen <address@hidden>:
>> Even though I haven't posted much lately, I have been making progress on a
>> QT solution with a full terminal emulator. I took the Konsole sources and
>> using qtermwidget as an example ripped out everything that made it KDE
>> dependent. You can find a screenshot of the current state at
>> http://imgur.com/tUxrE
>>
>> Just yesterday I incorporated the octave_server class that used for the old
>> GTK+ octavede for interacting with Octave itself and now it is a matter of
>> implementing the Model-View-Controller for each of the subpanels (history,
>> variables, file browser, editor) using the octave_server class as the model
>> portion.
>>
>> I suppose I should get a branch up on Sourceforge for the QT version of
>> OctaveDE so others can take a look.
>
> I've not been communicating that much either, but I've been working
> on the Windows counterpart of this. The main issue is the terminal emulation
> concept, which does not exist in Windows.
>
> One way to work around that
> is by using normal pipes (what I've done with libvte), but the main drawback
> is that the running application does not see a real tty (as in istty()
> returns 0).
> Hacking qtermwidget would result in the same problem.
>
> The other approach is the one taken by Console2. That's what I've done
> recently: extract the relevant code from Console2, wrap it with a QWidget
> and use the resulting "QConsole" component in a Qt app to run octave in
> a separate thread. I think this method is better than running octave over
> pipes.
>
> Michael.
Michael,
I think that as long as your solution is running Octave in a separate thread,
the same octave_server and communications with octave through the readline idle
event loop and my octave_server class should work well. I am also working on
all the other dockable subpanels that I think should work independent of the
console interaction method. Then we just need to work out getting the two
solutions for console interaction into the same source tree: (1) qtermwidget2.0
for Linux/OSX/others and (2) the Console2 method for Windows.
John