Files
wxWidgets/misc/msvc/wxWidgets.natvis
Vadim Zeitlin c982ab96f5 Add MSVS visualizers for wxArrayString, wxVector, wxWindowList.
Make viewing the contents of the (most common) container types easier when
debugging in MSVS 2012 or later.

Provide std::{vector,list}-like visualizers for wxVector and wxWindowList and
a special visualizer allowing to see the contents of wxArrayString in a
relatively common case when it has just or two elements.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@76706 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-15 00:30:13 +00:00

80 lines
2.6 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="utf-8"?>
<!--
This file contains visualizers for Visual Studio 2012+ debugger.
It should be copied into the %USERPROFILE%\My Documents\Visual Studio 2012\Visualizers\
directory (or the corresponding location for newer versions, e.g. ...2013\Visualizers).
Introductory reference for the format:
http://blogs.msdn.com/b/vcblog/archive/2012/07/12/10329460.aspx
http://code.msdn.microsoft.com/windowsdesktop/Writing-type-visualizers-2eae77a2#content
-->
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
<Type Name="wxString">
<DisplayString>{m_impl}</DisplayString>
<StringView>m_impl</StringView>
</Type>
<Type Name="wxPoint">
<DisplayString>{x}, {y}</DisplayString>
</Type>
<Type Name="wxSize">
<DisplayString>{x} × {y}</DisplayString>
</Type>
<Type Name="wxRect">
<DisplayString>{x}, {y} {width} × {height}</DisplayString>
</Type>
<Type Name="wxLongLong">
<DisplayString>{m_ll}</DisplayString>
</Type>
<Type Name="wxULongLong">
<DisplayString>{m_ll}</DisplayString>
</Type>
<Type Name="wxArrayString">
<DisplayString Condition="m_nCount==0">empty</DisplayString>
<DisplayString Condition="m_nCount==1">{m_pItems[0]}</DisplayString>
<DisplayString Condition="m_nCount==2">{m_pItems[0]} and {m_pItems[1]}</DisplayString>
<DisplayString>size={m_nCount}: {m_pItems[0]}, {m_pItems[1]}, ...</DisplayString>
<Expand>
<ArrayItems>
<Size>m_nCount</Size>
<ValuePointer>m_pItems</ValuePointer>
</ArrayItems>
</Expand>
</Type>
<!--
Defining visualizer for wxListBase is not really useful, so do it for
the most commonly used "concrete" list type.
-->
<Type Name="wxWindowList">
<DisplayString>size={m_count}</DisplayString>
<Expand>
<Item Name="[size]">m_count</Item>
<LinkedListItems>
<Size>m_count</Size>
<HeadPointer>m_nodeFirst</HeadPointer>
<NextPointer>m_next</NextPointer>
<ValueNode>(wxWindow*)m_data</ValueNode>
</LinkedListItems>
</Expand>
</Type>
<Type Name="wxVector&lt;*&gt;">
<DisplayString>size={m_size}</DisplayString>
<Expand>
<Item Name="[size]">m_size</Item>
<Item Name="[capacity]">m_capacity</Item>
<ArrayItems>
<Size>m_size</Size>
<ValuePointer>m_values</ValuePointer>
</ArrayItems>
</Expand>
</Type>
</AutoVisualizer>