]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetref.h
Enable the external inset to handle unknown templates gracefully.
[lyx.git] / src / insets / insetref.h
index 3b889dda851c6cc644011d6c3f9168c50fa65ad5..41ac981dadebadf8119642a1006a785d71019ecd 100644 (file)
@@ -1,55 +1,73 @@
 // -*- 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  
+/** The reference inset
  */
 class InsetRef : public InsetCommand {
 public:
+       struct type_info {
+               ///
+               string latex_name;
+               ///
+               string gui_name;
+               ///
+               string short_gui_name;
+       };
+       static type_info types[];
+       ///
+       static int getType(string const & name);
+       ///
+       static string const & getName(int type);
+
+
+       InsetRef(InsetCommandParams const &, Buffer const &);
+
+       InsetRef(InsetRef const &);
+
+       ~InsetRef();
        ///
-       InsetRef(InsetCommandParams const &);
+       virtual Inset * clone() const {
+               return new InsetRef(*this);
+       }
        ///
-       Inset * Clone() const { return new InsetRef(params()); }
+       dispatch_result localDispatch(FuncRequest const & cmd);
        ///
-       string getScreenLabel() const;
+       string 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; }
+       Inset::Code lyxCode() const { return Inset::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 *, std::ostream &,
+                 LatexRunParams const &) const;
        ///
-       int Ascii(Buffer const *, std::ostream &) const;
+       int ascii(Buffer const *, std::ostream &, int linelen) const;
        ///
-       int Linuxdoc(Buffer const *, std::ostream &) const;
+       int linuxdoc(Buffer const *, std::ostream &) const;
        ///
-       int DocBook(Buffer const *, std::ostream &) const;
+       int docbook(Buffer const *, std::ostream &, bool mixcont) const;
        ///
-       void Validate(LaTeXFeatures & features) const;
+       void validate(LaTeXFeatures & features) const;
 private:
-       /// This function escapes 8-bit characters
-       string escape(string const &) const;
+       ///
+       bool isLatex;
 };
 #endif