Difference between revisions of "IDE Window: Variable Inspector"
Line 7: | Line 7: | ||
= Variable Inspector = | = Variable Inspector = | ||
+ | |||
+ | Also known as "Debug Inspector" | ||
[[File:Debug_Inspector.png]] | [[File:Debug_Inspector.png]] | ||
− | + | Allows to watch an expression. | |
+ | |||
+ | Expressions can be local or global variables, ([[GDB_Debugger_Tips#Properties|certain]]) properties, or pascal expressions (limited support, e.g. "a+1"). [[GDB_Debugger_Tips#Inspecting_Data-types_.28Watch.2FHint.29|See here for more information]] | ||
+ | |||
+ | If the expression is a structure, then each field is displayed as a separate entry. If the result is a structure that has properties, they may not be included. | ||
+ | |||
+ | = Scope (Stackframe, Thread) = | ||
+ | |||
+ | The values are evaluated according to the scope set in the [[IDE_Window:_Threads|Thread]] and [[IDE_Window:_Call_Stack|Stack]] dialog. Default is the current Thread and top stack frame. | ||
+ | Both (Stack and Frame) dialog offer to change the "current" Frame/Thread. The watch window will follow this selection. | ||
+ | |||
+ | This dialog is <u>not</u> affected by the [[IDE_Window:_Debug_History|History]] dialog. | ||
+ | |||
+ | = Interface = | ||
+ | |||
+ | ;Input/Dropdown: Allows to enter/change the expression for the data to display. The dropdown provides a history of recent expressions. | ||
+ | |||
+ | ;Data/Method-Tabs: If the data is a structure with methods, they are displayed separately. | ||
+ | |||
+ | <u>Context menu</u> | ||
+ | |||
+ | [[File:Debug_Inspector_context.png]] | ||
+ | |||
+ | ;Use Instance class type: Objects are normally shown according to the declaration of the watched expression. Showing "Sender: TObject" will only show you data, that is declared in TObject. However object variables can contain objects of inherited classes. Sender may be a TForm. Using this the debugger will find the actual class of the object and display all data. |
Revision as of 14:24, 22 June 2012
Important
You must setup the debugger and start the project to debug it. Only then this window will be useful.
Variable Inspector
Also known as "Debug Inspector"
Allows to watch an expression.
Expressions can be local or global variables, (certain) properties, or pascal expressions (limited support, e.g. "a+1"). See here for more information
If the expression is a structure, then each field is displayed as a separate entry. If the result is a structure that has properties, they may not be included.
Scope (Stackframe, Thread)
The values are evaluated according to the scope set in the Thread and Stack dialog. Default is the current Thread and top stack frame. Both (Stack and Frame) dialog offer to change the "current" Frame/Thread. The watch window will follow this selection.
This dialog is not affected by the History dialog.
Interface
- Input/Dropdown
- Allows to enter/change the expression for the data to display. The dropdown provides a history of recent expressions.
- Data/Method-Tabs
- If the data is a structure with methods, they are displayed separately.
Context menu
- Use Instance class type
- Objects are normally shown according to the declaration of the watched expression. Showing "Sender: TObject" will only show you data, that is declared in TObject. However object variables can contain objects of inherited classes. Sender may be a TForm. Using this the debugger will find the actual class of the object and display all data.