Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
This is the Expressions and Variables Views Technology Sub-group
Lead: Ken Ryall (Nokia)
Members: Ted Williams (WR), Pete Nichols (IBM)
At the last DSDP meeting we began discussing ways to improve the Variable view to include the features we would find useful in a common, sharable, view of C/C++ variables and expressions.
Here are some design notes based on some initial feedback.
The variable view displays a collection of variables in a hierarchical structure. The variables shown are those relevant to the debug context of the view and may include both local variables and global variables used within the local context. Multiple columns in the view allow for sorting and easier viewing of attributes.
Common attributes of C/C++ variables that merit their own column in the view:
Name (short or fully qualified)
Location (register or memory location)
Variable values can either be edited in place or in the details pane. For in-place editing of Boolean or enumerated types a menu lets you select from a valid range of values.
Variables are shown from a particular context, usually a function within a stack frame. You can have multiple variable views showing variables from multiple contexts open at the same time. Multiple variable views will be confusing without some kind of context indicator. Suggestions have included using color, unique symbols (think Lucky Charms cereal), or a short chunk of text (“doHandleCommand() in thread 566 of process “hello.exe”). Context indicators will need to be used consistently across many of the other debug views.
Filters let you look at a subset of the variables based on the name, type, or value.
Pinned Variable Views
Pinned views are static, they don’t update when the target state changes. You can pin any variable view and it will no linger update. You can have multiple pinned views open.
That's it for now, I'll update these notes as I collect additional feedback.