Detect arguments larger than 64 chars passed by value.
Change-Id: I9b0ea9ccb99d115984a26eab67c9cf6afd5f6cae
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
...mostly done with a rewriting Clang plugin, with just some manual tweaking
necessary to fix poor macro usage.
Change-Id: Ie656f9d653fc716f72ac175925272696d509038f
Instead, insert the formula cells in the group first, then only try to join
the top and bottom cells afterward. Otherwise the grouping would get messed
up and a problem would ensue.
Change-Id: I4fdd5326c029032a636d8225b5fb16cbde427c7d
It's safe this way in case we are transferring them within the same
column. Any empty broadcasters are checked and purged at the end.
Change-Id: Ib2d46e616cde4923720ad21cb101d3a97dc8c5d9
Also with this commit, the signature of SvtListener::Notify() changes,
by dropping the first argument which nobody uses. This change was necessary
in order to call it directly without needing to pass any broadcaster instance.
Change-Id: I6a1e97f0fb1e070d1d8f7db614690b04c9e8024e
Speeds up sorting large ranges containing formula groups by a
computational order or two: can sort 1 million rows of =A1 in sub 10s
Change-Id: I729c801e68154986956b1726e1c35ef973cc4248
This will allow formula cells to restore deleted references when they get
recalculated. With this change, SetDirty() that previosly took no argument
has been renamed to SetAllFormulasDirty(), and it now takes one argument that
stores context information.
Change-Id: If0de5dc1737a2722b6d61a87644b10a4f921edc5
The new policy is to always inherit number format of a formula cell
from its reference unless the cell already has an explicit number format
set.
Also to avoid recalculating formula cells on load just because they have
the 'General' number format. This leads to excessive re-calculation of
formula cells upon load even when the cells already have results cached.
Change-Id: I28128d3fef296e09e62bea72e8aab75de9876239
It was just not working at all due to multiple reasons. The
reference update needed to be reworked for formula groups such that
the token array is adjusted only for the top cell but all formula cells
still needed to be processed afterwards. The bound check also needed
to be done against the old range prior to the move, not the new range
after the move.
During undo, the paint had to be deferred until after the two calls to
DoUndo() else the formula cells would get re-calculated before the
values were placed back to their old positions, causing them to mis-
calculate wrong values.
Change-Id: Iba66f80a413e0539cac5ab619226cd6f7a04f317
When the search range was i.e. 1-3, and the match was found at 5, the old
code would return 5 when in fact it should have failed. This change would
honor the end position and limit the search within specified search range.
Change-Id: If12a92fd3930ad128a5b0699a1addd96fb3a8eba
When copying notes to clipboard, we don't clone captions but leave them
pointing to the original captions objects. Also, during undo and redo,
we need to clear all caption pointers to prevent them from being deleted
when the ScPostIt objects get deleted. The undo and redo of caption objects
are handled in the drawing layer afterwards.
Change-Id: I2b9cf0858dba5b3cac26db3ef501ea09779a795a
Marking the cell dirty alone appears to be sufficient to trigger resetting
of number format. SetDirty() would mark it dirty *and* put the cell into
formula tree, which would prevent proper value propagation as seen in the
bug report.
Change-Id: Ie68f996112938fe286a9bd50c38404f9df6f4ca1
Grouped formulas need to be split at both edges of the deleted area,
regroup _after_ rows have been deleted.
Change-Id: I840806f30cef592e17b4cd3a33c81fd2a8309055
Else the pointer type would get demoted to a boolean type which would cause
the boolean version of overloaded function to get picked.
Change-Id: Ided7e8c67ef84b4323c8ad1123e0a2c30ce37e01
Instead of a pointer to ScTokenArray, and then clone its instance. If
the token array gets cloned in ctor, take a const reference.
Change-Id: I280fd7eb9eaea9905dbf954a1ace904ab0814dfe