Operating systems, development tools, and professional services
for connected embedded systems
for connected embedded systems
![]() |
![]() |
![]() |
![]() |
PtGetDndFetchIndex()
Search for an entry in the data_array for an incoming drag-and-drop event.
Synopsis:
int PtGetDndFetchIndex(
const PtDndCallbackInfo_t * cbinfo,
const PtDndFetch_t * data_array,
unsigned array_size);
Arguments:
- dndcb
- A pointer to the drag-and-drop callback data.
- data_array
- A pointer to an array of transport types that the widget accepts in drag-and-drop events. For more information see PtDndFetch_t.
- array_size
- The number of items in data_array.
Library:
ph
Description:
This function determines if the drag-and-drop data from the event found in the PtDndCallbackInfo_t matches any of the transport types in the data_array.
Returns:
- The index in the data_array for drag-and-drop event
- A match was found.
- -1
- No entry is found.
Examples:
In this example, we determine the index in the data_array for the incoming drag-and-drop event:
PtDndCallbackInfo_t *dndcb = cbinfo->cbdata;
static PtDndFetch_t FetchTypes[] = {
{"PhTransfiles", NULL, Ph_TRANSPORT_INLINE, },
};
/*
* ARRAY_SIZE is defined as follows.
*/
#define ARRAY_SIZE ( m_array ) ( sizeof( m_array ) / sizeof( m_array[0] ) )
int
dnd_callback( PtWidget_t *widget, ApInfo_t *apinfo, PtCallbackInfo_t *cbinfo )
{
switch( cbinfo->reason_subtype )
{
case Ph_EV_DND_ENTER:
num_matches = PtDndSelect( widget, FetchTypes, ARRAY_SIZE( FetchTypes ) )
break;
case Ph_EV_DND_DROP:
switch( PtGetDndFetchIndex( dndcb, FetchTypes, ARRAY_SIZE( FetchTypes ) ) )
{
case 0: //file
.
.
.
break;
}
.
.
.
break;
}
return( Pt_CONTINUE );
}
Classification:
Photon
| Safety: | |
|---|---|
| Interrupt handler | No |
| Signal handler | No |
| Thread | No |
See also:
PtDndFetch_t, PtDndSelect(), PtInitDnd(), PtReleaseTransportCtrl() PtTransportCtrl_t, PtTransportType()
Drag and Drop chapter of the Photon Programmer's Guide
![]() |
![]() |
![]() |
![]() |

![[Previous]](../prev.gif)
![[Contents]](../contents.gif)
![[Index]](../keyword_index.gif)
![[Next]](../next.gif)