Last modified 3 years ago Last modified on 01/03/09 12:16:21

Status

Although still in the early stages quite a lot is functional, namely

  • the GObject inspired object system;
  • event handling;
  • the base widget class.

With most of the core complete focus has shifted to actually implementing the various widget types.

Todo

  • Improve the fitting algorithm for horizontal and vertical boxes (hBox and vBox).
  • Sprinkle asserts here, there and everywhere!
  • Add support for padding around widgets.
  • Clean up widgetHandleEventImpl (Important)
  • Find someone to consult on regarding the Lua interface (devurandom?) (In progress).
  • const correctness (In progress).
  • Define an animation API; (In progress/finalised)
    • may depend on widgets drawing to OpenGL textures
    • should be none of the widgets concern.

Done

  • Switch to a compositing system, whereby each widget has its own Cairo context complete with a re-draw system.
  • Use OpenGL for hardware accelerated compositing.
  • Define a dragging API for widgets such as sliders.
  • Add support for bitmap masks for the purposes of mouse-event detection; this will allow for non-rectangular widgets.
  • Add a special text event, designed to handle the inputting of text. This is firsty to ensure we are compatible with SDL 1.3 and secondly to make text handling easier.
  • Implement timer support.
  • Decide how best to do tool-tips.
  • Add SVG loading support using libsvg and libsvg-cairo.

{{Template:Betawidget}} Category:Betawidget ?