RISC OS Open
A fast and easily customised operating system for ARM devices
ROOL
Home | News | Software | Bugs | Bounties | Forum | Documents | Photos | Contact us
Account

Wimp_SetIconState

Programmer's Reference Manuals
» Part 7 - The Desktop
» The Window Manager
» SWI Calls
» Wimp_SetIconState

Wimp_SetIconState

(SWI &400CD)
Entry
R1 Pointer to block
Block
+0 Window handle (-1 or -2 for icon bar)
+4 Icon handle
+8 EOR word
+12 Clear word
Exit
R0 Corrupt

Use

The purpose of this call is to set value of an icons Icon Flag by the setting of the individual bits.

Notes

This call sets the icon flags ‘state’ at the bit level. It does this by the following method:

new state = (old state AND NOT 'clear word') EOR 'EOR word'

A combination of the EOR word and the clear word determines the value of the bits of the current icon flag. The table below shows how the bits are set when the EOR and clear words are used.

Clear EOR Meaning
0 0 Preserve the bit’s status
0 1 Toggle the bit’s state
1 0 Clear the bit
1 1 Set the bit

Any change to the icon flag will result in the icon being updated automatically on screen, however, if the justification of the icon is changed, and the icon has the input focus, then Wimp_SetCaretPosition should be called to make sure the caret remains at the correct text position.

See also

  • Icon Flags
  • Wimp_SetCaretPosition
Created on June 12, 2009 19:35:35 by Alan Robertson (52)? (127.0.0.1)
Edit | Views: Print | Source | Linked from: The Window Manager SWI Calls, The Window Manager Icons, The Window Manager Template Files, Wimp_WhichIcon

Search the Wiki

Commercial use

For commercial enquiries, please contact the owners of RISC OS, Castle Technology Ltd.

ROOL Store

The official C/C++ Development kit and more here.

Donate! Why?

Help ROOL make things happen – please consider donating!

Navigation

  • Home Page
  • All Pages
  • Recently Revised
  • Authors
  • Feeds
Site design © RISC OS Open Limited 2011 except where indicated
The RISC OS Open Instiki theme is based on Insitki's default layout

Valid XHTML 1.0  |  Valid CSS

Instiki 0.19.1(MML+)
This site runs on Rails

Hosted by Arachsys