X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fgraphics%2FPreviewLoader.cpp;h=ac14fbb6a904591e9b8a0182bef5b230eb7ae3e6;hb=19b840ae23a888300f9a5c03971351b546cce93d;hp=df025e41534b88d40226d47954988dd9e89918b6;hpb=244de5d2c10a990828eafdd72283fc87742dc133;p=lyx.git diff --git a/src/graphics/PreviewLoader.cpp b/src/graphics/PreviewLoader.cpp index df025e4153..ac14fbb6a9 100644 --- a/src/graphics/PreviewLoader.cpp +++ b/src/graphics/PreviewLoader.cpp @@ -38,7 +38,6 @@ #include "support/ForkedCalls.h" #include "support/lstrings.h" -#include "support/bind.h" #include "support/TempFile.h" #include @@ -161,14 +160,13 @@ typedef map InProgressProcesses; typedef InProgressProcesses::value_type InProgressProcess; -} // namespace anon - +} // namespace namespace lyx { namespace graphics { -class PreviewLoader::Impl : public boost::signals2::trackable { +class PreviewLoader::Impl { public: /// Impl(PreviewLoader & p, Buffer const & b); @@ -189,7 +187,7 @@ public: void refreshPreviews(); /// Emit this signal when an image is ready for display. - boost::signals2::signal imageReady; + signals2::signal imageReady; Buffer const & buffer() const { return buffer_; } @@ -240,6 +238,8 @@ private: /// We don't own this static lyx::Converter const * pconverter_; + + Trackable trackable_; }; @@ -297,7 +297,7 @@ void PreviewLoader::refreshPreviews() } -boost::signals2::connection PreviewLoader::connect(slot_type const & slot) const +signals2::connection PreviewLoader::connect(slot const & slot) const { return pimpl_->imageReady.connect(slot); } @@ -378,7 +378,7 @@ void InProgress::stop() const } } -} // namespace anon +} // namespace namespace lyx { @@ -506,7 +506,7 @@ private: string const snippet_; }; -} // namespace anon +} // namespace PreviewLoader::Status PreviewLoader::Impl::status(string const & latex_snippet) const @@ -568,7 +568,7 @@ private: string const & snippet_; }; -} // namespace anon +} // namespace void PreviewLoader::Impl::remove(string const & latex_snippet) @@ -708,22 +708,17 @@ void PreviewLoader::Impl::startLoading(bool wait) << " " << quoteName(latexfile.toFilesystemEncoding()) << " --dpi " << font_scaling_factor_; - // FIXME XHTML + // FIXME XHTML // The colors should be customizable. if (!buffer_.isExporting()) { ColorCode const fg = PreviewLoader::foregroundColor(); ColorCode const bg = PreviewLoader::backgroundColor(); - cs << " --fg " << theApp()->hexName(fg) + cs << " --fg " << theApp()->hexName(fg) << " --bg " << theApp()->hexName(bg); } cs << latexparam; - if (buffer_.params().bibtex_command != "default") - cs << " --bibtex=" << quoteName(buffer_.params().bibtex_command); - else if (buffer_.params().encoding().package() == Encoding::japanese) - cs << " --bibtex=" << quoteName(lyxrc.jbibtex_command); - else - cs << " --bibtex=" << quoteName(lyxrc.bibtex_command); + cs << " --bibtex=" << quoteName(buffer_.params().bibtexCommand()); if (buffer_.params().bufferFormat() == "lilypond-book") cs << " --lilypond"; @@ -742,9 +737,10 @@ void PreviewLoader::Impl::startLoading(bool wait) } // Initiate the conversion from LaTeX to bitmap images files. - ForkedCall::SignalTypePtr - convert_ptr(new ForkedCall::SignalType); - convert_ptr->connect(bind(&Impl::finishedGenerating, this, _1, _2)); + ForkedCall::sigPtr convert_ptr = make_shared(); + convert_ptr->connect(ForkedProcess::slot([this](pid_t pid, int retval){ + finishedGenerating(pid, retval); + }).track_foreign(trackable_.p())); ForkedCall call(buffer_.filePath()); int ret = call.startScript(command, convert_ptr);