X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2Fxarray.h;h=b67d3b96815d1409665d53cb53ec1be8ed29df45;hb=970f0247f7d3ebbabc1348549ef4bd8d9b335545;hp=7bc0bc826914eba521c18792adfcf7f1c8b47b74;hpb=adf2ae083512c8b3d5c7df5c440c57b4b86f6fef;p=lyx.git diff --git a/src/mathed/xarray.h b/src/mathed/xarray.h index 7bc0bc8269..b67d3b9681 100644 --- a/src/mathed/xarray.h +++ b/src/mathed/xarray.h @@ -5,6 +5,7 @@ #include #include "array.h" +#include "math_metricsinfo.h" #ifdef __GNUG__ #pragma interface @@ -15,23 +16,26 @@ class Painter; class MathXArray { public: + /// + typedef MathArray::size_type size_type; + /// + typedef MathArray::const_iterator const_iterator; + /// MathXArray(); /// - void Metrics(MathStyles st); + void metrics(MathMetricsInfo const & st) const; /// - void draw(Painter & pain, int x, int y); + void draw(Painter & pain, int x, int y) const; /// int xo() const { return xo_; } /// int yo() const { return yo_; } /// - int pos2x(int pos) const; - /// - int x2pos(int pos) const; + int pos2x(size_type pos) const; /// - int width(int pos) const; + size_type x2pos(int pos) const; /// int ascent() const { return ascent_; } @@ -41,24 +45,27 @@ public: int height() const { return ascent_ + descent_; } /// int width() const { return width_; } + + /// + const_iterator begin() const { return data_.begin(); } /// - MathStyles style() const { return style_; } + const_iterator end() const { return data_.end(); } - +public: /// MathArray data_; /// - int width_; + mutable int width_; /// - int ascent_; + mutable int ascent_; /// - int descent_; + mutable int descent_; /// - int xo_; + mutable int xo_; /// - int yo_; + mutable int yo_; /// - MathStyles style_; + mutable MathMetricsInfo size_; }; std::ostream & operator<<(std::ostream & os, MathXArray const & ar);