181 |
exUndo, An Undo operation is performed (CTR + Z), exRedo, A Redo operation is performed (CTR + Y). exUndoRedoUpdate, The Undo/Redo queue is updated
|
180 |
exLinkObjects, the user creates an element on the surface. The AllowLinkObjects property specifies the keys combination to allow user to link elements on the surface
/*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 9 ? `exLinkObjects` : value",Operation)) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 9 ? `exLinkObjects` : value",Operation)) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64) var_Elements.Add("Node <b>2") var_Elements.Add("Node <b>3",64,-64) oSurface.EndUpdate() MessageBox("Information",string( "Hold SHIFT, click an element, and drag to another element to create a link between them" )) |
179 |
exEditObject, the user edits the element's caption
/*begin event Click() - Occurs when the user presses and then releases the left mouse button over the control.*/ /* ElementFromPoint(-1,-1).Edit(0) oSurface = ole_1.Object */ /*end event Click*/ /*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 8 ? `exEditObject` : value",Operation)) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 8 ? `exEditObject` : value",Operation)) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = 99 /*exAllowChangeTo | exAllowChangeFrom | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64) var_Elements.Add("Node <b>2") var_Elements.Add("Node <b>3",64,-64) oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2),"L1") oSurface.EndUpdate() MessageBox("Information",string( "Click an element to edit its caption" )) |
178 |
exCreateObject, the user creates an element on the surface. The AllowCreateObject property specifies the keys combination to allow user to create elements on the surface
/*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 7 ? `exCreateObject` : value",Operation)) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 7 ? `exCreateObject` : value",Operation)) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = 99 /*exAllowChangeTo | exAllowChangeFrom | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64) var_Elements.Add("Node <b>2").Selected = true var_Elements.Add("Node <b>3",64,-64) oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2),"L1") oSurface.EndUpdate() MessageBox("Information",string( "Double-click on the surface and immediately drag to a new position to create an element" )) |
177 |
exSelectNothing, the user clicks an empty zone of the surface. The AllowSelectNothing property specifies the keys combination to allow user to select nothing on the surface
/*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 6 ? `exSelectNothing` : value",Operation)) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 6 ? `exSelectNothing` : value",Operation)) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowSelectNothing = true oSurface.AllowLinkControlPoint = 99 /*exAllowChangeTo | exAllowChangeFrom | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64) var_Elements.Add("Node <b>2").Selected = true var_Elements.Add("Node <b>3",64,-64) oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2),"L1") oSurface.EndUpdate() MessageBox("Information",string( "Select an element, and then click outside to select nothing" )) |
176 |
exSelectObject, the user clicks the object to get it selected. The AllowSelectObject property specifies the keys combination to allow user to select the object
/*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 5 ? `exSelectObject` : value",Operation)) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 5 ? `exSelectObject` : value",Operation)) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = 99 /*exAllowChangeTo | exAllowChangeFrom | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64) var_Elements.Add("Node <b>2") var_Elements.Add("Node <b>3",64,-64) oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2),"L1") oSurface.EndUpdate() MessageBox("Information",string( "Hold ALT and click, then drag to select elements within the drawn rectangle. Click an element to select it. CTRL + CLick to unselect it" )) |
175 |
exMoveObject, the user moves the object. The AllowMoveObject property specifies the keys combination to allow user to move the object
/*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 4 ? `exMoveObject` : value",Operation)) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 4 ? `exMoveObject` : value",Operation)) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = 99 /*exAllowChangeTo | exAllowChangeFrom | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64) var_Elements.Add("Node <b>2") var_Elements.Add("Node <b>3",64,-64) oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2),"L1") oSurface.EndUpdate() MessageBox("Information",string( "Move an element" )) |
174 |
exResizeObject, the user resizes the object. The AllowResizeObject property specifies the keys combination to allow user to resize the object
/*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 3 ? `exResizeObject` : value",Operation)) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 3 ? `exResizeObject` : value",Operation)) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = 99 /*exAllowChangeTo | exAllowChangeFrom | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64).AutoSize = false var_Elements.Add("Node <b>2").AutoSize = false var_Elements.Add("Node <b>3",64,-64).AutoSize = false oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2),"L1") oSurface.EndUpdate() MessageBox("Information",string( "Resize an element" )) |
173 |
exSurfaceHome, the user clicks the Home button on the control's toolbar, so the surface is restored to original position. The Home method has the same effect
/*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 2 ? `exSurfaceHome` : value",Operation)) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 2 ? `exSurfaceHome` : value",Operation)) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = 99 /*exAllowChangeTo | exAllowChangeFrom | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64) var_Elements.Add("Node <b>2") var_Elements.Add("Node <b>3",64,-64) oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2),"L1") oSurface.EndUpdate() MessageBox("Information",string( "Click the Home button" )) |
172 |
exSurfaceZoom, the user magnifies or shrinks the surface. The AllowZoomSurface property specifies the keys combination to allow user to zoom the surface
/*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 1 ? `exSurfaceZoom` : value",Operation)) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 1 ? `exSurfaceZoom` : value",Operation)) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = 99 /*exAllowChangeTo | exAllowChangeFrom | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64) var_Elements.Add("Node <b>2") var_Elements.Add("Node <b>3",64,-64) oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2),"L1") oSurface.EndUpdate() MessageBox("Information",string( "Click and drag the surface to reposition it" )) |
171 |
exSurfaceMove, the user scrolls or moves the surface. The AllowMoveSurface property specifies the keys combination to allow user to move / scroll the surface
/*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 0 ? `exSurfaceMove` : value",Operation)) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(oSurface.FormatABC("value = 0 ? `exSurfaceMove` : value",Operation)) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = 99 /*exAllowChangeTo | exAllowChangeFrom | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64) var_Elements.Add("Node <b>2") var_Elements.Add("Node <b>3",64,-64) oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2),"L1") oSurface.EndUpdate() MessageBox("Information",string( "Click and drag the surface to reposition it" )) |
170 |
FormatABC method formats the A,B,C values based on the giving expression and returns the result
|
169 |
FreezeEvents(Freeze) method prevents firing any event. For instance, FreezeEvents(True) freezes the control's events, no no event is fired, until the FreezeEvents(False) is called
|
168 |
The exAllowChangeFrom(0x20)/exAllowChangeTo(0x40) flag of LinkControlPointEnum type allows the user to adjust the link's from/to element by dragging and dropping the start control point (requires the exStartControlPoint/exEndControlPoint flag)
/*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(Operation) )) MessageBox("Information",string( String(oSurface.FocusLink.ID) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(Operation) )) MessageBox("Information",string( String(oSurface.FocusLink.ID) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = 99 /*exAllowChangeTo | exAllowChangeFrom | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64) var_Elements.Add("Node <b>2") var_Elements.Add("Node <b>3",64,-64) oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2),"L1") oSurface.FocusLink = "L1" oSurface.EndUpdate() |
167 |
The LayoutStartChanging(exFocusLink)/LayoutEndChanging(exFocusLink) event notifies your application when the user focuses on a new link
/*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(Operation) )) MessageBox("Information",string( String(oSurface.FocusLink) )) */ /*end event LayoutEndChanging*/ /*begin event LayoutStartChanging(long Operation) - Occurs when the control's layout is about to be changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutStartChanging" )) MessageBox("Information",string( String(Operation) )) MessageBox("Information",string( String(oSurface.FocusLink) )) */ /*end event LayoutStartChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = 3 /*exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Node <b>1",-64,-64) var_Elements.Add("Node <b>2") oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2),"L1") oSurface.EndUpdate() |
166 |
Focus a link
|
165 |
The caption is displayed on the back, so the picture overrides it. How can I place the caption on the foreground
|
164 |
Draws a frame arround the link's arrow
OleObject oSurface,var_Elements,var_Link,var_Links oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = -1 /*0xffffff80 | exAllowChangeTo | exAllowChangeFrom | exOrthoArrange | exMiddleControlPoint | exControlPoint | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Element <sha ;;0>A") var_Elements.Add("Element <sha ;;0>B",164,64) var_Elements.Add("Element <sha ;;0>B",0,132) var_Links = oSurface.Links var_Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75" var_Links.Add(oSurface.Elements.Item(3),oSurface.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75" var_Link = var_Links.Add(oSurface.Elements.Item(3),oSurface.Elements.Item(1)) var_Link.ShowLinkType = 3 /*exLinkStraight | exLinkDirect*/ var_Link.StartPos = 0 var_Link.ArrowSize = 8 var_Link.ArrowColor = RGB(255,255,255) var_Link.ArrowFrameColor = RGB(0,0,0) oSurface.FitToClient() oSurface.EndUpdate() |
163 |
Draws a frame arround the arrow for all links
OleObject oSurface,var_Elements,var_Link,var_Links oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = -1 /*0xffffff80 | exAllowChangeTo | exAllowChangeFrom | exOrthoArrange | exMiddleControlPoint | exControlPoint | exEndControlPoint | exStartControlPoint*/ oSurface.LinksArrowSize = 8 oSurface.LinksArrowColor = RGB(255,255,255) oSurface.LinksArrowFrameColor = RGB(0,0,0) var_Elements = oSurface.Elements var_Elements.Add("Element <sha ;;0>A") var_Elements.Add("Element <sha ;;0>B",164,64) var_Elements.Add("Element <sha ;;0>B",0,132) var_Links = oSurface.Links var_Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75" var_Links.Add(oSurface.Elements.Item(3),oSurface.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75" var_Link = var_Links.Add(oSurface.Elements.Item(3),oSurface.Elements.Item(1)) var_Link.ShowLinkType = 3 /*exLinkStraight | exLinkDirect*/ var_Link.StartPos = 0 oSurface.FitToClient() oSurface.EndUpdate() |
162 |
Change the size to display the arrow of the link
|
161 |
Change the size to display the arrows for all links
|
160 |
Extends the caption on the element's width
|
159 |
Gets the width/height of the element to fit its content ( as if the AutoSize property is True )
|
158 |
Expandable-caption
/*begin event AnchorClick(string AnchorID,string Options) - Occurs when an anchor element is clicked.*/ /* oSurface = ole_1.Object MessageBox("Information",string( String(AnchorID) )) */ /*end event AnchorClick*/ OleObject oSurface,var_Element,var_Element1,var_Element2,var_Link oSurface = ole_1.Object var_Element = oSurface.Elements.Add("<solidline> <c><b>Bank Account</b></solidline><br>+ owner: String <r><a 1;e64=gA8ABzABvABsABpABkg8JABuABlAAgAA4AAwisXjMYH0TAECMYAjsCMwAM4AkMGhEGOUei0Yl8bkQAOAAlsGmsSlp0h0SgkCF8DgsNhUMhEKiESkYAoMlk8phssmcCltLMNTAFOlFDlc2l0amMxjomAAjAA5AA2tMaHcfplZk1blVDqtuoNXjoAAEBA=>▲</a><br><solidline>+ balance: Currency = 0</solidline><br>+ deposit(amount: Currency)<r><a 2;e64=gA8ABjAA+AECMwAM8DABvABshoAOQAEAAHAAGEWjEajMGNoAMoAOgANERMgAOcHAAvAEJhcEh0Qh0Tg0CmkqMMFlUuhkxiMTisXjNCjk6EwAEYAHIAG1MjY7lUsnkwh8/nUClk5gwAAEBA==>▲</a><br>+ withdraw(amount: Currency)") var_Element.ID = "Account" var_Element.X = -256 var_Element.Y = -164 var_Element.CaptionSingleLine = 1 var_Element.CaptionAlign = 4 /*0x4 | */ var_Element1 = oSurface.Elements.Add("<solidline> <c><b>Person</b></solidline><br>+ name: String <r><a 1;e64=gA8ABzABvABsABpABkg8JABuABlAAgAA4AAwisXjMYH0TAECMYAjsCMwAM4AkMGhEGOUei0Yl8bkQAOAAlsGmsSlp0h0SgkCF8DgsNhUMhEKiESkYAoMlk8phssmcCltLMNTAFOlFDlc2l0amMxjomAAjAA5AA2tMaHcfplZk1blVDqtuoNXjoAAEBA=>▲</a><br><solidline># birth: Date</solidline><br>+ getCurrentAge(): int<r><a 2;e64=gA8ABjAA+AECMwAM8DABvABshoAOQAEAAHAAGEWjEajMGNoAMoAOgANERMgAOcHAAvAEJhcEh0Qh0Tg0CmkqMMFlUuhkxiMTisXjNCjk6EwAEYAHIAG1MjY7lUsnkwh8/nUClk5gwAAEBA==>▲</a>") var_Element1.ID = "Person" var_Element1.Y = -164 var_Element1.CaptionSingleLine = 1 var_Element2 = oSurface.Elements.Add("<solidline> <c><b>Student</b></solidline><br><solidline>+ classes: List<Course> <r><a 1;e64=gA8ABzABvABsABpABkg8JABuABlAA+AAgAECMcTi4AMwAM4AjMGhEGOUVAA4AAwk8plcqihwAElg0wiUlOkOiUEgQvgcFhsKhkIhUQiUUnccj0gn0jmMagUlowAMNOpEfkMNkkmlEqrctjQmAAjAA5AA2sssHcbnkdq1Ln1QtVSjQAAEBA==>▲</a></solidline><br>- attend(class: Course)<r><a 2;e64=gA8ABjAA+AECMwAM8DABvABshoAOQAEAAHAAGEWjEajMGNoAMoAOgANERMgAOcHAAvAEJhcEh0Qh0Tg0CmkqMMFlUuhkxiMTisXjNCjk6EwAEYAHIAG1MjY7lUsnkwh8/nUClk5gwAAEBA==>▲</a><br>- sleep()") var_Element2.ID = "Student" var_Element2.Y = -64 var_Element2.CaptionSingleLine = 1 var_Link = oSurface.Links.Add(oSurface.Elements.Item("Account"),oSurface.Elements.Item("Student")) var_Link.Caption = "<fgcolor A0A0A0><solidline 808080> <c><b>Link</b></solidline><br># count: number <r><a ;exp=12992>➤</a>" |
157 |
Expandable-caption
|
156 |
Fullfit the caption on the element's width
OleObject oSurface,var_Element oSurface = ole_1.Object var_Element = oSurface.Elements.Add("<solidline><b>Bank Account</b></solidline><br>+ owner: String <r><a 1;properties>+</a><br><solidline>+ balance: Currency = 0</solidline><br>+ deposit(amount: Currency)<r><a 2;methods>+</a><br>+ withdraw(amount: Currency)") var_Element.CaptionSingleLine = 1 var_Element.BackColor = RGB(248,248,248) var_Element.AutoSize = false var_Element.Width = 194 var_Element.Height = 76 var_Element.CaptionAlign = 4 /*0x4 | */ |
155 |
Wrap the caption by <br> or "\r\n" sequence only
OleObject oSurface,var_Element oSurface = ole_1.Object var_Element = oSurface.Elements.Add("<solidline><b>Bank Account</b></solidline><br>+ owner: String <r><a 1;properties>+</a><br><solidline>+ balance: Currency = 0</solidline><br>+ deposit(amount: Currency)<r><a 2;methods>+</a><br>+ withdraw(amount: Currency)") var_Element.CaptionSingleLine = 1 var_Element.BackColor = RGB(248,248,248) |
154 |
Display a custom tooltip
/*begin event MouseMove(integer Button,integer Shift,long X,long Y) - Occurs when the user moves the mouse.*/ /* oSurface = ole_1.Object oSurface.ShowToolTip("new content","",,"+8","+8") */ /*end event MouseMove*/ OleObject oSurface oSurface = ole_1.Object |
153 |
Shows the tooltip of the object moved relative to its default position
/*begin event MouseMove(integer Button,integer Shift,long X,long Y) - Occurs when the user moves the mouse.*/ /* oSurface = ole_1.Object oSurface.ShowToolTip("<null>","<null>",,"+8","+8") */ /*end event MouseMove*/ OleObject oSurface oSurface = ole_1.Object oSurface.Elements.Add("Element with a Tooltip").ToolTip = "This is a bit of text that should be displayed when cursor hovers the element." |
152 |
Rename Undo/Redo commands into the control's toolbar
OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowUndoRedo = true oSurface.ToolBarFormat = "-1,100,101,|,103,104" oSurface.ToolBarCaption(100,"<img>1</img>Acasa") oSurface.ToolBarCaption(103,"Anuleaza <img>3</img>") oSurface.ToolBarCaption(104,"<img>4</img>Reface") oSurface.ToolBarToolTip(100,"Restabileste vizualizarea la origine.") oSurface.ToolBarToolTip(101,"Mareste vizualizarea.") oSurface.ToolBarToolTip(103,"Anuleaza ultima actiune UI. Pentru a anula o actiune apasati Ctrl+Z.") oSurface.ToolBarToolTip(104,"Inverseaza cea mai recenta operatie de anulare. Pentru a reface o actiune apasati Ctrl+Y.") var_Elements = oSurface.Elements var_Elements.Add("Item <b>1",-64,-48) var_Elements.Add("Item <b>2",32,32) oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) oSurface.EndUpdate() |
151 |
Add Undo/Redo commands to control's toolbar
OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowUndoRedo = true oSurface.ToolBarFormat = "-1,100,101,|,103,104" var_Elements = oSurface.Elements var_Elements.Add("Item <b>1",-64,-48) var_Elements.Add("Item <b>2",32,32) oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) oSurface.EndUpdate() |
150 |
Clear Undo/Redo queue (method 2)
OleObject oSurface,var_Elements any c oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowUndoRedo = true var_Elements = oSurface.Elements var_Elements.Add("Item <b>1",-64,-64) var_Elements.Add("Item <b>2") oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) c = oSurface.UndoRedoQueueLength oSurface.UndoRedoQueueLength = 0 oSurface.UndoRedoQueueLength = c MessageBox("Information",string( oSurface.UndoListAction() )) oSurface.EndUpdate() |
149 |
Clear Undo/Redo queue (method 1)
OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowUndoRedo = true var_Elements = oSurface.Elements var_Elements.Add("Item <b>1",-64,-64) var_Elements.Add("Item <b>2") oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) oSurface.AllowUndoRedo = true MessageBox("Information",string( oSurface.UndoListAction() )) oSurface.EndUpdate() |
148 |
Removes Redo operations
|
147 |
Removes Undo operations
|
146 |
Record the UI operations as a block of undo/redo operations
OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowUndoRedo = true oSurface.StartBlockUndoRedo() var_Elements = oSurface.Elements var_Elements.Add("Item <b>1",-64,-64) var_Elements.Add("Item <b>2") oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) oSurface.EndBlockUndoRedo() MessageBox("Information",string( oSurface.UndoListAction() )) oSurface.EndUpdate() |
145 |
Groups the next to current Undo/Redo Actions in a single block
|
144 |
Limits the number of entries within the Undo/Redo queue
|
143 |
Lists the Redo actions that can be performed on the surface
|
142 |
Lists the Undo actions that can be performed on the surface
|
141 |
Checks whether the Undo operation is possible
|
140 |
Call Redo by code
|
139 |
Checks whether the Undo operation is possible
|
138 |
Call Undo by code
|
137 |
Save the element's properties for Undo/Redo operations, by code
OleObject oSurface,var_Elements,var_Link any h oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowUndoRedo = true var_Elements = oSurface.Elements var_Elements.Add("Item <b>1",-64,-64) var_Elements.Add("Item <b>2") oSurface.StartBlockUndoRedo() var_Link = oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) h = var_Link.StartUpdateLink var_Link.Color = RGB(255,0,0) var_Link.Width = 2 var_Link.ShowDir = false var_Link.ShowLinkType = 2 var_Link.EndUpdateLink(h) oSurface.EndBlockUndoRedo() oSurface.EndUpdate() |
136 |
No color is restored for the link when Undo/Redo operation is executed
/*begin event AddElement(oleobject Element) - A new element has been added to the surface.*/ /* Element.ShowCheckBox = True Element.CheckBoxAlign = 2 oSurface = ole_1.Object */ /*end event AddElement*/ OleObject oSurface,var_Elements,var_Link any h oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowUndoRedo = true var_Elements = oSurface.Elements var_Elements.Add("Check <b>1",-64,-64) var_Elements.Add("Check <b>2").Checked = 1 oSurface.StartBlockUndoRedo() var_Link = oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) h = var_Link.StartUpdateLink var_Link.Color = RGB(255,0,0) var_Link.Width = 2 var_Link.ShowDir = false var_Link.ShowLinkType = 2 var_Link.EndUpdateLink(h) oSurface.EndBlockUndoRedo() oSurface.EndUpdate() |
135 |
Save the element's properties for Undo/Redo operations, by code
OleObject oSurface,var_Element any h oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowUndoRedo = true oSurface.Elements.Add("Item <b>1",-64,-64) oSurface.StartBlockUndoRedo() var_Element = oSurface.Elements.Add("Item <b>2") h = var_Element.StartUpdateElement var_Element.BackColor = RGB(0,0,0) var_Element.ForeColor = RGB(255,255,255) var_Element.BorderColor = RGB(255,0,0) var_Element.EndUpdateElement(h) oSurface.EndBlockUndoRedo() oSurface.EndUpdate() |
134 |
No color is restored for the element when Undo/Redo operation is executed
OleObject oSurface,var_Element any h oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowUndoRedo = true oSurface.Elements.Add("Item <b>1",-64,-64) oSurface.StartBlockUndoRedo() var_Element = oSurface.Elements.Add("Item <b>2") h = var_Element.StartUpdateElement var_Element.BackColor = RGB(0,0,0) var_Element.ForeColor = RGB(255,255,255) var_Element.BorderColor = RGB(255,0,0) var_Element.EndUpdateElement(h) oSurface.EndBlockUndoRedo() oSurface.EndUpdate() |
133 |
How can I ensure that a specified element fits the surface's visible area
OleObject oSurface,var_Elements,var_Pattern oSurface = ole_1.Object var_Elements = oSurface.Elements var_Pattern = var_Elements.Add("Element A",-100).Pattern var_Pattern.Type = 6 var_Pattern.Color = RGB(224,224,224) var_Elements.Add("Element B",2000).EnsureVisible() |
132 |
LayoutEndChanging(exUndo), LayoutEndChanging(exRedo) or LayoutEndChanging(exUndoRedoUpdate) notifiy your application once a Undo/Redo operation is executed (CTRL+Z, CTRL+Y) or updated
/*begin event AddElement(oleobject Element) - A new element has been added to the surface.*/ /* Element.ShowCheckBox = True Element.CheckBoxAlign = 2 oSurface = ole_1.Object */ /*end event AddElement*/ /*begin event LayoutEndChanging(long Operation) - Notifies your application once the control's layout has been changed.*/ /* oSurface = ole_1.Object MessageBox("Information",string( "LayoutEndChanging" )) MessageBox("Information",string( String(Operation) )) */ /*end event LayoutEndChanging*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowUndoRedo = true var_Elements = oSurface.Elements var_Elements.Add("Check <b>1",-64,-64) var_Elements.Add("Check <b>2").Checked = 1 oSurface.Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) oSurface.EndUpdate() |
131 |
Turn on the Undo/Redo feature
|
130 |
ImageSize property on 32 (specifies the size of control' icons/images/check-boxes/radio-buttons)
|
129 |
ImageSize property on 16 (default) (specifies the size of control' icons)
|
128 |
We want to have option to start/end connectors at the middle of each side of the elements
|
127 |
How can I determine the position the user clicks within the element's boundaries (Click event)
/*begin event Click() - Occurs when the user presses and then releases the left mouse button over the control.*/ /* OleObject e any X,Y oSurface = ole_1.Object e = oSurface.ElementFromPoint(-1,-1) X = -1 Y = -1 oSurface.PointToPosition(X,Y) MessageBox("Information",string( String(e) )) MessageBox("Information",string( String(X) )) MessageBox("Information",string( String(Y) )) */ /*end event Click*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() var_Elements = oSurface.Elements var_Elements.Add("Element 1") var_Elements.Add("Element 2",128,64) oSurface.FitToClient() oSurface.EndUpdate() |
126 |
How can I determine the position the user clicks within the element's boundaries (MouseMove event)
/*begin event MouseMove(integer Button,integer Shift,long X,long Y) - Occurs when the user moves the mouse.*/ /* OleObject e oSurface = ole_1.Object e = oSurface.ElementFromPoint(X,Y) oSurface.PointToPosition(X,Y) MessageBox("Information",string( String(e) )) MessageBox("Information",string( String(X) )) MessageBox("Information",string( String(Y) )) */ /*end event MouseMove*/ OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() var_Elements = oSurface.Elements var_Elements.Add("Element 1") var_Elements.Add("Element 2",128,64) oSurface.FitToClient() oSurface.EndUpdate() |
125 |
How can I convert the screen position (mouse) to surface position
|
124 |
Is is possible to show just the positive coordinates
OleObject oSurface,var_Elements,var_Links oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.Coord = 17 /*exAllowPositiveOnly | exCartesian*/ oSurface.AxisColor = RGB(128,128,128) oSurface.AxisStyle = 259 /*exLinesThick | exLinesDot4*/ oSurface.ShowLinks = -1 var_Elements = oSurface.Elements var_Elements.Add("Element <sha ;;0>1") var_Elements.Add("Element <sha ;;0>2",164,64) var_Elements.Add("Element <sha ;;0>3",0,132) var_Links = oSurface.Links var_Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) var_Links.Add(oSurface.Elements.Item(3),oSurface.Elements.Item(2)) oSurface.FitToClient() oSurface.EndUpdate() |
123 |
Cartesian coordinates (positive coordinates are shown top-right to the origin)
|
122 |
Default coordinates (positive coordinates are shown bottom-right to the origin)
|
121 |
Is it possible to customize the path of the links orthogonally similar with Microsoft Visio tool
|
120 |
Does your control supports OLE Drag and Drop
|
119 |
Is it possible to disable customizing the path of a specified link
OleObject oSurface,var_Elements,var_Link,var_Links oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = -1 /*0xffffff80 | exAllowChangeTo | exAllowChangeFrom | exOrthoArrange | exMiddleControlPoint | exControlPoint | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Element <sha ;;0>A") var_Elements.Add("Element <sha ;;0>B",164,64) var_Elements.Add("Element <sha ;;0>B",0,132) var_Links = oSurface.Links var_Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75" var_Links.Add(oSurface.Elements.Item(3),oSurface.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75" var_Link = var_Links.Add(oSurface.Elements.Item(3),oSurface.Elements.Item(1)) var_Link.ShowLinkType = 3 /*exLinkStraight | exLinkDirect*/ var_Link.StartPos = 0 var_Link.Color = RGB(128,128,128) var_Link.AllowControlPoint = 0 oSurface.Zoom = 200 oSurface.FitToClient() oSurface.EndUpdate() |
118 |
How do I let user customizes the link's path
OleObject oSurface,var_Elements,var_Link,var_Links oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowLinkControlPoint = -1 /*0xffffff80 | exAllowChangeTo | exAllowChangeFrom | exOrthoArrange | exMiddleControlPoint | exControlPoint | exEndControlPoint | exStartControlPoint*/ var_Elements = oSurface.Elements var_Elements.Add("Element <sha ;;0>A") var_Elements.Add("Element <sha ;;0>B",164,64) var_Elements.Add("Element <sha ;;0>B",0,132) var_Links = oSurface.Links var_Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75" var_Links.Add(oSurface.Elements.Item(3),oSurface.Elements.Item(2)).CustomPath = "0.5,0.25,0.5,.75" var_Link = var_Links.Add(oSurface.Elements.Item(3),oSurface.Elements.Item(1)) var_Link.ShowLinkType = 3 /*exLinkStraight | exLinkDirect*/ var_Link.StartPos = 0 oSurface.Zoom = 200 oSurface.FitToClient() oSurface.EndUpdate() |
117 |
How can I generate a picture/image/graph from my diagram
|
116 |
How can I generate a picture/image/graph from my diagram
|
115 |
How can I print the component
OleObject oSurface,var_Element,var_Element1,var_Elements,var_Link,var_Link1,var_Link2,var_Links,var_Print oSurface = ole_1.Object var_Elements = oSurface.Elements var_Elements.Add("Element <sha ;;0>A") var_Elements.Add("Element <sha ;;0>B",0,76) var_Element = var_Elements.Add("Element <sha ;;0>C",-76,32) var_Element.AutoSize = false var_Element.Height = 32 var_Element1 = var_Elements.Add("Element <sha ;;0>D",76,32) var_Element1.AutoSize = false var_Element1.Height = 32 var_Links = oSurface.Links var_Link = var_Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) var_Link.StartPos = 1 var_Link.EndPos = 1 var_Link1 = var_Links.Add(oSurface.Elements.Item(2),oSurface.Elements.Item(1)) var_Link1.StartPos = 1 var_Link1.EndPos = 1 var_Links.Add(oSurface.Elements.Item(3),oSurface.Elements.Item(4)) var_Link2 = var_Links.Add(oSurface.Elements.Item(4),oSurface.Elements.Item(3)) var_Link2.StartPos = 0 var_Link2.EndPos = 2 var_Print = CREATE OLEObject var_Print.ConnectToNewObject("Exontrol.Print") var_Print.PrintExt = oSurface.Object var_Print.Preview() |
114 |
How can I show direct-links
|
113 |
How can I show straight-links
|
112 |
How can I show round-links
|
111 |
I've tried to insert a "<br>" in the Caption property text and it just ignores it
OleObject oSurface,var_Element,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() var_Elements = oSurface.Elements var_Element = var_Elements.Add("caption") var_Element.CaptionSingleLine = false var_Element.Caption = "first caption<br>second caption<br>third caption" oSurface.EndUpdate() |
110 |
How do I align the extra-caption
OleObject oSurface,var_Element,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() var_Elements = oSurface.Elements var_Element = var_Elements.Add("caption") var_Element.AutoSize = false var_Element.Width = 128 var_Element.Height = 64 var_Element.ExtraCaption = "extra-caption" var_Element.ExtraCaptionAlign = 34 oSurface.EndUpdate() |
109 |
How can I add an extra caption
|
108 |
I am using the reserve-neighbors feature, the question is how to shift left/right the neighbors instead of up/down
OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowMoveNeighbors = 2 oSurface.DefArrange(0,1) oSurface.AllowInsertObject = false var_Elements = oSurface.Elements var_Elements.Add("Element <sha ;;0>A") var_Elements.Add("Element <sha ;;0>B ( move it )",16,32) var_Elements.Add("Element <sha ;;0>C",128,0) oSurface.EndUpdate() |
107 |
I am using the reserve-neighbors feature, the question is if possible to specify the distance between neighbors
OleObject oSurface,var_Elements oSurface = ole_1.Object oSurface.BeginUpdate() oSurface.AllowMoveNeighbors = 1 oSurface.DefArrange(1,0) oSurface.DefArrange(2,0) oSurface.AllowInsertObject = false var_Elements = oSurface.Elements var_Elements.Add("Element <sha ;;0>A") var_Elements.Add("Element <sha ;;0>B ( move it )",0,32) var_Elements.Add("Element <sha ;;0>C",0,64) oSurface.EndUpdate() |
106 |
How do I enable the reserve-neighbors feature
|
105 |
I've noticed that recently, the elements get compacted once the Arrange method is performed. How can I prevent that
|
104 |
Is it possible to add a link to show from bottom/down to top/up, rather that right to left (method-2)
/*begin event AddLink(oleobject Link) - A new link has been added to the links collection.*/ /* oSurface = ole_1.Object */ /*end event AddLink*/ OleObject oSurface,var_Elements,var_Links oSurface = ole_1.Object var_Elements = oSurface.Elements var_Elements.Add("Element <sha ;;0>A") var_Elements.Add("Element <sha ;;0>B",48,48) var_Links = oSurface.Links var_Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) |
103 |
Is it possible to add a link to show from bottom/down to top/up, rather that right to left (method-1)
OleObject oSurface,var_Elements,var_Link,var_Links oSurface = ole_1.Object var_Elements = oSurface.Elements var_Elements.Add("Element <sha ;;0>A") var_Elements.Add("Element <sha ;;0>B",48,48) var_Links = oSurface.Links var_Link = var_Links.Add(oSurface.Elements.Item(1),oSurface.Elements.Item(2)) var_Link.StartPos = 4 var_Link.EndPos = 3 |
102 |
How do I enable the cross link support ( mixed )
|
101 |
How do I enable the cross link support ( triangular )
|