Behaviors

In ParaView, _behaviors_ are plugin objects that monitor the state of objects and update the application user interface to reflect the state of those objects. For example, pqSMTKBehavior monitors client/server connections and ensures core SMTK plugins are loaded on each new server connection.

Behaviors are typically implemented as auto-start plugin code that uses ParaView’s signal/slot mechanism to identify events of interest, create or modify user interface elements such as menus, panels, toolbars, etc.

Hint Behavior

The pqSMTKOperationHintsBehavior monitors the application’s operation-manager; when operations complete, it inspects the result of the operation and searches for hint attributes. When it finds them, it implements the requested UI functionality. For example, when a hint suggesting some resources and/or their components should be hidden (or shown), this class updates the ParaView representation visibility and/or per-block visibility.

Resource Visibility Behavior

The pqSMTKTaskResourceVisibility monitors project-manager events. When a project is added, it monitors the project’s task-manager for changes to the active task. As the active task is modified, this plugin searches for any style tags called out by the active task; if the style associated with these tags includes a 3d-view directive, the visibility and/or color-by modes are changed.

Note that when the active task becomes null (i.e., a task is made inactive but no new task is made active in its place), this behavior examines the diagram panel to see if top-level tasks are being displayed or not. If top-level tasks are being displayed, the behavior will apply the default style tag if any exists; otherwise, the style of the parent task whose children are being displayed will be applied.