Scribus
Open source desktop publishing at your fingertips
LineControl Struct Reference
Collaboration diagram for LineControl:

Public Member Functions

void init (double w, double h, const MarginStruct &extra, double lCorr)
 remember frame dimensions and offsets
 
void initColumns (double width, double gap)
 start at column 0
 
void nextColumn (double asce=0.0)
 move position to next column
 
bool isEndOfCol (double morespace=0)
 
void startLine (int first)
 
void rememberShrinkStretch (QChar ch, double wide, const ParagraphStyle &style)
 called when glyphs are placed on the line
 
void rememberBreak (int index, double pos, double morespace=0)
 called when a possible break is passed
 
void breakLine (const StoryText &itemText, const ParagraphStyle &style, FirstLineOffsetPolicy offsetPolicy, int last)
 called when a mandatory break is found
 
void finishLine (double endX)
 use the last remembered break to set line width and itemrange
 
int restartRow (bool recalcY)
 
int restartLine (bool recalcY, bool add)
 
bool isEndOfLine (double moreSpace=0)
 
double endOfLine (const QRegion &shape, double morespace, int yAsc, int yDesc)
 Keep old endOfLine code for reference. More...
 
double getLineAscent (const StoryText &itemText)
 
double getLineDescent (const StoryText &itemText)
 
double getLineHeight (const StoryText &itemText)
 
void updateHeightMetrics (const StoryText &itemText)
 

Public Attributes

LineSpec line
 
int itemsInLine
 
int hyphenCount
 
double colWidth
 
double colGap
 
double colLeft
 
double colRight
 
int column
 
bool startOfCol
 
bool hasDropCap
 
bool afterOverflow
 
bool addLine
 
bool recalculateY
 
bool lastInRowLine
 
bool addLeftIndent
 
bool wasFirstInRow
 
double leftIndent
 
double rightMargin
 
double mustLineEnd
 
int restartIndex
 
int restartRowIndex
 
double restartX
 
double rowDesc
 
double ascend
 
double descend
 
double width
 
double xPos
 
double yPos
 
int breakIndex
 
double breakXPos
 
double maxShrink
 
double maxStretch
 

Detailed Description

fields which describe how the current line is placed into the frame

Member Function Documentation

double LineControl::endOfLine ( const QRegion &  shape,
double  morespace,
int  yAsc,
int  yDesc 
)
inline

Keep old endOfLine code for reference.

find x position where this line must end

void LineControl::startLine ( int  first)
inline

init fields for a new line at current position


The documentation for this struct was generated from the following file: