[Libreoffice-commits] core.git: 2 commits - formula/source include/formula sc/inc
Eike Rathke
erack at redhat.com
Wed Mar 11 13:10:34 PDT 2015
formula/source/core/resource/core_resource.src | 31 +++++++++++++++++++++++++
include/formula/compiler.hrc | 9 +++++--
include/formula/opcode.hxx | 5 ++++
sc/inc/token.hxx | 16 ++++++++----
4 files changed, 53 insertions(+), 8 deletions(-)
New commits:
commit 7867b976e8cb68a30df3cc825ccaa021269e219a
Author: Eike Rathke <erack at redhat.com>
Date: Wed Mar 11 21:01:54 2015 +0100
TableRef: add item specifiers and opcodes
Change-Id: I043db29e3e1023566682b1df63a1d663dd432fee
diff --git a/formula/source/core/resource/core_resource.src b/formula/source/core/resource/core_resource.src
index 0fd104f..b6e6f7e 100644
--- a/formula/source/core/resource/core_resource.src
+++ b/formula/source/core/resource/core_resource.src
@@ -30,6 +30,7 @@ Resource RID_STRLIST_FUNCTION_NAMES_ENGLISH_ODFF
String SC_OPCODE_CHOOSE { Text = "CHOOSE" ; };
String SC_OPCODE_OPEN { Text = "(" ; };
String SC_OPCODE_CLOSE { Text = ")" ; };
+ // SC_OPCODE_TABLE_REF_... not supported in ODFF
String SC_OPCODE_ARRAY_OPEN { Text = "{" ; };
String SC_OPCODE_ARRAY_CLOSE { Text = "}" ; };
String SC_OPCODE_ARRAY_ROW_SEP { Text = "|" ; };
@@ -441,6 +442,11 @@ Resource RID_STRLIST_FUNCTION_NAMES_ENGLISH_OOXML
String SC_OPCODE_CLOSE { Text = ")" ; };
String SC_OPCODE_TABLE_REF_OPEN { Text = "[" ; };
String SC_OPCODE_TABLE_REF_CLOSE { Text = "]" ; };
+ String SC_OPCODE_TABLE_REF_ITEM_ALL { Text = "#All" ; };
+ String SC_OPCODE_TABLE_REF_ITEM_HEADERS { Text = "#Headers" ; };
+ String SC_OPCODE_TABLE_REF_ITEM_DATA { Text = "#Data" ; };
+ String SC_OPCODE_TABLE_REF_ITEM_TOTALS { Text = "#Totals" ; };
+ String SC_OPCODE_TABLE_REF_ITEM_THIS_ROW { Text = "#This Row" ; };
String SC_OPCODE_ARRAY_OPEN { Text = "{" ; };
String SC_OPCODE_ARRAY_CLOSE { Text = "}" ; };
String SC_OPCODE_ARRAY_ROW_SEP { Text = ";" ; };
@@ -854,6 +860,11 @@ Resource RID_STRLIST_FUNCTION_NAMES_ENGLISH
String SC_OPCODE_CLOSE { Text = ")" ; };
String SC_OPCODE_TABLE_REF_OPEN { Text = "[" ; };
String SC_OPCODE_TABLE_REF_CLOSE { Text = "]" ; };
+ String SC_OPCODE_TABLE_REF_ITEM_ALL { Text = "#All" ; };
+ String SC_OPCODE_TABLE_REF_ITEM_HEADERS { Text = "#Headers" ; };
+ String SC_OPCODE_TABLE_REF_ITEM_DATA { Text = "#Data" ; };
+ String SC_OPCODE_TABLE_REF_ITEM_TOTALS { Text = "#Totals" ; };
+ String SC_OPCODE_TABLE_REF_ITEM_THIS_ROW { Text = "#This Row" ; };
String SC_OPCODE_ARRAY_OPEN { Text = "{" ; };
String SC_OPCODE_ARRAY_CLOSE { Text = "}" ; };
String SC_OPCODE_ARRAY_ROW_SEP { Text = "|" ; };
@@ -1276,6 +1287,26 @@ Resource RID_STRLIST_FUNCTION_NAMES
String SC_OPCODE_CLOSE { Text = ")" ; };
String SC_OPCODE_TABLE_REF_OPEN { Text = "[" ; };
String SC_OPCODE_TABLE_REF_CLOSE { Text = "]" ; };
+ String SC_OPCODE_TABLE_REF_ITEM_ALL
+ {
+ Text [ en-US ] = "#All" ;
+ };
+ String SC_OPCODE_TABLE_REF_ITEM_HEADERS
+ {
+ Text [ en-US ] = "#Headers" ;
+ };
+ String SC_OPCODE_TABLE_REF_ITEM_DATA
+ {
+ Text [ en-US ] = "#Data" ;
+ };
+ String SC_OPCODE_TABLE_REF_ITEM_TOTALS
+ {
+ Text [ en-US ] = "#Totals" ;
+ };
+ String SC_OPCODE_TABLE_REF_ITEM_THIS_ROW
+ {
+ Text [ en-US ] = "#This Row" ;
+ };
String SC_OPCODE_ARRAY_OPEN { Text = "{" ; };
String SC_OPCODE_ARRAY_CLOSE { Text = "}" ; };
String SC_OPCODE_ARRAY_ROW_SEP { Text = "|" ; };
diff --git a/include/formula/compiler.hrc b/include/formula/compiler.hrc
index 9131ce0..1fd4a58 100644
--- a/include/formula/compiler.hrc
+++ b/include/formula/compiler.hrc
@@ -53,8 +53,13 @@
#define SC_OPCODE_ARRAY_COL_SEP 27 /* some convs use sep != col_sep */
#define SC_OPCODE_TABLE_REF_OPEN 28
#define SC_OPCODE_TABLE_REF_CLOSE 29
-#define SC_OPCODE_STOP_DIV 30
-#define SC_OPCODE_SKIP 31 /* used to skip raw tokens during string compilation */
+#define SC_OPCODE_TABLE_REF_ITEM_ALL 30
+#define SC_OPCODE_TABLE_REF_ITEM_HEADERS 31
+#define SC_OPCODE_TABLE_REF_ITEM_DATA 32
+#define SC_OPCODE_TABLE_REF_ITEM_TOTALS 33
+#define SC_OPCODE_TABLE_REF_ITEM_THIS_ROW 34
+#define SC_OPCODE_STOP_DIV 35
+#define SC_OPCODE_SKIP 36 /* used to skip raw tokens during string compilation */
/*** error constants #... ***/
#define SC_OPCODE_START_ERRORS 40
diff --git a/include/formula/opcode.hxx b/include/formula/opcode.hxx
index c093ab5..fa4c1bf 100644
--- a/include/formula/opcode.hxx
+++ b/include/formula/opcode.hxx
@@ -53,6 +53,11 @@ enum OpCode : sal_uInt16
ocStringXML = SC_OPCODE_STRINGXML,
ocSpaces = SC_OPCODE_SPACES,
ocMatRef = SC_OPCODE_MAT_REF,
+ ocTableRefItemAll = SC_OPCODE_TABLE_REF_ITEM_ALL,
+ ocTableRefItemHeaders = SC_OPCODE_TABLE_REF_ITEM_HEADERS,
+ ocTableRefItemData = SC_OPCODE_TABLE_REF_ITEM_DATA,
+ ocTableRefItemTotals = SC_OPCODE_TABLE_REF_ITEM_TOTALS,
+ ocTableRefItemThisRow = SC_OPCODE_TABLE_REF_ITEM_THIS_ROW,
ocSkip = SC_OPCODE_SKIP,
// Access commands
ocDBArea = SC_OPCODE_DB_AREA,
commit 53488caa1ea0c67c8da2bc8f887cf9c8acfbd9cf
Author: Eike Rathke <erack at redhat.com>
Date: Wed Mar 11 19:19:18 2015 +0100
TableRef: possible item combinations
Change-Id: Id02fb58bbb9419d7c70d8265cb990ffc8ebc68ec
diff --git a/sc/inc/token.hxx b/sc/inc/token.hxx
index 0d1aca1..662c17c 100644
--- a/sc/inc/token.hxx
+++ b/sc/inc/token.hxx
@@ -215,12 +215,16 @@ public:
enum Item
{
- TABLE = 0,
- ALL = 1,
- HEADERS = 2,
- DATA = 4,
- TOTALS = 8,
- THIS_ROW = 16
+ TABLE = 0,
+ ALL = 1,
+ HEADERS = 2,
+ DATA = 4,
+ TOTALS = 8,
+ THIS_ROW = 16,
+ HEADERS_DATA = HEADERS | DATA,
+ DATA_TOTALS = DATA | TOTALS,
+ HEADERS_DATA_TOTALS = HEADERS | DATA | TOTALS,
+ ALL_COLUMN = HEADERS_DATA_TOTALS | 32 // semantically the same, but just a [#All] item
};
ScTableRefToken( sal_uInt16 nIndex, Item eItem );
More information about the Libreoffice-commits
mailing list