[Libreoffice-commits] core.git: sc/source

Eike Rathke (via logerrit) logerrit at kemper.freedesktop.org
Sat Oct 31 20:31:35 UTC 2020


 sc/source/ui/inc/namepast.hxx     |    1 +
 sc/source/ui/namedlg/namepast.cxx |    9 ++++++++-
 2 files changed, 9 insertions(+), 1 deletion(-)

New commits:
commit 8720ccc3fb40a9e0df0b0c62d0854f744fa715f8
Author:     Eike Rathke <erack at redhat.com>
AuthorDate: Sat Oct 31 19:20:14 2020 +0100
Commit:     Eike Rathke <erack at redhat.com>
CommitDate: Sat Oct 31 21:30:48 2020 +0100

    Resolves: tdf#137896 Paste sheet-local names with sheet name prefix
    
    Change-Id: Ib1779bb42c8b26a825899f8a93bc22b7ee441637
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105124
    Tested-by: Jenkins
    Reviewed-by: Eike Rathke <erack at redhat.com>

diff --git a/sc/source/ui/inc/namepast.hxx b/sc/source/ui/inc/namepast.hxx
index b5f09be8b628..cc54ed26e5d0 100644
--- a/sc/source/ui/inc/namepast.hxx
+++ b/sc/source/ui/inc/namepast.hxx
@@ -41,6 +41,7 @@ private:
 
     std::vector<OUString> maSelectedNames;
     std::map<OUString, std::unique_ptr<ScRangeName>> m_RangeMap;
+    OUString m_aSheetSep;
 
 public:
     ScNamePasteDlg(weld::Window* pParent, ScDocShell* pShell);
diff --git a/sc/source/ui/namedlg/namepast.cxx b/sc/source/ui/namedlg/namepast.cxx
index 97b04395de43..491c69e0f7ba 100644
--- a/sc/source/ui/namedlg/namepast.cxx
+++ b/sc/source/ui/namedlg/namepast.cxx
@@ -24,6 +24,8 @@
 #include <rangenam.hxx>
 #include <viewdata.hxx>
 #include <scui_def.hxx>
+#include <globstr.hrc>
+#include <scresid.hxx>
 
 ScNamePasteDlg::ScNamePasteDlg(weld::Window * pParent, ScDocShell* pShell)
     : GenericDialogController(pParent, "modules/scalc/ui/insertname.ui", "InsertNameDialog")
@@ -32,6 +34,7 @@ ScNamePasteDlg::ScNamePasteDlg(weld::Window * pParent, ScDocShell* pShell)
     , m_xBtnClose(m_xBuilder->weld_button("close"))
 {
     ScDocument& rDoc = pShell->GetDocument();
+    m_aSheetSep = OUString( rDoc.GetSheetSeparator());
     std::map<OUString, ScRangeName*> aCopyMap;
     rDoc.GetRangeNameMap(aCopyMap);
     for (const auto& [aTemp, pName] : aCopyMap)
@@ -70,10 +73,14 @@ IMPL_LINK(ScNamePasteDlg, ButtonHdl, weld::Button&, rButton, void)
     }
     else if (&rButton == m_xBtnPaste.get())
     {
+        const OUString aGlobalScope( ScResId( STR_GLOBAL_SCOPE));
         std::vector<ScRangeNameLine> aSelectedLines = m_xTable->GetSelectedEntries();
         for (const auto& rLine : aSelectedLines)
         {
-            maSelectedNames.push_back(rLine.aName);
+            if (rLine.aScope == aGlobalScope)
+                maSelectedNames.push_back(rLine.aName);
+            else
+                maSelectedNames.push_back(rLine.aScope + m_aSheetSep + rLine.aName);
         }
         m_xDialog->response(BTN_PASTE_NAME);
     }


More information about the Libreoffice-commits mailing list