The objects pane encloses a tree of objects grouped, at the highest level, by project. Each object is identified by an icon and by its name. Expanding a project node within the tree reveals the various types contained within that project. Further parent-child relationships are also visible, such as the namespace-to-class relationship and the type-to-parent-type relationship.
Table 5.5 shows the icons used in the Objects pane.
Certain signal images are also overlaid on top of these icons to visually represent scope and access information for each object. These access type signal icons are described in Table 5.6.
The depth of the various levels shown for each object is dictated by the view settings in place at the time. For example, turning on the Show Base Types option appends an additional base type level to the tree for each type. The objects pane’s principal duty is to allow quick and easy navigation back and forth through the object tree for each project. It exposes, in other words, an object-oriented view of each project.
Right-clicking within the objects pane displays the shortcut menu, which is useful for quickly re-sorting and organizing items in the Class View window. These are the Sort/Group options available:
Sort Alphabetically—The projects, namespaces, and types in the objects pane are sorted in ascending, alphabetic order.
Sort by Object Type—The types in the objects pane are alphabetically sorted by their general classification (for example, in the following order: classes, enums, interfaces, structs).
Sort by Object Access—The members are sorted by their access modifiers (public, private, protected, and so on).
Group by Object Type—Another folder level is added to the tree for each distinct object type present. For example, if a project contains both class and interface types, a class folder and an interface folder are displayed in the objects pane tree, with their correlated types contained within.