Definitions

IDE Dialog

The Definitions window is displayed by the Search | Find Definition command. It is also displayed by Find Definition or Find Applicable Methods from the shortcut (right button) menu over frames in the Trace or Debug dialogs (in the debug window when debugging an error).

This dialog can be used to find the definition of an operator (function, generic function, or macro), variable or class. The object must be defined in the running Lisp. The source can be in a file, in an editor buffer, or at the top-level (e.g. typed to the Debug window). If only the fasl (compiled Lisp) file has been loaded, the search will assume the definition is in a source file of the same name but different extension (cl, lsp, or lisp) and will report that even if the file is not present.

Above is the Definitions window looking for the definition of doodler. We have loaded the final tutorial project and both a function and a class named doodler have been found.

Clicking Open will open the location of the selected definition if possible.

Note that if you have Common Graphics/IDE source code installed in your Allegro directory, you need to load the file src\cg\loadsfi.cl in order for the definitions of Common Graphics or IDE objects to be found. That file may take some time to load. Look at the comments in that file for information on creating an image with the file already loaded.

The Methods pane

When the object whose definition is being searched for is a generic function, methods on specific arguments are listed. You can type an argument into the text box but this is normally used when finding a definition after selecting a method from the Trace dialog or the Debug window while debugging. Here we have caused an unbound variable error (by evaluating the unbound symbol a), selected one of the (method virtual-key-down …) frames, and chosen Find Applicable methods from the shortcut (right button) menu:

Notice the All checkbox is unchecked and only a few methods are listed, specialized on debug-pane and its superclasses. Checking the All box shows all methods again.

If the Remove button is clicked, the selected method will be removed. You are not protected against removing system methods. Note that doing so may cause Lisp to fail.

Common Graphics and IDE documentation is described in About Common Graphics and IDE documentation in cgide.htm.

The documentation is described in introduction.htm and the index is in index.htm.

Copyright (c) 1998-2000, Franz Inc. Berkeley, CA., USA. All rights reserved.

Created 2000.10.5.