'Window Tabs' Developer Studio Add-In | CodeGuru

‘Window Tabs’ Developer Studio Add-In

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 […]

Written By
CodeGuru Staff
CodeGuru Staff
Apr 3, 2001
3 minute read
CodeGuru content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More

WndTabs Loaded Into DevStudio
WndTabs - Sample Image

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…
  • 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
    to WndTabs:
    • 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.

 

What’s New

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.

Advertisement

The WndTabs Source Code

WndTabs 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…

Note

Make sure to check out the WndTabs web site which is more likely to have updates and betas:
http://www.wndtabs.com

 

Downloads

Download the WndTabs 3.0 Installer [binaries only] – (1,069 kb)
Download the WndTabs 3.0 Source Code Installer – (3,650 kb)

CodeGuru Logo

CodeGuru covers topics related to Microsoft-related software development, mobile development, database management, and web application programming. In addition to tutorials and how-tos that teach programmers how to code in Microsoft-related languages and frameworks like C# and .Net, we also publish articles on software development tools, the latest in developer news, and advice for project managers. Cloud services such as Microsoft Azure and database options including SQL Server and MSSQL are also frequently covered.

Property of TechnologyAdvice. © 2026 TechnologyAdvice. All Rights Reserved

Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.