summaryrefslogtreecommitdiffstats
path: root/sc/inc/table.hxx
Commit message (Collapse)AuthorAgeFilesLines
* coverity#1266519 Use after freeCaolán McNamara2015-01-261-1/+1
| | | | Change-Id: Ib6b3b33f4b45e3bb0ff35d9e82db46bf59c60916
* fdo#88398: Handle group listeners correctly when splitting formula group.Kohei Yoshida2015-01-151-0/+3
| | | | | | | It's basically the same thing we do in ScDocument::DeleteArea(), implemented in ScDocument::SetValue() and SetString(). Change-Id: Ifcae31aaef0e00ed8659aa5e2b9b8e206dc1a099
* Implement getDocumentSize(). Cell data only for now.Kohei Yoshida2015-01-141-0/+1
| | | | Change-Id: I31e14f12aaee2d98103d1594ba5b511ebf91e333
* introduce BroadcastBroadcasters() to speedup BroadcastCells()Eike Rathke2014-12-091-0/+8
| | | | | | | | Iterating over a range and attempting to get a broadcaster for each cell position is a performance bottle neck. Take advantage of the column's existing maBroadcasters structure instead. Change-Id: I5467a64ee3c0b5f430be1f0c4b940d3f71874827
* introduce ScColumn::BroadcastMode instead of bBroadcast, bIncludeEmptyCellsEike Rathke2014-12-091-1/+1
| | | | | | | Not only are multiple boolean parameters ugly, but prepare also for the new broadcasters-only mode yet to be implemented. Change-Id: Ie6383826e76a771b88e7b4b29e5de9a58c598ad5
* Revert "coverity#1242942 Use of untrusted scalar value"Caolán McNamara2014-12-071-9/+0
| | | | | | | | This reverts commit 093b3d30f257a01122042eb4d116ee54fbdb7033. it didn't help one bit to get coverity to see the bounds check Change-Id: Ibf01c7dea2b220290511871c2a650051295d389d
* Ctrl+A and Data Sort took ages to broadcast ALL cellsEike Rathke2014-12-051-1/+5
| | | | | | | | | | | | | | ... now that also empty cells are to be broadcasted. Set dirty and broadcast only the effective data range as determined by Sort. This is more a workaround, a cleaner solution would be to refactor the SetDirty() algorithm to iterate only through broadcasters and use AreaBroadcast() to notify area listeners. However, this can also be easily backported to 4-3. Change-Id: I6d68ca0088cec6a8328a3e93364ac928ef69babe
* Create 2 variants of SortReorderByRow.Kohei Yoshida2014-12-051-0/+2
| | | | | | One for IsUpdateRefs() true, the other for IsUpdateRefs() false. Change-Id: I2b18e2b8a9770fd9499dd9fc0d26397e67c1e8ae
* Revert "introduce bool bBroadcast parameter for ScTable::SetDirty()"Eike Rathke2014-12-041-1/+1
| | | | | | This reverts commit b8a7c39cf26f6d417efc34acdf6f4c2a6762052d. Bah, this was a leftover of an idea I didn't follow..
* introduce bool bBroadcast parameter for ScTable::SetDirty()Eike Rathke2014-12-031-1/+1
| | | | Change-Id: I62c3714c8036fe8d4b70ee188546c7d69ece1ea5
* coverity#1242942 Use of untrusted scalar valueCaolán McNamara2014-12-031-0/+9
| | | | | | see can we make this somewhat more obvious to coverity Change-Id: I2a3d9259f36c45b74391ecb5d96bf168959eb268
* remove boolean parameter default from ScTable::SetDirty()Eike Rathke2014-12-031-1/+1
| | | | Change-Id: I37761c07dd72bfa25cc499c8ed41241f1ba56469
* fdo#86762 broadcast also empty cells after sortEike Rathke2014-12-021-1/+1
| | | | Change-Id: Ie275a754c530d6039ed14304900dd71416f36e46
* Adjust ref undo to ensure group area listeners are used.Kohei Yoshida2014-11-251-1/+4
| | | | | | | When undoing row deletion (and possibly other similar undo's). And write test for it. Change-Id: I04b4fd9932f4236f124dcd25967355c6055dec33
* Use group area listeners when deleting rows.Kohei Yoshida2014-11-211-1/+3
| | | | Change-Id: I9ceb1cabf448349e087e4d5c4c2b1a75af91dd75
* Adjust InsertRow() for group area listeners.Kohei Yoshida2014-11-201-0/+6
| | | | Change-Id: I813b45d015eb1ae8dc7bd1242152ef734b5fe08c
* No need to start listening in CalcAfterLoad for xls import.Kohei Yoshida2014-11-201-1/+1
| | | | | | | | We do that prior to it, and in fact, doing it here would unregister all group area listeners and re-register non-group ones, which is massively slower with huge documents. Change-Id: I693f681df05f036eb1aa53554e601066c469f49a
* Combine StartAllListeners() and StartNeededListeners()...Kohei Yoshida2014-11-181-4/+7
| | | | | | | And call the new method StartListeners(). This also adjusts what was previously StartAllListener() to be group-listener aware. Change-Id: I74de45c00f5b8ef232eea9fe3b93aa44d1d8855b
* Register group area listeners as needed when inserting/deleting cells.Kohei Yoshida2014-11-181-1/+1
| | | | Change-Id: I583ace5d134d526d660d4ff0bbf4a16aa10cbe5a
* Rename these to make it clear that they are only to be called from ...Kohei Yoshida2014-11-181-1/+1
| | | | | | ScDocument::CopyFromClip. Change-Id: Ia95b65ca7982735b9c217a7b60d194117d64e774
* Use group-area listeners during copy & paste if we can.Kohei Yoshida2014-11-181-1/+2
| | | | | | | This should reduce the number of area listeners generated esp. when replicating tons of formula cells down the column. Change-Id: I1ea8f51f667e6b0e1a646f84d79f5e8430b478d5
* Avoid unnecessary broadcasting when deleting cells prior to pasting.Kohei Yoshida2014-11-181-1/+2
| | | | Change-Id: Id224fd6fdb804350e7e00634db802e80090ae6d7
* Rename methods whose name no longer represent what they do.Kohei Yoshida2014-11-181-1/+1
| | | | | | | We now do all broadcasting at the end of CopyFromClip, and nowhere else during pasting from clip. Change-Id: I1cb2c529f127d6e4080e49e4827f048ce5a19f95
* Reduce duplicate broadcasting done when pasting a range of cells from clip.Kohei Yoshida2014-11-181-3/+6
| | | | | | | | | | We do pasting from clip in 2 steps: 1) delete the destination range, then 2) paste the content onto the destination range. The old code would broadcast both during 1) and 2). This change consolidates them and do broadcasting only once at the end, and also avoids broadcasting the same cell twice, which the old code sometimes did. Change-Id: Ic524c2b70888ce158619d99cbfb55dea85870497
* calc ScTable::SearchAll : avoid calling GetLastDataPos uselesslyLaurent Godard2014-11-041-0/+3
| | | | | | | | | | | | | | in the loop we are in the same table refactor ScTable::Search too perfchek result for testSheetFindAll-Search value before : 804252982 after : 229861999 Change-Id: I907f1260472bcc5d93b2c6425c342187a5f4c787 Reviewed-on: https://gerrit.libreoffice.org/12225 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
* remove some unused code in scNoel Grandin2014-11-041-2/+0
| | | | Change-Id: I6cd2acaf361ae1947787b5aacc86b75a6e21c379
* Fraction: Revert "fdo#81356: convert Fraction to boost::rational<long> - wip"Jan Holesovsky2014-10-231-3/+3
| | | | | | | | | | | | | | This reverts commit 47a2d7642d249d70b5da0c330a73f3a0032e4bba. Conflicts: cui/source/tabpages/transfrm.cxx svx/source/svdraw/svdedtv1.cxx svx/source/svdraw/svdibrow.cxx sw/source/filter/ww1/w1filter.cxx tools/source/generic/rational.cxx Change-Id: I4849916f5f277a4afef0e279b0135c76b36b9d15
* Fraction: Revert "fdo#84854 it seems long is not enough on 32 bit"Jan Holesovsky2014-10-231-3/+3
| | | | | | | | | | | | This reverts commit 582ef22d3e8e30ffd58f092d37ffda30bd07bd9e. Conflicts: svx/source/svdraw/svdedtv1.cxx svx/source/svdraw/svdibrow.cxx sw/source/filter/ww1/w1filter.cxx Change-Id: I80abc7abdeddc267eaabc9f8ab49611bb3f8ae83
* Move SetAttrEntries from ScDocument to ScDocumentImport.Kohei Yoshida2014-10-221-1/+3
| | | | | | Since that method was really an optimization for xls(x) import code. Change-Id: Ie2530f5dc27411bd45d72440681689c6c7a8b10a
* fdo#84854 it seems long is not enough on 32 bitDavid Tardon2014-10-161-3/+3
| | | | | | | Fraction used BigInt internally for computations, rational does nothing like that. Change-Id: I3e9b25074f979bc291208f7c6362c3c40eb77ff5
* fdo#81356: convert Fraction to boost::rational<long> - wipJuan Picca2014-10-091-3/+3
| | | | | | | | | | | | | | | | | | | | | * Added rational util functions used by Fraction class not available in the boost::rational class. * Replaced usage of Fraction by boost::rational<long> * Removed code that relies on: 1. fraction.IsValid() -- rational only allow valid values, ie denominator() != 0 2. rational.denominator() == 0 -- always false 3. rational.denominator() < 0 -- always false but implementation detail: http://www.boost.org/doc/libs/release/libs/rational/rational.html#Internal%20representation * Simplified code that relies on: 1. rational.denominator() != 0 -- always true * BUGS EXIST because Fraction allows the creation of invalid values but boost::rational throws the exception boost::bad_rational Change-Id: I84970a4956afb3f91ac0c8f726547466319420f9 Reviewed-on: https://gerrit.libreoffice.org/11551 Reviewed-by: David Tardon <dtardon@redhat.com> Tested-by: David Tardon <dtardon@redhat.com>
* Add menu entry for the "formula to value" feature.Kohei Yoshida2014-10-041-0/+2
| | | | | | | Not sure 100% if that's the best place for this. Feel free to move it to a better place. Change-Id: Id66a92e1184e988bd71f7d845ea370b021c02c21
* New feature to allow converting formula cells to static values.Kohei Yoshida2014-10-021-0/+8
| | | | | | | | You used to have to convert formula cells to static values by copying them and pasting them as values onto the original place. Why not just allow converting them in place? This is something I've always wanted to implement.
* create type-safe bitfield for sc insert/delete flagsNoel Grandin2014-09-041-5/+5
| | | | | | | | | | | | | | The most important part of the change is in sc/inc/global.hxx It creates a type-safe struct that prevents the accidental interaction between regular integer types and the flags struct. It also provides utility methods that make combining and testing the flags type-safe. Change-Id: Ibc5b20058b1655df913490682b679afd1297b36d Reviewed-on: https://gerrit.libreoffice.org/11071 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
* fdo#81633: Add a new configuration option to toggle ref update on sort.Kohei Yoshida2014-09-031-2/+6
| | | | | | | | The new option is in Calc -> General and is labeled "Update references when sorting range of cells" Change-Id: I5ac686e96742df40f7d8ba5ffec23806db2988a6
* fdo#80501: Ensure that we notify each listener only once.Kohei Yoshida2014-07-301-4/+1
| | | | Change-Id: If2ce4643ff58c7c2ba326d749698dd5196a108dc
* fdo#79578: Properly update formulas upon change in db collection.Kohei Yoshida2014-07-281-2/+4
| | | | | | Update it to handle formula groups correctly. Change-Id: I009a7fcf3d3fb17ef6951c50534ca6bc1fffc259
* fdo#81617: Split formula groups at sort range boundaries.Kohei Yoshida2014-07-271-0/+1
| | | | | | | Otherwise, partially sorting a range may crash, or at best incorrectly update formula references. Change-Id: Iefcb86d205d83ccc5b684048bfd9aadabf6e13eb
* fdo#81309: Adjust references during sort.Kohei Yoshida2014-07-131-4/+12
| | | | Change-Id: I2b98610f6b774400ecfaffe2905201c27fcab33f
* remove whitespaceMarkus Mohrhard2014-06-251-2/+0
| | | | Change-Id: Ib15413e73409cc33de01fa92a47b9d1237cfc4b2
* fdo#71076, fdo#71767: Preserve number formats when charts are copied.Kohei Yoshida2014-06-191-1/+5
| | | | Change-Id: If5ae8852152012483237e7602e56a0c46ea8748a
* improve the inlinesimplememberfunctions clang pluginNoel Grandin2014-06-171-13/+13
| | | | Change-Id: I6d5a952901648e01904ef5c37f953c517304d31e
* loplugin: inlinesimplememberfunctionsNoel Grandin2014-06-091-2/+2
| | | | Change-Id: I42119f656ca528286fb25d2d36c0af54b7d04a6b
* remove dead codeNoel Grandin2014-05-131-3/+0
| | | | Change-Id: Ic4fb478921714429af138ca212bd7f67f408d434
* fix-includes.pl: scThomas Arnhold2014-05-111-1/+1
| | | | Change-Id: Iade3fedac5d2f8e978b7dd9c30f001d7d1564946
* fdo#78079: Re-work sort by column to get it to do the right thing.Kohei Yoshida2014-05-011-1/+0
| | | | | | Also fixed reference update problem. Change-Id: I06e6115ef969a011fdd5c92d5eb1927fb7ae789b
* fdo#77728: Don't forget to start listening after the named range update.Kohei Yoshida2014-04-251-1/+2
| | | | Change-Id: I7a4160db0dd2b9ac2c98402bb6110c548e879b3d
* SwapRow() is no more!Kohei Yoshida2014-04-231-1/+0
| | | | | | Good riddance. It was optimized for the old cell storage. Change-Id: I374194fe211d5b13dd60dbb68b9511a366fb32bd
* New method SortReorderByRow() for the new row-based reordering.Kohei Yoshida2014-04-231-1/+2
| | | | | | Easier to follow this way. Change-Id: Idf7e93106f1e1927967f4917062ee619ed71d694
* Skip adjustment of row height when all rows have the same height.Kohei Yoshida2014-04-231-0/+2
| | | | Change-Id: I490ecade6b909bcf36b848c05e198d58adc90e0a