X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FBiblioInfo.h;h=f4051bf2251a7b526d0de0306bdae7971e1db753;hb=9e645a5cfc9d6c3e66d627002e68384c92c4d0b8;hp=ddf1daa5e926bcb29be5bc033b0d5816da689244;hpb=4c0073cd03021da6cefb718cb777a5e1f944afd1;p=lyx.git diff --git a/src/BiblioInfo.h b/src/BiblioInfo.h index ddf1daa5e9..f4051bf225 100644 --- a/src/BiblioInfo.h +++ b/src/BiblioInfo.h @@ -6,7 +6,7 @@ * * \author Angus Leeming * \author Herbert Voß - * \author Richard Heck + * \author Richard Kimberly Heck * \author Julien Rioux * * Full author contact details are available in file CREDITS. @@ -17,9 +17,6 @@ #include "support/docstring.h" -#include "BufferParams.h" -#include "Citation.h" - #include #include #include @@ -28,6 +25,10 @@ namespace lyx { class Buffer; +class BufferParams; +class CitationStyle; +class CiteItem; +class XMLStream; /// \param latex_str a LaTeX command, "cite", "Citep*", etc CitationStyle citationStyleFromString(std::string const & latex_str, @@ -75,9 +76,10 @@ public: /// \return formatted BibTeX data suitable for framing. /// \param vector of pointers to crossref/xdata information docstring const & getInfo(BibTeXInfoList const & xrefs, - Buffer const & buf, CiteItem const & ci) const; + Buffer const & buf, CiteItem const & ci, + docstring const & format = docstring()) const; /// \return formatted BibTeX data for a citation label - docstring const getLabel(BibTeXInfoList const xrefs, + docstring const getLabel(BibTeXInfoList const & xrefs, Buffer const & buf, docstring const & format, CiteItem const & ci, bool next = false, bool second = false) const; /// @@ -167,6 +169,8 @@ private: mutable docstring info_; /// a cache for getInfo(richtext = true) mutable docstring info_richtext_; + /// cache for last format pattern + mutable docstring format_; /// docstring cite_number_; /// @@ -227,7 +231,7 @@ public: /// output any richtext tags marked in the citation format and escape < and > /// elsewhere, and the general output context. docstring const getInfo(docstring const & key, Buffer const & buf, - CiteItem const & ci) const; + CiteItem const & ci, docstring const & format = docstring()) const; /// \return formatted BibTeX data for citation labels. /// Citation labels can have more than one key. docstring const getLabel(std::vector keys, Buffer const & buf,