5 |
|
|
6 |
* Commands for changing z order and focus. |
* Commands for changing z order and focus. |
7 |
|
|
|
* Command for transferring icon. |
|
|
|
|
8 |
* Think about protocol version management |
* Think about protocol version management |
9 |
|
|
10 |
* Try to assure that messages aren't repeated or are sent for hidden windows. |
* Try to assure that messages aren't repeated or are sent for hidden windows. |
235 |
has been restored. If the client has dropped all information about windows then |
has been restored. If the client has dropped all information about windows then |
236 |
it can send a SYNC to re-enumerate them. |
it can send a SYNC to re-enumerate them. |
237 |
|
|
238 |
|
SETICON |
239 |
|
------- |
240 |
|
|
241 |
|
Sets an icon for a window. |
242 |
|
|
243 |
|
Syntax: |
244 |
|
SETICON,<SERIAL>,<ID>,<CHUNK>,<FORMAT>,<WIDTH>,<HEIGHT>,<DATA> |
245 |
|
|
246 |
|
This message is sent when a window is initially created and at any time when |
247 |
|
the application modifies its icon. |
248 |
|
|
249 |
|
A window can have multiple icons, but only one of a given format and size. A |
250 |
|
SETICON received for an already existing format and size is expected to over- |
251 |
|
write that icon. |
252 |
|
|
253 |
|
Since icons can potentially be very large, it can easily overflow the line |
254 |
|
limitation in the protocol. To handle this, multiple SETICON will be issued |
255 |
|
with an ever increasing chunk number. |
256 |
|
|
257 |
|
The initial chunk is 0 (zero) and all chunks must be sent in order. Multiple |
258 |
|
SETICON sets for the same window may not interleave. SETICON sets for |
259 |
|
different windows may interleave though. |
260 |
|
|
261 |
|
Formats: |
262 |
|
RGBA : Four bytes of data per pixel, representing red, green, blue and |
263 |
|
alpha, in that order. |
264 |
|
|
265 |
|
Data is the raw icon data written in hex (e.g. 3fab32...). Chunks must be |
266 |
|
divided on a whole byte boundary. Case is not specified. |
267 |
|
|
268 |
|
DELICON |
269 |
|
------- |
270 |
|
|
271 |
|
Removes an icon for a window. |
272 |
|
|
273 |
|
Syntax: |
274 |
|
DELICON,<SERIAL>,<ID>,<FORMAT>,<WIDTH>,<HEIGHT> |
275 |
|
|
276 |
|
Removes the icon of a window matching the given format and size, previously |
277 |
|
set with SETICON. |
278 |
|
|
279 |
|
This command may not be interleaved with a SETICON set. |
280 |
|
|
281 |
Client to Server Operations |
Client to Server Operations |
282 |
=========================== |
=========================== |
283 |
|
|