⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 emb-classes.html

📁 QT 下载资料仅供参考
💻 HTML
📖 第 1 页 / 共 2 页
字号:
</h2><a name="7"></a><p> These encapsulate the framebuffer Qt/Embedded is drawing to, providesupport for mapping of coordinates for rotating framebuffers, allowmanipulation of the colour palette and provide access to offscreengraphics memory for devices with separate framebuffer memories.<p> This is used for cacheing pixmaps and allowing accelerated pixmap-&gt;screenblt's. QLinuxFbScreen and the accelerated screens use the Linux <tt>/dev/fb</tt>interface to get access to graphics memory and information about thecharacteristics of the device. The framebuffer device to open is specifiedby QWS_DISPLAY. Only QTransformedScreen implements the support for rotatedframebuffers. QVfbScreen provides an X window containing an emulatedframebuffer (a chunk of shared memory is set aside as the 'framebuffer'and blt'd into the X window) - this is intended as a debugging deviceallowing users to debug their applications under Qt/Embedded without leaving X. The accelerated screen drivers check to see if they can drive thedevice specified by QWS_CARD_SLOT (which defaults to the usual positionof an AGP slot if not specified) and mmap its on-chip registers from<tt>/dev/mem</tt>. They may also do chip-specific setup (initialising registers toknown values and so on). Finally, <a href="qscreen.html">QScreen</a>'s are used to create newQScreenCursors and QGfxes. <p> If you wish to modify the way pixmaps are allocated in memory,subclass or modify QLinuxFbScreen. If you're writing an accelerateddriver you will need to subclass QScreen or QLinuxFbScreen.<p> <h2> QScreenCursor--&gt;accelerated cursor--&gt;QVfbCursor</h2><a name="8"></a><p> This handles drawing the on-screen mouse cursor, and saving andrestoring the screen under it for the non-accelerated cursor types.<p> Subclassing QScreenCursor is optional in an accelerated driver (youwould only want to do so if the hardware supports a hardware cursor).<p> <h2> QGfx--&gt;RasterBase--&gt;Raster--&gt;accelerated driver--&gt; QGfxVfb--&gt;QGfxTransformedRaster</h2><a name="9"></a><p> This class encapsulates drawing operations, a little like a low-level<a href="qpainter.html">QPainter</a>. QGfxRaster and its descendants are specifically intendedfor drawing into a raw framebuffer. They can take an offset for drawingoperations and a clipping region in order to support drawing into windows.You will need to subclass the QGfxRaster template in order to implementan accelerated driver. <p> If you're brave, modifying QGfxRaster would allow you to customise howdrawing is done or add support for a new bit depth/pixel format.<p> <h2> <a href="qlock.html">QLock</a>, QLockHolder</h2><a name="10"></a><p> This encapsulates a System V semaphore, used for synchronising accessto memory shared between Qt/Embedded clients. QLockHolder is a utility classto make managing and destroying QLocks easier. <p> There should be no need to modify this class unless portingQt/Embedded to an operating system without System V IPC.<p> <h2> <a href="qdirectpainter.html">QDirectPainter</a></h2><a name="11"></a><p> This is a QPainter which also gives you a pointer to the framebufferof the window it's pointing to, the window's clip region and so on.It's intended to easily allow you to do your own pixel-level manipulationof window contents. <p> There should be no reason to modify this class.<p> <h2> QWSSoundServer, Client</h2><a name="12"></a><p> The Qt/Embedded server contains a simple sound player and mixer. Clientscan request the server play sounds specified as files. <p> There should be no need to modify this class unless portingQt/Embedded to an operating system without a Linux-style <tt>/dev/dsp</tt>.<p> <h2> <a href="qwswindow.html">QWSWindow</a></h2><a name="13"></a><p> This contains the server's notion of an individual top level window -the region of the framebuffer it's allocated, the client that created itand so forth. <p> There should be no reason to modify this class.<p> <h2> <a href="qwskeyboardhandler.html">QWSKeyboardHandler</a>--&gt;subtypes</h2><a name="14"></a><p> This handles keyboard/button input. QWSKeyboardHandler is subclassedto provide for reading <tt>/dev/tty</tt>, an arbitrary low-level USB event device(for USB keyboards) and some PDA button devices. <p> Modifying QWSKeyboardHandler would allow you to support differenttypes of keyboard (currently only a fairly standard US PC stylekeyboard is supported); subclassing it is the preferred way to handlenon-pointer input devices.<p> <h2> <a href="qwsmousehandler.html">QWSMouseHandler</a>--&gt;QCalibratedMouseHandler--&gt;mouse types</h2><a name="15"></a><p> This handles mouse/touchpanel input. Descendants of QCalibratedMouseHandlermake use of filtering code which prevents 'jittering' of the pointer ontouchscreens; some embedded devices do this filtering in the kernel inwhich case the driver doesn't need to inherit from QCalibratedMouseHandler.<p> Subclassing QCalibratedMouseHandler is preferred for touchpanels withoutkernel filtering; inheriting QWSMouseHandler is the way to add any othertype of pointing device (pen tablets, touchscreens, mice, trackballsand so forth).<p> <h2> QWSDisplay</h2><a name="16"></a><p> This class exists only in the Qt/Embedded server and keeps track ofall the top-level windows in the system, as well as the keyboard and mouse.<p> You would only want to modify this if making deep and drasticmodifications to Qt/Embedded window behaviour (alpha blended windowsfor example).<p> <h2> <a href="qwsserver.html">QWSServer</a> </h2><a name="17"></a><p> This manages the Qt/Embedded server's Unix-domain socket connections toclients. It sends and receives QWS protocol events and calls QWSDisplayin order to do such things as change the allocation region of windows.<p> The only reason to modify this would be to use something other thansome sort of socket-like mechanism to communicate between Qt/Embeddedapplications (in which case modify QWSClient too). If you havesomething like Unix domain sockets, modify QWSSocket/QWSServerSocketinstead. Don't add extra QWS events to communicate betweenapplications, use QCOP instead.<p> <h2> QWSClient</h2><a name="18"></a><p> This encapsulates the client side of a Qt/Embedded connection and canmarshal and demarshal events. <p> There should be no reason to modify this except to use somethingradically different from Unix domain sockets to communicate betweenQt/Embedded applications.<p> <h2> QWSDisplayData</h2><a name="19"></a><p> This manages a client's QWSClient, reading and interpreting eventsfrom the QWS server. It connects to the QWS server on applicationstartup, getting information about the framebuffer and creating thememory manager. Other information about the framebuffer comes directlyfrom <tt>/dev/fb</tt> in QLinuxFbScreen. <p> There should be no reason to modify this.<p> <h2> QWSCommands</h2><a name="20"></a><p> These encapsulate the data sent to and from the QWS server. <p> There should be no reason to modify them.<p> <h2> <a href="qcopchannel.html">QCopChannel</a></h2><a name="21"></a><p> QCop is a simple IPC mechanism for communication between Qt/Embeddedapplications. String messages with optional binary data can be sentto different channels. <p> The mechanism itself is designed to be bare-bones in order for usersto build whatever mechanism they like on top of it.<p> <h2> QWSManager</h2><a name="22"></a><p> This provides Qt/Embedded window management, drawing a title barand handling user requests to move, resize the window and so on.<p> There should be no reason to modify it but you should subclass itif you want to modify window behaviour (point to click versusfocus follows mouse, for instance).<p> <h2> <a href="qwsdecoration.html">QWSDecoration</a></h2><a name="23"></a><p> Descendants of this class are different styles for the Qt/Embeddedwindow manager, for instance QWSWindowsDecoration draws Qt/Embeddedwindow frames in the style of Windows CE. <p> Subclass it in order to provide a new window manager appearance (theequivalent of a Windows XP or Enlightenment theme).<p> <h2> QWSPropertyManager</h2><a name="24"></a><p> This provides the QWS client's interface to the QWS property system(a simpler version of the X property system, it allows you to attacharbitrary data to top-level windows, keyed by an integer). <p> There should be no reason to modify it.<p> <h2> QWSRegionManager</h2><a name="25"></a><p> Used by both client and server to help manage top-level window regions.<p> There should be no reason to modify it.<p> <h2> QWSSocket, QWSServerSocket</h2><a name="26"></a><p> Provides Unix-domain sockets. <p> Modify this if you're porting to a non-Unix OS but have somethinganalogous to Unix-domain sockets (a byte-oriented, reliable, orderedtransmission mechanism, although you can probably implement it withsomething like a message queue as well).<p> <!-- eof --><p><address><hr><div align=center><table width=100% cellspacing=0 border=0><tr><td>Copyright &copy; 2002 <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.5</div></table></div></address></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -