4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Lars Gullik Bjønnes
10 * Full author contact details are available in file CREDITS.
13 #ifndef INSET_NOMENCL_H
14 #define INSET_NOMENCL_H
17 #include "InsetCommand.h"
24 /** Used to insert nomenclature entries
26 class InsetNomencl : public InsetCommand {
29 InsetNomencl(Buffer * buf, InsetCommandParams const &);
32 int docbookGlossary(odocstream &) const;
34 /// \name Public functions inherited from Inset class
37 docstring toolTip(BufferView const & bv, int x, int y) const;
39 bool hasSettings() const { return true; }
40 /// Updates needed features for this inset.
41 void validate(LaTeXFeatures & features) const;
43 InsetCode lyxCode() const { return NOMENCL_CODE; }
45 int docbook(odocstream &, OutputParams const &) const;
46 /// Does nothing at the moment.
47 docstring xhtml(XHTMLStream &, OutputParams const &) const;
50 /// \name Static public methods obligated for InsetCommand derived classes
53 static ParamInfo const & findInfo(std::string const &);
55 static std::string defaultCommand() { return "nomenclature"; };
57 static bool isCompatibleCommand(std::string const & s)
58 { return s == "nomenclature"; }
62 /// \name Private functions inherited from Inset class
65 Inset * clone() const { return new InsetNomencl(*this); }
68 /// \name Private functions inherited from InsetCommand class
71 docstring screenLabel() const;
74 /// unique id for this nomenclature entry for docbook export
75 docstring nomenclature_entry_id;
79 class InsetPrintNomencl : public InsetCommand {
82 InsetPrintNomencl(Buffer * buf, InsetCommandParams const &);
84 /// \name Public functions inherited from Inset class
86 /// Updates needed features for this inset.
87 void validate(LaTeXFeatures & features) const;
89 int docbook(odocstream &, OutputParams const &) const;
90 /// Does nothing at the moment.
91 docstring xhtml(XHTMLStream &, OutputParams const &) const;
93 InsetCode lyxCode() const;
95 bool hasSettings() const { return true; }
97 DisplayType display() const { return AlignCenter; }
99 int latex(odocstream &, OutputParams const &) const;
101 docstring contextMenu(BufferView const & bv, int x, int y) const;
104 /// \name Static public methods obligated for InsetCommand derived classes
107 static ParamInfo const & findInfo(std::string const &);
109 static std::string defaultCommand() { return "printnomenclature"; };
111 static bool isCompatibleCommand(std::string const & s)
112 { return s == "printnomenclature"; }
116 /// \name Private functions inherited from Inset class
119 Inset * clone() const { return new InsetPrintNomencl(*this); }
121 bool getStatus(Cursor & cur, FuncRequest const & cmd, FuncStatus & status) const;
123 void doDispatch(Cursor & cur, FuncRequest & cmd);
126 /// \name Private functions inherited from InsetCommand class
129 docstring screenLabel() const;