/// /// Copyright (C) 2004-2007 Andrej Vodopivec /// /// This program is free software; you can redistribute it and/or modify /// it under the terms of the GNU General Public License as published by /// the Free Software Foundation; either version 2 of the License, or /// (at your option) any later version. /// /// This program is distributed in the hope that it will be useful, /// but WITHOUT ANY WARRANTY; without even the implied warranty of /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the /// GNU General Public License for more details. /// /// /// You should have received a copy of the GNU General Public License /// along with this program; if not, write to the Free Software /// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA /// #ifndef _SUMCELL_H_ #define _SUMCELL_H_ #include "MathCell.h" enum { SM_SUM, SM_PROD }; class SumCell : public MathCell { public: SumCell(); ~SumCell(); void Destroy(); MathCell* Copy(bool all); void RecalculateSize(CellParser& parser, int fontsize, bool all); void RecalculateWidths(CellParser& parser, int fontsize, bool all); void Draw(CellParser& parser, wxPoint point, int fontsize, bool all); void SetBase(MathCell* base); void SetUnder(MathCell* under); void SetOver(MathCell* name); void SetSumStyle(int style) { m_sumStyle = style; } wxString ToString(bool all); wxString ToTeX(bool all); void SelectInner(wxRect& rect, MathCell** first, MathCell** last); protected: MathCell *m_base; MathCell *m_under; MathCell *m_over; int m_signSize; int m_signWidth; int m_sumStyle; int m_signCenter; }; #endif //_UNDERCELL_H_