#pragma interface
#endif
-#include "mathed/formulabase.h"
+#include "formulabase.h"
#include "math_defs.h"
+#include "math_atom.h"
-class MathMatrixInset;
+class MathHullInset;
///
class InsetFormula : public InsetFormulaBase {
///
explicit InsetFormula(MathInsetTypes);
///
+ explicit InsetFormula(string const &);
+ ///
int ascent(BufferView *, LyXFont const &) const;
///
int descent(BufferView *, LyXFont const &) const;
int width(BufferView *, LyXFont const &) const;
///
void draw(BufferView *, LyXFont const &, int, float &, bool) const;
+
///
- void Write(Buffer const *, std::ostream &) const;
+ void write(Buffer const *, std::ostream &) const;
///
- void Read(Buffer const *, LyXLex & lex);
+ void read(Buffer const *, LyXLex & lex);
///
- int Latex(Buffer const *, std::ostream &,
- bool fragile, bool free_spc) const;
+ int latex(Buffer const *, std::ostream &, bool fragile, bool free_spc) const;
///
- int Ascii(Buffer const *, std::ostream &, int linelen) 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 &) const;
+
///
- Inset * Clone(Buffer const &) const;
+ Inset * clone(Buffer const &, bool same_id = false) const;
///
- void Validate(LaTeXFeatures & features) const;
+ void validate(LaTeXFeatures & features) const;
///
- Inset::Code LyxCode() const;
+ Inset::Code lyxCode() const;
///
- virtual RESULT LocalDispatch(BufferView *, kb_action, string const &);
+ bool insetAllowed(Inset::Code code) const;
+ ///
+ virtual RESULT localDispatch(BufferView *, kb_action, string const &);
///
std::vector<string> const getLabelList() const;
///
- void HandleExtern(string const & arg, BufferView * bv);
+ MathInsetTypes getType() const;
///
- MathMatrixInset * par() const;
+ MathAtom const & par() const { return par_; }
///
+ MathAtom & par() { return par_; }
+
+private:
+ /// Is this a displayed environment?
bool display() const;
- ///
+ /// available in AMS only?
bool ams() const;
+ /// access to hull
+ MathHullInset * hull();
+ /// access to hull
+ MathHullInset const * hull() const;
+ ///
+ void handleExtern(string const & arg);
+
+ ///
+ MathAtom par_;
};
#endif