# kdeprint Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# klprprinterimpl.cpp

    00001 /*
    00002  *  This file is part of the KDE libraries
    00003  *  Copyright (c) 2001 Michael Goffioul <kdeprint@swing.be>
    00004  *
    00005  *  This library is free software; you can redistribute it and/or
    00006  *  modify it under the terms of the GNU Library General Public
    00007  *  License version 2 as published by the Free Software Foundation.
    00008  *
    00009  *  This library is distributed in the hope that it will be useful,
    00010  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
    00011  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    00012  *  Library General Public License for more details.
    00013  *
    00014  *  You should have received a copy of the GNU Library General Public License
    00015  *  along with this library; see the file COPYING.LIB.  If not, write to
    00016  *  the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    00017  *  Boston, MA 02111-1307, USA.
    00018  **/
    00019
    00020 #include "klprprinterimpl.h"
    00021 #include "kprinter.h"
    00022 #include "kmlprmanager.h"
    00023
    00024 #include <kstandarddirs.h>
    00025 #include <qfile.h>
    00026 #include <stdlib.h>
    00027
    00028 KLprPrinterImpl::KLprPrinterImpl(QObject *parent, const char *name, const QStringList & /*args*/)
    00029 : KPrinterImpl(parent,name)
    00030 {
    00031     m_exepath = KStandardDirs::findExe("lpr");
    00032 }
    00033
    00034 KLprPrinterImpl::~KLprPrinterImpl()
    00035 {
    00036 }
    00037
    00038 bool KLprPrinterImpl::setupCommand(QString& cmd, KPrinter *printer)
    00039 {
    00040     // check printer object
    00041     if (!printer || m_exepath.isEmpty())
    00042         return false;
    00043
    00044     cmd = QString::fromLatin1("%1 -P %1 '-#%1'").arg(m_exepath).arg(quote(printer->printerName())).arg( printer->numCopies() );
    00045     QString opts = static_cast<KMLprManager*>(KMManager::self())->printOptions(printer);
    00046     if (!opts.isEmpty())
    00047         cmd += (" " + opts);
    00048     return true;
    00049 }
    00050
    00051 void KLprPrinterImpl::broadcastOption(const QString& key, const QString& value)
    00052 {
    00053     KPrinterImpl::broadcastOption(key,value);
    00054     if (key == "kde-pagesize")
    00055     {
    00056         QString pagename = QString::fromLatin1(pageSizeToPageName((KPrinter::PageSize)value.toInt()));
    00057         KPrinterImpl::broadcastOption("PageSize",pagename);
    00058     }
    00059 }

This file is part of the documentation for kdeprint Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:31:01 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003