Announcing SDL_gui 0.9.0

SDL_gui is a C library that runs on top of SDL to provide (slightly)
higher level interface. It provides “widgets” in the form of C
structures which are allocated via functions calls (much like GTK).
The widgets are reference counted, and fit into a GUI system which
includes: (for now) a Button, a Label, a Container, a Screen,
two types of fonts (TTF and bitmapped), and SDL surfaces.

The GUI system handles event dispatching, and drawing of widgets in
a hierarchy. The application can also mix in it’s own access to the
screen, so the GUI can be used within a game, for instance.

SDL_gui is LGPL’d, and is available at:

http://www.newimage.com/~rhk/SDL_gui/index.html

Is this based on Sam’s original stuff - or is this a new development?> -----Original Message-----

From: Ray Kelm [SMTP:rhk at newimage.com]
Sent: Monday, May 01, 2000 4:28 PM
To: sdl-announce at lokigames.com
Subject: [SDL] Announcing SDL_gui 0.9.0

SDL_gui is a C library that runs on top of SDL to provide (slightly)
higher level interface. It provides “widgets” in the form of C
structures which are allocated via functions calls (much like GTK).
The widgets are reference counted, and fit into a GUI system which
includes: (for now) a Button, a Label, a Container, a Screen,
two types of fonts (TTF and bitmapped), and SDL surfaces.

The GUI system handles event dispatching, and drawing of widgets in
a hierarchy. The application can also mix in it’s own access to the
screen, so the GUI can be used within a game, for instance.

SDL_gui is LGPL’d, and is available at:

http://www.newimage.com/~rhk/SDL_gui/index.html

SDL_gui is a C library that runs on top of SDL to provide (slightly)
higher level interface. It provides “widgets” in the form of C
structures which are allocated via functions calls (much like GTK).
The widgets are reference counted, and fit into a GUI system which
includes: (for now) a Button, a Label, a Container, a Screen,
two types of fonts (TTF and bitmapped), and SDL surfaces.

Cool. Any plans for OpenGL support? I’d find that amazingly useful and am
feeling constantly like I’ll just have to bite the bullet and do it myself.
:slight_smile:

Nicholas

----- Original Message -----
From: rhk@newimage.com (Ray Kelm)
To: sdl-announce at lokigames.com
Date: Monday, May 01, 2000 4:57 PM
Subject: [SDL] Announcing SDL_gui 0.9.0

Bill Radcliffe wrote:

Is this based on Sam’s original stuff - or is this a new development?

It is a new development, written in C. I plan to make C++ bindings as
well,
unless someone else wants to help out :slight_smile:

The internal design is similar to GTK - objects are C structures which
are
reference counted. There is a pointer to a struct that has the object
class’s functions. It wraps any objects that might need to have multiple
copies (surfaces and fonts, right now) with reference counts too.

The demo app does not do it justice. I’m working on a better one.

Nicholas Vining wrote:>

-----Original Message-----
From: Ray Kelm
To: sdl-announce at lokigames.com
Date: Monday, May 01, 2000 4:57 PM
Subject: [SDL] Announcing SDL_gui 0.9.0

SDL_gui is a C library that runs on top of SDL to provide (slightly)
higher level interface. It provides “widgets” in the form of C
structures which are allocated via functions calls (much like GTK).
The widgets are reference counted, and fit into a GUI system which
includes: (for now) a Button, a Label, a Container, a Screen,
two types of fonts (TTF and bitmapped), and SDL surfaces.

Cool. Any plans for OpenGL support? I’d find that amazingly useful and am
feeling constantly like I’ll just have to bite the bullet and do it myself.
:slight_smile:

Nicholas

I’d love OpenGL support, but it’s not my primary focus right now. If
you (or anyone else) want to lend a hand, I’d love the help!

I’m not too familiar with SDL’s OpenGL support yet, but if it involves
a seperate surface that you render to, then blit to the screen, then
adding it would be trivial. Otherwise we need to work out how the 2d
widgets interact with the 3d surface, and it might get messy.

Cool. Any plans for OpenGL support? I’d find that amazingly useful and am
feeling constantly like I’ll just have to bite the bullet and do it
myself.

I’d love OpenGL support, but it’s not my primary focus right now. If
you (or anyone else) want to lend a hand, I’d love the help!

I’m not too familiar with SDL’s OpenGL support yet, but if it involves
a seperate surface that you render to, then blit to the screen, then
adding it would be trivial. Otherwise we need to work out how the 2d
widgets interact with the 3d surface, and it might get messy.

Ehrmm… not really. Basically, you’ll have to splice everything into
simple graphical primitives. The easy part is the 2D->3D interactions; just
use two dimensional vectors and an orthographic projection matrix and you
should be fine… or something like that; I have code if we need it. The
hard bit would be getting all the code working neatly together – what’s
more, getting a nice clean interface. :slight_smile:

Nicholas

----- Original Message -----
From: rhk@newimage.com (Ray Kelm)
To: sdl at lokigames.com
Date: Monday, May 01, 2000 7:19 PM
Subject: Re: [SDL] Announcing SDL_gui 0.9.0

Cool. Any plans for OpenGL support? I’d find that amazingly useful and am
feeling constantly like I’ll just have to bite the bullet and do it
myself.

I’d love OpenGL support, but it’s not my primary focus right now. If
you (or anyone else) want to lend a hand, I’d love the help!

I’m not too familiar with SDL’s OpenGL support yet, but if it involves
a seperate surface that you render to, then blit to the screen, then
adding it would be trivial. Otherwise we need to work out how the 2d
widgets interact with the 3d surface, and it might get messy.

Ehrmm… not really. Basically, you’ll have to splice everything into
simple graphical primitives. The easy part is the 2D->3D interactions; just
use two dimensional vectors and an orthographic projection matrix and you
should be fine… or something like that; I have code if we need it. The
hard bit would be getting all the code working neatly together – what’s
more, getting a nice clean interface. :slight_smile:

Actually, you COULD just blit to a separate surface, then use that
surface as a texture map on a full screen orthographically polygon.
If you needed to combine it with 3D objects, I would either render
the 3D stuff first, and then add alpha values to the GUI texture so
you could see through parts of it, or render the GUI elements, clear
the depth buffer and then render the 3D objects.

  ,---------------------------------------------------------.
 / _/_/_/    _/_/_/  _/        _/    _/_/   Michael Powell  /
/ _/    _/  _/      _/      _/  _/  _/  _/                 /

/ //_/ // / /// // Aspiring /
/ _/ _/ _/ _/ _/ / / / Video Game /
/ //
/ //
/ //
/ _/ _/ _/ _/ Programmer /
`---------------------------------------------------------’