kate Library API Documentation

KateRenderer Class Reference

Handles all of the work of rendering the text (used for the views and printing). More...

#include <katerenderer.h>

Collaboration diagram for KateRenderer:

Collaboration graph
[legend]
List of all members.

Public Types

enum  caretStyles { Insert, Replace }

Public Member Functions

 KateRenderer (KateDocument *doc, KateView *view=0)
 ~KateRenderer ()
void updateAttributes ()
bool drawCaret () const
void setDrawCaret (bool drawCaret)
KateRenderer::caretStyles caretStyle () const
void setCaretStyle (KateRenderer::caretStyles style)
bool showTabs () const
void setShowTabs (bool showTabs)
void setTabWidth (int tabWidth)
bool showSelections () const
void setShowSelections (bool showSelections)
void increaseFontSizes ()
void decreaseFontSizes ()
const QFontcurrentFont ()
const QFontMetricscurrentFontMetrics ()
bool isPrinterFriendly () const
void setPrinterFriendly (bool printerFriendly)
uint spaceWidth ()
uint textWidth (const KateTextLine::Ptr &, int cursorCol)
uint textWidth (const KateTextLine::Ptr &textLine, uint startcol, uint maxwidth, bool *needWrap, int *endX=0)
uint textWidth (const KateTextCursor &cursor)
uint textWidth (KateTextCursor &cursor, int xPos, uint startCol=0)
uint textPos (uint line, int xPos, uint startCol=0, bool nearest=true)
uint textPos (const KateTextLine::Ptr &, int xPos, uint startCol=0, bool nearest=true)
uint fontHeight ()
uint documentHeight ()
bool selectBounds (uint line, uint &start, uint &end, uint lineLength)
void paintTextLine (QPainter &paint, const KateLineRange *range, int xStart, int xEnd, const KateTextCursor *cursor=0L, const KateTextRange *bracketmark=0L)
KateAttributeattribute (uint pos)
KateRendererConfig * config ()
void updateConfig ()

Detailed Description

Handles all of the work of rendering the text (used for the views and printing).

Definition at line 42 of file katerenderer.h.


Member Enumeration Documentation

enum KateRenderer::caretStyles
 

Style of Caret (Insert or Replace mode).

Definition at line 48 of file katerenderer.h.

Referenced by caretStyle().


Constructor & Destructor Documentation

KateRenderer::KateRenderer KateDocument *  doc,
KateView *  view = 0
 

Constructor.

Parameters:
doc document to render
view view which is output (0 for example for rendering to print)
Definition at line 39 of file katerenderer.cpp.

References updateAttributes().

KateRenderer::~KateRenderer  ) 
 

Destructor.

Definition at line 54 of file katerenderer.cpp.


Member Function Documentation

void KateRenderer::updateAttributes  ) 
 

update the highlighting attributes (for example after an hl change or after hl config changed)

Definition at line 60 of file katerenderer.cpp.

References config().

Referenced by KateRenderer().

bool KateRenderer::drawCaret  )  const [inline]
 

Determine whether the caret (text cursor) will be drawn.

Parameters:
should it be drawn?
Definition at line 75 of file katerenderer.h.

Referenced by paintTextLine().

void KateRenderer::setDrawCaret bool  drawCaret  ) 
 

Set whether the caret (text cursor) will be drawn.

Parameters:
drawCaret should caret be drawn?
Definition at line 74 of file katerenderer.cpp.

Referenced by setPrinterFriendly().

KateRenderer::caretStyles KateRenderer::caretStyle  )  const [inline]
 

The style of the caret (text cursor) to be painted.

Returns:
caretStyle
Definition at line 87 of file katerenderer.h.

References caretStyles.

Referenced by paintTextLine().

void KateRenderer::setCaretStyle KateRenderer::caretStyles  style  ) 
 

Set the style of caret to be painted.

Parameters:
style style to set
Definition at line 79 of file katerenderer.cpp.

bool KateRenderer::showTabs  )  const [inline]
 

Returns:
whether tabs should be shown (ie. a small mark drawn to identify a tab)

tabs should be shown

Definition at line 100 of file katerenderer.h.

Referenced by paintTextLine().

void KateRenderer::setShowTabs bool  showTabs  ) 
 

Set whether a mark should be painted to help identifying tabs.

Parameters:
showTabs show the tabs?
Definition at line 84 of file katerenderer.cpp.

Referenced by setPrinterFriendly().

void KateRenderer::setTabWidth int  tabWidth  ) 
 

Sets the width of the tab.

Helps performance.

Parameters:
tabWidth new tab width
Definition at line 89 of file katerenderer.cpp.

bool KateRenderer::showSelections  )  const [inline]
 

Show the view's selection?

Returns:
show sels?
Definition at line 118 of file katerenderer.h.

Referenced by paintTextLine().

void KateRenderer::setShowSelections bool  showSelections  ) 
 

Set whether the view's selections should be shown.

The default is true.

Parameters:
showSelections show the selections?
Definition at line 94 of file katerenderer.cpp.

Referenced by setPrinterFriendly().

void KateRenderer::increaseFontSizes  ) 
 

Change to a different font (soon to be font set?).

Definition at line 99 of file katerenderer.cpp.

References config(), and QFont::pointSize().

bool KateRenderer::isPrinterFriendly  )  const
 

Returns:
whether the renderer is configured to paint in a printer-friendly fashion.
Definition at line 117 of file katerenderer.cpp.

Referenced by paintTextLine().

void KateRenderer::setPrinterFriendly bool  printerFriendly  ) 
 

Configure this renderer to paint in a printer-friendly fashion.

Sets the other options appropriately if true. Definition at line 122 of file katerenderer.cpp.

References setDrawCaret(), setShowSelections(), and setShowTabs().

uint KateRenderer::spaceWidth  ) 
 

Text width & height calculation functions...

Definition at line 882 of file katerenderer.cpp.

References config(), and KateAttribute::width().

uint KateRenderer::textPos uint  line,
int  xPos,
uint  startCol = 0,
bool  nearest = true
 

Returns:
the index of the character at the horixontal position xpos in line.
If nearest is true, the character starting nearest to xPos is returned. If nearest is false, the index of the character containing xPos is returned. Definition at line 788 of file katerenderer.cpp.

uint KateRenderer::textPos const KateTextLine::Ptr ,
int  xPos,
uint  startCol = 0,
bool  nearest = true
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Definition at line 793 of file katerenderer.cpp.

References config(), KateTextLine::Ptr, and KateAttribute::width().

void KateRenderer::paintTextLine QPainter paint,
const KateLineRange *  range,
int  xStart,
int  xEnd,
const KateTextCursor cursor = 0L,
const KateTextRange *  bracketmark = 0L
 

This is the ultimate function to perform painting of a text line.

(supports startcol/endcol, startx/endx)

The text line is painted from the upper limit of (0,0). To move that, apply a transform to your painter. Definition at line 130 of file katerenderer.cpp.

References KateAttribute::bgColor(), caretStyle(), KateTextCursor::col(), config(), drawCaret(), KateAttribute::font(), isPrinterFriendly(), KateAttribute::itemSet(), KateTextLine::Ptr, KateAttribute::selectedTextColor(), KateTextCursor::setCol(), KateAttribute::setTextColor(), showSelections(), showTabs(), KateAttribute::textColor(), and KateAttribute::width().

KateRendererConfig* KateRenderer::config  )  [inline]
 

Configuration.

Definition at line 217 of file katerenderer.h.

Referenced by increaseFontSizes(), paintTextLine(), spaceWidth(), textPos(), and updateAttributes().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for kate Library Version 3.3.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sun Oct 17 11:35:16 2004 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2003