104
Fullfit the caption on the element's width

With SwimLane1
	With .Elements.Add("<solidline><b>Bank Account</b></solidline><br>+ owner: String <r><a 1;properties>+</a><br><solidline>+ balance: Currency = 0</s" & _
"olidline><br>+ deposit(amount: Currency)<r><a 2;methods>+</a><br>+ withdraw(amount: Currency)")
		.CaptionSingleLine = 1
		.BackColor = RGB(248,248,248)
		.AutoSize = False
		.Width = 194
		.Height = 76
		.CaptionAlign = 4 ' &H4
	End With
End With
103
Wrap the caption by <br> or "\r\n" sequence only

With SwimLane1
	With .Elements.Add("<solidline><b>Bank Account</b></solidline><br>+ owner: String <r><a 1;properties>+</a><br><solidline>+ balance: Currency = 0</s" & _
"olidline><br>+ deposit(amount: Currency)<r><a 2;methods>+</a><br>+ withdraw(amount: Currency)")
		.CaptionSingleLine = 1
		.BackColor = RGB(248,248,248)
	End With
End With
102
Display a custom tooltip
' MouseMove event - Occurs when the user moves the mouse.
Private Sub SwimLane1_MouseMove(ByVal Button As Integer,ByVal Shift As Integer,ByVal X As Long,ByVal Y As Long)
	With SwimLane1
		.ShowToolTip "new content","",,"+8","+8"
	End With
End Sub


101
Shows the tooltip of the object moved relative to its default position
' MouseMove event - Occurs when the user moves the mouse.
Private Sub SwimLane1_MouseMove(ByVal Button As Integer,ByVal Shift As Integer,ByVal X As Long,ByVal Y As Long)
	With SwimLane1
		.ShowToolTip "<null>","<null>",,"+8","+8"
	End With
End Sub

With SwimLane1
	.Elements.Add("Element with a Tooltip").ToolTip = "This is a bit of text that should be displayed when cursor hovers the element."
End With
100
Add a pool to cover all visible-elements

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.Pools.Add().HeaderSize(0) = 24
	.EndUpdate 
End With
99
How can I ensure that a specified pool fits the surface's visible area
With SwimLane1
	With .Pools
		With .Add().Pattern
			.Type = 6
			.Color = RGB(224,224,224)
		End With
		.Add(2000).EnsureVisible 
	End With
End With
98
No property for the pool can be saved/restored through Undo/Redo feature

With SwimLane1
	.AllowUndoRedo = True
	With .Pools.Add(-54,-47,244,112)
		l = .StartUpdatePool
		With .Lane(1)
			.Color = RGB(240,240,240)
			.Children.Count = 2
		End With
		.EndUpdatePool l
	End With
End With
97
Rename Undo/Redo commands into the control's toolbar

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.ToolBarFormat = "-1,100,102,101,|,103,104"
	.ToolBarCaption(103) = "Anuleaza <img>4</img>"
	.ToolBarCaption(104) = "<img>5</img>Reface"
	.ToolBarToolTip(103) = "Anuleaza ultima actiune UI. Pentru a anula o actiune apasati Ctrl+Z."
	.ToolBarToolTip(104) = "Inverseaza cea mai recenta operatie de anulare. Pentru a reface o actiune apasati Ctrl+Y."
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.EndUpdate 
End With
96
Add Undo/Redo commands to control's toolbar

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.ToolBarFormat = "-1,100,102,101,|,103,104"
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.EndUpdate 
End With
95
Clear Undo/Redo queue (method 2)

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	c = .UndoRedoQueueLength
	.UndoRedoQueueLength = 0
	.UndoRedoQueueLength = c
	Debug.Print( .UndoListAction() )
	.EndUpdate 
End With
94
Clear Undo/Redo queue (method 1)

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.AllowUndoRedo = True
	Debug.Print( .UndoListAction() )
	.EndUpdate 
End With
93
Removes Redo operations

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.Undo 
	.RedoRemoveAction 10
	Debug.Print( .RedoListAction() )
	.EndUpdate 
End With
92
Removes Undo operations

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.UndoRemoveAction 10
	Debug.Print( .UndoListAction() )
	.EndUpdate 
End With
91
Record the UI operations as a block of undo/redo operations

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.StartBlockUndoRedo 
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.EndBlockUndoRedo 
	Debug.Print( .UndoListAction() )
	.EndUpdate 
End With
90
Groups the next to current Undo/Redo Actions in a single block

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.GroupUndoRedoActions 3
	Debug.Print( .UndoListAction() )
	.EndUpdate 
End With
89
Limits the number of entries within the Undo/Redo queue

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.UndoRedoQueueLength = 1
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	Debug.Print( .UndoListAction() )
	.EndUpdate 
End With
88
Lists the Redo actions that can be performed on the surface

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.Undo 
	Debug.Print( .RedoListAction() )
	.EndUpdate 
End With
87
Lists the Undo actions that can be performed on the surface

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	Debug.Print( .UndoListAction() )
	.EndUpdate 
End With
86
Checks whether the Undo operation is possible

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.Undo 
	Debug.Print( "CanRedo" )
	Debug.Print( .CanRedo )
	.EndUpdate 
End With
85
Call Redo by code

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.Undo 
	.Redo 
	.EndUpdate 
End With
84
Checks whether the Undo operation is possible

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	Debug.Print( "CanUndo" )
	Debug.Print( .CanUndo )
	.EndUpdate 
End With
83
Call Undo by code

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.Undo 
	.EndUpdate 
End With
82
Save the element's properties for Undo/Redo operations, by code

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.StartBlockUndoRedo 
	With .Links.Add(SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2))
		h = .StartUpdateLink
		.Color = RGB(255,0,0)
		.Width = 2
		.ShowDir = False
		.ShowLinkType = 2
		.EndUpdateLink h
	End With
	.EndBlockUndoRedo 
	.EndUpdate 
End With
81
No color is restored for the link when Undo/Redo operation is executed

' AddElement event - A new element has been added to the surface.
Private Sub SwimLane1_AddElement(ByVal Element As Object)
	' Element.ShowCheckBox = True
	' Element.CheckBoxAlign = 2
End Sub

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	With .Elements
		.Add "Check <b>1",-64,-64
		.Add("Check <b>2").Checked = 1
	End With
	.StartBlockUndoRedo 
	With .Links.Add(SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2))
		h = .StartUpdateLink
		.Color = RGB(255,0,0)
		.Width = 2
		.ShowDir = False
		.ShowLinkType = 2
		.EndUpdateLink h
	End With
	.EndBlockUndoRedo 
	.EndUpdate 
End With
80
Save the element's properties for Undo/Redo operations, by code

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Elements.Add "Item <b>1",-64,-64
	.StartBlockUndoRedo 
	With .Elements.Add("Item <b>2")
		h = .StartUpdateElement
		.BackColor = RGB(0,0,0)
		.ForeColor = RGB(255,255,255)
		.BorderColor = RGB(255,0,0)
		.EndUpdateElement h
	End With
	.EndBlockUndoRedo 
	.EndUpdate 
End With
79
No color is restored for the element when Undo/Redo operation is executed

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Elements.Add "Item <b>1",-64,-64
	.StartBlockUndoRedo 
	With .Elements.Add("Item <b>2")
		h = .StartUpdateElement
		.BackColor = RGB(0,0,0)
		.ForeColor = RGB(255,255,255)
		.BorderColor = RGB(255,0,0)
		.EndUpdateElement h
	End With
	.EndBlockUndoRedo 
	.EndUpdate 
End With
78
How can I ensure that a specified element fits the surface's visible area

With SwimLane1
	With .Elements
		With .Add("Element A",-100).Pattern
			.Type = 6
			.Color = RGB(224,224,224)
		End With
		.Add("Element B",2000).EnsureVisible 
	End With
End With
77
LayoutEndChanging(exUndo), LayoutEndChanging(exRedo) or LayoutEndChanging(exUndoRedoUpdate) notifiy your application once a Undo/Redo operation is executed (CTRL+Z, CTRL+Y) or updated
' LayoutEndChanging event - Notifies your application once the control's layout has been changed.
Private Sub SwimLane1_LayoutEndChanging(ByVal Operation As Long)
	With SwimLane1
		Debug.Print( "LayoutEndChanging" )
		Debug.Print( Operation )
	End With
End Sub

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.EndUpdate 
End With
76
Turn on the Undo/Redo feature

With SwimLane1
	.BeginUpdate 
	.AllowUndoRedo = True
	.Pools.Add -154,-82,244,122
	With .Elements
		.Add "Item <b>1",-64,-64
		.Add "Item <b>2"
	End With
	.Links.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	.EndUpdate 
End With
75
ImageSize property on 32 (specifies the size of control' icons/images/check-boxes/radio-buttons)

' AddElement event - A new element has been added to the surface.
Private Sub SwimLane1_AddElement(ByVal Element As Object)
	' Element.ShowCheckBox = True
End Sub

With SwimLane1
	.BeginUpdate 
	.ImageSize = 32
	.Font.Size = 16
	.ContextMenuFont.Size = 16
	.Images "gBJJgBAIDAAEg4AEEKAD/hz/EMNh8TIRNGwAjEZAEXjAojKAjMLjABhkaABAk0plUrlktl0vmExmUzmk1m03nE5nU7nk9miAoE+oVDolFo1HpFJpU5h8Sf9OqFNqUOq" & _
"NUqdPq9VrFWrlbr1QpdhAFAkFis1ntFptVrtkrpszrNvmVxqk3uVtm1kmF3sdBvF/wGBmV+j9BYGHwWJulfxdax2NyFdx2JlV6l9Nw7AAGZymdz2Cy2GxErvWcz9ivlw" & _
"yV21cuxugwktzGIzmvwtl0+53U5y0a0Wazmmyu/3dCyOMyXHx/J5nIr9q3uyqnBxFN3G46ma4vb7mD2Ng4nZze00fDkHC7t7us2rOX5tguetpHRlmz4HVqnXk1PjHO+C" & _
"MPo9MBMC+j2vC8j7wS8cFNI4kBo05UIvfCT/NsnsApU+0Fqg/T+oy/kPxC0sEQfErKQK96+w28UWRI8UGvO8sTLS9r2PWmsMJTDTask3CsIbIEQRA3shOXEEAO/GclJ9" & _
"FEKrrA8FRbKMXRIlb0JxCkjS1LMswhCcvuel0cv26cSMa8Ufx+2sQwhEUoSXOCjSbLcnxjKc7sdKUVyq28NtVI71P9P7JxtQEapjQ6fzfM8zPfNE2PhIsLL63E40slk5" & _
"y7N89LcyU9SvMb3SdUc6VJLj5VLVLfO/PS9KzNFHUa/0XyBD0dxlS9cxhMlTRSoNXypPErWDPyfNS+MwprRNO0FD8wVVZ1AI08URwVRjtJ1WCn21QkkUrXVLVPQS/XIk" & _
"FgTxT9iONZ9xVTdq+L1eKg3kkF6Upe68XtfV51/MtrVjBlwYFL1ev8y1/P6/lyzzYl02wntj0RVFmS1Qa+M5as93QxEUW9e993rfmQ2+vy65M/mL1lhl/2bj2ByVduMt" & _
"NhCJT9hdz41nN14Ld12Z9UjfI/oUAaGseiw6+uFLLhcVabJOS5RqOE0BHlZ5VnEr5fOMs3st+aa/bbRzrJGV51Y0b0DbqaWXZD90hIsPbjWu52+6Wyadpe66hhO+P/Xi" & _
"oW5rD8ZbrUZuVg6n1dsE/cXmewu1m9PVwnd35/nueXho/NaJzmjc61W76esuT77eG8pTquy9TwWH8LEzG8RDfFalx3Gcfvna9rvG/cptGLd9tuI6TZOP5Fiqi99vea+X" & _
"4VRcBq/JZZtVQ9cwSs5lsXE372+a9z7PbfB3VVqHyvMctLto8uob6eV0m/cD6MN2v+T33t6sBut42vdv2bJ8a997x2maFJfK+qArbGJPEKE+1qTflMsIdW/GCJX17KcT" & _
"6/czr/X+u1g29B7j/4BQfWkkx4zIHisjhPCmE0K4SwtXM+d4BvHRwNZOoBph9IJvPek9d40FoMJxf691jj2ywQQcHEWET4XJwkTszlVqm2GokewxtBT1DpQjRxDN0rUV" & _
"DNKdC3lb6tzNOwh6upMSSYfv4YBCl/bsn9PxiFCEo7SI6Obc9HeOrnY8x4jtHtdpN4GRbaorhsbu18Pph5CiHymI0RpSXGJ/z2oUOxYxG858AyiI+bfJtuTcG5yelBJy" & _
"T8okhqFd4a5yxL0rvulYtKCsZiWxWkc1s1cRoxxwhA31DLE0mR9l9HqX8fJgTDmFMVH0MIsRzVYnwnMi1dyzmhLt2kS2pxIiU62Wj5ptQGlSYFakLonTUJNLKaM5Wzlf" & _
"fEkuFkk5wTrhVO2eE7G6lJhxFFYUZ55zmn0WuBCD4pzhirFCKkbomsOoIYmZx5p90LoYWGPdD5g0QmJRKYxbZ6zYoVQ2jVGylSak7KSkFH6RSjpHKFuU+YMyNo5SulkC" & _
"6I0vonTCitMXPoEpVS2H5FQfEqp2R1opIgAEkJISYARTCukOhmPNI5Ex/wzGHUsicMwA1LHgQ90Y/KpoQHAD+pB/R4NzIaMAB9Xaw1gqaAOsh/A/ptIkWUfhGK1kZH8R" & _
"gH5GqvgArqRmt4AAPrTroRofBGADkqr6Rmu4D7CEaHARiwpJrEEZsXXwlVjyMWRsaRqwdkLGNBABZmytmyMnaINZqyVpLR2ftKAAAdd6h2osbaskdiq4EZtgSmyNcbVW" & _
"RJNXe3AA7REar3b0stlAAXBtoRmvJGLjEYAHUWsFcwCD/rnaop9aEICMAPdK5hT6xpeuzdOtAgKuJeGfdq6ggEbkTvAP+p9UCHXrvKkcgIA=="
	With .VisualAppearance
		.Add 1,"gBFLBCJwBAEHhEJAAEhABfICg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj" & _
"6CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7E" & _
"MRwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsOatVqjG5sYjcGC3La9cz3Pq/bpuDCbMxuaK1TrYXr1TTrcofBDldAxXRKDx" & _
"RDWVhLnYOw9i6XxzjuXprCaOoKB6EwbiCZZCGOdZYlcT4xHmbhMnwNxtn+G5bmqdZ7n4Pw/i+X5zm+dQ9g4CAFjsfAJheOI8HsDoWDWTB/lwSAQkmA5PEgRYoDyDwYFY" & _
"FoFmGCBmBqBphDgRJ0gOTIYBGRB/lyRh0iSCZbjYWJzgWDwIjYLoLmMCJGDKDJjBgWgqG6YhyhGHRzA2aJ1mCABOAiOJvhCZBJBYRoRmSCQmEqEQimkAZgg8TZnDCV4U" & _
"kmCUmBKZYJGYWoWCUUhiFMNZckNUh2GENoaGaGZmgmJhqhqZpGGIEx2GYIxSGGGJdggWJth2Z4JmYeoemeSZ2H6H4hGmQhihyTRHGYLg7CiCgmgqIpokoNoOiOaJ4jqA" & _
"ochqaZGgaCxpAoZoaiaaJqEmWIcGgShcnCJwqEqFoR3YOoFlgchflqNouiuawHmWSYqGkWZQhcatzmaOoumuSp2j6L5bBaKo0GQKRnGGCxqiyCwmkqMpsksNpOGUGI7A" & _
"0ew1G0Rxlg0PptgsZuDG2Sx2l6N5tnYNZZjUDRXDCVo5l2FoymqOpukuNpujubwLjmWY5k0ZwxkaFxYlWdp6j6b5Lnafo/nABQdg2FxcUsY5BkmXAkmeQpckwNRrkKTh" & _
"8CSHZBk4NwyC4KxxgMDwakOMZDn8GgwnGAo2C4cwthMcwmCcMoHBMHRehwTIghySYNksZwcH4HBMEsHx5hyPItiweYxnwSZEH4Mozn0fR+DMAo7EYJ50gkdZelKdNql2" & _
"UgJn0GIukwH4HicQRai2GI4mSVpNl0dZGledgNgcYpYDWUx3FsOQi5YV5anaTY3G6W53A2RxylydxFjiaxEFCCgBBAQ=="
		.Add 2,"gBFLBCJwBAEHhEJAAEhABcoFg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj" & _
"6CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7E" & _
"MRwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsLpOS5LNKsaxmWLYdhFdTxQi6LpvfA8BwXC6JY7heRYRbFbYxRjGNi1TS7G4" & _
"nGKd5WGuL4UHwI4VkaYxii8V4pgQMgVBQdQ5iCTYGi8T4vlWbJ3nuPg+l+H5AlSCg6ByPBoE8Ap3jqYxhBido5g0OgOGOGI4CsSpCCAcgcAuEokiEN5NCKfJ9DyTRjnS" & _
"cg1CEYxOBmBpPCgagdgcIZoHoGIFA4AxQkCAxKAgKBwgGSpIBCZhjF2E5UnQPQMiMCJBCIBwxkSQgsgo+JtDKT4ziiQw+k6EwAnsOgLnkHI+yCQ4iEuE4klkPhShEJBp" & _
"AoPgymOMoaDgHBjFMBgyD0HYTiCZSZhIIIGC4ChiHSew5kwM5omILZPiOBI0hwZw5kodIdA+M4Uj4PxOmMSJ9DuTQzmyZgviceZagaHVfj4awwmaAh2GUIYmCOEZZDaD" & _
"RDFGdwcg4EwyHMN4LBOaJbCoaZqgKH8qkMfIyD8DozDyfA7A0Coui0OpMmOZJdCsahKg6NooioChwmEMxLEoXJbDUTRXGSUgykyMgQG0GpPHMdI3D4TRCgSeQ0kmaw+l" & _
"GNAtCOZJVCiT5DhyRQwAqMg0EoDBBGEGAsASC5yiSCw+k4Mp6lWNQuksTpRjMTxDGzJwGmGMpDDKXYTECSAxl6Q5olkK4PgMMIVkASRMBMBgzEkaZEjsNALhIZA6AeQB" & _
"gk0ZJEgAAJ0CIAgODMNIsD6DRih9uYwFyAwfCUb5ijmbI+gwdxkk8MZMGeMpPCkDxzBiC5MHMPJLDSSROFMLIoBEQogEMFJPnENYQGgE4DCOaJfC7tYkhGTQ0kyWwyku" & _
"XpMiyRpKjKR4wngM4JmOWJACCdYtHMWw+Eych4nINYLAEYA8AgdAEEsQZajaQoog4GxPiMVIolcdxNG8XZVkmNoRwWRVBlFeFEeAZQJgnFiHgHwcAhjhHgGMSI5xki2C" & _
"yA4EQsA3i0HkBsLwKRFgAHcPkHopBJBcBeDUYI7xyDOHqKkWo2hLCsDIBIY4qQ5A8DoMMYwOAqCSBGKgU4yB2iDBwIgB4hxQgAAWNgBoAgsBdEcBUQ4sQ9A/HqD0JI8R" & _
"pBzH2OYVgahLBHFiJQJweQiDhDUE4SAARQAzFsG0EQwA6AOWSBkFgVAIBCHeGERQFQiCQHeFkC4vkiB8DyB4F4QxVDvGMNEOQexMjlBeOAKQiQLgfDA7QEAaRiBdEkH8" & _
"TI7AZiFBAGYBIABWjYBiGACioQ4C1A+AMMgWhfgxHgPsT4URIB0COKgPgjRwiAB8AYUArxBgCF6J4GY5hrAOCAPAAoGRRCsCIMEXATXfgAF8BMJwURuEQDgD4Q4OBoAe" & _
"HGFgLIwQrC2D0JoSQ+QvhrHoSgQI8AbDFGID8C4Ah6BQAQAASACwgCYCMAUMARAvCKAiAMCAokeCKBEOAKgCBoDaHuMsEAqwJDiACDURg8R6gPCyDofYWAhgoDIJ4ZAu" & _
"hoiGAYGgRoQw/A0GMMga4GwxiEDeIYYInATCDBQAoBAwAoDlA0KMBoVRGiDGwDQUYIRsgaGGDgM4LAwDWB8EcIA1APhjEgGQVwgRIgjFIIQHokgZA+CSEkLIKQSjHAwM" & _
"sCwDAsAEB2ABTIwRwD6A8CMToSxkAxE4HYIw+BsgbBEDAHYBwojCBoIYFgXSjABE4MsHIbQWhlGILQS4UhvBdAUKEEwHgxDAAABQQQUAhgKHiDwE4JS4A7BGLQZwCR4g" & _
"aBEMUYAqgKApHgGwVAIRNgvBMMQXImwZDtE4I8UIyAZCDCAE8AwrhgAdEEBACQLRCg4FEB4AYtA7CdEiPQMoJAMDNCkOMCAXAFDhH0D0Q4EgfAaGSK4NYzRUj9BuCgAg" & _
"swOBjB4Fqpw8B2ADAwE4A4Qx2DAE6JIaQPQGhAGKBcIQ5B5gHByKIFARwADbAyKUfgdBKBBGyEcVIAB/ijHoIoSA0gdBNl+OATYERZgBGSDYWIWAUCEGKA4FAhR7CIBt" & _
"YQGYZg4CMAiKEcAOwkBjHWE8Z4lQgA+DkBoTohwwCeAaMEEgBQCCABgHMRwQRhhMEWFQd4HwZgwDqFESItAbAGEANCpINAzANCCJkK4ah+heFYBURwsQrS2CsMYMoWGB" & _
"hYDWI0EInQgiApXaOVI1QFDsC8MUNoMBMA1HMJga4eh+BeAWOgNNowGjYzCGAAwax+iJBeBVT4gxoBIAGFsJFBxgBiGKFkKQ7g5DFFQEcAo4AzDDACKEQQLgCiJDYB0M" & _
"gRBCCQAgQEA=="
		.Add 3,"gBFLBCJwBAEHhEJAAEhABQ4Fg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj" & _
"6CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7E" & _
"MRwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsLpOS5LNKsaxmWLYdhFdTxQi6LpvfA8BwXC6JY7heRYRbFbYxRjGNi1TS7G4" & _
"nGKd5WGuL4UHwI4VkaYxii8V4pgQMgVBQdQ5iCTYGi8T4vlWbJ3nuPg+l+H5AlSCg6ByPBoE8Ap3jqYxhBido5g0OgOGOGI4CsSpCCAcgcAuEosiYN5NHMOJ+D4TpTnS" & _
"eQ7CEY4uBmBpPhgagdgcIZoHibIEyUBJZDQIJShoCgcCAcoyAQOYYlcZJ1D0DxDCiQgwEiAZMHEMJLFKPJ9D2DoDnidQ4k+Y5QmKEROBkIhKD0JIZDIS4TGUCQuEeEJj" & _
"nOIg8CuY4RkYNgwGMM5RllGpThDRYIGKZIpCkJFUH0PINyWcQ3CaaZCG+HBnEOTJhD8Tx4GoeQ/GcaZSHOH5nCmQhshoZhihYYwhiYA4RlkNoNEMUZ3ByDjwEsPxOnMa" & _
"J9DuDR6F6GYmCmKh0nANtMioP4Gg8aoSiIO5NhodociqaY6GaFYkEyOg8lsNRNTaUgykyMgQG0GpPiONJbD8DpDEyfA6k0KwOkWMQsGsAJU0SagwkoJQJDIPISCQCJTG" & _
"SUwyGaM4KkmMgtksHpFjAZ4TGCBAbgaSpcksdhNAMIJHHsD5TjSWWMAMOpwjyLwbk6cAz0KRJiDkDYzESCwiggcgcgYIQwCIEINCMCITj6TVxkMXp2j0cQLlCTo7E2F4" & _
"ymkMZdhMPJHDGHpLAyVg+k4UwrCCSIyByDJ8DuDY8CiWY0kiXAXC6QJwFKGIjCeJpjgyezjlyDw6klHx5myRoMGwZwbkcToTEiew4kwbQfEmUgPkOKJUD4DpTHSHQmgk" & _
"XI/ASTA1g0XIEDMTBimyfI7jSLYHEiUoPk0Fw/kadAsHGao8A0A5smEMJ2mNyg5gzJZwDgCpChyIZVyIZwFCMJEPASRkBqE+IcHInRcDxA2H4bIsx0AtDsIBpwZwYicD" & _
"6BscwDwUBgHCIYaIfgtiVH2O4WgUwJjEFeAEQA7y4hMCiBMS4aRdB9A4CYE4LxljyBMHcDItBxinDCLcTYmgejBFQ9UTg9gFBOEmAQTI7A4iZGMGkQAWQ7jYA2HIL8BR" & _
"AjDG4HcCwARbjZHiNoDw1nLDnGyNINQ+wjCpBMEgcovQUgICQJEcgWRuBvAyJ4d4ugpCUAINcHogxIgnDiM4N4axzD3F2JMTY/hRqYF6FsWIxhYAGGoAALQYgYirBwBE" & _
"BwpAjBEAAIEIYsA2gOHCMAGgXAACIDmMITAUgFABH0D0I4WwvhNFGMAOIvxRD2GKNcMA8gjAPDCPwBogRPAxA8PgRwZRICYDED8RAXQEghEAN8DIgwIBdB4JYWwMgtiQ" & _
"HoFQKAiRFguFKGwGQhglDsEOVwEQQRkCKBwOIHgSREDRBYHEXQcQdD7GIGARQHRxipBrMobgewDCUCADsEYWAzgMHKHQDQxxsDzA6EMfAeQHB4GQDkUYPA0iECiKoGgR" & _
"hcDdA2GMQA8AOCjDSPgHI4QnApAKBICwHg1A+BcAwcYsgbjGGQNkCIgRsA6EcBEWANADjsB0B8YYzQQDIGSBcEYZBCCPEkFIHQSgkgZAwG4IwBAbAYGGAgL4Ch4g8BOC" & _
"QAA2KKC0GcAke4AAXAFCoHkDw4xbBFEcJkE4JRSiEFeJYKQVRMgJHODwX4xAgC/AsIIZAeAHDRG0HYI40RKCLEGDUI4jAghwBWIceA+whCpHMFYZYOQxglDMHMBQGxYj" & _
"VHiAoBIPgfgHGwPsHYJRSB6A0IERQLhCjJHMA4OQoAoCOACLYGYSx8DpBQIMWQdRnDRH+DsE4fB3CeAmM67kAAXBFEIDYDI7wLBtEoEIfYNwjiUGGJQYQMAjCHEAO0C4" & _
"zxW29CoCgfIxR9AKA6J8BgUAIhDGMIoJ40hqgwCgKETgnBhhqCGI0AIqgZhGDANQDIlBDCRGkCoJISR0g1BSKQOgfAzBRG0DYHARh4DeDAOwANuw8ApCKKkYg/RPhjBs" & _
"H0J4yg5hPGWN0GwFBHQBFaDoQIURljFAoB4GgzRVzbBECQFQRQoguHGHANwDRdCKy8CgSIGwhhoDYJYYI1giBICSAEgI="
		.Add 4,"gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjH" & _
"LUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKB" & _
"UrGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo" & _
"3NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDs" & _
"YYDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoV" & _
"mWCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoV" & _
"oWiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZi" & _
"Se41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbh" & _
"FCcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA=="
	End With
	.Background(70) = &H1000000
	.Background(71) = &H2000000
	.Background(72) = &H3000000
	.Background(102) = &H4000000
	.Background(104) = RGB(1,0,0)
	With .Elements
		With .Add("Element Check 2")
			.Checked = 1
			.Pictures = "1,2"
		End With
	End With
	.Home 
	.EndUpdate 
End With
74
ImageSize property on 16 (default) (specifies the size of control' icons)

' AddElement event - A new element has been added to the surface.
Private Sub SwimLane1_AddElement(ByVal Element As Object)
	' Element.ShowCheckBox = True
End Sub

With SwimLane1
	.BeginUpdate 
	.ImageSize = 16
	.Images "gBJJgBAIDAAEg4ACEKAD/hz/EMNh8TIRNGwAjEZAEXjAojJAjMLjABAAgjUYkUnlUrlktl0vmExmUzmk1m03nE5nU7nkrQCAntBoVDolFo1HoM/ADAplLptImdMYFOq" & _
"dSqlXq1QrVbrlGpVWsFNrNdnNjsk7pQAtNroFnt0sh8Yr9iulTuNxs1Eu8OiT/vsnsNVutXlk/oGGtVKxGLxWNtsZtN8iUYuNvy0Zvd+xNYwdwvl4p870GCqc8vOeuVt" & _
"tmp1knyOayWVy+WzN/ze1wOElenm+12WUz/Bv2/3UyyWrzeutux2GSyGP2dQ33C1ur3GD3M4zUNzHdlWjq/E3nGzVpjWv4HA7fRy/Tv2IrN8rPW6nZ3ve7mUlfu20Z8a" & _
"cvQyb+vY9jasYoDwMm+LytVBDqKG3z8O3Cb8P+mkAuY9cCQ2uL4KaxDKvkp8RNLEjqugnrwQo/UWPzFyeQw5sNLZFENrI4kOqU66pw8uzmOKvTqNqjULJvGL1JO48GtT" & _
"GsbLdEL3scxLlyiw8dQeoUVxdLTtyKmUjwGlslRPJsnK1HbAKbKCrsQo8uQk/CeP44iaR/ATnTNPLvyxPU+z9P9AUDQVBowiofJXQ6Oo+kKMpIkjztE4TKn4P6JowfgP" & _
"nwD5/nAjB8AOeAPo0eAA1IAFH07UhAIMpYAVIYFHqBUhwVjV1S1EtQAHxW65V0AZwAeuQAnwB5gAPYViEDVhwAHTQBkCjB4gOhwDmCyhH0sACAg=="
	With .Elements
		With .Add("Element Check 2")
			.Checked = 1
			.Pictures = "1,2"
		End With
	End With
	.Home 
	.EndUpdate 
End With
73
We want to have option to start/end connectors at the middle of each side of the elements
With SwimLane1
	.BeginUpdate 
	.ShowLinks = -1
	With .Elements
		.Add "Element <sha ;;0>1"
		.Add "Element <sha ;;0>2",164,64
		.Add "Element <sha ;;0>3",0,132
	End With
	With .Links
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(2)
	End With
	.FitToClient 
	.EndUpdate 
End With
72
How can I determine the position the user clicks within the element's boundaries (Click event)

' Click event - Occurs when the user presses and then releases the left mouse button over the control.
Private Sub SwimLane1_Click()
	With SwimLane1
		Set e = .ElementFromPoint(-1,-1)
		X = -1
		Y = -1
		.PointToPosition X,Y
			Debug.Print( e )
		Debug.Print( X )
		Debug.Print( Y )
	End With
End Sub

With SwimLane1
	.BeginUpdate 
	With .Elements
		.Add "Element 1"
		.Add "Element 2",128,64
	End With
	.FitToClient 
	.EndUpdate 
End With
71
How can I determine the position the user clicks within the element's boundaries (MouseMove event)

' MouseMove event - Occurs when the user moves the mouse.
Private Sub SwimLane1_MouseMove(ByVal Button As Integer,ByVal Shift As Integer,ByVal X As Long,ByVal Y As Long)
	With SwimLane1
		Set e = .ElementFromPoint(X,Y)
		.PointToPosition X,Y
			Debug.Print( e )
		Debug.Print( X )
		Debug.Print( Y )
	End With
End Sub

With SwimLane1
	.BeginUpdate 
	With .Elements
		.Add "Element 1"
		.Add "Element 2",128,64
	End With
	.FitToClient 
	.EndUpdate 
End With
70
How can I convert the screen position (mouse) to surface position

' MouseMove event - Occurs when the user moves the mouse.
Private Sub SwimLane1_MouseMove(ByVal Button As Integer,ByVal Shift As Integer,ByVal X As Long,ByVal Y As Long)
	With SwimLane1
		Debug.Print( "Point " )
		Debug.Print( X )
		Debug.Print( Y )
		.PointToPosition X,Y
		Debug.Print( "Position " )
		Debug.Print( X )
		Debug.Print( Y )
	End With
End Sub

With SwimLane1
	.BeginUpdate 
	With .Elements
		.Add "Element <sha ;;0>1"
		.Add "Element <sha ;;0>2",164,64
		.Add "Element <sha ;;0>3",0,132
	End With
	With .Links
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(2)
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(1)
	End With
	.FitToClient 
	.AxisStyle = 192
	.AxisColor = RGB(128,128,128)
	.EndUpdate 
End With
69
Is is possible to show just the positive coordinates

With SwimLane1
	.BeginUpdate 
	.Coord = 17 ' CoordEnum.exAllowPositiveOnly Or CoordEnum.exCartesian
	.AxisColor = RGB(128,128,128)
	.AxisStyle = 259 ' LinesStyleEnum.exLinesThick Or LinesStyleEnum.exLinesDot
	.ShowLinks = -1
	With .Elements
		.Add "Element <sha ;;0>1"
		.Add "Element <sha ;;0>2",164,64
		.Add "Element <sha ;;0>3",0,132
	End With
	With .Links
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(2)
	End With
	.FitToClient 
	.EndUpdate 
End With
68
Cartesian coordinates (positive coordinates are shown top-right to the origin)

With SwimLane1
	.BeginUpdate 
	.Coord = 1
	With .Elements
		.Add "Element <sha ;;0>1"
		.Add "Element <sha ;;0>2",164,64
		.Add "Element <sha ;;0>3",0,132
	End With
	With .Links
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(2)
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(1)
	End With
	.FitToClient 
	.EndUpdate 
End With
67
Default coordinates (positive coordinates are shown bottom-right to the origin)

With SwimLane1
	.BeginUpdate 
	.Coord = 0
	With .Elements
		.Add "Element <sha ;;0>1"
		.Add "Element <sha ;;0>2",164,64
		.Add "Element <sha ;;0>3",0,132
	End With
	With .Links
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(2)
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(1)
	End With
	.FitToClient 
	.EndUpdate 
End With
66
Is it possible to customize the path of the links orthogonally similar with Microsoft Visio tool

With SwimLane1
	.BeginUpdate 
	.AllowLinkControlPoint = 31 ' LinkControlPointEnum.exOrthoArrange Or LinkControlPointEnum.exMiddleControlPoint Or LinkControlPointEnum.exControlPoint Or LinkControlPointEnum.exEndControlPoint Or LinkControlPointEnum.exStartControlPoint
	With .Elements
		.Add "Element <sha ;;0>1"
		.Add "Element <sha ;;0>2",164,64
		.Add "Element <sha ;;0>3",0,132
	End With
	With .Links
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(2)
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(1)
	End With
	.Zoom = 200
	.FitToClient 
	.EndUpdate 
End With
65
Does your control supports OLE Drag and Drop
' OLEDragDrop event - Occurs when a source component is dropped onto a target component when the source component determines that a drop can occur.
Private Sub SwimLane1_OLEDragDrop(ByVal Data As Object,Effect As Long,ByVal Button As Integer,ByVal Shift As Integer,ByVal X As Long,ByVal Y As Long)
	With SwimLane1
		Debug.Print( Data )
	End With
End Sub

' OLEStartDrag event - Occurs when the OLEDrag method is called.
Private Sub SwimLane1_OLEStartDrag(ByVal Data As Object,AllowedEffects As Long)
	' Data.SetData("some data to drag")
End Sub

With SwimLane1
	.BeginUpdate 
	.OLEDropMode = 1
	With .Pools.Add(-250,-150,500,250)
		.Lane(0).Children.Count = 2
		.Lane(1).Children.Count = 1
	End With
	With .Elements
		With .Add("Click the Element wait for .5 second until + cursor is shown, to start <b>OLE Drag and Drop</b>")
			.CaptionSingleLine = False
			.AutoSize = False
			.X = -125
			.Y = -105
			.Width = 256
			.Height = 56
		End With
		With .Add("Click the Element wait for .5 second until + cursor is shown, to start <b>OLE Drag and Drop</b>")
			.CaptionSingleLine = False
			.AutoSize = False
			.X = -125
			.Width = 256
			.Height = 56
		End With
	End With
	.EndUpdate 
End With
64
Is it possible to disable customizing the path of a specified link

With SwimLane1
	.BeginUpdate 
	.AllowLinkControlPoint = -1 ' &Hffffffe0 Or LinkControlPointEnum.exOrthoArrange Or LinkControlPointEnum.exMiddleControlPoint Or LinkControlPointEnum.exControlPoint Or LinkControlPointEnum.exEndControlPoint Or LinkControlPointEnum.exStartControlPoint
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B",164,64
		.Add "Element <sha ;;0>B",0,132
	End With
	With .Links
		.Add(SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75"
		.Add(SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75"
		With .Add(SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(1))
			.ShowLinkType = 3
			.StartPos = 0
			.Color = RGB(128,128,128)
			.AllowControlPoint = 0
		End With
	End With
	.Zoom = 200
	.FitToClient 
	.EndUpdate 
End With
63
How do I let user customizes the link's path

With SwimLane1
	.BeginUpdate 
	.AllowLinkControlPoint = -1 ' &Hffffffe0 Or LinkControlPointEnum.exOrthoArrange Or LinkControlPointEnum.exMiddleControlPoint Or LinkControlPointEnum.exControlPoint Or LinkControlPointEnum.exEndControlPoint Or LinkControlPointEnum.exStartControlPoint
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B",164,64
		.Add "Element <sha ;;0>B",0,132
	End With
	With .Links
		.Add(SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75"
		.Add(SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75"
		With .Add(SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(1))
			.ShowLinkType = 3
			.StartPos = 0
		End With
	End With
	.Zoom = 200
	.FitToClient 
	.EndUpdate 
End With
62
How can I generate a picture/image/graph from my diagram
With SwimLane1
	With .Elements
		.Add("Element A").ID = "A"
		.Add("Element B").ID = "B"
		.Add("Element C").ID = "C"
		.Add("Element D").ID = "D"
		.Add("Element E").ID = "E"
		.Add("Element E").ID = "F"
	End With
	With .Links
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("B")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("C")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("D")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("C")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("E")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("F")
	End With
	.DefArrange(4) = False
	.Arrange 
	var_CopyTo = .CopyTo("c:/temp/xtest.jpg")
	Debug.Print( "!!!check the file c:/temp/xtest.jpg!!!" )
End With
61
How can I generate a picture/image/graph from my diagram
With SwimLane1
	With .Elements
		.Add("Element A").ID = "A"
		.Add("Element B").ID = "B"
		.Add("Element C").ID = "C"
		.Add("Element D").ID = "D"
		.Add("Element E").ID = "E"
		.Add("Element E").ID = "F"
	End With
	With .Links
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("B")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("C")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("D")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("C")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("E")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("F")
	End With
	.DefArrange(4) = False
	.Arrange 
	With CreateObject("Exontrol.Print")
		.PrintExt = SwimLane1.Object
		.CopyTo "c:/temp/xtest.jpg"
	End With
	Debug.Print( "!!!check the file c:/temp/xtest.jpg!!!" )
End With
60
How can I print the component
With SwimLane1
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B",0,76
		With .Add("Element <sha ;;0>C",-76,32)
			.AutoSize = False
			.Height = 32
		End With
		With .Add("Element <sha ;;0>D",76,32)
			.AutoSize = False
			.Height = 32
		End With
	End With
	With .Links
		With .Add(SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2))
			.StartPos = 1
			.EndPos = 1
		End With
		With .Add(SwimLane1.Elements.Item(2),SwimLane1.Elements.Item(1))
			.StartPos = 1
			.EndPos = 1
		End With
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(4)
		With .Add(SwimLane1.Elements.Item(4),SwimLane1.Elements.Item(3))
			.StartPos = 0
			.EndPos = 2
		End With
	End With
	With CreateObject("Exontrol.Print")
		.PrintExt = SwimLane1.Object
		.Preview 
	End With
End With
59
How can I show direct-links

With SwimLane1
	.ShowLinksType = 1
	With .Elements
		.Add("Element A").ID = "A"
		.Add("Element B",128,64).ID = "B"
		.Add("Element C",128,-64).ID = "C"
	End With
	With .Links
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("B")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("C")
	End With
End With
58
How can I show straight-links

With SwimLane1
	.ShowLinksType = 2
	With .Elements
		.Add("Element A").ID = "A"
		.Add("Element B",128,64).ID = "B"
		.Add("Element C",128,-64).ID = "C"
	End With
	With .Links
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("B")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("C")
	End With
End With
57
How can I show round-links

With SwimLane1
	.ShowLinksType = 3
	With .Elements
		.Add("Element A").ID = "A"
		.Add("Element B",128,64).ID = "B"
		.Add("Element C",128,-64).ID = "C"
	End With
	With .Links
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("B")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("C")
	End With
End With
56
I've tried to insert a "<br>" in the Caption property text and it just ignores it

With SwimLane1
	.BeginUpdate 
	With .Elements
		With .Add("caption")
			.CaptionSingleLine = False
			.Caption = "first caption<br>second caption<br>third caption"
		End With
	End With
	.EndUpdate 
End With
55
How do I align the extra-caption

With SwimLane1
	.BeginUpdate 
	With .Elements
		With .Add("caption")
			.CaptionAlign = 0
			.AutoSize = False
			.Width = 128
			.Height = 64
			.ExtraCaption = "extra-caption"
			.ExtraCaptionAlign = 34
		End With
	End With
	.EndUpdate 
End With
54
How can I add an extra caption

With SwimLane1
	.BeginUpdate 
	With .Elements
		.Add("caption").ExtraCaption = "extra-caption"
	End With
	.EndUpdate 
End With
53
I am using the reserve-neighbors feature, the question is how to shift left/right the neighbors instead of up/down
With SwimLane1
	.BeginUpdate 
	.AllowMoveNeighbors = 2
	.DefArrange(0) = 1
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B ( move it )",16,32
		.Add "Element <sha ;;0>C",128,0
	End With
	.EndUpdate 
End With
52
I am using the reserve-neighbors feature, the question is if possible to specify the distance between neighbors
With SwimLane1
	.BeginUpdate 
	.AllowMoveNeighbors = 1
	.DefArrange(1) = 0
	.DefArrange(2) = 0
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B ( move it )",0,32
		.Add "Element <sha ;;0>C",0,64
	End With
	.EndUpdate 
End With
51
How do I enable the reserve-neighbors feature
With SwimLane1
	.BeginUpdate 
	.AllowMoveNeighbors = 1
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B ( move it )",0,32
		.Add "Element <sha ;;0>C",0,64
	End With
	.EndUpdate 
End With
50
I've noticed that recently, the elements get compacted once the Arrange method is performed. How can I prevent that

With SwimLane1
	With .Elements
		.Add("Element A").ID = "A"
		.Add("Element B").ID = "B"
		.Add("Element C").ID = "C"
		.Add("Element D").ID = "D"
		.Add("Element E").ID = "E"
		.Add("Element E").ID = "F"
	End With
	With .Links
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("B")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("C")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("D")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("C")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("E")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("F")
	End With
	.DefArrange(4) = False
	.Arrange 
End With
49
How can I move an element to a specified lane/phase/pool

With SwimLane1
	.BeginUpdate 
	.DefPoolHeaderCaptionFormat(True) = "<fgcolor 808080>Faza <off -4><b><font ;6>%i"
	.DefPoolHeaderCaptionFormat(False) = "<fgcolor 808080>Culoar <off -4><b><font ;6>%i"
	With .Pools.Add(-100,-100,250,180)
		.Lane(0).Children.Count = 3
		.Lane(1).Children.Count = 3
		.Lane(1).Children.Item(1).Header.Caption = "<fgcolor FF0000><b>NEW"
	End With
	With .Elements.Add("element 1",200,200)
		.LaneID(True) = "0:H.0,0:V.0"
	End With
	With .Elements.Add("element 2",200,200)
		.LaneID(True) = "0:H.2,0:V.2"
	End With
	.EndUpdate 
End With
48
Is it possible to add a link to show from bottom/down to top/up, rather that right to left (method-2)

' AddLink event - A new link has been added to the links collection.
Private Sub SwimLane1_AddLink(ByVal Link As Object)
	With SwimLane1
		With Link
		End With
	End With
End Sub

With SwimLane1
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B",48,48
	End With
	With .Links
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	End With
End With
47
Is it possible to add a link to show from bottom/down to top/up, rather that right to left (method-1)

With SwimLane1
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B",48,48
	End With
	With .Links
		With .Add(SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2))
			.StartPos = 4
			.EndPos = 3
		End With
	End With
End With
46
How do I enable the cross link support ( mixed )

With SwimLane1
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B",0,76
		With .Add("Element <sha ;;0>C",-76,32)
			.AutoSize = False
			.Height = 32
		End With
		With .Add("Element <sha ;;0>D",76,32)
			.AutoSize = False
			.Height = 32
		End With
	End With
	With .Links
		With .Add(SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2))
			.StartPos = 1
			.EndPos = 1
		End With
		With .Add(SwimLane1.Elements.Item(2),SwimLane1.Elements.Item(1))
			.StartPos = 1
			.EndPos = 1
		End With
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(4)
		With .Add(SwimLane1.Elements.Item(4),SwimLane1.Elements.Item(3))
			.StartPos = 0
			.EndPos = 2
		End With
	End With
	.ShowLinks = 97 ' ShowExtendedLinksEnum.exShowCrossLinksMixt Or ShowExtendedLinksEnum.exShowExtendedLinks
End With
45
How do I enable the cross link support ( triangular )

With SwimLane1
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B",0,76
		With .Add("Element <sha ;;0>C",-76,32)
			.AutoSize = False
			.Height = 32
		End With
		With .Add("Element <sha ;;0>D",76,32)
			.AutoSize = False
			.Height = 32
		End With
	End With
	With .Links
		With .Add(SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2))
			.StartPos = 1
			.EndPos = 1
		End With
		With .Add(SwimLane1.Elements.Item(2),SwimLane1.Elements.Item(1))
			.StartPos = 1
			.EndPos = 1
		End With
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(4)
		With .Add(SwimLane1.Elements.Item(4),SwimLane1.Elements.Item(3))
			.StartPos = 0
			.EndPos = 2
		End With
	End With
	.ShowLinks = 65 ' ShowExtendedLinksEnum.exShowCrossLinksTriangle Or ShowExtendedLinksEnum.exShowExtendedLinks
End With
44
How do I enable the cross link support ( rectangular )

With SwimLane1
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B",0,76
		With .Add("Element <sha ;;0>C",-76,32)
			.AutoSize = False
			.Height = 32
		End With
		With .Add("Element <sha ;;0>D",76,32)
			.AutoSize = False
			.Height = 32
		End With
	End With
	With .Links
		With .Add(SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2))
			.StartPos = 1
			.EndPos = 1
		End With
		With .Add(SwimLane1.Elements.Item(2),SwimLane1.Elements.Item(1))
			.StartPos = 1
			.EndPos = 1
		End With
		.Add SwimLane1.Elements.Item(3),SwimLane1.Elements.Item(4)
		With .Add(SwimLane1.Elements.Item(4),SwimLane1.Elements.Item(3))
			.StartPos = 0
			.EndPos = 2
		End With
	End With
	.ShowLinks = 33 ' ShowExtendedLinksEnum.exShowCrossLinksRect Or ShowExtendedLinksEnum.exShowExtendedLinks
End With
43
How do I show a link frmo bottom to top, or reverse, not from left to right

With SwimLane1
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B",0,64
	End With
	With .Links
		With .Add(SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2))
			.StartPos = 1
			.EndPos = 1
		End With
	End With
End With
42
Is it possible to control the links, so that they are always centered

With SwimLane1
	With .Elements
		.Add("Element A").ID = "A"
		.Add("Element B").ID = "B"
		.Add("Element C").ID = "C"
		.Add("Element D").ID = "D"
	End With
	With .Links
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("B")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("C")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("D")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("C")
	End With
	.ShowLinks = -1
	.DefArrange(0) = 1
	.Arrange 
End With
41
What options to align the elements do I have if I use Arrange method

With SwimLane1
	.BeginUpdate 
	.ShowGridLines = True
	With .Elements
		h1 = .Add("Top Alignment").ID
		.Add "Element"
		.Add "Element"
		.Add "Element"
		h2 = .Add("Center Alignment",,96).ID
		.Add "Element",,96
		.Add "Element",,96
		.Add "Element",,96
		h3 = .Add("Bottom Alignment",,178).ID
		.Add "Element",,192
		.Add "Element",,192
		.Add "Element",,192
	End With
	With .Links
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(3)
		.Add SwimLane1.Elements.Item(2),SwimLane1.Elements.Item(4)
		.Add SwimLane1.Elements.Item(2),SwimLane1.Elements.Item(3)
		.Add SwimLane1.Elements.Item(5),SwimLane1.Elements.Item(6)
		.Add SwimLane1.Elements.Item(5),SwimLane1.Elements.Item(7)
		.Add SwimLane1.Elements.Item(6),SwimLane1.Elements.Item(8)
		.Add SwimLane1.Elements.Item(6),SwimLane1.Elements.Item(7)
		.Add SwimLane1.Elements.Item(9),SwimLane1.Elements.Item(10)
		.Add SwimLane1.Elements.Item(9),SwimLane1.Elements.Item(11)
		.Add SwimLane1.Elements.Item(10),SwimLane1.Elements.Item(12)
		.Add SwimLane1.Elements.Item(10),SwimLane1.Elements.Item(11)
	End With
	.DefArrange(3) = 0
	.Arrange h1
	.DefArrange(3) = 1
	.Arrange h2
	.DefArrange(3) = 2
	.Arrange h3
	.EndUpdate 
End With
40
Is there an auto-arrange feature that will display the flow-chart centered and zoomed correctly after we are finished building it

With SwimLane1
	With .Elements
		.Add("Element A").ID = "A"
		.Add("Element B").ID = "B"
		.Add("Element C").ID = "C"
		.Add("Element D").ID = "D"
	End With
	With .Links
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("B")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("C")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("D")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("C")
	End With
	.Arrange 
End With
39
Is it possible to change the distance between elements, when calling the Arrange method

With SwimLane1
	With .Elements
		.Add("Element A").ID = "A"
		.Add("Element B").ID = "B"
		.Add("Element C").ID = "C"
		.Add("Element D").ID = "D"
	End With
	With .Links
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("B")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("C")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("D")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("C")
	End With
	.DefArrange(1) = 0
	.DefArrange(2) = 0
	.Arrange 
End With
38
How do I organize vertically the elements

With SwimLane1
	With .Elements
		.Add("Element A").ID = "A"
		.Add("Element B").ID = "B"
		.Add("Element C").ID = "C"
		.Add("Element D").ID = "D"
	End With
	With .Links
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("B")
		.Add SwimLane1.Elements.Item("A"),SwimLane1.Elements.Item("C")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("D")
		.Add SwimLane1.Elements.Item("B"),SwimLane1.Elements.Item("C")
	End With
	.ShowLinksType = 2
	.DefArrange(0) = 1
	.Arrange 
End With
37
How can I add programatically a link

With SwimLane1
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B",96,24
	End With
	With .Links
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	End With
End With
36
How do I get the link from the cursor
' MouseMove event - Occurs when the user moves the mouse.
Private Sub SwimLane1_MouseMove(ByVal Button As Integer,ByVal Shift As Integer,ByVal X As Long,ByVal Y As Long)
	With SwimLane1
		Set l = .LinkFromPoint(-1,-1)
		Debug.Print( l )
	End With
End Sub

With SwimLane1
	With .Elements
		.Add "Element <sha ;;0>A"
		.Add "Element <sha ;;0>B",96,24
	End With
	With .Links
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(2)
	End With
End With
35
Is there a way to create a link which has the same start and end element

With SwimLane1
	With .Elements
		.Add "Element"
	End With
	With .Links
		.Add SwimLane1.Elements.Item(1),SwimLane1.Elements.Item(1)
	End With
End With
34
How can I show the pool's caption not-rotated or mirrored

With SwimLane1
	.BeginUpdate 
	.AllowDesignHeader = 4
	With .Pools.Add(-150,-150,300,150)
		.HeaderCaptionSupportRotate = False
		.HeaderSize(0) = 48
		.HeaderSize(2) = 48
		.Lane(0).Children.Count = 3
	End With
	.EndUpdate 
End With
33
How can I prevent creating sub-lanes or sub-phases

With SwimLane1
	.BeginUpdate 
	.AllowDesignHeader = 4
	With .Pools.Add(-150,-150,300,150)
		.HeaderSize(0) = 32
		.HeaderSize(2) = 32
		.Lane(0).Children.Count = 3
	End With
	.EndUpdate 
End With
32
How do I show a complete frame/border around the header

With SwimLane1
	.BeginUpdate 
	With .Pools.Add(-150,-150,300,150)
		.HeaderSize(1) = 32
		.HeaderSize(3) = 32
		With .Lane(1).Children
			.Count = 3
			.Item(1).Header.Pattern.Type = 768
		End With
	End With
	.EndUpdate 
End With
31
How do I show a complete frame/border around the lane

With SwimLane1
	.BeginUpdate 
	With .Pools.Add(-150,-150,300,150)
		.HeaderSize(1) = 32
		.HeaderSize(3) = 32
		With .Lane(1).Children
			.Count = 3
			.Item(1).Pattern.Type = 768
		End With
	End With
	.EndUpdate 
End With
30
How can I define sub-lanes

With SwimLane1
	.BeginUpdate 
	With .Pools.Add(-150,-150,300,250)
		.HeaderSize(1) = 32
		.HeaderSize(3) = 32
		With .Lane(1).Children
			.Count = 3
			.Item(1).Children.Count = 2
		End With
	End With
	.EndUpdate 
End With
29
How can I add default lanes when the user creates a new pool
' AddPool event - A new pool has been added to the surface.
Private Sub SwimLane1_AddPool(ByVal Pool As Object)
	' Pool.HeaderSize(1) = 24
	' Pool.HeaderVisible(0) = False
	' Pool.HeaderVisible(1) = True
	' Pool.HeaderVisible(2) = False
	' Pool.HeaderVisible(3) = False
	' Pool.Lane(1).Children.Count = 2
End Sub

With SwimLane1
	.BeginUpdate 
	.Pools.Add -100,-100,250,250
	.EndUpdate 
End With
28
How do I prevent showing headers when the user creates new pools

' AddPool event - A new pool has been added to the surface.
Private Sub SwimLane1_AddPool(ByVal Pool As Object)
	With SwimLane1
		With Pool
		End With
	End With
End Sub

With SwimLane1
	.BeginUpdate 
	.Pools.Add(-100,-100,250,250).Lane(0).Children.Count = 3
	.EndUpdate 
End With
27
How can I display icons on headers

With SwimLane1
	.BeginUpdate 
	.Images "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTq" & _
"lVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m" & _
"0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" & _
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	With .Pools.Add(-100,-100,250,250)
		.HeaderVisible(0) = False
		.HeaderVisible(2) = False
		.HeaderVisible(3) = False
		.HeaderSize(1) = 24
		With .Lane(1).Children
			.Count = 3
			.Item(0).Header.Caption = "<img>1</img> A"
			.Item(1).Header.Caption = "<img>2</img> B"
			.Item(2).Header.Caption = "<img>3</img> C"
		End With
	End With
	.EndUpdate 
End With
26
How do I change the Lane and Phase strings being displayed on the lanes

With SwimLane1
	.BeginUpdate 
	.DefPoolHeaderCaptionFormat(True) = "<fgcolor 808080>Faza <off -4><b><font ;6>%i"
	.DefPoolHeaderCaptionFormat(False) = "<fgcolor 808080>Culoar <off -4><b><font ;6>%i"
	With .Pools.Add(-100,-100,250,250)
		.Lane(0).Children.Count = 3
		.Lane(1).Children.Count = 3
		.Lane(1).Children.Item(1).Header.Caption = "<fgcolor FF0000><b>NEW"
	End With
	.EndUpdate 
End With
25
How can I enlarge the node while AutoSize property is True (method 2)

With SwimLane1
	.Background(90) = RGB(255,255,255)
	With .Elements.Add("Element",0,0).Copy()
		.Caption = "Enlarged Element"
		.InflateSize = 16
	End With
End With
24
How can I enlarge the node while AutoSize property is True (method 1)

With SwimLane1
	.Background(90) = RGB(255,255,255)
	With .Elements.Add("Element",0,0).Copy()
		.Caption = "Enlarged Element"
		.Padding(-1) = 16
	End With
End With
23
How can I get the lane of the element

With SwimLane1
	.BeginUpdate 
	.Pools.Add(-150,-150,500,250).Lane(0).Children.Count = 3
	With .Elements.Add("Element")
		.CenterOnLane False
		lane = .LaneID(False)
		Debug.Print( SwimLane1.LaneByID(lane).Header.Caption )
	End With
	.EndUpdate 
End With
22
How can I define a different shape for elements

' AddElement event - A new element has been added to the surface.
Private Sub SwimLane1_AddElement(ByVal Element As Object)
	With SwimLane1
		With Element
		End With
	End With
End Sub

With SwimLane1
	.BeginUpdate 
	With .VisualAppearance
		.Add 1,"gBFLBCJwBAEHhEJAAChABAQDg6AADACAxRDQNABQKAAzQFAYahuHKGAAGEaBYgmFgAQhFcZQSKUOQTDKMIziYBYJhEMQwDiAUIjIK8IhkGIcZAGIBJCjWGodQLOEgwH" & _
"IERQjEyUJAGGYqEjaO41SpAdI0PCxUScACnDQiegJRgmQ4cTJSchSAKENx1JaeYReewwAqNd5TRwNIiydZUIhqGC1YRte4ZWiCWoJVzSVDLfbgAT4X60IIlCi5Mi6MIg" & _
"DZJFDUNLUdRBMKNJ7qagaWoWOaQRbmAQQTRYLQ/TiEXZDQRAAyLJIWVRQWTAAKVbw1LiEcznGCcejzIIDaZpOh4DplWzTOgALjta4IRpvNwAbIAF4gBqsLyXXLcdQyOR" & _
"MiwbxZgSDhgnQbJFC6F5JhECA8CADwIgMeQnmoQJlh0eAfGcXYZjwccOHiWx/moAJ6jed4DC2dJnnmQRxBcKABBoWAcHULZLHyV4mmGOx0FmdpZAMAgQhEQBpBiRxBlQ" & _
"cgZFUdAMEYAxQDECBNgaUYglkCQKBGZANk0QgBgQXAQgcGI0FwJAHA6WI+DGDAjCiVg0g2Yw4mYNg7E0eJ1H+DpkAiYhBg6JApBYRMvDkJhGhKJIImEA4QledZ8H+FJl" & _
"EEQhWBAJa8loRoCgkdhYBAExZHQKIXmUYRCFQI5mgWfZ4hMJpJC4boTGcCY0m0QJVBAIh2EIZZ5H4VIVAqeZ1H8M5oAmSg7g8TR1n4fQrmUQZCgqF5eEmYhYBgKQJiCD" & _
"4PmaegKhWJZnAQDZkhqaYKFocYnGadZ8h+KJoiGQhfEIURAmKEAYAgeo1H8OZrAoeoyhGKYngaHInmuCpOjmKAkHMHo+iiSZxmKQoXkGCwWigRQlnqLh7jKSh7DYUYzm" & _
"0CgAk+DIrFCAo3i6LYKnKWYuk6Wp4keKIqDsLh7BYLhJmaZo5mcYAijAOZtFsXpajubZLG6co8CSShtnYeJrGeVpzjwbxLnafI/mcK5ZnmPgtGuap+j6cIMB8CocDAK4" & _
"3AaQAwjwJwQkSaZsDcBI7jETBHBqRhxkibwWkCMQsgcG5Ii2TB+nkN5yEyJwjkqcJMh8DpKDKTIrB2TBmnyGwFkwMw8mcMpOmQbJbBiTwziyUxBDsc5sD8QJRnQKprEW" & _
"Tg0g0DxNlKMpsF8RpSHUTQ7BuUp0n0VxZi4MxrDSJ40DYDYHGKWJ2E2FxmyADYnGqMRBgeYh0FOLh9kccpcncJsVw7RdjvA2M4eovRmCSFkMwQIoAQEBA"
		.Add 2,"gBFLBCJwBAEHhEJAAChABAIDg6AADACAxRDQNABQKAAzQFAYaBmG6GAAGEaBYgmFgAQhFcZQSKUOQTDKMIziYBYJhEMQ1DAAUIjKLMIhmGAYJAGIBJCjWGodQLOEgwH" & _
"IERQjEyUpIyVAkYw5HqNaQjICoJoSOwAU47IaCIAFJSpCygKKgSjhRpoAAyU5IUgVPC4XSbD6zYDqapaTheEQyDSJNr3DCMUTlFYYLrmaQKMhqZJhWjbFSWXUpJ4pSrL" & _
"MIyfTwZRJGzIK7jabLIjaP6GUDhVaYbRUL46CiEb5AAJsVpCCZrYRJOYVdQeDYbQCNLDhHQIDqaA6kZRAdQ2bpMBznPSvbovDgLWhGYqhbLCNibRC+d4HNrCYIlCjpMw" & _
"3CYGIOHOMRsm0OxFjSZppneHQNFcSwRAOaprjqY4dgYe4VgGWwADucRuHYCpdByYROH8AAOC8D4NgEXwYBWEZyGAWoHg2MRCECBAkFAGhGDGUB1ByBhQkUIAPgCRAMEI" & _
"ExhIuNhCEKBAlnAcwQgAYQXAIIRWEUFwJAGQ42CiCoihiLgugsYwDjSZ4MkICJWCaDZjgiZg6EIQQInSV4PmKeIyEKEBkBQDhEgwZBzjSd4SlEQJgk+E5khkRhIhSZA5" & _
"FIUoVGWCQkl+FpkliTJnhXSYaFaGJOlEIhmC2ZoJgIZIaiWGYuG62IpDyT4TGSM5eGyCpmCnPIcCeQg+H6HZmnoAh6iAaBDjSL4hkUCgmgKHhlHmeIPh8BwKAqEohGkO" & _
"gOHCI4pAmMoMhUKByj6CQUCkWoGhSKJpGkJoQiOJR6G4cYTmcSQuiKKRqEqPovhmBIJiCN4YEACQGFsN5lliToyiwbAKkKQoSGcWQ2HKERrhiJJvjLUR8leL5sDsBpQi" & _
"UZZpDaO4eAACZWh+LYtDsSpejQbmJnIEAuEsLJvECRgLiSH46m2W4Gl+OxpFqWo0ECSR7lQaI9m8C4+nqO4uAIHp+B4MAJmcAAeC+YgenmPwwHwHInkKRYMDaWIQGmeh" & _
"3AmPpxDsCJHkWbhBAIdZDmMGZXBmRZMHwVwikUIwam0MAMC4awiEmOYyHsXwkkIMp5jMLBMDKaRiiqEBsmkNwpkwc5MyiHRrEKfxCiobIaFsQgvmsTBvD2SJuAwNBYkK" & _
"Sh6GsRYbDUDQ7EyVZmEwDwFiKdQ6BQf5XnYDRjD6IIujIfppBgKRcl6BZZnYXYLBWLYpn0KpglqLAtAIZoOneBsZw9RJjnQ+AYQAgCAg="
		.Add 3,"gBFLBCJwBAEHhEJAAChABQsMACAADACAxRDQNABQKAAzQFAYawLBgABhGUZoJhUAIIRZGMIjFDcEwxC6NIpAWCYQgUNQCQiNAzxAKQchhD4ZAIkGY4ZhyA42SBAcbyD" & _
"CEShoGqPRhmCg5UjmM4oQLSFDULC0fSBBIYaSGEY5QoqIYfArGQYQTRUPyUdoOBIACwLChWLA1CTZdowSKoYTXBq3IgqerIapmSYaV7YNh3VY1IR/JSVJYlaYJDoyNI4" & _
"ThHc5xVLtfSfAiiJrxOKcTAAFJ0QKFUbRUz+OgBTpvaZxagaSpSG5WRpWEI5PAdN4zTa7YDsS67FiSG5oWpEFq2eAGdzlVLMMqhG5gAxqNKzbLfMCXfJIbyrBIcYLoXI" & _
"tCqFYskMTwxlgAY+haFZRlQZQ4HwHR3AoMx5jEch2lMfZGl8eY+jYXBvBsAAHFeRQDmuRR8nsSI2CoEgIEIRQBiQYwdAcUZIGUUIQhGGAGECRAhDYChGFERAMCgQheEc" & _
"GQgHkEAwkICx2BCFoAj+B5iAiBgigiYhIgid4JkIQBwm2ChijiKgsguYpokYLYMmKQIiDYDgjgEAg6g6Y5InYPoPmOIAiEKEJFgkFIvhGYwIlIMoSTmAhOGgJJJC4UoS" & _
"iUSIcncKZlp8WoOAOAxeF6FBlEkNhPGcZgJhYU4ZiMMweGoDAmkGfhuhWJoJDgIIUCYeZWGGHYkhkWhuB+ZYhEIcIUmcKZSHeIJmgoFgyCeaIBgKCoYCgGYSHiI5oEoQ" & _
"gsiKBgKCCH4SOAfoGiQaZKPmJ5jGCIJniiZgpk6DonGkKomgOHpnjqFoCiaawKioSYXg0eoGi6KZrBqIo6hgEIal6GosiwCpuDIBgsEqDJniYa4bVuFYkDqepKjCLQJi" & _
"iR4XCyawGk+JpGgsZIXjabRbEKV4disSYwDCH5OlsIpWjmaA5HKUomCYOp+l6OgkhoUoWiMLpbH6bw7G0KRynOHYuGuXobhWB4MAaaoaimO52naB4hnkYInhERYLBAGA" & _
"hnECw+H2BwhkmSg7kMMIqHyb49hAECAg="
		.Add 4,"gBFLBCJwBAEHhEJAAChABOIDg6AADACAxRDQNABQKAAzQFAYaBqGCGAAGEZRSgmFgAQhFcZQTCsBw7DCEYxjOAwFgmEQxDIOIBQSKYcwiGQaRrkIYgEiONoaR7HchSF" & _
"IcIxPFKRBhkKYocjyG5GRoBcIyXAcRSYAB2Q4ESoKShePw5UDTcCzHR8RxEDKNRLpOQbDgOUZTWbVUaDKIsXzZCKHbZhG4YRp6CZKRpYEB1bYtKTRKqLKrpeTbOoSHol" & _
"TbiIATTYlG4THyEZQrDIaDjOSIXZaGFzwSDWGgBJ60bRwHIaAxGWoHRxfEZVfBONQHMSBc5xa64JyHAImWrcUbWfaYYZ0AC6MRkK8cXABPQANixKZsCizE4DDbTYzjRh" & _
"eC2F4nnEOJRG0BRXEWOICEocByiyCJTiQOJVGYIQ8gofpDgsG5uF+ah6D2Xp+GGP5gkCfwRHofwOnuSB2heVpZnIUZQhAIQJBQBoRgwdAdEcIYVEIQhGGAMQDBCBJYEU" & _
"GgNhCEMcHsXIkCIAAMIILQWAkAZDjYJIJiIWIeCqCRMHiNI/guYwIkYMoMmMSJWDaDZjgiTIzg6Yo4iIPoPGIdAmECChiFKXhGAQJIAmISgQCSSQ2E6E5lAkRhShSZRJ" & _
"FQOoVkCaRkAqFpQhIPhehCY54hYQoRCOYo+GaExOnmJhghqZhJjIYYbmaaJ0l+HJkiCYgtDGY5RkIegfmeSY6GOD4MnoBh1D2aBJkYbYhmcCgigaIhOloEJ3h0aATD4b" & _
"gWCkQoehaGAnniHhNgwKI6HaConmiSYCF4I5niGQoLDmaoAiKKoaE6eJ2H+HZnFoeohigKwqCwGItmqA4ejIHgrkIHo+iuEA4h6PGMmIHo1i0LIKk6SoMCSWwcm2LAki" & _
"sAAAgmQgLFYcw3myaxmkmG4GgsdIXjebYjjaVQIC0eQFAONADguBpqjaaIKlwGIuG4GwOkWOYAAqDoljqbIrmIJ41m4O5iGYK5FAwBp0ikag7mqbI+GoCwyEyPgpBCQw" & _
"Oj0KRBGKFgpnAbAjXWMQ8EaeIuG6a5SHWHZxFyBoIjEbA8FQCJJmiZAmmOORwHyCwXgkbwqn8LYoDKOZNAmJpinyOzTm8aZrBWH5QhGAxCCedBMm8L5Fi+fAEFCPgvks" & _
"Vp0h8NQBn8RpLi7NQKBALxLHyF43EaDRPDOMoxkqXp4kYaRLlMTQIDWbQeguR5iluBxCBgNBCH6dIJnaSZjF+LQZgGQSh5DOFEa4dQsi5GILsaA8ReBuHoEYZ4ZwkDFF" & _
"wJEYo2grjcHOFUAoFA7gJFqFEDYrQyilC+PwNgyRBBLH4C8FIzxiD8CeBYEgUQ9CtAiEwYgtQyDqDWPUTjBhXBrCmAcKoJQ6iGF6DEMA8BpieA4BgMQdxDg9GSOkLQgR" & _
"CjhHiDMV4Ewfh3AoGULIiBujRAuJ0c4+gEi4ASOkRAfhWgjCKKEFACCAg"
		.Add 5,"gBFLBCJwBAEHhEJAAChABGgDg6AADACAxRDQNABQKAAzQFAYZBwGiGAAGEaRWgmFgAQhFcZQSKUOQTDKMIziYBYJAKCQ3DTJUBjIKcIhiGsgAzAJIUaw1DqGY7nKZoR" & _
"ioAIoSAMM7DCKUQSLGyQZqBSCQGjsAI+OyHAiABSNJwtHygIRoKqqHg2PoiSAEUZhdRlHShKSqLQiaIRSDUJZsW5EIyjBZ8EznOqbJApOKrCgOTYaWbUdSxPTEUwTFiX" & _
"JgmKRKIoiOAAY7IEgSFLsThrIKha5yDI4bxyAwXQjeYABbY0E4HQarcqzCrKGp/HYJXyAGgQHYkB5JAaQMBtGpoJrCeKQXDdVyXFwdET1BLZQA2HeUTTRVCScqnaTMZh" & _
"8DgGxniKfYbngAxFkmVJAnSdougwDhRlMGZ1GEPR9HQapDGWWhyCMe4ugQDx9naYRvm6cQfAUJ47m8cofBYAZOGCHg2mETgCBCERAGkGJHEGVByBkUwUCSIgChAMQIE2" & _
"BJRiQVQDAoEIWlWIxOgGBBcGyBQYlQXAkAcDpYh4KYKCKKI2CyC5ijONJvgySZ4lQWINkKCJmCWDpjkQaJPg+UA4joMYQiQI4eEYHAkgAYhKBgJJCh43JlAkEgwhSJA5" & _
"E4VoVE6UQCFoL5lkkBhXhUCR5gYOQKAieYUneGZlEmJhfhqZYJFIWgQCWQp+F6GxigmHJ3BoJ4JmYMw7maKZSH6HxoAiQhvhwZ1VHYFAogmBIXiAZ55jKDIQgeChGG+G" & _
"5BAoVJHiWaBYkIecznoOoeiMZYCj6IoYmcGhckeCophONoKh4aZagKLYrGkEZggeLJkCmThGDmZg5m6L4nmuOoCHaGJNnsBooAAIopCAcIZEiep2kqLwpnqCIviIBQLA" & _
"4dolEECZakuK4sksYhYAgLZLOsQJLHuBBIjibR7haWYfGwawhAOJpmBuGpajuJRJkYbxAmgORynCOZvgqApejcAgIG4OYUA0e5em+PhokQXhKAYKx8AsCo+FEcJDA6D5" & _
"MnwLwDkTWJulQQJuDEIphC2cQsHYbJEDCYJBAOLBrDIHwekUMBIiITgpmMcRhAOKYDgyRwnkyYwMjcK4cnAfAnCmSgzkoGhnkGZ45k6SIxjMTPIFCZOZEKSBxA0Fpui2" & _
"b5LFoKIqGoaY/FKUY1gmdpQjOKxbBIV4zi0DQ6nmOhmFkUophCLILEMV5YiWCZkH+W5nl2HxfiiMwQmMTZOmqLhaLsx9iUH6JAMI1hCDjECFQawhghjBG2DseoGQzhNH" & _
"wDwTAMAsgTEeCUZI1Q5jFHyLodYmWxB8GsPEVIPwxhSD6Awb4dgJD2HsAQQIoAQEB"
	End With
	.Background(90) = RGB(255,255,255)
	With .Elements
		.Add("Rectangular",0,0).Shape = 0
		.Add("Round",82,0).Shape = 1
		.Add("Rhomb",138,0).Shape = 2
		.Add("Circle",196,0).Shape = 3
		With .Add("EBN 1",0,36)
			.BackColor = &H1000000
			.Border = -1
		End With
		With .Add("EBN 2",54,36)
			.BackColor = &H2000000
			.Border = -1
		End With
		With .Add("EBN 3",108,36)
			.BackColor = &H3000000
			.Border = -1
		End With
		With .Add("EBN 4   ",160,36)
			.BackColor = &H4000000
			.Border = -1
		End With
		With .Add("EBN 5 ",220,36)
			.BackColor = &H5000000
			.MinHeight = 64
			.MinWidth = 64
			.Border = -1
		End With
	End With
	.ScrollPos(False) = -160
	.EndUpdate 
End With
21
Is it possible to add an inner control on the surface

' OleEvent event - Occurs once an inside control fires an event.
Private Sub SwimLane1_OleEvent(ByVal Element As Object,ByVal Ev As Object)
	With SwimLane1
		Debug.Print( Ev )
	End With
End Sub

With SwimLane1
	With .Elements
		With .Add("activex hosting")
			.Type = 2
			.Control = "Forms.CommandButton.1"
			.Caption = "Command Button"
			.Height = 64
			.Width = 128
			.ElementFormat = "14;""caption""/""client"""
			.CaptionAlign = 1
		End With
	End With
End With
20
How can I create a copy of the element
With SwimLane1
	.Background(90) = RGB(255,255,255)
	.Elements.Add("Element 1",0,0).Copy().Caption = "Aka"
End With
19
How can I define an opaque background for elements

With SwimLane1
	.Background(90) = RGB(255,255,255)
	.Elements.Add "Element 1",0,0
	.Elements.Add "Element 2",16,16
End With
18
How can I show a different context-menu for all elements
' ActionContextMenu event - Occurs when the user selects an item from the object's context menu.
Private Sub SwimLane1_ActionContextMenu(ByVal Action As Long,ByVal ObjectType As Long,ByVal ObjectID As Variant,ByVal CommandID As Long,ByVal CommandChecked As Boolean,ByVal CommandCaption As Variant,ByVal CommandValue As Variant,Cancel As Boolean)
	With SwimLane1
		Debug.Print( Action )
		Debug.Print( ObjectID )
		Debug.Print( CommandID )
	End With
End Sub

With SwimLane1
	.ContextMenu(4) = "Item 1[id=1000],Item 2[id=2000]"
	.Background(90) = RGB(255,255,255)
	.Elements.Add "Element 1",0,0
	.Elements.Add "Element 2",16,16
End With
17
How can I show a different context-menu for element
With SwimLane1
	Debug.Print( .Elements.Add("Element",0,0).InvokeContextMenu("Item 1[id=1000],Item 2[id=2000]") )
End With
16
How can I change the design-modes being shown on the control's toolbar

With SwimLane1
	.DesignModes = "Read-Only#0,Allow Any#3,Only-Element#1,Only-Pool#2"
End With
15
How can I change the default header's background color

With SwimLane1
	.BeginUpdate 
	With .Pools.Add(-250,-150,500,250)
		.Lane(0).Children.Count = 4
		.Lane(1).Children.Count = 4
	End With
	.Background(120) = RGB(0,255,0)
	.Background(124) = RGB(0,192,0)
	.EndUpdate 
End With
14
How can I remove the Design item from the control's toolbar, to be locked ( no-design )

With SwimLane1
	.ToolBarFormat = "-1,100,101"
	.DesignMode = 0
End With
13
How can I remove/disable the Color and Display-Grid from the surface's context menu

With SwimLane1
	.ContextMenu(24) = "Delete[id=-32004](All[id=-32000][ttp=Deletes all the objects from the surface],[sep],Elements[id=-32001][ttp=Deletes all elemen" & _
"ts from the surface],Links[id=-32002][ttp=Deletes all links from the surface],Pools[id=-32003][ttp=Deletes all pools from the su" & _
"rface])"
End With
12
How can I change the element's context-menu when the user right-clicks the element

' ActionContextMenu event - Occurs when the user selects an item from the object's context menu.
Private Sub SwimLane1_ActionContextMenu(ByVal Action As Long,ByVal ObjectType As Long,ByVal ObjectID As Variant,ByVal CommandID As Long,ByVal CommandChecked As Boolean,ByVal CommandCaption As Variant,ByVal CommandValue As Variant,Cancel As Boolean)
	' ContextMenuObjectFromID(ObjectType,ObjectID).BackColor = RGB(255,255,0)
	With SwimLane1
		Debug.Print( Action )
		Debug.Print( CommandCaption )
	End With
End Sub

With SwimLane1
	.BeginUpdate 
	.Elements.Add "element",0,0
	.ContextMenu(4) = "Simple,Value[edit=123],[sep],Popup(Check 1[chk],Check 2[chk=1])"
	.EndUpdate 
End With
11
How do I prevent showing the context-menu when user right-clicks the surface
With SwimLane1
	.ContextMenu(24) = ""
End With
10
How do I create parent-child (tree) lanes

With SwimLane1
	.BeginUpdate 
	With .Pools.Add(-250,-150,500,250)
		.HeaderSize(1) = 32
		.HeaderVisible(3) = False
		With .Lane(1).Children
			.Count = 2
			With .Item(0).Children
				.Count = 2
				.Item(0).Header.Caption = "Phase <b>1.1"
				.Item(1).Header.Caption = "Phase <b>1.2"
			End With
		End With
	End With
	.EndUpdate 
End With
9
How do I create a pool with horizontal and lanes

With SwimLane1
	.BeginUpdate 
	With .Pools.Add(-250,-150,500,250)
		.Lane(0).Children.Count = 4
		.Lane(1).Children.Count = 4
	End With
	.EndUpdate 
End With
8
How do I add programatically a pool with horizontal lanes

With SwimLane1
	.BeginUpdate 
	With .Pools.Add(-250,-150,500,250)
		.Lane(0).Children.Count = 4
	End With
	.EndUpdate 
End With
7
How do I add programatically a pool with vertical lanes

With SwimLane1
	.BeginUpdate 
	With .Pools.Add(-250,-150,500,250)
		.Lane(1).Children.Count = 4
	End With
	.EndUpdate 
End With
6
How can I change the toolbar's visual appearance

With SwimLane1
	.VisualAppearance.Add 1,"c:\exontrol\images\normal.ebn"
	.Background(148) = &H1000000
	.Background(149) = RGB(255,255,255)
	.Background(150) = RGB(40,40,40)
	.Background(153) = &H1606060
	.Background(154) = RGB(240,240,240)
	.Background(155) = &H1a0a0a0
	.Background(156) = RGB(255,255,255)
End With
5
How can I change the toolbar's background color

With SwimLane1
	.Background(149) = RGB(255,255,255)
End With