diff options
author | Noel Grandin <noelgrandin@gmail.com> | 2016-01-19 19:45:45 +0200 |
---|---|---|
committer | Noel Grandin <noel@peralex.com> | 2016-01-25 08:52:03 +0200 |
commit | 752cd07d085ac0aadc99bd512d49072843139032 (patch) | |
tree | 21ff2f55761b34bfdd721b5e1ed43333e8874e46 /sw/source/core/unocore/unotbl.cxx | |
parent | 0e7cd653ea90da388820220bf6a3eb140b57bbd6 (diff) |
InterfaceContainer2 with vector instead of Sequence
create an InterfaceContainer2 class to replace InterfaceContainer.
It uses a std::vector instead of a Sequence for the mutable listener
list, which provides far better performance.
Switch all our internal use-sites to the new class.
Change-Id: I6b56cfa511ded2395faa22e68fab3b2f16c3cb88
Diffstat (limited to 'sw/source/core/unocore/unotbl.cxx')
-rw-r--r-- | sw/source/core/unocore/unotbl.cxx | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/sw/source/core/unocore/unotbl.cxx b/sw/source/core/unocore/unotbl.cxx index bd6ced180468..e20b35bf9232 100644 --- a/sw/source/core/unocore/unotbl.cxx +++ b/sw/source/core/unocore/unotbl.cxx @@ -152,6 +152,23 @@ static void lcl_SendChartEvent(::cppu::OWeakObject & rSource, } static void lcl_SendChartEvent(::cppu::OWeakObject & rSource, + ::comphelper::OInterfaceContainerHelper2 & rListeners) +{ + if (!rListeners.getLength()) + return; + //TODO: find appropriate settings of the Event + chart::ChartDataChangeEvent event; + event.Source = & rSource; + event.Type = chart::ChartDataChangeType_ALL; + event.StartColumn = 0; + event.EndColumn = 1; + event.StartRow = 0; + event.EndRow = 1; + rListeners.notifyEach( + & chart::XChartDataChangeEventListener::chartDataChanged, event); +} + +static void lcl_SendChartEvent(::cppu::OWeakObject & rSource, ::cppu::OMultiTypeInterfaceContainerHelper & rListeners) { ::cppu::OInterfaceContainerHelper *const pContainer(rListeners.getContainer( @@ -1772,7 +1789,7 @@ void SwXTextTableCursor::Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNe class SwXTextTable::Impl { private: - ::osl::Mutex m_Mutex; // just for OInterfaceContainerHelper + ::osl::Mutex m_Mutex; // just for OInterfaceContainerHelper2 public: uno::WeakReference<uno::XInterface> m_wThis; |