diff options
Diffstat (limited to 'sc/inc')
-rw-r--r-- | sc/inc/autoform.hxx | 26 | ||||
-rw-r--r-- | sc/inc/chart2uno.hxx | 8 | ||||
-rw-r--r-- | sc/inc/chartlis.hxx | 4 | ||||
-rw-r--r-- | sc/inc/column.hxx | 2 | ||||
-rw-r--r-- | sc/inc/datauno.hxx | 6 | ||||
-rw-r--r-- | sc/inc/dociter.hxx | 106 | ||||
-rw-r--r-- | sc/inc/document.hxx | 16 | ||||
-rw-r--r-- | sc/inc/dpcachetable.hxx | 1 | ||||
-rw-r--r-- | sc/inc/dpshttab.hxx | 1 | ||||
-rw-r--r-- | sc/inc/drawattr.hxx | 2 | ||||
-rw-r--r-- | sc/inc/editsrc.hxx | 2 | ||||
-rw-r--r-- | sc/inc/editutil.hxx | 2 | ||||
-rw-r--r-- | sc/inc/fielduno.hxx | 2 | ||||
-rw-r--r-- | sc/inc/forbiuno.hxx | 2 | ||||
-rw-r--r-- | sc/inc/global.hxx | 41 | ||||
-rw-r--r-- | sc/inc/patattr.hxx | 2 | ||||
-rw-r--r-- | sc/inc/pch/precompiled_sc.hxx | 6 | ||||
-rw-r--r-- | sc/inc/queryparam.hxx | 142 | ||||
-rw-r--r-- | sc/inc/reftokenhelper.hxx | 8 | ||||
-rw-r--r-- | sc/inc/scextopt.hxx | 2 | ||||
-rw-r--r-- | sc/inc/servuno.hxx | 3 | ||||
-rw-r--r-- | sc/inc/sheetdata.hxx | 2 | ||||
-rw-r--r-- | sc/inc/table.hxx | 7 | ||||
-rw-r--r-- | sc/inc/textuno.hxx | 2 |
24 files changed, 295 insertions, 100 deletions
diff --git a/sc/inc/autoform.hxx b/sc/inc/autoform.hxx index 79b357c46..1fce4cbe3 100644 --- a/sc/inc/autoform.hxx +++ b/sc/inc/autoform.hxx @@ -47,22 +47,22 @@ JP 20.07.95: **************************************************************************/ #include "scitems.hxx" -#include <svx/adjitem.hxx> +#include <editeng/adjitem.hxx> #include <svx/algitem.hxx> -#include <svx/boxitem.hxx> -#include <svx/brshitem.hxx> -#include <svx/cntritem.hxx> -#include <svx/colritem.hxx> -#include <svx/crsditem.hxx> -#include <svx/fhgtitem.hxx> -#include <svx/fontitem.hxx> -#include <svx/postitem.hxx> -#include <svx/shdditem.hxx> -#include <svx/udlnitem.hxx> -#include <svx/wghtitem.hxx> +#include <editeng/boxitem.hxx> +#include <editeng/brshitem.hxx> +#include <editeng/cntritem.hxx> +#include <editeng/colritem.hxx> +#include <editeng/crsditem.hxx> +#include <editeng/fhgtitem.hxx> +#include <editeng/fontitem.hxx> +#include <editeng/postitem.hxx> +#include <editeng/shdditem.hxx> +#include <editeng/udlnitem.hxx> +#include <editeng/wghtitem.hxx> #include <svx/rotmodit.hxx> #include <svl/intitem.hxx> -#include <svx/bolnitem.hxx> +#include <editeng/bolnitem.hxx> #include "scdllapi.h" #include "collect.hxx" #include "global.hxx" diff --git a/sc/inc/chart2uno.hxx b/sc/inc/chart2uno.hxx index 42cc23a55..b7e189710 100644 --- a/sc/inc/chart2uno.hxx +++ b/sc/inc/chart2uno.hxx @@ -530,6 +530,14 @@ private: }; ::std::list<Item> m_aDataArray; + + /** + * 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. + */ + ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any > m_aMixedDataCache; + ::com::sun::star::uno::Sequence<sal_Int32> m_aHiddenValues; // properties diff --git a/sc/inc/chartlis.hxx b/sc/inc/chartlis.hxx index 654105d30..f41321fea 100644 --- a/sc/inc/chartlis.hxx +++ b/sc/inc/chartlis.hxx @@ -46,7 +46,7 @@ class ScChartUnoData; #include <com/sun/star/chart/XChartData.hpp> #include <com/sun/star/chart/XChartDataChangeEventListener.hpp> -class ScChartListener : public StrData, public SvtListener +class SC_DLLPUBLIC ScChartListener : public StrData, public SvtListener { public: class ExternalRefListener : public ScExternalRefManager::LinkListener @@ -183,7 +183,7 @@ public: const com::sun::star::uno::Reference< com::sun::star::chart::XChartData >& rSource ); void StartTimer(); void UpdateDirtyCharts(); - void SetDirty(); + void SC_DLLPUBLIC SetDirty(); void SetDiffDirty( const ScChartListenerCollection&, BOOL bSetChartRangeLists = FALSE ); diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx index f77de29ec..aa2cd9cbb 100644 --- a/sc/inc/column.hxx +++ b/sc/inc/column.hxx @@ -111,7 +111,7 @@ private: friend class ScDocument; // fuer FillInfo friend class ScDocumentIterator; friend class ScValueIterator; -friend class ScQueryValueIterator; +friend class ScDBQueryDataIterator; friend class ScColumnIterator; friend class ScQueryCellIterator; friend class ScMarkedDataIter; diff --git a/sc/inc/datauno.hxx b/sc/inc/datauno.hxx index 1cb1f3c19..03d0edc1c 100644 --- a/sc/inc/datauno.hxx +++ b/sc/inc/datauno.hxx @@ -29,8 +29,8 @@ #define SC_DATAUNO_HXX #include "global.hxx" -#include <svl/itemprop.hxx> -#include <svl/lstner.hxx> +#include "queryparam.hxx" + #include <com/sun/star/sheet/TableFilterField.hpp> #include <com/sun/star/sheet/GeneralFunction.hpp> #include <com/sun/star/sheet/XCellRangeReferrer.hpp> @@ -53,6 +53,8 @@ #include <cppuhelper/implbase4.hxx> #include <cppuhelper/implbase5.hxx> #include <cppuhelper/implbase6.hxx> +#include "svl/itemprop.hxx" +#include "svl/lstner.hxx" class ScDBData; class ScDocShell; diff --git a/sc/inc/dociter.hxx b/sc/inc/dociter.hxx index 4d9db4f63..749e6745b 100644 --- a/sc/inc/dociter.hxx +++ b/sc/inc/dociter.hxx @@ -32,6 +32,9 @@ #include <tools/solar.h> #include "global.hxx" #include "scdllapi.h" +#include "queryparam.hxx" + +#include <memory> class ScDocument; class ScBaseCell; @@ -124,34 +127,97 @@ public: } }; -class ScQueryValueIterator // alle Zahlenwerte in einem Bereich durchgehen +// ============================================================================ + +class ScDBQueryDataIterator { +public: + struct Value + { + ::rtl::OUString maString; + double mfValue; + sal_uInt16 mnError; + bool mbIsNumber; + + Value(); + }; + private: - ScQueryParam aParam; - ScDocument* pDoc; - const ScAttrArray* pAttrArray; - ULONG nNumFormat; // fuer CalcAsShown - ULONG nNumFmtIndex; - SCCOL nCol; - SCROW nRow; - SCSIZE nColRow; - SCROW nAttrEndRow; - SCTAB nTab; - short nNumFmtType; - BOOL bCalcAsShown; + static SCROW GetRowByColEntryIndex(ScDocument& rDoc, SCTAB nTab, SCCOL nCol, SCSIZE nColRow); + static ScBaseCell* GetCellByColEntryIndex(ScDocument& rDoc, SCTAB nTab, SCCOL nCol, SCSIZE nColRow); + static ScAttrArray* GetAttrArrayByCol(ScDocument& rDoc, SCTAB nTab, SCCOL nCol); + static bool IsQueryValid(ScDocument& rDoc, const ScQueryParam& rParam, SCTAB nTab, SCROW nRow, ScBaseCell* pCell); + static SCSIZE SearchColEntryIndex(ScDocument& rDoc, SCTAB nTab, SCROW nRow, SCCOL nCol); + + class DataAccess + { + public: + DataAccess(const ScDBQueryDataIterator* pParent); + virtual ~DataAccess() = 0; + virtual bool getCurrent(Value& rValue) = 0; + virtual bool getFirst(Value& rValue) = 0; + virtual bool getNext(Value& rValue) = 0; + protected: + const ScDBQueryDataIterator* mpParent; + }; + + class DataAccessInternal : public DataAccess + { + public: + DataAccessInternal(const ScDBQueryDataIterator* pParent, ScDBQueryParamInternal* pParam, ScDocument* pDoc); + virtual ~DataAccessInternal(); + virtual bool getCurrent(Value& rValue); + virtual bool getFirst(Value& rValue); + virtual bool getNext(Value& rValue); + + private: + ScDBQueryParamInternal* mpParam; + ScDocument* mpDoc; + const ScAttrArray* pAttrArray; + ULONG nNumFormat; // for CalcAsShown + ULONG nNumFmtIndex; + SCCOL nCol; + SCROW nRow; + SCSIZE nColRow; + SCROW nAttrEndRow; + SCTAB nTab; + short nNumFmtType; + bool bCalcAsShown; + }; + + class DataAccessMatrix : public DataAccess + { + public: + DataAccessMatrix(const ScDBQueryDataIterator* pParent, ScDBQueryParamMatrix* pParam); + virtual ~DataAccessMatrix(); + virtual bool getCurrent(Value& rValue); + virtual bool getFirst(Value& rValue); + virtual bool getNext(Value& rValue); + + private: + bool isValidQuery(SCROW mnRow, const ScMatrix& rMat) const; + + ScDBQueryParamMatrix* mpParam; + SCROW mnCurRow; + SCROW mnRows; + SCCOL mnCols; + }; + + ::std::auto_ptr<ScDBQueryParamBase> mpParam; + ::std::auto_ptr<DataAccess> mpData; + + bool GetThis(Value& rValue); - BOOL GetThis(double& rValue, USHORT& rErr); public: - ScQueryValueIterator(ScDocument* pDocument, SCTAB nTable, - const ScQueryParam& aParam); + ScDBQueryDataIterator(ScDocument* pDocument, ScDBQueryParamBase* pParam); /// Does NOT reset rValue if no value found! - BOOL GetFirst(double& rValue, USHORT& rErr); + bool GetFirst(Value& rValue); /// Does NOT reset rValue if no value found! - BOOL GetNext(double& rValue, USHORT& rErr); - void GetCurNumFmtInfo( short& nType, ULONG& nIndex ) - { nType = nNumFmtType; nIndex = nNumFmtIndex; } + bool GetNext(Value& rValue); }; +// ============================================================================ + class ScCellIterator // alle Zellen in einem Bereich durchgehen { // bei SubTotal aber keine ausgeblendeten und private: // SubTotalZeilen diff --git a/sc/inc/document.hxx b/sc/inc/document.hxx index d7bf3edda..d779a53a4 100644 --- a/sc/inc/document.hxx +++ b/sc/inc/document.hxx @@ -66,7 +66,9 @@ class SvxBoxInfoItem; class SvxBoxItem; class SvxBrushItem; class SvxForbiddenCharactersTable; -class SvxLinkManager; +namespace sfx2 { + class LinkManager; + } class SvxSearchItem; class SvxShadowItem; class Window; @@ -224,7 +226,7 @@ class ScDocument { friend class ScDocumentIterator; friend class ScValueIterator; -friend class ScQueryValueIterator; +friend class ScDBQueryDataIterator; friend class ScCellIterator; friend class ScQueryCellIterator; friend class ScHorizontalCellIterator; @@ -257,7 +259,7 @@ private: ScChartCollection* pChartCollection; std::auto_ptr< ScTemporaryChartLock > apTemporaryChartLock; ScPatternAttr* pSelectionAttr; // Attribute eines Blocks - mutable SvxLinkManager* pLinkManager; + mutable sfx2::LinkManager* pLinkManager; ScFormulaCell* pFormulaTree; // Berechnungsbaum Start ScFormulaCell* pEOFormulaTree; // Berechnungsbaum Ende, letzte Zelle ScFormulaCell* pFormulaTrack; // BroadcastTrack Start @@ -288,6 +290,7 @@ private: mxFormulaParserPool; /// Pool for all external formula parsers used by this document. String aDocName; // opt: Dokumentname + String aDocCodeName; // opt: Dokumentname ScRangePairListRef xColNameRanges; ScRangePairListRef xRowNameRanges; @@ -417,6 +420,7 @@ private: public: SC_DLLPUBLIC ULONG GetCellCount() const; // alle Zellen + SCSIZE GetCellCount(SCTAB nTab, SCCOL nCol) const; ULONG GetWeightedCount() const; // Formeln und Edit staerker gewichtet ULONG GetCodeCount() const; // RPN-Code in Formeln DECL_LINK( GetUserDefinedColor, USHORT * ); @@ -432,13 +436,15 @@ public: SC_DLLPUBLIC const String& GetName() const { return aDocName; } void SetName( const String& r ) { aDocName = r; } + const String& GetCodeName() const { return aDocCodeName; } + void SetCodeName( const String& r ) { aDocCodeName = r; } void GetDocStat( ScDocStat& rDocStat ); SC_DLLPUBLIC void InitDrawLayer( SfxObjectShell* pDocShell = NULL ); XColorTable* GetColorTable(); - SC_DLLPUBLIC SvxLinkManager* GetLinkManager() const; + SC_DLLPUBLIC sfx2::LinkManager* GetLinkManager() const; SC_DLLPUBLIC const ScDocOptions& GetDocOptions() const; SC_DLLPUBLIC void SetDocOptions( const ScDocOptions& rOpt ); @@ -517,6 +523,8 @@ public: SC_DLLPUBLIC BOOL HasTable( SCTAB nTab ) const; SC_DLLPUBLIC BOOL GetName( SCTAB nTab, String& rName ) const; + SC_DLLPUBLIC BOOL GetCodeName( SCTAB nTab, String& rName ) const; + SC_DLLPUBLIC BOOL SetCodeName( SCTAB nTab, String& rName ); SC_DLLPUBLIC BOOL GetTable( const String& rName, SCTAB& rTab ) const; SC_DLLPUBLIC inline SCTAB GetTableCount() const { return nMaxTableNumber; } SvNumberFormatterIndexTable* GetFormatExchangeList() const { return pFormatExchangeList; } diff --git a/sc/inc/dpcachetable.hxx b/sc/inc/dpcachetable.hxx index c8a500eb9..c56694d5b 100644 --- a/sc/inc/dpcachetable.hxx +++ b/sc/inc/dpcachetable.hxx @@ -56,6 +56,7 @@ class ScDPDimension; class ScDPCollection; struct ScDPCacheCell; struct ScDPItemData; +struct ScQueryParam; class Date; // ---------------------------------------------------------------------------- diff --git a/sc/inc/dpshttab.hxx b/sc/inc/dpshttab.hxx index 35935ea5b..f9ee695d2 100644 --- a/sc/inc/dpshttab.hxx +++ b/sc/inc/dpshttab.hxx @@ -32,6 +32,7 @@ #include "global.hxx" #include "address.hxx" #include "scdllapi.h" +#include "queryparam.hxx" #include <vector> diff --git a/sc/inc/drawattr.hxx b/sc/inc/drawattr.hxx index 3e9138f3c..fefc32caf 100644 --- a/sc/inc/drawattr.hxx +++ b/sc/inc/drawattr.hxx @@ -28,7 +28,7 @@ #define _IDLITEMS_HXX #include <svl/eitem.hxx> -#include <svx/svxenum.hxx> +#include <editeng/svxenum.hxx> class SvxDrawToolItem : public SfxEnumItem diff --git a/sc/inc/editsrc.hxx b/sc/inc/editsrc.hxx index 02646656f..32756a41a 100644 --- a/sc/inc/editsrc.hxx +++ b/sc/inc/editsrc.hxx @@ -29,7 +29,7 @@ #define SC_EDITSRC_HXX #include "address.hxx" -#include <svx/unoedsrc.hxx> +#include <editeng/unoedsrc.hxx> #include <svl/lstner.hxx> #include <memory> diff --git a/sc/inc/editutil.hxx b/sc/inc/editutil.hxx index ca90d1470..974ceef28 100644 --- a/sc/inc/editutil.hxx +++ b/sc/inc/editutil.hxx @@ -30,7 +30,7 @@ #include "scdllapi.h" #include "address.hxx" -#include <svx/editeng.hxx> +#include <editeng/editeng.hxx> #include <svx/pageitem.hxx> #include <tools/date.hxx> #include <tools/time.hxx> diff --git a/sc/inc/fielduno.hxx b/sc/inc/fielduno.hxx index 501d018d2..6f57383ed 100644 --- a/sc/inc/fielduno.hxx +++ b/sc/inc/fielduno.hxx @@ -33,7 +33,7 @@ #include <svl/lstner.hxx> #include <svl/itemprop.hxx> -#include <svx/editdata.hxx> +#include <editeng/editdata.hxx> #include <com/sun/star/text/XTextField.hpp> #include <com/sun/star/lang/XServiceInfo.hpp> #include <com/sun/star/container/XContainer.hpp> diff --git a/sc/inc/forbiuno.hxx b/sc/inc/forbiuno.hxx index 1f4d15032..c191ca187 100644 --- a/sc/inc/forbiuno.hxx +++ b/sc/inc/forbiuno.hxx @@ -28,7 +28,7 @@ #ifndef SC_FORBIUNO_HXX #define SC_FORBIUNO_HXX -#include <svx/UnoForbiddenCharsTable.hxx> +#include <editeng/UnoForbiddenCharsTable.hxx> #include <svl/lstner.hxx> class ScDocShell; diff --git a/sc/inc/global.hxx b/sc/inc/global.hxx index 2c02929d3..282c363b8 100644 --- a/sc/inc/global.hxx +++ b/sc/inc/global.hxx @@ -814,47 +814,6 @@ struct ScQueryEntry BOOL operator==( const ScQueryEntry& r ) const; }; -struct SC_DLLPUBLIC ScQueryParam -{ - SCCOL nCol1; - SCROW nRow1; - SCCOL nCol2; - SCROW nRow2; - SCTAB nTab; - BOOL bHasHeader; - BOOL bByRow; - BOOL bInplace; - BOOL bCaseSens; - BOOL bRegExp; - BOOL bMixedComparison; // whether numbers are smaller than strings - BOOL bDuplicate; - BOOL bDestPers; // nicht gespeichert - SCTAB nDestTab; - SCCOL nDestCol; - SCROW nDestRow; - -private: - SCSIZE nEntryCount; - ScQueryEntry* pEntries; - -public: - ScQueryParam(); - ScQueryParam( const ScQueryParam& r ); - ~ScQueryParam(); - - SCSIZE GetEntryCount() const { return nEntryCount; } - ScQueryEntry& GetEntry(SCSIZE n) const { return pEntries[n]; } - void Resize(SCSIZE nNew); - - ScQueryParam& operator= ( const ScQueryParam& r ); - BOOL operator== ( const ScQueryParam& rOther ) const; - void Clear (); - void DeleteQuery( SCSIZE nPos ); - - void MoveToDest(); - void FillInExcelSyntax(String& aCellStr, SCSIZE nIndex); -}; - // ----------------------------------------------------------------------- struct SC_DLLPUBLIC ScSubTotalParam diff --git a/sc/inc/patattr.hxx b/sc/inc/patattr.hxx index de6f9aa42..84bb51d58 100644 --- a/sc/inc/patattr.hxx +++ b/sc/inc/patattr.hxx @@ -31,7 +31,7 @@ #include <svl/poolitem.hxx> #include <svl/itemset.hxx> #include <unotools/fontcvt.hxx> -#include <svx/svxenum.hxx> +#include <editeng/svxenum.hxx> #include "scdllapi.h" class Font; diff --git a/sc/inc/pch/precompiled_sc.hxx b/sc/inc/pch/precompiled_sc.hxx index a6f25f2b1..0b69bf5f7 100644 --- a/sc/inc/pch/precompiled_sc.hxx +++ b/sc/inc/pch/precompiled_sc.hxx @@ -159,10 +159,10 @@ #include <unotools/pathoptions.hxx> #include <svl/solar.hrc> #include <unotools/useroptions.hxx> -#include <svx/editobj.hxx> -#include <svx/eeitem.hxx> +#include <editeng/editobj.hxx> +#include <editeng/eeitem.hxx> #include <svx/fmglob.hxx> -#include <svx/outlobj.hxx> +#include <editeng/outlobj.hxx> #include <svx/sdangitm.hxx> #include <svx/sderitm.hxx> #include <svx/sdmetitm.hxx> diff --git a/sc/inc/queryparam.hxx b/sc/inc/queryparam.hxx new file mode 100644 index 000000000..bc5023728 --- /dev/null +++ b/sc/inc/queryparam.hxx @@ -0,0 +1,142 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: interpre.hxx,v $ + * $Revision: 1.35.44.2 $ + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef SC_QUERYPARAM_HXX +#define SC_QUERYPARAM_HXX + +#include "global.hxx" +#include "scmatrix.hxx" + +#include <vector> + +struct ScDBQueryParamInternal; + +struct ScQueryParamBase +{ + bool bHasHeader; + bool bByRow; + bool bInplace; + bool bCaseSens; + bool bRegExp; + bool bDuplicate; + bool bMixedComparison; // whether numbers are smaller than strings + + virtual ~ScQueryParamBase(); + + SC_DLLPUBLIC SCSIZE GetEntryCount() const; + SC_DLLPUBLIC ScQueryEntry& GetEntry(SCSIZE n) const; + void Resize(SCSIZE nNew); + SC_DLLPUBLIC void DeleteQuery( SCSIZE nPos ); + void FillInExcelSyntax(String& aCellStr, SCSIZE nIndex); + +protected: + ScQueryParamBase(); + ScQueryParamBase(const ScQueryParamBase& r); + + mutable ::std::vector<ScQueryEntry> maEntries; +}; + +// ============================================================================ + +struct ScQueryParamTable +{ + SCCOL nCol1; + SCROW nRow1; + SCCOL nCol2; + SCROW nRow2; + SCTAB nTab; + + ScQueryParamTable(); + ScQueryParamTable(const ScQueryParamTable& r); + virtual ~ScQueryParamTable(); +}; + +// ============================================================================ + +struct SC_DLLPUBLIC ScQueryParam : public ScQueryParamBase, public ScQueryParamTable +{ + BOOL bDestPers; // nicht gespeichert + SCTAB nDestTab; + SCCOL nDestCol; + SCROW nDestRow; + + ScQueryParam(); + ScQueryParam( const ScQueryParam& r ); + ScQueryParam( const ScDBQueryParamInternal& r ); + virtual ~ScQueryParam(); + + ScQueryParam& operator= ( const ScQueryParam& r ); + BOOL operator== ( const ScQueryParam& rOther ) const; + void Clear(); + void ClearDestParams(); + void MoveToDest(); +}; + +// ============================================================================ + +struct ScDBQueryParamBase : public ScQueryParamBase +{ + enum DataType { INTERNAL, MATRIX }; + + SCCOL mnField; /// the field in which the values are processed during iteration. + bool mbSkipString; + + DataType GetType() const; + + virtual ~ScDBQueryParamBase(); + +protected: + ScDBQueryParamBase(DataType eType); + +private: + ScDBQueryParamBase(); + + DataType meType; +}; + +// ============================================================================ + +struct ScDBQueryParamInternal : public ScDBQueryParamBase, public ScQueryParamTable +{ + ScDBQueryParamInternal(); + virtual ~ScDBQueryParamInternal(); +}; + +// ============================================================================ + +struct ScDBQueryParamMatrix : public ScDBQueryParamBase +{ + ScMatrixRef mpMatrix; + + ScDBQueryParamMatrix(); + virtual ~ScDBQueryParamMatrix(); +}; + +#endif diff --git a/sc/inc/reftokenhelper.hxx b/sc/inc/reftokenhelper.hxx index 8c014fc9c..4a1e47ccc 100644 --- a/sc/inc/reftokenhelper.hxx +++ b/sc/inc/reftokenhelper.hxx @@ -67,12 +67,12 @@ public: static void getTokensFromRangeList(::std::vector<ScSharedTokenRef>& pTokens, const ScRangeList& rRanges); - static bool isRef(const ScSharedTokenRef& pToken); - static bool isExternalRef(const ScSharedTokenRef& pToken); + static bool SC_DLLPUBLIC isRef(const ScSharedTokenRef& pToken); + static bool SC_DLLPUBLIC isExternalRef(const ScSharedTokenRef& pToken); - static bool intersects(const ::std::vector<ScSharedTokenRef>& rTokens, const ScSharedTokenRef& pToken); + static bool SC_DLLPUBLIC intersects(const ::std::vector<ScSharedTokenRef>& rTokens, const ScSharedTokenRef& pToken); - static void join(::std::vector<ScSharedTokenRef>& rTokens, const ScSharedTokenRef& pToken); + static void SC_DLLPUBLIC join(::std::vector<ScSharedTokenRef>& rTokens, const ScSharedTokenRef& pToken); static bool getDoubleRefDataFromToken(ScComplexRefData& rData, const ScSharedTokenRef& pToken); }; diff --git a/sc/inc/scextopt.hxx b/sc/inc/scextopt.hxx index a5c6a67b1..7a3080334 100644 --- a/sc/inc/scextopt.hxx +++ b/sc/inc/scextopt.hxx @@ -121,6 +121,8 @@ public: const String& GetCodeName( size_t nIdx ) const; /** Appends a codename for a sheet. */ void AppendCodeName( const String& rCodeName ); + void SetCodeName( const String& rCodeName, size_t nIdx ); + void DeleteCodeName( size_t nIdx ); private: ::std::auto_ptr< ScExtDocOptionsImpl > mxImpl; diff --git a/sc/inc/servuno.hxx b/sc/inc/servuno.hxx index 21c3a9f7a..900bfaec8 100644 --- a/sc/inc/servuno.hxx +++ b/sc/inc/servuno.hxx @@ -90,8 +90,9 @@ class ScDocShell; #define SC_SERVICE_FORMULAPARS 38 #define SC_SERVICE_OPCODEMAPPER 39 +#define SC_SERVICE_VBACODENAMEPROVIDER 40 -#define SC_SERVICE_COUNT 40 +#define SC_SERVICE_COUNT 41 #define SC_SERVICE_INVALID USHRT_MAX diff --git a/sc/inc/sheetdata.hxx b/sc/inc/sheetdata.hxx index 96c1c0fbb..05c0a16cb 100644 --- a/sc/inc/sheetdata.hxx +++ b/sc/inc/sheetdata.hxx @@ -29,7 +29,7 @@ #define SC_SHEETDATA_HXX #include <xmloff/maptype.hxx> -#include <svx/editdata.hxx> +#include <editeng/editdata.hxx> #include <vector> #include <hash_set> diff --git a/sc/inc/table.hxx b/sc/inc/table.hxx index 40bd58646..e81aa4166 100644 --- a/sc/inc/table.hxx +++ b/sc/inc/table.hxx @@ -86,6 +86,7 @@ private: ScColumn aCol[MAXCOLCOUNT]; String aName; + String aCodeName; String aComment; BOOL bScenario; BOOL bLayoutRTL; @@ -158,7 +159,7 @@ private: friend class ScDocument; // fuer FillInfo friend class ScDocumentIterator; friend class ScValueIterator; -friend class ScQueryValueIterator; +friend class ScDBQueryDataIterator; friend class ScCellIterator; friend class ScQueryCellIterator; friend class ScHorizontalCellIterator; @@ -174,6 +175,7 @@ public: ScOutlineTable* GetOutlineTable() { return pOutlineTable; } + SCSIZE GetCellCount(SCCOL nCol) const; ULONG GetCellCount() const; ULONG GetWeightedCount() const; ULONG GetCodeCount() const; // RPN-Code in Formeln @@ -226,6 +228,9 @@ public: void GetName( String& rName ) const; void SetName( const String& rNewName ); + void GetCodeName( String& rName ) const { rName = aCodeName; } + void SetCodeName( const String& rNewName ) { aCodeName = rNewName; } + const String& GetUpperName() const; const String& GetPageStyle() const { return aPageStyle; } diff --git a/sc/inc/textuno.hxx b/sc/inc/textuno.hxx index 9ab11809e..d7a701e00 100644 --- a/sc/inc/textuno.hxx +++ b/sc/inc/textuno.hxx @@ -30,7 +30,7 @@ #include "global.hxx" // ScRange, ScAddress #include "address.hxx" -#include <svx/unotext.hxx> +#include <editeng/unotext.hxx> #include <svl/brdcst.hxx> #include <svl/lstner.hxx> #include <com/sun/star/text/XTextFieldsSupplier.hpp> |