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

The Window Manager Changing The Pointer

Programmer's Reference Manuals
» Part 7 - The Desktop?
» The Window Manager
» Technical Details
» Changing the Pointer

Overview

The Wimp allows for applications to change the mouse pointer via Wimp_SpriteOp where R0=&24 (36). The Wimp achieves this by transforming (and scaling if necessary) a sprite.

Sprites used for a pointer should have a suffix of ‘ptr_’. e.g. the standard arrow shape is named ptr_default.

Applications should only change the mouse pointer when it is within the work area of one of its windows.

Note: Each sprite should have its own palette.

Notification

The Wimp provides two event codes for applications to know when the pointer enters and leaves a window. This allows applications to change the pointer between entering and leaving a window.

1 Pointer_Entering_Window
2 Pointer_Leaving_Window

Tasks should also respond to the Message_ModeChange event code because the Wimp resets the pointer to its default shape upon a screen-mode change. In other words, if a pointer is over an application window when a screen-mode change occurs, it the responsibility of the application to ensure that the correct mouse pointer is used.

Revised on January 28, 2010 14:17:47 by GavinWraith (26)? (127.0.0.1)
Edit | Back in time (1 revision) | See changes | History | Views: Print | Source | Linked from: The Window Manager Technical Details

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