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() )


Reply via email to