X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Foutput_latex.h;h=84bd800a8aadac963572407a46f13e38ba389d8a;hb=4b7f1b3c3918cd32070c72b6d8e95a888981c7a2;hp=1bd15a03ea7d6f79a8997f447ef5c3bab1cc0e22;hpb=0d43ba149a41e8860dde316ccbd4336d6b0bbdfa;p=lyx.git diff --git a/src/output_latex.h b/src/output_latex.h index 1bd15a03ea..84bd800a8a 100644 --- a/src/output_latex.h +++ b/src/output_latex.h @@ -4,7 +4,7 @@ * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * - * \author Lars Gullik Bjønnes + * \author Lars Gullik Bjønnes * * Full author contact details are available in file CREDITS. */ @@ -12,20 +12,59 @@ #ifndef OUTPUT_LATEX_H #define OUTPUT_LATEX_H -#include +#include + +#include "support/docstream.h" +#include "Paragraph.h" +#include "ParIterator.h" +#include "ParagraphList.h" + + +namespace lyx { class Buffer; +class BufferParams; +class Encoding; +class Paragraph; class OutputParams; -class ParagraphList; class TexRow; +class Text; -/// Just a wrapper for the method below, first creating the ofstream. +/// Export up to \p number optarg insets +int latexOptArgInsets(Paragraph const & par, + odocstream & os, OutputParams const & runparams, + int number); +/** Export \p paragraphs of buffer \p buf to LaTeX. + Don't use a temporary stringstream for \p os if the final output is + supposed to go to a file. + \sa Buffer::writeLaTeXSource for the reason. + */ void latexParagraphs(Buffer const & buf, - ParagraphList const & paragraphs, - std::ostream & ofs, + Text const & text, + odocstream & ofs, TexRow & texrow, OutputParams const &, std::string const & everypar = std::string()); +/** Switch the encoding of \p os from runparams.encoding to \p newEnc if needed. + \p force forces this also within non-default or -auto encodings. + \return (did the encoding change?, number of characters written to \p os) + */ +std::pair switchEncoding(odocstream & os, + BufferParams const & bparams, + OutputParams const &, Encoding const & newEnc, + bool force = false); + +/// FIXME: this should not be visible. +ParagraphList::const_iterator TeXOnePar(Buffer const & buf, + Text const & text, + ParagraphList::const_iterator pit, + odocstream & os, TexRow & texrow, + OutputParams const & runparams, + std::string const & everypar = std::string(), + int start_pos = -1, int end_pos = -1); + +} // namespace lyx + #endif