[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Release plans for the GUI
From: |
John Swensen |
Subject: |
Re: Release plans for the GUI |
Date: |
Fri, 9 Sep 2011 10:06:29 -0400 |
On Sep 9, 2011, at 3:36 AM, Michael Goffioul wrote:
> On Fri, Sep 9, 2011 at 7:01 AM, Jacob Dawid <address@hidden> wrote:
>> Hello everybody,
>> I just came back from the funeral of my grandfather, so I had no time to
>> reply earlier.
>
> Sorry about that.
>
>> The biggest problem with the GUI is the terminal thing. The reason I threw
>> out Konsole is that it's drawing itself, which is not a performance issue
>> but it breaks the overall look and feel of the application and is quite
>> buggy when losing and gaining focus (sometimes it did not redraw, sometimes
>> it did). Also, the solution to use a terminal emulation is ugly and can only
>> be a temporary one. We just use it because we have no other option that
>> works left over at the moment.
>
> I disagree. IMO the reasons we (should) use a terminal emulation are:
> 1) it's an off-the-shelf component that we don't have to re-develop; and we
> can easily benefit from upstream bug fixes and improvements
> 2) it provides exactly the same behavior, whether you start octave in
> a terminal or withing a full blown GUI
> So the choice of a terminal emulation is not because there's nothing else
> we can use, it's intentional.
>
Also, I just took a quick look through the source code in the
gnu-ocatve/gui/src/terminal directory and realized that somewhere along the
line the KPty.h, KPty.cpp, KPtyDevice.h and KPtyDevice.cpp has been modified
from the original Konsole sources to remove everything that made it platform
independent for Linux, BSDs, OSX, Solaris, etc. Now it may only compile and
work on Linux with glibc. It definitely doesn't compile for OSX and I would
have to go back in and add in all the platform depending #define's that were
already there to handle the different platforms.
My opinion based on past experience trying to implement an Octave GUI, which
doesn't matter a whole lot since I haven't been contributing much lately, is
that a lot of smart people have "solved" the console problem in a platform
independent way (excluding Window for the time being). If Jacob wants to
re-implement this to scratch the itch that is learning about how UNIX PTYs work
and how the guts of terminal emulation works, then that is his prerogative. On
the other hand, if the intent is to have something that works across a wide
variety of platforms then the Konsole borrowing is definitely the way to go. In
the long run, I think that if Jacob continues to go down the route of starting
with a PTY and then implementing a simple text widget to interact with the PTY
and adding features as he goes, he will eventually converge to a full terminal
emulator.
John
- Re: Release plans for the GUI, (continued)
- Re: Release plans for the GUI, Mark Everitt, 2011/09/29
- Re: Release plans for the GUI, Andriy Shinkarchuck, 2011/09/05
- Re: Release plans for the GUI, Richard Crozier, 2011/09/09
- Re: Release plans for the GUI, John Swensen, 2011/09/09
- Re: Release plans for the GUI, Jacob Dawid, 2011/09/09
- Re: Release plans for the GUI, Júlio Hoffimann, 2011/09/09
- Re: Release plans for the GUI, Richard Crozier, 2011/09/09
- Re: Release plans for the GUI, Jarno Rajahalme, 2011/09/09
- Re: Release plans for the GUI, John Swensen, 2011/09/09
- Re: Release plans for the GUI, Michael Goffioul, 2011/09/09
- Re: Release plans for the GUI, Jacob Dawid, 2011/09/09
- Re: Release plans for the GUI, John Swensen, 2011/09/10