TreeViewDropTargetObserver::TreeViewDragMoved
virtual void TreeViewDragMoved ( const TreeViewDropTargetEvent & ev, DragDrop::Effect * effect, DragDrop::Feedback * denyFeedback );
Parameters
- ev
A reference to the event. - effect
Drag and drop effect can take the following values: DragDrop::Reject, DragDrop::Accept, DragDrop::Copy, DragDrop::Move, DragDrop::Link, DragDrop::Delete. - denyFeedback
Use this parameter to control the amount of target feedback. Can take the following values: DragDrop::AcceptSelAndIns, DragDrop::RejectSelection, DragDrop::RejectInsertion, DragDrop::RejectSelAndIns.
Description
Example
// Method Example: void DragTab2Observer::TreeViewDragMoved (const DG::TreeViewDropTargetEvent& ev, DG::DragDrop::Effect* effect, DG::DragDrop::Feedback* denyFeedback) { long insertPosTreeItem = ev.GetInsertPosition (); DG::TreeView* sourceTree = ev.GetTreeViewSource (); if (sourceTree != NULL && !IsValidInsertionPos (ev, insertPosTreeItem)) { *effect = DG::DragDrop::Reject; *denyFeedback = DG::DragDrop::RejectSelAndIns; return; } if (insertPosTreeItem != DG::TreeView::RootItem && insertPosTreeItem != DG::TreeView::NoItem) { long size = tabPage->treeView.GetItemTextLength (insertPosTreeItem); char* text = BMAllocatePtr (size, ALLOCATE_CLEAR, 0); if (DBERROR (text == NULL)) return; tabPage->treeView.GetItemText (insertPosTreeItem, text, size); if (CHCompareASCII (text, ARCHICAD_TEXT) == 0) { *denyFeedback = DG::DragDrop::RejectSelAndIns; } BMKillPtr (&text); } }
Drag moved event handling in tree view controls.