* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
- * \author André Pönitz
+ * \author André Pönitz
*
* Full author contact details are available in file CREDITS.
*/
#include "MathSupport.h"
#include "Dimension.h"
+#include "support/docstring.h"
namespace lyx {
-using std::string;
-using std::auto_ptr;
-
-
InsetMathKern::InsetMathKern()
{
}
}
-auto_ptr<Inset> InsetMathKern::doClone() const
+Inset * InsetMathKern::clone() const
{
- return auto_ptr<Inset>(new InsetMathKern(*this));
+ return new InsetMathKern(*this);
}
-bool InsetMathKern::metrics(MetricsInfo & mi, Dimension & dim) const
+void InsetMathKern::metrics(MetricsInfo & mi, Dimension & dim) const
{
dim.asc = 0;
dim.des = 0;
- dim.wid = wid_.inPixels(0, mathed_char_width(mi.base.font, 'M'));
- if (dim == dim_)
- return false;
- dim_ = dim;
- return true;
+ dim.wid = wid_.inPixels(mi.base);
}
void InsetMathKern::write(WriteStream & os) const
{
- os << "\\kern" << from_utf8(wid_.asLatexString()) << ' ';
+ if (wid_.empty())
+ os << "\\kern" << ' ';
+ else
+ os << "\\kern" << from_utf8(wid_.asLatexString()) << ' ';
}
void InsetMathKern::normalize(NormalStream & os) const
{
- os << "[kern " << from_utf8(wid_.asLatexString()) << ']';
+ if (wid_.empty())
+ os << "[kern]";
+ else
+ os << "[kern " << from_utf8(wid_.asLatexString()) << ']';
}