#ifndef MATH_METRICSINFO_H
#define MATH_METRICSINFO_H
+
#include "lyxfont.h"
#include "LString.h"
-#include <boost/weak_ptr.hpp>
-
-class BufferView;
class Painter;
-class MathNestInset;
/// Standard Math Sizes (Math mode styles)
///
MathMetricsBase base;
///
- boost::weak_ptr<BufferView> view;
- ///
bool fullredraw;
};
struct MathPainterInfo {
///
- MathPainterInfo(Painter & p);
+ MathPainterInfo(Painter & pain);
///
void draw(int x, int y, char c);
// Generic base for temporarily changing things.
-// The original state gets restored when the Changer is destructed
+// The original state gets restored when the Changer is destructed.
+
template <class Struct, class Temp = Struct>
struct MathChanger {
///
-struct MathScriptChanger : public MathChanger<MathMetricsBase> {
- ///
- MathScriptChanger(MathMetricsBase & orig);
- ///
- ~MathScriptChanger();
-};
-
-
-struct MathFracChanger : public MathChanger<MathMetricsBase> {
- ///
- MathFracChanger(MathMetricsBase & orig);
- ///
- ~MathFracChanger();
-};
-
-
-
struct MathFontChanger : public MathChanger<LyXFont> {
///
MathFontChanger(LyXFont & orig, char const * font);
};
+struct MathScriptChanger : public MathStyleChanger {
+ ///
+ MathScriptChanger(MathMetricsBase & mb);
+};
+
+
+struct MathFracChanger : public MathStyleChanger {
+ ///
+ MathFracChanger(MathMetricsBase & mb);
+};
+
+
+struct MathArrayChanger : public MathStyleChanger {
+ ///
+ MathArrayChanger(MathMetricsBase & mb);
+};
+
+
+
struct MathShapeChanger : public MathChanger<LyXFont, LyXFont::FONT_SHAPE> {
///
MathShapeChanger(LyXFont & font, LyXFont::FONT_SHAPE shape);