5.3. SUMA Controllers

GUI controllers make up three groups:

  • SUMA Controller To control aspects common to all the SUMA viewers.
  • Viewer Controller: To control aspects particular to one viewer. This baby is practically nonexistent at this stage.
  • Object Controllers: To control how certain objects and the data defined over them are displayed. In modern SUMA versions, it is best that all controllers are collected in the same controller notebook. Example controllers include the Surface Controller, the Tract Controller, the Volume Controller etc.

5.3.1. Global Controller

5.3.2. Object Controllers

Controller Notebook

Many of the displayable objects, particularly those that can carry data, have an object controller. Historically there was only surface-controllers (hence the Ctrl+s for the shortcut) but now volumes, tracts, and graphs also have their own controllers.

The easiest way to open a controller is to select an object and open its controller with ctrl+s, or View ‣ Object Controller. Once a controller is open, selecting other objects automatically creates their own controller.

All object controllers are grouped in one notebook window as shown in Object Controller. If you don’t have all your object controllers opening in the same notebook and your SUMA version is current, make sure environment variable SUMA_SameSurfCont is set to YES in your .sumarc file.


Object Controller Notebook: Holder of all controllers. Grayed out area will be different for different object types. (link)

Once you select an object, its controller is popped to the top. You can also use the Switch to get at the controller for an object that you don’t want to select or that is simply out of reach (invisible).

Disp. Cont.

A few controls for the object controller notebook.

Close: Close controller. Settings are not
lost. You can bring it back with Ctrl+s key.
BHelp: Obtain context specific help by
clicking on this button then clicking on the context for which you want information.
WHelp: Obtain web-based context specific
help by clicking on this button then clicking on the context for which you want information.
All Objs: Initialize controllers for
all objects that have one. This is particularly useful when a particular may not be visible under the default settings.
Switch: Switch between controller
notebook pages. You can use the arrows to cycle between pages or set the page number directly.