0
|
1 |
Qt for Embedded Linux Virtual Framebuffer
|
|
2 |
===============================
|
|
3 |
|
|
4 |
The virtual frame buffer allows a Qt for Embedded Linux program to be developed
|
|
5 |
on your desktop machine, without switching between consoles and X11. The virtual
|
|
6 |
framebuffer consists of a shared memory region (the virtual frame buffer)
|
|
7 |
and a utility to display the framebuffer in a window. The display is updated
|
|
8 |
periodically, so you will see discrete snapshots of the framebuffer rather
|
|
9 |
than each individual drawing operation. For this reason drawing problems
|
|
10 |
such as flickering may not be apparent until the program is run using a real
|
|
11 |
framebuffer.
|
|
12 |
|
|
13 |
To use the virtual framebuffer:
|
|
14 |
|
|
15 |
1. Ensure QT_NO_QWS_VFB is not set in qconfig.h (when you configure Qt,
|
|
16 |
add the -qvfb option).
|
|
17 |
2. Start qvfb (qvfb should be compiled as a normal Qt for X11 application,
|
|
18 |
NOT as a Qt for Embedded Linux application!).
|
|
19 |
3. Start a Qt for Embedded Linux server (i.e. construct QApplication with
|
|
20 |
QApplication::GuiServer flag, or run a client with the -qws option).
|
|
21 |
|
|
22 |
qvfb supports the following command line options:
|
|
23 |
|
|
24 |
[-width width] the width of the virtual framebuffer (default: 240).
|
|
25 |
[-height height] the height of the virtual framebuffer (default: 320).
|
|
26 |
[-depth depth] the depth of the virtual framebuffer (1,4,8 or 32, default: 8).
|
|
27 |
[-nocursor] do not display the X11 cursor in the framebuffer window.
|
|
28 |
[-qwsdisplay] the Qt for Embedded Linux display ID, e.g. -qwsdisplay :1 (default :0).
|
|
29 |
[-skin skinfile] tells qvfb to load a skin file, e.g. -skin pda.skin
|
|
30 |
|
|
31 |
Please refer to the file "pda.skin" as an example of what a skin file looks like.
|
|
32 |
The format for skin files is:
|
|
33 |
Image filename of skin with buttons in their up positions
|
|
34 |
Image filename of skin with buttons in their down positions
|
|
35 |
X offset of top left corner of the virtual screen on the skin image
|
|
36 |
Y offset of top left corner of the virtual screen on the skin image
|
|
37 |
Width of the virtual screen on the skin image
|
|
38 |
Height of the virtual screen on the skin image
|
|
39 |
Number of defined button regions
|
|
40 |
Then for each button region the format is:
|
|
41 |
Button identifier
|
|
42 |
Qt scan codes to generate for the button
|
|
43 |
Top left X coordinate of the button region
|
|
44 |
Top left Y coordinate of the button region
|
|
45 |
Bottom right X coordinate of the button region
|
|
46 |
Bottom right Y coordinate of the button region
|
|
47 |
|
|
48 |
The virtual framebuffer is a development tool only. No security issues have
|
|
49 |
been considered in the virtual framebuffer design. It should not be used
|
|
50 |
in a production environment and QT_NO_QWS_VFB should always be in force
|
|
51 |
in production libraries.
|