Super Rich & Flexible GUI

Topics: CAB & Smart Client Software Factory
Jun 28, 2005 at 5:43 PM
originally posted by: ptorrsmith

If I wanted to model my application along the lines of Visual Studio 2K5, with an almost unlimited number of ways to place tabs, lists, menus, explorers, menus, toolbars, etc , and whatever else comes with each plug-in module, do you see the CAB being able to support this?

I know that sounds like a big project, and I don't expect it to be easy whatever way, but I'm trying to build my first demo app and module and was thinking that each module could offer 1 or more placeable panes.
Jun 28, 2005 at 6:20 PM
originally posted by: dcazzulino

CAB is definitely prepared to build such an application on top. You have specific support for:

1 - Arbitrary UI Elements: you can create a custom Shell that exposes to your (or third party) modules any number of locations/types of elements. All you need is to create a custom UIElementManager, and register it with a given base uri. Built-in support includes menus and strips. You could create a server explorer-like one that allows modules to place nodes inside it, Tools -> Options manager that can accept user controls to display on pages, etc.

2 - Support for custom workspaces: the dockable panels behavior suits well the IWorkspace, where you show smartparts in given panes that can be freely docked/moved/pinned. The core work is the widget library you choose for that, but developing the workspace on top of it is remarkably easy.

The generic EventBroker feature is also key in decoupling independent modules so that they can collaborate in interesting ways.

All in all, I think you'll have a lot of fun implementing such an app!
Jun 29, 2005 at 4:12 AM
originally posted by: GretchenSmith

We have the same desire for a flexible GUI, but our requirements would be features available according to roles and permissions in addition to being able to have custom workspaces, etc. CAB seems like the way to do this so we are really excited about this project.