[Libreoffice-commits] core.git: sw/qa sw/source
sw/qa/core/data/docm/testFontColor.docm |binary sw/qa/core/macros-test.cxx |9 + sw/source/ui/vba/vbafont.cxx|4 ++-- 3 files changed, 11 insertions(+), 2 deletions(-) New commits: commit 78071a36def92096920a0441b5fdac0fdd5a7c8e Author: Hannah Meeks AuthorDate: Sat Jul 23 18:24:31 2022 +0100 Commit: Tomaž Vajngerl CommitDate: Sun Jul 24 08:18:20 2022 +0200 VBA Fix Color mapping issues wdRed should retrun wdRed etc. Change-Id: I5ae359c8b5ec9c34ddd2fd18894bd860384b3cc9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137383 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl diff --git a/sw/qa/core/data/docm/testFontColor.docm b/sw/qa/core/data/docm/testFontColor.docm new file mode 100755 index ..8e43601cf6d3 Binary files /dev/null and b/sw/qa/core/data/docm/testFontColor.docm differ diff --git a/sw/qa/core/macros-test.cxx b/sw/qa/core/macros-test.cxx index dd612ae509d8..0bc278d8d688 100644 --- a/sw/qa/core/macros-test.cxx +++ b/sw/qa/core/macros-test.cxx @@ -113,6 +113,15 @@ void SwMacrosTest::testVba() { OUString("testDocumentRange.docm"), OUString("vnd.sun.Star.script:Project.Module1.testAll?language=Basic&location=document") +}, +/*{ +OUString("testSelectionFind.docm"), + OUString("vnd.sun.Star.script:Project.Module1.testAll?language=Basic&location=document") +},*/ +{ +//current working tests here! +OUString("testFontColor.docm"), + OUString("vnd.sun.Star.script:Project.ThisDocument.testAll?language=Basic&location=document") } /* TODO - make these pass in Writer { diff --git a/sw/source/ui/vba/vbafont.cxx b/sw/source/ui/vba/vbafont.cxx index c36efb4c471f..e7a1f30a1381 100644 --- a/sw/source/ui/vba/vbafont.cxx +++ b/sw/source/ui/vba/vbafont.cxx @@ -146,7 +146,7 @@ SwVbaFont::setColorIndex( const uno::Any& _colorindex ) { sal_Int32 nIndex = 0; _colorindex >>= nIndex; -return setColor( OORGBToXLRGB(mxPalette->getByIndex( nIndex )) ); +return setColor( mxPalette->getByIndex( nIndex ) ); } uno::Any SAL_CALL @@ -154,7 +154,7 @@ SwVbaFont::getColorIndex() { sal_Int32 nColor = 0; -XLRGBToOORGB( getColor() ) >>= nColor; +getColor() >>= nColor; sal_Int32 nElems = mxPalette->getCount(); sal_Int32 nIndex = 0; for ( sal_Int32 count=0; count
Week 6 - update
Hi, This week I had a look at Document and fixed the off by one error in setting the range :https://gerrit.libreoffice.org/c/core/+/137262. I also rewrote the loop with an exception so that the range could not longer be wrapped around the text (start could not be larger than end) for compatibility with word. The range should behave in the same way as the selection in that the selection should select all the text if nothing selected (fixed this this week: https://gerrit.libreoffice.org/c/core/+/137202/5). My test for this with the range fails because word inserts a new line here which doesn't happen in writer, I plan to look at this within the next few weeks and add the test. I ended up looking into Font.Color as one of my XFind tests used this and it didn't work. Got a bit confused to start with when writing my macros tests because I chose a color that had been (mostly) removed from ms! - wdClassicBlue - interestingly you could still set the ColorIndex to this but it returned wdBlack. There was a problem with the color mapping for a few sets of numbers because they were being mapped twice so I changed this: https://gerrit.libreoffice.org/c/core/+/137383 In word when setting the Color to a random value and returning the ColorIndex the ColorIndex closest to that value is returned but in writer wdAuto is returned. I aim to start next week by changing this if it doesn't take too long. In word when the first letter of a word is capitalised this is also caps when replaced using Find, I had a look at trying to add this function but writer seems to be missing it completely. Mostly finished with my XFind tests but will hopefully be able to add the rest when the color and new-line issues are resolved. Next week I will focus on looking at XTable and XParagraphFormat, trying to make my tests for these objects pass in order to cover different parts of the api. Hannah
[Libreoffice-commits] core.git: include/framework
0 files changed New commits: commit 4827d5cb1508f6bca9489e31b877cfff36393c50 Author: Andrea Gelmini AuthorDate: Sat Jul 23 00:05:52 2022 +0200 Commit: Julien Nabet CommitDate: Sat Jul 23 17:53:38 2022 +0200 Removed executable bits from source file Change-Id: I0f36bec337e6167668a0fccd48b5a047327a9215 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137374 Tested-by: Jenkins Reviewed-by: Julien Nabet diff --git a/include/framework/interaction.hxx b/include/framework/interaction.hxx old mode 100755 new mode 100644
MacUpdate - your app listing has been updated
Title: Untitled Document App Listing Updated Hi The Document Foundation, We have updated your application listing for LibreOffice 7.3.5.2 on MacUpdate.com. Please take a moment to review your application's information to make sure that everything is correct. View your updated app listing You can login to your Developer Account to reply to comments and view stats, or submit new updates and changes to your app listing. Desktop Install Compatibility MacUpdate Desktop 6 is helping developers make it easier for users to fully install and use their apps. Download Desktop 6 and to ensure your app works with the “Install” link on our download pages. Advertise With MacUpdate The best Mac devs advertise their apps on MacUpdate.com because it’s the most targeted, highly performing Mac app advertising you can find on the web. Contact a...@macupdate.com to guarantee your annual ad campaigns get booked and expand your app’s audience. Learn more Questions? Contact our Content Update Team upda...@macupdate.com. You are receiving this offer because you have an app listed on MacUpdate.com. Add us to your address book or white list to ensure reliable delivery. © 2018 MacUpdate - All Rights Reserved 526 W. 14th St. #100 • Traverse City, MI 49684
[Libreoffice-commits] core.git: cui/uiconfig
cui/uiconfig/ui/gradientpage.ui |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 5e7663b792ee1d56838d7a5082e5c29867f839f2 Author: Ali_Abdollahian AuthorDate: Sun Jul 10 17:10:49 2022 +0430 Commit: Hossein CommitDate: Sat Jul 23 16:30:09 2022 +0200 tdf#101731 Rename gradient border label to midpoint Renamed gradient border label to Mid_point Change-Id: Icda875d3c6f03ffd29395ac5ce932475cc629361 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136851 Tested-by: Jenkins Reviewed-by: Hossein diff --git a/cui/uiconfig/ui/gradientpage.ui b/cui/uiconfig/ui/gradientpage.ui index 6a66dad09597..e2ec661b3b7d 100644 --- a/cui/uiconfig/ui/gradientpage.ui +++ b/cui/uiconfig/ui/gradientpage.ui @@ -390,7 +390,7 @@ True False -_Border: +Mid_point: True bordermtr 0
[Libreoffice-commits] core.git: oox/qa oox/source
oox/qa/unit/data/tdf149538_upright.pptx |binary oox/qa/unit/export.cxx | 16 oox/source/export/drawingml.cxx | 30 +- 3 files changed, 37 insertions(+), 9 deletions(-) New commits: commit 3ade0a5fb1d39360b76c7d62eebee5a18d3f4196 Author: Regina Henschel AuthorDate: Fri Jul 22 17:54:02 2022 +0200 Commit: Regina Henschel CommitDate: Sat Jul 23 14:33:13 2022 +0200 tdf#149538 no text area rotation if upright exported This is a followup to commit 7e23cbdb. With that commit the attribute 'upright' is correctly emulated by a rotation of the text area rectangle. But I forgot to remove this rotation when the 'upright' attribute is used on export. Change-Id: I46d0f421be8ef6b44537134c73dc1e4326ba7e1d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137368 Tested-by: Jenkins Reviewed-by: Regina Henschel diff --git a/oox/qa/unit/data/tdf149538_upright.pptx b/oox/qa/unit/data/tdf149538_upright.pptx new file mode 100644 index ..a477b3b1215e Binary files /dev/null and b/oox/qa/unit/data/tdf149538_upright.pptx differ diff --git a/oox/qa/unit/export.cxx b/oox/qa/unit/export.cxx index be4fb81fa0bf..1bc71da5e039 100644 --- a/oox/qa/unit/export.cxx +++ b/oox/qa/unit/export.cxx @@ -792,6 +792,22 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf149551VertPadding) assertXPathNoAttribute(pXmlDoc, sElement, "rot"); } } + +CPPUNIT_TEST_FIXTURE(Test, testTdf149538upright) +{ +// The document has a shape with attribute upright="1" in the bodyPr element. On import it is +// emulatated by rotating the text area rectangle. On export there should be an upright="1" +// attribute but no 'rot' attribute. Without the fix the 'rot' attribute with values from +// the emulation was written out. +OUString aURL = m_directories.getURLFromSrc(DATA_DIRECTORY) + "tdf149538_upright.pptx"; +loadAndSave(aURL, "Impress Office Open XML"); + +// Verify the markup. The values must be the same as in the original file. +std::unique_ptr pStream = parseExportStream(getTempFile(), "ppt/slides/slide1.xml"); +xmlDocUniquePtr pXmlDoc = parseXmlStream(pStream.get()); +assertXPath(pXmlDoc, "//p:spTree/p:sp/p:txBody/a:bodyPr", "upright", "1"); +assertXPathNoAttribute(pXmlDoc, "//p:spTree/p:sp/p:txBody/a:bodyPr", "rot"); +} } CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx index 392ce6f4d6aa..e4d0ed7ddc4e 100644 --- a/oox/source/export/drawingml.cxx +++ b/oox/source/export/drawingml.cxx @@ -3452,7 +3452,6 @@ void DrawingML::WriteText(const Reference& rXIface, bool bBodyPr, bo && ( sPresetWarp == "textArchDown" || sPresetWarp == "textArchUp" || sPresetWarp == "textButton" || sPresetWarp == "textCircle"); - if (bUpright) { Degree100 nShapeRotateAngleDeg100(0_deg100); @@ -3460,24 +3459,37 @@ void DrawingML::WriteText(const Reference& rXIface, bool bBodyPr, bo nShapeRotateAngleDeg100 = Degree100(mAny.get()); // Depending on shape rotation, the import has made 90deg changes to properties // "TextPreRotateAngle" and "TextRotateAngle". Revert it. -if ((nShapeRotateAngleDeg100 > 4500_deg100 && nShapeRotateAngleDeg100 <= 13500_deg100) -|| (nShapeRotateAngleDeg100 > 22500_deg100 && nShapeRotateAngleDeg100 <= 31500_deg100)) +bool bWasAngleChanged += (nShapeRotateAngleDeg100 > 4500_deg100 && nShapeRotateAngleDeg100 <= 13500_deg100) + || (nShapeRotateAngleDeg100 > 22500_deg100 + && nShapeRotateAngleDeg100 <= 31500_deg100); +if (bWasAngleChanged) { nTextRotateAngleDeg100 = nTextRotateAngleDeg100.value_or(0_deg100) + 9000_deg100; nTextPreRotateAngle -= 90; } // If text is no longer upright, user has changed something. Do not write 'upright' then. +// This try to detect the case assumes, that the text area rotation was 0 in the original +// MS Office document. That is likely because MS Office has no UI to set it and the +// predefined SmartArt shapes, which use it, do not use 'upright'. Degree100 nAngleSum = nShapeRotateAngleDeg100 + nTextRotateAngleDeg100.value_or(0_deg100); -if (abs(NormAngle18000(nAngleSum)) >= 100_deg100) // consider inaccuracy from rounding +if (abs(NormAngle18000(nAngleSum)) < 100_deg100) // consider inaccuracy from rounding +{ +nTextRotateAngleDeg100.reset(); // 'upright' does not overrule text area rotation. +} +else { +// User changes. Keep current angles. isUpright.reset(); +if (bWasAngleChanged) +{ +nTextPreRotateAngle += 90; +nTextRotateAngleDeg100 = nTextRotateAngleDeg100.
[Libreoffice-commits] core.git: Branch 'libreoffice-7-3' - sw/source sw/uiconfig
sw/source/ui/index/cnttab.cxx| 25 + sw/uiconfig/swriter/ui/assignstylesdialog.ui |3 +-- 2 files changed, 26 insertions(+), 2 deletions(-) New commits: commit 6344bb8b24d8250508f29457508f0daf479e5b4c Author: Caolán McNamara AuthorDate: Thu Jul 21 09:06:19 2022 +0100 Commit: Adolfo Jayme Barrientos CommitDate: Sat Jul 23 14:12:36 2022 +0200 Resolves: tdf#148743 TOC->Edit Index->Assign Styles; Styles aren't sorted Change-Id: I1ec804d315f487d7bd1138681ab8e8ae60f21a52 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137306 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos diff --git a/sw/source/ui/index/cnttab.cxx b/sw/source/ui/index/cnttab.cxx index 25d1d33ceaab..dc31fdd5d156 100644 --- a/sw/source/ui/index/cnttab.cxx +++ b/sw/source/ui/index/cnttab.cxx @@ -484,6 +484,7 @@ class SwAddStylesDlg_Impl : public SfxDialogController DECL_LINK(KeyInput, const KeyEvent&, bool); DECL_LINK(TreeSizeAllocHdl, const Size&, void); DECL_LINK(RadioToggleOnHdl, const weld::TreeView::iter_col&, void); +DECL_LINK(HeaderBarClick, int, void); public: SwAddStylesDlg_Impl(weld::Window* pParent, SwWrtShell const & rWrtSh, OUString rStringArr[]); @@ -507,6 +508,7 @@ SwAddStylesDlg_Impl::SwAddStylesDlg_Impl(weld::Window* pParent, m_xHeaderTree->connect_size_allocate(LINK(this, SwAddStylesDlg_Impl, TreeSizeAllocHdl)); m_xHeaderTree->enable_toggle_buttons(weld::ColumnToggleType::Radio); m_xHeaderTree->connect_toggled(LINK(this, SwAddStylesDlg_Impl, RadioToggleOnHdl)); +m_xHeaderTree->connect_column_clicked(LINK(this, SwAddStylesDlg_Impl, HeaderBarClick)); std::vector aWidths { @@ -578,11 +580,34 @@ SwAddStylesDlg_Impl::SwAddStylesDlg_Impl(weld::Window* pParent, } } } + m_xHeaderTree->make_sorted(); +m_xHeaderTree->set_sort_column(0); +m_xHeaderTree->set_sort_order(true); +m_xHeaderTree->set_sort_indicator(TRISTATE_TRUE, 0); + m_xHeaderTree->select(0); m_xHeaderTree->connect_key_release(LINK(this, SwAddStylesDlg_Impl, KeyInput)); } +IMPL_LINK(SwAddStylesDlg_Impl, HeaderBarClick, int, nColumn, void) +{ +bool bSortAtoZ = m_xHeaderTree->get_sort_order(); + +//set new arrow positions in headerbar +if (nColumn == m_xHeaderTree->get_sort_column()) +{ +bSortAtoZ = !bSortAtoZ; +m_xHeaderTree->set_sort_order(bSortAtoZ); +} + +if (nColumn != -1) +{ +//sort lists +m_xHeaderTree->set_sort_indicator(bSortAtoZ ? TRISTATE_TRUE : TRISTATE_FALSE, nColumn); +} +} + IMPL_LINK(SwAddStylesDlg_Impl, TreeSizeAllocHdl, const Size&, rSize, void) { auto nWidth = rSize.Width() - Application::GetSettings().GetStyleSettings().GetScrollBarSize(); diff --git a/sw/uiconfig/swriter/ui/assignstylesdialog.ui b/sw/uiconfig/swriter/ui/assignstylesdialog.ui index 1ed5cbb56e65..1e9f52faf87f 100644 --- a/sw/uiconfig/swriter/ui/assignstylesdialog.ui +++ b/sw/uiconfig/swriter/ui/assignstylesdialog.ui @@ -266,11 +266,10 @@ +True True 6 Style -True -0
[Libreoffice-commits] core.git: Branch 'libreoffice-7-4' - sw/source sw/uiconfig
sw/source/ui/index/cnttab.cxx| 25 + sw/uiconfig/swriter/ui/assignstylesdialog.ui |3 +-- 2 files changed, 26 insertions(+), 2 deletions(-) New commits: commit 47e9c7d433e7f23019ea4ae68e08d82ae9c7e3e3 Author: Caolán McNamara AuthorDate: Thu Jul 21 09:06:19 2022 +0100 Commit: Adolfo Jayme Barrientos CommitDate: Sat Jul 23 14:11:43 2022 +0200 Resolves: tdf#148743 TOC->Edit Index->Assign Styles; Styles aren't sorted Change-Id: I1ec804d315f487d7bd1138681ab8e8ae60f21a52 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137192 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos diff --git a/sw/source/ui/index/cnttab.cxx b/sw/source/ui/index/cnttab.cxx index 1aac737639b9..f73c234784f0 100644 --- a/sw/source/ui/index/cnttab.cxx +++ b/sw/source/ui/index/cnttab.cxx @@ -485,6 +485,7 @@ class SwAddStylesDlg_Impl : public SfxDialogController DECL_LINK(KeyInput, const KeyEvent&, bool); DECL_LINK(TreeSizeAllocHdl, const Size&, void); DECL_LINK(RadioToggleOnHdl, const weld::TreeView::iter_col&, void); +DECL_LINK(HeaderBarClick, int, void); public: SwAddStylesDlg_Impl(weld::Window* pParent, SwWrtShell const & rWrtSh, OUString rStringArr[]); @@ -508,6 +509,7 @@ SwAddStylesDlg_Impl::SwAddStylesDlg_Impl(weld::Window* pParent, m_xHeaderTree->connect_size_allocate(LINK(this, SwAddStylesDlg_Impl, TreeSizeAllocHdl)); m_xHeaderTree->enable_toggle_buttons(weld::ColumnToggleType::Radio); m_xHeaderTree->connect_toggled(LINK(this, SwAddStylesDlg_Impl, RadioToggleOnHdl)); +m_xHeaderTree->connect_column_clicked(LINK(this, SwAddStylesDlg_Impl, HeaderBarClick)); std::vector aWidths { @@ -579,11 +581,34 @@ SwAddStylesDlg_Impl::SwAddStylesDlg_Impl(weld::Window* pParent, } } } + m_xHeaderTree->make_sorted(); +m_xHeaderTree->set_sort_column(0); +m_xHeaderTree->set_sort_order(true); +m_xHeaderTree->set_sort_indicator(TRISTATE_TRUE, 0); + m_xHeaderTree->select(0); m_xHeaderTree->connect_key_release(LINK(this, SwAddStylesDlg_Impl, KeyInput)); } +IMPL_LINK(SwAddStylesDlg_Impl, HeaderBarClick, int, nColumn, void) +{ +bool bSortAtoZ = m_xHeaderTree->get_sort_order(); + +//set new arrow positions in headerbar +if (nColumn == m_xHeaderTree->get_sort_column()) +{ +bSortAtoZ = !bSortAtoZ; +m_xHeaderTree->set_sort_order(bSortAtoZ); +} + +if (nColumn != -1) +{ +//sort lists +m_xHeaderTree->set_sort_indicator(bSortAtoZ ? TRISTATE_TRUE : TRISTATE_FALSE, nColumn); +} +} + IMPL_LINK(SwAddStylesDlg_Impl, TreeSizeAllocHdl, const Size&, rSize, void) { auto nWidth = rSize.Width() - Application::GetSettings().GetStyleSettings().GetScrollBarSize(); diff --git a/sw/uiconfig/swriter/ui/assignstylesdialog.ui b/sw/uiconfig/swriter/ui/assignstylesdialog.ui index f3d53261511b..a5a412c35c86 100644 --- a/sw/uiconfig/swriter/ui/assignstylesdialog.ui +++ b/sw/uiconfig/swriter/ui/assignstylesdialog.ui @@ -266,11 +266,10 @@ +True True 6 Style -True -0
[Libreoffice-commits] core.git: Branch 'libreoffice-7-4' - sfx2/source
sfx2/source/sidebar/SidebarController.cxx |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 085579ecad6ca7892e9edd0b84e3c28f4a1b8330 Author: Aron Budea AuthorDate: Wed Jul 20 17:16:12 2022 +0200 Commit: Adolfo Jayme Barrientos CommitDate: Sat Jul 23 14:09:30 2022 +0200 tdf#141294 Use DPI scale factor for sidebar width limit in config And don't lock up if the calculated minimum exceeds the maximum (sidebar remains unresizable in that case, however). Change-Id: Ibe96a43ad5d6a3fe4132a9fb64fe244ab022668d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137267 Tested-by: Jenkins Reviewed-by: Szymon Kłos Reviewed-by: Aron Budea (cherry picked from commit d2584db4e0f9295aee5b9e5f8218af382f007637) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137188 Reviewed-by: Adolfo Jayme Barrientos diff --git a/sfx2/source/sidebar/SidebarController.cxx b/sfx2/source/sidebar/SidebarController.cxx index 088384641efd..0bd71db0240d 100644 --- a/sfx2/source/sidebar/SidebarController.cxx +++ b/sfx2/source/sidebar/SidebarController.cxx @@ -121,7 +121,6 @@ SidebarController::SidebarController ( this)), maCurrentContext(OUString(), OUString()), mnRequestedForceFlags(SwitchFlag_NoForce), - mnMaximumSidebarWidth(officecfg::Office::UI::Sidebar::General::MaximumWidth::get()), mbMinimumSidebarWidth(officecfg::Office::UI::Sidebar::General::MinimumWidth::get()), msCurrentDeckId(gsDefaultDeckId), maPropertyChangeForwarder([this](){ return this->BroadcastPropertyChange(); }), @@ -133,6 +132,7 @@ SidebarController::SidebarController ( mpSplitWindow(nullptr), mnWidthOnSplitterButtonDown(0) { +mnMaximumSidebarWidth = officecfg::Office::UI::Sidebar::General::MaximumWidth::get() * mpTabBar->GetDPIScaleFactor(); // Decks and panel collections for this sidebar mpResourceManager = std::make_unique(); } @@ -1433,7 +1433,7 @@ void SidebarController::RestrictWidth (sal_Int32 nWidth) pSplitWindow->SetItemSizeRange( nSetId, -Range(nRequestedWidth, getMaximumWidth())); +Range(nRequestedWidth, std::max(nRequestedWidth, getMaximumWidth(; } }
[Libreoffice-commits] core.git: Branch 'libreoffice-7-4' - sw/qa sw/source
sw/qa/extras/ooxmlexport/data/tdf139128.odt |binary sw/qa/extras/ooxmlexport/ooxmlexport17.cxx | 12 sw/source/filter/ww8/docxattributeoutput.cxx |2 ++ 3 files changed, 14 insertions(+) New commits: commit 14c4c6c1d764142a0f0ca8c02ccd2028d378e21e Author: Tünde Tóth AuthorDate: Tue Jul 12 11:50:35 2022 +0200 Commit: Adolfo Jayme Barrientos CommitDate: Sat Jul 23 14:07:38 2022 +0200 tdf#139128 DOCX: fix export of line break in text frames Line breaks (text:line-break) of ODF text frames (draw:text-box) were lost during DOCX export. Change-Id: I2e1149234749437ceef0d4643b0e686d5ae92156 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136998 Tested-by: László Németh Reviewed-by: László Németh (cherry picked from commit 024d75681887dd33561917cb3ff6b213924fd59d) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137327 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos diff --git a/sw/qa/extras/ooxmlexport/data/tdf139128.odt b/sw/qa/extras/ooxmlexport/data/tdf139128.odt new file mode 100644 index ..544527c069a2 Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf139128.odt differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport17.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport17.cxx index 74ff724dbbd3..9ab04a6aa8c3 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport17.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport17.cxx @@ -1050,6 +1050,18 @@ DECLARE_OOXMLEXPORT_TEST(testTdf149089, "tdf149089.docx") CPPUNIT_ASSERT_EQUAL( sal_Int16(text::TextGridMode::LINES), nGridMode); // was LINES_AND_CHARS } +CPPUNIT_TEST_FIXTURE(Test, testTdf139128) +{ +loadAndReload("tdf139128.odt"); +xmlDocUniquePtr pXmlDoc = parseExport("word/document.xml"); +CPPUNIT_ASSERT(pXmlDoc); +// Without the accompanying fix in place, this test would have failed with: +// - Expected: 2 +// - Actual : 0 +// i.e. the line break was lost on export. +assertXPath(pXmlDoc, "//w:br", 2); +} + CPPUNIT_PLUGIN_IMPLEMENT(); /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx index a3a91a77827e..28e32a50929d 100644 --- a/sw/source/filter/ww8/docxattributeoutput.cxx +++ b/sw/source/filter/ww8/docxattributeoutput.cxx @@ -150,6 +150,7 @@ #include #include #include +#include #include #include @@ -3394,6 +3395,7 @@ void DocxAttributeOutput::RunText( const OUString& rText, rtl_TextEncoding /*eCh prevUnicode = *pIt; break; case 0x0b: // line break +case static_cast(text::ControlCharacter::LINE_BREAK): { if (impl_WriteRunText( m_pSerializer, nTextToken, pBegin, pIt ) || prevUnicode < 0x0020) {
[Libreoffice-commits] core.git: sc/qa
sc/qa/uitest/calc_tests9/tdf135761.py |1 - 1 file changed, 1 deletion(-) New commits: commit 1203fc97d9f036b24e1130575aa609bfe34601e1 Author: Andreas Heinisch AuthorDate: Sat Jul 23 12:44:29 2022 +0200 Commit: Andreas Heinisch CommitDate: Sat Jul 23 12:45:39 2022 +0200 Delete unnecessary new line Change-Id: I3e826c02895adda7dfa18c786dce0d94b08636d3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137332 Tested-by: Andreas Heinisch Reviewed-by: Andreas Heinisch diff --git a/sc/qa/uitest/calc_tests9/tdf135761.py b/sc/qa/uitest/calc_tests9/tdf135761.py index fd9e5ebda341..5de390b3e46d 100755 --- a/sc/qa/uitest/calc_tests9/tdf135761.py +++ b/sc/qa/uitest/calc_tests9/tdf135761.py @@ -28,7 +28,6 @@ class tdf135761(UITestCase): # Without the fix in place, this test would have failed with # AssertionError: ' b' != 'a b' - self.assertEqual(get_cell_by_position(document, 0, 0, 0).getString(), " b") # vim: set shiftwidth=4 softtabstop=4 expandtab:
[Libreoffice-commits] core.git: editeng/source sc/qa
editeng/source/editeng/impedit2.cxx |5 - sc/qa/uitest/calc_tests9/tdf135761.py | 34 ++ 2 files changed, 38 insertions(+), 1 deletion(-) New commits: commit 9a612ce3d1d025d5f553cc348feaedeea37fc822 Author: Andreas Heinisch AuthorDate: Fri Jul 15 16:25:06 2022 +0200 Commit: Andreas Heinisch CommitDate: Sat Jul 23 12:35:25 2022 +0200 tdf#135761 - Calc cell editing: change search preference for the word boundary Since ImpEditEngine::StartOfWord is only used when a selection is deleted at the left, change the search preference of the word boundary from forward to backward. For further details of a deletion of a selection check ImpEditEngine::DeleteLeftOrRight. Change-Id: Ic68901cc04e5057e058ff03304f68eef1dca7a1e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137108 Tested-by: Andreas Heinisch Reviewed-by: Andreas Heinisch diff --git a/editeng/source/editeng/impedit2.cxx b/editeng/source/editeng/impedit2.cxx index c731932c51ec..8dbbc42f7ce7 100644 --- a/editeng/source/editeng/impedit2.cxx +++ b/editeng/source/editeng/impedit2.cxx @@ -1533,8 +1533,11 @@ EditPaM ImpEditEngine::StartOfWord( const EditPaM& rPaM ) lang::Locale aLocale( GetLocale( aTmpPaM ) ); uno::Reference < i18n::XBreakIterator > _xBI( ImplGetBreakIterator() ); +// tdf#135761 - since this function is only used when a selection is deleted at the left, +// change the search preference of the word boundary from forward to backward. +// For further details of a deletion of a selection check ImpEditEngine::DeleteLeftOrRight. i18n::Boundary aBoundary = _xBI->getWordBoundary( -rPaM.GetNode()->GetString(), rPaM.GetIndex(), aLocale, css::i18n::WordType::ANYWORD_IGNOREWHITESPACES, true); +rPaM.GetNode()->GetString(), rPaM.GetIndex(), aLocale, css::i18n::WordType::ANYWORD_IGNOREWHITESPACES, false); aNewPaM.SetIndex( aBoundary.startPos ); return aNewPaM; diff --git a/sc/qa/uitest/calc_tests9/tdf135761.py b/sc/qa/uitest/calc_tests9/tdf135761.py new file mode 100755 index ..fd9e5ebda341 --- /dev/null +++ b/sc/qa/uitest/calc_tests9/tdf135761.py @@ -0,0 +1,34 @@ +# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +from uitest.framework import UITestCase +from libreoffice.uno.propertyvalue import mkPropertyValues +from libreoffice.calc.document import get_cell_by_position + +class tdf135761(UITestCase): +def test_tdf135761_ctrl_backspace(self): +with self.ui_test.create_doc_in_start_center("calc") as document: +xCalcDoc = self.xUITest.getTopFocusWindow() +xGridWindow = xCalcDoc.getChild("grid_window") + +# Enter text including two whitespaces in the text, and delete the left part of the text +xGridWindow.executeAction("SELECT", mkPropertyValues({"CELL": "A1"})) +xGridWindow.executeAction("TYPE", mkPropertyValues({"TEXT": "a b"})) +xGridWindow.executeAction("TYPE", mkPropertyValues({"KEYCODE":"F2"})) +xGridWindow.executeAction("TYPE", mkPropertyValues({"KEYCODE":"LEFT"})) +xGridWindow.executeAction("TYPE", mkPropertyValues({"KEYCODE":"LEFT"})) +xGridWindow.executeAction("TYPE", mkPropertyValues({"KEYCODE":"CTRL+BACKSPACE"})) +xGridWindow.executeAction("TYPE", mkPropertyValues({"KEYCODE":"RETURN"})) + +# Without the fix in place, this test would have failed with +# AssertionError: ' b' != 'a b' + +self.assertEqual(get_cell_by_position(document, 0, 0, 0).getString(), " b") + +# vim: set shiftwidth=4 softtabstop=4 expandtab:
[Libreoffice-commits] core.git: sw/qa sw/source
sw/qa/extras/ooxmlexport/data/tdf145998_firstHeader.odt |binary sw/qa/extras/ooxmlexport/ooxmlexport15.cxx | 13 + sw/source/filter/ww8/wrtw8sty.cxx |7 +++ sw/source/filter/ww8/wrtww8.cxx |1 + sw/source/filter/ww8/wrtww8.hxx |1 + 5 files changed, 22 insertions(+) New commits: commit 28a947c8ceae8bb4b9306801ff4503970e9b1e76 Author: Justin Luth AuthorDate: Fri Jul 22 20:14:05 2022 -0400 Commit: Justin Luth CommitDate: Sat Jul 23 12:28:32 2022 +0200 related tdf#145998 sw ms export: smarter first header Possibly I should only set m_pPreviousSectionPageDesc when nBreakType is 2. However, this is export and LO doesn't have continuous sections, so it should be fine. The need for this should be VERY minimal now that a simple page break is usually utilized in this situation. As this unit test shows, it can still be valuable if a page renumber occurs. To push this idea much farther would require analysis of the actual layout, since a page chain can't be known whether we have seen a follow or not. Change-Id: I7dc37779ffebbf6649a10b08d561a14b0588c5c1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137376 Tested-by: Jenkins Reviewed-by: Justin Luth diff --git a/sw/qa/extras/ooxmlexport/data/tdf145998_firstHeader.odt b/sw/qa/extras/ooxmlexport/data/tdf145998_firstHeader.odt new file mode 100644 index ..ad5e4c3e0320 Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf145998_firstHeader.odt differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport15.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport15.cxx index 5838f8dcb93e..b1cb59bff766 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport15.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport15.cxx @@ -507,6 +507,19 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf145998_unnecessaryPageStyles) CPPUNIT_ASSERT_EQUAL(OUString(), parseDump("/root/page[5]/footer/txt")); } +CPPUNIT_TEST_FIXTURE(Test, testTdf145998_firstHeader) +{ +loadAndReload("tdf145998_firstHeader.odt"); + +// Sanity check - always good to test when dealing with page styles and breaks. +CPPUNIT_ASSERT_EQUAL(2, getPages()); + +CPPUNIT_ASSERT_EQUAL(OUString("Very first header"), parseDump("/root/page[1]/header/txt")); + +// Page Style is already used in prior section - this can't be the first-header +CPPUNIT_ASSERT_EQUAL(OUString("Normal Header"), parseDump("/root/page[2]/header/txt")); +} + CPPUNIT_TEST_FIXTURE(Test, testTdf135216_evenOddFooter) { loadAndReload("tdf135216_evenOddFooter.odt"); diff --git a/sw/source/filter/ww8/wrtw8sty.cxx b/sw/source/filter/ww8/wrtw8sty.cxx index 3175894c26a6..d166b5d885c9 100644 --- a/sw/source/filter/ww8/wrtw8sty.cxx +++ b/sw/source/filter/ww8/wrtw8sty.cxx @@ -1609,6 +1609,7 @@ void MSWordExportBase::SectionProperties( const WW8_SepInfo& rSepInfo, WW8_PdAtt bool bOldPg = m_bOutPageDescs; m_bOutPageDescs = true; +const SwPageDesc* pSavedPageDesc = pPd; AttrOutput().StartSection(); @@ -1746,6 +1747,11 @@ void MSWordExportBase::SectionProperties( const WW8_SepInfo& rSepInfo, WW8_PdAtt titlePage = true; } } +else if (nBreakCode == 2 && pPd == m_pPreviousSectionPageDesc && pPd->GetFollow() == pPd) +{ +// The first title page has already been displayed in the previous section. Drop it. +titlePage = false; +} const SfxItemSet* pOldI = m_pISet; @@ -1958,6 +1964,7 @@ void MSWordExportBase::SectionProperties( const WW8_SepInfo& rSepInfo, WW8_PdAtt // outside of the section properties again m_bOutPageDescs = bOldPg; +m_pPreviousSectionPageDesc = pSavedPageDesc; } bool WW8_WrPlcSepx::WriteKFText( WW8Export& rWrt ) diff --git a/sw/source/filter/ww8/wrtww8.cxx b/sw/source/filter/ww8/wrtww8.cxx index 33228cb93d08..a57ffb9fc093 100644 --- a/sw/source/filter/ww8/wrtww8.cxx +++ b/sw/source/filter/ww8/wrtww8.cxx @@ -3863,6 +3863,7 @@ MSWordExportBase::MSWordExportBase( SwDoc& rDocument, std::shared_ptr m_TOXMarkBookmarksByTOXMark; ww8::Frames m_aFrames; // The floating frames in this document const SwPageDesc *m_pCurrentPageDesc; +const SwPageDesc* m_pPreviousSectionPageDesc; bool m_bFirstTOCNodeWithSection; std::unique_ptr m_pPapPlc; std::unique_ptr m_pChpPlc;
[Libreoffice-commits] core.git: sw/source
sw/source/filter/html/css1atr.cxx | 24 --- sw/source/filter/html/htmldrawwriter.cxx |8 +- sw/source/filter/html/htmlfldw.cxx| 12 ++- sw/source/filter/html/htmlflywriter.cxx | 31 ++--- sw/source/filter/html/htmlftn.cxx | 24 +-- sw/source/filter/html/htmlplug.cxx| 26 +--- sw/source/filter/html/htmltabw.cxx| 18 +++-- sw/source/filter/html/wrthtml.cxx | 21 -- sw/source/filter/ww8/rtfattributeoutput.cxx | 83 +++--- sw/source/filter/ww8/rtfexport.cxx|5 - sw/source/filter/ww8/rtfsdrexport.cxx |6 - sw/source/filter/ww8/rtfstringbuffer.cxx |5 + sw/source/ui/dbui/createaddresslistdialog.cxx |2 13 files changed, 179 insertions(+), 86 deletions(-) New commits: commit c0fec0010213e4596b7d22e03b3bcd5fda9efb49 Author: Noel Grandin AuthorDate: Wed May 25 11:22:40 2022 +0200 Commit: Noel Grandin CommitDate: Sat Jul 23 09:59:26 2022 +0200 elide some makeStringAndClear() calls when we are passing the result to a string_view, it is pointless. Change-Id: If1a1edef1d450f57cdfd35fbc0dbce03898cc4ff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134944 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/sw/source/filter/html/css1atr.cxx b/sw/source/filter/html/css1atr.cxx index 1520a4e0596a..cee719277383 100644 --- a/sw/source/filter/html/css1atr.cxx +++ b/sw/source/filter/html/css1atr.cxx @@ -314,7 +314,8 @@ void SwHTMLWriter::OutCSS1_Property( const char *pProp, "p." sCSS2_P_CLASS_leaders " span+span{float:right;padding-left:0.33em;" "background:white;position:relative;z-index:1}"); } -Strm().WriteOString( sOut.makeStringAndClear() ); +Strm().WriteOString( sOut ); +sOut.setLength(0); IncIndentLevel(); } @@ -359,7 +360,8 @@ void SwHTMLWriter::OutCSS1_Property( const char *pProp, if( m_nCSS1OutMode & CSS1_OUTMODE_ENCODE ) { // for STYLE-Option encode string -Strm().WriteOString( sOut.makeStringAndClear() ); +Strm().WriteOString( sOut ); +sOut.setLength(0); if( !sVal.empty() ) HTMLOutFuncs::Out_String( Strm(), OUString::createFromAscii(sVal) ); else if( pSVal ) @@ -375,7 +377,7 @@ void SwHTMLWriter::OutCSS1_Property( const char *pProp, } if (!sOut.isEmpty()) -Strm().WriteOString( sOut.makeStringAndClear() ); +Strm().WriteOString( sOut ); } static void AddUnitPropertyValue(OStringBuffer &rOut, tools::Long nVal, @@ -460,7 +462,7 @@ void SwHTMLWriter::OutCSS1_UnitProperty( const char *pProp, tools::Long nVal ) { OStringBuffer sOut; AddUnitPropertyValue(sOut, nVal, m_eCSS1Unit); -OutCSS1_PropertyAscii(pProp, sOut.makeStringAndClear()); +OutCSS1_PropertyAscii(pProp, sOut); } void SwHTMLWriter::OutCSS1_PixelProperty( const char *pProp, tools::Long nVal, @@ -1667,7 +1669,7 @@ static Writer& OutCSS1_SwPageDesc( Writer& rWrt, const SwPageDesc& rPageDesc, AddUnitPropertyValue(sVal, rSz.Width(), rHTMLWrt.GetCSS1Unit()); sVal.append(' '); AddUnitPropertyValue(sVal, rSz.Height(), rHTMLWrt.GetCSS1Unit()); -rHTMLWrt.OutCSS1_PropertyAscii(sCSS1_P_size, sVal.makeStringAndClear()); +rHTMLWrt.OutCSS1_PropertyAscii(sCSS1_P_size, sVal); } // Export the distance-Attributes as normally @@ -2332,7 +2334,7 @@ static Writer& OutCSS1_SvxTextLn_SvxCrOut_SvxBlink( Writer& rWrt, } if (!sOut.isEmpty()) -rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_text_decoration, sOut.makeStringAndClear() ); +rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_text_decoration, sOut ); else if( bNone ) rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_text_decoration, sCSS1_PV_none ); @@ -2514,8 +2516,8 @@ static Writer& OutCSS1_SvxKerning( Writer& rWrt, const SfxPoolItem& rHt ) sOut.append(OString::number(nValue / 10) + "." + OString::number(nValue % 10) + sCSS1_UNIT_pt); -rHTMLWrt.OutCSS1_PropertyAscii(sCSS1_P_letter_spacing, -sOut.makeStringAndClear()); +rHTMLWrt.OutCSS1_PropertyAscii(sCSS1_P_letter_spacing, sOut); +sOut.setLength(0); } else { @@ -3308,7 +3310,7 @@ static void OutCSS1_SvxBorderLine( SwHTMLWriter& rHTMLWrt, // and also the color sOut.append(GetCSS1_Color(pLine->GetColor())); -rHTMLWrt.OutCSS1_PropertyAscii(pProperty, sOut.makeStringAndClear()); +rHTMLWrt.OutCSS1_PropertyAscii(pProperty, sOut); } Writer& OutCSS1_SvxBox( Writer& rWrt, const SfxPoolItem& rHt ) @@ -3371,7 +3373,7 @@ Writer& OutCSS1_SvxBox( Writer& rWrt, const SfxPoolItem& rHt ) sVal.append(' '); AddUnitPropertyValue(sVal, nLeftDist, rHTMLWrt.GetCSS1Unit()); } -rHTMLWrt.OutCSS1_PropertyAscii(sCSS
[Libreoffice-commits] core.git: helpcontent2
helpcontent2 |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit fb5a6fe80750c0c21e3987106889e2af99bb8e5c Author: Rafael Lima AuthorDate: Sat Jul 23 09:59:10 2022 +0200 Commit: Gerrit Code Review CommitDate: Sat Jul 23 09:59:10 2022 +0200 Update git submodules * Update helpcontent2 from branch 'master' to defa90e7b857b289bcc28529e9911d965e4a1166 - Warn that names of Calc formulas must be in English While translating the help and doing some testing, I realized that the CompactLeft and CompactUp methods require the filterformula argument to use the English names of Calc formulas. This patch adds a note about it. Change-Id: Ie21b900ce52de566a2da8ec7a2813c46315403ee Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136933 Tested-by: Jenkins Tested-by: Jean-Pierre Ledure Reviewed-by: Jean-Pierre Ledure diff --git a/helpcontent2 b/helpcontent2 index da7edbd2fd92..defa90e7b857 16 --- a/helpcontent2 +++ b/helpcontent2 @@ -1 +1 @@ -Subproject commit da7edbd2fd925bd80fdd6affe2ff6510c8ac1c5d +Subproject commit defa90e7b857b289bcc28529e9911d965e4a1166
[Libreoffice-commits] help.git: source/text
source/text/sbasic/shared/03/sf_calc.xhp | 102 --- 1 file changed, 53 insertions(+), 49 deletions(-) New commits: commit defa90e7b857b289bcc28529e9911d965e4a1166 Author: Rafael Lima AuthorDate: Mon Jul 11 21:37:46 2022 +0200 Commit: Jean-Pierre Ledure CommitDate: Sat Jul 23 09:59:09 2022 +0200 Warn that names of Calc formulas must be in English While translating the help and doing some testing, I realized that the CompactLeft and CompactUp methods require the filterformula argument to use the English names of Calc formulas. This patch adds a note about it. Change-Id: Ie21b900ce52de566a2da8ec7a2813c46315403ee Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136933 Tested-by: Jenkins Tested-by: Jean-Pierre Ledure Reviewed-by: Jean-Pierre Ledure diff --git a/source/text/sbasic/shared/03/sf_calc.xhp b/source/text/sbasic/shared/03/sf_calc.xhp index 6b75f86dd..2da2d254f 100644 --- a/source/text/sbasic/shared/03/sf_calc.xhp +++ b/source/text/sbasic/shared/03/sf_calc.xhp @@ -573,9 +573,9 @@ RemoveSheet RenameSheet SetArray - SetValue SetCellStyle SetFormula + SetValue ShiftDown ShiftLeft ShiftRight @@ -796,6 +796,7 @@ wholecolumn: If this option is set to True the entire column will be deleted from the sheet. The default value is False, which means that the deleted column will be limited to the height of the specified range. filterformula: The filter to be applied to each column to determine whether or not it will be deleted. The filter is expressed as a Calc formula that should be applied to the first column. When the formula returns True for a column, that column will be deleted. The default filter deletes all empty columns. For example, suppose range A1:J200 is selected (height = 200), so the default formula is =(COUNTBLANK(A1:A200)=200). This means that if all 200 cells are empty in the first column (Column A), then the column is deleted. Note that the formula is expressed with respect to the first column only. Internally the CompactLeft method will generalize this formula for all the remaining columns. + Calc functions used in the filterformula argument must be expressed using their English names. Visit the Wiki page https://wiki.documentfoundation.org/Documentation/Calc_Functions/List_of_Functions"; name="CalcFunctions">List of Calc Functions for a complete list of Calc functions in English. @@ -836,6 +837,7 @@ wholerow: If this option is set to True the entire row will be deleted from the sheet. The default value is False, which means that the deleted row will be limited to the width of the specified range. filterformula: The filter to be applied to each row to determine whether or not it will be deleted. The filter is expressed as a Calc formula that should be applied to the first row. When the formula returns True for a row, that row will be deleted. The default filter deletes all empty rows. For example, suppose range A1:J200 is selected (width = 10), so the default formula is =(COUNTBLANK(A1:J1)=10). This means that if all 10 cells are empty in the first row (Row 1), then the row is deleted. Note that the formula is expressed with respect to the first row only. Internally the CompactUp method will generalize this formula for all the remaining rows. + The Calc functions used in the formula specified in the filterformula argument must be expressed using their English names. Visit the Wiki page https://wiki.documentfoundation.org/Documentation/Calc_Functions/List_of_Functions"; name="CalcFunctions">List of Calc Functions for a complete list of Calc functions in English. @@ -1264,6 +1266,7 @@ GetFormula Get the formula(s) stored in the given range of cells as a single string, a 1D or a 2D array of strings. + The names of Calc functions used in the returned formulas are expressed in English. Visit the Wiki page https://wiki.documentfoundation.org/Documentation/Calc_Functions/List_of_Functions"; name="CalcFunctions">List of Calc Functions for a complete list of Calc functions in English. svc.GetFormula(range: str): any @@ -1729,53 +1732,6 @@ To dump the full contents of an array in a sheet, use SetArray. To dump the contents of an array only within the boundaries of the targeted range of cells, use SetValue. - - SetValue -- - - Calc service;SetValue - - SetValue - Stores the given value in the specified range. The size of the modified area is equal to the size of the target range. - The method returns a string representing the modified area as a range of cells. - - -svc.SetValue(targetrange: str, value: any): str - - -