X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetref.h;h=46a82f206bc239eaf87a37f798a9ff1b122ee944;hb=4a5b7a5952ad2381fcdf4830511293e184c7c5a1;hp=c1e12cc90b710bdfd5c575ec232186b4dda46fbd;hpb=245007468d0bb2aaa65dea4feab571b744dd9dec;p=lyx.git diff --git a/src/insets/insetref.h b/src/insets/insetref.h index c1e12cc90b..46a82f206b 100644 --- a/src/insets/insetref.h +++ b/src/insets/insetref.h @@ -16,85 +16,58 @@ #endif #include "insetcommand.h" -#include "buffer.h" struct LaTeXFeatures; /** The reference inset */ -class InsetRef: public InsetCommand { +class InsetRef : public InsetCommand { public: - /// - enum Ref_Flags { + struct type_info { /// - REF = 0, + string latex_name; /// - PAGE_REF, + string gui_name; /// - VREF, - /// - VPAGE_REF, - /// - PRETTY_REF, - /// - REF_LAST = PRETTY_REF, - /// - REF_FIRST = REF + string short_gui_name; }; - + static type_info types[]; /// - InsetRef() : InsetCommand("ref") { flag = InsetRef::REF; } + static int getType(string const & name); /// - InsetRef(string const &, Buffer *); + static string const & getName(int type); + + /// + InsetRef(InsetCommandParams const &, Buffer const &, bool same_id = false); /// - InsetRef(InsetCommand const &, Buffer *); - /// - Inset * Clone() const { - return new InsetRef (getCommand(), master); + virtual Inset * clone(Buffer const & buffer, bool same_id = false) const { + return new InsetRef(params(), buffer, same_id); } /// - Inset::Code LyxCode() const { return Inset::REF_CODE; } + string const getScreenLabel(Buffer const *) const; /// - void Edit(BufferView *, int, int, unsigned int); + EDITABLE editable() const { return IS_EDITABLE; } /// - EDITABLE Editable() const { - return IS_EDITABLE; - } - /// - bool display() const { return false; } + Inset::Code lyxCode() const { return Inset::REF_CODE; } /// - string getScreenLabel() const; + void edit(BufferView *, int, int, unsigned int); /// - void Toggle(); - /// - void gotoLabel(); + void edit(BufferView * bv, bool front = true); /// - int Latex(std::ostream &, bool fragile, bool free_spc) const; + bool display() const { return false; } /// - int Ascii(std::ostream &) const; + int latex(Buffer const *, std::ostream &, + bool fragile, bool free_spc) const; /// - int Linuxdoc(std::ostream &) const; + int ascii(Buffer const *, std::ostream &, int linelen) const; /// - int DocBook(std::ostream &) const; + int linuxdoc(Buffer const *, std::ostream &) const; /// - void Validate(LaTeXFeatures & features) const; -private: + int docbook(Buffer const *, std::ostream &) const; /// - void GenerateFlag(); - /// This function escapes 8-bit characters - string escape(string const &) const; + void validate(LaTeXFeatures & features) const; +private: /// - Ref_Flags flag; - /// - Buffer * master; + bool isLatex; }; - - -inline -void InsetRef::gotoLabel() -{ - if (master) { - master->getUser()->gotoLabel(getContents()); - } -} #endif