diff options
author | Kohei Yoshida <kohei.yoshida@suse.com> | 2012-02-13 17:07:48 -0500 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@suse.com> | 2012-02-13 17:12:27 -0500 |
commit | c1ebc27ec9e55615c51b6941ed1d6b6b6782ddb2 (patch) | |
tree | da764eaeb1e8e1ec94f7146971094c7391f6aa5e /sc | |
parent | 1f0784d2b877910b4a8ba3ed599333b5000ef7d0 (diff) |
Use separate iterators for column and formula data.
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/ui/app/inputhdl.cxx | 54 | ||||
-rw-r--r-- | sc/source/ui/inc/inputhdl.hxx | 3 |
2 files changed, 29 insertions, 28 deletions
diff --git a/sc/source/ui/app/inputhdl.cxx b/sc/source/ui/app/inputhdl.cxx index 5169b0144f14..baefc8a33b4f 100644 --- a/sc/source/ui/app/inputhdl.cxx +++ b/sc/source/ui/app/inputhdl.cxx @@ -1077,9 +1077,9 @@ void ScInputHandler::UseFormulaData() if (!aText.isEmpty()) { rtl::OUString aNew; - miAutoPos = pFormulaData->end(); - miAutoPos = findText(*pFormulaData, miAutoPos, aText, aNew, false); - if (miAutoPos != pFormulaData->end()) + miAutoPosFormula = pFormulaData->end(); + miAutoPosFormula = findText(*pFormulaData, miAutoPosFormula, aText, aNew, false); + if (miAutoPosFormula != pFormulaData->end()) { ShowTip( aNew ); aAutoSearch = aText; @@ -1220,8 +1220,8 @@ void ScInputHandler::NextFormulaEntry( bool bBack ) if ( pActiveView && pFormulaData ) { rtl::OUString aNew; - miAutoPos = findText(*pFormulaData, miAutoPos, aAutoSearch, aNew, bBack); - if (miAutoPos != pFormulaData->end()) + miAutoPosFormula = findText(*pFormulaData, miAutoPosFormula, aAutoSearch, aNew, bBack); + if (miAutoPosFormula != pFormulaData->end()) ShowTip( aNew ); // als QuickHelp anzeigen } @@ -1276,9 +1276,9 @@ void lcl_CompleteFunction( EditView* pView, const String& rInsert, bool& rParIns void ScInputHandler::PasteFunctionData() { - if (pFormulaData && miAutoPos != pFormulaData->end()) + if (pFormulaData && miAutoPosFormula != pFormulaData->end()) { - const ScTypedStrData& rData = *miAutoPos; + const ScTypedStrData& rData = *miAutoPosFormula; const rtl::OUString& aInsert = rData.GetString(); bool bParInserted = false; @@ -1393,9 +1393,9 @@ void ScInputHandler::FormulaPreview() ShowTip( aValue ); // als QuickHelp anzeigen aManualTip = aValue; // nach ShowTip setzen if (pFormulaData) - miAutoPos = pFormulaData->end(); - else if (pColumnData) - miAutoPos = pColumnData->end(); + miAutoPosFormula = pFormulaData->end(); + if (pColumnData) + miAutoPosColumn = pColumnData->end(); } } @@ -1556,9 +1556,9 @@ void ScInputHandler::UseColData() // beim Tippen if (!aText.isEmpty()) { rtl::OUString aNew; - miAutoPos = pColumnData->end(); - miAutoPos = findText(*pColumnData, miAutoPos, aText, aNew, false); - if (miAutoPos != pColumnData->end()) + miAutoPosColumn = pColumnData->end(); + miAutoPosColumn = findText(*pColumnData, miAutoPosColumn, aText, aNew, false); + if (miAutoPosColumn != pColumnData->end()) { // durch dBase Import etc. koennen Umbrueche im String sein, // das wuerde hier mehrere Absaetze ergeben -> nicht gut @@ -1598,7 +1598,7 @@ void ScInputHandler::UseColData() // beim Tippen rtl::OUString aDummy; ScTypedCaseStrSet::const_iterator itNextPos = - findText(*pColumnData, miAutoPos, aText, aDummy, false); + findText(*pColumnData, miAutoPosColumn, aText, aDummy, false); bUseTab = itNextPos != pColumnData->end(); } else @@ -1615,7 +1615,7 @@ void ScInputHandler::NextAutoEntry( bool bBack ) EditView* pActiveView = pTopView ? pTopView : pTableView; if ( pActiveView && pColumnData ) { - if (miAutoPos != pColumnData->end() && !aAutoSearch.isEmpty()) + if (miAutoPosColumn != pColumnData->end() && !aAutoSearch.isEmpty()) { // stimmt die Selektion noch? (kann per Maus geaendert sein) @@ -1630,8 +1630,8 @@ void ScInputHandler::NextAutoEntry( bool bBack ) if ( aSel.nEndPos == nParLen && aText.getLength() == aAutoSearch.getLength() + nSelLen ) { rtl::OUString aNew; - miAutoPos = findText(*pColumnData, miAutoPos, aAutoSearch, aNew, bBack); - if (miAutoPos != pColumnData->end()) + miAutoPosColumn = findText(*pColumnData, miAutoPosColumn, aAutoSearch, aNew, bBack); + if (miAutoPosColumn != pColumnData->end()) { bInOwnChange = true; // disable ModifyHdl (reset below) @@ -2498,7 +2498,7 @@ void ScInputHandler::EnterHandler( sal_uInt8 nBlockMode ) EditView* pActiveView = pTopView ? pTopView : pTableView; if (bModified && pActiveView && !aString.isEmpty() && !lcl_IsNumber(aString)) { - if (pColumnData && miAutoPos != pColumnData->end()) + if (pColumnData && miAutoPosColumn != pColumnData->end()) { // #i47125# If AutoInput appended something, do the final AutoCorrect // with the cursor at the end of the input. @@ -3111,7 +3111,7 @@ bool ScInputHandler::KeyInput( const KeyEvent& rKEvt, bool bStartEdit /* = false case KEY_RETURN: if (bControl && !bShift && ( !bInputLine || ( pInputWin && pInputWin->IsMultiLineInput() ) ) ) bDoEnter = true; - else if (nModi == 0 && nTipVisible && pFormulaData && miAutoPos != pFormulaData->end()) + else if (nModi == 0 && nTipVisible && pFormulaData && miAutoPosFormula != pFormulaData->end()) { PasteFunctionData(); bUsed = true; @@ -3139,14 +3139,14 @@ bool ScInputHandler::KeyInput( const KeyEvent& rKEvt, bool bStartEdit /* = false case KEY_TAB: if (bControl && !bAlt) { - if (pFormulaData && nTipVisible && miAutoPos != pFormulaData->end()) + if (pFormulaData && nTipVisible && miAutoPosFormula != pFormulaData->end()) { // blaettern NextFormulaEntry( bShift ); bUsed = true; } - else if (pColumnData && bUseTab && miAutoPos != pColumnData->end()) + else if (pColumnData && bUseTab && miAutoPosColumn != pColumnData->end()) { // in den Eintraegen der AutoEingabe blaettern @@ -3274,9 +3274,9 @@ bool ScInputHandler::KeyInput( const KeyEvent& rKEvt, bool bStartEdit /* = false { bUseTab = false; if (pFormulaData) - miAutoPos = pFormulaData->end(); // do not search further - else if (pColumnData) - miAutoPos = pColumnData->end(); + miAutoPosFormula = pFormulaData->end(); // do not search further + if (pColumnData) + miAutoPosColumn = pColumnData->end(); KeyFuncType eFunc = rKEvt.GetKeyCode().GetFunction(); if ( nChar && nChar != 8 && nChar != 127 && // no 'backspace', no 'delete' @@ -3401,9 +3401,9 @@ bool ScInputHandler::InputCommand( const CommandEvent& rCEvt, bool bForce ) // AutoInput after ext text input if (pFormulaData) - miAutoPos = pFormulaData->end(); - else if (pColumnData) - miAutoPos = pColumnData->end(); + miAutoPosFormula = pFormulaData->end(); + if (pColumnData) + miAutoPosColumn = pColumnData->end(); if (bFormulaMode) UseFormulaData(); diff --git a/sc/source/ui/inc/inputhdl.hxx b/sc/source/ui/inc/inputhdl.hxx index 18cceb8a0118..0a72f63ef24a 100644 --- a/sc/source/ui/inc/inputhdl.hxx +++ b/sc/source/ui/inc/inputhdl.hxx @@ -74,7 +74,8 @@ private: ScTypedCaseStrSet* pColumnData; ScTypedCaseStrSet* pFormulaData; ScTypedCaseStrSet* pFormulaDataPara; - ScTypedCaseStrSet::const_iterator miAutoPos; + ScTypedCaseStrSet::const_iterator miAutoPosColumn; + ScTypedCaseStrSet::const_iterator miAutoPosFormula; Window* pTipVisibleParent; sal_uLong nTipVisible; |