summaryrefslogtreecommitdiff
path: root/sfx2
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2016-11-17 15:39:36 +0100
committerMiklos Vajna <vmiklos@collabora.co.uk>2016-11-17 16:26:21 +0000
commit3b94229fb74dfe43e2b7349d6f580dc375f28814 (patch)
tree10de5b693591c7e45ded95926cb75d5dfe73c5f4 /sfx2
parent2f46a7d1b255232b979b4fcca02e25b09edf949e (diff)
sfx2: let .uno:SignPDF result in a custom infobar text
To make the intention a bit more explicit. Change-Id: I70ce053b9f068a2288e4a05eba55fb3e2451b561 Reviewed-on: https://gerrit.libreoffice.org/30935 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
Diffstat (limited to 'sfx2')
-rw-r--r--sfx2/source/view/view.src4
-rw-r--r--sfx2/source/view/viewfrm.cxx31
2 files changed, 21 insertions, 14 deletions
diff --git a/sfx2/source/view/view.src b/sfx2/source/view/view.src
index 31991bf84946..0826609e5339 100644
--- a/sfx2/source/view/view.src
+++ b/sfx2/source/view/view.src
@@ -90,6 +90,10 @@ String STR_READONLY_DOCUMENT
{
Text [ en-US ] = "This document is open in read-only mode." ;
};
+String STR_READONLY_PDF
+{
+ Text [ en-US ] = "This PDF is open in read-only mode to allow signing the existing file." ;
+};
String STR_CLASSIFIED_DOCUMENT
{
diff --git a/sfx2/source/view/viewfrm.cxx b/sfx2/source/view/viewfrm.cxx
index 18022ecafb1e..660e0d5fe0a9 100644
--- a/sfx2/source/view/viewfrm.cxx
+++ b/sfx2/source/view/viewfrm.cxx
@@ -1149,23 +1149,26 @@ void SfxViewFrame::Notify( SfxBroadcaster& /*rBC*/, const SfxHint& rHint )
}
else
{
- SfxInfoBarWindow* pInfoBar = AppendInfoBar("readonly", SfxResId(STR_READONLY_DOCUMENT));
+ bool bSignPDF = false;
+ SfxMedium* pMedium = m_xObjSh->GetMedium();
+ if (pMedium && !pMedium->IsOriginallyReadOnly())
+ {
+ std::shared_ptr<const SfxFilter> pFilter = pMedium->GetFilter();
+ bSignPDF = pFilter && pFilter->GetName() == "draw_pdf_import";
+ }
+
+ SfxInfoBarWindow* pInfoBar = AppendInfoBar("readonly", SfxResId(bSignPDF ? STR_READONLY_PDF : STR_READONLY_DOCUMENT));
if (pInfoBar)
{
- SfxMedium* pMedium = m_xObjSh->GetMedium();
- if (pMedium && !pMedium->IsOriginallyReadOnly())
+ if (bSignPDF)
{
- std::shared_ptr<const SfxFilter> pFilter = pMedium->GetFilter();
- if (pFilter && pFilter->GetName() == "draw_pdf_import")
- {
- // SID_SIGNPDF opened a read-write PDF
- // read-only for signing purposes.
- VclPtrInstance<PushButton> xSignButton(&GetWindow());
- xSignButton->SetText(SfxResId(STR_READONLY_SIGN));
- xSignButton->SetSizePixel(xSignButton->GetOptimalSize());
- xSignButton->SetClickHdl(LINK(this, SfxViewFrame, SignDocumentHandler));
- pInfoBar->addButton(xSignButton);
- }
+ // SID_SIGNPDF opened a read-write PDF
+ // read-only for signing purposes.
+ VclPtrInstance<PushButton> xSignButton(&GetWindow());
+ xSignButton->SetText(SfxResId(STR_READONLY_SIGN));
+ xSignButton->SetSizePixel(xSignButton->GetOptimalSize());
+ xSignButton->SetClickHdl(LINK(this, SfxViewFrame, SignDocumentHandler));
+ pInfoBar->addButton(xSignButton);
}
VclPtrInstance<PushButton> xBtn(&GetWindow());