*
* Dependencies: Mathed
*
- * Copyright: (c) 1996, 1997 Alejandro Aguilar Sierra
+ * Copyright: 1996, 1997 Alejandro Aguilar Sierra
*
* Version: 0.2, Mathed & Lyx project.
*
/// This class contains the data for a macro
class MathMacro : public MathParInset
{
- public:
+public:
/// A macro can only be builded from an existing template
+ explicit
MathMacro(MathMacroTemplate *);
/// or from another macro.
+ explicit
MathMacro(MathMacro *);
///
~MathMacro();
-#ifdef USE_PAINTER
- ///
- void draw(Painter &, int, int);
-#else
- ///
- void Draw(int, int);
-#endif
- ///
+ ///
+ void draw(Painter &, int, int);
+ ///
void Metrics();
///
MathedInset * Clone();
///
- void Write(ostream &);
- ///
- void Write(string &);
+ void Write(std::ostream &, bool fragile);
///
bool setArgumentIdx(int);
///
///
bool Permit(short);
- private:
+private:
///
MathMacroTemplate * tmplate;
///
/// An argument
-class MathMacroArgument: public MathParInset
-{
- public:
+class MathMacroArgument: public MathParInset {
+public:
///
MathMacroArgument() { expnd_mode = false; number = 1; SetType(LM_OT_MACRO_ARG); }
///
+ explicit
MathMacroArgument(int);
///
- ~MathMacroArgument() { lyxerr << "help, destroyme!" << endl; }
+ ~MathMacroArgument() { lyxerr << "help, destroyme!" << std::endl; }
///
MathedInset * Clone() { return this; }
///
void Metrics();
-#ifdef USE_PAINTER
///
- void draw(Painter &, int x, int baseline);
-#else
- ///
- void Draw(int x, int baseline);
-#endif
+ void draw(Painter &, int x, int baseline);
///
- void Write(ostream &);
- ///
- void Write(string &);
+ void Write(std::ostream &, bool fragile);
///
void setNumber(int n) { number = n; }
/// Is expanded or not
void setExpand(bool e) { expnd_mode = e; }
/// Is expanded or not
bool getExpand() { return expnd_mode; }
-
- private:
+private:
///
bool expnd_mode;
///
/// This class contains the macro definition
-class MathMacroTemplate: public MathParInset
-{
- public:
+class MathMacroTemplate: public MathParInset {
+public:
/// A template constructor needs all the data
+ explicit
MathMacroTemplate(char const *, int na = 0, int f = 0);
///
~MathMacroTemplate();
-#ifdef USE_PAINTER
///
- void draw(Painter &, int, int);
-#else
- ///
- void Draw(int, int);
-#endif
+ void draw(Painter &, int, int);
///
void Metrics();
///
- void WriteDef(ostream &);
- ///
- void WriteDef(string &);
+ void WriteDef(std::ostream &, bool fragile);
/// useful for special insets
void setTCode(MathedTextCodes t) { tcode = t; }
///
/// Replace the appropriate arguments with a specific macro's data
void update(MathMacro * m = 0);
- private:
+private:
///
short flags;
///
typedef MathMacroTemplate * MathMacroTemplateP;
///
-class MathMacroTable
-{
- public:
+class MathMacroTable {
+public:
///
+ explicit
MathMacroTable(int);
///
~MathMacroTable();
///
static bool built;
- private:
+private:
///
const int max_macros;
///
inline
MathMacro * MathMacroTable::getMacro(char const * name) const
- {
- MathMacroTemplate * mt = getTemplate(name);
- return (mt) ? new MathMacro(mt): 0;
- }
+{
+ MathMacroTemplate * mt = getTemplate(name);
+ return (mt) ? new MathMacro(mt): 0;
+}
#endif