Qt 4.8
|
#include <qscreenmulti_qws_p.h>
Public Functions | |
void | blank (bool on) |
Prevents the screen driver form displaying any content on the screen. More... | |
void | blit (const QImage &img, const QPoint &topLeft, const QRegion ®ion) |
Copies the given region in the given image to the point specified by topLeft using device coordinates. More... | |
void | blit (QWSWindow *bs, const QRegion &clip) |
bool | connect (const QString &displaySpec) |
This function is called by every Qt for Embedded Linux application on startup, and must be implemented to map in the framebuffer and the accelerated drivers that the graphics card control registers. More... | |
QWSWindowSurface * | createSurface (QWidget *widget) const |
Creates and returns a new window surface for the given widget. More... | |
QWSWindowSurface * | createSurface (const QString &key) const |
Creates and returns a new window surface matching the given key. More... | |
void | disconnect () |
This function is called by every Qt for Embedded Linux application before exiting, and must be implemented to unmap the framebuffer. More... | |
void | exposeRegion (QRegion r, int changing) |
This function is called by the Qt for Embedded Linux server whenever a screen update is required. More... | |
void | haltUpdates () |
bool | initDevice () |
This function is called by the Qt for Embedded Linux server to initialize the framebuffer. More... | |
bool | isInterlaced () const |
Returns true if the display is interlaced (i. More... | |
int | memoryNeeded (const QString &) |
bool | onCard (const unsigned char *) const |
Returns true if the specified buffer is within the graphics card's memory; otherwise returns false (i.e. More... | |
bool | onCard (const unsigned char *, ulong &out_offset) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.If the specified buffer is within the graphics card's memory, this function stores the offset from the start of graphics card memory (in bytes), in the location specified by the offset parameter. More... | |
QMultiScreen (int displayId) | |
QRegion | region () const |
Returns the region covered by this screen driver. More... | |
void | restore () |
Restores the previously saved state of the graphics card. More... | |
void | resumeUpdates () |
void | save () |
Saves the current state of the graphics card. More... | |
void | setDirty (const QRect &) |
Marks the given rectangle as dirty. More... | |
void | setMode (int, int, int) |
Implement this function to reset the framebuffer's resolution (width and height) and bit depth. More... | |
int | sharedRamSize (void *) |
void | shutdownDevice () |
This function is called by the Qt for Embedded Linux server before it calls the disconnect() function when exiting. More... | |
void | solidFill (const QColor &color, const QRegion ®ion) |
Fills the given region of the screen with the specified color. More... | |
QList< QScreen * > | subScreens () const |
bool | supportsDepth (int) const |
Returns true if the screen supports the specified color depth; otherwise returns false. More... | |
~QMultiScreen () | |
Public Functions inherited from QScreen | |
virtual int | alloc (unsigned int, unsigned int, unsigned int) |
Returns the index in the screen's palette which is the closest match to the given RGB value (red, green, blue). More... | |
uchar * | base () const |
Returns a pointer to the beginning of the framebuffer. More... | |
void | blit (QWSWindow *bs, const QRegion &clip) |
virtual uchar * | cache (int) |
ClassId | classId () const |
Returns the class identifier for the screen object. More... | |
QRgb * | clut () |
Returns a pointer to the screen's color lookup table (i. More... | |
int | colorCount () |
Returns the number of entries in the screen's color lookup table (i. More... | |
int | depth () const |
Returns the depth of the framebuffer, in bits per pixel. More... | |
int | deviceHeight () const |
Returns the full height of the framebuffer device in pixels. More... | |
int | deviceWidth () const |
Returns the physical width of the framebuffer device in pixels. More... | |
QGraphicsSystem * | graphicsSystem () const |
int | height () const |
Returns the logical height of the framebuffer in pixels. More... | |
virtual bool | isTransformed () const |
Returns true if the screen is transformed (for instance, rotated 90 degrees); otherwise returns false. More... | |
int | linestep () const |
Returns the length of each scanline of the framebuffer in bytes. More... | |
virtual QSize | mapFromDevice (const QSize &) const |
Maps the given size from the framebuffer coordinate system to the coordinate space used by the application. More... | |
virtual QPoint | mapFromDevice (const QPoint &, const QSize &) const |
Maps the given point from the framebuffer coordinate system to the coordinate space used by the application, passing the device's screenSize as argument. More... | |
virtual QRect | mapFromDevice (const QRect &, const QSize &) const |
Maps the given rectangle from the framebuffer coordinate system to the coordinate space used by the application, passing the device's screenSize as argument. More... | |
virtual QImage | mapFromDevice (const QImage &) const |
Maps the given image from the framebuffer coordinate system to the coordinate space used by the application. More... | |
virtual QRegion | mapFromDevice (const QRegion &, const QSize &) const |
Maps the given region from the framebuffer coordinate system to the coordinate space used by the application, passing the device's screenSize as argument. More... | |
virtual QSize | mapToDevice (const QSize &) const |
Maps the given size from the coordinate space used by the application to the framebuffer coordinate system. More... | |
virtual QPoint | mapToDevice (const QPoint &, const QSize &) const |
Maps the given point from the coordinate space used by the application to the framebuffer coordinate system, passing the device's screenSize as argument. More... | |
virtual QRect | mapToDevice (const QRect &, const QSize &) const |
Maps the given rectangle from the coordinate space used by the application to the framebuffer coordinate system, passing the device's screenSize as argument. More... | |
virtual QImage | mapToDevice (const QImage &) const |
Maps the given image from the coordinate space used by the application to the framebuffer coordinate system. More... | |
virtual QRegion | mapToDevice (const QRegion &, const QSize &) const |
Maps the given region from the coordinate space used by the application to the framebuffer coordinate system, passing the device's screenSize as argument. More... | |
QT_DEPRECATED int | numCols () |
QPoint | offset () const |
Returns the logical offset of the screen, i. More... | |
int | physicalHeight () const |
Returns the physical height of the screen in millimeters. More... | |
int | physicalWidth () const |
Returns the physical width of the screen in millimeters. More... | |
QImage::Format | pixelFormat () const |
Returns the pixel format of the screen, or QImage::Format_Invalid if the pixel format is not a supported image format. More... | |
PixelType | pixelType () const |
Returns the pixel storage format of the screen. More... | |
QPixmapDataFactory * | pixmapDataFactory () const |
virtual int | pixmapDepth () const |
Returns the preferred depth for pixmaps, in bits per pixel. More... | |
virtual int | pixmapLinestepAlignment () |
Returns the value (in bits) to which individual scanlines of pixmaps held in the graphics card's memory, should be aligned. More... | |
virtual int | pixmapOffsetAlignment () |
Returns the value (in bits) to which the start address of pixmaps held in the graphics card's memory, should be aligned. More... | |
QScreen (int display_id, ClassId classId) | |
Constructs a new screen driver. More... | |
QScreen (int display_id) | |
Constructs a new screen driver. More... | |
int | screenSize () const |
Returns the size of the screen in bytes. More... | |
virtual void | set (unsigned int, unsigned int, unsigned int, unsigned int) |
void | setOffset (const QPoint &p) |
int | subScreenIndexAt (const QPoint &p) const |
Returns the index of the subscreen at the given position; returns -1 if no screen is found. More... | |
int | totalSize () const |
Returns the size of the available graphics card memory (including the screen) in bytes. More... | |
virtual int | transformOrientation () const |
Returns the current rotation as an integer value. More... | |
virtual void | uncache (uchar *) |
int | width () const |
Returns the logical width of the framebuffer in pixels. More... | |
virtual | ~QScreen () |
Destroys this screen driver. More... | |
Private Functions | |
void | addSubScreen (QScreen *screen) |
void | removeSubScreen (QScreen *screen) |
Properties | |
QMultiScreenPrivate * | d_ptr |
Additional Inherited Members | |
Public Types inherited from QScreen | |
enum | ClassId { LinuxFBClass, TransformedClass, VNCClass, MultiClass, VFbClass, DirectFBClass, SvgalibClass, ProxyClass, GLClass, IntfbClass, CustomClass = 1024 } |
This enum defines the class identifiers for the known screen subclasses. More... | |
enum | PixelType { NormalPixel, BGRPixel } |
This enum describes the pixel storage format of the screen, i. More... | |
Static Public Functions inherited from QScreen | |
static QScreen * | instance () |
Returns a pointer to the application's QScreen instance. More... | |
Protected Functions inherited from QScreen | |
void | setGraphicsSystem (QGraphicsSystem *system) |
void | setPixelFormat (QImage::Format format) |
Sets the screen's pixel format to format. More... | |
void | setPixmapDataFactory (QPixmapDataFactory *factory) |
Protected Variables inherited from QScreen | |
int | d |
the pixel depth More... | |
uchar * | data |
points to the first visible pixel in the frame buffer. More... | |
int | dh |
the device height More... | |
int | displayId |
int | dw |
the device width More... | |
QPoolEntry * | entries |
int * | entryp |
bool | grayscale |
the gray scale screen mode flag More... | |
int | h |
the logical height of the screen. More... | |
unsigned int * | lowest |
int | lstep |
the number of bytes representing a line in the frame buffer. More... | |
int | mapsize |
the total number of bytes in the frame buffer More... | |
int | physHeight |
the physical height of the screen in millimeters. More... | |
int | physWidth |
the physical width of the screen in millimeters. More... | |
PixelType | pixeltype |
set to BGRPixel More... | |
QRgb | screenclut [256] |
the color table More... | |
int | screencols |
the number of entries in the color table More... | |
int | size |
the number of bytes in the visible region of the frame buffer More... | |
int | w |
the logical width of the screen. More... | |
Static Protected Variables inherited from QScreen | |
static ClearCacheFunc | clearCacheFunc = 0 |
Related Functions inherited from QScreen | |
void | setTransformation (int transformation, int screenNo) |
Here it is. More... | |
Definition at line 64 of file qscreenmulti_qws_p.h.
QMultiScreen::QMultiScreen | ( | int | displayId | ) |
Definition at line 164 of file qscreenmulti_qws.cpp.
QMultiScreen::~QMultiScreen | ( | ) |
Definition at line 169 of file qscreenmulti_qws.cpp.
|
private |
Definition at line 472 of file qscreenmulti_qws.cpp.
Referenced by connect().
|
virtual |
Prevents the screen driver form displaying any content on the screen.
Note that the default implementation does nothing.
Reimplement this function to prevent the screen driver from displaying any contents on the screen if on is true; otherwise the contents is expected to be shown.
Reimplemented from QScreen.
Definition at line 309 of file qscreenmulti_qws.cpp.
|
virtual |
Copies the given region in the given image to the point specified by topLeft using device coordinates.
This function is called from the exposeRegion() function; it is not intended to be called explicitly.
Reimplement this function to make use of Adding an Accelerated Graphics Driver to Qt for Embedded Linux{accelerated hardware}. Note that this function must be reimplemented if the framebuffer format is not supported by Qt for Embedded Linux (See the Qt for Embedded Linux Display Management{Display Management} documentation for more details).
Reimplemented from QScreen.
Definition at line 400 of file qscreenmulti_qws.cpp.
Definition at line 413 of file qscreenmulti_qws.cpp.
|
virtual |
This function is called by every Qt for Embedded Linux application on startup, and must be implemented to map in the framebuffer and the accelerated drivers that the graphics card control registers.
Note that connect must be called before the initDevice() function.
Ensure that true is returned if a connection to the screen device is made. Otherwise, return false. Upon making the connection, the function should read out the parameters of the framebuffer and use them as required to set this class's protected variables.
The displaySpec argument is passed by the QWS_DISPLAY environment variable or the -display command line parameter, and has the following syntax:
For example, to use the mach64 driver on fb1 as display 2:
See Qt for Embedded Linux Display Management for more details.
Implements QScreen.
Definition at line 221 of file qscreenmulti_qws.cpp.
|
virtual |
Creates and returns a new window surface for the given widget.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Reimplemented from QScreen.
Definition at line 452 of file qscreenmulti_qws.cpp.
|
virtual |
Creates and returns a new window surface matching the given key.
The server application will call this function whenever it needs to create a server side representation of a window, e.g. when copying the content of memory to the screen using the screen driver.
Note that this function must be reimplemented when adding an accelerated graphics driver. See the Adding an Accelerated Graphics Driver to Qt for Embedded Linux {Adding an Accelerated Graphics Driver} documentation for details.
Reimplemented from QScreen.
Definition at line 438 of file qscreenmulti_qws.cpp.
|
virtual |
This function is called by every Qt for Embedded Linux application before exiting, and must be implemented to unmap the framebuffer.
Note that a server application will call the shutdownDevice() function prior to this function.
Implements QScreen.
Definition at line 271 of file qscreenmulti_qws.cpp.
|
virtual |
This function is called by the Qt for Embedded Linux server whenever a screen update is required.
region is the area on the screen that must be updated, and windowIndex is the index into QWSServer::clientWindows() of the window that required the update. QWSWindow::state() gives more information about the cause.
The default implementation composes the affected windows and paints the given region on screen by calling the blit() and solidFill() functions
This function can be reimplemented to perform composition in hardware, or to perform transition effects. For simpler hardware acceleration, or to interface with this is typically done by reimplementing the blit() and solidFill() functions instead.
Note that there is no need to call this function explicitly.
Reimplemented from QScreen.
Definition at line 376 of file qscreenmulti_qws.cpp.
|
virtual |
Reimplemented from QScreen.
Definition at line 362 of file qscreenmulti_qws.cpp.
|
virtual |
This function is called by the Qt for Embedded Linux server to initialize the framebuffer.
Note that a server application will call the connect() function prior to this function.
Implement this function to make accelerated drivers set up the graphics card. Return true to indicate success and false to indicate failure.
Implements QScreen.
Definition at line 174 of file qscreenmulti_qws.cpp.
|
virtual |
Returns true if the display is interlaced (i.
e. is displaying images progressively like a television screen); otherwise returns false.
If the display is interlaced, the drawing is altered to look better.
Reimplemented from QScreen.
Definition at line 334 of file qscreenmulti_qws.cpp.
|
virtual |
Reimplemented from QScreen.
Definition at line 344 of file qscreenmulti_qws.cpp.
|
virtual |
Returns true if the specified buffer is within the graphics card's memory; otherwise returns false (i.e.
if it's in main RAM).
Reimplemented from QScreen.
Definition at line 316 of file qscreenmulti_qws.cpp.
|
virtual |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.If the specified buffer is within the graphics card's memory, this function stores the offset from the start of graphics card memory (in bytes), in the location specified by the offset parameter.
Reimplemented from QScreen.
Definition at line 325 of file qscreenmulti_qws.cpp.
|
virtual |
Returns the region covered by this screen driver.
Reimplemented from QScreen.
Definition at line 467 of file qscreenmulti_qws.cpp.
|
private |
Definition at line 478 of file qscreenmulti_qws.cpp.
|
virtual |
Restores the previously saved state of the graphics card.
For example, hardware screen drivers should reimplement the save() and restore() functions to save and restore its registers, enabling swintching between virtual consoles.
Note that the default implementation does nothing.
Reimplemented from QScreen.
Definition at line 302 of file qscreenmulti_qws.cpp.
|
virtual |
Reimplemented from QScreen.
Definition at line 369 of file qscreenmulti_qws.cpp.
|
virtual |
Saves the current state of the graphics card.
For example, hardware screen drivers should reimplement the save() and restore() functions to save and restore its registers, enabling swintching between virtual consoles.
Note that the default implementation does nothing.
Reimplemented from QScreen.
Definition at line 295 of file qscreenmulti_qws.cpp.
|
virtual |
Marks the given rectangle as dirty.
Note that the default implementation does nothing; reimplement this function to indicate that the given rectangle has been altered.
Reimplemented from QScreen.
Definition at line 425 of file qscreenmulti_qws.cpp.
|
virtual |
Implement this function to reset the framebuffer's resolution (width and height) and bit depth.
After the resolution has been set, existing paint engines will be invalid and the framebuffer should be completely redrawn. In a multiple-process situation, all other applications must be notified to reset their mode and update themselves accordingly.
Implements QScreen.
Definition at line 285 of file qscreenmulti_qws.cpp.
|
virtual |
Reimplemented from QScreen.
Definition at line 353 of file qscreenmulti_qws.cpp.
|
virtual |
This function is called by the Qt for Embedded Linux server before it calls the disconnect() function when exiting.
Note that the default implementation only hides the mouse cursor; reimplement this function to do the necessary graphics card specific cleanup.
Reimplemented from QScreen.
Definition at line 278 of file qscreenmulti_qws.cpp.
Fills the given region of the screen with the specified color.
This function is called from the exposeRegion() function; it is not intended to be called explicitly.
Reimplement this function to make use of Adding an Accelerated Graphics Driver to Qt for Embedded Linux{accelerated hardware}. Note that this function must be reimplemented if the framebuffer format is not supported by Qt for Embedded Linux (See the Qt for Embedded Linux Display Management{Display Management} documentation for more details).
Reimplemented from QScreen.
Definition at line 388 of file qscreenmulti_qws.cpp.
Returns a list of this screen's subscreens. Use the subScreenIndexAt() function to retrieve the index of a screen at a given position.
Note that if this screen consists of several subscreens, operations to this instance will affect all subscreens by default.
Reimplemented from QScreen.
Definition at line 462 of file qscreenmulti_qws.cpp.
|
virtual |
Returns true if the screen supports the specified color depth; otherwise returns false.
Reimplemented from QScreen.
Definition at line 290 of file qscreenmulti_qws.cpp.
|
private |
Definition at line 108 of file qscreenmulti_qws_p.h.
Referenced by addSubScreen(), blank(), blit(), connect(), createSurface(), disconnect(), exposeRegion(), haltUpdates(), initDevice(), isInterlaced(), memoryNeeded(), onCard(), region(), removeSubScreen(), restore(), resumeUpdates(), save(), setDirty(), sharedRamSize(), shutdownDevice(), solidFill(), subScreens(), and ~QMultiScreen().