Branch: master

ee90275a 2014-03-16 23:56:06 Michele Calgaro
The output of "tdecmshell --list" is now sorted by ascending module name.
This resolves bug 1893.
M tdecmshell/main.cpp
diff --git a/tdecmshell/main.cpp b/tdecmshell/main.cpp
index 43ec7a9..9ca169c 100644
--- a/tdecmshell/main.cpp
+++ b/tdecmshell/main.cpp
@@ -231,22 +231,25 @@
 
         int maxLen=0;
 
-        for( KService::List::ConstIterator it = m_modules.begin(); it != m_modules.end(); ++it)
+        for (KService::List::ConstIterator it = m_modules.begin(); it != m_modules.end(); ++it)
         {
             int len = (*it)->desktopEntryName().length();
             if (len > maxLen)
                 maxLen = len;
         }
 
-        for( KService::List::ConstIterator it = m_modules.begin(); it != m_modules.end(); ++it)
+        TQStringList module_list;
+        for (KService::List::ConstIterator it = m_modules.begin(); it != m_modules.end(); ++it)
         {
-            TQString entry("%1 - %2");
+            module_list.append(TQString("%1 - %2")
+                .arg((*it)->desktopEntryName().leftJustify(maxLen, ' '))
+                .arg(!(*it)->comment().isEmpty() ? (*it)->comment() : i18n("No description available")));
+        }
+        module_list.sort();
 
-            entry = entry.arg((*it)->desktopEntryName().leftJustify(maxLen, ' '))
-                         .arg(!(*it)->comment().isEmpty() ? (*it)->comment() 
-                                 : i18n("No description available"));
-
-            cout << static_cast<const char *>(entry.local8Bit()) << endl;
+        for (TQStringList::Iterator it=module_list.begin(); it!=module_list.end(); ++it)
+        {
+            cout << static_cast<const char *>((*it).local8Bit()) << endl;
         }
         return 0;
     }