Modified: openoffice/trunk/main/sw/source/ui/wrtsh/wrtsh2.cxx URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sw/source/ui/wrtsh/wrtsh2.cxx?rev=1542986&r1=1542985&r2=1542986&view=diff ============================================================================== --- openoffice/trunk/main/sw/source/ui/wrtsh/wrtsh2.cxx (original) +++ openoffice/trunk/main/sw/source/ui/wrtsh/wrtsh2.cxx Mon Nov 18 11:29:24 2013 @@ -103,40 +103,37 @@ void SwWrtShell::Insert(SwField &rFld) -void SwWrtShell::UpdateInputFlds( SwInputFieldList* pLst, sal_Bool bOnlyInSel ) +void SwWrtShell::UpdateInputFlds( SwInputFieldList* pLst ) { - // ueber die Liste der Eingabefelder gehen und Updaten - SwInputFieldList* pTmp = pLst; - if( !pTmp ) - pTmp = new SwInputFieldList( this ); + // ueber die Liste der Eingabefelder gehen und Updaten + SwInputFieldList* pTmp = pLst; + if( !pTmp ) + pTmp = new SwInputFieldList( this ); - if (bOnlyInSel) - pTmp->RemoveUnselectedFlds(); - - const sal_uInt16 nCnt = pTmp->Count(); - if(nCnt) - { - pTmp->PushCrsr(); + const sal_uInt16 nCnt = pTmp->Count(); + if(nCnt) + { + pTmp->PushCrsr(); - sal_Bool bCancel = sal_False; + sal_Bool bCancel = sal_False; ByteString aDlgPos; - for( sal_uInt16 i = 0; i < nCnt && !bCancel; ++i ) - { - pTmp->GotoFieldPos( i ); + for( sal_uInt16 i = 0; i < nCnt && !bCancel; ++i ) + { + pTmp->GotoFieldPos( i ); SwField* pField = pTmp->GetField( i ); if(pField->GetTyp()->Which() == RES_DROPDOWN) bCancel = StartDropDownFldDlg( pField, sal_True, &aDlgPos ); else bCancel = StartInputFldDlg( pField, sal_True, 0, &aDlgPos); - // Sonst Updatefehler bei Multiselektion: - pTmp->GetField( i )->GetTyp()->UpdateFlds(); - } - pTmp->PopCrsr(); - } + // Sonst Updatefehler bei Multiselektion: + pTmp->GetField( i )->GetTyp()->UpdateFlds(); + } + pTmp->PopCrsr(); + } - if( !pLst ) - delete pTmp; + if( !pLst ) + delete pTmp; } @@ -304,24 +301,29 @@ void SwWrtShell::ClickToField( const SwF EndAllAction(); break; - case RES_INPUTFLD: - StartInputFldDlg( (SwField*)&rFld, sal_False ); - break; + case RES_INPUTFLD: + { + const SwInputField* pInputField = dynamic_cast<const SwInputField*>(&rFld); + if ( pInputField == NULL ) + { + StartInputFldDlg( (SwField*)&rFld, sal_False ); + } + } + break; - case RES_SETEXPFLD: - if( ((SwSetExpField&)rFld).GetInputFlag() ) - StartInputFldDlg( (SwField*)&rFld, sal_False ); - break; + case RES_SETEXPFLD: + if( ((SwSetExpField&)rFld).GetInputFlag() ) + StartInputFldDlg( (SwField*)&rFld, sal_False ); + break; case RES_DROPDOWN : StartDropDownFldDlg( (SwField*)&rFld, sal_False ); break; - } + } bIsInClickToEdit = sal_False; } - void SwWrtShell::ClickToINetAttr( const SwFmtINetFmt& rItem, sal_uInt16 nFilter ) { if( !rItem.GetValue().Len() )
