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

2022-05-23 Thread Heiko Tietze (via logerrit)
 sc/qa/uitest/conditional_format/tdf81696.py |2 
 sc/qa/uitest/sort/naturalSort.py|5 
 sc/qa/uitest/sort/sorting.py|4 
 sc/qa/uitest/sort/tdf49531.py   |6 
 sc/qa/uitest/sort/tdf53482.py   |7 
 sc/qa/uitest/sort/tdf57465.py   |8 -
 sc/qa/uitest/sort/tdf91305.py   |9 -
 sc/qa/uitest/sort/tdf99208.py   |   11 -
 sc/source/ui/dbgui/sortdlg.cxx  |2 
 sc/source/ui/dbgui/sortkeydlg.cxx   |6 
 sc/source/ui/dbgui/tpsort.cxx   |  198 ++--
 sc/source/ui/inc/sortdlg.hxx|9 -
 sc/source/ui/inc/tpsort.hxx |   17 +-
 sc/uiconfig/scalc/ui/sortcriteriapage.ui|  154 -
 sc/uiconfig/scalc/ui/sortkey.ui |3 
 sc/uiconfig/scalc/ui/sortoptionspage.ui |  123 ++---
 16 files changed, 270 insertions(+), 294 deletions(-)

New commits:
commit 7c2bcac3e6aac31811adede6f466d2125184da4c
Author: Heiko Tietze 
AuthorDate: Wed Mar 2 12:20:44 2022 +0100
Commit: Heiko Tietze 
CommitDate: Mon May 23 09:02:45 2022 +0200

Resolves tdf#131155 - Keep frequently used options on sort criteria tab

* Row/Column header moved
* Sort by row/column moved
* Extra variables removed
* UI tests adjusted to read/set sort direction and header from first tab

Change-Id: I9fc0406806256f289d52e45b096e392067768eaa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130843
Tested-by: Heiko Tietze 
Reviewed-by: Heiko Tietze 

diff --git a/sc/qa/uitest/conditional_format/tdf81696.py 
b/sc/qa/uitest/conditional_format/tdf81696.py
index 6b9bb7903154..0fca31e2bd98 100644
--- a/sc/qa/uitest/conditional_format/tdf81696.py
+++ b/sc/qa/uitest/conditional_format/tdf81696.py
@@ -28,7 +28,7 @@ class tdf81696(UITestCase):
 #Open sort dialog by DATA - SORT,Just sort it by Column A, 
ascending. (it's default)
 with self.ui_test.execute_dialog_through_command(".uno:DataSort") 
as xDialog:
 xTabs = xDialog.getChild("tabcontrol")
-xleftright = xDialog.getChild("leftright")
+xleftright = xDialog.getChild("rbLeftRight")
 select_pos(xTabs, "0")
 
 #verify
diff --git a/sc/qa/uitest/sort/naturalSort.py b/sc/qa/uitest/sort/naturalSort.py
index ca8384d5f2bf..6d9dd3edd7ca 100644
--- a/sc/qa/uitest/sort/naturalSort.py
+++ b/sc/qa/uitest/sort/naturalSort.py
@@ -85,12 +85,13 @@ class CalcNaturalSorting(UITestCase):
 #Open sort dialog by DATA - SORT
 with self.ui_test.execute_dialog_through_command(".uno:DataSort") 
as xDialog:
 xTabs = xDialog.getChild("tabcontrol")
-xleftright = xDialog.getChild("leftright")
 select_pos(xTabs, "1")
 xNatural = xDialog.getChild("naturalsort")
-xleftright.executeAction("CLICK", tuple())
 if (get_state_as_dict(xNatural)["Selected"]) == "false":
 xNatural.executeAction("CLICK", tuple())
+select_pos(xTabs, "0")
+xleftright = xDialog.getChild("rbLeftRight")
+xleftright.executeAction("CLICK", tuple())
 
 #Verify
 self.assertEqual(get_cell_by_position(document, 0, 0, 
0).getString(), "MW-1")
diff --git a/sc/qa/uitest/sort/sorting.py b/sc/qa/uitest/sort/sorting.py
index 10645827435c..a3c901574109 100644
--- a/sc/qa/uitest/sort/sorting.py
+++ b/sc/qa/uitest/sort/sorting.py
@@ -58,7 +58,7 @@ class CalcSorting(UITestCase):
 xTabs = xDialog.getChild("tabcontrol")
 select_pos(xTabs, "1")
 #Verify that option "Range contains column labels" is set
-xHeader = xDialog.getChild("header")
+xHeader = xDialog.getChild("cbHeader")
 self.assertEqual(get_state_as_dict(xHeader)["Selected"], 
"true")
 #Cancel dialog
 #Select Range A1:B5
@@ -100,7 +100,7 @@ class CalcSorting(UITestCase):
 xTabs = xDialog.getChild("tabcontrol")
 select_pos(xTabs, "1")
 #Verify that option "Range contains column labels" is not set
-xHeader = xDialog.getChild("header")
+xHeader = xDialog.getChild("cbHeader")
 self.assertEqual(get_state_as_dict(xHeader)["Selected"], 
"false")
 #Cancel dialog
 
diff --git a/sc/qa/uitest/sort/tdf49531.py b/sc/qa/uitest/sort/tdf49531.py
index 08f94cd1a275..98d705bf8dd3 100644
--- a/sc/qa/uitest/sort/tdf49531.py
+++ b/sc/qa/uitest/sort/tdf49531.py
@@ -31,14 +31,14 @@ class tdf49531(UITestCase):
 xTabs = xDialog.getChild("tabcontrol")
 select_pos(xTabs, "1")
 xNatural = xDialog.getChild("naturalsort")
-xtopdown = xDialog.getChild("topdown")
-

[Libreoffice-commits] core.git: sc/qa sc/source sc/uiconfig sc/UIConfig_scalc.mk vcl/unx

2021-11-23 Thread Caolán McNamara (via logerrit)
 sc/UIConfig_scalc.mk   |1 
 sc/qa/uitest/autofilter/autofilter.py  |   48 +-
 sc/qa/uitest/autofilter2/tdf117276.py  |8 
 sc/qa/uitest/autofilter2/tdf117276_autofilter_reset.py |6 
 sc/qa/uitest/autofilter2/tdf122260.py  |4 
 sc/qa/uitest/autofilter2/tdf140754.py  |4 
 sc/qa/uitest/autofilter2/tdf141946.py  |8 
 sc/qa/uitest/autofilter2/tdf46062.py   |2 
 sc/qa/uitest/autofilter2/tdf46184.py   |2 
 sc/qa/uitest/autofilter2/tdf48025.py   |6 
 sc/qa/uitest/autofilter2/tdf68113.py   |4 
 sc/qa/uitest/autofilter2/tdf97340.py   |2 
 sc/qa/uitest/calc_tests9/pivotTable.py |2 
 sc/source/ui/cctrl/checklistmenu.cxx   |  370 +
 sc/source/ui/inc/checklistmenu.hxx |   95 ++--
 sc/source/ui/inc/gridwin.hxx   |4 
 sc/source/ui/view/gridwin.cxx  |   93 ++--
 sc/source/ui/view/gridwin2.cxx |   45 --
 sc/uiconfig/scalc/ui/filterdropdown.ui |  367 
 sc/uiconfig/scalc/ui/filtersubdropdown.ui  |   79 +++
 vcl/unx/gtk3/gtkinst.cxx   |   52 ++
 21 files changed, 693 insertions(+), 509 deletions(-)

New commits:
commit 2acdb3e617658ca19de26e8928e42b4955622feb
Author: Caolán McNamara 
AuthorDate: Fri Nov 19 11:38:58 2021 +
Commit: Caolán McNamara 
CommitDate: Tue Nov 23 17:36:13 2021 +0100

tdf#139460 improve autofilter sub-menu interaction under gtk

so the submenu pops down when the mouse moves back into its parent.

This removes layer of InterimItemWindow and for gtk (under wayland) the
autofilter and its submenu can use native GtkPopovers

Change-Id: I4c8c3d2087566f508d75eda72e272d9f7fba2f00
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125428
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/sc/UIConfig_scalc.mk b/sc/UIConfig_scalc.mk
index c1bd1b075926..336e1710958d 100644
--- a/sc/UIConfig_scalc.mk
+++ b/sc/UIConfig_scalc.mk
@@ -129,6 +129,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/scalc,\
sc/uiconfig/scalc/ui/filldlg \
sc/uiconfig/scalc/ui/filterlist \
sc/uiconfig/scalc/ui/filterdropdown \
+   sc/uiconfig/scalc/ui/filtersubdropdown \
sc/uiconfig/scalc/ui/footerdialog \
sc/uiconfig/scalc/ui/formatcellsdialog \
sc/uiconfig/scalc/ui/formulacalculationoptions \
diff --git a/sc/qa/uitest/autofilter/autofilter.py 
b/sc/qa/uitest/autofilter/autofilter.py
index 847aa8dcf8b6..eede08073388 100644
--- a/sc/qa/uitest/autofilter/autofilter.py
+++ b/sc/qa/uitest/autofilter/autofilter.py
@@ -20,7 +20,7 @@ class AutofilterTest(UITestCase):
 xGridWin.executeAction("LAUNCH", mkPropertyValues({"AUTOFILTER": 
"", "COL": "0", "ROW": "0"}))
 
 xFloatWindow = self.xUITest.getFloatWindow()
-xCheckListMenu = xFloatWindow.getChild("check_list_menu")
+xCheckListMenu = xFloatWindow.getChild("FilterDropDown")
 
 xTreeList = xCheckListMenu.getChild("check_tree_box")
 xFirstEntry = xTreeList.getChild("0")
@@ -42,7 +42,7 @@ class AutofilterTest(UITestCase):
 xGridWin = self.xUITest.getTopFocusWindow().getChild("grid_window")
 xGridWin.executeAction("LAUNCH", mkPropertyValues({"AUTOFILTER": 
"", "COL": "2", "ROW": "0"}))
 xFloatWindow = self.xUITest.getFloatWindow()
-xCheckListMenu = xFloatWindow.getChild("check_list_menu")
+xCheckListMenu = xFloatWindow.getChild("FilterDropDown")
 
 xTreeList = xCheckListMenu.getChild("check_list_box")
 xFirstEntry = xTreeList.getChild("1")
@@ -64,7 +64,7 @@ class AutofilterTest(UITestCase):
 xGridWin = self.xUITest.getTopFocusWindow().getChild("grid_window")
 xGridWin.executeAction("LAUNCH", mkPropertyValues({"AUTOFILTER": 
"", "COL": "1", "ROW": "3"}))
 xFloatWindow = self.xUITest.getFloatWindow()
-xCheckListMenu = xFloatWindow.getChild("check_list_menu")
+xCheckListMenu = xFloatWindow.getChild("FilterDropDown")
 xTreeList = xCheckListMenu.getChild("check_list_box")
 size1 = int(get_state_as_dict(xTreeList)["Size"].split('x')[0])
 xOkBtn = xFloatWindow.getChild("cancel")
@@ -72,7 +72,7 @@ class AutofilterTest(UITestCase):
 
 xGridWin.executeAction("LAUNCH", mkPropertyValues({"AUTOFILTER": 
"", "COL": "2", "ROW": "3"}))
 xFloatWindow = self.xUITest.getFloatWindow()
-xCheckListMenu = xFloatWindow.getChild("check_list_menu")
+xCheckListMenu = xFloatWindow.getChild("FilterDropDown")
 xTreeList = 

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

2021-11-17 Thread Luboš Luňák (via logerrit)
 sc/qa/unit/data/functions/spreadsheet/fods/vlookup2.fods |   22 +++
 sc/source/core/data/table3.cxx   |9 --
 sc/uiconfig/scalc/ui/optcalculatepage.ui |2 -
 3 files changed, 12 insertions(+), 21 deletions(-)

New commits:
commit 8dec2a98ce29251936cd45ebf864a89ff767ee50
Author: Luboš Luňák 
AuthorDate: Tue Nov 16 01:30:24 2021 +0100
Commit: Luboš Luňák 
CommitDate: Wed Nov 17 10:10:58 2021 +0100

revert "vlookup - optimize SC_EQUAL and NOT_EQUAL." (tdf#139612)

That commit breaks lookup when the  "Search criteria = and <> must
apply to whole cells" option is disabled, as it enforces whole cell
checking regardless of the option. Given that the option is enabled
by default in LO ('SearchCriteria' in Calc.xcs) and it's what
MSOffice does as well, and this default gives good performance
regardless of the option, I don't understand the purpose
of the commit. Possibly it was based on a document where somebody
disabled the option and then indeed got worse performance.
Solution: Don't do that :).

This reverts the code parts of a953fa1c0f6a40a08859570516c511f3a841 .
The test I've kept but switched to ensure that partial matching
does work if the option to match whole cells is disabled. I've
also changed the tooltip for the option to mention performance
and not suggest that off is the default.

Change-Id: I56d7b6e7b8e9f0622f7ad6d447daf56c3b705a7e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125267
Tested-by: Jenkins
Reviewed-by: Mike Kaganski 
Reviewed-by: Luboš Luňák 

diff --git a/sc/qa/unit/data/functions/spreadsheet/fods/vlookup2.fods 
b/sc/qa/unit/data/functions/spreadsheet/fods/vlookup2.fods
index d47779d928a1..fd228881a7cb 100644
--- a/sc/qa/unit/data/functions/spreadsheet/fods/vlookup2.fods
+++ b/sc/qa/unit/data/functions/spreadsheet/fods/vlookup2.fods
@@ -1017,14 +1017,14 @@
   TRUE
  
  
-  VLOOKUP tests that ensure there is no partial matching of cell 
contents
+  VLOOKUP tests that ensure there is partial matching of cell 
contents
  
 
 
  
  
  
-  even though the document option of “search on whole cell” is 
turned off.
+  when the document option of “search on whole cell” is turned 
off.
  
 
 
@@ -1095,10 +1095,10 @@
  
   #N/A
  
- 
-  #N/A
+ 
+  2
  
- 
+ 
   TRUE
  
  
@@ -1122,10 +1122,10 @@
  
   #N/A
  
- 
-  #N/A
+ 
+  2
  
- 
+ 
   TRUE
  
  
@@ -1149,10 +1149,10 @@
  
   #N/A
  
- 
-  #N/A
+ 
+  2
  
- 
+ 
   TRUE
  
  
diff --git a/sc/source/core/data/table3.cxx b/sc/source/core/data/table3.cxx
index 9c7417278658..0ef833511dba 100644
--- a/sc/source/core/data/table3.cxx
+++ b/sc/source/core/data/table3.cxx
@@ -2767,11 +2767,6 @@ public:
 
 if (nIndex < 0)
 nStrPos = -1;
-else if (rEntry.eOp == SC_EQUAL ||
- rEntry.eOp == SC_NOT_EQUAL)
-{
-nStrPos = pCellStr == pQuer ? 0 : -1;
-}
 else
 { // OUString::indexOf
 nStrPos = rtl_ustr_indexOfStr_WithLength(
@@ -2803,14 +2798,10 @@ public:
 switch (rEntry.eOp)
 {
 case SC_EQUAL:
-bOk = ( nStrPos == 0 );
-break;
 case SC_CONTAINS:
 bOk = ( nStrPos != -1 );
 break;
 case SC_NOT_EQUAL:
-bOk = ( nStrPos != 0 );
-break;
 case SC_DOES_NOT_CONTAIN:
 bOk = ( nStrPos == -1 );
 break;
diff --git a/sc/uiconfig/scalc/ui/optcalculatepage.ui 
b/sc/uiconfig/scalc/ui/optcalculatepage.ui
index 1af846f48ff1..1c0c7f3c2928 100644
--- a/sc/uiconfig/scalc/ui/optcalculatepage.ui
+++ b/sc/uiconfig/scalc/ui/optcalculatepage.ui
@@ -131,7 +131,7 @@
 True
 True
 False
-Enable this for interoperability 
with Microsoft Excel
+Keep this enabled for 
interoperability with Microsoft Excel or for better performance
 True
 True
 


[Libreoffice-commits] core.git: sc/qa sc/source sc/uiconfig vcl/unx

2020-09-20 Thread Caolán McNamara (via logerrit)
 sc/qa/uitest/autofilter/autofilter.py |2 
 sc/qa/uitest/autofilter/autofilterBugs.py |2 
 sc/qa/uitest/autofilter/tdf97340.py   |4 
 sc/source/ui/cctrl/checklistmenu.cxx  |  239 ---
 sc/source/ui/inc/checklistmenu.hxx|4 
 sc/source/ui/view/gridwin.cxx |7 
 sc/uiconfig/scalc/ui/filterdropdown.ui|  134 ++--
 vcl/unx/gtk3/gtk3gtkinst.cxx  |  450 ++
 8 files changed, 522 insertions(+), 320 deletions(-)

New commits:
commit fcf2f4ac837982e1fae49ddd75383ceab4e2bda7
Author: Caolán McNamara 
AuthorDate: Fri Sep 18 20:52:16 2020 +0100
Commit: Caolán McNamara 
CommitDate: Sun Sep 20 18:51:56 2020 +0200

tdf#136559 We can get a performance boost from using a ListStore

instead of a TreeStore if we only need a list

see: https://gitlab.gnome.org/GNOME/gtk/-/issues/2693

Change-Id: I03d03f2364ccc75b87d3f7c31d21ac9993fb384b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103036
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/sc/qa/uitest/autofilter/autofilter.py 
b/sc/qa/uitest/autofilter/autofilter.py
index 61e43b2fb5a6..000ddaab77e3 100644
--- a/sc/qa/uitest/autofilter/autofilter.py
+++ b/sc/qa/uitest/autofilter/autofilter.py
@@ -32,7 +32,7 @@ class AutofilterTest(UITestCase):
 xFloatWindow = self.xUITest.getFloatWindow()
 xCheckListMenu = xFloatWindow.getChild("check_list_menu")
 
-xTreeList = xCheckListMenu.getChild("check_list_box")
+xTreeList = xCheckListMenu.getChild("check_tree_box")
 xFirstEntry = xTreeList.getChild("0")
 
 xFirstEntry.executeAction("CLICK", tuple())
diff --git a/sc/qa/uitest/autofilter/autofilterBugs.py 
b/sc/qa/uitest/autofilter/autofilterBugs.py
index 193ba49f40a6..e1d0cd19d524 100644
--- a/sc/qa/uitest/autofilter/autofilterBugs.py
+++ b/sc/qa/uitest/autofilter/autofilterBugs.py
@@ -134,7 +134,7 @@ class autofilter(UITestCase):
 
 xGridWindow.executeAction("LAUNCH", mkPropertyValues({"AUTOFILTER": 
"", "COL": "0", "ROW": "0"}))
 xFloatWindow = self.xUITest.getFloatWindow()
-xTreeList = xFloatWindow.getChild("check_list_box")
+xTreeList = xFloatWindow.getChild("check_tree_box")
 xFirstEntry = xTreeList.getChild("0")
 self.assertEqual(get_state_as_dict(xFirstEntry)["Text"], "2014")
 
diff --git a/sc/qa/uitest/autofilter/tdf97340.py 
b/sc/qa/uitest/autofilter/tdf97340.py
index 442be0bb91dc..602586836622 100644
--- a/sc/qa/uitest/autofilter/tdf97340.py
+++ b/sc/qa/uitest/autofilter/tdf97340.py
@@ -26,7 +26,7 @@ class tdf97340(UITestCase):
 xFloatWindow = self.xUITest.getFloatWindow()
 
 xCheckListMenu = xFloatWindow.getChild("check_list_menu")
-xTreeList = xCheckListMenu.getChild("check_list_box")
+xTreeList = xCheckListMenu.getChild("check_tree_box")
 self.assertEqual(2, len(xTreeList.getChildren()))
 self.assertEqual("2016", 
get_state_as_dict(xTreeList.getChild('0'))['Text'])
 self.assertEqual("2017", 
get_state_as_dict(xTreeList.getChild('1'))['Text'])
@@ -43,4 +43,4 @@ class tdf97340(UITestCase):
 self.assertEqual("2017", 
get_state_as_dict(xTreeList.getChild('1'))['Text'])
 
 self.ui_test.close_doc()
-# vim: set shiftwidth=4 softtabstop=4 expandtab:
\ No newline at end of file
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/sc/source/ui/cctrl/checklistmenu.cxx 
b/sc/source/ui/cctrl/checklistmenu.cxx
index 57167b5bbe95..8707aff3f477 100644
--- a/sc/source/ui/cctrl/checklistmenu.cxx
+++ b/sc/source/ui/cctrl/checklistmenu.cxx
@@ -420,7 +420,9 @@ 
ScCheckListMenuControl::ScCheckListMenuControl(ScCheckListMenuWindow* pParent, v
 , mxScratchIter(mxMenu->make_iterator())
 , mxEdSearch(mxBuilder->weld_entry("search_edit"))
 , mxBox(mxBuilder->weld_widget("box"))
-, mxChecks(mxBuilder->weld_tree_view("check_list_box"))
+, mxListChecks(mxBuilder->weld_tree_view("check_list_box"))
+, mxTreeChecks(mxBuilder->weld_tree_view("check_tree_box"))
+, mpChecks(mxTreeChecks.get())
 , mxChkToggleAll(mxBuilder->weld_check_button("toggle_all"))
 , mxBtnSelectSingle(mxBuilder->weld_button("select_current"))
 , mxBtnUnselectSingle(mxBuilder->weld_button("unselect_current"))
@@ -441,11 +443,12 @@ 
ScCheckListMenuControl::ScCheckListMenuControl(ScCheckListMenuWindow* pParent, v
 {
 bool bIsSubMenu = pParent->GetParentMenu();
 
-int nChecksHeight = mxChecks->get_height_rows(9);
+int nChecksHeight = mxTreeChecks->get_height_rows(9);
 if (!bIsSubMenu && nWidth != -1)
 {
 mnCheckWidthReq = nWidth - mxFrame->get_border_width() * 2 - 4;
-mxChecks->set_size_request(mnCheckWidthReq, nChecksHeight);
+mxTreeChecks->set_size_request(mnCheckWidthReq, nChecksHeight);
+mxListChecks->set_size_request(mnCheckWidthReq, nChecksHeight);
 }
 
 // sort ok/cancel into native order, 

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

2020-08-28 Thread Attila Szűcs (via logerrit)
 sc/qa/uitest/autofilter/autofilter.py  |   45 +
 sc/qa/uitest/autofilter/data/tdf133160.ods |binary
 sc/source/ui/cctrl/checklistmenu.cxx   |   25 ++--
 sc/source/ui/inc/checklistmenu.hxx |4 +-
 sc/source/ui/view/gridwin.cxx  |   40 +++--
 sc/uiconfig/scalc/ui/filterdropdown.ui |3 +
 6 files changed, 110 insertions(+), 7 deletions(-)

New commits:
commit 2d43c425a0de003a37bc278c3786d89165ecaf76
Author: Attila Szűcs 
AuthorDate: Wed Aug 19 10:50:22 2020 +0200
Commit: László Németh 
CommitDate: Fri Aug 28 08:56:31 2020 +0200

tdf#133160 sc: fix width of Autofilter popup window

Autofilter popup window will be automatically resized horizontally
to make sure its list items are fit into the window, if possible.

The window width is capped at 1024 pixel. If it is not enough,
horizontal scrollbar will appear for the TreeList.

Co-authored-by: Tibor Nagy (NISZ)

Change-Id: I49ce9ec2c715010d604357e4955eee86d276d713
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100978
Tested-by: László Németh 
Reviewed-by: László Németh 

diff --git a/sc/qa/uitest/autofilter/autofilter.py 
b/sc/qa/uitest/autofilter/autofilter.py
index 57504e66e8e9..a0264f07878c 100644
--- a/sc/qa/uitest/autofilter/autofilter.py
+++ b/sc/qa/uitest/autofilter/autofilter.py
@@ -6,6 +6,7 @@
 #
 
 from uitest.framework import UITestCase
+from uitest.uihelper.common import get_state_as_dict
 from uitest.path import get_srcdir_url
 
 from libreoffice.uno.propertyvalue import mkPropertyValues
@@ -70,4 +71,48 @@ class AutofilterTest(UITestCase):
 self.assertTrue(is_row_hidden(doc, 3))
 self.assertFalse(is_row_hidden(doc, 4))
 
+def test_tdf133160(self):
+doc = self.ui_test.load_file(get_url_for_data_file("tdf133160.ods"))
+
+xGridWin = self.xUITest.getTopFocusWindow().getChild("grid_window")
+xGridWin.executeAction("LAUNCH", mkPropertyValues({"AUTOFILTER": "", 
"COL": "1", "ROW": "3"}))
+xFloatWindow = self.xUITest.getFloatWindow()
+xCheckListMenu = xFloatWindow.getChild("check_list_menu")
+xTreeList = xCheckListMenu.getChild("check_list_box")
+size1 = int(get_state_as_dict(xTreeList)["Size"].split('x')[0])
+xOkBtn = xFloatWindow.getChild("cancel")
+xOkBtn.executeAction("CLICK", tuple())
+
+xGridWin.executeAction("LAUNCH", mkPropertyValues({"AUTOFILTER": "", 
"COL": "2", "ROW": "3"}))
+xFloatWindow = self.xUITest.getFloatWindow()
+xCheckListMenu = xFloatWindow.getChild("check_list_menu")
+xTreeList = xCheckListMenu.getChild("check_list_box")
+size2 = int(get_state_as_dict(xTreeList)["Size"].split('x')[0])
+xOkBtn = xFloatWindow.getChild("cancel")
+xOkBtn.executeAction("CLICK", tuple())
+
+xGridWin.executeAction("LAUNCH", mkPropertyValues({"AUTOFILTER": "", 
"COL": "3", "ROW": "3"}))
+xFloatWindow = self.xUITest.getFloatWindow()
+xCheckListMenu = xFloatWindow.getChild("check_list_menu")
+xTreeList = xCheckListMenu.getChild("check_list_box")
+size3 = int(get_state_as_dict(xTreeList)["Size"].split('x')[0])
+xOkBtn = xFloatWindow.getChild("cancel")
+xOkBtn.executeAction("CLICK", tuple())
+
+xGridWin.executeAction("LAUNCH", mkPropertyValues({"AUTOFILTER": "", 
"COL": "4", "ROW": "3"}))
+xFloatWindow = self.xUITest.getFloatWindow()
+xCheckListMenu = xFloatWindow.getChild("check_list_menu")
+xTreeList = xCheckListMenu.getChild("check_list_box")
+size4 = int(get_state_as_dict(xTreeList)["Size"].split('x')[0])
+
+xOkBtn = xFloatWindow.getChild("cancel")
+xOkBtn.executeAction("CLICK", tuple())
+
+self.assertTrue(size1 < size2) # for me they were size1=176 size2=212 
size3=459 size4=1012
+self.assertTrue(size2 < size3) # size1 is the minimum window width,  
size2 based on its column width
+self.assertTrue(size3 < size4) # size3 is a long text width
+self.assertTrue(size4 < 1500)  # size4 is the maximum window width 
with a really long text
+
+self.ui_test.close_doc()
+
 # vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/sc/qa/uitest/autofilter/data/tdf133160.ods 
b/sc/qa/uitest/autofilter/data/tdf133160.ods
new file mode 100644
index ..40f83e60af97
Binary files /dev/null and b/sc/qa/uitest/autofilter/data/tdf133160.ods differ
diff --git a/sc/source/ui/cctrl/checklistmenu.cxx 
b/sc/source/ui/cctrl/checklistmenu.cxx
index 7422a1a93b52..9a9259f9f796 100644
--- a/sc/source/ui/cctrl/checklistmenu.cxx
+++ b/sc/source/ui/cctrl/checklistmenu.cxx
@@ -1159,14 +1159,17 @@ namespace
 }
 }
 
-size_t ScCheckListMenuControl::initMembers()
+size_t ScCheckListMenuControl::initMembers(int nMaxMemberWidth)
 {
 size_t n = maMembers.size();
 size_t nVisMemCount = 0;
 
+if 

[Libreoffice-commits] core.git: sc/qa sc/source sc/uiconfig solenv/sanitizers

2019-04-14 Thread Caolán McNamara (via logerrit)
 sc/qa/uitest/calc_tests2/consolidate.py   |9 
 sc/source/ui/dbgui/consdlg.cxx|  415 ++
 sc/source/ui/inc/consdlg.hxx  |   84 +++---
 sc/source/ui/inc/reffact.hxx  |2 
 sc/source/ui/view/reffact.cxx |4 
 sc/source/ui/view/tabvwshc.cxx|   75 ++---
 sc/uiconfig/scalc/ui/consolidatedialog.ui |  107 +++
 solenv/sanitizers/ui/modules/scalc.suppr  |6 
 8 files changed, 343 insertions(+), 359 deletions(-)

New commits:
commit c3bca577807d7cbd93ce8c66aab8798de45bef16
Author: Caolán McNamara 
AuthorDate: Sat Apr 13 19:23:23 2019 +0100
Commit: Caolán McNamara 
CommitDate: Sun Apr 14 15:54:08 2019 +0200

weld ScConsolidateDlg

Change-Id: I7d52aea1917503a37cdc7d1ae16d7d2377397f30
Reviewed-on: https://gerrit.libreoffice.org/70714
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 
Tested-by: Caolán McNamara 

diff --git a/sc/qa/uitest/calc_tests2/consolidate.py 
b/sc/qa/uitest/calc_tests2/consolidate.py
index 4d47d03be898..508ac7aaee83 100644
--- a/sc/qa/uitest/calc_tests2/consolidate.py
+++ b/sc/qa/uitest/calc_tests2/consolidate.py
@@ -87,14 +87,15 @@ class consolidate(UITestCase):
 xeddestarea = xDialog.getChild("eddestarea")
 xconsareas = xDialog.getChild("consareas")
 self.assertEqual(get_state_as_dict(xfunc)["SelectEntryText"], "Sum")
-self.assertEqual(get_state_as_dict(xconsareas)["EntryCount"], "3")
+self.assertEqual(get_state_as_dict(xconsareas)["Children"], "3")
 self.assertEqual(get_state_as_dict(xeddestarea)["Text"], "$Total.$A$2")
 self.assertEqual(get_state_as_dict(xbyrow)["Selected"], "true")
 self.assertEqual(get_state_as_dict(xbycol)["Selected"], "true")
 #delete first range
-select_pos(xconsareas, "0")
+xFirstEntry = xconsareas.getChild("0")
+xFirstEntry.executeAction("SELECT", tuple())
 xdelete.executeAction("CLICK", tuple())
-self.assertEqual(get_state_as_dict(xconsareas)["EntryCount"], "2")
+self.assertEqual(get_state_as_dict(xconsareas)["Children"], "2")
 xOKBtn = xDialog.getChild("ok")
 self.ui_test.close_dialog_through_button(xOKBtn)
 
@@ -120,4 +121,4 @@ class consolidate(UITestCase):
 
 self.ui_test.close_doc()
 
-# vim: set shiftwidth=4 softtabstop=4 expandtab:
\ No newline at end of file
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/sc/source/ui/dbgui/consdlg.cxx b/sc/source/ui/dbgui/consdlg.cxx
index c2138dd89ffe..127d18dfde66 100644
--- a/sc/source/ui/dbgui/consdlg.cxx
+++ b/sc/source/ui/dbgui/consdlg.cxx
@@ -64,77 +64,48 @@ public:
 OUString  aStrArea;
 };
 
-ScConsolidateDlg::ScConsolidateDlg( SfxBindings* pB, SfxChildWindow* pCW, 
vcl::Window* pParent,
-const SfxItemSet&   rArgSet )
-
-:   ScAnyRefDlg ( pB, pCW, pParent, "ConsolidateDialog" , 
"modules/scalc/ui/consolidatedialog.ui" ),
-aStrUndefined   ( ScResId( SCSTR_UNDEFINED ) ),
-theConsData ( static_cast(
-   rArgSet.Get( rArgSet.GetPool()->
-GetWhich( SID_CONSOLIDATE ) )
-  ).GetData() ),
-rViewData   ( 
static_cast(SfxViewShell::Current())->
-GetViewData() ),
-pDoc( 
static_cast(SfxViewShell::Current())->
-GetViewData().GetDocument() ),
-pRangeUtil  ( new ScRangeUtil ),
-nAreaDataCount  ( 0 ),
-nWhichCons  ( rArgSet.GetPool()->GetWhich( SID_CONSOLIDATE ) ),
-bDlgLostFocus   ( false )
+ScConsolidateDlg::ScConsolidateDlg(SfxBindings* pB, SfxChildWindow* pCW, 
weld::Window* pParent,
+   const SfxItemSet& rArgSet)
+
+: ScAnyRefDlgController(pB, pCW, pParent, 
"modules/scalc/ui/consolidatedialog.ui", "ConsolidateDialog")
+, aStrUndefined   ( ScResId( SCSTR_UNDEFINED ) )
+, theConsData ( static_cast(
+ rArgSet.Get( rArgSet.GetPool()->
+  GetWhich( SID_CONSOLIDATE ) )
+).GetData() )
+, rViewData   ( static_cast(SfxViewShell::Current())->
+  GetViewData() )
+, pDoc( static_cast(SfxViewShell::Current())->
+  GetViewData().GetDocument() )
+, pRangeUtil  ( new ScRangeUtil )
+, nAreaDataCount  ( 0 )
+, nWhichCons  ( rArgSet.GetPool()->GetWhich( SID_CONSOLIDATE ) )
+, bDlgLostFocus   ( false )
+, m_xLbFunc(m_xBuilder->weld_combo_box("func"))
+, m_xLbConsAreas(m_xBuilder->weld_tree_view("consareas"))
+, m_xLbDataArea(m_xBuilder->weld_combo_box("lbdataarea"))
+, m_xEdDataArea(new 
formula::WeldRefEdit(m_xBuilder->weld_entry("eddataarea")))
+, m_xRbDataArea(new 

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

2018-08-03 Thread Libreoffice Gerrit user
 sc/qa/uitest/statistics/data/regression.ods |binary
 sc/qa/uitest/statistics/regression.py   |   18 -
 sc/source/ui/StatisticsDialogs/RegressionDialog.cxx |   21 +---
 sc/source/ui/inc/RegressionDialog.hxx   |2 +
 sc/uiconfig/scalc/ui/regressiondialog.ui|   12 ++-
 5 files changed, 40 insertions(+), 13 deletions(-)

New commits:
commit 2ffe228264caa77b18c3bea56823f000b2d01a7e
Author: Dennis Francis 
AuthorDate: Wed Aug 1 17:59:23 2018 +0530
Commit: Dennis Francis 
CommitDate: Fri Aug 3 19:12:36 2018 +0200

Allow forcing of intercept to zero in regression dialog

Change-Id: I3958c139141a9e717256a638d319e0bb5879e6a4
Reviewed-on: https://gerrit.libreoffice.org/58565
Tested-by: Jenkins
Reviewed-by: Dennis Francis 

diff --git a/sc/qa/uitest/statistics/data/regression.ods 
b/sc/qa/uitest/statistics/data/regression.ods
index f9f65bfda0f5..1c8b72cc912b 100644
Binary files a/sc/qa/uitest/statistics/data/regression.ods and 
b/sc/qa/uitest/statistics/data/regression.ods differ
diff --git a/sc/qa/uitest/statistics/regression.py 
b/sc/qa/uitest/statistics/regression.py
index ccf1258a776e..6f5fd2ca0e27 100644
--- a/sc/qa/uitest/statistics/regression.py
+++ b/sc/qa/uitest/statistics/regression.py
@@ -31,17 +31,18 @@ class regression(UITestCase):
 document = self.ui_test.get_component()
 
 # Initially the final check status is "FALSE" (failed).
-self.assertEqual(get_cell_by_position(document, 11, 1, 5).getString(), 
"FALSE",
+self.assertEqual(get_cell_by_position(document, 14, 1, 6).getString(), 
"FALSE",
  "Check status must be FALSE before the test")
-self._do_regression(regression_type = "LINEAR", data_groupedby_column 
= data_groupedby_column)
+self._do_regression(regression_type = "LINEAR", data_groupedby_column 
= data_groupedby_column, calc_intercept = True)
+self._do_regression(regression_type = "LINEAR", data_groupedby_column 
= data_groupedby_column, calc_intercept = False)
 self._do_regression(regression_type = "LOG", data_groupedby_column = 
data_groupedby_column)
 self._do_regression(regression_type = "POWER", data_groupedby_column = 
data_groupedby_column)
-self.assertEqual(get_cell_by_position(document, 11, 1, 5).getString(), 
"TRUE",
+self.assertEqual(get_cell_by_position(document, 14, 1, 6).getString(), 
"TRUE",
  "One of more of the checks failed for 
data_groupedby_column = {}, manually try with the document".
  format(data_groupedby_column))
 self.ui_test.close_doc()
 
-def _do_regression(self, regression_type, data_groupedby_column = True):
+def _do_regression(self, regression_type, data_groupedby_column = True, 
calc_intercept = True):
 assert(regression_type == "LINEAR" or regression_type == "LOG" or 
regression_type == "POWER")
 
self.ui_test.execute_modeless_dialog_through_command(".uno:RegressionDialog")
 xDialog = self.xUITest.getTopFocusWindow()
@@ -54,6 +55,7 @@ class regression(UITestCase):
 xlinearradio = xDialog.getChild("linear-radio")
 xlogarithmicradio = xDialog.getChild("logarithmic-radio")
 xpowerradio = xDialog.getChild("power-radio")
+xnointerceptcheck = xDialog.getChild("nointercept-check")
 
 ## Set the X, Y and output ranges
 xvariable1rangeedit.executeAction("FOCUS", tuple()) # Without this the 
range parser does not kick in somehow
@@ -79,7 +81,10 @@ class regression(UITestCase):
 xoutputrangeedit.executeAction("TYPE", 
mkPropertyValues({"KEYCODE":"CTRL+A"}))
 xoutputrangeedit.executeAction("TYPE", 
mkPropertyValues({"KEYCODE":"BACKSPACE"}))
 if regression_type == "LINEAR":
-xoutputrangeedit.executeAction("TYPE", 
mkPropertyValues({"TEXT":"$ActualLinear.$A$1"}))
+if calc_intercept:
+xoutputrangeedit.executeAction("TYPE", 
mkPropertyValues({"TEXT":"$ActualLinear.$A$1"}))
+else:
+xoutputrangeedit.executeAction("TYPE", 
mkPropertyValues({"TEXT":"$ActualLinearNoIntercept.$A$1"}))
 elif regression_type == "LOG":
 xoutputrangeedit.executeAction("TYPE", 
mkPropertyValues({"TEXT":"$ActualLog.$A$1"}))
 else:
@@ -97,6 +102,9 @@ class regression(UITestCase):
 else:
 xpowerradio.executeAction("CLICK", tuple())
 
+if not calc_intercept:
+xnointerceptcheck.executeAction("CLICK", tuple())
+
 xOKBtn = xDialog.getChild("ok")
 self.ui_test.close_dialog_through_button(xOKBtn)
 
diff --git a/sc/source/ui/StatisticsDialogs/RegressionDialog.cxx 
b/sc/source/ui/StatisticsDialogs/RegressionDialog.cxx
index b3e744cdf71d..5cc45f1cee4a 100644
--- a/sc/source/ui/StatisticsDialogs/RegressionDialog.cxx
+++ b/sc/source/ui/StatisticsDialogs/RegressionDialog.cxx
@@ -116,9 

[Libreoffice-commits] core.git: sc/qa sc/source sc/uiconfig sc/UIConfig_scalc.mk

2018-07-11 Thread Manuj Vashist
 sc/UIConfig_scalc.mk  |1 
 sc/qa/unit/datatransformation_test.cxx|   24 -
 sc/source/ui/dataprovider/datatransformation.cxx  |  313 +++---
 sc/source/ui/inc/dataproviderdlg.hxx  |1 
 sc/source/ui/inc/datatransformation.hxx   |6 
 sc/source/ui/miscdlgs/dataproviderdlg.cxx |  102 ++-
 sc/uiconfig/scalc/ui/numbertransformationentry.ui |  118 
 7 files changed, 394 insertions(+), 171 deletions(-)

New commits:
commit 5ed11c2ba2b1897955e80d240815f79239b324c2
Author: Manuj Vashist 
Date:   Tue Jul 10 04:56:37 2018 +0530

Added Number transformation in Data Provider Dlg

Change-Id: I9a2e1e16d7683d790826fdc772fbcfbcf8af9881
Reviewed-on: https://gerrit.libreoffice.org/57149
Tested-by: Jenkins
Reviewed-by: Markus Mohrhard 

diff --git a/sc/UIConfig_scalc.mk b/sc/UIConfig_scalc.mk
index 3b79d5d6b225..70d17e3ace35 100644
--- a/sc/UIConfig_scalc.mk
+++ b/sc/UIConfig_scalc.mk
@@ -159,6 +159,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/scalc,\
sc/uiconfig/scalc/ui/texttransformationentry \
sc/uiconfig/scalc/ui/sorttransformationentry \
sc/uiconfig/scalc/ui/aggregatefunctionentry \
+   sc/uiconfig/scalc/ui/numbertransformationentry \
sc/uiconfig/scalc/ui/movecopysheet \
sc/uiconfig/scalc/ui/movingaveragedialog \
sc/uiconfig/scalc/ui/multipleoperationsdialog \
diff --git a/sc/qa/unit/datatransformation_test.cxx 
b/sc/qa/unit/datatransformation_test.cxx
index baea46c694ad..00b6b69d4946 100644
--- a/sc/qa/unit/datatransformation_test.cxx
+++ b/sc/qa/unit/datatransformation_test.cxx
@@ -303,7 +303,7 @@ void ScDataTransformationTest::testNumberRound()
 m_pDoc->SetValue(2, 2, 0, 57453.651345687654345676);
 m_pDoc->SetValue(2, 3, 0, -453.22234567543);
 
-sc::NumberTransformation aTransform(2, sc::NUMBER_TRANSFORM_TYPE::ROUND, 
4);
+sc::NumberTransformation aTransform({2}, sc::NUMBER_TRANSFORM_TYPE::ROUND, 
4);
 aTransform.Transform(*m_pDoc);
 
 CPPUNIT_ASSERT_EQUAL(2034.3425, m_pDoc->GetValue(2, 0, 0));
@@ -319,7 +319,7 @@ void ScDataTransformationTest::testNumberRoundUp()
 m_pDoc->SetValue(2, 2, 0, 57453.65);
 m_pDoc->SetValue(2, 3, 0, -453.22);
 
-sc::NumberTransformation aTransform(2, 
sc::NUMBER_TRANSFORM_TYPE::ROUND_UP);
+sc::NumberTransformation aTransform({2}, 
sc::NUMBER_TRANSFORM_TYPE::ROUND_UP);
 aTransform.Transform(*m_pDoc);
 
 CPPUNIT_ASSERT_EQUAL(2035.0, m_pDoc->GetValue(2, 0, 0));
@@ -335,7 +335,7 @@ void ScDataTransformationTest::testNumberRoundDown()
 m_pDoc->SetValue(2, 2, 0, 57453.65);
 m_pDoc->SetValue(2, 3, 0, -453.22);
 
-sc::NumberTransformation aTransform(2, 
sc::NUMBER_TRANSFORM_TYPE::ROUND_DOWN);
+sc::NumberTransformation aTransform({2}, 
sc::NUMBER_TRANSFORM_TYPE::ROUND_DOWN);
 aTransform.Transform(*m_pDoc);
 
 CPPUNIT_ASSERT_EQUAL(2034.0, m_pDoc->GetValue(2, 0, 0));
@@ -351,7 +351,7 @@ void ScDataTransformationTest::testNumberAbsolute()
 m_pDoc->SetValue(2, 2, 0, 57453.65);
 m_pDoc->SetValue(2, 3, 0, -453.22);
 
-sc::NumberTransformation aTransform(2, 
sc::NUMBER_TRANSFORM_TYPE::ABSOLUTE);
+sc::NumberTransformation aTransform({2}, 
sc::NUMBER_TRANSFORM_TYPE::ABSOLUTE);
 aTransform.Transform(*m_pDoc);
 
 CPPUNIT_ASSERT_EQUAL(2034.34, m_pDoc->GetValue(2, 0, 0));
@@ -367,7 +367,7 @@ void ScDataTransformationTest::testNumberLogE()
 m_pDoc->SetValue(2, 2, 0, -9);
 m_pDoc->SetValue(2, 3, 0, 500);
 
-sc::NumberTransformation aTransform(2, sc::NUMBER_TRANSFORM_TYPE::LOG_E);
+sc::NumberTransformation aTransform({2}, sc::NUMBER_TRANSFORM_TYPE::LOG_E);
 aTransform.Transform(*m_pDoc);
 
 CPPUNIT_ASSERT_DOUBLES_EQUAL(0, m_pDoc->GetValue(2, 0, 0), 1e-10);
@@ -383,7 +383,7 @@ void ScDataTransformationTest::testNumberLog10()
 m_pDoc->SetValue(2, 2, 0, -9);
 m_pDoc->SetValue(2, 3, 0, 500);
 
-sc::NumberTransformation aTransform(2, sc::NUMBER_TRANSFORM_TYPE::LOG_10);
+sc::NumberTransformation aTransform({2}, 
sc::NUMBER_TRANSFORM_TYPE::LOG_10);
 aTransform.Transform(*m_pDoc);
 
 CPPUNIT_ASSERT_DOUBLES_EQUAL(0, m_pDoc->GetValue(2, 0, 0), 1e-10);
@@ -399,7 +399,7 @@ void ScDataTransformationTest::testNumberCube()
 m_pDoc->SetValue(2, 2, 0, 8);
 m_pDoc->SetValue(2, 3, 0, -8);
 
-sc::NumberTransformation aTransform(2, sc::NUMBER_TRANSFORM_TYPE::CUBE);
+sc::NumberTransformation aTransform({2}, sc::NUMBER_TRANSFORM_TYPE::CUBE);
 aTransform.Transform(*m_pDoc);
 
 CPPUNIT_ASSERT_EQUAL(8.0, m_pDoc->GetValue(2, 0, 0));
@@ -415,7 +415,7 @@ void ScDataTransformationTest::testNumberSquare()
 m_pDoc->SetValue(2, 2, 0, 8);
 m_pDoc->SetValue(2, 3, 0, -8);
 
-sc::NumberTransformation aTransform(2, sc::NUMBER_TRANSFORM_TYPE::SQUARE);
+sc::NumberTransformation aTransform({2}, 
sc::NUMBER_TRANSFORM_TYPE::SQUARE);
 aTransform.Transform(*m_pDoc);
 
 

[Libreoffice-commits] core.git: sc/qa sc/source sc/uiconfig sc/UIConfig_scalc.mk

2018-07-08 Thread Manuj Vashist
 sc/UIConfig_scalc.mk |1 
 sc/qa/unit/datatransformation_test.cxx   |8 -
 sc/source/ui/dataprovider/datatransformation.cxx |  124 ---
 sc/source/ui/inc/dataproviderdlg.hxx |1 
 sc/source/ui/inc/datatransformation.hxx  |4 
 sc/source/ui/miscdlgs/dataproviderdlg.cxx|   79 ++
 sc/uiconfig/scalc/ui/texttransformationentry.ui  |  109 
 7 files changed, 261 insertions(+), 65 deletions(-)

New commits:
commit 9546f6fec9c16c0440ef6db940aa704d2f8c6657
Author: Manuj Vashist 
Date:   Mon Jul 2 17:14:11 2018 +0530

added Text transformation in data provider dlg

Change-Id: I69d8aae9289ad6d1cbdf92307c16299a533fcd56
Reviewed-on: https://gerrit.libreoffice.org/56807
Tested-by: Jenkins
Reviewed-by: Markus Mohrhard 

diff --git a/sc/UIConfig_scalc.mk b/sc/UIConfig_scalc.mk
index 6eb7c34d49f9..498540b645fb 100644
--- a/sc/UIConfig_scalc.mk
+++ b/sc/UIConfig_scalc.mk
@@ -156,6 +156,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/scalc,\
sc/uiconfig/scalc/ui/managenamesdialog \
sc/uiconfig/scalc/ui/mergecellsdialog \
sc/uiconfig/scalc/ui/mergecolumnentry \
+   sc/uiconfig/scalc/ui/texttransformationentry \
sc/uiconfig/scalc/ui/movecopysheet \
sc/uiconfig/scalc/ui/movingaveragedialog \
sc/uiconfig/scalc/ui/multipleoperationsdialog \
diff --git a/sc/qa/unit/datatransformation_test.cxx 
b/sc/qa/unit/datatransformation_test.cxx
index 3546104fdbee..baea46c694ad 100644
--- a/sc/qa/unit/datatransformation_test.cxx
+++ b/sc/qa/unit/datatransformation_test.cxx
@@ -170,7 +170,7 @@ void ScDataTransformationTest::testTextToLower()
 m_pDoc->SetString(2, 2, 0, "Paris");
 m_pDoc->SetString(2, 3, 0, "Peking");
 
-sc::TextTransformation aTransform(2, sc::TEXT_TRANSFORM_TYPE::TO_LOWER);
+sc::TextTransformation aTransform({2}, sc::TEXT_TRANSFORM_TYPE::TO_LOWER);
 aTransform.Transform(*m_pDoc);
 
 CPPUNIT_ASSERT_EQUAL(OUString("berlin"), m_pDoc->GetString(2, 0, 0));
@@ -186,7 +186,7 @@ void ScDataTransformationTest::testTextToUpper()
 m_pDoc->SetString(2, 2, 0, "Paris");
 m_pDoc->SetString(2, 3, 0, "Peking");
 
-sc::TextTransformation aTransform(2, sc::TEXT_TRANSFORM_TYPE::TO_UPPER);
+sc::TextTransformation aTransform({2}, sc::TEXT_TRANSFORM_TYPE::TO_UPPER);
 aTransform.Transform(*m_pDoc);
 
 CPPUNIT_ASSERT_EQUAL(OUString("BERLIN"), m_pDoc->GetString(2, 0, 0));
@@ -202,7 +202,7 @@ void ScDataTransformationTest::testTextCapitalize()
 m_pDoc->SetString(2, 2, 0, "si tu la ves");
 m_pDoc->SetString(2, 3, 0, "cUaNdO mE EnAmOro");
 
-sc::TextTransformation aTransform(2, sc::TEXT_TRANSFORM_TYPE::CAPITALIZE);
+sc::TextTransformation aTransform({2}, 
sc::TEXT_TRANSFORM_TYPE::CAPITALIZE);
 aTransform.Transform(*m_pDoc);
 
 CPPUNIT_ASSERT_EQUAL(OUString("Hello World"), m_pDoc->GetString(2, 0, 0));
@@ -217,7 +217,7 @@ void ScDataTransformationTest::testTextTrim()
 m_pDoc->SetString(2, 1, 0, "Brussels ");
 m_pDoc->SetString(2, 2, 0, " Paris ");
 
-sc::TextTransformation aTransform(2, sc::TEXT_TRANSFORM_TYPE::TRIM);
+sc::TextTransformation aTransform({2}, sc::TEXT_TRANSFORM_TYPE::TRIM);
 aTransform.Transform(*m_pDoc);
 
 CPPUNIT_ASSERT_EQUAL(OUString("Berlin"), m_pDoc->GetString(2, 0, 0));
diff --git a/sc/source/ui/dataprovider/datatransformation.cxx 
b/sc/source/ui/dataprovider/datatransformation.cxx
index a1eae17c0df9..75e84a23c2ef 100644
--- a/sc/source/ui/dataprovider/datatransformation.cxx
+++ b/sc/source/ui/dataprovider/datatransformation.cxx
@@ -176,7 +176,7 @@ const ScSortParam & SortTransformation::getSortParam() const
 return maSortParam;
 }
 
-TextTransformation::TextTransformation(SCCOL nCol, const TEXT_TRANSFORM_TYPE 
rType):
+TextTransformation::TextTransformation(const std::set& nCol, const 
TEXT_TRANSFORM_TYPE rType):
 mnCol(nCol),
 maType(rType)
 {
@@ -184,85 +184,91 @@ TextTransformation::TextTransformation(SCCOL nCol, const 
TEXT_TRANSFORM_TYPE rTy
 
 void TextTransformation::Transform(ScDocument& rDoc) const
 {
-SCROW nEndRow = getLastRow(rDoc, mnCol);
-
-switch (maType)
+SCROW nEndRow = 0;
+for(auto& rCol : mnCol)
 {
-case TEXT_TRANSFORM_TYPE::TO_LOWER:
+nEndRow = getLastRow(rDoc, rCol);
+}
+for(auto& rCol : mnCol)
+{
+switch (maType)
 {
-for (SCROW nRow = 0; nRow <= nEndRow; ++nRow)
+case TEXT_TRANSFORM_TYPE::TO_LOWER:
 {
-CellType eType;
-rDoc.GetCellType(mnCol, nRow, 0, eType);
-if (eType == CELLTYPE_STRING)
+for (SCROW nRow = 0; nRow <= nEndRow; ++nRow)
 {
-OUString aStr = rDoc.GetString(mnCol, nRow, 0);
-rDoc.SetString(mnCol, nRow, 0, 
ScGlobal::pCharClass->lowercase(aStr));
+CellType 

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

2018-07-08 Thread Dennis Francis
 sc/qa/uitest/statistics/data/regression.ods |binary
 sc/source/ui/StatisticsDialogs/RegressionDialog.cxx |2 +-
 sc/uiconfig/scalc/ui/regressiondialog.ui|9 -
 3 files changed, 9 insertions(+), 2 deletions(-)

New commits:
commit 187af5be47db42e2f4ab94319f932b847f897ce2
Author: Dennis Francis 
Date:   Sun Jul 8 11:12:14 2018 +0530

tdf#118556 : Respect locale specific decimal separator...

in Regression dialog box's confidence-level entry.
Do not write floating-point numbers to cells as strings using
OUString::number() converter if the cell is supposed to be a
numeric one.

This also amends the uitest document such that the "expected"
confidence level cell is numeric and not string.

Thanks to Julien Nabet  for pointing me to
the specific issue.

Change-Id: I7d12674bf69fc53348366a03b7e6ff0af9588511
Reviewed-on: https://gerrit.libreoffice.org/57151
Tested-by: Jenkins
Reviewed-by: Dennis Francis 

diff --git a/sc/qa/uitest/statistics/data/regression.ods 
b/sc/qa/uitest/statistics/data/regression.ods
index e38d0a7ab26b..f9f65bfda0f5 100644
Binary files a/sc/qa/uitest/statistics/data/regression.ods and 
b/sc/qa/uitest/statistics/data/regression.ods differ
diff --git a/sc/source/ui/StatisticsDialogs/RegressionDialog.cxx 
b/sc/source/ui/StatisticsDialogs/RegressionDialog.cxx
index 086ef9b451cd..b3e744cdf71d 100644
--- a/sc/source/ui/StatisticsDialogs/RegressionDialog.cxx
+++ b/sc/source/ui/StatisticsDialogs/RegressionDialog.cxx
@@ -513,7 +513,7 @@ void 
ScRegressionDialog::WriteRegressionANOVAResults(AddressWalkerWriter& rOutpu
 rOutput.newLine();
 rOutput.writeString(ScResId(STR_LABEL_CONFIDENCE_LEVEL));
 rOutput.nextColumn();
-rOutput.writeString(OUString::number(mpConfidenceLevelField->GetValue() / 
100.0));
+rOutput.writeValue(mpConfidenceLevelField->GetValue() / 100.0);
 rTemplate.autoReplaceAddress("%CONFIDENCE_LEVEL_ADDR%", rOutput.current());
 rOutput.newLine();
 }
diff --git a/sc/uiconfig/scalc/ui/regressiondialog.ui 
b/sc/uiconfig/scalc/ui/regressiondialog.ui
index 4ef37adfafdd..faa4aa307cfd 100644
--- a/sc/uiconfig/scalc/ui/regressiondialog.ui
+++ b/sc/uiconfig/scalc/ui/regressiondialog.ui
@@ -3,6 +3,12 @@
 
   
   
+  
+1
+0.94996
+0.01
+0.10001
+  
   
 False
 6
@@ -466,7 +472,8 @@
 True
 start
 center
-0.95
+0,95
+confidencelevel-adjustment
 2
 True
 0.94996
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits