[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-i18n-doc
Subject:    [kdepim/KDE/4.8] kmail: Fix i18n plural handling based on list of distribution list names
From:       Kevin Krammer <kevin.krammer () gmx ! at>
Date:       2012-02-09 9:26:29
Message-ID: 20120209092629.A24DCA60A6 () git ! kde ! org
[Download RAW message or body]

Git commit 885f61d840d87c03189fe80a84fa72c04bbc24ec by Kevin Krammer.
Committed on 09/02/2012 at 10:24.
Pushed by krake into branch 'KDE/4.8'.

Fix i18n plural handling based on list of distribution list names

Solution provided by Albert Astals Cid: use list count as plural deciding
factor but do not use it for placeholder substitution.

BUG: 274678
FIXED-IN: 4.8.1
CCMAIL: kde-i18n-doc@kde.org
REVIEW: 103890

M  +12   -2    kmail/addressvalidationjob.cpp

http://commits.kde.org/kdepim/885f61d840d87c03189fe80a84fa72c04bbc24ec

diff --git a/kmail/addressvalidationjob.cpp b/kmail/addressvalidationjob.cpp
index 336a698..b557d1b 100644
--- a/kmail/addressvalidationjob.cpp
+++ b/kmail/addressvalidationjob.cpp
@@ -65,8 +65,18 @@ void AddressValidationJob::Private::slotAliasExpansionDone( KJob \
*job )  
   const KPIMUtils::EmailParseResult errorCode = KPIMUtils::isValidAddressList( \
expandJob->addresses(), brokenAddress );  if ( !emptyDistributionLists.isEmpty() ) {
-    const QString errorMsg = i18n( "Distribution list \"%1\" is empty, it cannot be \
                used.",
-                                   emptyDistributionLists.join( ", " ) );
+    QString errorMsg;
+    const int numberOfDistributionList( emptyDistributionLists.count() ); 
+    QString listOfDistributionList;
+    for ( int i = 0; i < numberOfDistributionList; ++i )
+    {
+      if ( i != 0 )
+        listOfDistributionList.append( ", " );
+      listOfDistributionList.append( QString::fromLatin1( "\"%1\"" ).arg( \
emptyDistributionLists.at( i ) ) ); +    }
+    errorMsg = i18np( "Distribution list %2 is empty, it cannot be used.",
+                      "Distribution lists %2 are empty, they cannot be used.",
+                      numberOfDistributionList, listOfDistributionList );
     KMessageBox::sorry( mParentWidget, errorMsg, i18n( "Invalid Email Address" ) );
     mIsValid = false;
   } else {


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic