summaryrefslogtreecommitdiff
path: root/sc/inc
diff options
context:
space:
mode:
Diffstat (limited to 'sc/inc')
-rw-r--r--sc/inc/datauno.hxx30
-rw-r--r--sc/inc/document.hxx1
-rw-r--r--sc/inc/dpobject.hxx7
-rw-r--r--sc/inc/rangenam.hxx3
-rw-r--r--sc/inc/table.hxx1
-rw-r--r--sc/inc/unonames.hxx1
6 files changed, 37 insertions, 6 deletions
diff --git a/sc/inc/datauno.hxx b/sc/inc/datauno.hxx
index cf47b7b3bc62..34345e4a3c07 100644
--- a/sc/inc/datauno.hxx
+++ b/sc/inc/datauno.hxx
@@ -40,6 +40,7 @@
#include <com/sun/star/sheet/XConsolidationDescriptor.hpp>
#include <com/sun/star/sheet/XDatabaseRanges.hpp>
#include <com/sun/star/sheet/XDatabaseRange.hpp>
+#include <com/sun/star/sheet/XUnnamedDatabaseRanges.hpp>
#include <com/sun/star/sheet/XSubTotalDescriptor.hpp>
#include <com/sun/star/sheet/XSubTotalField.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
@@ -501,6 +502,8 @@ private:
String aName;
SfxItemPropertySet aPropSet;
XDBRefreshListenerArr_Impl aRefreshListeners;
+ bool bIsUnnamed;
+ SCTAB aTab;
private:
ScDBData* GetDBData_Impl() const;
@@ -508,6 +511,7 @@ private:
public:
ScDatabaseRangeObj(ScDocShell* pDocSh, const String& rNm);
+ ScDatabaseRangeObj(ScDocShell* pDocSh, const SCTAB nTab);
virtual ~ScDatabaseRangeObj();
virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint );
@@ -662,6 +666,32 @@ public:
throw(::com::sun::star::uno::RuntimeException);
};
+class ScUnnamedDatabaseRangesObj : public cppu::WeakImplHelper1<
+ com::sun::star::sheet::XUnnamedDatabaseRanges>,
+ public SfxListener
+{
+private:
+ ScDocShell* pDocShell;
+
+public:
+ ScUnnamedDatabaseRangesObj(ScDocShell* pDocSh);
+ virtual ~ScUnnamedDatabaseRangesObj();
+
+ virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint );
+
+ // XUnnamedDatabaseRanges
+ virtual void SAL_CALL setByTable( const ::com::sun::star::table::CellRangeAddress& aRange )
+ throw(::com::sun::star::uno::RuntimeException,
+ ::com::sun::star::lang::IndexOutOfBoundsException );
+ virtual com::sun::star::uno::Any SAL_CALL getByTable( const sal_Int32 nTab )
+ throw(::com::sun::star::uno::RuntimeException,
+ ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::container::NoSuchElementException );
+ virtual sal_Bool SAL_CALL hasByTable( sal_Int32 nTab )
+ throw (::com::sun::star::uno::RuntimeException,
+ ::com::sun::star::lang::IndexOutOfBoundsException);
+};
+
#endif
diff --git a/sc/inc/document.hxx b/sc/inc/document.hxx
index 19496d0f3f15..3c485fd48575 100644
--- a/sc/inc/document.hxx
+++ b/sc/inc/document.hxx
@@ -1487,7 +1487,6 @@ public:
VirtualDevice* GetVirtualDevice_100th_mm();
SC_DLLPUBLIC OutputDevice* GetRefDevice(); // WYSIWYG: Printer, otherwise VirtualDevice...
- void EraseNonUsedSharedNames(sal_uInt16 nLevel);
sal_Bool GetNextSpellingCell(SCCOL& nCol, SCROW& nRow, SCTAB nTab,
sal_Bool bInSel, const ScMarkData& rMark) const;
diff --git a/sc/inc/dpobject.hxx b/sc/inc/dpobject.hxx
index 30ca8406d11e..d71040906443 100644
--- a/sc/inc/dpobject.hxx
+++ b/sc/inc/dpobject.hxx
@@ -297,6 +297,11 @@ public:
::rtl::OUString maDBName;
::rtl::OUString maCommand;
DBType(sal_Int32 nSdbType, const ::rtl::OUString& rDBName, const ::rtl::OUString& rCommand);
+
+ struct less : public ::std::binary_function<DBType, DBType, bool>
+ {
+ bool operator() (const DBType& left, const DBType& right) const;
+ };
};
/**
@@ -304,7 +309,7 @@ public:
*/
class DBCaches
{
- typedef ::boost::ptr_map<DBType, ScDPCache> CachesType;
+ typedef ::boost::ptr_map<DBType, ScDPCache, DBType::less> CachesType;
CachesType maCaches;
ScDocument* mpDoc;
public:
diff --git a/sc/inc/rangenam.hxx b/sc/inc/rangenam.hxx
index c9e00e64dfb1..3689634ba62d 100644
--- a/sc/inc/rangenam.hxx
+++ b/sc/inc/rangenam.hxx
@@ -181,7 +181,6 @@ class ScRangeName
private:
typedef ::boost::ptr_set<ScRangeData> DataType;
DataType maData;
- sal_uInt16 mnSharedMaxIndex;
public:
/// Map that manages stored ScRangeName instances.
@@ -208,8 +207,6 @@ public:
void UpdateTabRef(SCTAB nTable, sal_uInt16 nFlag, SCTAB nNewTable = 0);
void UpdateTranspose(const ScRange& rSource, const ScAddress& rDest);
void UpdateGrow(const ScRange& rArea, SCCOL nGrowX, SCROW nGrowY);
- sal_uInt16 GetSharedMaxIndex();
- void SetSharedMaxIndex(sal_uInt16 nInd);
SC_DLLPUBLIC const_iterator begin() const;
SC_DLLPUBLIC const_iterator end() const;
diff --git a/sc/inc/table.hxx b/sc/inc/table.hxx
index 26cb8a846263..cf30f6b23cd8 100644
--- a/sc/inc/table.hxx
+++ b/sc/inc/table.hxx
@@ -173,7 +173,6 @@ private:
ScSortParam aSortParam;
CollatorWrapper* pSortCollator;
sal_Bool bGlobalKeepQuery;
- sal_Bool bSharedNameInserted;
ScRangeVec aPrintRanges;
bool bPrintEntireSheet;
diff --git a/sc/inc/unonames.hxx b/sc/inc/unonames.hxx
index 5fb6edaf592d..7bc50f1af812 100644
--- a/sc/inc/unonames.hxx
+++ b/sc/inc/unonames.hxx
@@ -48,6 +48,7 @@
#define SC_UNO_EXTERNALDOCLINKS "ExternalDocLinks"
#define SC_UNO_COLLABELRNG "ColumnLabelRanges"
#define SC_UNO_DATABASERNG "DatabaseRanges"
+#define SC_UNO_UNNAMEDDBRNG "UnnamedDatabaseRanges"
#define SC_UNO_NAMEDRANGES "NamedRanges"
#define SC_UNO_ROWLABELRNG "RowLabelRanges"
#define SC_UNO_SHEETLINKS "SheetLinks"