Index: kdeprint/kprinterimpl.cpp =================================================================== RCS file: /home/kde/kdelibs/kdeprint/kprinterimpl.cpp,v retrieving revision 1.58 diff -u -3 -b -r1.58 kprinterimpl.cpp --- kdeprint/kprinterimpl.cpp 15 Mar 2004 10:27:38 -0000 1.58 +++ kdeprint/kprinterimpl.cpp 28 Sep 2004 22:18:14 -0000 @@ -507,20 +507,15 @@ QStringList flist = KXmlCommandManager::self()->autoConvert(mime, primaryMimeType); if (flist.count() == 0) { - if (KMessageBox::warningYesNo(NULL, - i18n("No appropriate filter was found to convert the file " - "format %1 into %2. Do you want to print the " - "file using its original format?").arg(mime).arg(primaryMimeType), - QString::null, - i18n("Print"), - i18n("Skip")) == KMessageBox::No) - { + KMessageBox::error(NULL, + i18n("No appropriate filter was found to convert the file format %1 into %2.\n" + "Go to System Options -> Commands to look through the list of " + "possible filters and to see the external programs they require to be " + "available.").arg(mime).arg(primaryMimeType), + i18n("Print")); if (flag) QFile::remove(*it); it = files.remove(it); - } - else - ++it; continue; } QStringList l(*it); Index: kdeprint/kxmlcommand.cpp =================================================================== RCS file: /home/kde/kdelibs/kdeprint/kxmlcommand.cpp,v retrieving revision 1.21 diff -u -3 -b -r1.21 kxmlcommand.cpp --- kdeprint/kxmlcommand.cpp 15 Mar 2004 10:27:38 -0000 1.21 +++ kdeprint/kxmlcommand.cpp 28 Sep 2004 22:18:15 -0000 @@ -733,6 +733,10 @@ const QValueList l = d->m_mimemap[mimesrc]; for (QValueList::ConstIterator it=l.begin(); it!=l.end(); ++it) { + // check filter availability + if (!KdeprintChecker::check((*it)->requirements())) + continue; + // direct filter: shortest path => return immediately if ((*it)->mimeType() == mimedest) {