Function MouseDown(x As Integer, y As Integer) Handles MouseDown as Boolean
MouseDownMemory = New Pair(X,Y)
Self.SetFocus
Return True
End Function
Sub MouseDrag(x As Integer, y As Integer) Handles MouseDrag
CardDrag = Me
Var drag As New DragItem(Self, 0, 0, Me.Width, Me.Height)
Var pic As New Picture(Me.Width,Me.Height)
Me.DrawInto(pic.Graphics,0,0)
drag.DragPicture = pic
drag.MouseCursor = System.Cursors.FingerPointer
drag.Text = "Card"
If Abs(MouseDownMemory.Left -X)>16 Or Abs(MouseDownMemory.Right -Y)>16 Then
drag.Drag
End If
End Sub
in a modul Public Property CardDrag As Card
drop in a column
Sub DropObject(obj As DragItem, action As DragItem.Types) Handles DropObject
If obj.TextAvailable Then
If obj.Text = "Card" Then
Var NewCard As Card = CardDrag.Clone
CardDrag.Kill
NewCard.Top = obj.DropTop
NewCard.Width = Self.Width
NewCard.CardDate = DateTime.Now.ToString
Add(NewCard, True)
CardDrag = Nil
RaiseEvent Changed
End If
End If
End Sub