[Libreoffice-commits] core.git: solenv/vs

Mike Kaganski mike.kaganski at collabora.com
Thu Nov 9 13:00:43 UTC 2017


 solenv/vs/LibreOffice.natvis |   51 ++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 48 insertions(+), 3 deletions(-)

New commits:
commit 81b5f591dfe428efb3de278460ca662eacbf02bc
Author: Mike Kaganski <mike.kaganski at collabora.com>
Date:   Thu Nov 9 15:56:25 2017 +0300

    LibreOffice.natvis: add SfxItemSet visualizer
    
    Change-Id: I2d63cf73df945cc84fbfb93ad431f243caa238e1
    Reviewed-on: https://gerrit.libreoffice.org/44542
    Reviewed-by: Mike Kaganski <mike.kaganski at collabora.com>
    Tested-by: Mike Kaganski <mike.kaganski at collabora.com>

diff --git a/solenv/vs/LibreOffice.natvis b/solenv/vs/LibreOffice.natvis
index 4b2f29ebe4d8..56e1e80ae48b 100644
--- a/solenv/vs/LibreOffice.natvis
+++ b/solenv/vs/LibreOffice.natvis
@@ -64,8 +64,9 @@
     <DisplayString>{pType->eTypeClass,en}</DisplayString>
     <Expand>
       <ExpandedItem Condition="pType->eTypeClass == 19">(com::sun::star::uno::Exception *)pData</ExpandedItem>
+      <ExpandedItem Condition="pType->eTypeClass == 20">*(uno_Sequence **)pData</ExpandedItem>
       <ExpandedItem Condition="pType->eTypeClass == 22">(com::sun::star::uno::BaseReference *)pData</ExpandedItem>
-      <Item Name="Data" Condition="pType->eTypeClass != 19 && pType->eTypeClass != 22">pData</Item>
+      <Item Name="Data" Condition="pType->eTypeClass != 19 && pType->eTypeClass != 20 && pType->eTypeClass != 22">pData</Item>
     </Expand>
   </Type>
   <Type Name="basegfx::internal::ImplMatLine < 3 >">
@@ -101,9 +102,16 @@
   <Type Name="SwRect">
     <DisplayString>{m_Point}, {m_Size}</DisplayString>
   </Type>
+  <Type Name="_sal_Sequence">
+    <DisplayString Condition="nElements == 0">_sal_Sequence (empty)</DisplayString>
+    <DisplayString>_sal_Sequence of {nElements,d} elements</DisplayString>
+    <Expand>
+      <Item Name="[size]">nElements,d</Item>
+    </Expand>
+  </Type>
   <Type Name="com::sun::star::uno::Sequence < * >">
-    <DisplayString Condition="_pSequence->nElements == 0">empty sequence</DisplayString>
-    <DisplayString>sequence of {_pSequence->nElements,d} {"$T1",sb}</DisplayString>
+    <DisplayString Condition="_pSequence->nElements == 0">Sequence (empty)</DisplayString>
+    <DisplayString>Sequence of {_pSequence->nElements,d} {"$T1",sb}</DisplayString>
     <Expand>
       <Item Name="[size]">_pSequence->nElements,d</Item>
       <ArrayItems>
@@ -254,4 +262,41 @@
       <Item Condition="_pType->pType != nullptr" Name="Alignment">_pType->pType->nAlignment</Item>
     </Expand>
   </Type>
+  <Type Name="SfxBoolItem">
+    <DisplayString>{{which={m_nWhich,x}}} {m_bValue}</DisplayString>
+  </Type>
+  <Type Name="CntUnencodedStringItem">
+    <DisplayString>{{which={m_nWhich,x}}} {m_aValue}</DisplayString>
+  </Type>
+  <Type Name="SfxUsrAnyItem">
+    <DisplayString>{{which={m_nWhich,x}}} {aValue}</DisplayString>
+  </Type>
+  <Type Name="SfxPoolItem">
+    <DisplayString>{{which={m_nWhich,x}}}</DisplayString>
+  </Type>
+  <Type Name="SfxItemSet">
+    <DisplayString>{{size={m_nCount,d}}}</DisplayString>
+    <Expand>
+      <Item Name="[size]">m_nCount,d</Item>
+      <IndexListItems>
+        <Size>m_nCount</Size>
+        <ValueNode>*(m_pItems[$i])</ValueNode>
+      </IndexListItems>
+      <Synthetic Name="Which Ranges">
+        <Expand>
+          <CustomListItems>
+            <Variable Name='pCurRange' InitialValue='m_pWhichRanges'/>
+            <Variable Name='i' InitialValue='0'/>
+            <Loop Condition='*pCurRange'>
+              <Item Name='[{i,d}] begin'>*pCurRange</Item>
+              <Item Name='[{i,d}] end'>*(pCurRange+1)</Item>
+              <Exec>pCurRange+=2</Exec>
+              <Exec>++i</Exec>
+            </Loop>
+          </CustomListItems>
+        </Expand>
+      </Synthetic>
+      <Item Condition="m_pParent != nullptr" Name="Parent">*m_pParent</Item>
+    </Expand>
+  </Type>
 </AutoVisualizer>


More information about the Libreoffice-commits mailing list