Make resolved comments appear resolved when printed

Added an indication to resolved comments when printing them or
exporting them as a PDF.

Change-Id: I9a84b76d6f12cca3c4541d19a0890cbd1cf430a7
Reviewed-on: https://gerrit.libreoffice.org/78712
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
diff --git a/sw/inc/strings.hrc b/sw/inc/strings.hrc
index 6cb4b82..867c03b 100644
--- a/sw/inc/strings.hrc
+++ b/sw/inc/strings.hrc
@@ -664,6 +664,7 @@
#define STR_POSTIT_SHOW                         NC_("STR_POSTIT_SHOW", "Show All")
#define STR_POSTIT_HIDE                         NC_("STR_POSTIT_HIDE", "Hide All")
#define STR_POSTIT_DELETE                       NC_("STR_POSTIT_DELETE", "Delete All")
#define STR_RESOLVED                            NC_("STR_RESOLVED", "RESOLVED")

#define STR_MARGIN_TOOLTIP_LEFT                 NC_("STR_MARGIN_TOOLTIP_LEFT", "Left: ")
#define STR_MARGIN_TOOLTIP_RIGHT                NC_("STR_MARGIN_TOOLTIP_RIGHT", ". Right: ")
diff --git a/sw/source/core/doc/doc.cxx b/sw/source/core/doc/doc.cxx
index 6bd6ee1..6087536 100644
--- a/sw/source/core/doc/doc.cxx
+++ b/sw/source/core/doc/doc.cxx
@@ -616,6 +616,8 @@ static void lcl_FormatPostIt(
    aStr += " ";
    SvtSysLocale aSysLocale;
    aStr += /*(LocaleDataWrapper&)*/aSysLocale.GetLocaleData().getDate( pField->GetDate() );
    if(pField->GetResolved())
        aStr += " " + SwResId(STR_RESOLVED);
    pIDCO->InsertString( aPam, aStr );

    pIDCO->SplitNode( *aPam.GetPoint(), false );
diff --git a/sw/source/core/text/EnhancedPDFExportHelper.cxx b/sw/source/core/text/EnhancedPDFExportHelper.cxx
index fa673eb..b3e35ae 100644
--- a/sw/source/core/text/EnhancedPDFExportHelper.cxx
+++ b/sw/source/core/text/EnhancedPDFExportHelper.cxx
@@ -78,6 +78,7 @@
#include <calbck.hxx>
#include <stack>
#include <frmtool.hxx>
#include <strings.hrc>

#include <tools/globname.hxx>
#include <svx/svdobj.hxx>
@@ -1590,7 +1591,10 @@ void SwEnhancedPDFExportHelper::EnhancedPDFExport()
                            pNumFormatter->GetOutputString( aDateDiff.GetDate(), nFormat, sDate, &pColor );

                            // The title should consist of the author and the date:
                            aNote.Title = pField->GetPar1() + ", " + sDate;
                            if(pField->GetResolved())
                                aNote.Title = pField->GetPar1() + ", " + sDate + ", " + SwResId(STR_RESOLVED);
                            else
                                aNote.Title = pField->GetPar1() + ", " + sDate;
                            // Guess what the contents contains...
                            aNote.Contents = pField->GetText();

diff --git a/sw/source/uibase/docvw/AnnotationWin2.cxx b/sw/source/uibase/docvw/AnnotationWin2.cxx
index 137791a..acfc90b 100644
--- a/sw/source/uibase/docvw/AnnotationWin2.cxx
+++ b/sw/source/uibase/docvw/AnnotationWin2.cxx
@@ -305,6 +305,18 @@ void SwAnnotationWin::Draw(OutputDevice* pDev, const Point& rPt, const Size& rSz
        mpMetadataDate->SetControlFont( aOrigFont );
    }

    if (mpMetadataResolved->IsVisible())
    {
        vcl::Font aOrigFont(mpMetadataResolved->GetControlFont());
        Size aSize(PixelToLogic(mpMetadataResolved->GetSizePixel()));
        Point aPos(PixelToLogic(mpMetadataResolved->GetPosPixel()));
        aPos += rPt;
        vcl::Font aFont( mpMetadataResolved->GetSettings().GetStyleSettings().GetFieldFont() );
        mpMetadataResolved->SetControlFont( aFont );
        mpMetadataResolved->Draw(pDev, aPos, aSize, nInFlags);
        mpMetadataResolved->SetControlFont( aOrigFont );
    }

    mpSidebarTextControl->Draw(pDev, rPt, rSz, nInFlags);

    const drawinglayer::geometry::ViewInformation2D aNewViewInfos;