+#include <config.h>
+
#ifdef __GNUG__
#pragma implementation
#endif
#include "math_kerninset.h"
-#include "support.h"
-#include "support/LOstream.h"
+#include "math_mathmlstream.h"
+#include "math_streamstr.h"
+#include "math_support.h"
+#include "lyxrc.h"
MathKernInset::MathKernInset()
{}
-void MathKernInset::write(std::ostream & os, bool) const
+void MathKernInset::metrics(MathMetricsInfo const &) const
{
- os << "\\kern" << wid_.asLatexString() << " ";
+ ascent_ = 0;
+ descent_ = 0;
+#ifdef WITH_WARNINGS
+#warning fix this once the interface to LyXLength has improved
+#endif
+ // this uses the numerical valu in pixels, even if the unit is cm or ex!
+ width_ = static_cast<int>(wid_.value());
+ width_ = (width_*static_cast<int>(lyxrc.zoom))/150;
+ //cerr << "handling kern of width " << wid_.value() << "\n";
}
-void MathKernInset::writeNormal(std::ostream & os) const
+void MathKernInset::write(WriteStream & os) const
{
- os << "[kern " << wid_.asLatexString() << "]";
+ os << "\\kern" << wid_.asLatexString() << " ";
}
-void MathKernInset::metrics(MathStyles) const
+void MathKernInset::normalize(NormalStream & os) const
{
- ascent_ = 0;
- descent_ = 0;
-#ifdef WITH_WARNINGS
-#warning fix this once the interface to LyXLength has improved
-#endif
- width_ = static_cast<int>(wid_.value());
+ os << "[kern " << wid_.asLatexString() << "]";
}
+