KHTML
khtml::ErgonomicEditableLineIterator Class Reference
Iterates through the editable lines of a document, in a topological order. More...
#include <khtml_caret_p.h>

Public Member Functions | |
| ErgonomicEditableLineIterator (const LineIterator &it, int x) | |
| ErgonomicEditableLineIterator () | |
| ErgonomicEditableLineIterator & | operator++ () |
| ErgonomicEditableLineIterator & | operator-- () |
Protected Member Functions | |
| void | calcAndStoreNewLine (RenderBlock *newBlock, bool toBegin) |
| void | determineTopologicalElement (RenderTableCell *oldCell, RenderObject *newObject, bool toBegin) |
Protected Attributes | |
| int | xCoor |
Detailed Description
Iterates through the editable lines of a document, in a topological order.
The differences between this and the EditableLineIterator lies in the way lines are inquired. While the latter steps through the lines in document order, the former takes into consideration ergonomics.
This is especially useful for tables. EditableLineIterator traverses all table cells from left to right, top to bottom, while this one will actually snap to the cell in the right position, and traverse only upwards/downwards, thus providing a more intuitive navigation.
Definition at line 929 of file khtml_caret_p.h.
Constructor & Destructor Documentation
| khtml::ErgonomicEditableLineIterator::ErgonomicEditableLineIterator | ( | const LineIterator & | it, |
| int | x | ||
| ) | [inline] |
Initializes a new ergonomic editable line iterator from the given one.
- Parameters:
-
it line iterator x absolute x-coordinate for cell determination
Definition at line 937 of file khtml_caret_p.h.
| khtml::ErgonomicEditableLineIterator::ErgonomicEditableLineIterator | ( | ) | [inline] |
Constructs an uninitialized iterator which must be assigned a line iterator before it can be used.
Definition at line 943 of file khtml_caret_p.h.
Member Function Documentation
| void khtml::ErgonomicEditableLineIterator::calcAndStoreNewLine | ( | RenderBlock * | newBlock, |
| bool | toBegin | ||
| ) | [inline, protected] |
initializes the iterator to point to the first previous/following editable line.
- Parameters:
-
newBlock take this as base block. toBegin true, iterate towards beginning.
Definition at line 2264 of file khtml_caret.cpp.
| void khtml::ErgonomicEditableLineIterator::determineTopologicalElement | ( | RenderTableCell * | oldCell, |
| RenderObject * | newObject, | ||
| bool | toBegin | ||
| ) | [protected] |
determines the topologically next render object.
- Parameters:
-
oldCell table cell the original object was under. newObject object to determine whether and which transition between cells is to be handled. It does not have to be an object in the correct topological cell, a simple delivery from an editable line iterator suffices. toBegin if true, iterate towards the beginning
Definition at line 2284 of file khtml_caret.cpp.
| ErgonomicEditableLineIterator & khtml::ErgonomicEditableLineIterator::operator++ | ( | ) |
seek next line.
The next line will be one that is visually situated below this line.
Reimplemented from khtml::EditableLineIterator.
Definition at line 2406 of file khtml_caret.cpp.
| ErgonomicEditableLineIterator & khtml::ErgonomicEditableLineIterator::operator-- | ( | ) |
seek previous line.
The previous line will be one that is visually situated above this line.
Reimplemented from khtml::EditableLineIterator.
Definition at line 2422 of file khtml_caret.cpp.
Member Data Documentation
int khtml::ErgonomicEditableLineIterator::xCoor [protected] |
Definition at line 931 of file khtml_caret_p.h.
The documentation for this class was generated from the following files:
KDE 4.6 API Reference