IntelliJ IDEA allows you to specify how different objects are displayed in the debugger on a class-by-class basis.
You can assign the expressions to be displayed rather than rely on the object's String representation.
For example, if an object represents a user, you may want to see users represented by their
login name; or, for a cache entry object, its age and contents may be appropriate.
IntelliJ IDEA refers to these as type renderers.
If no rendering scheme is defined, this dialog does not show any controls. To start working with
renderers click .
Item
Description
Use this icon to add a new rendering scheme to the list.
Use this icon to remove the selected scheme from the list.
Use this icon to create a copy of the selected scheme.
Use these icons to move the selected item one line up or down in the list.
Note that the order of items in the list determines which renderer is used in the case of
ambiguity born of class inheritance.
Renderer name
In this field, specify the name of a new renderer, or edit an existing renderer name.
Apply renderer to objects of type (fully-qualified name)
In this field, specify the type of objects that will be represented with this renderer. Type a fully
qualified object name, or click the Browse button
and choose the desired type from the list in the Renderer Reference Type dialog.
When rendering a node
This option determines how an object is displayed in the debugger when nodes are collapsed:
Use default renderer: select this option to display the node in the
default way.
Use following expression: enter the java expression you want to use to
identify an object. You can use object properties, constants, and even a string math as part
of your renderer.
Note that you can use code completion (Ctrl+Space) when defining
expressions.
All method calls and member variable access are relative to the object you're rendering.
Use this to refer to an instance to which the renderer applies.
When expanding a node
This option determines how an object is displayed in the debugger when nodes are expanded:
Normally, expanding a node in the debugger lists the object's member variables (using the
renderer appropriate for the corresponding object types).
This option lets you override this behavior and select a single expression or a series of
expressions to be displayed. You may use this to limit the amount of information displayed, or
to be more precise in how the information is presented.
Use default renderer: select this option to display the node children in
the default way.
Use following expression: enter the Java expression you want to use to
identify an object.
Test if a node can be expanded (optional): enter a Boolean
expression. If it istrue, the renderer displays expandable
nodes for the defined objects. Otherwise, no nodes are displayed.
Use list of expressions: create a list of separate expressions to be
calculated and presented as node children. Use:
(Alt+Insert) to create a new expression.
(Alt+Delete) to remove the selected expression from
the list.
(Alt+Up) to move the selected expression one
line up in the list.
(Alt+Down) to move the selected expression one
line down in the list.
Note that you can use code completion (Ctrl+Space) when defining
expressions.