File kmimelist.diff of Package kdelibs3

Index: kded/kmimelist.cpp
===================================================================
--- /dev/null
+++ kded/kmimelist.cpp
@@ -0,0 +1,54 @@
+#include <ktrader.h>
+#include <kservice.h>
+#include <kmimetype.h>
+#include <assert.h>
+#include <kstandarddirs.h>
+#include <kservicegroup.h>
+#include <kimageio.h>
+#include <kuserprofile.h>
+#include <kprotocolinfo.h>
+
+#include <kapplication.h>
+
+#include <stdio.h>
+
+int main(int argc, char *argv[])
+{
+   KApplication k(argc,argv,"blurb",false);
+
+   KMimeType::List mtl = KMimeType::allMimeTypes( );
+   assert( mtl.count() );
+   qDebug( "Found %d mime types.", mtl.count() );
+   QValueListIterator<KMimeType::Ptr> it(mtl.begin());
+   KServiceTypeProfile::OfferList ol;
+
+   for (; it != mtl.end(); ++it)
+   {
+     {
+      // Application
+      printf( "APP:%s:", (*it)->name().latin1() );
+      ol = KServiceTypeProfile::offers((*it)->name(), "Application");
+      QValueListIterator<KServiceOffer> it2(ol.begin());
+      for (; it2 != ol.end(); ++it2) {
+        if ((*it2).allowAsDefault())
+           printf( " %s", (*it2).service()->desktopEntryPath().ascii() );
+
+      }
+      printf( "\n" );
+     }
+
+     {
+      // Embedded
+      printf( "PART:%s:", (*it)->name().latin1() );
+      ol = KServiceTypeProfile::offers((*it)->name(), "KParts/ReadOnlyPart");
+      QValueListIterator<KServiceOffer> it2(ol.begin());
+      for (; it2 != ol.end(); ++it2) {
+        if ((*it2).allowAsDefault())
+           printf( " %s", (*it2).service()->desktopEntryPath().ascii() );
+
+      }
+      printf( "\n" );
+     }
+   }
+}
+
openSUSE Build Service is sponsored by