mirror of
https://bitbucket.org/smil3y/kde-playground.git
synced 2025-02-24 10:52:52 +00:00
490 lines
16 KiB
HTML
490 lines
16 KiB
HTML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
|
|
|
<head>
|
|
<title>KWordWrap</title>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<meta http-equiv="Content-Style-Type" content="text/css" />
|
|
<link rel="stylesheet" type="text/css" href="../common/doxygen.css" />
|
|
<link rel="stylesheet" media="screen" type="text/css" title="KDE Colors" href="../common/kde.css" />
|
|
</head>
|
|
<body>
|
|
<div id="container">
|
|
<div id="header">
|
|
<div id="header_top">
|
|
<div>
|
|
<div>
|
|
<img alt ="" src="../common/top-kde.jpg"/>
|
|
KDE 4.9 PyKDE API Reference
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="header_bottom">
|
|
<div id="location">
|
|
<ul>
|
|
<li>KDE's Python API</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div id="menu">
|
|
<ul>
|
|
<li><a href="../modules.html">Overview</a></li>
|
|
<li><a href="http://techbase.kde.org/Development/Languages/Python">PyKDE Home</a></li>
|
|
<li><a href="http://kde.org/family/">Sitemap</a></li>
|
|
<li><a href="http://kde.org/contact/">Contact Us</a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="body_wrapper">
|
|
<div id="body">
|
|
<div id="right">
|
|
<div class="content">
|
|
<div id="main">
|
|
<div class="clearer"> </div>
|
|
|
|
<h1>KWordWrap Class Reference</h1>
|
|
<code>from PyKDE4.kdeui import *</code>
|
|
<p>
|
|
|
|
|
|
|
|
<h2>Detailed Description</h2>
|
|
|
|
<p>Word-wrap algorithm that takes into account beautifulness ;)
|
|
</p>
|
|
<p>
|
|
That means:
|
|
<li> not letting a letter alone on the last line, </li>
|
|
<li> breaking at punctuation signs (not only at spaces) </li>
|
|
<li> improved handling of (), [] and {} </li>
|
|
<li> improved handling of '/' (e.g. for paths) </li>
|
|
</p>
|
|
<p>
|
|
Usage: call the static method, formatText, with the text to
|
|
wrap and the constraining rectangle etc., it will return an instance of KWordWrap
|
|
containing internal data, result of the word-wrapping.
|
|
From that instance you can retrieve the boundingRect, and invoke drawing.
|
|
</p>
|
|
<p>
|
|
This design allows to call the word-wrap algorithm only when the text changes
|
|
and not every time we want to know the bounding rect or draw the text.
|
|
</p>
|
|
<p>
|
|
|
|
<dl class="author" compact><dt><b>Author:</b></dt><dd> David Faure <faure@kde.org> </dd></dl>
|
|
</p>
|
|
<table border="0" cellpadding="0" cellspacing="0"><tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="#obj400382860"><anonymous></a> </td><td class="memItemRight" valign="bottom">{ FadeOut, Truncate }</td></tr>
|
|
<tr><td colspan="2"><br><h2>Methods</h2></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#KWordWrap">__init__</a> (self, <a href="../kdeui/KWordWrap.html">KWordWrap</a> a0)</td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#KWordWrap">__init__</a> (self, QRect r)</td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top">QRect </td><td class="memItemRight" valign="bottom"><a class="el" href="#boundingRect">boundingRect</a> (self)</td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#drawText">drawText</a> (self, QPainter painter, int x, int y, int flags=Qt.AlignLeft)</td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top">QString </td><td class="memItemRight" valign="bottom"><a class="el" href="#truncatedString">truncatedString</a> (self, bool dots=1)</td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top">QString </td><td class="memItemRight" valign="bottom"><a class="el" href="#wrappedString">wrappedString</a> (self)</td></tr>
|
|
<tr><td colspan="2"><br><h2>Static Methods</h2></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#drawFadeoutText">drawFadeoutText</a> (QPainter p, int x, int y, int maxW, QString t)</td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#drawTruncateText">drawTruncateText</a> (QPainter p, int x, int y, int maxW, QString t)</td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../kdeui/KWordWrap.html">KWordWrap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#formatText">formatText</a> (QFontMetrics fm, QRect r, int flags, QString str, int len=-1)</td></tr>
|
|
</table>
|
|
<hr><h2>Method Documentation</h2><a class="anchor" name="KWordWrap"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname"><tr>
|
|
<td class="memname">__init__</td>
|
|
<td>(</td>
|
|
<td class="paramtype"> <em>self</em>, </td>
|
|
<td class="paramname"></td>
|
|
</tr><tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a href="../kdeui/KWordWrap.html">KWordWrap</a> </td>
|
|
<td class="paramname"><em>a0</em></td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td width="100%"> </td>
|
|
</tr></table>
|
|
</div>
|
|
<div class="memdoc"></div></div><a class="anchor" name="KWordWrap"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname"><tr>
|
|
<td class="memname">__init__</td>
|
|
<td>(</td>
|
|
<td class="paramtype"> <em>self</em>, </td>
|
|
<td class="paramname"></td>
|
|
</tr><tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">QRect </td>
|
|
<td class="paramname"><em>r</em></td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td width="100%"> </td>
|
|
</tr></table>
|
|
</div>
|
|
<div class="memdoc"></div></div><a class="anchor" name="boundingRect"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname"><tr>
|
|
<td class="memname">QRect boundingRect</td>
|
|
<td>(</td>
|
|
<td class="paramtype"> </td>
|
|
<td class="paramname"><em>self</em> )</td>
|
|
<td width="100%"> </td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc"><p><dl class="return" compact><dt><b>Returns:</b></dt><dd> the bounding rect, calculated by formatText. The width is the
|
|
width of the widest text line, and never wider than
|
|
the rectangle given to formatText. The height is the
|
|
text block. X and Y are always 0.
|
|
</dd></dl>
|
|
</p></div></div><a class="anchor" name="drawText"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname"><tr>
|
|
<td class="memname"> drawText</td>
|
|
<td>(</td>
|
|
<td class="paramtype"> <em>self</em>, </td>
|
|
<td class="paramname"></td>
|
|
</tr><tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">QPainter </td>
|
|
<td class="paramname"><em>painter</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>x</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>y</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>flags=Qt.AlignLeft</em></td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td width="100%"> </td>
|
|
</tr></table>
|
|
</div>
|
|
<div class="memdoc"><p>Draw the text that has been previously wrapped, at position x,y.
|
|
Flags are for alignment, e.g. Qt.AlignHCenter. Default is
|
|
Qt.AlignAuto.
|
|
</p><dl compact><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td></td><td valign="top"><em>painter</em> </td><td> the QPainter to use.
|
|
|
|
<tr><td></td><td valign="top"><em>x</em> </td><td> the horizontal position of the text
|
|
|
|
<tr><td></td><td valign="top"><em>y</em> </td><td> the vertical position of the text
|
|
|
|
<tr><td></td><td valign="top"><em>flags</em> </td><td> the ORed text alignment flags from the Qt namespace,
|
|
ORed with FadeOut if you want the text to fade out if it
|
|
does not fit (the <b>painter's</b> background must be set
|
|
accordingly)
|
|
</td></tr>
|
|
</table></dl>
|
|
<p>
|
|
</p></div></div><a class="anchor" name="truncatedString"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname"><tr>
|
|
<td class="memname">QString truncatedString</td>
|
|
<td>(</td>
|
|
<td class="paramtype"> <em>self</em>, </td>
|
|
<td class="paramname"></td>
|
|
</tr><tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">bool </td>
|
|
<td class="paramname"><em>dots=1</em></td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td width="100%"> </td>
|
|
</tr></table>
|
|
</div>
|
|
<div class="memdoc"><p><dl class="return" compact><dt><b>Returns:</b></dt><dd> the original string, truncated to the first line.
|
|
If <b>dots</b> was set, '...' is appended in case the string was truncated.
|
|
Bug: Note that the '...' come out of the bounding rect.
|
|
</dd></dl>
|
|
</p></div></div><a class="anchor" name="wrappedString"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname"><tr>
|
|
<td class="memname">QString wrappedString</td>
|
|
<td>(</td>
|
|
<td class="paramtype"> </td>
|
|
<td class="paramname"><em>self</em> )</td>
|
|
<td width="100%"> </td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc"><p><dl class="return" compact><dt><b>Returns:</b></dt><dd> the original string, with '\n' inserted where
|
|
the text is broken by the wordwrap algorithm.
|
|
</dd></dl>
|
|
</p></div></div><hr><h2>Static Method Documentation</h2><a class="anchor" name="drawFadeoutText"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname"><tr>
|
|
<td class="memname"> drawFadeoutText</td>
|
|
<td>(</td>
|
|
<td class="paramtype">QPainter </td>
|
|
<td class="paramname"><em>p</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>x</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>y</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>maxW</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">QString </td>
|
|
<td class="paramname"><em>t</em></td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td width="100%"> </td>
|
|
</tr></table>
|
|
</div>
|
|
<div class="memdoc"><p>Draws the string <b>t</b> at the given coordinates, if it does not
|
|
<b>fit</b> into <b>maxW</b> the text will be faded out.
|
|
</p><dl compact><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td></td><td valign="top"><em>p</em> </td><td> the painter to use. Must have set the pen for the text
|
|
color and the background for the color to fade out
|
|
|
|
<tr><td></td><td valign="top"><em>x</em> </td><td> the horizontal position of the text
|
|
|
|
<tr><td></td><td valign="top"><em>y</em> </td><td> the vertical position of the text
|
|
|
|
<tr><td></td><td valign="top"><em>maxW</em> </td><td> the maximum width of the text (including the fade-out
|
|
effect)
|
|
|
|
<tr><td></td><td valign="top"><em>t</em> </td><td> the text to draw
|
|
</td></tr>
|
|
</table></dl>
|
|
<p>
|
|
</p></div></div><a class="anchor" name="drawTruncateText"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname"><tr>
|
|
<td class="memname"> drawTruncateText</td>
|
|
<td>(</td>
|
|
<td class="paramtype">QPainter </td>
|
|
<td class="paramname"><em>p</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>x</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>y</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>maxW</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">QString </td>
|
|
<td class="paramname"><em>t</em></td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td width="100%"> </td>
|
|
</tr></table>
|
|
</div>
|
|
<div class="memdoc"><p>Draws the string <b>t</b> at the given coordinates, if it does not
|
|
<b>fit</b> into <b>maxW</b> the text will be truncated.
|
|
</p><dl compact><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td></td><td valign="top"><em>p</em> </td><td> the painter to use
|
|
|
|
<tr><td></td><td valign="top"><em>x</em> </td><td> the horizontal position of the text
|
|
|
|
<tr><td></td><td valign="top"><em>y</em> </td><td> the vertical position of the text
|
|
|
|
<tr><td></td><td valign="top"><em>maxW</em> </td><td> the maximum width of the text (including the '...')
|
|
|
|
<tr><td></td><td valign="top"><em>t</em> </td><td> the text to draw
|
|
</td></tr>
|
|
</table></dl>
|
|
<p>
|
|
</p></div></div><a class="anchor" name="formatText"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname"><tr>
|
|
<td class="memname"><a href="../kdeui/KWordWrap.html">KWordWrap</a> formatText</td>
|
|
<td>(</td>
|
|
<td class="paramtype">QFontMetrics </td>
|
|
<td class="paramname"><em>fm</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">QRect </td>
|
|
<td class="paramname"><em>r</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>flags</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">QString </td>
|
|
<td class="paramname"><em>str</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="memname"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>len=-1</em></td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td width="100%"> </td>
|
|
</tr></table>
|
|
</div>
|
|
<div class="memdoc"><p>Main method for wrapping text.
|
|
</p>
|
|
<p>
|
|
</p><dl compact><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td></td><td valign="top"><em>fm</em> </td><td> Font metrics, for the chosen font. Better cache it, creating a QFontMetrics is expensive.
|
|
|
|
<tr><td></td><td valign="top"><em>r</em> </td><td> Constraining rectangle. Only the width and height matter. With
|
|
negative height the complete text will be rendered
|
|
|
|
<tr><td></td><td valign="top"><em>flags</em> </td><td> currently unused
|
|
|
|
<tr><td></td><td valign="top"><em>str</em> </td><td> The text to be wrapped.
|
|
|
|
<tr><td></td><td valign="top"><em>len</em> </td><td> Length of text to wrap (default is -1 for all).
|
|
</td></tr> </table></dl>
|
|
<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> a KWordWrap instance. The caller is responsible for storing and deleting the result.
|
|
</dd></dl>
|
|
</p></div></div><hr><h2>Enumeration Documentation</h2><a class="anchor" name="obj400382860"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr><td class="memname">anonymous</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc"><p>Use this flag in drawText() if you want to fade out the text if it does
|
|
not fit into the constraining rectangle.
|
|
</p><dl compact><dt><b>Enumerator: </b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0"><tr><td valign="top"><em>FadeOut</em> </td><td><tr><td valign="top"><em>Truncate</em> </td><td></table>
|
|
</dl>
|
|
</div></div><p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="left">
|
|
|
|
<div class="menu_box">
|
|
<div class="nav_list">
|
|
<ul>
|
|
<li><a href="../allclasses.html">Full Index</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<a name="cp-menu" /><div class="menutitle"><div>
|
|
<h2 id="cp-menu-project">Modules</h2>
|
|
</div></div>
|
|
<div class="nav_list">
|
|
<ul><li><a href="../akonadi/index.html">akonadi</a></li>
|
|
<li><a href="../dnssd/index.html">dnssd</a></li>
|
|
<li><a href="../kdecore/index.html">kdecore</a></li>
|
|
<li><a href="../kdeui/index.html">kdeui</a></li>
|
|
<li><a href="../khtml/index.html">khtml</a></li>
|
|
<li><a href="../kio/index.html">kio</a></li>
|
|
<li><a href="../knewstuff/index.html">knewstuff</a></li>
|
|
<li><a href="../kparts/index.html">kparts</a></li>
|
|
<li><a href="../kutils/index.html">kutils</a></li>
|
|
<li><a href="../nepomuk/index.html">nepomuk</a></li>
|
|
<li><a href="../phonon/index.html">phonon</a></li>
|
|
<li><a href="../plasma/index.html">plasma</a></li>
|
|
<li><a href="../polkitqt/index.html">polkitqt</a></li>
|
|
<li><a href="../solid/index.html">solid</a></li>
|
|
<li><a href="../soprano/index.html">soprano</a></li>
|
|
</ul></div></div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
<div class="clearer"/>
|
|
</div>
|
|
|
|
<div id="end_body"></div>
|
|
</div>
|
|
<div id="footer"><div id="footer_text">
|
|
This documentation is maintained by <a href="mailto:simon@simonzone.com">Simon Edwards</a>.<br />
|
|
KDE<sup>®</sup> and <a href="../images/kde_gear_black.png">the K Desktop Environment<sup>®</sup> logo</a> are registered trademarks of <a href="http://ev.kde.org/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> |
|
|
<a href="http://www.kde.org/contact/impressum.php">Legal</a>
|
|
</div></div>
|
|
</body>
|
|
</html>
|