summaryrefslogtreecommitdiff
path: root/linguistic
diff options
context:
space:
mode:
authorNoel Grandin <noel@peralex.com>2015-10-06 14:57:03 +0200
committerNoel Grandin <noel@peralex.com>2015-10-07 08:27:26 +0200
commitdee4645edca450c91139bb2a829bc995269de6ad (patch)
tree9baeb5cb0eb338490c0ce150192e5ac7551d0eea /linguistic
parentdff288c6ee45e027375ad3d7f3ea392df26f3aa0 (diff)
loplugin:mergeclasses
Change-Id: I9b926e59b2df62c22fb5ecfc7c16d8047b6da2a4
Diffstat (limited to 'linguistic')
-rw-r--r--linguistic/inc/iprcache.hxx32
-rw-r--r--linguistic/source/iprcache.cxx23
2 files changed, 14 insertions, 41 deletions
diff --git a/linguistic/inc/iprcache.hxx b/linguistic/inc/iprcache.hxx
index 5e56a13db643..095055479cd4 100644
--- a/linguistic/inc/iprcache.hxx
+++ b/linguistic/inc/iprcache.hxx
@@ -39,16 +39,7 @@
namespace linguistic
{
-
-class Flushable
-{
-public:
- virtual void Flush() = 0;
-
-protected:
- ~Flushable() {}
-};
-
+class SpellCache;
class FlushListener :
public cppu::WeakImplHelper
@@ -57,20 +48,16 @@ class FlushListener :
::com::sun::star::beans::XPropertyChangeListener
>
{
- ::com::sun::star::uno::Reference<
- ::com::sun::star::linguistic2::XSearchableDictionaryList > xDicList;
- ::com::sun::star::uno::Reference<
- ::com::sun::star::linguistic2::XLinguProperties > xPropSet;
- Flushable *pFlushObj;
+ css::uno::Reference< css::linguistic2::XSearchableDictionaryList > xDicList;
+ css::uno::Reference< css::linguistic2::XLinguProperties > xPropSet;
+ SpellCache& mrSpellCache;
FlushListener(const FlushListener &) SAL_DELETED_FUNCTION;
FlushListener & operator = (const FlushListener &) SAL_DELETED_FUNCTION;
public:
- FlushListener( Flushable *pFO );
- virtual ~FlushListener();
-
- inline void SetFlushObj( Flushable *pFO) { pFlushObj = pFO; }
+ FlushListener( SpellCache& rFO ) : mrSpellCache(rFO) {}
+ virtual ~FlushListener() {}
void SetDicList( ::com::sun::star::uno::Reference< ::com::sun::star::linguistic2::XSearchableDictionaryList > &rDL );
void SetPropSet( ::com::sun::star::uno::Reference< ::com::sun::star::linguistic2::XLinguProperties > &rPS );
@@ -86,8 +73,7 @@ public:
};
-class SpellCache :
- public Flushable
+class SpellCache
{
::com::sun::star::uno::Reference<
::com::sun::star::linguistic2::XDictionaryListEventListener >
@@ -105,8 +91,8 @@ public:
SpellCache();
virtual ~SpellCache();
- // Flushable
- virtual void Flush() SAL_OVERRIDE;
+ // called from FlushListener
+ void Flush();
void AddWord( const OUString& rWord, LanguageType nLang );
bool CheckWord( const OUString& rWord, LanguageType nLang );
diff --git a/linguistic/source/iprcache.cxx b/linguistic/source/iprcache.cxx
index cb68a3bad86d..5c4b98a3f51e 100644
--- a/linguistic/source/iprcache.cxx
+++ b/linguistic/source/iprcache.cxx
@@ -99,17 +99,6 @@ static bool lcl_IsFlushProperty( sal_Int32 nHandle )
}
-FlushListener::FlushListener( Flushable *pFO )
-{
- SetFlushObj( pFO );
-}
-
-
-FlushListener::~FlushListener()
-{
-}
-
-
void FlushListener::SetDicList( Reference<XSearchableDictionaryList> &rDL )
{
MutexGuard aGuard( GetLinguMutex() );
@@ -176,9 +165,8 @@ void SAL_CALL FlushListener::processDictionaryListEvent(
DictionaryListEventFlags::DEACTIVATE_POS_DIC;
bool bFlush = 0 != (nEvt & nFlushFlags);
- DBG_ASSERT( pFlushObj, "missing object (NULL pointer)" );
- if (bFlush && pFlushObj != NULL)
- pFlushObj->Flush();
+ if (bFlush)
+ mrSpellCache.Flush();
}
}
@@ -193,9 +181,8 @@ void SAL_CALL FlushListener::propertyChange(
{
bool bFlush = lcl_IsFlushProperty( rEvt.PropertyHandle );
- DBG_ASSERT( pFlushObj, "missing object (NULL pointer)" );
- if (bFlush && pFlushObj != NULL)
- pFlushObj->Flush();
+ if (bFlush)
+ mrSpellCache.Flush();
}
}
@@ -203,7 +190,7 @@ void SAL_CALL FlushListener::propertyChange(
SpellCache::SpellCache()
{
- pFlushLstnr = new FlushListener( this );
+ pFlushLstnr = new FlushListener( *this );
xFlushLstnr = pFlushLstnr;
Reference<XSearchableDictionaryList> aDictionaryList(GetDictionaryList());
pFlushLstnr->SetDicList( aDictionaryList ); //! after reference is established