4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
16 #include "CommandInset.h"
23 class InsetMathRef
: public CommandInset
{
26 InsetMathRef(Buffer
* buf
);
28 explicit InsetMathRef(Buffer
* buf
, docstring
const & data
);
30 //void write(WriteStream & os) const;
32 void infoize(odocstream
& os
) const;
34 docstring
const screenLabel() const;
36 void validate(LaTeXFeatures
& features
) const;
38 virtual InsetMathRef
* asRefInset() { return this; }
41 int docbook(odocstream
& os
, OutputParams
const &) const;
42 /// generate something that will be understood by the Dialogs.
43 std::string
const createDialogStr(std::string
const & name
) const;
45 struct ref_type_info
{
51 docstring short_gui_name
;
53 static ref_type_info types
[];
55 static int getType(docstring
const & name
);
57 static docstring
const & getName(int type
);
59 InsetCode
lyxCode() const { return MATH_REF_CODE
; }
63 virtual void doDispatch(Cursor
& cur
, FuncRequest
& cmd
);
65 bool getStatus(Cursor
&, FuncRequest
const &, FuncStatus
&) const;
68 virtual Inset
* clone() const;