summaryrefslogtreecommitdiffstats
path: root/sc
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@suse.com>2011-09-20 10:39:56 -0400
committerKohei Yoshida <kohei.yoshida@suse.com>2011-09-20 10:41:03 -0400
commitc751b73637747a37eee023ed67dee341abae38a0 (patch)
tree9cf914c42904356555802c8cf98ea88592f75867 /sc
parentremoved unsatisfiable equalities of conditionals (diff)
downloadcore-c751b73637747a37eee023ed67dee341abae38a0.tar.gz
core-c751b73637747a37eee023ed67dee341abae38a0.zip
Ensure that only ScDPCollection can remove caches.
Call ScDPCollection::ClearCache() to remove cache during refreshing.
Diffstat (limited to 'sc')
-rw-r--r--sc/inc/dpobject.hxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/sc/inc/dpobject.hxx b/sc/inc/dpobject.hxx
index f34b0426f641..bd69edb82b39 100644
--- a/sc/inc/dpobject.hxx
+++ b/sc/inc/dpobject.hxx
@@ -255,12 +255,14 @@ public:
*/
class SheetCaches
{
+ friend class ScDPCollection;
typedef ::boost::ptr_map<ScRange, ScDPCache> CachesType;
CachesType maCaches;
ScDocument* mpDoc;
public:
SheetCaches(ScDocument* pDoc);
const ScDPCache* getCache(const ScRange& rRange);
+ private:
void removeCache(const ScRange& rRange);
};
@@ -269,12 +271,14 @@ public:
*/
class NameCaches
{
+ friend class ScDPCollection;
typedef ::boost::ptr_map<rtl::OUString, ScDPCache> CachesType;
CachesType maCaches;
ScDocument* mpDoc;
public:
NameCaches(ScDocument* pDoc);
const ScDPCache* getCache(const ::rtl::OUString& rName, const ScRange& rRange);
+ private:
void removeCache(const ::rtl::OUString& rName);
};
@@ -300,12 +304,14 @@ public:
*/
class DBCaches
{
+ friend class ScDPCollection;
typedef ::boost::ptr_map<DBType, ScDPCache, DBType::less> CachesType;
CachesType maCaches;
ScDocument* mpDoc;
public:
DBCaches(ScDocument* pDoc);
const ScDPCache* getCache(sal_Int32 nSdbType, const ::rtl::OUString& rDBName, const ::rtl::OUString& rCommand);
+ private:
void removeCache(sal_Int32 nSdbType, const ::rtl::OUString& rDBName, const ::rtl::OUString& rCommand);
};