khtml::RenderFlow

#include <render_flow.h>

Inherits khtml::RenderBox.

Inherited by khtml::RenderBlock, and khtml::RenderInline.

Public Member Functions

 RenderFlow (DOM::NodeImpl *node)
 
void addChild (RenderObject *newChild, RenderObject *beforeChild=nullptr) override
 
virtual void addChildToFlow (RenderObject *newChild, RenderObject *beforeChild)=0
 
void addChildWithContinuation (RenderObject *newChild, RenderObject *beforeChild)
 
void attachLineBox (InlineFlowBox *box)
 
RenderFlowcontinuation () const override
 
RenderFlowcontinuationBefore (const RenderObject *beforeChild)
 
InlineBox * createInlineBox (bool makePlaceHolderBox, bool isRootLineBox) override
 
void deleteInlineBoxes (RenderArena *arena=nullptr) override
 
virtual void deleteLastLineBox (RenderArena *arena=nullptr)
 
void detach () override
 
void dirtyInlineBoxes (bool fullLayout, bool isRootLineBox=false) override
 
void dirtyLinesFromChangedChild (RenderObject *child) override
 
void extractLineBox (InlineFlowBox *box)
 
InlineFlowBox * firstLineBox () const
 
QList< QRectFgetClientRects () override
 
int highestPosition (bool includeOverflowInterior=true, bool includeSelf=true) const override
 
bool hitTestLines (NodeInfo &i, int x, int y, int tx, int ty, HitTestAction hitTestAction)
 
InlineFlowBox * lastLineBox () const
 
int leftmostPosition (bool includeOverflowInterior=true, bool includeSelf=true) const override
 
int lowestPosition (bool includeOverflowInterior=true, bool includeSelf=true) const override
 
void paintLines (PaintInfo &i, int _tx, int _ty)
 
void removeInlineBox (InlineBox *box) override
 
void repaint (Priority p=NormalPriority) override
 
int rightmostPosition (bool includeOverflowInterior=true, bool includeSelf=true) const override
 
void setContinuation (RenderFlow *c)
 

Static Public Member Functions

static RenderFlowcreateFlow (DOM::NodeImpl *node, RenderStyle *style, RenderArena *arena)
 

Protected Attributes

RenderFlowm_continuation
 
InlineFlowBox * m_firstLineBox
 
InlineFlowBox * m_lastLineBox
 

Detailed Description

all geometry managing stuff is only in the block elements.

Inline elements don't layout themselves, but the whole paragraph gets flowed by the surrounding block element. This is, because one needs to know the whole paragraph to calculate bidirectional behaviour of text, so putting the layouting routines in the inline elements is impossible.

Definition at line 44 of file render_flow.h.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon May 25 2020 22:52:18 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.