summaryrefslogtreecommitdiff
path: root/sc/inc/dptabsrc.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'sc/inc/dptabsrc.hxx')
-rw-r--r--sc/inc/dptabsrc.hxx18
1 files changed, 16 insertions, 2 deletions
diff --git a/sc/inc/dptabsrc.hxx b/sc/inc/dptabsrc.hxx
index 3b1d8e0e206e..94229f5b1d35 100644
--- a/sc/inc/dptabsrc.hxx
+++ b/sc/inc/dptabsrc.hxx
@@ -33,6 +33,7 @@
#include <vector>
#include <hash_map>
+#include <memory>
#include <tools/string.hxx>
#include <tools/list.hxx>
#include "global.hxx" // enum ScSubTotalFunc
@@ -108,7 +109,7 @@ class ScDPSource : public cppu::WeakImplHelper6<
com::sun::star::lang::XServiceInfo >
{
private:
- ScDPTableData* pData; // data source
+ ScDPTableData* pData; // data source (ScDPObject manages its life time)
ScDPDimensions* pDimensions; // api objects
// settings:
long nColDims[SC_DAPI_MAXFIELDS];
@@ -136,6 +137,8 @@ private:
List aRowLevelList;
BOOL bResultOverflow;
+ ::std::auto_ptr<rtl::OUString> mpGrandTotalName;
+
void CreateRes_Impl();
void FillMemberResults();
void FillLevelList( USHORT nOrientation, List& rList );
@@ -162,11 +165,15 @@ public:
ScDPTableData* GetData() { return pData; }
const ScDPTableData* GetData() const { return pData; }
+ void SetGrandTotalName(const ::rtl::OUString& rName);
+ const ::rtl::OUString* GetGrandTotalName() const;
+
USHORT GetOrientation(long nColumn);
void SetOrientation(long nColumn, USHORT nNew);
long GetPosition(long nColumn);
long GetDataDimensionCount();
+ ScDPDimension* GetDataDimension(long nIndex);
String GetDataDimName(long nIndex);
BOOL IsDataLayoutDimension(long nDim);
USHORT GetDataLayoutOrientation();
@@ -333,12 +340,15 @@ private:
long nUsedHier;
USHORT nFunction; // enum GeneralFunction
String aName; // if empty, take from source
+ ::std::auto_ptr<rtl::OUString> mpLayoutName;
+ ::std::auto_ptr<rtl::OUString> mpSubtotalName;
long nSourceDim; // >=0 if dup'ed
::com::sun::star::sheet::DataPilotFieldReference
aReferenceValue; // settings for "show data as" / "displayed value"
BOOL bHasSelectedPage;
String aSelectedPage;
ScDPItemData* pSelectedData; // internal, temporary, created from aSelectedPage
+ sal_Bool mbHasHiddenMember;
public:
ScDPDimension( ScDPSource* pSrc, long nD );
@@ -350,6 +360,9 @@ public:
ScDPDimension* CreateCloneObject();
ScDPHierarchies* GetHierarchiesObject();
+ SC_DLLPUBLIC const ::rtl::OUString* GetLayoutName() const;
+ const ::rtl::OUString* GetSubtotalName() const;
+
// XNamed
virtual ::rtl::OUString SAL_CALL getName() throw(::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL setName( const ::rtl::OUString& aName )
@@ -736,7 +749,7 @@ private:
long nLev;
ScDPItemData maData;
-// String aCaption; // visible name (changeable by user)
+ ::std::auto_ptr<rtl::OUString> mpLayoutName;
sal_Int32 nPosition; // manual sorting
BOOL bVisible;
@@ -750,6 +763,7 @@ public:
BOOL IsNamedItem( const ScDPItemData& r ) const;
String GetNameStr() const;
void FillItemData( ScDPItemData& rData ) const;
+ SC_DLLPUBLIC const ::rtl::OUString* GetLayoutName() const;
sal_Int32 Compare( const ScDPMember& rOther ) const; // visible order