diff options
author | Katarina Behrens <Katarina.Behrens@cib.de> | 2018-04-26 16:30:48 +0200 |
---|---|---|
committer | Katarina Behrens <Katarina.Behrens@cib.de> | 2018-04-30 10:39:01 +0200 |
commit | 43459bac67363f49aadd851e686d4a74b8ddc256 (patch) | |
tree | c5bddbad746e981c0434db3a75e804396d2ec07e /include/sfx2 | |
parent | a0329f7c60b457405058404dececd4d8479ef1d5 (diff) |
tdf#117039: update infobar instead of removing and re-adding it
Apparently AppendInfoBar ends up calling back into SID_SIGNATURE
status function at some point, creating an endless recursion. I'm
too lazy to debug why so I'm cowardly avoiding it
Change-Id: Ib1e4b7f12fea197887b099e9a9f03b4e58884ec1
Reviewed-on: https://gerrit.libreoffice.org/53519
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
Diffstat (limited to 'include/sfx2')
-rw-r--r-- | include/sfx2/infobar.hxx | 4 | ||||
-rw-r--r-- | include/sfx2/viewfrm.hxx | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/include/sfx2/infobar.hxx b/include/sfx2/infobar.hxx index ac8c43e75b4b..4a9c39578b82 100644 --- a/include/sfx2/infobar.hxx +++ b/include/sfx2/infobar.hxx @@ -50,11 +50,14 @@ class SFX2_DLLPUBLIC SfxInfoBarWindow : public vcl::Window { private: OUString m_sId; + InfoBarType m_eType; VclPtr<FixedImage> m_pImage; VclPtr<FixedText> m_pMessage; VclPtr<Button> m_pCloseBtn; std::vector< VclPtr<PushButton> > m_aActionBtns; + void SetForeAndBackgroundColors( InfoBarType eType ); + public: SfxInfoBarWindow( vcl::Window* parent, const OUString& sId, const OUString& sMessage, @@ -66,6 +69,7 @@ class SFX2_DLLPUBLIC SfxInfoBarWindow : public vcl::Window const OUString& getId() const { return m_sId; } virtual void Paint( vcl::RenderContext& rRenderContext, const tools::Rectangle& ) override; virtual void Resize( ) override; + void Update( const OUString& sNewMessage, InfoBarType eType ); basegfx::BColor m_aBackgroundColor; basegfx::BColor m_aForegroundColor; diff --git a/include/sfx2/viewfrm.hxx b/include/sfx2/viewfrm.hxx index 3c66418fa6fb..ef3892b3e30d 100644 --- a/include/sfx2/viewfrm.hxx +++ b/include/sfx2/viewfrm.hxx @@ -173,6 +173,8 @@ public: const OUString& sMessage, InfoBarType aInfoBarType); void RemoveInfoBar(const OUString& sId); + void UpdateInfoBar(const OUString& sId, + const OUString& sMessage, InfoBarType eType); bool HasInfoBarWithID(const OUString& sId); SAL_DLLPRIVATE void GetDocNumber_Impl(); |