WndTabs Loaded Into DevStudio
Click here for larger image
Environment: VC5, VC6, eMbedded VC++, WinCE Platform Builder, Comctl32.dll 4.71+
What is it?Ever wished that you could quickly switch among your open workspace windows without using the "Windows" menu or Alt-Tab'bing till you drop? Well, I did.
"Window Tabs", the add-in I wrote for Microsoft Developer Studio, adds a docking tab bar. Each tab names a windows that's opened in the workspace. You can switch between the windows by simply clicking on the tab. The tabs have right-click context menus, and can quickly show you (via tool-tips) the full path of the corresponding file.
The add-in has long ago evolved beyond a simple window switcher. Some key features found in the current version are:
- Highly configurable:
- Control what goes on the tab: number, icon, path components, resource information.
- Control the tab strip position (bottom/top).
- Control the number of tab rows. (NEW: Automatic row counts)
- Control what goes on the tab context menus.
- Tab context menus packed with useful features:
- Window management functions
- Close window/all windows
- Close all windows except current window
- Close all related files (file group)
- Minimize all windows
- Automatically (and selectively) close windows opened during debugging. NEW!
- File management functions
- Save file/all files
- Access the file's shell context menu.
- Open a file's alternate (.h<->.cpp etc.) file - manually or automatically (NEW)
- Toggle a file's read-only attribute for quick hack of source controlled files.
- Open a file as a text document. For instance, get quick access to your resource file's source.
- Open a file's containing folder. NEW!
- Clipboard copy functions
- And others...
- Window management functions
- Full source code.
- Programmatically extend WndTabs using the WndTabs SDK. NEW!
- Access tabs via keyboard shortcuts.
- Setup wizard to set up toolbars and keyboard shortcuts.
- Full online help.
- Automatic setup program
- Supports most VC variants, including VC5, VC6, eMbedded Visual C++ and CE Platform Builder. NEW!
- Extension module (shareware) that adds the following advanced capabilities
- Tab Grouping - allows grouping of multiple windows on the same tab.
- Tab Coloring - custom colors for tabs.
- Fully customizable menus. NEW!
- Fully customizable keyboard shortcuts. NEW!
Refer to the online help for installation and usage details, and a full list of features.
Version 3.0 has been almost a year in the making, and is the most ambitious version of WndTabs to date. This version is uses the great BCG library to implement a fully customizable UI. This isn't as simple as it sounds: To make everything work as it should, WndTabs is no longer a simple addin. It is now a full MFC application living inside another MFC application (Visual C++). As you might imagine, this requires a lot of stitching code. And although the casual user wouldn't notice (and probably wouldn't care), if you want to know how it all works, have a look at the source code.
As I said, version 3.0 is a major update to WndTabs and users of previous versions are encouraged to check out the WndTabs site for a full list of new features and bug fixes.
A feature tour is also available online.
The WndTabs Source CodeWndTabs is provided with full source code. The code demonstrates the following techniques:
- Writing DevStudio add-ins that handle events and export commands.
- Interfacing with other add-ins using the AddInComm library.
- "Stealing" events from other windows by using subclassing.
- Installing and using system message hooks (SetWindowsHookEx). NEW!
- Enumerating the shell namespace / full support for file context menus including the elusive "Send To..." menu.
- Use of common controls (tabs, images, etc.)
- Use of the MFC template based collections (CTypedPtrArray, CTypedPtrList, etc.).
- Reusable components for HTML Help integration in MFC applications!
- Use MFC to access Internet files.
- Detect version updates over the net unobtrusively for both direct and dialup Internet users.
- Small tricks of the trade:
- Dialogs that change at runtime.
- Storing your configuration in the registry.
- And more...
NoteMake sure to check out the WndTabs web site which is more likely to have updates and betas:
DownloadsDownload the WndTabs 3.0 Installer [binaries only] - (1,069 kb)
Download the WndTabs 3.0 Source Code Installer - (3,650 kb)