LibreOffice Module sc (master)  1
Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
ScChart2DataSequence Class Referencefinal

#include <chart2uno.hxx>

Inheritance diagram for ScChart2DataSequence:
[legend]
Collaboration diagram for ScChart2DataSequence:
[legend]

Classes

class  ExternalRefListener
 
class  HiddenRangeListener
 
struct  Item
 

Public Member Functions

 ScChart2DataSequence (ScDocument *pDoc,::std::vector< ScTokenRef > &&rTokens, bool bIncludeHiddenCells)
 
virtual ~ScChart2DataSequence () override
 
 ScChart2DataSequence (const ScChart2DataSequence &)=delete
 
ScChart2DataSequenceoperator= (const ScChart2DataSequence &)=delete
 
virtual void Notify (SfxBroadcaster &rBC, const SfxHint &rHint) override
 
virtual css::uno::Sequence< css::uno::Any > SAL_CALL getData () override
 
virtual OUString SAL_CALL getSourceRangeRepresentation () override
 
virtual css::uno::Sequence< OUString > SAL_CALL generateLabel (css::chart2::data::LabelOrigin nOrigin) override
 
virtual ::sal_Int32 SAL_CALL getNumberFormatKeyByIndex (::sal_Int32 nIndex) override
 Get the number format key for the n-th data entry If nIndex == -1, then you will get the number format key for the first non-empty entry. More...
 
virtual css::uno::Sequence< double > SAL_CALL getNumericalData () override
 
virtual css::uno::Sequence< OUString > SAL_CALL getTextualData () override
 
virtual sal_Bool SAL_CALL switchToNext (sal_Bool bWrap) override
 
virtual sal_Bool SAL_CALL setToPointInTime (sal_Int32 nPoint) override
 
virtual void SAL_CALL setRange (sal_Int32 nStart, sal_Int32 nEnd) override
 
virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo () override
 
virtual void SAL_CALL setPropertyValue (const OUString &rPropertyName, const css::uno::Any &rValue) override
 
virtual css::uno::Any SAL_CALL getPropertyValue (const OUString &rPropertyName) override
 
virtual void SAL_CALL addPropertyChangeListener (const OUString &rPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &xListener) override
 
virtual void SAL_CALL removePropertyChangeListener (const OUString &rPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &rListener) override
 
virtual void SAL_CALL addVetoableChangeListener (const OUString &rPropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener > &rListener) override
 
virtual void SAL_CALL removeVetoableChangeListener (const OUString &rPropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener > &rListener) override
 
virtual css::uno::Reference< css::util::XCloneable > SAL_CALL createClone () override
 
virtual void SAL_CALL addModifyListener (const css::uno::Reference< css::util::XModifyListener > &aListener) override
 
virtual void SAL_CALL removeModifyListener (const css::uno::Reference< css::util::XModifyListener > &aListener) override
 
virtual OUString SAL_CALL getImplementationName () override
 
virtual sal_Bool SAL_CALL supportsService (const OUString &rServiceName) override
 
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override
 
- Public Member Functions inherited from SfxListener
 SfxListener ()
 
 SfxListener (const SfxListener &rCopy)
 
virtual ~SfxListener () COVERITY_NOEXCEPT_FALSE
 
void StartListening (SfxBroadcaster &rBroadcaster, DuplicateHandling eDuplicateHanding=DuplicateHandling::Unexpected)
 
void EndListening (SfxBroadcaster &rBroadcaster, bool bRemoveAllDuplicates=false)
 
void EndListeningAll ()
 
bool IsListening (SfxBroadcaster &rBroadcaster) const
 
sal_uInt16 GetBroadcasterCount () const
 
SfxBroadcasterGetBroadcasterJOE (sal_uInt16 nNo) const
 
void RemoveBroadcaster_Impl (SfxBroadcaster &rBC)
 

Private Types

typedef std::unique_ptr< std::vector< sal_uInt32 > > RangeIndexMapPtr
 

Private Member Functions

void setDataChangedHint (bool b)
 
void RefChanged ()
 
 DECL_LINK (ValueListenerHdl, const SfxHint &, void)
 
void BuildDataCache ()
 Build an internal data array to cache the data ranges, and other information such as hidden values. More...
 
void RebuildDataCache ()
 
sal_Int32 FillCacheFromExternalRef (const ScTokenRef &pToken)
 
void UpdateTokensFromRanges (const ScRangeList &rRanges)
 
ExternalRefListenerGetExtRefListener ()
 
void StopListeningToAllExternalRefs ()
 
void CopyData (const ScChart2DataSequence &r)
 

Private Attributes

std::vector< Itemm_aDataArray
 This vector contains the cached data which was calculated with BuildDataCache(). More...
 
css::uno::Sequence< css::uno::Any > m_aMixedDataCache
 Cached data for getData. More...
 
css::uno::Sequence< sal_Int32 > m_aHiddenValues
 
css::chart2::data::DataSequenceRole m_aRole
 
bool m_bIncludeHiddenCells
 
sal_Int64 m_nObjectId
 
ScDocumentm_pDocument
 
std::vector< ScTokenRefm_aTokens
 
RangeIndexMapPtr m_pRangeIndices
 
std::unique_ptr< ExternalRefListenerm_pExtRefListener
 
SfxItemPropertySet m_aPropSet
 
std::unique_ptr< HiddenRangeListenerm_pHiddenListener
 
std::unique_ptr< ScLinkListenerm_pValueListener
 
XModifyListenerArr_Impl m_aValueListeners
 
bool m_bGotDataChangedHint
 
bool m_bExtDataRebuildQueued
 
bool mbTimeBased
 
SCTAB mnTimeBasedStart
 
SCTAB mnTimeBasedEnd
 
SCTAB mnCurrentTab
 

Detailed Description

Definition at line 190 of file chart2uno.hxx.

Member Typedef Documentation

typedef std::unique_ptr<std::vector<sal_uInt32> > ScChart2DataSequence::RangeIndexMapPtr
private

Definition at line 369 of file chart2uno.hxx.

Constructor & Destructor Documentation

ScChart2DataSequence::ScChart2DataSequence ( ScDocument pDoc,
::std::vector< ScTokenRef > &&  rTokens,
bool  bIncludeHiddenCells 
)
explicit

Referenced by createClone().

ScChart2DataSequence::~ScChart2DataSequence ( )
overridevirtual
ScChart2DataSequence::ScChart2DataSequence ( const ScChart2DataSequence )
delete

Member Function Documentation

void SAL_CALL ScChart2DataSequence::addModifyListener ( const css::uno::Reference< css::util::XModifyListener > &  aListener)
overridevirtual
void SAL_CALL ScChart2DataSequence::addPropertyChangeListener ( const OUString &  rPropertyName,
const css::uno::Reference< css::beans::XPropertyChangeListener > &  xListener 
)
overridevirtual

Definition at line 3319 of file chart2uno.cxx.

void SAL_CALL ScChart2DataSequence::addVetoableChangeListener ( const OUString &  rPropertyName,
const css::uno::Reference< css::beans::XVetoableChangeListener > &  rListener 
)
overridevirtual

Definition at line 3335 of file chart2uno.cxx.

void ScChart2DataSequence::BuildDataCache ( )
private
void ScChart2DataSequence::CopyData ( const ScChart2DataSequence r)
private
uno::Reference< util::XCloneable > SAL_CALL ScChart2DataSequence::createClone ( )
overridevirtual

Definition at line 3147 of file chart2uno.cxx.

References m_aTokens, m_bIncludeHiddenCells, m_pDocument, p, and ScChart2DataSequence().

ScChart2DataSequence::DECL_LINK ( ValueListenerHdl  ,
const SfxHint ,
void   
)
private
sal_Int32 ScChart2DataSequence::FillCacheFromExternalRef ( const ScTokenRef pToken)
private
uno::Sequence< OUString > SAL_CALL ScChart2DataSequence::generateLabel ( css::chart2::data::LabelOrigin  nOrigin)
overridevirtual

Definition at line 3066 of file chart2uno.cxx.

References aSeq, m_aTokens, m_pDocument, and nCount.

uno::Sequence< uno::Any > SAL_CALL ScChart2DataSequence::getData ( )
overridevirtual
ScChart2DataSequence::ExternalRefListener * ScChart2DataSequence::GetExtRefListener ( )
private

Definition at line 2641 of file chart2uno.cxx.

References m_pDocument, and m_pExtRefListener.

Referenced by FillCacheFromExternalRef().

virtual OUString SAL_CALL ScChart2DataSequence::getImplementationName ( )
overridevirtual
sal_Int32 SAL_CALL ScChart2DataSequence::getNumberFormatKeyByIndex ( ::sal_Int32  nIndex)
override

Get the number format key for the n-th data entry If nIndex == -1, then you will get the number format key for the first non-empty entry.

Definition at line 3114 of file chart2uno.cxx.

References BuildDataCache(), ScRefCellValue::hasNumeric(), ScRefCellValue::isEmpty(), m_aDataArray, m_pDocument, and SAL_WARN.

uno::Sequence< double > SAL_CALL ScChart2DataSequence::getNumericalData ( )
overridevirtual

Definition at line 2902 of file chart2uno.cxx.

References aSeq, BuildDataCache(), m_aDataArray, m_pDocument, and nCount.

uno::Reference< beans::XPropertySetInfo > SAL_CALL ScChart2DataSequence::getPropertySetInfo ( )
overridevirtual

Definition at line 3248 of file chart2uno.cxx.

References SfxItemPropertySet::getPropertyMap(), and m_aPropSet.

uno::Any SAL_CALL ScChart2DataSequence::getPropertyValue ( const OUString &  rPropertyName)
overridevirtual
OUString SAL_CALL ScChart2DataSequence::getSourceRangeRepresentation ( )
overridevirtual

Definition at line 2959 of file chart2uno.cxx.

References m_aTokens, and m_pDocument.

virtual css::uno::Sequence< OUString> SAL_CALL ScChart2DataSequence::getSupportedServiceNames ( )
overridevirtual
uno::Sequence< OUString > SAL_CALL ScChart2DataSequence::getTextualData ( )
overridevirtual

Definition at line 2927 of file chart2uno.cxx.

References aSeq, BuildDataCache(), m_aDataArray, m_aTokens, m_pDocument, nCount, and svString.

void ScChart2DataSequence::Notify ( SfxBroadcaster rBC,
const SfxHint rHint 
)
overridevirtual
ScChart2DataSequence& ScChart2DataSequence::operator= ( const ScChart2DataSequence )
delete
void ScChart2DataSequence::RebuildDataCache ( )
private
void ScChart2DataSequence::RefChanged ( )
private
void SAL_CALL ScChart2DataSequence::removeModifyListener ( const css::uno::Reference< css::util::XModifyListener > &  aListener)
overridevirtual
void SAL_CALL ScChart2DataSequence::removePropertyChangeListener ( const OUString &  rPropertyName,
const css::uno::Reference< css::beans::XPropertyChangeListener > &  rListener 
)
overridevirtual

Definition at line 3327 of file chart2uno.cxx.

void SAL_CALL ScChart2DataSequence::removeVetoableChangeListener ( const OUString &  rPropertyName,
const css::uno::Reference< css::beans::XVetoableChangeListener > &  rListener 
)
overridevirtual

Definition at line 3343 of file chart2uno.cxx.

void ScChart2DataSequence::setDataChangedHint ( bool  b)
private

Definition at line 3351 of file chart2uno.cxx.

References m_bGotDataChangedHint.

Referenced by IMPL_LINK().

void SAL_CALL ScChart2DataSequence::setPropertyValue ( const OUString &  rPropertyName,
const css::uno::Any &  rValue 
)
overridevirtual
void ScChart2DataSequence::setRange ( sal_Int32  nStart,
sal_Int32  nEnd 
)
overridevirtual

Definition at line 3388 of file chart2uno.cxx.

References mnCurrentTab, mnTimeBasedEnd, and mnTimeBasedStart.

sal_Bool ScChart2DataSequence::setToPointInTime ( sal_Int32  nPoint)
overridevirtual
void ScChart2DataSequence::StopListeningToAllExternalRefs ( )
private
virtual sal_Bool SAL_CALL ScChart2DataSequence::supportsService ( const OUString &  rServiceName)
overridevirtual
sal_Bool ScChart2DataSequence::switchToNext ( sal_Bool  bWrap)
overridevirtual
void ScChart2DataSequence::UpdateTokensFromRanges ( const ScRangeList rRanges)
private

Member Data Documentation

std::vector<Item> ScChart2DataSequence::m_aDataArray
private

This vector contains the cached data which was calculated with BuildDataCache().

Definition at line 353 of file chart2uno.hxx.

Referenced by BuildDataCache(), CopyData(), FillCacheFromExternalRef(), getData(), getNumberFormatKeyByIndex(), getNumericalData(), getTextualData(), Notify(), RebuildDataCache(), and setPropertyValue().

css::uno::Sequence<sal_Int32> ScChart2DataSequence::m_aHiddenValues
private

Definition at line 362 of file chart2uno.hxx.

Referenced by BuildDataCache(), CopyData(), and getPropertyValue().

css::uno::Sequence< css::uno::Any > ScChart2DataSequence::m_aMixedDataCache
private

Cached data for getData.

We may also need to cache data for the numerical and textural data series if they turn out to be bottlenecks under certain scenarios.

Definition at line 360 of file chart2uno.hxx.

Referenced by BuildDataCache(), and getData().

SfxItemPropertySet ScChart2DataSequence::m_aPropSet
private

Definition at line 377 of file chart2uno.hxx.

Referenced by getPropertySetInfo().

css::chart2::data::DataSequenceRole ScChart2DataSequence::m_aRole
private

Definition at line 365 of file chart2uno.hxx.

Referenced by CopyData(), getPropertyValue(), and setPropertyValue().

std::vector<ScTokenRef> ScChart2DataSequence::m_aTokens
private
XModifyListenerArr_Impl ScChart2DataSequence::m_aValueListeners
private
bool ScChart2DataSequence::m_bExtDataRebuildQueued
private

Definition at line 385 of file chart2uno.hxx.

Referenced by BuildDataCache(), and RebuildDataCache().

bool ScChart2DataSequence::m_bGotDataChangedHint
private
bool ScChart2DataSequence::m_bIncludeHiddenCells
private

Definition at line 366 of file chart2uno.hxx.

Referenced by BuildDataCache(), createClone(), getPropertyValue(), and setPropertyValue().

sal_Int64 ScChart2DataSequence::m_nObjectId
private

Definition at line 371 of file chart2uno.hxx.

Referenced by Notify().

ScDocument* ScChart2DataSequence::m_pDocument
private
std::unique_ptr<ExternalRefListener> ScChart2DataSequence::m_pExtRefListener
private

Definition at line 376 of file chart2uno.hxx.

Referenced by CopyData(), GetExtRefListener(), and StopListeningToAllExternalRefs().

std::unique_ptr<HiddenRangeListener> ScChart2DataSequence::m_pHiddenListener
private
RangeIndexMapPtr ScChart2DataSequence::m_pRangeIndices
private

Definition at line 374 of file chart2uno.hxx.

Referenced by CopyData(), Notify(), and UpdateTokensFromRanges().

std::unique_ptr<ScLinkListener> ScChart2DataSequence::m_pValueListener
private
bool ScChart2DataSequence::mbTimeBased
private

Definition at line 387 of file chart2uno.hxx.

Referenced by getPropertyValue(), setPropertyValue(), and switchToNext().

SCTAB ScChart2DataSequence::mnCurrentTab
private

Definition at line 390 of file chart2uno.hxx.

Referenced by setRange(), setToPointInTime(), and switchToNext().

SCTAB ScChart2DataSequence::mnTimeBasedEnd
private

Definition at line 389 of file chart2uno.hxx.

Referenced by setRange(), setToPointInTime(), and switchToNext().

SCTAB ScChart2DataSequence::mnTimeBasedStart
private

Definition at line 388 of file chart2uno.hxx.

Referenced by setRange(), and setToPointInTime().


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