*
* \author Alejandro Aguilar Sierra
*
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
*/
#ifndef INSET_BIBTEX_H
#include <vector>
#include "insetcommand.h"
-class Buffer;
+#include "support/filename.h"
+
+
+namespace lyx {
/** Used to insert BibTeX's information
*/
///
InsetBibtex(InsetCommandParams const &);
///
- ~InsetBibtex();
- ///
- Inset * clone(Buffer const &) const {
- return new InsetBibtex(params());
- }
- /// small wrapper for the time being
- virtual dispatch_result localDispatch(FuncRequest const & cmd);
- ///
- string const getScreenLabel(Buffer const *) const;
+ docstring const getScreenLabel(Buffer const &) const;
///
EDITABLE editable() const { return IS_EDITABLE; }
///
- Inset::Code lyxCode() const { return Inset::BIBTEX_CODE; }
+ InsetBase::Code lyxCode() const { return InsetBase::BIBTEX_CODE; }
///
- int latex(Buffer const *, std::ostream &,
- LatexRunParams const &) const;
+ bool display() const { return true; }
///
- void fillWithBibKeys(Buffer const *,
- std::vector<std::pair<string,string> > &) const;
+ int latex(Buffer const &, odocstream &, OutputParams const &) const;
///
- std::vector<string> const getFiles(Buffer const &) const;
+ void fillWithBibKeys(Buffer const & buffer,
+ std::vector<std::pair<std::string, docstring> > & keys) const;
///
- bool addDatabase(string const &);
+ std::vector<support::FileName> const getFiles(Buffer const &) const;
///
- bool delDatabase(string const &);
+ bool addDatabase(std::string const &);
///
- bool display() const { return true; }
+ bool delDatabase(std::string const &);
///
- struct Holder {
- InsetBibtex * inset;
- BufferView * view;
- };
-
+ void validate(LaTeXFeatures &) const;
+protected:
+ virtual void doDispatch(LCursor & cur, FuncRequest & cmd);
private:
- ///
- Holder holder;
+ virtual std::auto_ptr<InsetBase> doClone() const;
+
};
+
+} // namespace lyx
+
#endif // INSET_BIBTEX_H