]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/MathMacro.h
last commit was incomplete... not sure how I managed this..
[lyx.git] / src / mathed / MathMacro.h
index 2c455e44c077b59068fc91d529d68eff39dc193e..c0a9c7d4c0386ed95ddd068d7ce27741a473e4cb 100644 (file)
@@ -16,7 +16,7 @@
 #include "InsetMathNest.h"
 #include "MathData.h"
 #include "InsetMathNest.h"
-#include "MathMacroTable.h"
+#include "MacroTable.h"
 
 
 namespace lyx {
@@ -37,21 +37,25 @@ public:
        void drawDecoration(PainterInfo & pi, int x, int y) const
        { drawMarkers2(pi, x, y); }
        ///
-       bool metrics(MetricsInfo & mi, Dimension & dim) const;
+       void metrics(MetricsInfo & mi, Dimension & dim) const;
        /// get cursor position
        void cursorPos(BufferView const & bv, CursorSlice const & sl,
                bool boundary, int & x, int & y) const;
        ///
-       InsetBase * editXY(Cursor & cur, int x, int y);
+       Inset * editXY(Cursor & cur, int x, int y);
        /// target pos when we enter the inset from the left by pressing "Right"
        bool idxFirst(Cursor &) const;
        /// target pos when we enter the inset from the right by pressing "Left"
        bool idxLast(Cursor &) const;
        ///
+       bool idxUpDown(Cursor & cur, bool up) const;
+       ///
        virtual bool notifyCursorLeaves(Cursor &);
        ///
        docstring name() const;
        ///
+       int kerning() const { return kerning_; }
+       ///
        void setExpansion(MathData const & exp, MathData const & args) const;
 
        ///
@@ -69,11 +73,9 @@ public:
        void infoize2(odocstream &) const;
 
 private:
-       virtual std::auto_ptr<InsetBase> doClone() const;
+       virtual Inset * clone() const;
        ///
        void updateExpansion() const;
-       ///
-       void expand() const;
 
        /// name of macro
        docstring name_;
@@ -81,6 +83,12 @@ private:
        mutable MathData tmpl_;
        /// the macro substituted with our args
        mutable MathData expanded_;
+       ///
+       mutable MacroData macroBackup_;
+       ///
+       mutable bool editing_;
+       ///
+       mutable int kerning_;
 };