#ifdef ENABLE_ASSERTIONS
#include "support/LAssert.h"
+extern bool containsOnly(string const &, char const *);
#endif
+
/**
This struct contains (or should contain) all the parameters required for
printing a buffer. Some work still needs to be done on this struct and
*/
struct PrinterParams {
///
- enum Target{
+ enum Target {
///
PRINTER,
///
// Override document settings for duplex.
// bool duplex;
- ///
- PrinterParams(Target const & t = PRINTER,
- string const & pname = lyxrc.printer,
- string const & fname = string(),
- WhichPages const wp = ALL,
- string const & from = string(),
- int const & to = 0,
- bool const reversed = false,
- bool const unsorted = false,
- int const & num_copies = 1)
- : target(t),
- printer_name(pname),
- file_name(fname),
- which_pages(wp),
- from_page(from),
- to_page(to),
- reverse_order(reversed),
- unsorted_copies(unsorted),
- count_copies(num_copies)
- {
- testInvariant();
- }
- ///
- PrinterParams(PrinterParams const & pp)
- : target(pp.target),
- printer_name(pp.printer_name),
- file_name(pp.file_name),
- which_pages(pp.which_pages),
- from_page(pp.from_page),
- to_page(pp.to_page),
- reverse_order(pp.reverse_order),
- unsorted_copies(pp.unsorted_copies),
- count_copies(pp.count_copies)
- {
- testInvariant();
- }
-
-// do we need these?
-// friend bool operator==(PrinterParams const &, PrinterParams const &);
-// friend bool operator<(PrinterParams const &, PrinterParams const &);
-
/** Test that all the fields contain valid entries. It's unlikely
that the internal code will get this wrong (at least for the
xforms code anyway) however new ports and external scripts
void testInvariant() const
{
#ifdef ENABLE_ASSERTIONS
- extern bool containsOnly(string const &, char const *);
if (!from_page.empty()) {
// Assert(from_page == number or empty)
Assert(containsOnly(from_page, "1234567890"));
}
#endif
}
+
+ ///
+ PrinterParams(Target const & t = PRINTER,
+ string const & pname = lyxrc.printer,
+ string const & fname = string(),
+ WhichPages const wp = ALL,
+ string const & from = string(),
+ int const & to = 0,
+ bool const reversed = false,
+ bool const unsorted = false,
+ int const & num_copies = 1)
+ : target(t),
+ printer_name(pname),
+ file_name(fname),
+ which_pages(wp),
+ from_page(from),
+ to_page(to),
+ reverse_order(reversed),
+ unsorted_copies(unsorted),
+ count_copies(num_copies)
+ {
+ testInvariant();
+ }
+ ///
+ PrinterParams(PrinterParams const & pp)
+ : target(pp.target),
+ printer_name(pp.printer_name),
+ file_name(pp.file_name),
+ which_pages(pp.which_pages),
+ from_page(pp.from_page),
+ to_page(pp.to_page),
+ reverse_order(pp.reverse_order),
+ unsorted_copies(pp.unsorted_copies),
+ count_copies(pp.count_copies)
+ {
+ testInvariant();
+ }
};
#endif
-
-
-