Middleware, development tools, realtime operating system
software and services for superior embedded design


Home
QNX Community Resources
QNX Documentation Library
PtSendEventToWidget

PtSendEventToWidget

QNX Software Systems
Developer Resources
Blogs
Board support packages
Foundry27 projects
Forums
Hardware support listing
Online video tutorials
Product documentation
Technical Articles

PtSendEventToWidget()

Give an event to a widget

Synopsis:

int PtSendEventToWidget( PtWidget_t *widget, 
                         PhEvent_t *event );

Library:

ph

Description:

This function passes the event in the given PhEvent_t structure directly to the given widget for processing.


Note: The widget expects the event to be followed immediately by the associated set of rectangles and event data. See the example below.

Returns:

The value returned by the last callback function invoked by the event, or -1 if an error occurred.

Examples:

// Send a Phantom release event to a widget.

Phantom( PtWidget_t *widget, PhEvent_t *event )
{
  struct{
    PhEvent_t event;
    PhRect_t  rect;
    PhPointerEvent_t pevent;
  } new_event;

  memset( &new_event.rect, -1 , 
          sizeof( new_event.rect ) );

  if( event ) {
    new_event.event = *event;
  }

  new_event.event.processing_flags = Ph_FAKE_EVENT;
  new_event.event.type = Ph_EV_BUT_RELEASE;
  new_event.event.subtype = Ph_EV_RELEASE_PHANTOM;;
  new_event.pevent.click_count = 1;
  new_event.pevent.buttons = Ph_BUTTON_SELECT;
  new_event.event.num_rects = 1;
  PtSendEventToWidget( widget, 
                       (PhEvent_t *) &new_event);
}

Classification:

Photon

Safety:
Interrupt handler No
Signal handler No
Thread No

See also:

PhEvent_t, PhEmit(), PhEmitmx(), PhPointerEvent_t

Events chapter of the Photon Programmer's Guide