summaryrefslogtreecommitdiff
path: root/reportdesign/source
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2017-07-11 16:38:38 +0200
committerEike Rathke <erack@redhat.com>2017-07-11 16:42:23 +0200
commit3087b8f5d500866d17946b9f442af6a74a7f99dd (patch)
tree4148231daddcedc6f6c0cbbfeded24490e11dc88 /reportdesign/source
parent2f0c10db707bbd11d8ca456bcf3d2559a1ce15dd (diff)
Introduce IFormulaEditorHelper::createCompiler()
For application specific derivatives. Change-Id: I8af95bd120c642e47ec5d0708ed463c98c471567
Diffstat (limited to 'reportdesign/source')
-rw-r--r--reportdesign/source/ui/dlg/Formula.cxx6
-rw-r--r--reportdesign/source/ui/inc/Formula.hxx1
2 files changed, 7 insertions, 0 deletions
diff --git a/reportdesign/source/ui/dlg/Formula.cxx b/reportdesign/source/ui/dlg/Formula.cxx
index 826ad3253ca6..738d63f84b00 100644
--- a/reportdesign/source/ui/dlg/Formula.cxx
+++ b/reportdesign/source/ui/dlg/Formula.cxx
@@ -25,6 +25,7 @@
#include <formula/formdata.hxx>
#include <formula/funcutl.hxx>
#include <formula/tokenarray.hxx>
+#include <formula/FormulaCompiler.hxx>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <memory>
@@ -118,6 +119,11 @@ std::shared_ptr<formula::FormulaCompiler> FormulaDialog::getCompiler() const
return nullptr;
}
+std::unique_ptr<formula::FormulaCompiler> FormulaDialog::createCompiler( formula::FormulaTokenArray& rArray ) const
+{
+ return std::unique_ptr<formula::FormulaCompiler>(new FormulaCompiler(rArray));
+}
+
void FormulaDialog::doClose(bool _bOk)
{
EndDialog(_bOk ? RET_OK : RET_CANCEL);
diff --git a/reportdesign/source/ui/inc/Formula.hxx b/reportdesign/source/ui/inc/Formula.hxx
index 39cd6e92d246..a2f4aa707692 100644
--- a/reportdesign/source/ui/inc/Formula.hxx
+++ b/reportdesign/source/ui/inc/Formula.hxx
@@ -75,6 +75,7 @@ public:
virtual void fill() override;
virtual bool calculateValue(const OUString& _sExpression, OUString& _rResult, bool bMatrixFormula) override;
virtual std::shared_ptr<formula::FormulaCompiler> getCompiler() const override;
+ virtual std::unique_ptr<formula::FormulaCompiler> createCompiler( formula::FormulaTokenArray& rArray ) const override;
virtual void doClose(bool _bOk) override;
virtual void insertEntryToLRUList(const formula::IFunctionDescription* pDesc) override;
virtual void showReference(const OUString& _sFormula) override;