Sophie

Sophie

distrib > Mandriva > 8.2 > i586 > media > contrib > by-pkgid > 112b0974ad288f6cd55bf971ee6026a9 > files > 1190

libqt3-devel-3.0.2-2mdk.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /tmp/qt-3.0-reggie-28534/qt-x11-free-3.0.2/src/kernel/qdirectpainter_qws.cpp:70 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>QDirectPainter Class</title>
<style type="text/css"><!--
h3.fn,span.fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; }
--></style>
</head>
<body>

<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr bgcolor="#E5E5E5">
<td valign=center>
 <a href="index.html">
<font color="#004faf">Home</font></a>
 | <a href="classes.html">
<font color="#004faf">All&nbsp;Classes</font></a>
 | <a href="mainclasses.html">
<font color="#004faf">Main&nbsp;Classes</font></a>
 | <a href="annotated.html">
<font color="#004faf">Annotated</font></a>
 | <a href="groups.html">
<font color="#004faf">Grouped&nbsp;Classes</font></a>
 | <a href="functions.html">
<font color="#004faf">Functions</font></a>
</td>
<td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>QDirectPainter Class Reference</h1>

<p>Direct access to the video hardware.
<a href="#details">More...</a>
<p><tt>#include &lt;<a href="qdirectpainter_qws-h.html">qdirectpainter_qws.h</a>&gt;</tt>
<p>Inherits <a href="qpainter.html">QPainter</a>.
<p><a href="qdirectpainter-members.html">List of all member functions.</a>
<h2>Public Members</h2>
<ul>
<li><div class=fn><a href="#QDirectPainter"><b>QDirectPainter</b></a> ( const&nbsp;QWidget&nbsp;*&nbsp;w )</div></li>
<li><div class=fn><a href="#~QDirectPainter"><b>~QDirectPainter</b></a> ()</div></li>
<li><div class=fn>uchar * <a href="#frameBuffer"><b>frameBuffer</b></a> ()</div></li>
<li><div class=fn>int <a href="#lineStep"><b>lineStep</b></a> ()</div></li>
<li><div class=fn>int <a href="#transformOrientation"><b>transformOrientation</b></a> ()</div></li>
<li><div class=fn>int <b>numRects</b> () const</div></li>
<li><div class=fn>const QRect &amp; <a href="#rect"><b>rect</b></a> ( int&nbsp;i ) const</div></li>
<li><div class=fn>QRegion <b>region</b> ()</div></li>
<li><div class=fn>int <a href="#depth"><b>depth</b></a> () const</div></li>
<li><div class=fn>int <a href="#width"><b>width</b></a> () const</div></li>
<li><div class=fn>int <a href="#height"><b>height</b></a> () const</div></li>
<li><div class=fn>int <a href="#xOffset"><b>xOffset</b></a> () const</div></li>
<li><div class=fn>int <a href="#yOffset"><b>yOffset</b></a> () const</div></li>
<li><div class=fn>QPoint <a href="#offset"><b>offset</b></a> () const</div></li>
<li><div class=fn>QSize <a href="#size"><b>size</b></a> () const</div></li>
<li><div class=fn>void <a href="#setAreaChanged"><b>setAreaChanged</b></a> ( const&nbsp;QRect&nbsp;&amp;&nbsp;r )</div></li>
</ul>
<hr><a name="details"></a><h2>Detailed Description</h2>


Direct access to the video hardware.
<p> 
<p> Only available in Qt/Embedded.
<p> When the hardware is known and well defined, as is often the case
with software for embedded devices, it may be useful to manipulate
the underlying video hardware directly. In order to do that in a
way that is co-operative with other applications, you need to lock
the video hardware for exclusive use for a small time and you need
to know the clipping region which is allocated to a widget.
<p> QDirectPainter provides this functionality.
<p> In the simplest usage, you make a QDirectPainter on a widget and
then, observing the clip region, perform some platform-specific
operation. eg.
<p> <pre>
    void MyWidget::updatePlatformGraphics()
    {
        QDirectPainter dp( this );
        for (int i=0; i&lt;dp.numRects; i++) {
            const <a href="qrect.html">QRect</a>&amp; clip = dp.<a href="#rect">rect</a>(i);
            ... // platform specific operation
        }
    }
  </pre>
 
<p> The platform-specific code has access to the display, but should
only modify graphics in the rectangles specified by numRects()
and <a href="#rect">rect</a>(). Note that these rectangles
are relative to the entire display.
<p> The <a href="#offset">offset</a>() function returns the position of the widget relative to
the entire display, allowing you to offset platform-specific operations
appropriately. The <a href="#xOffset">xOffset</a>() and <a href="#yOffset">yOffset</a>() functions merely return the
component values of offset().
<p> For simple frame-buffer hardware, the <a href="#frameBuffer">frameBuffer</a>(), <a href="#lineStep">lineStep</a>(), and
<a href="#depth">depth</a>() functions give basic access, though some hardware configurations
are insufficiently specified by such simple parameters.
<p> Note that while a QDirectPainter exists, the entire Qt/Embedded window
system is locked from use by other applications. Always construct the
QDirectPainter as an auto (stack) variable, and be very careful to write
robust and stable code in its scope.
<p>See also <a href="graphics.html">Graphics Classes</a>.

<hr><h2>Member Function Documentation</h2>
<h3 class=fn><a name="QDirectPainter"></a>QDirectPainter::QDirectPainter ( const&nbsp;<a href="qwidget.html">QWidget</a>&nbsp;*&nbsp;w )
</h3>
Construct a direct painter on <em>w</em>. The display is locked and the mouse
cursor hidden if it is above <em>w</em>.

<h3 class=fn><a name="~QDirectPainter"></a>QDirectPainter::~QDirectPainter ()
</h3>
Destroys the direct painter. The mouse cursor is revealed is necessary
and the display is unlocked.

<h3 class=fn>int <a name="depth"></a>QDirectPainter::depth () const
</h3>
Returns the bit-depth of the display.

<h3 class=fn>uchar * <a name="frameBuffer"></a>QDirectPainter::frameBuffer ()
</h3>
Returns a pointer to the framebuffer memory if available.

<h3 class=fn>int <a name="height"></a>QDirectPainter::height () const
</h3>
Returns the height of the widget drawn upon.

<h3 class=fn>int <a name="lineStep"></a>QDirectPainter::lineStep ()
</h3>
Returns the spacing in bytes from one framebuffer line to the next.

<h3 class=fn><a href="qpoint.html">QPoint</a> <a name="offset"></a>QDirectPainter::offset () const
</h3>
Returns the position of the widget relative to the entire display.

<h3 class=fn>const&nbsp;<a href="qrect.html">QRect</a>&nbsp;&amp; <a name="rect"></a>QDirectPainter::rect ( int&nbsp;i ) const
</h3>
Returns a reference to the rectangle <em>i</em> of the clip region.
Valid values for <em>i</em> are 0 .. numRects()-1.
<p> <p>See also region().

<h3 class=fn>void <a name="setAreaChanged"></a>QDirectPainter::setAreaChanged ( const&nbsp;<a href="qrect.html">QRect</a>&nbsp;&amp;&nbsp;r )
</h3>
Sets the area changed by the transaction to <em>r</em>. By default, the
entire widget is assumed to have changed. The area changed is only
used by some graphics drivers, so often calling this function for
a smaller area will make no difference.

<h3 class=fn><a href="qsize.html">QSize</a> <a name="size"></a>QDirectPainter::size () const
</h3>
Returns the size of the widget drawn upon.
<p> <p>See also <a href="#width">width</a>() and <a href="#height">height</a>().

<h3 class=fn>int <a name="transformOrientation"></a>QDirectPainter::transformOrientation ()
</h3>
Returns the orientation of the framebuffer. 0 means that
there is no rotation, values 1 to 3 mean 90 to 270 degree
rotation. Other values are undefined.

<h3 class=fn>int <a name="width"></a>QDirectPainter::width () const
</h3>
Returns the width of the widget drawn upon.

<h3 class=fn>int <a name="xOffset"></a>QDirectPainter::xOffset () const
</h3>
Returns the X-position of the widget relative to the entire display.

<h3 class=fn>int <a name="yOffset"></a>QDirectPainter::yOffset () const
</h3>
Returns the Y-position of the widget relative to the entire display.

<!-- eof -->
<hr><p>
This file is part of the <a href="index.html">Qt toolkit</a>.
Copyright &copy; 1995-2001
<a href="http://www.trolltech.com/">Trolltech</a>. All Rights Reserved.<p><address><hr><div align=center>
<table width=100% cellspacing=0 border=0><tr>
<td>Copyright &copy; 2001 
<a href="http://www.trolltech.com">Trolltech</a><td><a href="http://www.trolltech.com/trademarks.html">Trademarks</a>
<td align=right><div align=right>Qt version 3.0.2</div>
</table></div></address></body>
</html>