]> git.lyx.org Git - lyx.git/blobdiff - src/graphics/PreviewLoader.cpp
Correct the mess introduced in r33250.
[lyx.git] / src / graphics / PreviewLoader.cpp
index 5e24fec1bc0e9d87ee069961a57bd6a3bdfe7443..f54fb6bc92ed3d1789ec3ebe3933f365c771c6af 100644 (file)
@@ -243,8 +243,6 @@ private:
        PreviewLoader & parent_;
        ///
        Buffer const & buffer_;
-       ///
-       double font_scaling_factor_;
 
        /// We don't own this
        static lyx::Converter const * pconverter_;
@@ -387,14 +385,8 @@ namespace lyx {
 namespace graphics {
 
 PreviewLoader::Impl::Impl(PreviewLoader & p, Buffer const & b)
-       : parent_(p), buffer_(b), font_scaling_factor_(0.0)
+       : parent_(p), buffer_(b)
 {
-       font_scaling_factor_ = 0.01 * lyxrc.dpi * lyxrc.zoom *
-               convert<double>(lyxrc.preview_scale_factor);
-
-       LYXERR(Debug::GRAPHICS, "The font scaling factor is "
-                               << font_scaling_factor_);
-
        if (!pconverter_){
                if (b.params().encoding().package() == Encoding::japanese)
                        pconverter_ = setConverter("lyxpreview-platex");
@@ -556,7 +548,7 @@ void PreviewLoader::Impl::startLoading()
 
        // we use the encoding of the buffer
        Encoding const & enc = buffer_.params().encoding();
-       odocfstream of;
+       ofdocstream of;
        try { of.reset(enc.iconvName()); }
        catch (iconv_codecvt_facet_exception & e) {
                LYXERR0("Caught iconv exception: " << e.what()
@@ -590,13 +582,16 @@ void PreviewLoader::Impl::startLoading()
                return;
        }
 
+       double font_scaling_factor = 0.01 * lyxrc.dpi * lyxrc.zoom
+               * lyxrc.preview_scale_factor;
+
        // The conversion command.
        ostringstream cs;
        cs << pconverter_->command << ' ' << pconverter_->to << ' '
           << quoteName(latexfile.toFilesystemEncoding()) << ' '
-          << int(font_scaling_factor_) << ' '
-          << theApp()->hexName(Color_preview) << ' '
-          << theApp()->hexName(Color_background);
+          << int(font_scaling_factor) << ' '
+          << theApp()->hexName(PreviewLoader::foregroundColor()) << ' '
+          << theApp()->hexName(PreviewLoader::backgroundColor());
 
        string const command = libScriptSearch(cs.str());
 
@@ -678,8 +673,6 @@ void PreviewLoader::Impl::finishedGenerating(pid_t pid, int retval)
 
 void PreviewLoader::Impl::dumpPreamble(odocstream & os) const
 {
-       // Why on earth is Buffer::makeLaTeXFile a non-const method?
-       Buffer & tmp = const_cast<Buffer &>(buffer_);
        // Dump the preamble only.
        // We don't need an encoding for runparams since it is not used by
        // the preamble.
@@ -688,7 +681,7 @@ void PreviewLoader::Impl::dumpPreamble(odocstream & os) const
        runparams.nice = true;
        runparams.moving_arg = true;
        runparams.free_spacing = true;
-       tmp.writeLaTeXSource(os, buffer_.filePath(), runparams, true, false);
+       buffer_.writeLaTeXSource(os, buffer_.filePath(), runparams, true, false);
 
        // FIXME! This is a HACK! The proper fix is to control the 'true'
        // passed to WriteStream below:
@@ -703,15 +696,6 @@ void PreviewLoader::Impl::dumpPreamble(odocstream & os) const
           << "\\def\\lyxlock{}\n"
           << "\n";
 
-       // Loop over the insets in the buffer and dump all the math-macros.
-       Inset & inset = buffer_.inset();
-       InsetIterator it = inset_iterator_begin(inset);
-       InsetIterator const end = inset_iterator_end(inset);
-
-       for (; it != end; ++it)
-               if (it->lyxCode() == MATHMACRO_CODE)
-                       it->latex(os, runparams);
-
        // All equation labels appear as "(#)" + preview.sty's rendering of
        // the label name
        if (lyxrc.preview_hashed_labels)