office-gobmx/sc
Miklos Vajna 4840880148 tdf#107394 sc ui: fix lack of row height update on undo of paste
This is a problem since commit df9243626b
(fdo#73606: Avoid excessive and unnecessary heap allocation of array
objects., 2014-01-14), though it seems this uncovered a problem that was
introduced earlier.

Reading ScViewFunc::AdjustBlockHeight(), commit
64a36fd4f4 (ScUndoPaste to handle multiple
ranges., 2011-09-09) changed ScUndoPaste::DoChange(), so that
AdjustBlockHeight() is invoked in a loop, but always with the same
arguments. In case AdjustBlockHeight() doesn't get a mark data, the
function takes the mark data from the view data, which is empty in the
"undo of paste" case, so no row height gets updated.

Fix the problem by explicitly providing the mark data to
AdjustBlockHeight(), probably that was the intention in the second
commit.

[ Testing this from CppunitTest_sc_copypaste means ScImportExport has to
be dllpublic, but that seems still better than having a view shell in
CppunitTest_sc_ucalc. ]

Change-Id: I140b53588d59d231772152c0e820e5fdedf6894c
Reviewed-on: https://gerrit.libreoffice.org/76265
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-07-25 09:21:13 +02:00
..
inc Fix typo 2019-07-24 23:36:21 +02:00
qa tdf#107394 sc ui: fix lack of row height update on undo of paste 2019-07-25 09:21:13 +02:00
res/xml
sdi tdf#62561 Add remove/edit hyperlink to calc context menu 2019-07-15 11:32:02 +02:00
source tdf#107394 sc ui: fix lack of row height update on undo of paste 2019-07-25 09:21:13 +02:00
uiconfig/scalc tdf:126142 ImageMap menubar entry moved to tools section 2019-07-16 23:46:59 +02:00
util
workben
AllLangMoTarget_sc.mk
common_unoapi_tests.mk
CppunitTest_sc_addin_functions_test.mk
CppunitTest_sc_anchor_test.mk
CppunitTest_sc_annotationobj.mk
CppunitTest_sc_annotationshapeobj.mk
CppunitTest_sc_annotationsobj.mk
CppunitTest_sc_arealinkobj.mk
CppunitTest_sc_arealinksobj.mk
CppunitTest_sc_array_functions_test.mk
CppunitTest_sc_autoformatobj.mk
CppunitTest_sc_autoformatsobj.mk
CppunitTest_sc_bugfix_test.mk
CppunitTest_sc_cache_test.mk
CppunitTest_sc_cellcursorobj.mk
CppunitTest_sc_cellfieldsobj.mk
CppunitTest_sc_cellformatsenumeration.mk
CppunitTest_sc_cellformatsobj.mk
CppunitTest_sc_cellobj.mk
CppunitTest_sc_cellrangeobj.mk
CppunitTest_sc_cellrangesobj.mk
CppunitTest_sc_cellsearchobj.mk
CppunitTest_sc_cellsenumeration.mk
CppunitTest_sc_cellsobj.mk
CppunitTest_sc_chart2dataprovider.mk
CppunitTest_sc_chart_regression_test.mk
CppunitTest_sc_chartobj.mk
CppunitTest_sc_chartsobj.mk
CppunitTest_sc_check_data_pilot_field.mk
CppunitTest_sc_check_data_pilot_table.mk
CppunitTest_sc_check_xcell_ranges_query.mk
CppunitTest_sc_cond_format_merge.mk
CppunitTest_sc_consolidationdescriptorobj.mk
CppunitTest_sc_copypaste.mk
CppunitTest_sc_core.mk
CppunitTest_sc_database_functions_test.mk
CppunitTest_sc_databaserangeobj.mk
CppunitTest_sc_databaserangesobj.mk
CppunitTest_sc_datapilotfieldgroupitemobj.mk
CppunitTest_sc_datapilotfieldgroupobj.mk
CppunitTest_sc_datapilotfieldgroupsobj.mk
CppunitTest_sc_datapilotfieldobj.mk
CppunitTest_sc_datapilotfieldsobj.mk
CppunitTest_sc_datapilotitemobj.mk
CppunitTest_sc_datapilotitemsobj.mk
CppunitTest_sc_datapilottableobj.mk
CppunitTest_sc_datapilottablesobj.mk
CppunitTest_sc_dataprovider.mk
CppunitTest_sc_datatransformation.mk
CppunitTest_sc_datetime_functions_test.mk
CppunitTest_sc_ddelinkobj.mk
CppunitTest_sc_ddelinksobj.mk
CppunitTest_sc_documentconfigurationobj.mk
CppunitTest_sc_drawpageobj.mk
CppunitTest_sc_drawpagesobj.mk
CppunitTest_sc_editfieldobj_cell.mk
CppunitTest_sc_editfieldobj_header.mk
CppunitTest_sc_filterdescriptorbase.mk
CppunitTest_sc_filters_test.mk
CppunitTest_sc_financial_functions_test.mk
CppunitTest_sc_functiondescriptionobj.mk
CppunitTest_sc_functionlistobj.mk
CppunitTest_sc_functions_test_old.mk
CppunitTest_sc_headerfieldsobj.mk
CppunitTest_sc_headerfootercontentobj.mk
CppunitTest_sc_html_export_test.mk
CppunitTest_sc_importdescriptorbaseobj.mk
CppunitTest_sc_indexenumeration_cellannotationsenumeration.mk
CppunitTest_sc_indexenumeration_cellarealinksenumeration.mk
CppunitTest_sc_indexenumeration_databaserangesenumeration.mk
CppunitTest_sc_indexenumeration_datapilotfieldsenumeration.mk
CppunitTest_sc_indexenumeration_datapilotitemsenumeration.mk
CppunitTest_sc_indexenumeration_datapilottablesenumeration.mk
CppunitTest_sc_indexenumeration_ddelinksenumeration.mk
CppunitTest_sc_indexenumeration_functiondescriptionenumeration.mk
CppunitTest_sc_indexenumeration_labelrangesenumeration.mk
CppunitTest_sc_indexenumeration_namedrangesenumeration.mk
CppunitTest_sc_indexenumeration_scenariosenumeration.mk
CppunitTest_sc_indexenumeration_sheetcellrangesenumeration.mk
CppunitTest_sc_indexenumeration_sheetlinksenumeration.mk
CppunitTest_sc_indexenumeration_spreadsheetsenumeration.mk
CppunitTest_sc_indexenumeration_spreadsheetviewpanesenumeration.mk
CppunitTest_sc_indexenumeration_subtotalfieldsenumeration.mk
CppunitTest_sc_indexenumeration_tableautoformatenumeration.mk
CppunitTest_sc_indexenumeration_tablechartsenumeration.mk
CppunitTest_sc_indexenumeration_tablecolumnsenumeration.mk
CppunitTest_sc_indexenumeration_tableconditionalentryenumeration.mk
CppunitTest_sc_indexenumeration_tablerowsenumeration.mk
CppunitTest_sc_indexenumeration_textfieldenumeration.mk
CppunitTest_sc_information_functions_test.mk
CppunitTest_sc_labelrangeobj.mk
CppunitTest_sc_labelrangesobj.mk
CppunitTest_sc_logical_functions_test.mk
CppunitTest_sc_macros_test.mk
CppunitTest_sc_mark_test.mk
CppunitTest_sc_mathematical_functions_test.mk
CppunitTest_sc_modelobj.mk
CppunitTest_sc_namedrangeobj.mk
CppunitTest_sc_namedrangesobj.mk
CppunitTest_sc_new_cond_format_api.mk
CppunitTest_sc_opencl_test.mk
CppunitTest_sc_outlineobj.mk
CppunitTest_sc_parallelism.mk
CppunitTest_sc_pdf_export.mk
CppunitTest_sc_perfobj.mk
CppunitTest_sc_pivottable_filters_test.mk
CppunitTest_sc_range_test.mk
CppunitTest_sc_rangelst_test.mk
CppunitTest_sc_recentfunctionsobj.mk
CppunitTest_sc_recordchanges.mk
CppunitTest_sc_scenariosobj.mk
CppunitTest_sc_screenshots.mk
CppunitTest_sc_shapeobj.mk
CppunitTest_sc_sheetlinkobj.mk
CppunitTest_sc_sheetlinksobj.mk
CppunitTest_sc_sortdescriptorbaseobj.mk
CppunitTest_sc_spreadsheet_functions_test.mk
CppunitTest_sc_spreadsheetsettings.mk
CppunitTest_sc_spreadsheetsettingsobj.mk
CppunitTest_sc_statistical_functions_test.mk
CppunitTest_sc_stylefamiliesobj.mk
CppunitTest_sc_stylefamilyobj.mk
CppunitTest_sc_subsequent_export_test.mk
CppunitTest_sc_subsequent_filters_test.mk
CppunitTest_sc_subtotaldescriptorbase.mk
CppunitTest_sc_subtotalfieldobj.mk
CppunitTest_sc_tablecolumnobj.mk
CppunitTest_sc_tablecolumnsobj.mk
CppunitTest_sc_tableconditionalentryobj.mk
CppunitTest_sc_tableconditionalformat.mk
CppunitTest_sc_tablerowobj.mk
CppunitTest_sc_tablerowsobj.mk
CppunitTest_sc_tablesheetobj.mk
CppunitTest_sc_tablesheetsobj.mk
CppunitTest_sc_tablevalidationobj.mk
CppunitTest_sc_tabviewobj.mk
CppunitTest_sc_text_functions_test.mk
CppunitTest_sc_tiledrendering.mk
CppunitTest_sc_ucalc.mk
CppunitTest_sc_uniquecellformatsenumeration.mk
CppunitTest_sc_uniquecellformatsobj.mk
CppunitTest_sc_viewpaneobj.mk
IwyuFilter_sc.yaml tdf#42949 Fix IWYU warnings in sc/inc 2019-07-09 09:20:34 +02:00
JunitTest_sc_complex.mk
JunitTest_sc_unoapi_1.mk
JunitTest_sc_unoapi_2.mk
JunitTest_sc_unoapi_3.mk
JunitTest_sc_unoapi_4.mk
JunitTest_sc_unoapi_6.mk
JunitTest_sc_unoapi_7.mk
Library_sc.mk
Library_scd.mk
Library_scfilt.mk
Library_scqahelper.mk
Library_scui.mk
Library_vbaobj.mk
Makefile
Module_sc.mk UI tests opening all dialogs in calc and see if it crashes 2019-07-03 07:08:05 +02:00
Package_opencl.mk
Package_res_xml.mk
PythonTest_sc_python.mk
README change Calc's shortcut for dumping cell properties to Ctrl+Shift+F6 2019-07-06 10:08:40 +02:00
TODO.performance
UIConfig_scalc.mk
UITest_autofilter.mk
UITest_calc_tests.mk
UITest_calc_tests2.mk
UITest_calc_tests3.mk
UITest_calc_tests4.mk
UITest_calc_tests6.mk
UITest_calc_tests7.mk
UITest_calc_tests8.mk
UITest_chart.mk
UITest_conditional_format.mk
UITest_dialogs.mk UI tests opening all dialogs in calc and see if it crashes 2019-07-03 07:08:05 +02:00
UITest_goalSeek.mk
UITest_hide_cols.mk
UITest_hideShowSheet.mk
UITest_inputLine.mk
UITest_key_f4.mk
UITest_options.mk
UITest_pageFormat.mk
UITest_protect.mk
UITest_range_name.mk
UITest_search_replace.mk
UITest_signatureLine.mk
UITest_solver.mk
UITest_sort.mk
UITest_statistics.mk
UITest_textCase.mk
UITest_validity.mk

Spreadsheet application code.

You can dump some information in a dbgutil build:

=== CTRL+SHIFT+F12 ===

Dumps the column width of the first 20 columns.

=== CTRL+SHIFT+F11 ===

Dumps the graphic objects and their position and size in pixel.

=== CTRL+SHIFT+F6 ===

Dumps the SfxItemSet representing the cell properties' of the
current selection as a xml file. The file will be named dump.xml

=== The Cache Format ===

ScDocument::StoreTabToCache allows storing the content (not the formatting)
of a table to a binary cache format.

The format is column orientated which allows quick serialization of the table.

Header:
    * Number of Columns: 64 bit unsigned integer

Column:
    * Column Index: 64 bit unsigned integer
    * Column Size: 64 bit unsigned integer
    * For each cell type block a new ColumnBlock

ColumnBlock:
    * Start Row: 64 bit unsigned integer
    * Block Size: 64 bit unsigned integer
    * Type: 8 bit unsigned integer
        - 0 : empty
        - 1 : numeric
            * for each cell: 64 bit IEEE 754 double precision value
        - 2 : string
            * for each cell: 32 bit signed string length followed by string length bytes of the string (UTF-8)
        - 3 : formula
            * for each cell: 32 bit signed string length followed by the formula in R1C1 notation as a string


=== Functions supporting Wildcards or Regular Expressions ===

As this comes up every now and then, and rather should be documented in an
extra list of the Help system, functions that support Wildcards or Regular
Expressions *and* depend on the setting under
Tools -> Options -> Calc -> Calculate are those that in ODF OpenFormula (ODFF)
are defined to depend on the HOST-USE-REGULAR-EXPRESSIONS or HOST-USE-WILDCARDS
properties, see
https://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part2.html

* Database Functions
  * DAVERAGE
  * DCOUNT
  * DCOUNTA
  * DGET
  * DMAX
  * DMIN
  * DPRODUCT
  * DSTDEV
  * DSTDEVP
  * DSUM
  * DVAR
  * DVARP
* Information Functions
  * COUNTIF
  * COUNTIFS
* Lookup Functions
  * HLOOKUP
  * LOOKUP
  * MATCH
  * VLOOKUP
* Mathematical Functions
  * SUMIF
  * SUMIFS
* Statistical Functions
  * AVERAGEIF
  * AVERAGEIFS
* Text Functions
  * SEARCH