IntelliJ IDEA 11.1 Web Help

Debug tool window | Variables tab | context menu | Customize Data Views


Use this dialog box to configure the Debugger's data view. In this section:

Note

Debug data view options can alternatively be configured using Debugger dialog box, but for your accommodation they can also be accessed right from the debug view.

Data views tab

Item Description
Sort alphabetically Show nodes in the tab in alphabetical order.
Autoscroll to new local variables Automatically scroll the focus to the new variables that appear in scope at stepping.
Alternate View for Collection Classes Present Collections and Maps in the tab in a more convenient form.
Show static fields Show static fields in the tab.
Show static final fields Show static final fields in the tab.
Show synthetic fields Show synthetic fields (automatically generated by the java compiler) in the tab.
Show declared type Show declared type in the tab.
Show object id Show object id in the tab.
Array start/end index Define the range of array elements to show.
Show maximum <number> array elements Define the maximum amount of array elements shown in the tab.

Tip

This item interacts with the previous one. For instance, if you define the start-end index as 0-100 and the maximum value is 50, IntelliJ IDEA will show elements 0 to 25 and 75 to 99 omitting those in between.

Hide null array elements If this option is checked, the null array elements are omitted.
Enable toString() object view In this group you can select classes if you need them and their descendants to be presented as a result of the toString() method call while debugging.
For all classes that override toString() method Show all classes as toString().
For classes from the list Define the list of classes to be shown as toString(), using Add Class, Add Pattern and Remove buttons. Use check boxes next to the class names in the list for temporary disabling/enabling particular filters.

Tip

If a class or its children do not override toString(), the toString() cannot be called and displayed.

Add class Add a class to the list using the Choose Class dialog.
Add pattern Add a custom class filter using the New Filter dialog. To define a filter, enter the pattern string that may contain wildcards (for example, *.Test, javax.swing.*, etc.), or click and create a filter using the Choose Class dialog.
Remove Delete a file or filter from the list.

Type renderers tab

The Type Renderers tab enables you to create and customize rendering schemes for data presentation in the debugger Frame view.

Note

If no rendering scheme is defined, the dialog box does not show any controls. To start working, click the Add button.

Item Description
Add Add a new rendering scheme to the list.
Remove Remove the selected scheme from the list.
Copy Clone the selected scheme.
Up/Down Move the selected item up and down in the list.

Tip

The order of items in the list determines which renderer is used in the case of ambiguity born of class inheritance.

Renderer name Edit or view name of the selected renderer.
Apply renderer to objects of type Define the type of objects to be affected by the renderer. Type the fully qualified name of the object, or click the ellipsis button and choose the desired type from the list in the Renderer Reference Type dialog.
When rendering a node This option determines how the object is displayed in the debugger:
  • Use default renderer: Select this option to display the node in a default IntelliJ IDEA way.
  • Use following expression: Type in the java expression you want to use to identify the object. You can use object's properties, constants, and even string math as part of your renderer.

    Tip

    When defining expressions, you can use IntelliJ IDEA's code-completion features to help you (Ctrl+SpaceControl Space). All method calls and member variable access is relative to the object you're rendering. Use this to refer to the instance, to which the renderer is applied.

    Warning

    • Using heavy expressions in renderers may slow down data rendering in views.
    • Method calls should be used with caution because of possible side-effects.
When expanding a node Define how the children information is presented.

Normally, expanding a node in the debugger lists the object's member variables (using renderer appropriate for their object types). This option lets you override that behavior and select a single expression or a series of expressions to control the display. You may use this to limit the amount of information displayed or to be more precise in how the information is presented for example.

  • Use default renderer: information for the selected node children is presented in a default way.
  • Use expression: enter a Java expression to calculate information to be presented for the node.

    Test if the node can be expanded (optional): enter a Boolean expression. If it is true the renderer displays the expandable nodes for the defined objects. Otherwise, no nodes are displayed.

  • Use the list of expressions: create a list of separate expressions to be calculated and presented as node children.

Tip

When defining expressions, you can use IntelliJ IDEA's code-completion features to help you (Ctrl+SpaceControl Space). All method calls and member variable access is relative to the object you're rendering.

Add / Remove Use these buttons to add and remove the expressions.
Move Up / Move Down Use these buttons to change the order of items in the list.

See Also

Procedures:

Reference:

Web Resources: