Okay. So it doesn’t work right in the MouseButtonDown or in the MouseButtonUp routine. Let’s try moving the code to the OnPopup code and see if it works there. It seems that OnPopup is executed inbetween MouseButtonDown and MouseButtonUp. One complexity is that OnPopup does not pass the X and Y of the screen, so I have to save that in the MouseButtonDown routine. Then in order to get the “moved to” position, I have to update the saved X and Y in the OnMouseMove routine.
That works, but I have a problem in getting the Tag value from RichView. Richview has a function to get the Tag for the current cursor position, but the cursor is not updated until the MouseButtonUp procedure, which is done after OnPopup where I need the value. Unfortunately, Richview seems to have no easy way get the Tag for an arbitrary X and Y position. Time to post this to the RichView Support Newsgroup and see if the author has a solution for me. Else I’ll have to try something else.
While I’m waiting, I might as well fix up the Popup menus for the Tree View and for the Name Index so that they properly indicate the people to be reorganize. This is just a matter of setting up and calling the same routines as I had already worked out for the Everything Report. One modification for the Name Index is to allow more than two names in the list since more than two can be selected. Neither the Tree View nor the Name Index have the same dragging problem as the Everything Report since their selections are marked in bright blue and are obvious. Right-mouse dragging does not deselect them. Hmmm. Maybe if I don’t get a solution in the RichView newsgroup, then I’ll just leave it as is.