[Lazarus] New feature in 1.3 - Click through to members in Debug inspector
Martin Frb
lazarus at mfriebe.de
Thu Feb 6 19:25:31 CET 2014
http://wiki.lazarus.freepascal.org/IDE_Window:_Variable_Inspector
Lazarus 1.3 only:
Now allows to double click on rows, if you look at a class or record. It
will then display this member (in full, not just the address / that is,
if it is of any type that can be displayed)
Same for pointers. They will be derefed.
Useful for looking at TList.
TList has an FList:TFPList,
which as an FList: PPointerList.
You can click through, deref the pointer, and you get the address of the
entry at index 0.
The watch expression will look like: (with more added typecast, if needed)
PPOINTERLIST(MyList.FCHILDREN.FLIST.FLIST)[0]
All you need to do, is add a typecast.
For any object, you can use TObject, and tell the debugger to find the
class. (there is a toggle button "Instance")
TObject(PPOINTERLIST(MyList.FCHILDREN.FLIST.FLIST)[0])
Getting the 2nd or 3rd element from the list can be done by editing the
index.
There is a back button, to return to the previous viewed expression.
(mouse button 4 will also do / except, if the current expression has no
displayable result, that is because pagecontrol then does not trigger
the click event)
More information about the Lazarus
mailing list