Index: kdeprint/kprinterimpl.cpp
===================================================================
RCS file: /home/kde/kdelibs/kdeprint/kprinterimpl.cpp,v
--- 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
--- 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)
{