#include <vector>
#include "insetcommand.h"
+#include "support/filename.h"
+
+
+namespace lyx {
+
/** Used to insert BibTeX's information
*/
class InsetBibtex : public InsetCommand {
///
InsetBibtex(InsetCommandParams const &);
///
- ~InsetBibtex();
- ///
- std::auto_ptr<InsetBase> clone() const;
- /// 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; }
///
- InsetOld::Code lyxCode() const { return InsetOld::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 * buffer,
- std::vector<std::pair<string,string> > & keys) 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 &);
+ ///
+ void validate(LaTeXFeatures &) const;
+protected:
+ virtual void doDispatch(LCursor & cur, FuncRequest & cmd);
+private:
+ virtual std::auto_ptr<InsetBase> doClone() const;
+
};
+
+} // namespace lyx
+
#endif // INSET_BIBTEX_H