2001-11-05 17:08:45 +00:00
|
|
|
|
// -*- C++ -*-
|
|
|
|
|
#ifndef MATH_STRINGINSET_H
|
|
|
|
|
#define MATH_STRINGINSET_H
|
|
|
|
|
|
|
|
|
|
#include "math_inset.h"
|
|
|
|
|
|
|
|
|
|
#ifdef __GNUG__
|
|
|
|
|
#pragma interface
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/** Some cllection of chars with similar properties
|
|
|
|
|
\author Andr<EFBFBD> P<EFBFBD>nitz
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
class MathStringInset : public MathInset {
|
|
|
|
|
public:
|
|
|
|
|
///
|
|
|
|
|
MathStringInset(string const & s, MathTextCodes t);
|
|
|
|
|
///
|
|
|
|
|
MathInset * clone() const;
|
|
|
|
|
///
|
|
|
|
|
void metrics(MathMetricsInfo const & st) const;
|
|
|
|
|
///
|
|
|
|
|
void draw(Painter &, int x, int y) const;
|
|
|
|
|
///
|
|
|
|
|
void write(MathWriteInfo & os) const;
|
|
|
|
|
///
|
|
|
|
|
void writeNormal(std::ostream &) const;
|
|
|
|
|
///
|
|
|
|
|
int ascent() const;
|
|
|
|
|
///
|
|
|
|
|
int descent() const;
|
|
|
|
|
///
|
|
|
|
|
int width() const;
|
|
|
|
|
///
|
|
|
|
|
string & str();
|
2001-11-07 08:51:35 +00:00
|
|
|
|
///
|
|
|
|
|
string octavize() const;
|
|
|
|
|
///
|
|
|
|
|
string maplize() const;
|
2001-11-05 17:08:45 +00:00
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
/// the string
|
|
|
|
|
string str_;
|
|
|
|
|
/// the font to be used on screen
|
|
|
|
|
MathTextCodes code_;
|
|
|
|
|
///
|
|
|
|
|
mutable MathMetricsInfo mi_;
|
|
|
|
|
};
|
|
|
|
|
#endif
|