#
77007502 |
|
18-Jan-2018 |
Rene Gollent <rene@gollent.com> |
Debugger: Rework type handlers to allow for custom selection. TypeHandler: - Add name field for presentation purposes. Adapt subclasses accordingly. TypeHandlerRoster: - Add methods to count and retrieve all type handlers for a given type, and adjust CreateValueNode to allow for passing in an explicit handler. Adjust callers accordingly. VariablesViewState: - Add helpers to store an explicitly chosen type handler for a node. TypeHandlerMenuItem: - ActionMenuItem subclass that takes care of reference management for its contained type handler. VariablesView: - Add context menu for choosing type handlers if applicable. Implement support for invoking said type handlers in a similar manner to explicit typecasts. - Adjust saving/restoring the view state so that hidden nodes are taken into account as well. This is necessary since it may be the case that the handler had to be applied to the hidden child rather than the visible node (i.e. the BMessage handler when applied to a pointer to a BMessage). All together, these changes allow choosing to switch between views of a type when the Debugger has multiple handlers for it. For example, for BMessages this allows switching between displaying the raw underlying structure vs the decoded message content.
|
#
3995592c |
|
10-Jan-2018 |
Rene Gollent <rene@gollent.com> |
Debugger: Fix #13939, more work on #13800. - Fix various cases where OpenHashTables weren't being cleared properly. - Fix various reference counting errors. - Simplify FileManager reference handling. - Fix bug in LocatableDirectory where the directory named '/' would have its name returned as empty. This would lead to failed lookups for entries already in the table, and ultimately corrupted the hash table when deleting unused entries, leading to #13939. This was previously never noticed due to the entries not being freed properly. - AbbreviationTable wasn't clearing its entries.
|