Scroll to navigation

iclass(1) General Commands Manual iclass(1)

NAME

iclass - class browser

SYNOPSIS

iclass [-r] [-v] [-c] path [path...]

DESCRIPTION

Iclass is a simple class browser that lets you navigate through C++ class hierarchies and view the definition of a particular class. You can select classes from three browsers: the first shows a list of all known classes; the second shows the parents of the selected class, if any; and the third shows the children of the selected class, if any. You can choose a name from any of these lists and tell iclass to show the definition of that class, or you can type the name of a class explicitly in the StringEditor labeled ``selected class.'' The view of the class definition shows the source code from the header file that defines the selected class.

ARGUMENTS

Iclass interprets arguments that specify the header files to search for class definitions. Each non-option argument on the command line should specify a pathname to a header file or a directory containing header files. If the pathname is a filename ending in the suffix ``.h'', then iclass will scan that header file. If the pathname is a directory, then it will scan every header file in that directory. Iclass will ignore filenames that do not end in the suffix ``.h'', unless the ``-c'' option is given. In this case iclass will search both ``.h'' and ``.C'' files for class definitions.

You may use any of the standard options accepted by InterViews programs in addition to the following options:

Recursively scan subdirectories for additional header files when scanning a directory.
Verbosely print the name of every header file scanned.
Allow iclass to search ``.C'' files as well as ``.h'' for class definitions. This option should be used carefully. Because of the way that iclass searches for definitions, it is possible for it to get confused by code in a ``.C'' file and think it is a definition. Nonetheless, this is a useful option if there are C++ input files that contain definitions.

COMMANDS

Iclass provides pull-down menus for issuing commands. The ``File'' menu includes the following commands:

Prompt for additional pathnames to scan.
Purge iclass of all classes it has scanned.
Close the window and exit.

Commands in the ``Search'' menu include:

Search forward in the class definition for a match with a given regular expression, wrapping from the end to the beginning of the buffer if necessary.
Search backward for a match with a given regexp.
Move the cursor to the beginning of the given line, scrolling the display if necessary.

MOUSE BINDINGS

The left mouse button selects text. Left-clicking inside a browser, StringEditor, or class definition also focuses keyboard input to it, which lets it interpret subsequent keyboard commands as scrolling or selection operations. Double left-clicking inside a browser is equivalent to selecting a class and then pressing the ``Show'' button.

The middle and right mouse buttons scroll text in different ways. Middle-clicking lets you ``grab-scroll'' the text. During grab-scrolling, the text is scrolled to follow the mouse position, making it appear as though you are dragging the text itself. Right-clicking engages ``rate-scrolling,'' a joy-stick-like scrolling interface in which the scrolling rate increases as you drag the mouse away from the initial click point. For example, dragging the mouse downwards after the initial click scrolls a browser downwards at an increasing rate; dragging upwards thereafter reduces the rate until scrolling stops entirely at the initial click point. Dragging up beyond this point makes the browser scroll in the reverse direction.

KEYBOARD BINDINGS

For convenience, all menu commands have keyboard equivalents:

(^V)
Scan a file or directory.
(^Q)
Quit.
(^S)
Search forward.
(^R)
Search backward.
(^N)
Go to a line.

Iclass also provides keyboard commands for changing focus:

Set focus to the StringEditor showing the selected class.
Show the selected class (equivalent to pressing the Show button) and set focus to the class definition.

SEE ALSO

Regexp(3I), StringBrowser(3I), StringEditor(3I), TextEditor(3I)