lib

#include <matrixelement.h>

Inheritance diagram for MatrixElement:
BasicElement

Public Member Functions

 MatrixElement (uint rows=1, uint columns=1, BasicElement *parent=0)
 
 MatrixElement (const MatrixElement &)
 
virtual MatrixElement * clone ()
 
virtual bool accept (ElementVisitor *visitor)
 
virtual void entered (SequenceElement *child)
 
virtual BasicElement * goToPos (FormulaCursor *, bool &handled, const LuPixelPoint &point, const LuPixelPoint &parentOrigin)
 
virtual void calcSizes (const ContextStyle &cstyle, ContextStyle::TextStyle tstyle, ContextStyle::IndexStyle istyle, StyleAttributes &style)
 
virtual void draw (TQPainter &painter, const LuPixelRect &r, const ContextStyle &context, ContextStyle::TextStyle tstyle, ContextStyle::IndexStyle istyle, StyleAttributes &style, const LuPixelPoint &parentOrigin)
 
virtual void dispatchFontCommand (FontCommand *cmd)
 
virtual void moveLeft (FormulaCursor *cursor, BasicElement *from)
 
virtual void moveRight (FormulaCursor *cursor, BasicElement *from)
 
virtual void moveUp (FormulaCursor *, BasicElement *)
 
virtual void moveDown (FormulaCursor *, BasicElement *)
 
virtual void goInside (FormulaCursor *cursor)
 
virtual SequenceElement * getMainChild ()
 
virtual void selectChild (FormulaCursor *, BasicElement *)
 
virtual TQString toLatex ()
 
virtual TQString formulaString ()
 
uint getRows () const
 
uint getColumns () const
 
SequenceElement * elementAt (uint row, uint column)
 
- Public Member Functions inherited from BasicElement
 BasicElement (BasicElement *parent=0)
 
 BasicElement (const BasicElement &)
 
virtual bool readOnly (const BasicElement *child) const
 
virtual FormulaElement * formula ()
 
virtual const FormulaElement * formula () const
 
virtual TQChar getCharacter () const
 
virtual TokenType getTokenType () const
 
virtual bool isInvisible () const
 
LuPixelPoint widgetPos ()
 
virtual void moveHome (FormulaCursor *)
 
virtual void moveEnd (FormulaCursor *)
 
virtual void insert (FormulaCursor *, TQPtrList< BasicElement > &, Direction)
 
virtual void remove (FormulaCursor *, TQPtrList< BasicElement > &, Direction)
 
virtual void normalize (FormulaCursor *, Direction)
 
virtual bool isSenseless ()
 
virtual BasicElement * getChild (FormulaCursor *, Direction=beforeCursor)
 
virtual void childWillVanish (FormulaCursor *, BasicElement *)
 
virtual void registerTab (BasicElement *)
 
virtual KCommand * buildCommand (Container *, Request *)
 
virtual KCommand * input (Container *, TQKeyEvent *)
 
const BasicElement * getParent () const
 
BasicElement * getParent ()
 
void setParent (BasicElement *p)
 
luPixel getX () const
 
luPixel getY () const
 
void setX (luPixel x)
 
void setY (luPixel y)
 
luPixel getWidth () const
 
luPixel getHeight () const
 
void setWidth (luPixel width)
 
void setHeight (luPixel height)
 
luPixel getBaseline () const
 
void setBaseline (luPixel line)
 
luPixel axis (const ContextStyle &style, ContextStyle::TextStyle tstyle, double factor) const
 
TQDomElement getElementDom (TQDomDocument &doc)
 
virtual void writeMathML (TQDomDocument &doc, TQDomNode &parent, bool oasisFormat=false) const
 
bool buildFromDom (TQDomElement element)
 
int buildFromMathMLDom (TQDomElement element)
 
ElementType * getElementType () const
 
virtual void setElementType (ElementType *t)
 
virtual void setStyle (StyleElement *)
 

Protected Member Functions

virtual TQString getTagName () const
 
virtual void writeDom (TQDomElement element)
 
virtual TQString getElementName () const
 
virtual void writeMathMLAttributes (TQDomElement &element) const
 
virtual void writeMathMLContent (TQDomDocument &doc, TQDomElement &element, bool oasisFormat) const
 
virtual bool readAttributesFromDom (TQDomElement element)
 
virtual bool readContentFromDom (TQDomNode &node)
 
virtual bool readAttributesFromMathMLDom (const TQDomElement &element)
 
virtual int readContentFromMathMLDom (TQDomNode &node)
 
- Protected Member Functions inherited from BasicElement
bool buildChild (SequenceElement *child, TQDomNode node, TQString name)
 
double getSize (const TQString &str, SizeType *st)
 
SizeType getSpace (const TQString &str)
 

Friends

class KFCRemoveColumn
 
class KFCRemoveRow
 
class MatrixSequenceElement
 

Additional Inherited Members

- Static Public Member Functions inherited from BasicElement
static int getEvilDestructionCount ()
 

Detailed Description

A matrix.

Definition at line 38 of file matrixelement.h.

Constructor & Destructor Documentation

◆ MatrixElement() [1/2]

MatrixElement::MatrixElement ( uint  rows = 1,
uint  columns = 1,
BasicElement *  parent = 0 
)

Definition at line 272 of file matrixelement.cpp.

◆ ~MatrixElement()

MatrixElement::~MatrixElement ( )

Definition at line 297 of file matrixelement.cpp.

◆ MatrixElement() [2/2]

MatrixElement::MatrixElement ( const MatrixElement &  other)

Definition at line 302 of file matrixelement.cpp.

Member Function Documentation

◆ accept()

bool MatrixElement::accept ( ElementVisitor *  )
virtual

Visit this element.

An implementation of the visitor pattern.

Implements BasicElement.

Definition at line 329 of file matrixelement.cpp.

◆ calcSizes()

void MatrixElement::calcSizes ( const ContextStyle &  cstyle,
ContextStyle::TextStyle  tstyle,
ContextStyle::IndexStyle  istyle,
StyleAttributes &  style 
)
virtual

Calculates our width and height and our children's parentPosition.

Implements BasicElement.

Definition at line 435 of file matrixelement.cpp.

◆ clone()

virtual MatrixElement * MatrixElement::clone ( )
inlinevirtual

Implements BasicElement.

Definition at line 53 of file matrixelement.h.

◆ dispatchFontCommand()

void MatrixElement::dispatchFontCommand ( FontCommand *  cmd)
virtual

Dispatch this FontCommand to all our TextElement children.

Reimplemented from BasicElement.

Definition at line 545 of file matrixelement.cpp.

◆ draw()

void MatrixElement::draw ( TQPainter &  painter,
const LuPixelRect &  rect,
const ContextStyle &  context,
ContextStyle::TextStyle  tstyle,
ContextStyle::IndexStyle  istyle,
StyleAttributes &  style,
const LuPixelPoint &  parentOrigin 
)
virtual

Draws the whole element including its children.

The ‘parentOrigin’ is the point this element's parent starts. We can use our parentPosition to get our own origin then.

Implements BasicElement.

Definition at line 515 of file matrixelement.cpp.

◆ elementAt()

SequenceElement * MatrixElement::elementAt ( uint  row,
uint  column 
)

Definition at line 1254 of file matrixelement.cpp.

◆ entered()

void MatrixElement::entered ( SequenceElement *  child)
virtual

The cursor has entered one of our child sequences.

This is a good point to tell the user where he is.

Reimplemented from BasicElement.

Definition at line 335 of file matrixelement.cpp.

◆ formulaString()

TQString MatrixElement::formulaString ( )
virtual

Reimplemented from BasicElement.

Definition at line 1235 of file matrixelement.cpp.

◆ getColumns()

uint MatrixElement::getColumns ( ) const
inline

Definition at line 201 of file matrixelement.h.

◆ getElementName()

virtual TQString MatrixElement::getElementName ( ) const
inlineprotectedvirtual

Reimplemented from BasicElement.

Definition at line 219 of file matrixelement.h.

◆ getMainChild()

SequenceElement * MatrixElement::getMainChild ( )
virtual

We define the Main Child of a matrix to be the first row/column.

Reimplemented from BasicElement.

Definition at line 713 of file matrixelement.cpp.

◆ getRows()

uint MatrixElement::getRows ( ) const
inline

Definition at line 200 of file matrixelement.h.

◆ getTagName()

virtual TQString MatrixElement::getTagName ( ) const
inlineprotectedvirtual

Returns the tag name of this element type.

Reimplemented from BasicElement.

Definition at line 212 of file matrixelement.h.

◆ goInside()

void MatrixElement::goInside ( FormulaCursor *  cursor)
virtual

Sets the cursor inside this element to its start position.

For most elements that is the main child.

Reimplemented from BasicElement.

Definition at line 706 of file matrixelement.cpp.

◆ goToPos()

BasicElement * MatrixElement::goToPos ( FormulaCursor *  cursor,
bool &  handled,
const LuPixelPoint &  point,
const LuPixelPoint &  parentOrigin 
)
virtual

Sets the cursor and returns the element the point is in.

The handled flag shows whether the cursor has been set. This is needed because only the innermost matching element is allowed to set the cursor.

Reimplemented from BasicElement.

Definition at line 341 of file matrixelement.cpp.

◆ moveDown()

void MatrixElement::moveDown ( FormulaCursor *  cursor,
BasicElement *  from 
)
virtual

Enters this element while moving down starting inside the element ‘from’.

Searches for a cursor position inside this element or below it.

Reimplemented from BasicElement.

Definition at line 675 of file matrixelement.cpp.

◆ moveLeft()

void MatrixElement::moveLeft ( FormulaCursor *  cursor,
BasicElement *  from 
)
virtual

Enters this element while moving to the left starting inside the element ‘from’.

Searches for a cursor position inside this element or to the left of it.

Reimplemented from BasicElement.

Definition at line 571 of file matrixelement.cpp.

◆ moveRight()

void MatrixElement::moveRight ( FormulaCursor *  cursor,
BasicElement *  from 
)
virtual

Enters this element while moving to the right starting inside the element ‘from’.

Searches for a cursor position inside this element or to the right of it.

Reimplemented from BasicElement.

Definition at line 607 of file matrixelement.cpp.

◆ moveUp()

void MatrixElement::moveUp ( FormulaCursor *  cursor,
BasicElement *  from 
)
virtual

Enters this element while moving up starting inside the element ‘from’.

Searches for a cursor position inside this element or above it.

Reimplemented from BasicElement.

Definition at line 643 of file matrixelement.cpp.

◆ readAttributesFromDom()

bool MatrixElement::readAttributesFromDom ( TQDomElement  element)
protectedvirtual

Reads our attributes from the element.

Returns false if it failed.

Reimplemented from BasicElement.

Definition at line 789 of file matrixelement.cpp.

◆ readAttributesFromMathMLDom()

bool MatrixElement::readAttributesFromMathMLDom ( const TQDomElement &  element)
protectedvirtual

Reads our attributes from the MathML element.

Returns false if it failed.

Reimplemented from BasicElement.

Definition at line 861 of file matrixelement.cpp.

◆ readContentFromDom()

bool MatrixElement::readContentFromDom ( TQDomNode &  node)
protectedvirtual

Reads our content from the node.

Sets the node to the next node that needs to be read. Returns false if it failed.

Reimplemented from BasicElement.

Definition at line 832 of file matrixelement.cpp.

◆ readContentFromMathMLDom()

int MatrixElement::readContentFromMathMLDom ( TQDomNode &  node)
protectedvirtual

Reads our content from the MathML node.

Sets the node to the next node that needs to be read. It is sometimes needed to read more than one node (e. g. for fence operators). Returns the number of nodes processed or -1 if it failed.

Reimplemented from BasicElement.

Definition at line 1118 of file matrixelement.cpp.

◆ selectChild()

void MatrixElement::selectChild ( FormulaCursor *  cursor,
BasicElement *  child 
)
virtual

Inserts all new children at the cursor position.

Places the cursor according to the direction. Removes all selected children and returns them. Places the cursor to where the children have been. Moves the cursor to a normal place where new elements might be inserted. Sets the cursor to select the child. The mark is placed before, the position behind it.

Reimplemented from BasicElement.

Definition at line 718 of file matrixelement.cpp.

◆ toLatex()

TQString MatrixElement::toLatex ( )
virtual

Moves the cursor away from the given child.

The cursor is guaranteed to be inside this element. Returns wether the element has no more useful children (except its main child) and should therefore be replaced by its main child's content.

Returns
the latex representation of the element and of the element's children

Reimplemented from BasicElement.

Definition at line 1208 of file matrixelement.cpp.

◆ writeDom()

void MatrixElement::writeDom ( TQDomElement  element)
protectedvirtual

Appends our attributes to the dom element.

Reimplemented from BasicElement.

Definition at line 764 of file matrixelement.cpp.

◆ writeMathMLAttributes()

void MatrixElement::writeMathMLAttributes ( TQDomElement &  element) const
protectedvirtual

Reimplemented from BasicElement.

Definition at line 1259 of file matrixelement.cpp.

◆ writeMathMLContent()

void MatrixElement::writeMathMLContent ( TQDomDocument &  doc,
TQDomElement &  element,
bool  oasisFormat 
) const
protectedvirtual

Reimplemented from BasicElement.

Definition at line 1767 of file matrixelement.cpp.

Friends And Related Symbol Documentation

◆ KFCRemoveColumn

friend class KFCRemoveColumn
friend

Definition at line 39 of file matrixelement.h.

◆ KFCRemoveRow

friend class KFCRemoveRow
friend

Definition at line 40 of file matrixelement.h.

◆ MatrixSequenceElement

friend class MatrixSequenceElement
friend

Definition at line 41 of file matrixelement.h.


The documentation for this class was generated from the following files: