summaryrefslogtreecommitdiff
path: root/docs
Unidiff
Diffstat (limited to 'docs') (more/less context) (ignore whitespace changes)
-rw-r--r--docs/qcop.doc2
-rw-r--r--docs/start.doc12
2 files changed, 7 insertions, 7 deletions
diff --git a/docs/qcop.doc b/docs/qcop.doc
index 6fe4c71..e62f91d 100644
--- a/docs/qcop.doc
+++ b/docs/qcop.doc
@@ -1,179 +1,179 @@
1/*! 1/*!
2 2
3\page qcop.html 3\page qcop.html
4 4
5\title QCop Messages 5\title QCop Messages
6 6
7QCop messages allow applications to communicate with each other. 7QCop messages allow applications to communicate with each other.
8These messages are send using QCopEnvelope, and received by connecting 8These messages are send using QCopEnvelope, and received by connecting
9to a QCopChannel. 9to a QCopChannel.
10 10
11The <tt>channelname</tt> of channels within Qtopia all start with "QPE/". 11The <tt>channelname</tt> of channels within Qtopia all start with "QPE/".
12The <tt>messagename</tt> is a function identifier followed by a list of types 12The <tt>messagename</tt> is a function identifier followed by a list of types
13in parentheses. There are no spaces in the message name. 13in parentheses. There are no spaces in the message name.
14 14
15The variable names shown in this documentation are purely for information 15The variable names shown in this documentation are purely for information
16purposes. A message shown as 16purposes. A message shown as
17"messageName(Type1 varname1, Type2 varname2, Type2 varname3)" would be 17"messageName(Type1 varname1, Type2 varname2, Type2 varname3)" would be
18used in program code as: 18used in program code as:
19 19
20\code 20\code
21 QCopEnvelope e(channelname, "messageName(Type1,Type2,Type2)"); 21 QCopEnvelope e(channelname, "messageName(Type1,Type2,Type2)");
22 e << parameter1 << parameter2 << parameter3; 22 e << parameter1 << parameter2 << parameter3;
23\endcode 23\endcode
24 24
25 25
26The system-wide channels and messages. 26The system-wide channels and messages.
27 27
28<dl> 28<dl>
29<dt><b>QPE/System</b> 29<dt><b>QPE/System</b>
30 <dd> 30 <dd>
31 <ul> 31 <ul>
32 <li>busy() 32 <li>busy()
33 <br> Causes a wait indicator to be shown to the user. 33 <br> Causes a wait indicator to be shown to the user.
34 <li>notBusy() 34 <li>notBusy()
35 <br> Cancels the wait indicator. 35 <br> Cancels the wait indicator.
36 <li>linkChanged(QString) 36 <li>linkChanged(QString)
37 <br> Sent whenever a link is changed. 37 <br> Sent whenever a link is changed.
38 It is sent by FileManager::saveFile() and others, and 38 It is sent by FileManager::saveFile() and others, and
39 received by the Launcher. 39 received by the Launcher.
40 <li>applyStyle() 40 <li>applyStyle()
41 <br> Sent when user changes style. 41 <br> Sent when user changes style.
42 It is received by QPEApplication and the application 42 It is received by QPEApplication and the application
43 will redraw accordingly. 43 will redraw accordingly.
44 <li>quit() 44 <li>quit()
45 <br> Terminates the Qtopia environment. 45 <br> Terminates the Qtopia environment.
46 <li>shutdown() 46 <li>shutdown()
47 <br> Terminates the system. 47 <br> Terminates the system.
48 <li>restart() 48 <li>restart()
49 <br> Restarts the Qtopia environment. 49 <br> Restarts the Qtopia environment.
50 <li>execute(QString) 50 <li>execute(QString)
51 <br> Executes or raises the given application. 51 <br> Executes or raises the given application.
52 <li>execute(QString,QString) 52 <li>execute(QString,QString)
53 <br> Executes or raises the given application, passing an argument. 53 <br> Executes or raises the given application, passing an argument.
54 Note that you should consider using the 54 Note that you should consider using the
55 <b>QPE/Application/<i>appname</i></b> channels described below. 55 <b>QPE/Application/<i>appname</i></b> channels described below.
56 <li>addAlarm(QDateTime,QCString,QCString,int) 56 <li>addAlarm(QDateTime,QCString,QCString,int)
57 <br> Internal. See AlarmServer::addAlarm() 57 <br> Internal. See AlarmServer::addAlarm()
58 <li>deleteAlarm(QDateTime,QCString,QCString,int) 58 <li>deleteAlarm(QDateTime,QCString,QCString,int)
59 <br> Internal. See AlarmServer::deleteAlarm() 59 <br> Internal. See AlarmServer::deleteAlarm()
60 <li>setDefaultRotation(int) 60 <li>setDefaultRotation(int)
61 <br> Internal. 61 <br> Internal.
62 <li>grabKeyboard(QString) 62 <li>grabKeyboard(QString)
63 <br> Internal. 63 <br> Internal.
64 <li>timeChange(QString) 64 <li>timeChange(QString)
65 <br> Internal. 65 <br> Internal.
66 <li>clockChange(bool) 66 <li>clockChange(bool)
67 <br> Internal. 67 <br> Internal.
68 <li>setScreenSaverInterval(int) 68 <li>setScreenSaverInterval(int)
69 <br> Internal. 69 <br> Internal.
70 <li>language(QString) 70 <li>language(QString)
71 <br> Internal. 71 <br> Internal.
72 </ul> 72 </ul>
73 73
74<dt><b>QPE/Sync</b> 74<dt><b>QPE/Sync</b>
75 <ul> 75 <ul>
76 <li>flush() 76 <li>flush()
77 <br> Sent at the start of synchronization. Synchable applications 77 <br> Sent at the start of synchronization. Synchable applications
78 should save any synchable data to disk. 78 should save any synchable data to disk.
79 <i>Note: this message is currently asynchronous. Stay tuned 79 <i>Note: this message is currently asynchronous. Stay tuned
80 to discussions regarding synchronization, as this message 80 to discussions regarding synchronization, as this message
81 may become synchronous, requiring slight midification to 81 may become synchronous, requiring slight midification to
82 your code. For now, just respond in a timely fashion, 82 your code. For now, just respond in a timely fashion,
83 since the sync server merely waits a small time.</i> 83 since the sync server merely waits a small time.</i>
84 <li>reload() 84 <li>reload()
85 <br> Sent at the end of synchronization. Synchable applications 85 <br> Sent at the end of synchronization. Synchable applications
86 should reload any synchable data from disk. 86 should reload any synchable data from disk.
87 </ul> 87 </ul>
88 88
89<dt><b>QPE/TaskBar</b> 89<dt><b>QPE/TaskBar</b>
90 <ul> 90 <ul>
91 <li>message(QString) 91 <li>message(QString)
92 <br> Internal. See Global::statusMessage() 92 <br> Internal. See Global::statusMessage()
93 <li>showInputMethod() 93 <li>showInputMethod()
94 <br> Internal. 94 <br> Internal.
95 <li>hideInputMethod() 95 <li>hideInputMethod()
96 <br> Internal. 96 <br> Internal.
97 <li>reloadInputMethods() 97 <li>reloadInputMethods()
98 <br> Internal. 98 <br> Internal.
99 <li>reloadApplets() 99 <li>reloadApplets()
100 <br> Internal. 100 <br> Internal.
101 </ul> 101 </ul>
102 102
103<dt><b>QPE/Card</b> 103<dt><b>QPE/Card</b>
104 <ul> 104 <ul>
105 <li>stabChanged() 105 <li>stabChanged()
106 <br> Sent when <tt>/var/run/stab</tt>, <tt>/var/state/pcmcia/stab</tt>, 106 <br> Sent when <tt>/var/run/stab</tt>, <tt>/var/state/pcmcia/stab</tt>,
107 or <tt>/var/lib/pcmcia/stab</tt> may have changed. 107 or <tt>/var/lib/pcmcia/stab</tt> may have changed.
108 <li>netUp() 108 <li>netUp()
109 <br> Sent when a network connection is running. 109 <br> Sent when a network connection is running.
110 <li>netDown() 110 <li>netDown()
111 <br> Sent when a network connection is available, but not running. 111 <br> Sent when a network connection is available, but not running.
112 <li>netUnavailable() 112 <li>netUnavailable()
113 <br> Sent when a network connection is not available. 113 <br> Sent when a network connection is not available.
114 </ul> 114 </ul>
115 115
116<dt><b>Qt/Tray</b> 116<dt><b>Qt/Tray</b>
117 This channel allows Qt applications (not just Qtopia applications) 117 This channel allows Qt applications (not just Qtopia applications)
118 to show system-tray status in a cross-platform manner, 118 to show system-tray status in a cross-platform manner,
119 but it is not currently supported. See TaskbarAppletInterface for 119 but it is not currently supported. See TaskbarAppletInterface for
120 a more powerful alternative for system tray applications. 120 a more powerful alternative for system tray applications.
121 <ul> 121 <ul>
122 <li>popup(int,QPoint) 122 <li>popup(int,QPoint)
123 <li>remove(int) 123 <li>remove(int)
124 <li>setIcon(int,QPixmap) 124 <li>setIcon(int,QPixmap)
125 <li>setToolTip(int,QString) 125 <li>setToolTip(int,QString)
126 <li>doubleClicked(int,QPoint) 126 <li>doubleClicked(int,QPoint)
127 <li>clicked(int,QPoint) 127 <li>clicked(int,QPoint)
128 </ul> 128 </ul>
129</dl> 129</dl>
130 130
131Each application listens on a channel called 131Each application listens on a channel called
132<b>QPE/Application/<i>appname</i></b>, where <b><i>appname</i></b> is 132<b>QPE/Application/<i>appname</i></b>, where <b><i>appname</i></b> is
133the executable name (the application identifier). Standard messages on 133the executable name (the application identifier). Standard messages on
134this channel are: 134this channel are:
135 135
136<dl> 136<dl>
137 <dt><b>QPE/Application/<i>appname</i></b> 137 <dt><b>QPE/Application/<i>appname</i></b>
138 <ul> 138 <ul>
139 <li>setDocument(QString) 139 <li>setDocument(QString)
140 <br>Internal. Causes the setDocument(const QString&) slot 140 <br>Internal. Causes the setDocument(const QString&) slot
141 of <a href=docwidget.html>the main document widget</a> 141 of <a href=docwidget.html>the main document widget</a>
142 to be called. 142 to be called.
143 <li>nextView() 143 <li>nextView()
144 <br>Applications connected to hardware buttons will receive 144 <br>Applications connected to hardware buttons will receive
145 this message if they are already visible. 145 this message if they are already visible.
146 <li>raise() 146 <li>raise()
147 <br>Internal. Causes the the main document widget and the 147 <br>Internal. Causes the the main document widget and the
148 current modal widget to be raised. 148 current modal widget to be raised.
149 <li>quit() 149 <li>quit()
150 <br>Internal. Terminates the application. 150 <br>Internal. Terminates the application.
151 <li>quitIfInvisible() 151 <li>quitIfInvisible()
152 <br>Internal. Terminates the application if it is not shown. 152 <br>Internal. Terminates the application if it is not shown.
153 </ul> 153 </ul>
154</dl> 154</dl>
155 155
156The QPE/Application/<i>appname</i> channel has a special property: when 156The QPE/Application/<i>appname</i> channel has a special property: when
157messages are sent to these channels vie QCopEnvelope, the message is 157messages are sent to these channels vie QCopEnvelope, the message is
158delivered even if the application is not yet running (the application 158delivered even if the application is not yet running (the application
159is run and the message is then sent). 159is run and the message is then sent).
160 160
161Applications also respond to messages specific to the application. 161Applications also respond to messages specific to the application.
162Such messages in the base Qtopia applications are: 162Such messages in the base Qtopia applications are:
163 163
164<dl> 164<dl>
165 <dt><b>QPE/Application/helpbrowser</b> 165 <dt><b>QPE/Application/helpbrowser</b>
166 <ul> 166 <ul>
167 <li>showFile(QString <i>file</i>) 167 <li>showFile(QString <i>file</i>)
168 <br>Send this message to have the Help Browser show a file. 168 <br>Send this message to have the Help Browser show a file.
169 The <i>file</i> may be an absolute filename or relative 169 The <i>file</i> may be an absolute filename or relative
170 to the system HTML documentation directory ($QPEDIR/help/html). 170 to the system HTML documentation directory ($OPIEDIR/help/html).
171 </ul> 171 </ul>
172 <dt><b>QPE/Application/datebook</b> 172 <dt><b>QPE/Application/datebook</b>
173 <ul> 173 <ul>
174 <li>alarm(QDateTime,int) 174 <li>alarm(QDateTime,int)
175 <br>Internal. Causes the Calendar application to sound alarms. 175 <br>Internal. Causes the Calendar application to sound alarms.
176 </ul> 176 </ul>
177</dl> 177</dl>
178 178
179*/ 179*/
diff --git a/docs/start.doc b/docs/start.doc
index 9745d9a..01b6ab1 100644
--- a/docs/start.doc
+++ b/docs/start.doc
@@ -1,191 +1,191 @@
1/*! 1/*!
2 2
3\page start.html 3\page start.html
4 4
5\title Getting Started 5\title Getting Started
6 6
7<html> 7<html>
8<title>Qtopia - The Qt palmtop environment</title> 8<title>Qtopia - The Qt palmtop environment</title>
9 9
10<body> 10<body>
11<h1><i>Qtopia</i> - The Qt palmtop environment</h1> 11<h1><i>Qtopia</i> - The Qt palmtop environment</h1>
12 12
13<p> 13<p>
14<i>Qtopia</i> is a windowing system for handheld devices. It offers 14<i>Qtopia</i> is a windowing system for handheld devices. It offers
15developers the powerful Qt API, and provides users with fast and 15developers the powerful Qt API, and provides users with fast and
16intuitive interaction. 16intuitive interaction.
17 17
18<h2>Developing for <i>Qtopia</i></h2> 18<h2>Developing for <i>Qtopia</i></h2>
19 19
20<p> 20<p>
21The Qt API includes rich GUI functionality, and is suitable for 21The Qt API includes rich GUI functionality, and is suitable for
22both large and small applications. 22both large and small applications.
23 23
24<p> 24<p>
25Since <i>Qtopia</i> offers the complete Qt API, you can do much of 25Since <i>Qtopia</i> offers the complete Qt API, you can do much of
26your development on any of the other platforms for which Qt is 26your development on any of the other platforms for which Qt is
27available - Windows, Unix/X11, or Mac OS X. However, for optimal 27available - Windows, Unix/X11, or Mac OS X. However, for optimal
28tailoring of your application to the smaller screen and other 28tailoring of your application to the smaller screen and other
29demands of a handheld environment, you should use the <i>Qtopia 29demands of a handheld environment, you should use the <i>Qtopia
30SDK</i>. 30SDK</i>.
31 31
32<p> 32<p>
33The <i>Qtopia SDK</i> allows you to develop <i>Qtopia</i> 33The <i>Qtopia SDK</i> allows you to develop <i>Qtopia</i>
34applications under the Linux desktop environment using the Qt Virtual 34applications under the Linux desktop environment using the Qt Virtual
35Framebuffer, which completely emulates the handheld <i>Qtopia</i> 35Framebuffer, which completely emulates the handheld <i>Qtopia</i>
36environment. It also includes cross-compiler software so that you can 36environment. It also includes cross-compiler software so that you can
37compile your application to run on the target handheld device. 37compile your application to run on the target handheld device.
38If you do not already have the Qtopia SDK (this document is normally 38If you do not already have the Qtopia SDK (this document is normally
39part of the SDK), contact info@trolltech.com, or see the 39part of the SDK), contact info@trolltech.com, or see the
40<a href=http://www.trolltech.com>Trolltech</a> web site. 40<a href=http://www.trolltech.com>Trolltech</a> web site.
41 41
42<p>To build applications for the SHARP SL5000 or similar StrongARM-based devices, 42<p>To build applications for the SHARP SL5000 or similar StrongARM-based devices,
43you will also need a StrongARM cross compiler. Entrants in the programming 43you will also need a StrongARM cross compiler. Entrants in the programming
44contest for this device will have received both the SDK and a cross-compiler. 44contest for this device will have received both the SDK and a cross-compiler.
45 45
46<p> 46<p>
47The SDK includes an example program. We recommend that you compile and 47The SDK includes an example program. We recommend that you compile and
48run this example to learn how things work, before tackling your own 48run this example to learn how things work, before tackling your own
49projects. 49projects.
50 50
51<p> 51<p>
52To compile the example program for running on the Linux desktop: 52To compile the example program for running on the Linux desktop:
53 53
54<ol> 54<ol>
55 <li> 55 <li>
56 <p> 56 <p>
57 Check the environment is correct: 57 Check the environment is correct:
58 58
59 <p> 59 <p>
60<pre> 60<pre>
61 export QPEDIR=/opt/Qtopia 61 export OPIEDIR=/opt/Qtopia
62 export QTDIR=/opt/Qtopia 62 export QTDIR=/opt/Qtopia
63 export PATH=$QTDIR/bin:$PATH 63 export PATH=$QTDIR/bin:$PATH
64 export TMAKEPATH=/opt/Qtopia/tmake/lib/qws/linux-generic-g++ 64 export TMAKEPATH=/opt/Qtopia/tmake/lib/qws/linux-generic-g++
65 export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH 65 export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
66</pre> 66</pre>
67 67
68 <li> Take a copy of the example: 68 <li> Take a copy of the example:
69 69
70<pre> 70<pre>
71 cd somewhere 71 cd somewhere
72 cp -r $QPEDIR/example . 72 cp -r $OPIEDIR/example .
73 cd example 73 cd example
74</pre> 74</pre>
75 75
76 <li> Generate a Makefile: 76 <li> Generate a Makefile:
77 77
78<pre> 78<pre>
79 tmake -o Makefile example.pro 79 tmake -o Makefile example.pro
80</pre> 80</pre>
81 81
82 <li> Build the example: 82 <li> Build the example:
83 83
84<pre> 84<pre>
85 make 85 make
86</pre> 86</pre>
87 87
88 <li> Install it: 88 <li> Install it:
89 89
90<pre> 90<pre>
91 su # root privileges required to install 91 su # root privileges required to install
92 cp example.desktop $QPEDIR/apps/Applications 92 cp example.desktop $OPIEDIR/apps/Applications
93 cp Example.png $QPEDIR/pics 93 cp Example.png $OPIEDIR/pics
94 cp example $QPEDIR/bin 94 cp example $OPIEDIR/bin
95 exit # no need to be root anymore 95 exit # no need to be root anymore
96</pre> 96</pre>
97 97
98 <li> To run it, first run the Qt Virtual Framebuffer: 98 <li> To run it, first run the Qt Virtual Framebuffer:
99 99
100<pre> 100<pre>
101 qvfb &amp; 101 qvfb &amp;
102</pre> 102</pre>
103 103
104 <li> Then run the <i>Qtopia</i> environment: 104 <li> Then run the <i>Qtopia</i> environment:
105 105
106<pre> 106<pre>
107 qpe 107 qpe
108</pre> 108</pre>
109 109
110<p> 110<p>
111 Your application should be available in the Applications tab visible 111 Your application should be available in the Applications tab visible
112inside the Qt Virtual Framebuffer window. 112inside the Qt Virtual Framebuffer window.
113</p> 113</p>
114 114
115 <li> If you want to distribute your applications to others, build an RPM package, e.g.: 115 <li> If you want to distribute your applications to others, build an RPM package, e.g.:
116<pre> 116<pre>
117 mkipks -rpm -arch i386 example.control 117 mkipks -rpm -arch i386 example.control
118</pre> 118</pre>
119</ol> 119</ol>
120 120
121<p> 121<p>
122To make your own application, use the example program as a model. Make sure that 122To make your own application, use the example program as a model. Make sure that
123when you add files to your project, you also add them 123when you add files to your project, you also add them
124to your project file (e.g. <tt>example.pro</tt>) and rerun the 124to your project file (e.g. <tt>example.pro</tt>) and rerun the
125<tt>tmake</tt> command to update the <tt>Makefile</tt>. 125<tt>tmake</tt> command to update the <tt>Makefile</tt>.
126 126
127<p> 127<p>
128To build you application for the SHARP SL5000 rather than just running 128To build you application for the SHARP SL5000 rather than just running
129on the desktop, the process is similar: 129on the desktop, the process is similar:
130 130
131<ol> 131<ol>
132 <li> 132 <li>
133 <p> 133 <p>
134 Check the environment is correctly set for the SHARP SL5000: 134 Check the environment is correctly set for the SHARP SL5000:
135 135
136 <p> 136 <p>
137<pre> 137<pre>
138 export QPEDIR=/opt/Qtopia/sharp 138 export OPIEDIR=/opt/Qtopia/sharp
139 export QTDIR=/opt/Qtopia/sharp 139 export QTDIR=/opt/Qtopia/sharp
140 export PATH=$QTDIR/bin:/usr/local/arm/bin:$PATH 140 export PATH=$QTDIR/bin:/usr/local/arm/bin:$PATH
141 export TMAKEPATH=/opt/Qtopia/tmake/lib/qws/linux-sharp-g++ 141 export TMAKEPATH=/opt/Qtopia/tmake/lib/qws/linux-sharp-g++
142</pre> 142</pre>
143 143
144 <li> Build and install exactly the same as you did for the desktop 144 <li> Build and install exactly the same as you did for the desktop
145 (note that the generated Makefile is different): 145 (note that the generated Makefile is different):
146<pre> 146<pre>
147 make clean 147 make clean
148 tmake -o Makefile example.pro 148 tmake -o Makefile example.pro
149 ... <i>etc.</i> 149 ... <i>etc.</i>
150</pre> 150</pre>
151 151
152 <li> To install it on a device, build an ipk package file (you should be root 152 <li> To install it on a device, build an ipk package file (you should be root
153 to do this, since then it will strip the executable for you): 153 to do this, since then it will strip the executable for you):
154<pre> 154<pre>
155 mkipks example.control 155 mkipks example.control
156</pre> 156</pre>
157 157
158<p> 158<p>
159 The resulting <tt>example-1.0.0.ipk</tt> can be installed on the 159 The resulting <tt>example-1.0.0.ipk</tt> can be installed on the
160SL5000 by using <i>Qtopia Desktop</i>. 160SL5000 by using <i>Qtopia Desktop</i>.
161</p> 161</p>
162 162
163</ol> 163</ol>
164 164
165<h3>Building Your Own Applications</h3> 165<h3>Building Your Own Applications</h3>
166 166
167Once you have built the example, you can proceed with writing 167Once you have built the example, you can proceed with writing
168your own applicatons. If you are not familiar with Qt, you should 168your own applicatons. If you are not familiar with Qt, you should
169consult the Qt documentation by pointing your web browser at 169consult the Qt documentation by pointing your web browser at
170<a href=file:/opt/Qtopia/doc/html/index.html><tt>/opt/Qtopia/doc/html/index.html</tt></a> 170<a href=file:/opt/Qtopia/doc/html/index.html><tt>/opt/Qtopia/doc/html/index.html</tt></a>
171when you have installed the SDK, or use the online 171when you have installed the SDK, or use the online
172<a href=http://doc.trolltech.com/>Trolltech Documentation Site</a>. 172<a href=http://doc.trolltech.com/>Trolltech Documentation Site</a>.
173The <a href="http://www.trolltech.com/products/qt/whitepaper.html">Qt 173The <a href="http://www.trolltech.com/products/qt/whitepaper.html">Qt
174Whitepaper</a> provides a good overview of, and introduction to, the 174Whitepaper</a> provides a good overview of, and introduction to, the
175Qt API. 175Qt API.
176 176
177<p> 177<p>
178When you add more files to your application, just edit the project 178When you add more files to your application, just edit the project
179file (e.g. <tt>example.pro</tt>) and rerun the <tt>tmake</tt> 179file (e.g. <tt>example.pro</tt>) and rerun the <tt>tmake</tt>
180command. 180command.
181 181
182<p> 182<p>
183The <tt>.ui</tt> files are <i>Qt Designer</i> user interface files. 183The <tt>.ui</tt> files are <i>Qt Designer</i> user interface files.
184You can create and edit these using <i>Qt Designer</i>: 184You can create and edit these using <i>Qt Designer</i>:
185<pre> 185<pre>
186 designer example.ui 186 designer example.ui
187</pre> 187</pre>
188<i>Qt Designer</i>'s online documentation includes a complete 188<i>Qt Designer</i>'s online documentation includes a complete
189tutorial. 189tutorial.
190 190
191*/ 191*/