Revision as of 12:41, 9 October 2008 by tepaa (Talk | contribs)

Pointer capturing in Symbian C++ on touch-enabled devices

From Nokia Developer Wiki
Jump to: navigation, search

ID   Creation date September 29, 2008
Platform S60 5th Edition Tested on devices Nokia 5800 XpressMusic
Category Symbian C++ Subcategory Touch UI

Keywords (APIs, classes, methods, functions): CCoeControl::SetPointerCapture()


S60 5th Edition supports touch events. Pointer events are sended to the active ui application container control if pointer/stylus is on the application.

Container control base class implementation CCoeControl::HandlePointerEvent() redirects events to its child controls. Child control receives events if its borders (TRect) are inside pointer event. You have to remember implement event handling CCoeControl::HandlePointerEvent() into every ui controls in your application.

If you want that one ui control receives all pointer events, it can be done by CCoeControl::SetPointerCapture()

MMP file

The following libraries are required:

LIBRARY cone.lib

Source file

void CMyContainer::EatAllEvents()
// This start eating all pointer events from other ui control in this application.
void CMyContainer::ReleaseEventCatching()
// Disables pointer capturing


On ui contol receives all touch events.

See also

62 page views in the last 30 days.