xDock is a smoothly animated, alpha-blended application that is similar to ObjectDock or RocketDock. The Source code provided here is not intended to replace products like ObjectDock or RocketDock. This is an incomplete project and some features need to implemented. The project gives and idea how these great products (ObjectDock or RocketDock) works using Vb.Net 2003.
Using the code
Below are one of major classes and interface used in above project:
DockManager is the collection of current IDockItem's.DockManager on paint calls paint method for each IDockItem Object with Zoom ratio and each DockItem in turn paint its icon on background bitmap.Later on this bitmap is assigned to form DockWindow.vb using UpdateLayeredWindow API.DefDockItem class is the default implementation of IDockItem interface.
However Developer can Implement the IDockItem to create docklets in separate assembly and then this can be pluged in to xDock.
DockInfo is the class which saves the current settings to ini file in application directory.
The PaintBackground Function in DockWindow creates the streatched background using the current selected Skin.The (GDI+) graphics Object is then passed to DockManager to paint the added DockItems.
Points of Interest
Note that ObjectDock and RockDock are free applications and you can download them from
Download ObjectDock : from http://www.stardock.com/products/objectdock/
Download RocketDock: from http://filehippo.com/download_rocketdock/
Keep a running update of any changes or improvements you've made here.