X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetref.h;h=a616a08e28a95403b517956897c9cdb45951901c;hb=e28331ed63062dea10d0a21b9ec12034b4b17b9a;hp=655602350d45b5d3713363d85c5a6bfeba53b8e1;hpb=45a03f4f67bb00f8142e465c615f348f0622eb32;p=lyx.git diff --git a/src/insets/insetref.h b/src/insets/insetref.h index 655602350d..a616a08e28 100644 --- a/src/insets/insetref.h +++ b/src/insets/insetref.h @@ -1,55 +1,75 @@ // -*- C++ -*- -/* This file is part of* - * ====================================================== +/** + * \file insetref.h + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. * - * LyX, The Document Processor - * - * Copyright 1997 LyX Team (this file was created this year) - * - * ====================================================== */ + * \author José Matos + * + * Full author contact details are available in file CREDITS. + */ #ifndef INSET_REF_H #define INSET_REF_H -#ifdef __GNUG__ -#pragma interface -#endif - #include "insetcommand.h" -struct LaTeXFeatures; -/** The reference inset - */ +namespace lyx { + + +/// The reference inset class InsetRef : public InsetCommand { public: + struct type_info { + /// + std::string latex_name; + /// + std::string gui_name; + /// + std::string short_gui_name; + }; + static type_info types[]; /// - InsetRef(InsetCommandParams const &); + static int getType(std::string const & name); /// - Inset * Clone() const { return new InsetRef(params()); } + static std::string const & getName(int type); + + + InsetRef(InsetCommandParams const &, Buffer const &); + /// - string const getScreenLabel() const; + docstring const getScreenLabel(Buffer const &) const; /// - EDITABLE Editable() const { return IS_EDITABLE; } + EDITABLE editable() const { return IS_EDITABLE; } /// - Inset::Code LyxCode() const { return Inset::REF_CODE; } + Code lyxCode() const { return REF_CODE; } /// - void Edit(BufferView *, int, int, unsigned int); - /// bool display() const { return false; } /// - int Latex(Buffer const *, std::ostream &, - bool fragile, bool free_spc) const; + int latex(Buffer const &, odocstream &, OutputParams const &) const; /// - int Ascii(Buffer const *, std::ostream &) const; + int plaintext(Buffer const &, odocstream &, OutputParams const &) const; /// - int Linuxdoc(Buffer const *, std::ostream &) const; + int docbook(Buffer const &, odocstream &, OutputParams const &) const; + /// the string that is passed to the TOC + virtual int textString(Buffer const &, odocstream &, + OutputParams const &) const; /// - int DocBook(Buffer const *, std::ostream &) const; + void validate(LaTeXFeatures & features) const; +protected: + InsetRef(InsetRef const &); + /// - void Validate(LaTeXFeatures & features) const; + virtual void doDispatch(LCursor & cur, FuncRequest & cmd); private: - /// This function escapes 8-bit characters - string const escape(string const &) const; + virtual std::auto_ptr doClone() const { + return std::auto_ptr(new InsetRef(*this)); + } + /// + bool isLatex; }; + +} // namespace lyx + #endif