diff options
author | Kohei Yoshida <kohei.yoshida@collabora.com> | 2014-03-15 15:29:36 -0400 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@collabora.com> | 2014-03-15 15:33:38 -0400 |
commit | 83ee6b640eaf86f9aef6f42a4dd9c8a930cf9135 (patch) | |
tree | dec4339aabbfcb812c3ceba13673d0164b6d2bf8 /sc/source/core/inc | |
parent | 2e3969cb8bb235fed483ce49ddee5ea731376893 (diff) |
Use listener's listening range when re-activating area listeners.
Otherwise listeners may end up listening to larger areas than their original
listening areas after the relocation.
Change-Id: I12a7f49aec1c78611db5c31ba2d18574e91a5416
Diffstat (limited to 'sc/source/core/inc')
-rw-r--r-- | sc/source/core/inc/bcaslot.hxx | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/sc/source/core/inc/bcaslot.hxx b/sc/source/core/inc/bcaslot.hxx index 9bd416c46111..4509cc95134c 100644 --- a/sc/source/core/inc/bcaslot.hxx +++ b/sc/source/core/inc/bcaslot.hxx @@ -28,6 +28,16 @@ #include "global.hxx" #include "brdcst.hxx" +namespace sc { + +struct AreaListener +{ + ScRange maArea; + SvtListener* mpListener; +}; + +} + /** Used in a Unique Associative Container. */ @@ -211,7 +221,7 @@ public: */ void EraseArea( ScBroadcastAreas::iterator& rIter ); - void GetAllListeners( const ScRange& rRange, std::vector<SvtListener*>& rListeners ); + void GetAllListeners( const ScRange& rRange, std::vector<sc::AreaListener>& rListeners ); }; @@ -307,7 +317,7 @@ public: // only for ScBroadcastAreaSlot void FinallyEraseAreas( ScBroadcastAreaSlot* pSlot ); - std::vector<SvtListener*> GetAllListeners( const ScRange& rRange ); + std::vector<sc::AreaListener> GetAllListeners( const ScRange& rRange ); }; |