-
5530 XM Drag&Drop
I have implemented a custom drag and drop for my listbox dialog.
It works great on 5800 XM and N97, but on 5530 XM instead the listbox is scrolled.
How can I disable this phone specific behavior?
This is my code for sorting (drag&drop) the items in my dialog.
[code]
void CMyDialog::HandlePointerEventL(const TPointerEvent& aPointerEvent)
{
CAknSelectionListDialog::HandlePointerEventL( aPointerEvent );
// All CDeckControl pointer event handling here
if( aPointerEvent.iType == TPointerEvent::EDrag )
{
if( !iDragging )
{
iDragging = ETrue;
iDragAndDropLastIndex = iListBox->CurrentItemIndex();
}
else
{
TInt newIndex = iListBox->CurrentItemIndex();
if( newIndex != iDragAndDropLastIndex )
{
TInt inc = iDragAndDropLastIndex > newIndex ? -1 : 1;
for( TInt i = iDragAndDropLastIndex; i != newIndex; i += inc )
{
SwapItemsL( iDragAndDropLastIndex, i );
iDragAndDropLastIndex = i;
}
SwapItemsL( iDragAndDropLastIndex, newIndex );
iDragAndDropLastIndex = newIndex;
LoadItemsL();
iListBox->SetCurrentItemIndex( newIndex );
}
}
}
else if (aPointerEvent.iType == TPointerEvent::EButton1Up && iDragging)
{
iDragging = EFalse;
}
}
[/code]
If I remove CAknSelectionListDialog::HandlePointerEventL( aPointerEvent ); then I should add manual code for selecting the item?
I feel like every new model will break something in my code! :)