]> git.lyx.org Git - features.git/commitdiff
moved some converter/format functions to more appropriate places
authorAlfredo Braunstein <abraunst@lyx.org>
Thu, 17 Jul 2003 08:23:33 +0000 (08:23 +0000)
committerAlfredo Braunstein <abraunst@lyx.org>
Thu, 17 Jul 2003 08:23:33 +0000 (08:23 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7300 a592a061-630c-0410-9148-cb99ea01b6c8

src/ChangeLog
src/buffer_funcs.h
src/bufferparams.C
src/bufferparams.h
src/converter.C
src/converter.h
src/format.C
src/format.h
src/frontends/controllers/ControlPrint.C

index 16de892ce5cfcde5e56670f18a77288b29578838..a0b2ae05597cb8d3c890d56345cf1611d91e8510 100644 (file)
@@ -1,3 +1,9 @@
+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>
 
index 334b63f6446ffc8177df47f085cb9e42cfa27c75..ccf37d01b0784ba9758ea34863d58d347dc5243d 100644 (file)
@@ -32,9 +32,9 @@ Buffer * newFile(string const & filename, string const & templatename,
 
 ///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
index bf70b6a66d2ca086c405f39d027912e88d1b2813..7743aa2c694cbbb6f9682754546394752c72f5f6 100644 (file)
@@ -959,3 +959,60 @@ void BufferParams::readGraphicsDriver(LyXLex & lex)
                }
        }
 }
+
+
+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;
+}
index 8aa0b4a671ec8cfea82485a7a142c79f0868ef83..23ba28c271dca6c0a55d8e59c6d04fe702f24691 100644 (file)
@@ -238,6 +238,10 @@ public:
 
        /// 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
index 0f28bba8cf04fdf0b7659f9396dd8124bcf4ebd0..e585ed64e8df9042e17ea445e1139ecae2089792 100644 (file)
@@ -15,6 +15,7 @@
 #include "format.h"
 #include "lyxrc.h"
 #include "buffer.h"
+#include "bufferparams.h"
 #include "buffer_funcs.h"
 #include "bufferview_funcs.h"
 #include "errorlist.h"
@@ -62,6 +63,23 @@ string const add_options(string const & command, string const & options)
        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
 
 
@@ -115,7 +133,6 @@ bool operator<(Converter const & a, Converter const & b)
 }
 
 
-
 class compare_Converter {
 public:
        compare_Converter(string const & f, string const & t)
@@ -327,10 +344,10 @@ bool Converters::convert(Buffer const * buffer,
 
                        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)
@@ -545,56 +562,6 @@ bool Converters::runLaTeX(Buffer const * buffer, string const & command,
 }
 
 
-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()
 {
index e69a769ad03f900714d72b76d00ffd445e45f579..b247d363a34521d3db6498e7404d451168e31690 100644 (file)
@@ -108,10 +108,6 @@ public:
                     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);
index 20caaf8d69ea131527f138735225fdafeaf976c7..b8a0844bd1d1bd3d3d1d22ab05a5fe43d760f004 100644 (file)
@@ -12,6 +12,7 @@
 
 #include "format.h"
 #include "buffer.h"
+#include "buffer_funcs.h"
 #include "lyxrc.h"
 #include "debug.h"
 #include "gettext.h"
@@ -173,7 +174,7 @@ bool Formats::view(Buffer const * buffer, string const & filename,
        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;
@@ -226,30 +227,6 @@ string const Formats::extension(string const & name) const
 }
 
 
-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;
index e5e62cf9c1d44b3626cee7dee73e8118f313f85b..da7c0e3cc4fcb0c31954e4a621ed6c6839f3e8f6 100644 (file)
@@ -23,8 +23,6 @@
 
 class Buffer;
 
-string const papersize(Buffer const * buffer) ;
-
 class Format {
 public:
        ///
index 66642c6a873aca289270bcfbbb7ede00460c1547..d85c74f1d094b6898c353bf0e45be6a9e6c674bf 100644 (file)
 #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"
 
@@ -154,7 +154,7 @@ void ControlPrint::apply()
                command += lyxrc.print_extra_options + ' ';
        }
 
-       command += converters.dvips_options(buffer()) + ' ';
+       command += buffer()->params.dvips_options() + ' ';
 
        if (!Exporter::Export(buffer(), "dvi", true)) {
                showPrintError(buffer()->fileName());