My Branch

Dustin Norlander <[email protected]> Sat, 6 Aug 2005 22:16:06 -0400
Newsgroups gmane.comp.graphics.y.devel
Message-ID <[email protected]>
Hi all,

I have been hacking on Y for a little while now and I thought I would
publish my branch.  Check it out, you guys might argue with some of my
design decisions, I'd like to hear (constructive)opinions.

I put up a wiki, which mainly pertains to my branch--but also has a
few tutorials that should help people who want to help out.
the wiki is at:

http://www.dustinnorlander.com/Y/ywiki/

to get my branch do:

$ tla register-archive http://www.dustinnorlander.com/arch/
$ tla get [email protected]/Y--dustin



Here is a brief list of my patches:

--New Pixel Buffer----

This is based on code originally written by Sebastian Faubel. It is
provides support for pixel buffers with different colorspaces. A color
space can be created with arbitrary bits per sample and bytes per
pixel. There are a few predefined colorspaces such as rgb, rgba,
alpha-channel, and rgba-premultiplied.

Note: I updated the sdl driver code, but I have not touched the
framebuffer driver. As such the frame buffer driver is likely broken.
Also SDL does not currently handle premultiplied alphas, so
pixelbuffers of that colorspace are converted to regular rgba.

---New Widgets----

A few new widgets and improvements of some of the existing ones.
Mainly I implemented appropriate hierarchy for the widgets, as in,
togglebutton inheirits from button which inherits from widget, ect. I
followed the gtk inheritance when I thought it made sense.

Note: The YButton hierarchy looks like:

Object
   +---Widget
           +---YContainer
                    +---YBin
                          +---YButton

The YContainer and YBin don't actually do anything, I put those in to
be like gtk, those might be deleted at a later date. I chose to do
this because it should make converting gtk widgets to Y easier (i.e.
not reinventing the wheel--saving time) and could possibly eventually
make it easier to port gtk apps to Y.

List of the new/updated widgets:

YButton
YCheckbox
YToggleButton
YRadioButton
YRadioGroup


----Build System Additions----

Support for inheritance, as well as dynamically generated getters and
setters in the client library..


-Dustin Norlander