]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetSeparator.cpp
Fixup 572b06d6: reduce cache size for breakString
[lyx.git] / src / insets / InsetSeparator.cpp
index a759f1f3955f893efba50eab35fed1c4f7421b63..218172c87af761e1ade1423b71720dc69e3f4ec9 100644 (file)
@@ -18,8 +18,9 @@
 #include "FuncStatus.h"
 #include "Lexer.h"
 #include "MetricsInfo.h"
-#include "OutputParams.h"
+#include "output_docbook.h"
 #include "output_xhtml.h"
+#include "texstream.h"
 
 #include "frontends/Application.h"
 #include "frontends/FontMetrics.h"
@@ -34,12 +35,12 @@ using namespace lyx::frontend;
 
 namespace lyx {
 
-InsetSeparator::InsetSeparator() : Inset(0)
+InsetSeparator::InsetSeparator() : Inset(nullptr)
 {}
 
 
 InsetSeparator::InsetSeparator(InsetSeparatorParams const & params)
-       : Inset(0), params_(params)
+       : Inset(nullptr), params_(params)
 {}
 
 
@@ -135,7 +136,7 @@ ColorCode InsetSeparator::ColorName() const
 }
 
 
-void InsetSeparator::latex(otexstream & os, OutputParams const &) const
+void InsetSeparator::latex(otexstream & os, OutputParams const & runparams) const
 {
        // Do nothing if a paragraph break was just output
        if (!os.afterParbreak()) {
@@ -145,7 +146,10 @@ void InsetSeparator::latex(otexstream & os, OutputParams const &) const
                                break;
                        case InsetSeparatorParams::PARBREAK:
                        case InsetSeparatorParams::LATEXPAR:
-                               os << breakln << "\n";
+                               if (runparams.inDeletedInset)
+                                       os << breakln << "}\n\n{";
+                               else
+                                       os << breakln << "\n";
                                break;
                        default:
                                os << breakln << "%\n";
@@ -163,16 +167,15 @@ int InsetSeparator::plaintext(odocstringstream & os,
 }
 
 
-int InsetSeparator::docbook(odocstream & os, OutputParams const &) const
+void InsetSeparator::docbook(XMLStream & xs, OutputParams const &) const
 {
-       os << '\n';
-       return 0;
+       xs << xml::CR();
 }
 
 
-docstring InsetSeparator::xhtml(XHTMLStream & xs, OutputParams const &) const
+docstring InsetSeparator::xhtml(XMLStream & xs, OutputParams const &) const
 {
-       xs << html::CR() << html::CompTag("br") << html::CR();
+       xs << xml::CR() << xml::CompTag("br") << xml::CR();
        return docstring();
 }
 
@@ -210,7 +213,7 @@ void InsetSeparator::draw(PainterInfo & pi, int x, int y) const
                pi.pain.lines(xp, yp, 2, ColorName());
 
                if (params_.kind == InsetSeparatorParams::PARBREAK) {
-                       yp[0] += 0.25 * asc * 0.75;
+                       yp[0] += int(0.25 * asc * 0.75);
                        yp[1] = yp[0];
                        pi.pain.lines(xp, yp, 2, ColorName());
                }