///
docstring const & key() const { return bib_key_; }
///
+ docstring citeKey() const { return cite_key_; }
+ ///
+ void setCiteKey(docstring const & k) { cite_key_ = k; }
+ ///
docstring entryType() const { return entry_type_; }
+ ///
+ bool isBibTeX() const { return is_bibtex_; }
private:
/// like operator[], except, if the field is empty, it will attempt
/// to get the data from xref BibTeXInfo object, which would normally
docstring entry_type_;
/// a cache for getInfo()
mutable docstring info_;
+ /// key to use when citing this entry
+ /// currently used only by XHTML output routines
+ docstring cite_key_;
/// our map: <field, value>
std::map <docstring, docstring> bimap_;
};
*/
std::vector<docstring> const
getAuthorYearStrings(docstring const & key, Buffer const & buf) const;
+ /// Collects the cited entries from buf.
+ void collectCitedEntries(Buffer const & buf);
+ /// A list of BibTeX keys cited in the current document, sorted by
+ /// the last name of the author.
+ std::vector<docstring> const & citedEntries() const { return cited_entries_; }
+ ///
+ void makeCitationLabels(Buffer const & buf);
///
const_iterator begin() const { return bimap_.begin(); }
///
std::set<docstring> entry_types_;
/// our map: keys --> BibTeXInfo
std::map<docstring, BibTeXInfo> bimap_;
+ /// a possibly sorted list of entries cited in our Buffer.
+ /// do not try to make this a vector<BibTeXInfo *> or anything of
+ /// the sort, because reloads will invalidate those pointers.
+ std::vector<docstring> cited_entries_;
};
} // namespace lyx