2 /* This file is part of*
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright 1997 LyX Team (this file was created this year)
9 * ====================================================== */
18 #include "insetcommand.h"
22 /** The reference inset
24 class InsetRef : public InsetCommand {
27 InsetRef(InsetCommandParams const &);
29 Inset * Clone() const { return new InsetRef(params()); }
31 string getScreenLabel() const;
33 EDITABLE Editable() const { return IS_EDITABLE; }
35 Inset::Code LyxCode() const { return Inset::REF_CODE; }
37 void Edit(BufferView *, int, int, unsigned int);
39 bool display() const { return false; }
41 int Latex(Buffer const *, std::ostream &,
42 bool fragile, bool free_spc) const;
44 int Ascii(Buffer const *, std::ostream &) const;
46 int Linuxdoc(Buffer const *, std::ostream &) const;
48 int DocBook(Buffer const *, std::ostream &) const;
50 void Validate(LaTeXFeatures & features) const;
52 /// This function escapes 8-bit characters
53 string escape(string const &) const;