51 std::unique_ptr<Cell> &&num, std::unique_ptr<Cell> &&denom);
60 return m_displayedNum;
64 return m_displayedDenom;
80 void Draw(wxDC *dc, wxDC *antialiassingDC)
override;
92 wxString
ToOMML()
const override;
94 wxString
ToTeX()
const override;
95 wxString
ToXML()
const override;
102 void SetupBreakUps()
const;
108 void MakeDivideCell();
111 Cell *Num()
const {
return m_numParenthesis->GetInner(); }
113 Cell *Denom()
const {
return m_denomParenthesis->GetInner(); }
116 std::unique_ptr<ParenCell>
const m_numParenthesis;
118 std::unique_ptr<ParenCell>
const m_denomParenthesis;
120 std::unique_ptr<TextCell> m_divideOwner;
126 mutable Cell* m_displayedNum = {};
130 mutable Cell* m_displayedDenom = {};
134 mutable int m_protrusion = 0;
141 mutable int m_horizontalGapLeft = 0;
148 mutable int m_horizontalGapRight = 0;
155 void InitBitFields_FracCell()
158 m_inExponent =
false;
161 bool m_inExponent : 1 ;
The definition of the base class of all cells the worksheet consists of.
This file declares the class ParenCell.
A Type-Safe Fixed-Point Font Size.
Definition: FontAttribs.h:98
A class that carries information about the type of a cell.
Definition: Cell.h:93
The base class all cell types the worksheet can consist of are derived from.
Definition: Cell.h:142
virtual void SetCurrentPoint(wxPoint point)
Pass 2: Arrangement.
Definition: Cell.cpp:463
The configuration storage for the current worksheet.
Definition: Configuration.h:85
Definition: FracCell.h:48
wxString ToTeX() const override
Convert this cell to its LaTeX representation.
Definition: FracCell.cpp:279
bool IsOperator() const override
Answers the question if this is an operator by returning "true".
Definition: FracCell.h:88
wxString ToOMML() const override
Returns the cell's representation as OMML.
Definition: FracCell.cpp:303
Cell * GetInnerCell(size_t index) const override
Retrieve an inner cell with given index which must be less than GetInnerCellCount.
Definition: FracCell.h:57
wxString ToMatlab() const override
Convert this cell to its Matlab representation.
Definition: FracCell.cpp:246
void SetIsExponent() override
Fractions in exponents are shown in their linear form.
Definition: FracCell.cpp:320
void SetCurrentPoint(wxPoint point) override
Pass 2 (Arrange): Positions numerator, denominator, and division sign.
Definition: FracCell.cpp:142
const CellTypeInfo & GetInfo() override
Returns the information about this cell's type.
wxString ToMathML() const override
Convert this cell to a representation fit for saving in a .wxmx file.
Definition: FracCell.cpp:293
FracType
All types of fractions we support.
Definition: FracCell.h:72
wxString ToXML() const override
Convert this cell to a representation fit for saving in a .wxmx file.
Definition: FracCell.cpp:308
wxString ToString() const override
Returns the cell's representation as a string.
Definition: FracCell.cpp:211
void Recalculate(const AFontSize fontsize) const override
Recalculate the size of the cell and the difference between top and center.
Definition: FracCell.cpp:88
bool BreakUp() const override
Try to split this command into lines to make it fit on the screen.
Definition: FracCell.cpp:343
std::unique_ptr< Cell > Copy(GroupCell *group) const override
Create a copy of this cell.
void Draw(wxDC *dc, wxDC *antialiassingDC) override
Pass 3 (Paint): Renders the cell using pre-calculated coordinates.
Definition: FracCell.cpp:183
size_t GetInnerCellCount() const override
The number of inner cells - for use by the iterators.
Definition: FracCell.h:56
void SetNextToDraw(Cell *next) const override
Tells this cell which one should be the next cell to be drawn.
Definition: FracCell.cpp:360
A cell grouping input (and, if there is one, also the output) cell to a foldable item.
Definition: GroupCell.h:87