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_Poll

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

Wimp_Poll

(SWI &400C7)
Entry
R0 Poll Mask
R1 Pointer to 256 byte block
R3 Pointer to pollword in RMA (if R0 bit22 is set)
Exit
R0 Reason Code
R1 Pointer to block of data
R2 Senders task handle

Use

The purpose of this call is poll the Wimp to check for any system wide events that the application may need to respond to. i.e. windows, menus, mouse, keyboard handling.

Notes

Every application must have poll loop whereby it calls Wimp_Poll.

The call returns specific event codes, and the application must then decide whether it wishes to respond to it.

If upon calling Wimp_Poll an escape condition is detected, the Wimp will cancel and disable future escape conditions.

Any errors that occur inside Wimp_Poll are reported by the Wimp itself and not passed back to the applications. The only exception to this rule is when an error was caused due to bad parameter usage.

See also

  • Poll Mask
  • Reason Codes
  • Wimp_PollIdle
Revised on June 8, 2009 21:30:00 by Alan Robertson (52)? (127.0.0.1)
Edit | Back in time (2 revisions) | See changes | History | Views: Print | Source | Linked from: The Window Manager Polling, The Window Manager General Principles, The Window Manager Layout Of Windows, The Window Manager SWI Calls, The Window Manager Redrawing Windows, The Window Manager Updating Windows, The Window Manager Keyboard Input And Text Handling, The Window Manager Colour, The Window Manager Dragging, The Window Manager Applications And Documents, The Window Manager Memory Management, Wimp_AddMessages, Wimp_ClaimFreeMemory, Wimp_CreateMenu, Wimp_CreateWindow, Wimp_DragBox, Wimp_GetMenuState, Wimp_GetPointerInfo, Button State, Wimp_Initialise, Poll Mask, Null_Reason, Redraw_Window_Request, Open_Window_Request, Close_Window_Request, Pointer_Leaving_Window, Pointer_Entering_Window, Mouse_Click, User_Drag_Box, Key_Pressed, Wimp Managed Key Presses, Character Codes, Menu_Selection, Scroll_Request, Scroll Directions, Lose_Caret, Gain_Caret, User_Message, User_Message_Recorded, User_Message_Acknowledge, Wimp_PollIdle, Wimp_ProcessKey, Wimp_RedrawWindow, Wimp_RemoveMessages, Wimp_SendMessage, Wimp_SetCaretPosition, Wimp_StartTask, Validation String Y, The Window Manager Messages Overview, Message_Quit, Message_PreQuit, Message_PaletteChange, Message_SaveDesktop, Message_DeviceClaim, Message_DeviceInUse, Message_Shutdown, Message_AppControl, AppControl Flags, AppControl Operations, Message_FilerOpenDir, Message_FilerCloseDir, Message_FilerOpenDirAt, Message_FilerOpenDirAt ViewMode, Message_FilerSelectionDirectory, Message_FilerAddSelection, Filing System Numbers, FilerAction Operations, FilerAction Options, Message_FilerControlAction, Message_FilerSelection, Message_FilerSelection ViewMode, Message_AlarmSet, Message_SetAlarm 0, Message_SetAlarm 1, Message_SetAlarm 2, Message_AlarmGoneOff, Message_HelpRequest, Message_HelpReply, Message_HelpEnable, Escape Codes, Message_Notify, Message_MenuWarning, Message_ModeChange, Message_TaskInitialise, Currently Active Object Pointer, Message_TaskCloseDown, Message_SlotSize, Message_TaskNameRq, Message_SetSlot, Message_TaskNameIs, Message_TaskStarted, Message_MenusDeleted, Message_Iconize, Message_WindowClosed, Message_WindowInfo, Message_FontChanged, Message_IconizeAt, Message_IconizeAt Flags, Message_ClaimEntity, Message_ClaimEntity Flags, Message_DataRequest, Message Codes, Message_Dragging Flags, Message_DragClaim, Message_DragClaim Flags, Message_ReleaseEntity, Message_ReleaseEntity Flags, Message_DataSave, Message_DataSaveAck, Message_DataLoad, Message_DataLoadAck, Message_DataOpen, Message_RAMFetch, Message_RAMTransmit, Message_DataSaved, Message_ColourPickerColourChoice, ColourPicker Choice Flags, ColourPicker Colour Descriptor, ColourTrans Palette Entry, Descriptor Extension Types, ColourTrans Fixed Point, Message_ColourPickerColourChanged, ColourPicker Changed Flags, Message_ColourPickerCloseDialogRequest, Message_ColourPickerOpenParentRequest, *Filters, DragASprite Introduction, Filter_RegisterPostFilter, Post Filter Code, Filter_RegisterPreFilter, Pre Filter Code, TaskWindow Introduction, TaskWindow_Input, TaskWindow_Ego, TaskWindow_Morio, TaskWindow_Morite, TaskWindow_NewTask, TaskWindow_Output, TaskWindow_Resume, TaskWindow_Suspend, Font_DecodeMenu, OS_SWINumberFromString, OS_UpCall 6, Message_FilerAction, Reason Codes, PollWord_NonZero, Message_Dragging

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