summaryrefslogtreecommitdiff
path: root/jfreereport
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2009-01-08 10:47:13 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2009-01-08 10:47:13 +0000
commitd73fce0fc9f128340d1b05d595b3ea7e831c3401 (patch)
treef95be71b8be082102034cfbf709f72746ca524c6 /jfreereport
parentc8d4d59ee936aa0d1dd34262846788b52b4f1973 (diff)
CWS-TOOLING: integrate CWS frmdlg
2008-12-18 09:13:09 +0100 oj r265667 : merge from odff05 2008-12-18 07:58:16 +0100 oj r265658 : #i94555# patch from <regina>, ODFF: Add GAMMA, CHISQDIST, CHISQINV. Make the 'cumulative' parameter of GAMMADIST optional. Adapt the domain of CHIDIST to allow negative x. Remove the constraint "degrees of freedom < 1.0E5" from CHIDIST and CHIINV. Plus a mechanism to write the now optional parameter of GAMMADIST to PODF and ODFF if omitted, for backwards compatibility. 2008-12-15 14:06:11 +0100 oj r265490 : CWS-TOOLING: rebase CWS frmdlg to trunk@264807 (milestone: DEV300:m37) 2008-12-15 13:55:28 +0100 oj r265488 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 13:55:07 +0100 oj r265487 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 13:54:48 +0100 oj r265486 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 13:54:36 +0100 oj r265485 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 13:54:24 +0100 oj r265484 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 13:48:11 +0100 oj r265483 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 13:31:12 +0100 oj r265479 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 13:13:58 +0100 oj r265477 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 13:10:09 +0100 oj r265476 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 13:05:11 +0100 oj r265475 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 10:47:17 +0100 oj r265467 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 10:46:19 +0100 oj r265466 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 10:45:47 +0100 oj r265465 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C' CWS: frmdlg New MWS: DEV300 New milestone: m37 2008-12-15 07:35:07 +0100 oj r265458 : add dependency to formula 2008-12-15 07:34:24 +0100 oj r265457 : add dependency to formula 2008-12-12 13:22:00 +0100 msc r265413 : #i97089# 2008-12-12 13:20:25 +0100 msc r265412 : #i97089# 2008-12-12 12:35:12 +0100 msc r265406 : #i97089# 2008-12-12 12:34:16 +0100 msc r265405 : #i97089# 2008-12-12 12:33:05 +0100 msc r265404 : #i97089# 2008-12-12 12:31:11 +0100 msc r265403 : #i97089# 2008-12-08 11:59:10 +0100 oj r264981 : insert RTL_LOG 2008-12-08 11:50:17 +0100 oj r264980 : some small changes 2008-12-05 12:57:57 +0100 oj r264902 : eof changed 2008-12-05 12:56:46 +0100 oj r264901 : eof changed 2008-12-05 12:28:47 +0100 oj r264899 : wrong var used 2008-12-05 10:08:57 +0100 oj r264890 : token order reversed 2008-12-04 13:49:22 +0100 oc r264843 : #i96688: Adapt autotests because of outsourced functionwizard 2008-12-04 13:45:27 +0100 oc r264842 : #i96688: Adapt autotests because of outsourced functionwizard 2008-12-04 13:42:54 +0100 oc r264841 : #i96688: Adapt autotests because of outsourced functionwizard 2008-12-04 13:37:41 +0100 oc r264840 : #i96688: Adapt autotests because of outsourced functionwizard 2008-12-04 13:34:11 +0100 oc r264839 : #i96688: Adapt autotests because of outsourced functionwizard 2008-12-04 12:35:31 +0100 oj r264835 : new help ids for struct and function tabpage 2008-12-04 12:00:35 +0100 oj r264828 : set explicit help id 2008-12-03 14:53:27 +0100 oj r264786 : #i96845# change ref button 2008-12-03 14:51:49 +0100 oj r264785 : #i96845# change ref button 2008-12-03 08:51:57 +0100 oj r264746 : convert dos to unix lineends 2008-12-03 08:50:45 +0100 oj r264745 : convert dos to unix lineends 2008-12-03 08:50:05 +0100 oj r264744 : convert dos to unix lineends 2008-12-02 12:28:33 +0100 oj r264686 : clear help text when new helpid is set 2008-12-02 12:28:02 +0100 oj r264685 : set help id for listbox category 2008-12-02 07:15:56 +0100 oj r264655 : remove define to auto generate help ids 2008-12-01 14:36:43 +0100 oj r264604 : use temp var 2008-12-01 14:18:31 +0100 oj r264601 : moved ScJumpToken to formula 2008-12-01 14:18:11 +0100 oj r264600 : moved ScJumpToken to formula 2008-12-01 14:14:35 +0100 oj r264599 : moved ScJumpToken from sc 2008-12-01 10:48:51 +0100 oj r264589 : change quickhelptext from Shrink to Select 2008-12-01 10:28:41 +0100 oj r264588 : fix opcode data, has to be Any.Void 2008-11-28 11:16:48 +0100 oj r264532 : add help ids 2008-11-28 10:16:56 +0100 oj r264529 : set help id 2008-11-28 10:16:43 +0100 oj r264528 : set help id 2008-11-26 13:55:04 +0100 oj r264381 : #94535# use of optional instead of deleting a string myself and some small changes 2008-11-26 09:53:20 +0100 oj r264346 : compile error with debug/without debug 2008-11-25 07:41:28 +0100 oj r264271 : put static into the method which make use of them 2008-11-24 08:16:07 +0100 oj r264196 : removed not needed classes for op code 2008-11-24 08:13:44 +0100 oj r264195 : removed not needed classes for op code 2008-11-21 14:05:53 +0100 oj r264135 : make GetOpCode inline 2008-11-21 12:35:27 +0100 oj r264124 : hold symbols 2008-11-20 09:27:27 +0100 oj r264028 : merged code from DEV300_m35 which got lost 2008-11-19 20:42:12 +0100 oj r264022 : more changes for formula dialog remove 2008-11-19 20:37:41 +0100 oj r264021 : removed unused var 2008-11-19 20:35:35 +0100 oj r264020 : some more changes at token 2008-11-19 10:59:47 +0100 oj r263967 : deleted 2008-11-19 10:58:24 +0100 oj r263966 : add forui and for res files 2008-11-18 15:27:36 +0100 oj r263777 : unused para removed 2008-11-18 15:23:23 +0100 oj r263775 : add insert button to add field dlg 2008-11-18 13:39:53 +0100 oj r263764 : enable the formula dialog as well for conditional print as for conditional formatting 2008-11-18 12:03:25 +0100 oj r263760 : rename isRef in IsRef 2008-11-17 11:46:16 +0100 oj r263711 : patches for function handling 2008-11-17 11:36:22 +0100 oj r263710 : add new for forui and res file 2008-11-17 09:21:12 +0100 oj r263704 : patches for some resource for libformula 2008-11-15 12:45:30 +0100 oj r263701 : changes for formula editor extraction 2008-11-07 08:23:27 +0100 oj r263416 : merge from DEV300:m35 2008-11-07 08:22:35 +0100 oj r263415 : merge from DEV300:m35 2008-11-07 08:22:16 +0100 oj r263414 : merge from DEV300:m35 2008-11-07 08:21:41 +0100 oj r263413 : merge from DEV300:m35 2008-11-07 08:21:31 +0100 oj r263412 : merge from DEV300:m35 2008-11-07 08:20:38 +0100 oj r263411 : merge from DEV300:m35 2008-11-07 08:20:00 +0100 oj r263410 : merge from DEV300:m35 2008-11-07 08:18:50 +0100 oj r263409 : merge from DEV300:m35 2008-11-07 08:18:19 +0100 oj r263408 : merge from DEV300:m35 2008-11-07 08:10:27 +0100 oj r263407 : merge from DEV300:m35 2008-10-21 07:43:46 +0200 oj r262560 : some compile errors resolved 2008-10-17 16:40:01 +0200 oj r262291 : dep for 1st target 2008-10-07 10:08:39 +0200 oj r262077 : copy 2008-10-07 09:45:31 +0200 oj r262076 : #i94535# 2008-10-07 09:44:26 +0200 oj r262075 : #i94535# new base class 2008-10-07 09:43:21 +0200 oj r262074 : moved to formula 2008-10-07 09:41:51 +0200 oj r262073 : new images 2008-10-07 09:03:01 +0200 oj r262072 : new ids for formula 2008-10-02 08:46:27 +0200 oj r262024 : #i94535# move the formula compiler to formula 2008-10-02 08:08:54 +0200 oj r262023 : #i94535# 2008-10-02 08:06:28 +0200 oj r262022 : #i94535# 2008-10-02 08:05:52 +0200 oj r262021 : #i94535# 2008-10-01 17:15:29 +0200 oj r262014 : #i94535# 2008-10-01 17:12:40 +0200 oj r262013 : new module formula 2008-10-01 17:04:55 +0200 oj r262012 : #i94535# 2008-10-01 16:49:03 +0200 oj r262010 : #i94535# 2008-10-01 16:46:59 +0200 oj r262009 : #i94535#
Diffstat (limited to 'jfreereport')
-rw-r--r--jfreereport/java/jfreereport/makefile.mk4
-rw-r--r--jfreereport/java/libformula/makefile.mk30
-rw-r--r--jfreereport/patches/libformula.patch257
-rw-r--r--jfreereport/patches/pentaho-reporting-flow-engine.patch424
4 files changed, 599 insertions, 116 deletions
diff --git a/jfreereport/java/jfreereport/makefile.mk b/jfreereport/java/jfreereport/makefile.mk
index 67410c2fc805..689bf93b9859 100644
--- a/jfreereport/java/jfreereport/makefile.mk
+++ b/jfreereport/java/jfreereport/makefile.mk
@@ -54,7 +54,9 @@ TARFILE_ROOTDIR=core
PATCH_FILE_NAME=$(PRJ)$/patches$/$(TARGET).patch
CONVERTFILES=build.xml\
- build.properties
+ build.properties \
+ source/org/jfree/report/expressions/ReportFormulaContext.java
+
OUT2CLASS=$(TARGET)$(VERSION).jar
.IF "$(JAVACISGCJ)"=="yes"
diff --git a/jfreereport/java/libformula/makefile.mk b/jfreereport/java/libformula/makefile.mk
index 8418d468ddac..df654408bbab 100644
--- a/jfreereport/java/libformula/makefile.mk
+++ b/jfreereport/java/libformula/makefile.mk
@@ -54,9 +54,29 @@ TARFILE_ROOTDIR=$(TARGET)
PATCH_FILE_NAME=$(PRJ)$/patches$/$(TARGET).patch
CONVERTFILES=build.xml\
- build.properties \
- source/org/jfree/formula/function/text/MidFunctionDescription.java
-
+ build.properties \
+ source/org/jfree/formula/function/text/MidFunctionDescription.java
+ source/org/jfree/formula/function/AbstractFunctionDescription.java \
+ source/org/jfree/formula/function/datetime/Hour-Function.properties \
+ source/org/jfree/formula/function/information/IsBlank-Function.properties \
+ source/org/jfree/formula/function/information/IsErr-Function.properties \
+ source/org/jfree/formula/function/information/IsError-Function.properties \
+ source/org/jfree/formula/function/information/IsEven-Function.properties \
+ source/org/jfree/formula/function/information/IsLogical-Function.properties \
+ source/org/jfree/formula/function/information/IsNa-Function.properties \
+ source/org/jfree/formula/function/information/IsNonText-Function.properties \
+ source/org/jfree/formula/function/information/IsNumber-Function.properties \
+ source/org/jfree/formula/function/information/IsOdd-Function.properties \
+ source/org/jfree/formula/function/information/IsText-Function.properties \
+ source/org/jfree/formula/function/logical/If-Function.properties \
+ source/org/jfree/formula/function/logical/Not-Function.properties \
+ source/org/jfree/formula/function/logical/Or-Function.properties \
+ source/org/jfree/formula/function/math/Even-Function.properties \
+ source/org/jfree/formula/function/math/ModFunctionDescription.java \
+ source/org/jfree/formula/function/text/Trim-Function.properties \
+ source/org/jfree/formula/parser/FormulaParser.java
+
+ADDITIONAL_FILES=source/org/jfree/formula/function/information/IsRef-Function.properties
OUT2CLASS=$(TARGET)$(VERSION).jar
.IF "$(JAVACISGCJ)"=="yes"
@@ -67,6 +87,7 @@ BUILD_ACTION=$(ANT) -Dlibdir="../../../class" -Dbuild.label="build-$(RSCREVISION
BUILD_ACTION=$(ANT) -Dlibdir="../../../class" -Dbuild.label="build-$(RSCREVISION)" -f $(ANT_BUILDFILE) compile
.ENDIF
+
.ENDIF # $(SOLAR_JAVA)!= ""
# --- Targets ------------------------------------------------------
@@ -77,4 +98,7 @@ BUILD_ACTION=$(ANT) -Dlibdir="../../../class" -Dbuild.label="build-$(RSCREVISION
.IF "$(SOLAR_JAVA)" != ""
.INCLUDE : tg_ext.mk
.ENDIF
+# $(PACKAGE_DIR)$/$(TARFILE_ROOTDIR)$/source$/org$/jfree$/formula$/function$/information$/IsRef-Function.properties :
+# @@-$(MKDIRHIER) $(@:d)
+# $(MV) $(PACKAGE_DIR)$/$(TARFILE_ROOTDIR)$/source$/org$/jfree$/formula$/function$/information$/isRef-Function.properties $@
diff --git a/jfreereport/patches/libformula.patch b/jfreereport/patches/libformula.patch
index de65e324aeb2..af163d8380bc 100644
--- a/jfreereport/patches/libformula.patch
+++ b/jfreereport/patches/libformula.patch
@@ -30,3 +30,260 @@
{
return TextType.TYPE;
}
+
+--- misc/libformula/source/org/jfree/formula/function/AbstractFunctionDescription.java 2007-10-18 08:21:39.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/AbstractFunctionDescription.java 2008-09-04 08:17:14.114375000 +0200
+@@ -31,6 +31,7 @@
+ package org.jfree.formula.function;
+
+ import java.util.Locale;
++import java.util.MissingResourceException;
+ import java.util.ResourceBundle;
+
+ /**
+@@ -72,7 +73,15 @@
+
+ protected ResourceBundle getBundle(final Locale locale)
+ {
+- return ResourceBundle.getBundle(bundleName, locale);
++ try
++ {
++ return ResourceBundle.getBundle(bundleName, locale);
++ }
++ catch(MissingResourceException ex)
++ {
++ return ResourceBundle.getBundle(bundleName, Locale.ENGLISH);
++ }
++ // return ResourceBundle.getBundle(bundleName, locale);
+ }
+
+ public String getDisplayName(final Locale locale)
+--- misc/libformula/source/org/jfree/formula/function/datetime/Hour-Function.properties 2007-10-18 08:21:38.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/datetime/Hour-Function.properties 2008-09-04 13:57:59.458125000 +0200
+@@ -5,4 +5,4 @@
+ display-name=HOUR
+ description=Returns the hour (0 through 23) from a time.
+ parameter.0.display-name=Time
+-parameter.0.description=The time
++parameter.0.description=The time.
+--- misc/libformula/source/org/jfree/formula/function/information/IsBlank-Function.properties 2007-10-18 08:21:36.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/information/IsBlank-Function.properties 2008-09-08 14:25:30.271875000 +0200
+@@ -4,6 +4,6 @@
+
+ display-name=ISBLANK
+ description=Checks, whether the value is undefined (null).
+-parameter.0.description=A value.
++parameter.0.description=The value to be tested.
+ parameter.0.display-name=Value
+
+--- misc/libformula/source/org/jfree/formula/function/information/IsErr-Function.properties 2007-10-18 08:21:36.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/information/IsErr-Function.properties 2008-09-08 14:25:30.303125000 +0200
+@@ -4,5 +4,5 @@
+
+ display-name=ISERR
+ description=Tells if the parameter is of error type but returns false if the error is of type NA.
+-parameter.0.description=A value.
++parameter.0.description=The value to be tested.
+ parameter.0.display-name=Value
+--- misc/libformula/source/org/jfree/formula/function/information/IsError-Function.properties 2007-10-18 08:21:36.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/information/IsError-Function.properties 2008-09-08 14:27:09.865625000 +0200
+@@ -3,6 +3,6 @@
+ #
+
+ display-name=ISERROR
+-description=Tells if the parameter is of error type but returns false.
+-parameter.0.description=A value.
++description=Returns TRUE if the value is an error value.
++parameter.0.description=The value to be tested.
+ parameter.0.display-name=Value
+--- misc/libformula/source/org/jfree/formula/function/information/IsEven-Function.properties 2007-10-18 08:21:36.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/information/IsEven-Function.properties 2008-09-08 14:25:30.350000000 +0200
+@@ -4,6 +4,6 @@
+
+ display-name=ISEVEN
+ description=Checks whatever the value is an even number.
+-parameter.0.description=A value.
++parameter.0.description=The value to be tested.
+ parameter.0.display-name=Value
+
+--- misc/libformula/source/org/jfree/formula/function/information/IsLogical-Function.properties 2007-10-18 08:21:36.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/information/IsLogical-Function.properties 2008-09-08 14:27:49.021875000 +0200
+@@ -3,7 +3,7 @@
+ #
+
+ display-name=ISLOGICAL
+-description=Checks whatever the value is of type Logical.
+-parameter.0.description=A value.
++description=Returns TRUE if the value carries a logical number format.
++parameter.0.description=The value to be tested.
+ parameter.0.display-name=Value
+
+--- misc/libformula/source/org/jfree/formula/function/information/IsNa-Function.properties 2007-10-18 08:21:36.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/information/IsNa-Function.properties 2008-09-08 14:25:30.412500000 +0200
+@@ -4,5 +4,5 @@
+
+ display-name=ISNA
+ description=Tells if the parameter is of error type NA.
+-parameter.0.description=A value.
++parameter.0.description=The value to be tested.
+ parameter.0.display-name=Value
+--- misc/libformula/source/org/jfree/formula/function/information/IsNonText-Function.properties 2007-10-18 08:21:36.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/information/IsNonText-Function.properties 2008-09-08 14:29:02.709375000 +0200
+@@ -3,7 +3,7 @@
+ #
+
+ display-name=ISNONTEXT
+-description=Checks whatever the value is not of type Text.
+-parameter.0.description=A value.
++description=Returns TRUE if the value is not text.
++parameter.0.description=The value to be tested.
+ parameter.0.display-name=Value
+
+--- misc/libformula/source/org/jfree/formula/function/information/IsNumber-Function.properties 2007-10-18 08:21:36.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/information/IsNumber-Function.properties 2008-09-08 14:25:30.475000000 +0200
+@@ -4,6 +4,6 @@
+
+ display-name=ISNUMBER
+ description=Checks whatever the value is of type Number.
+-parameter.0.description=A value.
++parameter.0.description=The value to be tested.
+ parameter.0.display-name=Value
+
+--- misc/libformula/source/org/jfree/formula/function/information/IsOdd-Function.properties 2007-10-18 08:21:36.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/information/IsOdd-Function.properties 2008-09-08 14:25:30.506250000 +0200
+@@ -4,6 +4,6 @@
+
+ display-name=ISODD
+ description=Checks whatever the value is an odd number.
+-parameter.0.description=A value.
++parameter.0.description=The value to be tested.
+ parameter.0.display-name=Value
+
+--- misc/libformula/source/org/jfree/formula/function/information/IsRef-Function.properties 2008-12-02 08:28:02.985345116 +0100
++++ misc/build/libformula/source/org/jfree/formula/function/information/IsRef-Function.properties 2008-11-18 12:04:59.132277875 +0100
+@@ -1 +1,9 @@
+-dummy
++#
++# Copyright (c) 2007, Pentaho Corporation. All Rights Reserved.
++#
++
++display-name=ISREF
++description=Checks whatever the value is a reference.
++parameter.0.description=A value.
++parameter.0.display-name=Value
++
+--- misc/libformula/source/org/jfree/formula/function/information/IsText-Function.properties 2007-10-18 08:21:36.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/information/IsText-Function.properties 2008-09-08 14:28:53.631250000 +0200
+@@ -3,7 +3,7 @@
+ #
+
+ display-name=ISTEXT
+-description=Checks whatever the value is of type Text.
+-parameter.0.description=A value.
++description=Returns TRUE if value is text.
++parameter.0.description=The value to be tested.
+ parameter.0.display-name=Value
+
+--- misc/libformula/source/org/jfree/formula/function/logical/If-Function.properties 2007-10-18 08:21:39.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/logical/If-Function.properties 2008-12-02 08:27:33.611012901 +0100
+@@ -3,11 +3,11 @@
+ #
+
+ display-name=IF
+-description=Conditional execution
+-parameter.0.description=Condition
+-parameter.0.display-name=A Condition
+-parameter.1.description=True-Term
+-parameter.1.display-name=A term that is evaluated if the condition evaluates to true.
+-parameter.2.description=False-Term
+-parameter.2.display-name=A term that is evaluated if the condition evaluates to false.
++description=Specifies a logical test to be performed.
++parameter.0.display-name=Test
++parameter.0.description=Any value or expression which can be either TRUE or FALSE.
++parameter.1.display-name=Then_value
++parameter.1.description=The result of the function if the logical test returns a TRUE.
++parameter.2.display-name=Otherwise_value
++parameter.2.description=The result of the function if the logical test returns FALSE.
+
+--- misc/libformula/source/org/jfree/formula/function/logical/Not-Function.properties 2007-10-18 08:21:39.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/logical/Not-Function.properties 2008-09-05 09:14:37.771875000 +0200
+@@ -2,8 +2,8 @@
+ # Copyright (c) 2007, Pentaho Corporation. All Rights Reserved.
+ #
+
+-display-name=AND
+-description=Logical AND
+-parameter.0.description=Condition
+-parameter.0.display-name=A Condition
++display-name=NOT
++description=Compute logical NOT of the parameter.
++parameter.0.description=A logical parameter.
++parameter.0.display-name=Value
+
+--- misc/libformula/source/org/jfree/formula/function/logical/Or-Function.properties 2007-10-18 08:21:39.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/logical/Or-Function.properties 2008-09-05 09:15:17.990625000 +0200
+@@ -3,7 +3,6 @@
+ #
+
+ display-name=OR
+-description=Logical OR
+-parameter.0.description=Condition
+-parameter.0.display-name=A Condition
+-
++description=Compute logical OR of all parameters.
++parameter.0.description=A logical parameter.
++parameter.0.display-name=Value
+--- misc/libformula/source/org/jfree/formula/function/math/Even-Function.properties 2007-10-18 08:21:37.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/math/Even-Function.properties 2008-09-18 08:20:28.037500000 +0200
+@@ -2,7 +2,7 @@
+ # Copyright (c) 2007, Pentaho Corporation. All Rights Reserved.
+ #
+
+-display-name=Even
++display-name=EVEN
+ description=Returns the rounding a number up to the nearest even integer.
+ parameter.0.description=A value.
+ parameter.0.display-name=Value
+--- misc/libformula/source/org/jfree/formula/function/math/ModFunctionDescription.java 2007-10-18 08:21:37.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/math/ModFunctionDescription.java 2008-11-18 12:04:59.248540478 +0100
+@@ -56,7 +56,7 @@
+
+ public int getParameterCount()
+ {
+- return 12;
++ return 2;
+ }
+
+ public Type getParameterType(final int position)
+--- misc/libformula/source/org/jfree/formula/function/text/Trim-Function.properties 2007-10-18 08:21:29.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/function/text/Trim-Function.properties 2008-09-18 08:19:05.146875000 +0200
+@@ -2,7 +2,7 @@
+ # Copyright (c) 2007, Pentaho Corporation. All Rights Reserved.
+ #
+
+-display-name=LOWER
++display-name=TRIM
+ description=Returns the given text free of leading and trailing spaces. Internal multiple spaces are replaced by one.
+ parameter.0.description=A value.
+ parameter.0.display-name=Value
+--- misc/libformula/source/org/jfree/formula/parser/FormulaParser.java 2007-10-18 08:21:39.000000000 +0200
++++ misc/build/libformula/source/org/jfree/formula/parser/FormulaParser.java 2008-09-10 13:22:53.306875000 +0200
+@@ -87,8 +87,15 @@
+ // x.initialize(new DefaultFormulaContext());
+ // System.out.println(x);
+
+- final LValue x = parser.parse("(1)()");
+- x.initialize(new DefaultFormulaContext());
+- System.out.println(x);
++ final GeneratedFormulaParserTokenManager tokenParser = new GeneratedFormulaParserTokenManager(new JavaCharStream(new StringReader("DATEDIFF"),1,1));
++ Token token = tokenParser.getNextToken();
++ StringBuffer a = new StringBuffer();
++ while( token.kind != GeneratedFormulaParserConstants.EOF )
++ {
++ a.append(token.image);
++ token = tokenParser.getNextToken();
++ }
++
++ System.out.println(a.toString());
+ }
+ }
diff --git a/jfreereport/patches/pentaho-reporting-flow-engine.patch b/jfreereport/patches/pentaho-reporting-flow-engine.patch
index c07da135439f..8030461d7777 100644
--- a/jfreereport/patches/pentaho-reporting-flow-engine.patch
+++ b/jfreereport/patches/pentaho-reporting-flow-engine.patch
@@ -1,112 +1,312 @@
-*** misc/core/build.properties Wed Jun 13 14:30:51 2007
---- misc/build/core/build.properties Fri Jul 27 09:04:55 2007
-***************
-*** 17,24 ****
-
- #
- # Make sure that JDK 1.2 compatible class files are generated
-! build.target=1.2
-! build.source=1.2
- build.retro.jdk=/opt/jdk1.2.2
-
- #
---- 17,24 ----
-
- #
- # Make sure that JDK 1.2 compatible class files are generated
-! build.target=1.3
-! build.source=1.3
- build.retro.jdk=/opt/jdk1.2.2
-
- #
-***************
-*** 40,54 ****
-
- # Used by: core libraries
- jcommon-jar-file=jcommon-1.0.10.jar
-! jcommon-serializer-jar-file=jcommon-serializer-0.1.0.jar
-! libfonts-jar-file=libfonts-0.3.2.jar
- libfonts-core-jar-file=libfonts-0.3.2.jar
- libfonts-itext-jar-file=libfonts-0.3.2.jar
- liblayout-jar-file=liblayout-0.2.8.jar
-! libloader-jar-file=libloader-0.3.5.jar
-! libxml-jar-file=libxml-0.9.8.jar
-! libformula-jar-file=libformula-0.1.13.jar
-! librepository-jar-file=librepository-0.1.3.jar
- flute-jar-file=flute-1.3-jfree-20061107.jar
-
- #
---- 40,54 ----
-
- # Used by: core libraries
- jcommon-jar-file=jcommon-1.0.10.jar
-! jcommon-serializer-jar-file=jcommon-serializer-0.2.0.jar
-! libfonts-jar-file=libfonts-0.3.3.jar
- libfonts-core-jar-file=libfonts-0.3.2.jar
- libfonts-itext-jar-file=libfonts-0.3.2.jar
- liblayout-jar-file=liblayout-0.2.8.jar
-! libloader-jar-file=libloader-0.3.6.jar
-! libxml-jar-file=libxml-0.9.9.jar
-! libformula-jar-file=libformula-0.1.14.jar
-! librepository-jar-file=librepository-0.1.4.jar
- flute-jar-file=flute-1.3-jfree-20061107.jar
-
- #
-*** misc/core/build.xml Thu Oct 18 08:20:01 2007
---- misc/build/core/build.xml Mon Oct 22 13:05:33 2007
-***************
-*** 54,66 ****
- <isClassAvailableEx class-name="org.jfree.xmlns.LibXmlInfo"
- property-name="lib.xmlns.present">
- <test-classpath>
-- <pathelement location="${libdir}/${jaxp-jar-file}"/>
- <pathelement location="${libdir}/${libxml-jar-file}"/>
- <pathelement location="${libdir}/${jcommon-jar-file}"/>
- <pathelement location="${libdir}/${libloader-jar-file}"/>
- </test-classpath>
- <additional-tests>
-- <available file="${libdir}/${jaxp-jar-file}"/>
- <available file="${libdir}/${libxml-jar-file}"/>
- <available file="${libdir}/${jcommon-jar-file}"/>
- </additional-tests>
---- 54,64 ----
-***************
-*** 136,141 ****
---- 134,140 ----
- source-dir="source">
- <all-sources>
- <exclude name="org/jfree/report/modules/gui/pdf/**" unless="lib.itext.present"/>
-+ <exclude name="org/jfree/report/modules/gui/swing/pdf/**" unless="lib.itext.present"/>
- </all-sources>
- <all-classpath>
- <pathelement location="${libdir}/${jcommon-jar-file}"/>
-***************
-*** 168,173 ****
---- 167,173 ----
- <include name="*.jpg"/>
- <include name="**/*.jpg"/>
- <exclude name="org/jfree/report/modules/gui/pdf/**" unless="lib.itext.present"/>
-+ <exclude name="org/jfree/report/modules/gui/swing/pdf/**" unless="lib.itext.present"/>
- </all-resources>
- </build-all>
- </target>
-***************
-*** 179,184 ****
---- 179,185 ----
- jdk-dir="${build.retro.jdk}">
- <all-sources>
- <exclude name="org/jfree/report/modules/gui/pdf/**" unless="lib.itext.present"/>
-+ <exclude name="org/jfree/report/modules/gui/swing/pdf/**" unless="lib.itext.present"/>
- </all-sources>
- <all-classpath>
- <pathelement location="${libdir}/${jcommon-jar-file}"/>
-***************
-*** 211,216 ****
---- 212,218 ----
- <include name="*.jpg"/>
- <include name="**/*.jpg"/>
- <exclude name="org/jfree/report/modules/gui/pdf/**" unless="lib.itext.present"/>
-+ <exclude name="org/jfree/report/modules/gui/swing/pdf/**" unless="lib.itext.present"/>
- </all-resources>
- </build-retro>
- </target>
+--- misc/core/build.properties 2007-10-18 08:20:01.000000000 +0200
++++ misc/build/core/build.properties 2008-09-08 11:51:22.178125000 +0200
+@@ -17,8 +17,8 @@
+
+ #
+ # Make sure that JDK 1.2 compatible class files are generated
+-build.target=1.2
+-build.source=1.2
++build.target=1.3
++build.source=1.3
+ build.retro.jdk=/opt/jdk1.2.2
+
+ #
+@@ -40,15 +40,15 @@
+
+ # Used by: core libraries
+ jcommon-jar-file=jcommon-1.0.10.jar
+-jcommon-serializer-jar-file=jcommon-serializer-0.1.0.jar
+-libfonts-jar-file=libfonts-0.3.2.jar
++jcommon-serializer-jar-file=jcommon-serializer-0.2.0.jar
++libfonts-jar-file=libfonts-0.3.3.jar
+ libfonts-core-jar-file=libfonts-0.3.2.jar
+ libfonts-itext-jar-file=libfonts-0.3.2.jar
+ liblayout-jar-file=liblayout-0.2.8.jar
+-libloader-jar-file=libloader-0.3.5.jar
+-libxml-jar-file=libxml-0.9.8.jar
+-libformula-jar-file=libformula-0.1.13.jar
+-librepository-jar-file=librepository-0.1.3.jar
++libloader-jar-file=libloader-0.3.6.jar
++libxml-jar-file=libxml-0.9.9.jar
++libformula-jar-file=libformula-0.1.14.jar
++librepository-jar-file=librepository-0.1.4.jar
+ flute-jar-file=flute-1.3-jfree-20061107.jar
+
+ #
+--- misc/core/build.xml 2007-10-18 08:20:01.000000000 +0200
++++ misc/build/core/build.xml 2008-09-08 11:51:22.162500000 +0200
+@@ -54,13 +54,11 @@
+ <isClassAvailableEx class-name="org.jfree.xmlns.LibXmlInfo"
+ property-name="lib.xmlns.present">
+ <test-classpath>
+- <pathelement location="${libdir}/${jaxp-jar-file}"/>
+ <pathelement location="${libdir}/${libxml-jar-file}"/>
+ <pathelement location="${libdir}/${jcommon-jar-file}"/>
+ <pathelement location="${libdir}/${libloader-jar-file}"/>
+ </test-classpath>
+ <additional-tests>
+- <available file="${libdir}/${jaxp-jar-file}"/>
+ <available file="${libdir}/${libxml-jar-file}"/>
+ <available file="${libdir}/${jcommon-jar-file}"/>
+ </additional-tests>
+@@ -136,6 +134,7 @@
+ source-dir="source">
+ <all-sources>
+ <exclude name="org/jfree/report/modules/gui/pdf/**" unless="lib.itext.present"/>
++ <exclude name="org/jfree/report/modules/gui/swing/pdf/**" unless="lib.itext.present"/>
+ </all-sources>
+ <all-classpath>
+ <pathelement location="${libdir}/${jcommon-jar-file}"/>
+@@ -168,6 +167,7 @@
+ <include name="*.jpg"/>
+ <include name="**/*.jpg"/>
+ <exclude name="org/jfree/report/modules/gui/pdf/**" unless="lib.itext.present"/>
++ <exclude name="org/jfree/report/modules/gui/swing/pdf/**" unless="lib.itext.present"/>
+ </all-resources>
+ </build-all>
+ </target>
+@@ -179,6 +179,7 @@
+ jdk-dir="${build.retro.jdk}">
+ <all-sources>
+ <exclude name="org/jfree/report/modules/gui/pdf/**" unless="lib.itext.present"/>
++ <exclude name="org/jfree/report/modules/gui/swing/pdf/**" unless="lib.itext.present"/>
+ </all-sources>
+ <all-classpath>
+ <pathelement location="${libdir}/${jcommon-jar-file}"/>
+@@ -211,6 +212,7 @@
+ <include name="*.jpg"/>
+ <include name="**/*.jpg"/>
+ <exclude name="org/jfree/report/modules/gui/pdf/**" unless="lib.itext.present"/>
++ <exclude name="org/jfree/report/modules/gui/swing/pdf/**" unless="lib.itext.present"/>
+ </all-resources>
+ </build-retro>
+ </target>
+--- misc/core/source/org/jfree/report/expressions/ReportFormulaContext.java 2007-10-18 08:19:32.000000000 +0200
++++ misc/build/core/source/org/jfree/report/expressions/ReportFormulaContext.java 2008-10-01 09:38:50.951250000 +0200
+@@ -28,7 +28,6 @@
+ * (C) Copyright 2000-2005, by Object Refinery Limited.
+ * (C) Copyright 2005-2007, by Pentaho Corporation.
+ */
+-
+ package org.jfree.report.expressions;
+
+ import org.jfree.formula.ContextEvaluationException;
+@@ -40,6 +39,9 @@
+ import org.jfree.formula.typing.Type;
+ import org.jfree.formula.typing.TypeRegistry;
+ import org.jfree.formula.typing.coretypes.AnyType;
++import org.jfree.formula.typing.coretypes.DateTimeType;
++import org.jfree.formula.typing.coretypes.NumberType;
++import org.jfree.formula.typing.coretypes.TextType;
+ import org.jfree.report.DataFlags;
+ import org.jfree.report.DataRow;
+ import org.jfree.report.DataSourceException;
+@@ -53,101 +55,111 @@
+ */
+ public class ReportFormulaContext implements FormulaContext
+ {
+- private FormulaContext backend;
+- private DataRow dataRow;
+- private Object declaringElement;
+-
+- public ReportFormulaContext(final FormulaContext backend,
+- final DataRow dataRow)
+- {
+- this.backend = backend;
+- this.dataRow = dataRow;
+- }
+-
+- public LocalizationContext getLocalizationContext()
+- {
+- return backend.getLocalizationContext();
+- }
+-
+- public Configuration getConfiguration()
+- {
+- return backend.getConfiguration();
+- }
+-
+- public FunctionRegistry getFunctionRegistry()
+- {
+- return backend.getFunctionRegistry();
+- }
+-
+- public TypeRegistry getTypeRegistry()
+- {
+- return backend.getTypeRegistry();
+- }
+-
+- public OperatorFactory getOperatorFactory()
+- {
+- return backend.getOperatorFactory();
+- }
+-
+- public boolean isReferenceDirty(final Object name) throws ContextEvaluationException
+- {
+- try
+- {
+- final DataFlags flags = dataRow.getFlags(String.valueOf(name));
+- if (flags == null)
+- {
+- throw new ContextEvaluationException
+- (new LibFormulaErrorValue(LibFormulaErrorValue.ERROR_REFERENCE_NOT_RESOLVABLE));
+- }
+- return flags.isChanged();
+- }
+- catch(Exception e)
+- {
+- throw new ContextEvaluationException
+- (new LibFormulaErrorValue(LibFormulaErrorValue.ERROR_REFERENCE_NOT_RESOLVABLE));
+- }
+- }
+-
+- public Type resolveReferenceType(final Object name)
+- {
+- return AnyType.TYPE;
+- }
+-
+- public Object resolveReference(final Object name) throws ContextEvaluationException
+- {
+- if (name == null)
+- {
+- throw new NullPointerException();
+- }
+- try
+- {
+- return dataRow.get(String.valueOf(name));
+- }
+- catch (DataSourceException e)
+- {
+- Log.debug ("Error while resolving formula reference: ", e);
+- throw new ContextEvaluationException(new LibFormulaErrorValue
+- (LibFormulaErrorValue.ERROR_REFERENCE_NOT_RESOLVABLE));
+- }
+- }
+-
+- public DataRow getDataRow()
+- {
+- return dataRow;
+- }
+-
+- public void setDataRow(final DataRow dataRow)
+- {
+- this.dataRow = dataRow;
+- }
+-
+- public Object getDeclaringElement()
+- {
+- return declaringElement;
+- }
+-
+- public void setDeclaringElement(final Object declaringElement)
+- {
+- this.declaringElement = declaringElement;
+- }
++
++ private FormulaContext backend;
++ private DataRow dataRow;
++ private Object declaringElement;
++
++ public ReportFormulaContext(final FormulaContext backend,
++ final DataRow dataRow)
++ {
++ this.backend = backend;
++ this.dataRow = dataRow;
++ }
++
++ public LocalizationContext getLocalizationContext()
++ {
++ return backend.getLocalizationContext();
++ }
++
++ public Configuration getConfiguration()
++ {
++ return backend.getConfiguration();
++ }
++
++ public FunctionRegistry getFunctionRegistry()
++ {
++ return backend.getFunctionRegistry();
++ }
++
++ public TypeRegistry getTypeRegistry()
++ {
++ return backend.getTypeRegistry();
++ }
++
++ public OperatorFactory getOperatorFactory()
++ {
++ return backend.getOperatorFactory();
++ }
++
++ public boolean isReferenceDirty(final Object name) throws ContextEvaluationException
++ {
++ try
++ {
++ final DataFlags flags = dataRow.getFlags(String.valueOf(name));
++ if ( flags == null )
++ {
++ throw new ContextEvaluationException(new LibFormulaErrorValue(LibFormulaErrorValue.ERROR_REFERENCE_NOT_RESOLVABLE));
++ }
++ return flags.isChanged();
++ } catch ( Exception e )
++ {
++ throw new ContextEvaluationException(new LibFormulaErrorValue(LibFormulaErrorValue.ERROR_REFERENCE_NOT_RESOLVABLE));
++ }
++ }
++
++ public Type resolveReferenceType(final Object name)
++ {
++ try
++ {
++ final DataFlags flags = dataRow.getFlags(String.valueOf(name));
++ if ( flags != null)
++ {
++ if ( flags.isDate() )
++ return DateTimeType.DATE_TYPE;
++ if ( flags.isNumeric() )
++ return NumberType.GENERIC_NUMBER;
++ return TextType.TYPE;
++ }
++ } catch ( DataSourceException ex )
++ {
++ }
++ return AnyType.TYPE;
++ }
++
++ public Object resolveReference(final Object name) throws ContextEvaluationException
++ {
++ if ( name == null )
++ {
++ throw new NullPointerException();
++ }
++ try
++ {
++ return dataRow.get(String.valueOf(name));
++ } catch ( DataSourceException e )
++ {
++ Log.debug("Error while resolving formula reference: ", e);
++ throw new ContextEvaluationException(new LibFormulaErrorValue(LibFormulaErrorValue.ERROR_REFERENCE_NOT_RESOLVABLE));
++ }
++ }
++
++ public DataRow getDataRow()
++ {
++ return dataRow;
++ }
++
++ public void setDataRow(final DataRow dataRow)
++ {
++ this.dataRow = dataRow;
++ }
++
++ public Object getDeclaringElement()
++ {
++ return declaringElement;
++ }
++
++ public void setDeclaringElement(final Object declaringElement)
++ {
++ this.declaringElement = declaringElement;
++ }
+ }