]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_diminset.C
Andreas' patch to prevent crash on click on previewd inset
[lyx.git] / src / mathed / math_diminset.C
index c1640dbb7b589fd74f42727143f881d74f0b9c34..939e4b89a82a63b41da6dc726a9c665f5bb683fb 100644 (file)
@@ -1,22 +1,44 @@
+/**
+ * \file math_diminset.C
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author André Pönitz
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
+#include <config.h>
 
 #include "math_diminset.h"
-#include "Lsstream.h"
-#include "textpainter.h"
+#include "coordcache.h"
+#include "debug.h"
+
+
+MathDimInset::MathDimInset()
+{}
+
+
+int MathDimInset::ascent() const
+{
+       return dim_.asc;
+}
+
+
+int MathDimInset::descent() const
+{
+       return dim_.des;
+}
 
 
-void MathDimInset::metricsT(TextMetricsInfo const &) const
+int MathDimInset::width() const
 {
-       std::ostringstream os;
-       os << *this;
-       width_   = int(os.str().size());
-       ascent_  =      1;
-       descent_ = 0;
+       return dim_.wid;
 }
 
 
-void MathDimInset::drawT(TextPainter & pain, int x, int y) const
+void MathDimInset::setPosCache(PainterInfo const &, int x, int y) const
 {
-       std::ostringstream os;
-       os << *this;
-       pain.draw(x, y, os.str().c_str());
+       //lyxerr << "MathDimInset: cache to " << x << " " << y << std::endl;
+       theCoords.insets().add(this, x, y);
 }