File: running-qws.html

package info (click to toggle)
qt-embedded 2.3.2-3
  • links: PTS
  • area: main
  • in suites: woody
  • size: 68,608 kB
  • ctags: 45,998
  • sloc: cpp: 276,654; ansic: 71,987; makefile: 29,074; sh: 12,305; yacc: 2,465; python: 1,863; perl: 481; lex: 480; xml: 68; lisp: 15
file content (110 lines) | stat: -rw-r--r-- 4,611 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Qt Toolkit -  Running Qt/Embedded applications</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: white; color: black; }
--></style></head><body bgcolor="#ffffff">
<p>
<table width="100%">
<tr><td><a href="index.html">
<img width="100" height="100" src="qtlogo.png"
alt="Home" border="0"><img width="100"
height="100" src="face.png" alt="Home" border="0">
</a><td valign=top><div align=right><img src="dochead.png" width="472" height="27"><br>
<a href="classes.html"><b>Classes</b></a>
-<a href="annotated.html">Annotated</a>
- <a href="hierarchy.html">Tree</a>
-<a href="functions.html">Functions</a>
-<a href="index.html">Home</a>
-<a href="topicals.html"><b>Structure</b></a>
</div>
</table>
<h1 align=center> Running Qt/Embedded applications</h1><br clear="all">
A Qt/Embedded application requires a master application to be running
or to be a master application itself.  The
master application is primarily responsible for managing top-level window
regions, pointer and keyboard input.
<p>
Any Qt/Embedded application can be a
master application by constructing the QApplication object with the
<i>QApplication::GuiServer</i> type, or running the application with the
<i>-qws</i> command line option.
<p>
This document assumes you have the Linux framebuffer configured correctly
and no master process is running.  If you do not have a working Linux
framebuffer you can use the
<a href="qvfb-qws.html">Qt/Embedded virtual framebuffer</a>.
<p>
Change to a Linux console and select an example to run, e.g. examples/widgets.
Make sure $QTDIR is set to the directory where you installed Qt/Embedded
and add the $QTDIR/lib directory to $LD_LIBRARY_PATH, e.g.:
<pre>
export QTDIR=$HOME/qt-<i>version</i>
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
</pre>
<p>
Run the application with the <i>-qws</i> option:
<p>
<pre>
cd $QTDIR/examples/widgets
./widgets -qws
</pre>
<p>
You should see the widgets example appear.  If your mouse doesn't work
correctly you need to specify the type of mouse to use.
You can exit the master application at any time using ctrl+alt+backspace.
<p>
If you wish to run additional applications you should run them as clients
i.e. without the <i>-qws</i> option.
<p>
<h2>Displays</h2>
Qt/Embedded allows multiple displays to be used simultaneously by running
multiple Qt/Embedded master processes.  This is achieved using the -display
command line parameter or the $QWS_DISPLAY environment variable.
<p>
The -display parameter's syntax is:
<p>
<tt>[gfx driver][:driver specific options][:display number]</tt>
<p>
for example if you want to use the mach64 driver on fb1 as display 2:
<p>
<tt>$ ./launcher -display Mach64:/dev/fb1:2</tt>
<p>
To try this functionality you can do the following:
<ol>
<li>Change to VC 1 and run the launcher:<br>
<tt>$ cd examples/launcher</tt><br>
<tt>$ ./launcher</tt>
<li>Switch to VC 2 and run another one:<br>
<tt>$ cd examples/launcher</tt><br>
<tt>$ ./launcher -display :1</tt><p>
Another launcher will be started.  Start an application in this launcher.
<li>Press ctrl+alt+F1 - back to display 0.  You can also start additional
applications on a particular display by specifying the display id. Change
to VC 3:<br>
<tt>$ cd examples/widgets</tt><br>
<tt>$ ./widgets -display :1</tt><br>
will display the widgets example on dislpay :1 (VC 2).
</ol>
<p>
Only the master process needs to specify the driver/device part explicitly.
The clients get the information they need from the master when they connect.
So once you have a master server running using a particular driver, you can
just use "client -display :n" to use display n.
<p>
<h2>Mouse Input</h2>
At the time of writing Qt/Embedded supports MouseMan (default), Microsoft,
IntelliMouse and some other devices specific to certain hardware (e.g. Vr
touch panel).  To specify the mouse to use set the $QWS_MOUSE_PROTO environment
variable, e.g.:<p>
<pre>
export QWS_MOUSE_PROTO=IntelliMouse
</pre>
<p>
See <a href="pointer-qws.html">Qt/Embedded Pointer Handling</a> for more
information.

<p><address><hr><div align="center">
<table width="100%" cellspacing="0" border="0"><tr>
<td>Copyright  2001 Trolltech<td><a href="http://www.trolltech.com/trademarks.html">Trademarks</a>
<td align="right"><div align="right">Qt version 2.3.2</div>
</table></div></address></body></html>