marco
cantu

CanTools Wizards

Cantools Wizards for Delphi by Marco Cantù

Updated for Delphi XE

Here you can find the lastest versions of the CanTools package for Delphi:

Wizards

The version 2009 of Cantools features a set of wizards and a component. The (old) description of some of the wizards is below. The wizard installs a submenu under the Tools menu, but you can choose to use a separate first level menu as well.

Older versions and information

Download Instructions

Download (and freely pass around) the file CanToolsW6.bpl (64Kb), and install it in Delphi (with the command Component | Install Package).

For Delphi 7 download (and freely pass around) the file CanToolsW7.bpl (65Kb), and install it in Delphi (with the command Component | Install Package).

UPDATE: If you've installed the Update 1 of Delphi 7 try usign this recompiled version of the package: CanToolsW71.bpl (65Kb), and install it in Delphi as above.

Description

The CanTools Wizards is a collection of Delphi wizards installed either in its own menu or in a submenu of the tools menu (there is an option you can use to change this setting, stored in the registry). Some of these wizards are discussed in my books, others are personal tools built over the years. If you have ideas or suggestions (or want to donate a wizard or write one) let me know.

This is a very short description of the currently available tools.

List Wizard

Described in Mastering Delphi, this wizard streamlines the development of very similar list-based classes each with its own type of objects. It does a search replace operation on a file like the demo list.ttt (2Kb).

OOP Form Wizard

Described in Mastering Delphi, this wizard allows you to hide the published components of a form, making your form more object-oriented and providing a much better encapsulation mechanism. Start it when a form is active, and notice the OnCreate event handler code generated. part of the code, though, goes into the unit initialization.

Object Inspector Font

Allows you to change the font of the Object Inspector (particularly useful of presentations). The setting is not persistent (yet). Another option of the setting allows you to toggle an internal feature of the OI to display the font names (in the drop down combo) using the font itself.

Rebuild Wizard

Allows you to rebuild all of the Delphi projects in a given subfolder, after loading each of them in sequence in the IDE. You can use it also to grab a series of projects (like those in a book) and open the ones you choose, by clicking on the list. You can also automatically compile only a given project. Or start a (slow) multi-project-build: you'll see the compiler results dialog and have to press a button to proceed only if the corresponding environment option is set. If not, though, you want see the errors, as the compiler messages are superceded at every compilation.

Clip History Viewer

Keeps track of a large number of text you've copied to the clipboard. The memo shows the last 100 "clipped" lines. Editing the memo (and pressing save) what you type gets stored in the clipboard history. If you keep Delphi open, the clipboard will get text also form other programs (but text only, of course). I've seen occasional clipaboard-related error messages, but nothing I can track.

VCL Hierarchy

Shows the (almost) complete hierarchy of the VCL, including the third-party components you've installed, and allows you to search one and see many details (base and subclasses, published properties, and so on). Pressing the button regenerates both the list and the tree (in sequence, hence the two runs of the progress bar). The list of classes is generated using same predefined core classes (some are still missing, feel free to send suggestions) and then adding each of the components of the installed packages (Delphi's, yours, third parties...) and also the classes of all the published properties having a class type. However, classes used also as public properties are not included (and it is quite hard to do that without parsing the source code).

The form is kept in memory when it is re-activated, so the tree and list will be there, and you can simply typein the class you're looking for and see its position in the tree and its details. A lot of other information can be added, let me know what you'd like to see.