summaryrefslogtreecommitdiff
path: root/sc/inc/pivot.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'sc/inc/pivot.hxx')
-rw-r--r--sc/inc/pivot.hxx140
1 files changed, 59 insertions, 81 deletions
diff --git a/sc/inc/pivot.hxx b/sc/inc/pivot.hxx
index 80c189f37..4af05d40b 100644
--- a/sc/inc/pivot.hxx
+++ b/sc/inc/pivot.hxx
@@ -68,78 +68,15 @@ class SvStream;
class ScDocument;
class ScUserListData;
class ScProgress;
-struct ScDPLabelData;
-typedef ::boost::shared_ptr<ScDPLabelData> ScDPLabelDataRef;
-
-// -----------------------------------------------------------------------
-
-struct PivotField
-{
- SCsCOL nCol;
- sal_uInt16 nFuncMask;
- sal_uInt16 nFuncCount;
- ::com::sun::star::sheet::DataPilotFieldReference maFieldRef;
-
- explicit PivotField( SCsCOL nNewCol = 0, sal_uInt16 nNewFuncMask = PIVOT_FUNC_NONE );
-
- bool operator==( const PivotField& r ) const;
-};
-
-// -----------------------------------------------------------------------
-
-// implementation still in global2.cxx
-struct ScPivotParam
-{
- SCCOL nCol; // Cursor Position /
- SCROW nRow; // bzw. Anfang des Zielbereiches
- SCTAB nTab;
- ::std::vector<ScDPLabelDataRef> maLabelArray;
- PivotField aPageArr[PIVOT_MAXPAGEFIELD];
- PivotField aColArr[PIVOT_MAXFIELD];
- PivotField aRowArr[PIVOT_MAXFIELD];
- PivotField aDataArr[PIVOT_MAXFIELD];
- SCSIZE nPageCount;
- SCSIZE nColCount;
- SCSIZE nRowCount;
- SCSIZE nDataCount;
- sal_Bool bIgnoreEmptyRows;
- sal_Bool bDetectCategories;
- sal_Bool bMakeTotalCol;
- sal_Bool bMakeTotalRow;
-
- ScPivotParam();
- ScPivotParam( const ScPivotParam& r );
- ~ScPivotParam();
-
- ScPivotParam& operator= ( const ScPivotParam& r );
- sal_Bool operator== ( const ScPivotParam& r ) const;
-//UNUSED2009-05 void Clear ();
- void ClearPivotArrays();
- void SetLabelData (const ::std::vector<ScDPLabelDataRef>& r);
- void SetPivotArrays ( const PivotField* pPageArr,
- const PivotField* pColArr,
- const PivotField* pRowArr,
- const PivotField* pDataArr,
- SCSIZE nPageCnt,
- SCSIZE nColCnt,
- SCSIZE nRowCnt,
- SCSIZE nDataCnt );
-};
-
-// -----------------------------------------------------------------------
-
-typedef PivotField PivotFieldArr[PIVOT_MAXFIELD];
-typedef PivotField PivotPageFieldArr[PIVOT_MAXPAGEFIELD];
-
-//------------------------------------------------------------------------
+// ============================================================================
struct ScDPLabelData
{
::rtl::OUString maName; /// Original name of the dimension.
::rtl::OUString maLayoutName; /// Layout name (display name)
- SCsCOL mnCol;
- sal_uInt16 mnFuncMask; /// Page/Column/Row subtotal function.
+ SCCOL mnCol;
+ sal_uInt16 mnFuncMask; /// Page/Column/Row subtotal function.
sal_Int32 mnUsedHier; /// Used hierarchy.
sal_Int32 mnFlags; /// Flags from the DataPilotSource dimension
bool mbShowAll; /// true = Show all (also empty) results.
@@ -154,11 +91,11 @@ struct ScDPLabelData
Member();
- /**
- * return the name that should be displayed in the dp dialogs i.e.
- * when the layout name is present, use it, or else use the original
- * name.
- */
+ /**
+ * return the name that should be displayed in the dp dialogs i.e.
+ * when the layout name is present, use it, or else use the original
+ * name.
+ */
::rtl::OUString SC_DLLPUBLIC getDisplayName() const;
};
::std::vector<Member> maMembers;
@@ -167,31 +104,72 @@ struct ScDPLabelData
::com::sun::star::sheet::DataPilotFieldLayoutInfo maLayoutInfo; /// Layout info.
::com::sun::star::sheet::DataPilotFieldAutoShowInfo maShowInfo; /// AutoShow info.
- explicit ScDPLabelData( const String& rName, short nCol, bool bIsValue );
+ explicit ScDPLabelData( const String& rName, SCCOL nCol, bool bIsValue );
- /**
- * return the name that should be displayed in the dp dialogs i.e. when
+ /**
+ * return the name that should be displayed in the dp dialogs i.e. when
* the layout name is present, use it, or else use the original name.
- */
+ */
::rtl::OUString SC_DLLPUBLIC getDisplayName() const;
};
+typedef std::vector< ScDPLabelData > ScDPLabelDataVector;
+
+// ============================================================================
+
+struct ScPivotField
+{
+ SCCOL nCol;
+ sal_uInt16 nFuncMask;
+ sal_uInt16 nFuncCount;
+ ::com::sun::star::sheet::DataPilotFieldReference maFieldRef;
+
+ explicit ScPivotField( SCCOL nNewCol = 0, sal_uInt16 nNewFuncMask = PIVOT_FUNC_NONE );
+
+ bool operator==( const ScPivotField& r ) const;
+};
+
+typedef ::std::vector< ScPivotField > ScPivotFieldVector;
+
+// ============================================================================
+
+struct ScPivotParam
+{
+ SCCOL nCol; // Cursor Position /
+ SCROW nRow; // bzw. Anfang des Zielbereiches
+ SCTAB nTab;
+ ScDPLabelDataVector maLabelArray;
+ ScPivotFieldVector maPageArr;
+ ScPivotFieldVector maColArr;
+ ScPivotFieldVector maRowArr;
+ ScPivotFieldVector maDataArr;
+ bool bIgnoreEmptyRows;
+ bool bDetectCategories;
+ bool bMakeTotalCol;
+ bool bMakeTotalRow;
+
+ ScPivotParam();
+
+ bool operator==( const ScPivotParam& r ) const;
+};
+
// ============================================================================
-struct ScDPFuncData
+struct ScPivotFuncData
{
- short mnCol;
- sal_uInt16 mnFuncMask;
+ SCCOL mnCol;
+ sal_uInt16 mnFuncMask;
::com::sun::star::sheet::DataPilotFieldReference maFieldRef;
- explicit ScDPFuncData( short nNewCol, sal_uInt16 nNewFuncMask );
- explicit ScDPFuncData( short nNewCol, sal_uInt16 nNewFuncMask,
+ explicit ScPivotFuncData( SCCOL nCol, sal_uInt16 nFuncMask );
+ explicit ScPivotFuncData( SCCOL nCol, sal_uInt16 nFuncMask,
const ::com::sun::star::sheet::DataPilotFieldReference& rFieldRef );
};
+typedef ::std::vector< ScPivotFuncData > ScPivotFuncDataVector;
+
// ============================================================================
-typedef std::vector< ScDPLabelData > ScDPLabelDataVec;
typedef std::vector< String > ScDPNameVec;
// ============================================================================