LibreOffice Module chart2 (master) 1
Public Types | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
chart::ObjectHierarchy Class Reference

#include <ObjectHierarchy.hxx>

Public Types

typedef std::vector< ObjectIdentifiertChildContainer
 

Public Member Functions

 ObjectHierarchy (const rtl::Reference<::chart::ChartModel > &xChartDocument, ExplicitValueProvider *pExplicitValueProvider, bool bFlattenDiagram=false, bool bOrderingForElementSelector=false)
 
 ~ObjectHierarchy ()
 
const tChildContainergetTopLevelChildren () const
 equal to getChildren( getRootNodeOID()) More...
 
bool hasChildren (const ObjectIdentifier &rParent) const
 
const tChildContainergetChildren (const ObjectIdentifier &rParent) const
 
const tChildContainergetSiblings (const ObjectIdentifier &rNode) const
 
ObjectIdentifier getParent (const ObjectIdentifier &rNode) const
 The result is empty, if the node cannot be found in the tree. More...
 
sal_Int32 getIndexInParent (const ObjectIdentifier &rNode) const
 

Static Public Member Functions

static ObjectIdentifier getRootNodeOID ()
 
static bool isRootNode (const ObjectIdentifier &rOID)
 

Private Types

typedef std::map< ObjectIdentifier, tChildContainertChildMap
 

Private Member Functions

void createTree (const rtl::Reference<::chart::ChartModel > &xChartDocument)
 
void createAxesTree (tChildContainer &rContainer, const rtl::Reference<::chart::ChartModel > &xChartDoc, const rtl::Reference< ::chart::Diagram > &xDiagram)
 
void createDiagramTree (tChildContainer &rContainer, const rtl::Reference<::chart::ChartModel > &xChartDoc, const rtl::Reference< ::chart::Diagram > &xDiagram)
 
void createDataSeriesTree (tChildContainer &rOutDiagramSubContainer, const rtl::Reference< ::chart::Diagram > &xDiagram)
 
void createLegendTree (tChildContainer &rContainer, const rtl::Reference<::chart::ChartModel > &xChartDoc, const rtl::Reference< ::chart::Diagram > &xDiagram)
 
void createAdditionalShapesTree (tChildContainer &rContainer)
 
ObjectIdentifier getParentImpl (const ObjectIdentifier &rParentOID, const ObjectIdentifier &rOID) const
 

Static Private Member Functions

static void createWallAndFloor (tChildContainer &rContainer, const rtl::Reference< ::chart::Diagram > &xDiagram)
 

Private Attributes

tChildMap m_aChildMap
 
ExplicitValueProvider * m_pExplicitValueProvider
 
bool m_bFlattenDiagram
 
bool m_bOrderingForElementSelector
 

Detailed Description

Definition at line 34 of file ObjectHierarchy.hxx.

Member Typedef Documentation

◆ tChildContainer

Definition at line 37 of file ObjectHierarchy.hxx.

◆ tChildMap

Definition at line 90 of file ObjectHierarchy.hxx.

Constructor & Destructor Documentation

◆ ObjectHierarchy()

chart::ObjectHierarchy::ObjectHierarchy ( const rtl::Reference<::chart::ChartModel > &  xChartDocument,
ExplicitValueProvider *  pExplicitValueProvider,
bool  bFlattenDiagram = false,
bool  bOrderingForElementSelector = false 
)
explicit
Parameters
bFlattenDiagramIf <TRUE>, the content of the diagram (data series, wall, floor, etc.) is treated as being at the same level as the diagram. (This is used for keyboard navigation).

Definition at line 517 of file ObjectHierarchy.cxx.

References createTree(), and m_pExplicitValueProvider.

◆ ~ObjectHierarchy()

chart::ObjectHierarchy::~ObjectHierarchy ( )

Definition at line 531 of file ObjectHierarchy.cxx.

Member Function Documentation

◆ createAdditionalShapesTree()

void chart::ObjectHierarchy::createAdditionalShapesTree ( tChildContainer rContainer)
private

◆ createAxesTree()

void chart::ObjectHierarchy::createAxesTree ( tChildContainer rContainer,
const rtl::Reference<::chart::ChartModel > &  xChartDoc,
const rtl::Reference< ::chart::Diagram > &  xDiagram 
)
private

◆ createDataSeriesTree()

void chart::ObjectHierarchy::createDataSeriesTree ( tChildContainer rOutDiagramSubContainer,
const rtl::Reference< ::chart::Diagram > &  xDiagram 
)
private

◆ createDiagramTree()

void chart::ObjectHierarchy::createDiagramTree ( tChildContainer rContainer,
const rtl::Reference<::chart::ChartModel > &  xChartDoc,
const rtl::Reference< ::chart::Diagram > &  xDiagram 
)
private

◆ createLegendTree()

void chart::ObjectHierarchy::createLegendTree ( tChildContainer rContainer,
const rtl::Reference<::chart::ChartModel > &  xChartDoc,
const rtl::Reference< ::chart::Diagram > &  xDiagram 
)
private

◆ createTree()

void chart::ObjectHierarchy::createTree ( const rtl::Reference<::chart::ChartModel > &  xChartDocument)
private

◆ createWallAndFloor()

void chart::ObjectHierarchy::createWallAndFloor ( tChildContainer rContainer,
const rtl::Reference< ::chart::Diagram > &  xDiagram 
)
staticprivate

◆ getChildren()

const ObjectHierarchy::tChildContainer & chart::ObjectHierarchy::getChildren ( const ObjectIdentifier rParent) const

◆ getIndexInParent()

sal_Int32 chart::ObjectHierarchy::getIndexInParent ( const ObjectIdentifier rNode) const
Returns
-1, if no parent can be determined

Definition at line 549 of file ObjectHierarchy.cxx.

References getChildren(), getParent(), and nIndex.

◆ getParent()

ObjectIdentifier chart::ObjectHierarchy::getParent ( const ObjectIdentifier rNode) const

The result is empty, if the node cannot be found in the tree.

Definition at line 511 of file ObjectHierarchy.cxx.

References getParentImpl(), and getRootNodeOID().

Referenced by getIndexInParent(), and chart::ObjectKeyNavigation::up().

◆ getParentImpl()

ObjectIdentifier chart::ObjectHierarchy::getParentImpl ( const ObjectIdentifier rParentOID,
const ObjectIdentifier rOID 
) const
private

Definition at line 484 of file ObjectHierarchy.cxx.

References getChildren(), getParentImpl(), and chart::ObjectIdentifier::isValid().

Referenced by getParent(), and getParentImpl().

◆ getRootNodeOID()

ObjectIdentifier chart::ObjectHierarchy::getRootNodeOID ( )
static

◆ getSiblings()

const ObjectHierarchy::tChildContainer & chart::ObjectHierarchy::getSiblings ( const ObjectIdentifier rNode) const

◆ getTopLevelChildren()

const ObjectHierarchy::tChildContainer & chart::ObjectHierarchy::getTopLevelChildren ( ) const

equal to getChildren( getRootNodeOID())

Definition at line 544 of file ObjectHierarchy.cxx.

References getChildren(), and getRootNodeOID().

Referenced by chart::ObjectKeyNavigation::veryFirst(), and chart::ObjectKeyNavigation::veryLast().

◆ hasChildren()

bool chart::ObjectHierarchy::hasChildren ( const ObjectIdentifier rParent) const

◆ isRootNode()

bool chart::ObjectHierarchy::isRootNode ( const ObjectIdentifier rOID)
static

Member Data Documentation

◆ m_aChildMap

tChildMap chart::ObjectHierarchy::m_aChildMap
private

◆ m_bFlattenDiagram

bool chart::ObjectHierarchy::m_bFlattenDiagram
private

Definition at line 93 of file ObjectHierarchy.hxx.

Referenced by createTree().

◆ m_bOrderingForElementSelector

bool chart::ObjectHierarchy::m_bOrderingForElementSelector
private

Definition at line 94 of file ObjectHierarchy.hxx.

Referenced by createAxesTree(), createDiagramTree(), and createTree().

◆ m_pExplicitValueProvider

ExplicitValueProvider* chart::ObjectHierarchy::m_pExplicitValueProvider
private

The documentation for this class was generated from the following files: