partial fix

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8540 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
André Pönitz 2004-03-27 12:36:38 +00:00
parent fd0fb15d42
commit 60fa184251

View 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_);
}