Re: PicoGUI1 and 2
Micah Dowty <[email protected]>
| Newsgroups | gmane.comp.video.picogui.devel |
|---|---|
| Message-ID | <[email protected]> |
On Thu, Apr 17, 2003 at 03:02:46PM +0100, Aidan Delaney wrote:
> > There's no way overlapping windows can be properly implemented in pg1
> > without rewriting the rendering engine.
> I thought no overlapping windows was a "feature of picoGUI" ;P
I don't like overlapping root widgets (application-level windows), but
the current rendering engine isn't prepared to handle overlapping at
all. This includes one widget completely contained within another- this
isn't properly supported, it's a hack.
I want to write a new rendering engine based on a technique similar to
portal rendering, which will give us real translucency and overlapping,
plus it should be faster due to much less overdraw.
>
> > The only tool being discussed here is the compiler. Also note that even
> > if we use C++, we won't use the C++ standard library. Using C++ in this
> > way, we get the benefit of exceptions and classes with very little
> > difference in binary size.
> I have no embedded system development experience (our "embedded systems" are
> 486's) so I would support the move from C to C++ as it does give us these
> great features. AFAIK C++ is C with a few extensions (in the compiler). Is
> there some smart person out there who knows how to implement some of these
> extensions (like exceptions) in a C architecture? I'm not talking about
> implementing polymorphism here :)
Yes, there is a good paper that covers methods of doing exceptions in C:
http://freetype.sourceforge.net/david/reliable-c.html
>
> There's a good question. Why are we migrating from C to C++ (or why do we
> want to migrate)? Are we using some of the features of the OO paradigm like
> * inheritance
> * polymorphism
> * encapsulated classes
> or do we just need clean exceptions?
The only features I really see us needing are exceptions and
encapsulated classes. The actual object model picogui will use will be
Om, so the object model provided by the language, if any, doesn't matter
much.
C++ would just make the implementation cleaner. We could use the above
techniques to implement exceptions in C, and we could implement
encapsulation via a strict naming convention.
>
> If you guys could state the features you need in the programming language,
> then (maybe) we could choose better.
It would be nice to consider languages other than C and C++, but C++ is
already on the edge of support in the embedded world.
--Micah
--
"For every problem, there is a solution that is simple, elegant, and wrong."
-- H.L. Mencken
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf