#ifndef MATH_METRICSINFO_H
#define MATH_METRICSINFO_H
+#ifdef __GNUG__
+#pragma interface
+#endif
+
#include "lyxfont.h"
#include "LString.h"
// 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);