summaryrefslogtreecommitdiff
path: root/sw/source/filter/html
diff options
context:
space:
mode:
authorBjoern Michaelsen <bjoern.michaelsen@libreoffice.org>2019-09-19 15:44:38 +0200
committerBjörn Michaelsen <bjoern.michaelsen@libreoffice.org>2019-09-19 17:29:25 +0200
commit341e5c20279f971ee7acffd8d95fff09d5cf249a (patch)
tree3ec7c2337876858a84f209dafe8a0618c4c753d6 /sw/source/filter/html
parent35b5f3ab41dc5683dc572393c8bd5e2619f70a73 (diff)
sw/filter/hmtl: SwClient/SwModify no more
Change-Id: Ib469f83f61cea81fc551f04f6f059b3a0a2b5f18 Reviewed-on: https://gerrit.libreoffice.org/79182 Tested-by: Jenkins Reviewed-by: Björn Michaelsen <bjoern.michaelsen@libreoffice.org>
Diffstat (limited to 'sw/source/filter/html')
-rw-r--r--sw/source/filter/html/swhtml.cxx17
-rw-r--r--sw/source/filter/html/swhtml.hxx7
2 files changed, 8 insertions, 16 deletions
diff --git a/sw/source/filter/html/swhtml.cxx b/sw/source/filter/html/swhtml.cxx
index 535a2373a823..c2dbad75a1d9 100644
--- a/sw/source/filter/html/swhtml.cxx
+++ b/sw/source/filter/html/swhtml.cxx
@@ -261,7 +261,6 @@ SwHTMLParser::SwHTMLParser( SwDoc* pD, SwPaM& rCursor, SvStream& rIn,
bool bNoHTMLComments,
const OUString& rNamespace )
: SfxHTMLParser( rIn, bReadNewDoc, pMed ),
- SwClient( nullptr ),
m_aPathToFile( rPath ),
m_sBaseURL( rBaseURL ),
m_xAttrTab(new HTMLAttrTable),
@@ -575,7 +574,7 @@ SvParserState SwHTMLParser::CallParser()
rInput.ResetError();
}
- m_xDoc->GetPageDesc( 0 ).Add( this );
+ StartListening(m_xDoc->GetPageDesc( 0 ).GetNotifier());
SvParserState eRet = HTMLParser::CallParser();
return eRet;
@@ -929,18 +928,12 @@ void SwHTMLParser::Continue( HtmlTokenId nToken )
#endif
}
-void SwHTMLParser::Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew )
+void SwHTMLParser::Notify(const SfxHint& rHint)
{
- switch( pOld ? pOld->Which() : pNew ? pNew->Which() : 0 )
+ if(rHint.GetId() == SfxHintId::Dying)
{
- case RES_OBJECTDYING:
- if (pOld && static_cast<const SwPtrMsgPoolItem *>(pOld)->pObject == GetRegisteredIn())
- {
- // then we kill ourself
- EndListeningAll();
- ReleaseRef(); // otherwise we're done!
- }
- break;
+ EndListeningAll();
+ ReleaseRef();
}
}
diff --git a/sw/source/filter/html/swhtml.hxx b/sw/source/filter/html/swhtml.hxx
index b931042a3fe7..b9173c6271ab 100644
--- a/sw/source/filter/html/swhtml.hxx
+++ b/sw/source/filter/html/swhtml.hxx
@@ -22,6 +22,7 @@
#include <config_java.h>
#include <sfx2/sfxhtml.hxx>
+#include <svl/listener.hxx>
#include <svl/macitem.hxx>
#include <svtools/htmltokn.h>
#include <editeng/svxenum.hxx>
@@ -30,8 +31,6 @@
#include <com/sun/star/drawing/XShape.hpp>
#include <com/sun/star/form/XFormComponent.hpp>
-#include <calbck.hxx>
-
#include <memory>
#include <vector>
#include <deque>
@@ -326,7 +325,7 @@ namespace o3tl
template<> struct typed_flags<HtmlFrameFormatFlags> : is_typed_flags<HtmlFrameFormatFlags, 0x0f> {};
}
-class SwHTMLParser : public SfxHTMLParser, public SwClient
+class SwHTMLParser : public SfxHTMLParser, public SvtListener
{
friend class SectionSaveStruct;
friend class CellSaveStruct;
@@ -888,7 +887,7 @@ protected:
virtual ~SwHTMLParser() override;
// If the document is removed, remove the parser as well
- virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew ) override;
+ virtual void Notify(const SfxHint&) override;
virtual void AddMetaUserDefined( OUString const & i_rMetaName ) override;