diff options
author | Oliver Bolte <obo@openoffice.org> | 2009-06-09 06:07:51 +0000 |
---|---|---|
committer | Oliver Bolte <obo@openoffice.org> | 2009-06-09 06:07:51 +0000 |
commit | 7620aaa03c66a5f96acfb63b2a89e823083cba03 (patch) | |
tree | 86a92812f2af45a177c8bf53e2fd296a5898d5c4 /formula | |
parent | 109511b84efb6107c99cc4d045fc08a87fa08152 (diff) |
CWS-TOOLING: integrate CWS calc311fixes
2009-05-26 16:43:50 +0200 nn r272311 : patch flags
2009-05-26 15:20:08 +0200 nn r272306 : CWS-TOOLING: rebase CWS calc311fixes to branches/OOO310@272261 (milestone: OOO310:m12)
2009-05-26 13:39:20 +0200 nn r272298 : #i101960# UpdateExternalRefLinks: set document modified
2009-05-20 20:02:01 +0200 dr r272148 : #i102056# drag and drop of note cells loses cell contents
2009-05-19 17:37:04 +0200 nn r272091 : #i101273# #i101304# #i101319# copied from CWS calclinkfixes
2009-05-13 18:46:19 +0200 nn r271869 : #i101690# copied from CWS calc50
2009-05-13 17:45:18 +0200 nn r271867 : #i101869# DeleteRange: before broadcasting, check if EndListening removed the note cells
2009-05-11 18:44:54 +0200 nn r271784 : #i101725# don't copy hash_set with pointers from the other collection
2009-05-11 18:39:33 +0200 nn r271782 : #i101512# copied from CWS calc50
2009-05-11 18:39:22 +0200 nn r271781 : #i101512# copied from CWS calc50
Diffstat (limited to 'formula')
-rw-r--r-- | formula/inc/formula/FormulaCompiler.hxx | 3 | ||||
-rw-r--r-- | formula/source/ui/dlg/formula.cxx | 5 |
2 files changed, 7 insertions, 1 deletions
diff --git a/formula/inc/formula/FormulaCompiler.hxx b/formula/inc/formula/FormulaCompiler.hxx index 9aa65ba30d..4be65adb75 100644 --- a/formula/inc/formula/FormulaCompiler.hxx +++ b/formula/inc/formula/FormulaCompiler.hxx @@ -219,6 +219,9 @@ public: */ OpCode GetEnglishOpCode( const String& rName ) const; + void SetCompileForFAP( BOOL bVal ) + { bCompileForFAP = bVal; bIgnoreErrors = bVal; } + static BOOL DeQuote( String& rStr ); static const String& GetNativeSymbol( OpCode eOp ); diff --git a/formula/source/ui/dlg/formula.cxx b/formula/source/ui/dlg/formula.cxx index 35e16e5b7c..ecd0563472 100644 --- a/formula/source/ui/dlg/formula.cxx +++ b/formula/source/ui/dlg/formula.cxx @@ -675,8 +675,10 @@ void FormulaDlg_Impl::MakeTree(IStructHelper* _pTree,SvLBoxEntry* pParent,Formul long nParas = _pToken->GetParamCount(); OpCode eOp = _pToken->GetOpCode(); + // #i101512# for output, the original token is needed + FormulaToken* pOrigToken = (_pToken->GetType() == svFAP) ? _pToken->GetFAPOrigToken() : _pToken; uno::Sequence<sheet::FormulaToken> aArgs(1); - aArgs[0] = m_aTokenMap.find(_pToken)->second; + aArgs[0] = m_aTokenMap.find(pOrigToken)->second; try { const String aResult = m_pHelper->getFormulaParser()->printFormula(aArgs); @@ -766,6 +768,7 @@ void FormulaDlg_Impl::UpdateTokenArray( const String& rStrExp) } // if ( pTokens && nLen == m_aTokenList.getLength() ) FormulaCompiler aCompiler(*m_pTokenArray.get()); + aCompiler.SetCompileForFAP(TRUE); // #i101512# special handling is needed aCompiler.CompileTokenArray(); } |