ViewGUI
Current version: 0.1b
Speed:
ViewGUI is incredibly fast due to an efficient window sorting method, and Cloggy's amazingly fast d3d plugin.
Here is a screenshot of over 100 overlapped, depth sorted, draggable windows with alpha, and all generating dynamic events running at ~60fps:
Customizeable:
With the dynamic event system, you can tap into the 'window painted' event to draw whatever you want to that particular window, and it will appear in the correct z-depth

Also, each window has its own properties so you can control the entire look of a window without using a single draw command.
Open source:
Download source
HERE
Dynamic events:
Utilising IanM's function pointer plugin allows each window to have their own event function which can be changed easily at run-time. A function can handle events of multiple windows and use the sender argument to get a handle on the window that raised the event.
Events that can only happen once per update (such as mousedown) can also be retreived as a variable to avoid complexity.
External DLLs required:
IanM's Matrix1 Utility plugin for function pointers and peek/poke commands
Cloggy's d3d plugin for fast 2d drawing
Todo:

Add more types of window than just form and button

Add more events
Done:

Main engine

Depth sorting

Parent/child window sorting

Border styles

Colours

Cursors (on a per-window basis)

Form windows

Button windows

Window OOP

Common events for all classes of window

Different events for each class

Draw window text

Text align

Form title text is automatically cut to fit form

Different cursors for each window (including screen)
Extra info:
A hwnd of 0 means the screen.
Current windows:

Form

Button
Line count:
1,269 lines
Please post how many windows you get when you run the example (it only creates windows when the framerate is above 60fps)