LibreOffice Module chart2 (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
chart::VDiagram Class Referencefinal

The VDiagram is responsible to generate the visible parts of the Diagram that is wall, floor, axes and data series. More...

#include <VDiagram.hxx>

Collaboration diagram for chart::VDiagram:
[legend]

Public Member Functions

 VDiagram (const rtl::Reference<::chart::Diagram > &xDiagram, const css::drawing::Direction3D &rPreferredAspectRatio, sal_Int32 nDimension)
 
 ~VDiagram ()
 
void init (const rtl::Reference< SvxShapeGroupAnyD > &xTarget)
 
void createShapes (const css::awt::Point &rPos, const css::awt::Size &rSize)
 
const rtl::Reference< SvxShapeGroupAnyD > & getCoordinateRegion () const
 
basegfx::B2IRectangle getCurrentRectangle () const
 Get current bounding rectangle for the diagram without axes. More...
 
void reduceToMinimumSize ()
 
::basegfx::B2IRectangle adjustPosAndSize (const css::awt::Point &rPos, const css::awt::Size &rAvailableSize)
 
::basegfx::B2IRectangle adjustInnerSize (const ::basegfx::B2IRectangle &rConsumedOuterRect)
 

Private Member Functions

void createShapes_2d ()
 
void createShapes_3d ()
 
::basegfx::B2IRectangle adjustPosAndSize_2d (const css::awt::Point &rPos, const css::awt::Size &rAvailableSize)
 
::basegfx::B2IRectangle adjustPosAndSize_3d (const css::awt::Point &rPos, const css::awt::Size &rAvailableSize)
 
void adjustAspectRatio3d (const css::awt::Size &rAvailableSize)
 
 VDiagram (const VDiagram &rD)=delete
 

Private Attributes

rtl::Reference< SvxShapeGroupAnyDm_xTarget
 
rtl::Reference< SvxShapeGroupAnyDm_xOuterGroupShape
 
rtl::Reference< SvxShapeGroupAnyDm_xCoordinateRegionShape
 
rtl::Reference< SvxShapeRectm_xWall2D
 
sal_Int32 m_nDimensionCount
 
rtl::Reference< ::chart::Diagramm_xDiagram
 
css::drawing::Direction3D m_aPreferredAspectRatio
 
css::uno::Reference< css::beans::XPropertySetm_xAspectRatio3D
 
double m_fXAnglePi
 
double m_fYAnglePi
 
double m_fZAnglePi
 
css::awt::Point m_aAvailablePosIncludingAxes
 
css::awt::Size m_aAvailableSizeIncludingAxes
 
css::awt::Point m_aCurrentPosWithoutAxes
 
css::awt::Size m_aCurrentSizeWithoutAxes
 
bool m_bRightAngledAxes
 

Detailed Description

The VDiagram is responsible to generate the visible parts of the Diagram that is wall, floor, axes and data series.

The axes and data series are subobjects which are created and managed by the diagram.

Definition at line 45 of file VDiagram.hxx.

Constructor & Destructor Documentation

◆ VDiagram() [1/2]

chart::VDiagram::VDiagram ( const rtl::Reference<::chart::Diagram > &  xDiagram,
const css::drawing::Direction3D &  rPreferredAspectRatio,
sal_Int32  nDimension 
)

◆ ~VDiagram()

chart::VDiagram::~VDiagram ( )

Definition at line 71 of file VDiagram.cxx.

◆ VDiagram() [2/2]

chart::VDiagram::VDiagram ( const VDiagram rD)
privatedelete

Member Function Documentation

◆ adjustAspectRatio3d()

void chart::VDiagram::adjustAspectRatio3d ( const css::awt::Size &  rAvailableSize)
private

◆ adjustInnerSize()

basegfx::B2IRectangle chart::VDiagram::adjustInnerSize ( const ::basegfx::B2IRectangle rConsumedOuterRect)

◆ adjustPosAndSize()

basegfx::B2IRectangle chart::VDiagram::adjustPosAndSize ( const css::awt::Point &  rPos,
const css::awt::Size &  rAvailableSize 
)

◆ adjustPosAndSize_2d()

basegfx::B2IRectangle chart::VDiagram::adjustPosAndSize_2d ( const css::awt::Point &  rPos,
const css::awt::Size &  rAvailableSize 
)
private

◆ adjustPosAndSize_3d()

basegfx::B2IRectangle chart::VDiagram::adjustPosAndSize_3d ( const css::awt::Point &  rPos,
const css::awt::Size &  rAvailableSize 
)
private

Definition at line 411 of file VDiagram.cxx.

References chart::BaseGFXHelper::makeRectangle().

◆ createShapes()

void chart::VDiagram::createShapes ( const css::awt::Point &  rPos,
const css::awt::Size &  rSize 
)

Definition at line 80 of file VDiagram.cxx.

Referenced by chart::ChartView::impl_createDiagramAndContent().

◆ createShapes_2d()

void chart::VDiagram::createShapes_2d ( )
private

◆ createShapes_3d()

void chart::VDiagram::createShapes_3d ( )
private

◆ getCoordinateRegion()

const rtl::Reference< SvxShapeGroupAnyD > & chart::VDiagram::getCoordinateRegion ( ) const
inline

Definition at line 60 of file VDiagram.hxx.

References m_xCoordinateRegionShape.

Referenced by chart::ChartView::impl_createDiagramAndContent().

◆ getCurrentRectangle()

basegfx::B2IRectangle chart::VDiagram::getCurrentRectangle ( ) const

Get current bounding rectangle for the diagram without axes.

Definition at line 629 of file VDiagram.cxx.

References chart::BaseGFXHelper::makeRectangle().

Referenced by chart::ChartView::impl_createDiagramAndContent().

◆ init()

void chart::VDiagram::init ( const rtl::Reference< SvxShapeGroupAnyD > &  xTarget)

Definition at line 75 of file VDiagram.cxx.

References m_xTarget, and xTarget.

Referenced by chart::ChartView::impl_createDiagramAndContent().

◆ reduceToMinimumSize()

void chart::VDiagram::reduceToMinimumSize ( )

Definition at line 634 of file VDiagram.cxx.

Referenced by chart::ChartView::impl_createDiagramAndContent().

Member Data Documentation

◆ m_aAvailablePosIncludingAxes

css::awt::Point chart::VDiagram::m_aAvailablePosIncludingAxes
private

Definition at line 106 of file VDiagram.hxx.

◆ m_aAvailableSizeIncludingAxes

css::awt::Size chart::VDiagram::m_aAvailableSizeIncludingAxes
private

Definition at line 107 of file VDiagram.hxx.

◆ m_aCurrentPosWithoutAxes

css::awt::Point chart::VDiagram::m_aCurrentPosWithoutAxes
private

Definition at line 109 of file VDiagram.hxx.

◆ m_aCurrentSizeWithoutAxes

css::awt::Size chart::VDiagram::m_aCurrentSizeWithoutAxes
private

Definition at line 110 of file VDiagram.hxx.

◆ m_aPreferredAspectRatio

css::drawing::Direction3D chart::VDiagram::m_aPreferredAspectRatio
private

Definition at line 99 of file VDiagram.hxx.

◆ m_bRightAngledAxes

bool chart::VDiagram::m_bRightAngledAxes
private

Definition at line 112 of file VDiagram.hxx.

◆ m_fXAnglePi

double chart::VDiagram::m_fXAnglePi
private

Definition at line 102 of file VDiagram.hxx.

◆ m_fYAnglePi

double chart::VDiagram::m_fYAnglePi
private

Definition at line 103 of file VDiagram.hxx.

◆ m_fZAnglePi

double chart::VDiagram::m_fZAnglePi
private

Definition at line 104 of file VDiagram.hxx.

◆ m_nDimensionCount

sal_Int32 chart::VDiagram::m_nDimensionCount
private

Definition at line 96 of file VDiagram.hxx.

◆ m_xAspectRatio3D

css::uno::Reference< css::beans::XPropertySet > chart::VDiagram::m_xAspectRatio3D
private

Definition at line 100 of file VDiagram.hxx.

◆ m_xCoordinateRegionShape

rtl::Reference<SvxShapeGroupAnyD> chart::VDiagram::m_xCoordinateRegionShape
private

Definition at line 93 of file VDiagram.hxx.

Referenced by getCoordinateRegion().

◆ m_xDiagram

rtl::Reference< ::chart::Diagram > chart::VDiagram::m_xDiagram
private

Definition at line 97 of file VDiagram.hxx.

◆ m_xOuterGroupShape

rtl::Reference<SvxShapeGroupAnyD> chart::VDiagram::m_xOuterGroupShape
private

Definition at line 91 of file VDiagram.hxx.

◆ m_xTarget

rtl::Reference<SvxShapeGroupAnyD> chart::VDiagram::m_xTarget
private

Definition at line 88 of file VDiagram.hxx.

◆ m_xWall2D

rtl::Reference<SvxShapeRect> chart::VDiagram::m_xWall2D
private

Definition at line 94 of file VDiagram.hxx.


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