2001-10-19 11:25:48 +00:00
|
|
|
// -*- C++ -*-
|
|
|
|
#ifndef MATH_BOXINSET_H
|
|
|
|
#define MATH_BOXINSET_H
|
|
|
|
|
2001-12-18 12:21:33 +00:00
|
|
|
#include "math_gridinset.h"
|
2001-10-19 11:25:48 +00:00
|
|
|
#include "LString.h"
|
|
|
|
|
|
|
|
#ifdef __GNUG__
|
|
|
|
#pragma interface
|
|
|
|
#endif
|
|
|
|
|
|
|
|
class LyXFont;
|
|
|
|
|
|
|
|
/// Support for \\mbox
|
|
|
|
|
2001-12-18 12:21:33 +00:00
|
|
|
class MathBoxInset : public MathGridInset {
|
2001-10-19 11:25:48 +00:00
|
|
|
public:
|
|
|
|
///
|
2002-06-04 09:06:04 +00:00
|
|
|
explicit MathBoxInset(string const & name);
|
2001-10-19 11:25:48 +00:00
|
|
|
///
|
|
|
|
MathInset * clone() const;
|
2002-06-04 09:06:04 +00:00
|
|
|
///
|
|
|
|
void metrics(MathMetricsInfo & mi) const;
|
|
|
|
///
|
|
|
|
void draw(MathPainterInfo & pi, int x, int y) const;
|
2001-12-18 12:21:33 +00:00
|
|
|
/// identifies BoxInsets
|
|
|
|
MathBoxInset * asBoxInset() { return this; }
|
|
|
|
/// identifies BoxInsets
|
|
|
|
MathBoxInset const * asBoxInset() const { return this; }
|
2001-10-19 11:25:48 +00:00
|
|
|
///
|
2001-12-18 12:21:33 +00:00
|
|
|
void rebreak();
|
2001-10-19 11:25:48 +00:00
|
|
|
///
|
2001-11-09 08:35:57 +00:00
|
|
|
void write(WriteStream & os) const;
|
2001-10-19 11:25:48 +00:00
|
|
|
///
|
2002-06-04 09:06:04 +00:00
|
|
|
void normalize(NormalStream & ns) const;
|
2002-07-10 07:15:36 +00:00
|
|
|
///
|
|
|
|
void infoize(std::ostream & os) const;
|
2001-10-19 11:25:48 +00:00
|
|
|
|
|
|
|
private:
|
2001-10-22 15:37:49 +00:00
|
|
|
///
|
|
|
|
mutable MathMetricsInfo mi_;
|
2001-10-19 11:25:48 +00:00
|
|
|
///
|
|
|
|
string name_;
|
|
|
|
};
|
2002-06-24 15:37:14 +00:00
|
|
|
|
|
|
|
|
2001-10-19 11:25:48 +00:00
|
|
|
#endif
|