[Libreoffice-commits] core.git: include/svx svx/source
Tomaž Vajngerl (via logerrit)
logerrit at kemper.freedesktop.org
Sat Jan 16 12:59:15 UTC 2021
include/svx/devtools/DevelopmentToolDockingWindow.hxx | 7
svx/source/devtools/DevelopmentToolDockingWindow.cxx | 340 ++++++++++++++++--
2 files changed, 317 insertions(+), 30 deletions(-)
New commits:
commit 0ffebfb691ae6fcc8df4df4a0611276bb4f33b59
Author: Tomaž Vajngerl <tomaz.vajngerl at collabora.co.uk>
AuthorDate: Sat Jan 16 00:22:27 2021 +0900
Commit: Tomaž Vajngerl <quikee at gmail.com>
CommitDate: Sat Jan 16 13:58:41 2021 +0100
devtools: Add more elements to the document model tree view
This change adds more elements to the document model tree view.
for all: style families and styles
for Writer: shapes, graphic objects, OLE objects, frames, tables
for Impress: master slides
for Calc: shapes, charts, pivot tables
Change-Id: Ic6d2c6c8f45fe7881e17aee3727864aeb4d701c0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109376
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee at gmail.com>
diff --git a/include/svx/devtools/DevelopmentToolDockingWindow.hxx b/include/svx/devtools/DevelopmentToolDockingWindow.hxx
index 159efae16425..4676a77a5466 100644
--- a/include/svx/devtools/DevelopmentToolDockingWindow.hxx
+++ b/include/svx/devtools/DevelopmentToolDockingWindow.hxx
@@ -43,7 +43,14 @@ private:
void fillSheets(weld::TreeIter const& rParent);
void fillPages(weld::TreeIter const& rParent);
void fillSlides(weld::TreeIter const& rParent);
+ void fillMasterSlides(weld::TreeIter const& rParent);
void fillParagraphs(weld::TreeIter const& rParent);
+ void fillShapes(weld::TreeIter const& rParent);
+ void fillTables(weld::TreeIter const& rParent);
+ void fillFrames(weld::TreeIter const& rParent);
+ void fillGraphicObjects(weld::TreeIter const& rParent);
+ void fillOLEObjects(weld::TreeIter const& rParent);
+ void fillStyleFamilies(weld::TreeIter const& rParent);
public:
DevelopmentToolDockingWindow(SfxBindings* pBindings, SfxChildWindow* pChildWindow,
diff --git a/svx/source/devtools/DevelopmentToolDockingWindow.cxx b/svx/source/devtools/DevelopmentToolDockingWindow.cxx
index f62d3b6eab25..4bfd6df94463 100644
--- a/svx/source/devtools/DevelopmentToolDockingWindow.cxx
+++ b/svx/source/devtools/DevelopmentToolDockingWindow.cxx
@@ -46,11 +46,24 @@
#include <com/sun/star/drawing/XDrawPage.hpp>
#include <com/sun/star/drawing/XDrawPages.hpp>
#include <com/sun/star/drawing/XDrawPagesSupplier.hpp>
+#include <com/sun/star/drawing/XDrawPageSupplier.hpp>
+#include <com/sun/star/drawing/XMasterPagesSupplier.hpp>
+
#include <com/sun/star/container/XNamed.hpp>
#include <com/sun/star/sheet/XSpreadsheetDocument.hpp>
#include <com/sun/star/sheet/XSpreadsheet.hpp>
#include <com/sun/star/sheet/XSpreadsheets.hpp>
+#include <com/sun/star/sheet/XDataPilotTablesSupplier.hpp>
+#include <com/sun/star/sheet/XDataPilotTables.hpp>
+#include <com/sun/star/table/XTableChartsSupplier.hpp>
+#include <com/sun/star/table/XTableCharts.hpp>
+
+#include <com/sun/star/text/XTextTablesSupplier.hpp>
+#include <com/sun/star/text/XTextFramesSupplier.hpp>
+#include <com/sun/star/text/XTextGraphicObjectsSupplier.hpp>
+#include <com/sun/star/text/XTextEmbeddedObjectsSupplier.hpp>
+#include <com/sun/star/style/XStyleFamiliesSupplier.hpp>
using namespace css;
@@ -95,11 +108,32 @@ private:
SelectionChangeHandler& operator=(const SelectionChangeHandler&) = delete;
};
+void lclAppendToParent(std::unique_ptr<weld::TreeView>& rTree, weld::TreeIter const& rParent,
+ OUString const& rString, bool bChildrenOnDemand = false)
+{
+ rTree->insert(&rParent, -1, &rString, nullptr, nullptr, nullptr, bChildrenOnDemand, nullptr);
+}
+
+void lclAppendToParentWithIter(std::unique_ptr<weld::TreeView>& rTree,
+ weld::TreeIter const& rParent, weld::TreeIter& rCurrent,
+ OUString const& rString, bool bChildrenOnDemand = false)
+{
+ rTree->insert(&rParent, -1, &rString, nullptr, nullptr, nullptr, bChildrenOnDemand, &rCurrent);
+}
+
void lclAppend(std::unique_ptr<weld::TreeView>& rTree, OUString const& rString)
{
rTree->insert(nullptr, -1, &rString, nullptr, nullptr, nullptr, true, nullptr);
}
+OUString lclGetNamed(uno::Reference<uno::XInterface> const& xObject)
+{
+ uno::Reference<container::XNamed> xNamed(xObject, uno::UNO_QUERY);
+ if (!xNamed.is())
+ return OUString();
+ return xNamed->getName();
+}
+
} // end anonymous namespace
DevelopmentToolDockingWindow::DevelopmentToolDockingWindow(SfxBindings* pInputBindings,
@@ -160,6 +194,39 @@ IMPL_LINK(DevelopmentToolDockingWindow, ModelTreeViewExpanding, weld::TreeIter c
clearChildren(rParent);
fillParagraphs(rParent);
}
+ else if (aText == "Shapes")
+ {
+ if (msDocumentType == "Text Document")
+ {
+ clearChildren(rParent);
+ fillShapes(rParent);
+ }
+ }
+ else if (aText == "Tables")
+ {
+ clearChildren(rParent);
+ fillTables(rParent);
+ }
+ else if (aText == "Frames")
+ {
+ clearChildren(rParent);
+ fillFrames(rParent);
+ }
+ else if (aText == "Graphic Objects")
+ {
+ clearChildren(rParent);
+ fillGraphicObjects(rParent);
+ }
+ else if (aText == "Embedded Objects")
+ {
+ clearChildren(rParent);
+ fillOLEObjects(rParent);
+ }
+ else if (aText == "Styles")
+ {
+ clearChildren(rParent);
+ fillStyleFamilies(rParent);
+ }
else if (aText == "Pages")
{
clearChildren(rParent);
@@ -170,11 +237,17 @@ IMPL_LINK(DevelopmentToolDockingWindow, ModelTreeViewExpanding, weld::TreeIter c
clearChildren(rParent);
fillSlides(rParent);
}
+ else if (aText == "Master Slides")
+ {
+ clearChildren(rParent);
+ fillMasterSlides(rParent);
+ }
else if (aText == "Sheets")
{
clearChildren(rParent);
fillSheets(rParent);
}
+
return true;
}
@@ -188,6 +261,89 @@ IMPL_LINK_NOARG(DevelopmentToolDockingWindow, LeftSideSelected, weld::TreeView&,
introspect(rObject);
}
+void DevelopmentToolDockingWindow::fillGraphicObjects(weld::TreeIter const& rParent)
+{
+ uno::Reference<text::XTextGraphicObjectsSupplier> xSupplier(mxRoot, uno::UNO_QUERY);
+ if (!xSupplier.is())
+ return;
+ uno::Reference<container::XNameAccess> xGraphicObjects = xSupplier->getGraphicObjects();
+ const uno::Sequence<OUString> aNames = xGraphicObjects->getElementNames();
+ for (auto const& rName : aNames)
+ {
+ maUnoObjectMap.emplace(rName, xGraphicObjects);
+ lclAppendToParent(mpLeftSideTreeView, rParent, rName);
+ }
+}
+
+void DevelopmentToolDockingWindow::fillOLEObjects(weld::TreeIter const& rParent)
+{
+ uno::Reference<text::XTextEmbeddedObjectsSupplier> xSupplier(mxRoot, uno::UNO_QUERY);
+ if (!xSupplier.is())
+ return;
+ uno::Reference<container::XNameAccess> xOleObjects = xSupplier->getEmbeddedObjects();
+ const uno::Sequence<OUString> aNames = xOleObjects->getElementNames();
+ for (auto const& rName : aNames)
+ {
+ maUnoObjectMap.emplace(rName, xOleObjects);
+ lclAppendToParent(mpLeftSideTreeView, rParent, rName);
+ }
+}
+
+void DevelopmentToolDockingWindow::fillStyleFamilies(weld::TreeIter const& rParent)
+{
+ uno::Reference<style::XStyleFamiliesSupplier> xSupplier(mxRoot, uno::UNO_QUERY);
+ if (!xSupplier.is())
+ return;
+ uno::Reference<container::XNameAccess> xStyleFamilies = xSupplier->getStyleFamilies();
+ const uno::Sequence<OUString> aNames = xStyleFamilies->getElementNames();
+ for (auto const& rFamilyName : aNames)
+ {
+ uno::Reference<container::XNameAccess> xStyleFamily(xStyleFamilies->getByName(rFamilyName),
+ uno::UNO_QUERY);
+ maUnoObjectMap.emplace(rFamilyName, xStyleFamily);
+
+ std::unique_ptr<weld::TreeIter> pCurrentStyleFamily = mpLeftSideTreeView->make_iterator();
+ lclAppendToParentWithIter(mpLeftSideTreeView, rParent, *pCurrentStyleFamily, rFamilyName);
+
+ const uno::Sequence<OUString> aStyleNames = xStyleFamily->getElementNames();
+ for (auto const& rStyleName : aStyleNames)
+ {
+ uno::Reference<uno::XInterface> xStyle(xStyleFamily->getByName(rStyleName),
+ uno::UNO_QUERY);
+ maUnoObjectMap.emplace(rStyleName, xStyle);
+ lclAppendToParent(mpLeftSideTreeView, *pCurrentStyleFamily, rStyleName);
+ }
+ }
+}
+
+void DevelopmentToolDockingWindow::fillFrames(weld::TreeIter const& rParent)
+{
+ uno::Reference<text::XTextFramesSupplier> xSupplier(mxRoot, uno::UNO_QUERY);
+ if (!xSupplier.is())
+ return;
+ uno::Reference<container::XNameAccess> xFrames = xSupplier->getTextFrames();
+ const uno::Sequence<OUString> aNames = xFrames->getElementNames();
+ for (auto const& rName : aNames)
+ {
+ maUnoObjectMap.emplace(rName, xFrames);
+ lclAppendToParent(mpLeftSideTreeView, rParent, rName);
+ }
+}
+
+void DevelopmentToolDockingWindow::fillTables(weld::TreeIter const& rParent)
+{
+ uno::Reference<text::XTextTablesSupplier> xSupplier(mxRoot, uno::UNO_QUERY);
+ if (!xSupplier.is())
+ return;
+ uno::Reference<container::XNameAccess> xTables = xSupplier->getTextTables();
+ const uno::Sequence<OUString> aNames = xTables->getElementNames();
+ for (auto const& rName : aNames)
+ {
+ maUnoObjectMap.emplace(rName, xTables);
+ lclAppendToParent(mpLeftSideTreeView, rParent, rName);
+ }
+}
+
void DevelopmentToolDockingWindow::fillSheets(weld::TreeIter const& rParent)
{
uno::Reference<sheet::XSpreadsheetDocument> xSheetDoc(mxRoot, uno::UNO_QUERY);
@@ -199,11 +355,72 @@ void DevelopmentToolDockingWindow::fillSheets(weld::TreeIter const& rParent)
{
uno::Reference<sheet::XSpreadsheet> xSheet(xIndex->getByIndex(i), uno::UNO_QUERY);
+ OUString aSlideString = lclGetNamed(xSheet);
+ if (aSlideString.isEmpty())
+ aSlideString = "Sheet " + OUString::number(i + 1);
+
std::unique_ptr<weld::TreeIter> pCurrentSheet = mpLeftSideTreeView->make_iterator();
- OUString aSlideString = "Sheet " + OUString::number(i + 1);
+ lclAppendToParentWithIter(mpLeftSideTreeView, rParent, *pCurrentSheet, aSlideString);
maUnoObjectMap.emplace(aSlideString, xSheet);
- mpLeftSideTreeView->insert(&rParent, -1, &aSlideString, nullptr, nullptr, nullptr, false,
- pCurrentSheet.get());
+
+ {
+ uno::Reference<drawing::XDrawPageSupplier> xDrawPageSupplier(xSheet, uno::UNO_QUERY);
+ uno::Reference<container::XIndexAccess> xDraws = xDrawPageSupplier->getDrawPage();
+
+ std::unique_ptr<weld::TreeIter> pCurrentShapes = mpLeftSideTreeView->make_iterator();
+
+ lclAppendToParentWithIter(mpLeftSideTreeView, *pCurrentSheet, *pCurrentShapes,
+ "Shapes");
+ maUnoObjectMap.emplace("Shapes", xDraws);
+
+ for (sal_Int32 nIndexShapes = 0; nIndexShapes < xDraws->getCount(); ++nIndexShapes)
+ {
+ uno::Reference<uno::XInterface> xShape(xDraws->getByIndex(nIndexShapes),
+ uno::UNO_QUERY);
+ OUString aShapeName = lclGetNamed(xShape);
+ if (aShapeName.isEmpty())
+ aShapeName = "Shape " + OUString::number(nIndexShapes + 1);
+
+ lclAppendToParent(mpLeftSideTreeView, *pCurrentShapes, aShapeName);
+ maUnoObjectMap.emplace(aShapeName, xShape);
+ }
+ }
+
+ {
+ uno::Reference<table::XTableChartsSupplier> xSupplier(xSheet, uno::UNO_QUERY);
+ uno::Reference<table::XTableCharts> xCharts = xSupplier->getCharts();
+ std::unique_ptr<weld::TreeIter> pCurrentCharts = mpLeftSideTreeView->make_iterator();
+ lclAppendToParentWithIter(mpLeftSideTreeView, *pCurrentSheet, *pCurrentCharts,
+ "Charts");
+ maUnoObjectMap.emplace("Charts", xCharts);
+
+ const uno::Sequence<OUString> aNames = xCharts->getElementNames();
+ for (auto const& rName : aNames)
+ {
+ uno::Reference<uno::XInterface> xChart(xCharts->getByName(rName), uno::UNO_QUERY);
+ maUnoObjectMap.emplace(rName, xChart);
+ lclAppendToParent(mpLeftSideTreeView, *pCurrentCharts, rName);
+ }
+ }
+
+ {
+ uno::Reference<sheet::XDataPilotTablesSupplier> xSupplier(xSheet, uno::UNO_QUERY);
+ uno::Reference<sheet::XDataPilotTables> xPivotTables = xSupplier->getDataPilotTables();
+ std::unique_ptr<weld::TreeIter> pCurrentPivotTables
+ = mpLeftSideTreeView->make_iterator();
+ lclAppendToParentWithIter(mpLeftSideTreeView, *pCurrentSheet, *pCurrentPivotTables,
+ "Pivot Tables");
+ maUnoObjectMap.emplace("Pivot Tables", xPivotTables);
+
+ const uno::Sequence<OUString> aNames = xPivotTables->getElementNames();
+ for (auto const& rName : aNames)
+ {
+ uno::Reference<uno::XInterface> xPivotTable(xPivotTables->getByName(rName),
+ uno::UNO_QUERY);
+ maUnoObjectMap.emplace(rName, xPivotTable);
+ lclAppendToParent(mpLeftSideTreeView, *pCurrentPivotTables, rName);
+ }
+ }
}
}
@@ -219,23 +436,23 @@ void DevelopmentToolDockingWindow::fillPages(weld::TreeIter const& rParent)
if (!xPage.is())
continue;
+ OUString aPageString = lclGetNamed(xPage);
+ if (aPageString.isEmpty())
+ aPageString = "Page " + OUString::number(i + 1);
+
std::unique_ptr<weld::TreeIter> pCurrentPage = mpLeftSideTreeView->make_iterator();
- OUString aPageString = "Page " + OUString::number(i + 1);
+ lclAppendToParentWithIter(mpLeftSideTreeView, rParent, *pCurrentPage, aPageString);
maUnoObjectMap.emplace(aPageString, xPage);
- mpLeftSideTreeView->insert(&rParent, -1, &aPageString, nullptr, nullptr, nullptr, false,
- pCurrentPage.get());
- for (sal_Int32 j = 0; j < xPage->getCount(); ++j)
+ for (sal_Int32 nPageIndex = 0; nPageIndex < xPage->getCount(); ++nPageIndex)
{
- uno::Reference<container::XNamed> xShape(xPage->getByIndex(j), uno::UNO_QUERY);
+ uno::Reference<uno::XInterface> xShape(xPage->getByIndex(nPageIndex), uno::UNO_QUERY);
- OUString aShapeName = xShape->getName();
+ OUString aShapeName = lclGetNamed(xShape);
if (aShapeName.isEmpty())
- aShapeName = "Shape " + OUString::number(j + 1);
+ aShapeName = "Shape " + OUString::number(nPageIndex + 1);
- std::unique_ptr<weld::TreeIter> pCurrentShape = mpLeftSideTreeView->make_iterator();
- mpLeftSideTreeView->insert(pCurrentPage.get(), -1, &aShapeName, nullptr, nullptr,
- nullptr, false, pCurrentShape.get());
+ lclAppendToParent(mpLeftSideTreeView, *pCurrentPage, aShapeName);
maUnoObjectMap.emplace(aShapeName, xShape);
}
}
@@ -253,23 +470,57 @@ void DevelopmentToolDockingWindow::fillSlides(weld::TreeIter const& rParent)
if (!xPage.is())
continue;
+ OUString aSlideName = lclGetNamed(xPage);
+ if (aSlideName.isEmpty())
+ aSlideName = "Slide " + OUString::number(i + 1);
+
std::unique_ptr<weld::TreeIter> pCurrentPage = mpLeftSideTreeView->make_iterator();
- OUString aSlideString = "Slide " + OUString::number(i + 1);
- maUnoObjectMap.emplace(aSlideString, xPage);
- mpLeftSideTreeView->insert(&rParent, -1, &aSlideString, nullptr, nullptr, nullptr, false,
- pCurrentPage.get());
+ lclAppendToParentWithIter(mpLeftSideTreeView, rParent, *pCurrentPage, aSlideName);
+ maUnoObjectMap.emplace(aSlideName, xPage);
- for (sal_Int32 j = 0; j < xPage->getCount(); ++j)
+ for (sal_Int32 nPageIndex = 0; nPageIndex < xPage->getCount(); ++nPageIndex)
{
- uno::Reference<container::XNamed> xShape(xPage->getByIndex(j), uno::UNO_QUERY);
+ uno::Reference<uno::XInterface> xShape(xPage->getByIndex(nPageIndex), uno::UNO_QUERY);
+
+ OUString aShapeName = lclGetNamed(xShape);
+ if (aShapeName.isEmpty())
+ aShapeName = "Shape " + OUString::number(nPageIndex + 1);
+
+ lclAppendToParent(mpLeftSideTreeView, *pCurrentPage, aShapeName);
+ maUnoObjectMap.emplace(aShapeName, xShape);
+ }
+ }
+}
+
+void DevelopmentToolDockingWindow::fillMasterSlides(weld::TreeIter const& rParent)
+{
+ uno::Reference<drawing::XMasterPagesSupplier> xSupplier(mxRoot, uno::UNO_QUERY);
+ if (!xSupplier.is())
+ return;
+ uno::Reference<drawing::XDrawPages> xDrawPages = xSupplier->getMasterPages();
+ for (sal_Int32 i = 0; i < xDrawPages->getCount(); ++i)
+ {
+ uno::Reference<drawing::XDrawPage> xPage(xDrawPages->getByIndex(i), uno::UNO_QUERY);
+ if (!xPage.is())
+ continue;
+
+ OUString aSlideName = lclGetNamed(xPage);
+ if (aSlideName.isEmpty())
+ aSlideName = "Master " + OUString::number(i + 1);
+
+ std::unique_ptr<weld::TreeIter> pCurrentPage = mpLeftSideTreeView->make_iterator();
+ lclAppendToParentWithIter(mpLeftSideTreeView, rParent, *pCurrentPage, aSlideName);
+ maUnoObjectMap.emplace(aSlideName, xPage);
+
+ for (sal_Int32 nPageIndex = 0; nPageIndex < xPage->getCount(); ++nPageIndex)
+ {
+ uno::Reference<container::XNamed> xShape(xPage->getByIndex(nPageIndex), uno::UNO_QUERY);
OUString aShapeName = xShape->getName();
if (aShapeName.isEmpty())
- aShapeName = "Shape " + OUString::number(j + 1);
+ aShapeName = "Shape " + OUString::number(nPageIndex + 1);
- std::unique_ptr<weld::TreeIter> pCurrentShape = mpLeftSideTreeView->make_iterator();
- mpLeftSideTreeView->insert(pCurrentPage.get(), -1, &aShapeName, nullptr, nullptr,
- nullptr, false, pCurrentShape.get());
+ lclAppendToParent(mpLeftSideTreeView, *pCurrentPage, aShapeName);
maUnoObjectMap.emplace(aShapeName, xShape);
}
}
@@ -292,22 +543,41 @@ void DevelopmentToolDockingWindow::fillParagraphs(weld::TreeIter const& rParent)
if (xParagraphEnum.is())
{
sal_Int32 i = 0;
- std::unique_ptr<weld::TreeIter> pCurrent = mpLeftSideTreeView->make_iterator();
while (xParagraphEnum->hasMoreElements())
{
- OUString aString = "Paragraph " + OUString::number(i + 1);
- mpLeftSideTreeView->insert(&rParent, -1, &aString, nullptr, nullptr, nullptr, false,
- pCurrent.get());
+ uno::Reference<text::XTextContent> const xParagraph(xParagraphEnum->nextElement(),
+ uno::UNO_QUERY);
+ OUString aString = lclGetNamed(xParagraph);
+ if (aString.isEmpty())
+ aString = "Paragraph " + OUString::number(i + 1);
+ lclAppendToParent(mpLeftSideTreeView, rParent, aString);
- uno::Reference<text::XTextContent> const xElem(xParagraphEnum->nextElement(),
- uno::UNO_QUERY);
- maUnoObjectMap.emplace(aString, xElem);
+ maUnoObjectMap.emplace(aString, xParagraph);
i++;
}
}
}
+void DevelopmentToolDockingWindow::fillShapes(weld::TreeIter const& rParent)
+{
+ uno::Reference<text::XTextDocument> xDocument(mxRoot, uno::UNO_QUERY);
+ if (!xDocument.is())
+ return;
+ uno::Reference<drawing::XDrawPageSupplier> xDrawPageSupplier(xDocument, uno::UNO_QUERY);
+ uno::Reference<container::XIndexAccess> xDraws = xDrawPageSupplier->getDrawPage();
+ for (sal_Int32 nIndexShapes = 0; nIndexShapes < xDraws->getCount(); ++nIndexShapes)
+ {
+ uno::Reference<uno::XInterface> xShape(xDraws->getByIndex(nIndexShapes), uno::UNO_QUERY);
+ OUString aShapeName = lclGetNamed(xShape);
+ if (aShapeName.isEmpty())
+ aShapeName = "Shape " + OUString::number(nIndexShapes + 1);
+
+ lclAppendToParent(mpLeftSideTreeView, rParent, aShapeName);
+ maUnoObjectMap.emplace(aShapeName, xShape);
+ }
+}
+
void DevelopmentToolDockingWindow::inspectDocument()
{
uno::Reference<lang::XServiceInfo> xDocument(mxRoot, uno::UNO_QUERY_THROW);
@@ -320,6 +590,7 @@ void DevelopmentToolDockingWindow::inspectDocument()
maUnoObjectMap.emplace(msDocumentType, mxRoot);
lclAppend(mpLeftSideTreeView, "Sheets");
+ lclAppend(mpLeftSideTreeView, "Styles");
}
else if (xDocument->supportsService("com.sun.star.presentation.PresentationDocument"))
{
@@ -329,6 +600,8 @@ void DevelopmentToolDockingWindow::inspectDocument()
maUnoObjectMap.emplace(msDocumentType, mxRoot);
lclAppend(mpLeftSideTreeView, "Slides");
+ lclAppend(mpLeftSideTreeView, "Styles");
+ lclAppend(mpLeftSideTreeView, "Master Slides");
}
else if (xDocument->supportsService("com.sun.star.drawing.DrawingDocument"))
{
@@ -338,6 +611,7 @@ void DevelopmentToolDockingWindow::inspectDocument()
maUnoObjectMap.emplace(msDocumentType, mxRoot);
lclAppend(mpLeftSideTreeView, "Pages");
+ lclAppend(mpLeftSideTreeView, "Styles");
}
else if (xDocument->supportsService("com.sun.star.text.TextDocument")
|| xDocument->supportsService("com.sun.star.text.WebDocument"))
@@ -348,6 +622,12 @@ void DevelopmentToolDockingWindow::inspectDocument()
maUnoObjectMap.emplace(msDocumentType, mxRoot);
lclAppend(mpLeftSideTreeView, "Paragraphs");
+ lclAppend(mpLeftSideTreeView, "Shapes");
+ lclAppend(mpLeftSideTreeView, "Tables");
+ lclAppend(mpLeftSideTreeView, "Frames");
+ lclAppend(mpLeftSideTreeView, "Graphic Objects");
+ lclAppend(mpLeftSideTreeView, "Embedded Objects");
+ lclAppend(mpLeftSideTreeView, "Styles");
}
}
More information about the Libreoffice-commits
mailing list