2002-02-08 08:03:38 +00:00
|
|
|
// -*- C++ -*-
|
|
|
|
#ifndef MATH_XYARROWINSET_H
|
|
|
|
#define MATH_ARROWINSET_H
|
|
|
|
|
|
|
|
#include "math_nestinset.h"
|
|
|
|
|
|
|
|
#ifdef __GNUG__
|
|
|
|
#pragma interface
|
|
|
|
#endif
|
|
|
|
|
2002-02-11 08:19:02 +00:00
|
|
|
// for the \ar stuff in \xymatrix
|
|
|
|
|
|
|
|
class MathXYMatrixInset;
|
2002-02-08 08:03:38 +00:00
|
|
|
|
|
|
|
class MathXYArrowInset : public MathNestInset {
|
2002-03-21 17:42:56 +00:00
|
|
|
public:
|
2002-02-08 08:03:38 +00:00
|
|
|
///
|
|
|
|
MathXYArrowInset();
|
|
|
|
///
|
|
|
|
MathInset * clone() const;
|
|
|
|
///
|
2002-05-30 07:09:54 +00:00
|
|
|
void metrics(MathMetricsInfo & st) const;
|
2002-02-08 08:03:38 +00:00
|
|
|
///
|
2002-05-30 07:09:54 +00:00
|
|
|
void draw(MathPainterInfo & pain, int x, int y) const;
|
2002-02-11 08:19:02 +00:00
|
|
|
///
|
2002-02-08 08:03:38 +00:00
|
|
|
MathXYArrowInset * asXYArrowInset() { return this; }
|
|
|
|
|
2002-02-11 08:19:02 +00:00
|
|
|
///
|
|
|
|
void normalize();
|
2002-02-08 08:03:38 +00:00
|
|
|
///
|
|
|
|
void write(WriteStream & os) const;
|
|
|
|
///
|
|
|
|
void normalize(NormalStream &) const;
|
2002-02-11 08:19:02 +00:00
|
|
|
|
|
|
|
public:
|
|
|
|
///
|
|
|
|
MathXYMatrixInset const * targetMatrix() const;
|
|
|
|
///
|
|
|
|
MathXArray const & targetCell() const;
|
|
|
|
///
|
|
|
|
MathXArray const & sourceCell() const;
|
|
|
|
|
|
|
|
///
|
|
|
|
bool up_;
|
|
|
|
///
|
|
|
|
mutable MathMetricsInfo mi_;
|
2002-03-19 16:55:58 +00:00
|
|
|
///
|
|
|
|
mutable LyXFont font_;
|
|
|
|
///
|
|
|
|
mutable MathXYMatrixInset const * target_;
|
2002-02-08 08:03:38 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|