+++ /dev/null
-/**
- * \file PrinterParams.cpp
- * This file is part of LyX, the document processor.
- * Licence details can be found in the file COPYING.
- *
- * \author Allan Rae
- *
- * Full author contact details are available in file CREDITS.
- */
-
-#include <config.h>
-
-#include "PrinterParams.h"
-
-#include "LyXRC.h"
-
-#include "support/lassert.h"
-#include "support/lstrings.h"
-
-
-namespace lyx {
-
-PrinterParams::PrinterParams()
-{
- target = PRINTER;
- all_pages = true;
- from_page = 1;
- to_page = 0;
- odd_pages = true;
- even_pages = true;
- count_copies = 1;
- sorted_copies = false;
- reverse_order = false;
-
- testInvariant();
-}
-
-
-void PrinterParams::testInvariant() const
-{
-#ifdef ENABLE_ASSERTIONS
- switch (target) {
- case PRINTER:
- // We can't do this test, because no default printer
- // may have been set.
- // LASSERT(!printer_name.empty(), /**/);
- break;
- case FILE:
- LATTEST(!file_name.empty());
- break;
- default:
- LATTEST(false);
- break;
- }
-#endif
-}
-
-
-} // namespace lyx
+++ /dev/null
-// -*- C++ -*-
-/**
- * \file PrinterParams.h
- * This file is part of LyX, the document processor.
- * Licence details can be found in the file COPYING.
- *
- * \author Allan Rae
- *
- * Full author contact details are available in file CREDITS.
- */
-
-#ifndef PRINTERPARAMS_H
-#define PRINTERPARAMS_H
-
-#include <string>
-
-
-namespace lyx {
-
-/**
- This class contains (or should contain) all the parameters required for
- printing a buffer. Some work still needs to be done on this class and
- printing handling in general to make it nice and full-featured.
- The main things I'd like to add now is the ability to print a read-only
- document with different orientation, papersize or single/duplex state
- than the document's settings. ARRae 20000423
-*/
-class PrinterParams
-{
-public:
- ///
- PrinterParams();
-
- ///
- enum Target {
- ///
- PRINTER,
- ///
- FILE
- };
-
- /** Test that all the fields contain valid entries. It's unlikely
- that the internal code will get this wrong however new ports
- and external scripts might drive the wrong values in.
- */
- void testInvariant() const;
-
-public:
- ///
- Target target;
- ///
- std::string printer_name;
- ///
- std::string file_name;
- ///
- bool all_pages;
- /** Print a page range. Both from_page and to_page used to be strings
- because they're actually easier to work with that way. I've
- switched to_page to be an int. However, from_page will remain a
- string because I want the from_page field to be able to be used as
- a page range "1,3-5" and so on.
- I've modified the invariant test to match. ARRae 20000518
- */
- unsigned int from_page;
- ///
- unsigned int to_page;
- ///
- bool odd_pages;
- ///
- bool even_pages;
- ///
- unsigned int count_copies;
- ///
- bool sorted_copies;
- ///
- bool reverse_order;
- // The settings below should allow us to print any read-only doc in
- // whatever size/orientation we want it -- overriding the documents
- // settings.
- // Override the documents orientation
- // bool orientation;
- // Print n pages per physical sheet
- // unsigned int nup;
- // Override document settings for duplex.
- // bool duplex;
-
-};
-
-
-} // namespace lyx
-
-#endif