| 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.
|
|---|