Re: Framebuffer port, again!


Subject: Re: Framebuffer port, again!
From: Matthew Kirkwood (weejock@ferret.lmh.ox.ac.uk)
Date: Thu Mar 23 2000 - 11:15:05 CST


On Thu, 23 Mar 2000, Paul Rohr wrote:

> >> framebuffer <--> GDK <--> GTK <--> AbiWord, etc.
> >
> >You're missing a layer there. GDK expects to run on top of
> >a windowing system, not a graphics library. You need it to
> >provide the usual GUI things like multiple overlapping
> >windows and event management.

> The general point still holds though, right? All of those services
> need to be provided in some layer between the framebuffer and AbiWord,
> so a more accurate comparison would be:
>
> framebuffer <--> glue1 <--> GDK <--> GTK <--> AbiWord
> framebuffer <--> glue2 <--> AbiWord
>
> The practical question is how much work implementing glue1 saves you
> relative to implementing all of glue2.

glue1 is pretty much done, in a few guises. Microwindows
offers you multiple routes, many of which let you leverage
a lot of existing code.

The two which make most sense to me are:

  framebuffer <--> microwindows' win32 API <--> AbiWord for Win32
  framebuffer <--> microwindows' X-alike API <-->
                <--> GDK <--> GTK <--> AbiWord for GTK

The X-like API of microwin is, I gather, rather less mature
than the Win32 one (especially regarding window management),
so there could be some value in:

  framebuffer <--> microwin / Win32 <--> GDK/GTK (Win32)
                <--> AbiWord for GTK

I think that there's a lot to be said for some of the more
demented combinations, too:

  Win32 <--> GDK <--> GTK <--> Abiword / GTK
  X <--> winelib <--> AbiWord / Win32
  X <--> winelib <--> GDK/GTK (Win32) <--> Abi / GTK

I believe that there is some work ongoing to port winelib
to dumb-framebuffer systems. So the last two could be
less silly than they might seem initially.

> There's quite a large gap to cover between ...
>
> ... what AbiWord expects (services provided by a modern GUI)
> ... what a raw framebuffer provides (almost nothing)
>
> I certainly didn't mean to trivialize what it takes to get GDK running
> on a framebuffer, but I do *hope* it'd save you at least some work
> somewhere that GTK does for you. :-)

<cop-out>
I'm happy enough with X that it won't save me any work at all :-)
</cop-out>

The unifying feature of all of the useful ports (ie. the ones
which introduce support for new platforms) listed above is, as
I see it:

 * the (IMO) most useful way to implement them would involve
   no changes to Abiword beyond portability improvements and
   Makefile alterations

The other factor is that:

 * none of the suggestions above has less than one very-much-
   alpha component

Matthew.



This archive was generated by hypermail 2b25 : Thu Mar 23 2000 - 11:15:09 CST