summaryrefslogtreecommitdiff
path: root/include/formula
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2016-10-17 23:19:23 -0400
committerKohei Yoshida <kohei.yoshida@collabora.com>2016-10-18 20:27:16 -0400
commite944d9510404d8c67b3867d7cd9f313fd5091004 (patch)
treeb79a7f8aed4f33b11f226867c836f05a585907f5 /include/formula
parentbaeb3b43fb67192e8e8639e2d5dd21ccbf5178a4 (diff)
tdf#93894: Prohibit grouping when certain token types are present.
For instance, column / row label tokens don't work correctly in grouped cells with the current implementation. Change-Id: Idf86312ef15fbfd4382aa90ee6d131c671a80683
Diffstat (limited to 'include/formula')
-rw-r--r--include/formula/tokenarray.hxx11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/formula/tokenarray.hxx b/include/formula/tokenarray.hxx
index 1c6ed2256f79..cdb4e34e58c1 100644
--- a/include/formula/tokenarray.hxx
+++ b/include/formula/tokenarray.hxx
@@ -127,6 +127,7 @@ protected:
ScRecalcMode nMode; // Flags to indicate when to recalc this code
bool bHyperLink; // If HYPERLINK() occurs in the formula.
bool mbFromRangeName; // If this array originates from a named expression
+ bool mbShareable; // Whether or not it can be shared with adjacent cells.
protected:
void Assign( const FormulaTokenArray& );
@@ -190,6 +191,16 @@ public:
void SetFromRangeName( bool b ) { mbFromRangeName = b; }
bool IsFromRangeName() const { return mbFromRangeName; }
+ void SetShareable( bool b ) { mbShareable = b; }
+
+ /**
+ * Check if this token array is shareable between multiple adjacent
+ * formula cells. Certain tokens may not function correctly when shared.
+ *
+ * @return true if the token array is shareable, false otherwise.
+ */
+ bool IsShareable() const { return mbShareable; }
+
void Clear();
void DelRPN();
FormulaToken* First() { nIndex = 0; return Next(); }