+2003-07-17 Alfredo Braunstein <abraunst@libero.it>
+
+ * format.[Ch] (papersize): moved to BufferParams
+ * converter.[Ch] (dvips_options): moved to BufferParams
+ (dvipdfm_options): moved to anon namespace
+ * bufferparams.[Ch]: added above functions.
2003-07-17 André Pönitz <poenitz@gmx.net>
///return the format of the buffer on a string
string const BufferFormat(Buffer const & buffer);
-
+///
void bufferErrors(Buffer const &, TeXErrors const &);
-
+///
void bufferErrors(Buffer const &, ErrorList const &);
#endif // BUFFER_FUNCS_H
}
}
}
+
+
+string const BufferParams::paperSizeName() const
+{
+ char real_papersize = papersize;
+ if (real_papersize == PAPER_DEFAULT)
+ real_papersize = lyxrc.default_papersize;
+
+ switch (real_papersize) {
+ case PAPER_A3PAPER:
+ return "a3";
+ case PAPER_A4PAPER:
+ return "a4";
+ case PAPER_A5PAPER:
+ return "a5";
+ case PAPER_B5PAPER:
+ return "b5";
+ case PAPER_EXECUTIVEPAPER:
+ return "foolscap";
+ case PAPER_LEGALPAPER:
+ return "legal";
+ case PAPER_USLETTER:
+ default:
+ return "letter";
+ }
+}
+
+
+string const BufferParams::dvips_options() const
+{
+ string result;
+
+ if (use_geometry
+ && papersize2 == VM_PAPER_CUSTOM
+ && !lyxrc.print_paper_dimension_flag.empty()
+ && !paperwidth.empty()
+ && !paperheight.empty()) {
+ // using a custom papersize
+ result = lyxrc.print_paper_dimension_flag;
+ result += ' ' + paperwidth;
+ result += ',' + paperheight;
+ } else {
+ string const paper_option = paperSizeName();
+ if (paper_option != "letter" ||
+ orientation != ORIENTATION_LANDSCAPE) {
+ // dvips won't accept -t letter -t landscape.
+ // In all other cases, include the paper size
+ // explicitly.
+ result = lyxrc.print_paper_flag;
+ result += ' ' + paper_option;
+ }
+ }
+ if (orientation == ORIENTATION_LANDSCAPE &&
+ papersize2 != VM_PAPER_CUSTOM)
+ result += ' ' + lyxrc.print_landscape_flag;
+ return result;
+}
/// map of the file's author IDs to buffer author IDs
std::vector<int> author_map;
+ ///
+ string const dvips_options() const;
+ ///
+ string const paperSizeName() const;
private:
/// the author list
#include "format.h"
#include "lyxrc.h"
#include "buffer.h"
+#include "bufferparams.h"
#include "buffer_funcs.h"
#include "bufferview_funcs.h"
#include "errorlist.h"
return head + ' ' + options + ' ' + tail;
}
+
+string const dvipdfm_options(BufferParams const & bp)
+{
+ string result;
+
+ if (bp.papersize2 != BufferParams::VM_PAPER_CUSTOM) {
+ string const paper_size = bp.paperSizeName();
+ if (paper_size != "b5" && paper_size != "foolscap")
+ result = "-p "+ paper_size;
+
+ if (bp.orientation == BufferParams::ORIENTATION_LANDSCAPE)
+ result += " -l";
+ }
+
+ return result;
+}
+
} // namespace anon
}
-
class compare_Converter {
public:
compare_Converter(string const & f, string const & t)
if (conv.from == "dvi" && conv.to == "ps")
command = add_options(command,
- dvips_options(buffer));
+ buffer->params.dvips_options());
else if (conv.from == "dvi" && prefixIs(conv.to, "pdf"))
command = add_options(command,
- dvipdfm_options(buffer));
+ dvipdfm_options(buffer->params));
lyxerr[Debug::FILES] << "Calling " << command << endl;
if (buffer)
}
-string const Converters::dvips_options(Buffer const * buffer)
-{
- string result;
- if (!buffer)
- return result;
-
- if (buffer->params.use_geometry
- && buffer->params.papersize2 == BufferParams::VM_PAPER_CUSTOM
- && !lyxrc.print_paper_dimension_flag.empty()
- && !buffer->params.paperwidth.empty()
- && !buffer->params.paperheight.empty()) {
- // using a custom papersize
- result = lyxrc.print_paper_dimension_flag;
- result += ' ' + buffer->params.paperwidth;
- result += ',' + buffer->params.paperheight;
- } else {
- string const paper_option = papersize(buffer);
- if (paper_option != "letter" ||
- buffer->params.orientation != BufferParams::ORIENTATION_LANDSCAPE) {
- // dvips won't accept -t letter -t landscape. In all other
- // cases, include the paper size explicitly.
- result = lyxrc.print_paper_flag;
- result += ' ' + paper_option;
- }
- }
- if (buffer->params.orientation == BufferParams::ORIENTATION_LANDSCAPE &&
- buffer->params.papersize2 != BufferParams::VM_PAPER_CUSTOM)
- result += ' ' + lyxrc.print_landscape_flag;
- return result;
-}
-
-
-string const Converters::dvipdfm_options(Buffer const * buffer)
-{
- string result;
- if (!buffer)
- return result;
-
- if (buffer->params.papersize2 != BufferParams::VM_PAPER_CUSTOM) {
- string const paper_size = papersize(buffer);
- if (paper_size != "b5" && paper_size != "foolscap")
- result = "-p "+ paper_size;
-
- if (buffer->params.orientation == BufferParams::ORIENTATION_LANDSCAPE)
- result += " -l";
- }
-
- return result;
-}
-
void Converters::buildGraph()
{
string const & from_file, string const & to_file_base,
string const & from_format, string const & to_format);
///
- string const dvips_options(Buffer const * buffer);
- ///
- string const dvipdfm_options(Buffer const * buffer);
- ///
void update(Formats const & formats);
///
void updateLast(Formats const & formats);
#include "format.h"
#include "buffer.h"
+#include "buffer_funcs.h"
#include "lyxrc.h"
#include "debug.h"
#include "gettext.h"
if (format_name == "dvi" &&
!lyxrc.view_dvi_paper_option.empty()) {
command += ' ' + lyxrc.view_dvi_paper_option;
- string paper_size = papersize(buffer);
+ string paper_size = buffer->params.paperSizeName();
if (paper_size == "letter")
paper_size = "us";
command += ' ' + paper_size;
}
-string const papersize(Buffer const * buffer)
-{
- char real_papersize = buffer->params.papersize;
- if (real_papersize == BufferParams::PAPER_DEFAULT)
- real_papersize = lyxrc.default_papersize;
-
- switch (real_papersize) {
- case BufferParams::PAPER_A3PAPER:
- return "a3";
- case BufferParams::PAPER_A4PAPER:
- return "a4";
- case BufferParams::PAPER_A5PAPER:
- return "a5";
- case BufferParams::PAPER_B5PAPER:
- return "b5";
- case BufferParams::PAPER_EXECUTIVEPAPER:
- return "foolscap";
- case BufferParams::PAPER_LEGALPAPER:
- return "legal";
- case BufferParams::PAPER_USLETTER:
- default:
- return "letter";
- }
-}
Formats formats;
class Buffer;
-string const papersize(Buffer const * buffer) ;
-
class Format {
public:
///
#include "ButtonController.h"
#include "buffer.h"
+#include "bufferparams.h"
#include "gettext.h"
#include "helper_funcs.h"
#include "PrinterParams.h"
#include "exporter.h"
-#include "converter.h"
#include "frontends/Alert.h"
command += lyxrc.print_extra_options + ' ';
}
- command += converters.dvips_options(buffer()) + ' ';
+ command += buffer()->params.dvips_options() + ' ';
if (!Exporter::Export(buffer(), "dvi", true)) {
showPrintError(buffer()->fileName());