lyx_mirror/src/mathed/math_support.h

61 lines
1.9 KiB
C
Raw Normal View History

// -*- C++ -*-
#ifndef MATH_SUPPORT_H
#define MATH_SUPPORT_H
#include "math_defs.h"
#include "LString.h"
class Painter;
class latexkeys;
class MathMetricsInfo;
extern char const * latex_mathspace[];
int mathed_char_height(MathTextCodes type, MathMetricsInfo const & size,
unsigned char c, int & asc, int & des);
void mathed_char_dim(MathTextCodes type, MathMetricsInfo const & size,
unsigned char c, int & asc, int & des, int & wid);
int mathed_char_width(MathTextCodes type, MathMetricsInfo const & size,
unsigned char c);
int mathed_char_ascent(MathTextCodes type, MathMetricsInfo const & size,
unsigned char c);
int mathed_char_descent(MathTextCodes type, MathMetricsInfo const & size,
unsigned char c);
void mathed_draw_deco(Painter & pain, int x, int y, int w, int h,
string const & name);
void mathed_string_dim(MathTextCodes type, MathMetricsInfo const & size,
string const & s, int & asc, int & des, int & wid);
int mathed_string_height(MathTextCodes type, MathMetricsInfo const & size,
string const & s, int & asc, int & des);
int mathed_string_width(MathTextCodes type, MathMetricsInfo const & size,
string const & s);
int mathed_string_ascent(MathTextCodes type, MathMetricsInfo const & size,
string const & s);
int mathed_string_descent(MathTextCodes type, MathMetricsInfo const & size,
string const & s);
void drawStr(Painter & pain, MathTextCodes type, MathMetricsInfo const & siz,
int x, int y, string const & s);
void drawChar(Painter & pain, MathTextCodes type, MathMetricsInfo const & siz,
int x, int y, char c);
void math_font_max_dim(MathTextCodes code, MathMetricsInfo const & siz,
int & asc, int & desc);
bool math_font_available(MathTextCodes code);
// decrease math size for super- and subscripts
void smallerStyleScript(MathMetricsInfo &);
// decrease math size for fractions
void smallerStyleFrac(MathMetricsInfo & st);
char const * math_font_name(MathTextCodes type);
#endif