HeadStart Toolkit - Version 4.0

HeadStart toolkit is a library of flexible MFC extension classes that will help you develop sharp looking applications in record time.

All controls included in the toolkit are subclassed off of standard MFC controls. If you are doing MFC development, be wary of third party controls that were written for other environments, rather than created specifically for MFC. Also watch out for controls that are written in C, with a thin C++ wrapper added. You want controls that you can subclass off of if you want to further customize them.

Note - Great care was taken in the design of all our controls to make them drop in replacements for the standard MFC controls. For example, in the imagelistbox, GetItemData()/SetItemData() were not used to store font/color/etc. for items, so that users can continue to use these functions for their own purposes.

All of our controls can be positioned in your dialogs using the standard resource editor.

If you need a specific control, or an enhancement to any of our existing extensions, we can build it for you


Toolkit - DEMO

Included Classes: Bitmap Menus, CHeaderCtrl Extension, CListCtrl Extension, Persistent Frame, Persistent Child Frame, Image Listbox, Image Combobox, Tree Control, Tree Item, History Combobox, Registry Helpers, Modeless Dialog, Accelerators

CListCtrl Extension

An enhanced list control with the following features: Subclassed from CListCtrl, it is a simple drop in replacement (even item data functions are unaffected). Replacing standard CListCtrls with HeadStart's list control extension is an easy way to add functionality to your applications.


Menus with Associated Bitmaps

Allows you to display menus with each item showing its associated bitmap which has become standard with most Microsoft tools. We have added this feature to our Persistent Frame class to make integration into your application as simple as possible.


History Combobox

Remembers previous entries into a combobox (by the registry or .ini file). Works just like MS Developer Studio's Find Dialog combobox (or the internet address combobox on most internet browsers). You can attach two history comboboxes so that an entry added to either one will be automatically placed into both (see the demo for a good example). This class also provides an easy way to add accelerators to a combobox.

Replace your editboxes with history comboboxes wherever a user may frequently reuse previous values.

Now supports automatic completion as you are typing into the field.


CHeaderCtrl Extension

An owner drawn header control that can be used to create ascending and descending arrows on the header portion of a list control without requiring the commctrl.dll that ships with IE3.0 or later. This control supports left, center and right justified text. There is also an attribute for specifying if you would like the bitmap to be on the left or the right side of the text. This can also be used as an example or a starting point on creating your own owner drawn header control.


Persistent Frame

Saves the size and position of the application window and all toolbars to the registry (or .ini file) so the tool's state will be remembered for subsequent executions.

This class also allows the application frame to be a drop target. Several virtual functions are provided to allow this, in the same way that MFC allows a CView to be a drop target.

Appwizard Support: Just check "persistent frame" in HeadStart's extended appwizard, and persistent frame will automatically be added to your application. (It's checked by default, we can't think of any reason you'd want the default MFC behavior of your application coming up in a seemingly random size and position).

Now supports displaying menu items along with their associated bitmaps.

Now supports full screen mode.

Now supports a context menu for showing and hiding toolbars. This context menu is created automatically with all of the toolbars in your application. Easily extendable to add your own menu items.


Persistent Child Frame

This class works in conjunction with the Persistent Frame to save the state of the child frame (normal or maximized) for MDI applications.


Image Listbox

An enhanced list box with the following features: Subclassed from CListbox, it is a simple drop in replacement (even item data functions are unaffected). Replacing standard listboxes with HeadStart's image listbox is a great way to spice up your applications.


Image Combobox

An enhanced combo box with the following features: The nametip on the combo box is especially useful, since comboboxes don't support a horizontal scrollbar. Even if your combobox is wide enough for all entries, it is a good idea to use this control, just in case a larger entry is added later. (This is especially true for internationalization purposes, where translated text may be much bigger than the original.)

Subclassed from CCombobox, it is a simple drop in replacement.


Tree Control

A flexible tree control with the following features: MFC's CTreeCtrl, a paper thin wrapper around the SDK, is notoriously difficult to use. Our tree control gives you the same look and feel, but without the limitations, and with an easy to use, object oriented API.


Tree Item

This class works in conjunction with the Tree Control class to provide an object oriented API. But this is also a fully functional tree container class that can be used whenever a tree structure is needed. The same class is used for each node of the tree and the tree itself, thus making pruning/grafting easy. Functions are provided to make it very easy to traverse through the items in the tree. Just attach this class to a HeadStart Tree Control to display the tree data visually. You can also attach this class to a HeadStart Image Combobox to display a tree structure in the combobox (like the combobox in the Windows Explorer’s toolbar).


Registry Helpers

Allows resource string IDs to be used with GetProfileXXX and WriteProfileXXX which is useful for internationalization purposes. Provides functions to get and write COLORREFs and CRects to the registry.


Modeless Dialog

A simple way to create a modeless dialog. Includes an attribute to specify if the dialog should be destroyed or just hidden each time it is closed.


Accelerators

Provides the ability to load accelerators from a resource file contained within a DLL. For example, you may have a custom view class located in a DLL. With this class, accelerators associated with the custom view (stored in the DLL's resource file) can be easily loaded into applications linking in the DLL.


Home | Canvassing | Project Compiler | Pricing | Consulting