• Skip to content
  • Skip to link menu
KDE 4.0 API Reference
  • KDE API Reference
  • kdegraphics
  • Sitemap
  • Contact Us
 

okular

fileprinter.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *   Copyright (C) 2007 by John Layt <john@layt.net>                       *
00003  *                                                                         *
00004  *   This program is free software; you can redistribute it and/or modify  *
00005  *   it under the terms of the GNU General Public License as published by  *
00006  *   the Free Software Foundation; either version 2 of the License, or     *
00007  *   (at your option) any later version.                                   *
00008  ***************************************************************************/
00009 
00010 // This Class is a temporary addition to Okular for the duration of KDE 4.0.
00011 // In KDE 4.1 this class will either be moved to kdelibs if still required,
00012 // or replaced  with a Qt 4.4 based solution.
00013 
00014 #ifndef FILEPRINTER_H
00015 #define FILEPRINTER_H
00016 
00017 #include <QtCore/QList>
00018 #include <QtCore/QString>
00019 
00020 #include <okular/core/okular_export.h>
00021 
00022 class QPrinter;
00023 class QSize;
00024 
00025 namespace Okular {
00026 
00027 class OKULAR_EXPORT FilePrinter
00028 {
00029 public:
00030 
00036     enum FileDeletePolicy { ApplicationDeletesFiles, SystemDeletesFiles };
00037 
00048     enum PageSelectPolicy { ApplicationSelectsPages, SystemSelectsPages };
00049 
00071     static int printFile( QPrinter &printer, const QString file,
00072                           FileDeletePolicy fileDeletePolicy = FilePrinter::ApplicationDeletesFiles,
00073                           PageSelectPolicy pageSelectPolicy = FilePrinter::ApplicationSelectsPages,
00074                           const QString &pageRange = QString() );
00075 
00095     static int printFiles( QPrinter &printer, const QStringList &fileList,
00096                            FileDeletePolicy fileDeletePolicy = FilePrinter::ApplicationDeletesFiles );
00097 
00105     static QList<int> pageList( QPrinter &printer, int lastPage, const QList<int> &selectedPageList );
00106 
00114     static QString pageRange( QPrinter &printer, int lastPage, const QList<int> &selectedPageList );
00115 
00121     static QString pageListToPageRange( const QList<int> &pageList );
00122 
00127     static bool cupsAvailable();
00128 
00133     static QSize psPaperSize( QPrinter &printer );
00134 
00135 protected:
00136 
00137     bool detectCupsService();
00138     bool detectCupsConfig();
00139 
00140     int doPrintFiles( QPrinter &printer, const QStringList fileList,
00141                              FileDeletePolicy fileDeletePolicy, PageSelectPolicy pageSelectPolicy,
00142                              const QString &pageRange );
00143 
00144     QStringList printArguments( QPrinter &printer,
00145                                        FileDeletePolicy fileDeletePolicy, PageSelectPolicy pageSelectPolicy,
00146                                        bool useCupsOptions, const QString &pageRange, const QString &version );
00147 
00148     QStringList destination( QPrinter &printer, const QString &version );
00149     QStringList copies( QPrinter &printer, const QString &version );
00150     QStringList jobname( QPrinter &printer, const QString &version );
00151     QStringList deleteFile( QPrinter &printer, FileDeletePolicy fileDeletePolicy,
00152                                    const QString &version );
00153     QStringList pages( QPrinter &printer, PageSelectPolicy pageSelectPolicy,
00154                               const QString &pageRange, bool useCupsOptions, const QString &version );
00155 
00156     QStringList cupsOptions( QPrinter &printer );
00157     QStringList optionMedia( QPrinter &printer );
00158     QString mediaPageSize( QPrinter &printer );
00159     QString mediaPaperSource( QPrinter &printer );
00160     QStringList optionOrientation( QPrinter &printer );
00161     QStringList optionDoubleSidedPrinting( QPrinter &printer );
00162     QStringList optionPageOrder( QPrinter &printer );
00163     QStringList optionCollateCopies( QPrinter &printer );
00164 };
00165 
00166 }
00167 
00168 #endif // FILEPRINTER_H

okular

Skip menu "okular"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kdegraphics

Skip menu "kdegraphics"
  • okular
Generated for kdegraphics by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal