]> git.lyx.org Git - features.git/commitdiff
partial fix
authorAndré Pönitz <poenitz@gmx.net>
Sat, 27 Mar 2004 12:36:38 +0000 (12:36 +0000)
committerAndré Pönitz <poenitz@gmx.net>
Sat, 27 Mar 2004 12:36:38 +0000 (12:36 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8540 a592a061-630c-0410-9148-cb99ea01b6c8

src/mathed/formulamacro.C

index 348454b6385179263219241f53c9b7c9908f3409..b2db3c55f6be20c333d6fd327526b771b229eb00 100644 (file)
@@ -18,6 +18,7 @@
 
 #include "BufferView.h"
 #include "cursor.h"
+#include "debug.h"
 #include "gettext.h"
 #include "LColor.h"
 #include "lyxlex.h"
@@ -34,11 +35,12 @@ using lyx::support::bformat;
 using std::string;
 using std::auto_ptr;
 using std::ostream;
+using std::endl;
 
 
 
 InsetFormulaMacro::InsetFormulaMacro()
-       : MathNestInset(2), name_("unknown")
+       : MathNestInset(2), name_("unknownA")
 {}
 
 
@@ -51,7 +53,7 @@ InsetFormulaMacro::InsetFormulaMacro
 
 
 InsetFormulaMacro::InsetFormulaMacro(string const & s)
-       : MathNestInset(2), name_("unknown")
+       : MathNestInset(2), name_("unknownB")
 {
        std::istringstream is(s);
        read(is);
@@ -68,15 +70,16 @@ void InsetFormulaMacro::write(Buffer const &, ostream & os) const
 {
        os << "FormulaMacro ";
        WriteStream wi(os, false, false);
-       MathNestInset::write(wi);
+       tmpl()->write(wi);
 }
 
 
 int InsetFormulaMacro::latex(Buffer const &, ostream & os,
                             OutputParams const & runparams) const
 {
+       lyxerr << "InsetFormulaMacro::latex" << endl;
        WriteStream wi(os, runparams.moving_arg, true);
-       MathNestInset::write(wi);
+       tmpl()->write(wi);
        return 2;
 }
 
@@ -85,7 +88,7 @@ int InsetFormulaMacro::plaintext(Buffer const &, ostream & os,
                             OutputParams const &) const
 {
        WriteStream wi(os, false, true);
-       MathNestInset::write(wi);
+       tmpl()->write(wi);
        return 0;
 }
 
@@ -115,7 +118,6 @@ void InsetFormulaMacro::read(std::istream & is)
        auto_ptr<MathMacroTemplate> p(new MathMacroTemplate(is));
        name_ = p->name();
        MathMacroTable::create(MathAtom(p.release()));
-       //metrics();
 }
 
 
@@ -127,31 +129,14 @@ string InsetFormulaMacro::prefix() const
 
 void InsetFormulaMacro::metrics(MetricsInfo & mi, Dimension & dim) const
 {
-       MathNestInset::metrics(mi);
-       dim = cell(0).dim();
-       dim += cell(1).dim();
+       tmpl()->metrics(mi, dim);
        dim.asc += 5;
        dim.des += 5;
        dim.wid += 10 + font_metrics::width(prefix(), mi.base.font);
-       dim = dim_;
+       dim_ = dim;
 }
 
 
-#warning FIXME
-#if 0
-MathAtom const & InsetFormulaMacro::par() const
-{
-       return MathMacroTable::provide(getInsetName());
-}
-
-
-MathAtom & InsetFormulaMacro::par()
-{
-       return MathMacroTable::provide(getInsetName());
-}
-#endif
-
-
 void InsetFormulaMacro::draw(PainterInfo & p, int x, int y) const
 {
        // label
@@ -179,10 +164,14 @@ void InsetFormulaMacro::draw(PainterInfo & p, int x, int y) const
 
        pi.pain.text(x + 2, y, prefix(), font);
 
-       // formula
-#warning FIXME
-#if 0
-       par()->draw(pi, x + font_metrics::width(prefix(), p.base.font) + 5, y);
-#endif
+       // body
+       tmpl()->draw(pi, x + font_metrics::width(prefix(), p.base.font) + 5, y);
+
        setPosCache(pi, x, y);
 }
+
+
+MathAtom & InsetFormulaMacro::tmpl() const
+{
+       return MathMacroTable::provide(name_);
+}