X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2FMathMacroArgument.cpp;h=2e6b0e2275e46bd49a531c99528335790a55be79;hb=c56d524cd6af5d0ed0d50fef51ab434ce418d1e0;hp=01f9a1c9b5a805bf4723722c1470fc5c387d5539;hpb=8a45e185dc2a2ed756176be9229702c524a36872;p=lyx.git diff --git a/src/mathed/MathMacroArgument.cpp b/src/mathed/MathMacroArgument.cpp index 01f9a1c9b5..2e6b0e2275 100644 --- a/src/mathed/MathMacroArgument.cpp +++ b/src/mathed/MathMacroArgument.cpp @@ -4,7 +4,7 @@ * Licence details can be found in the file COPYING. * * \author Alejandro Aguilar Sierra - * \author André Pönitz + * \author André Pönitz * * Full author contact details are available in file CREDITS. */ @@ -14,22 +14,19 @@ #include "MathMacroArgument.h" #include "MathStream.h" #include "MathSupport.h" -#include "debug.h" +#include "support/debug.h" -namespace lyx { - -using std::endl; -using std::size_t; +namespace lyx { -MathMacroArgument::MathMacroArgument(size_t n) +MathMacroArgument::MathMacroArgument(int n) : number_(n) { if (n < 1 || n > 9) { - lyxerr << "MathMacroArgument::MathMacroArgument: wrong Argument id: " - << n << endl; + LYXERR0("MathMacroArgument::MathMacroArgument: wrong Argument id: " << n); } + // The profiler tells us not to use // str_ = '#' + convert(n); // so we do the conversion of n to ASCII manually. @@ -46,19 +43,26 @@ Inset * MathMacroArgument::clone() const } +void MathMacroArgument::setNumber(int n) +{ + if (n < 1 || n > 9) { + LYXERR0("MathMacroArgument::setNumber: wrong Argument id: " << n); + } + + number_ = n; + str_[1] = '0' + n; +} + + void MathMacroArgument::write(WriteStream & os) const { os << str_; } -bool MathMacroArgument::metrics(MetricsInfo & mi, Dimension & dim) const +void MathMacroArgument::metrics(MetricsInfo & mi, Dimension & dim) const { - mathed_string_dim(mi.base.font, str_, dim); - if (dim_ == dim) - return false; - dim_ = dim; - return true; + metricsStrRedBlack(mi, dim, str_); }