1255
The Change event is called before changing the value. Is there any event such as Changed that is called after updating the cell's value
// Occurs after the user has changed the content of a cell.
Procedure OnComChanged HITEM   llItem Integer   llColIndex
	Forward Send OnComChanged llItem llColIndex
	Variant v
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComCellValue of hoItems llItem llColIndex to v
	Send Destroy to hoItems
	Showln v
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Edit" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Variant voEditor
			Get ComEditor of hoColumn to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLEEditType
			Send Destroy to hoEditor
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Get ComAddItem of hoItems1 "Item 1" to Nothing
	Send Destroy to hoItems1
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Get ComAddItem of hoItems2 "Item 2" to Nothing
	Send Destroy to hoItems2
	Send ComEndUpdate
End_Procedure
1254
How can I reposition the +/- (expand/collapse) icon to show as "number, icon, text" (sample 2)
// Occurs when an anchor element is clicked.
Procedure OnComAnchorClick String   llAnchorID String   llOptions
	Forward Send OnComAnchorClick llAnchorID llOptions
	Variant i
	Get ComFormatABC "int(value)" llAnchorID Nothing Nothing to i
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComItemByIndex of hoItems i to i
		Variant exp
		Get ComExpandItem of hoItems i to exp
		Variant v
			Get ComFormatABC "not value" exp Nothing Nothing to v
		Set ComExpandItem of hoItems i to v
	Send Destroy to hoItems
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHTMLPicture "expand" to "gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYc7YYBY5vVBkiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyxgjsRzEKv1TqtXrNbrtfsIAwgASAHAGShQwGQzGABUGEzudAqgyWdSmWw2Fw+sABSHI4AGH1XAGAxGAwywlI6eRqjGi1YuaJJEIJUHBPYqSJYKQAwCBDKbBPbncBibrUKQjGLFQo+TBFfR5GaUAR/KbGICyRxsiCOQClgdJxGoMpkGycpdDqUZ0EoJQJHYVoWCSCA4kEbRlHKRwJiYcYCH0PBNB2JwYCaCRsGcE8LDyfZKg+U59EsAZMlQCgJkcEA9CsywkiKJwiFcIQwEEgI="
	Set ComHTMLPicture "collapse" to "gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYU7YQBCooJSAiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyzyO13dGEAGYzWcqlWrFarlesA3AGcSAHAGShQwGQzGABUGEv2TAAFUGS26Uy2GwuH1wAKQ5HAAw+s4YwGIwGGWISpVLiXT5MrxiJyJJEIJUHBPYqSXYOQAgBgAB6jJwufxxX7YYhdYhFCSsSwSC4uMLoQajNJAG8QgZAgSIqGMCwRBkAJDicGwuiMeoHGeaRFlAU5qDwQQ6A+CYnlgPQeisGJfl4AJYhsRISjQYwJHIcpmmALAtlMEpkE4YBREmEpPBAARdicSw8AES5fi+fI5g+PpcAAUJKgyCYknaZRrssJIiicIhXCEMBBICA=="
	Set ComHTMLPicture "empty" to "gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYE7YABNTWRIJiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyy/O13dGEAGYzWcqlWrFarlesA3AGcSAHAGShQwGQzGABUGEv2TAAFUGS26Uy2GwuH1wAKQ5HAAw+s4YwGIwGGWYSvDpndpkQ9xhRTJJEIJUHBPdqSGIKYAwBgDUpCfytH57FqoVaTKQTGS0DJ6cDBDzOGwIfANHMIxJDmf5CFIAxwA4Q5HEQVJlEWRxnBkMANjsPoqBSEAElkfZ5CMFJMHCC52BALBGjkDpHCuXIAB2bQdEGaQgFIbbLCSIonCIVwhDAQSAg=="
	Set ComHeaderVisible to False
	Set ComHasLines to OLEexNoLine
	Set ComHasButtons to OLEexNoButtons
	Set ComIndent to 12
	Set ComDefaultItemHeight to 24
	Set ComDrawGridLines to OLEexHLines
	Set ComGridLineStyle to OLEexGridLinesSolid
	Set ComGridLineColor to (RGB(204,204,204))
	Set ComShowFocusRect to False
	Set ComExpandOnDblClick to False
	Set ComExpandOnKeys to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellValueFormat to 1
			Set ComFormatColumn of hoColumn to "(len(parent(1 index ``)) ? (`<b><fgcolor gray>` + (1 pos ``) + `. ` + `</fgcolor></b>` + (%CC0 ? (`<a ` + (0 index ``) + `>`) : ``) + `<img>` + (%CC0 ? (not %CX0 ? `expand` : `collapse`) : `empty`) + `:16</img>` + (%CC0 ? (`</a>`) : ``)) : ``) + ` ` + value"
			Variant voEditor
			Get ComEditor of hoColumn to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLEEditType
				Set ComOption of hoEditor OLEexEditorAdjustPos to "32 4 -4 -4"
			Send Destroy to hoEditor
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Variant hRoot
		Get ComAddItem of hoItems1 "ACME Corporation" to hRoot
		Set ComSelectableItem of hoItems1 hRoot to False
		Set ComExpandItem of hoItems1 hRoot to True
		Variant h
		Get ComInsertItem of hoItems1 hRoot "Management" to h
		Get ComInsertItem of hoItems1 h "CEO - Alice Brown" to Nothing
		Get ComInsertItem of hoItems1 h "COO - James Lee" to Nothing
		Get ComInsertItem of hoItems1 hRoot "HR Department" to h
		Get ComInsertItem of hoItems1 h "Recruiter - Jane Smith" to Nothing
		Get ComInsertItem of hoItems1 h "HR Assistant - Bob Green" to Nothing
		Set ComExpandItem of hoItems1 h to True
		Get ComInsertItem of hoItems1 h "Engineering" to h
		Get ComInsertItem of hoItems1 h "Software Team" to Nothing
		Get ComInsertItem of hoItems1 h "Lead Developer - Mark H." to h
		Get ComInsertItem of hoItems1 h "Frontend Dev - Emily R." to Nothing
		Get ComInsertItem of hoItems1 h "Backend Dev - Tom W." to Nothing
		Get ComInsertItem of hoItems1 hRoot "QA Team" to Nothing
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1253
How can I reposition the +/- (expand/collapse) icon to show as "number, icon, text" (sample 1)

// Occurs when an anchor element is clicked.
Procedure OnComAnchorClick String   llAnchorID String   llOptions
	Forward Send OnComAnchorClick llAnchorID llOptions
	Variant i
	Get ComFormatABC "int(value)" llAnchorID Nothing Nothing to i
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComItemByIndex of hoItems i to i
		Variant exp
		Get ComExpandItem of hoItems i to exp
		Variant v
			Get ComFormatABC "not value" exp Nothing Nothing to v
		Set ComExpandItem of hoItems i to v
	Send Destroy to hoItems
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHTMLPicture "expand" to "gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYc7YYBY5vVBkiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyxgjsRzEKv1TqtXrNbrtfsIAwgASAHAGShQwGQzGABUGEzudAqgyWdSmWw2Fw+sABSHI4AGH1XAGAxGAwywlI6eRqjGi1YuaJJEIJUHBPYqSJYKQAwCBDKbBPbncBibrUKQjGLFQo+TBFfR5GaUAR/KbGICyRxsiCOQClgdJxGoMpkGycpdDqUZ0EoJQJHYVoWCSCA4kEbRlHKRwJiYcYCH0PBNB2JwYCaCRsGcE8LDyfZKg+U59EsAZMlQCgJkcEA9CsywkiKJwiFcIQwEEgI="
	Set ComHTMLPicture "collapse" to "gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYU7YQBCooJSAiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyzyO13dGEAGYzWcqlWrFarlesA3AGcSAHAGShQwGQzGABUGEv2TAAFUGS26Uy2GwuH1wAKQ5HAAw+s4YwGIwGGWISpVLiXT5MrxiJyJJEIJUHBPYqSXYOQAgBgAB6jJwufxxX7YYhdYhFCSsSwSC4uMLoQajNJAG8QgZAgSIqGMCwRBkAJDicGwuiMeoHGeaRFlAU5qDwQQ6A+CYnlgPQeisGJfl4AJYhsRISjQYwJHIcpmmALAtlMEpkE4YBREmEpPBAARdicSw8AES5fi+fI5g+PpcAAUJKgyCYknaZRrssJIiicIhXCEMBBICA=="
	Set ComHeaderVisible to False
	Set ComHasLines to OLEexNoLine
	Set ComHasButtons to OLEexNoButtons
	Set ComIndent to 12
	Set ComDefaultItemHeight to 24
	Set ComDrawGridLines to OLEexHLines
	Set ComGridLineStyle to OLEexGridLinesSolid
	Set ComGridLineColor to (RGB(204,204,204))
	Set ComShowFocusRect to False
	Set ComExpandOnDblClick to False
	Set ComExpandOnKeys to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellValueFormat to 1
			Set ComFormatColumn of hoColumn to "(len(parent(1 index ``)) ? (`<b><fgcolor gray>` + (1 pos ``) + `. ` + `</fgcolor></b>` + `<a ` + (0 index ``) + `><img>` + (%CC0 ? (not %CX0 ? `expand` : `collapse`) : ``) + `:16</img></a>`) : ``) + ` ` + value"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Variant hRoot
		Get ComAddItem of hoItems1 "ACME Corporation" to hRoot
		Set ComSelectableItem of hoItems1 hRoot to False
		Set ComExpandItem of hoItems1 hRoot to True
		Variant h
		Get ComInsertItem of hoItems1 hRoot "Management" to h
		Get ComInsertItem of hoItems1 h "CEO - Alice Brown" to Nothing
		Get ComInsertItem of hoItems1 h "COO - James Lee" to Nothing
		Get ComInsertItem of hoItems1 hRoot "HR Department" to h
		Get ComInsertItem of hoItems1 h "Recruiter - Jane Smith" to Nothing
		Get ComInsertItem of hoItems1 h "HR Assistant - Bob Green" to Nothing
		Set ComExpandItem of hoItems1 h to True
		Get ComInsertItem of hoItems1 h "Engineering" to h
		Get ComInsertItem of hoItems1 h "Software Team" to Nothing
		Get ComInsertItem of hoItems1 h "Lead Developer - Mark H." to h
		Get ComInsertItem of hoItems1 h "Frontend Dev - Emily R." to Nothing
		Get ComInsertItem of hoItems1 h "Backend Dev - Tom W." to Nothing
		Get ComInsertItem of hoItems1 hRoot "QA Team" to Nothing
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1252
Expandable bullet list

// Occurs when an anchor element is clicked.
Procedure OnComAnchorClick String   llAnchorID String   llOptions
	Forward Send OnComAnchorClick llAnchorID llOptions
	Variant i
	Get ComFormatABC "int(value)" llAnchorID Nothing Nothing to i
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComItemByIndex of hoItems i to i
		Variant exp
		Get ComExpandItem of hoItems i to exp
		Variant v
			Get ComFormatABC "not value" exp Nothing Nothing to v
		Set ComExpandItem of hoItems i to v
	Send Destroy to hoItems
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHTMLPicture "expand" to "gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYM7YIBXCRNbtiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyzZO13dGEAGYzWcqlWrFarlesA3AGcSAHAGShQwGQzGABUGEv2TAAFUGS26Uy2GwuH1wAKQ5HAAw+s4YwGIwGGWNa6awbST7DBTiLyJJEIJUHBPUqSGJuYYwCAES5pBiQfyEX4QKAFH6QSihJQ/GZlET1FhIcgGnUdoVHMmxajSIghlMKhsGiAAFggQ5dmKcRHEUEhbFAFQBgacABmAAJgAAcAJkAZgNjUcwDFecYcD8QoIDsGJjD6aYaGyHI7mqLRfgGfBcg+TYggkEhakQThtFsEpAE2Xh7goSIJiSHp6haKgPGOXx3j+c5hiKLpri6JAPHWYJREuFJkBCYxcFeYS7ikJQzG0ZIVGKMBYGsVwXDWVQHjqfpjAoYpyE4Z5vH2YoHDkZwzkkUxHC8pwCgifIHBCdk4GMLQVmcXJVhicxWi4IIUiKSQ1A8cBUj+eBEGCFQlFSIophiPRkFAWBLFALhwm+HhKjARpmgSGwNn4AIUCcZZUFEKoVmwywkiKJwiFcIQwEEgI"
	Set ComHTMLPicture "collapse" to "gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYM7YIBXCRNbtiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyzZO13dGEAGYzWcqlWrFarlesA3AGcSAHAGShQwGQzGABUGEv2TAAFUGS26Uy2GwuH1wAKQ5HAAw+s4YwGIwGGWNa6awbST7DBTiLZJJEIJUHBPdpSGKOAQxCAzGhIBKfbAvUBsSIPbiVMhLTxJPK3banJB0N5sA8VQRlmCRKjSCRaAIOgCiORISiWaI0DYLJPBYJBxB+LAqAMBRgAsIABjAAhYAOEB5kKDQ5kGZoaCaL5vH2KoEDCbpbDaWRrE8SopE+AA/DcMoZkgAgkhKERDlcdYEHAJRzg4IpyCAKRyl6HZLGONwMEMb5clwWB3n2CZki6FoWC4cwQCbGYukKwhiAwOp3HIEJFGCNBGDyLArE8R56n4RUnlOShHGcXJdgcKQlCOSRdEcLw8DmAoInyexvFeMRGG0DARmsbRZmsfRxleFZeHoD4eEKKRxGmPANgAC5xDAWpYHMW4uCGywkiKJwiFcIQwEEgI"
	Set ComHeaderVisible to False
	Set ComHasLines to OLEexNoLine
	Set ComHasButtons to OLEexNoButtons
	Set ComIndent to 12
	Set ComDefaultItemHeight to 24
	Set ComDrawGridLines to OLEexHLines
	Set ComGridLineStyle to OLEexGridLinesSolid
	Set ComGridLineColor to (RGB(204,204,204))
	Set ComShowFocusRect to False
	Set ComExpandOnDblClick to False
	Set ComExpandOnKeys to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellValueFormat to 1
			Set ComFormatColumn of hoColumn to "(len(parent(1 index ``)) ? (`<b><fgcolor gray>` + (1 pos ``) + `. ` + `</fgcolor></b>` + `<a ` + (0 index ``) + `><img>` + (%CC0 ? (not %CX0 ? `expand` : `collapse`) : `collapse`) + `:16</img></a>`) : ``) + ` ` + value"
			Variant voEditor
			Get ComEditor of hoColumn to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLEEditType
				Set ComOption of hoEditor OLEexEditorAdjustPos to "32D 4D -4D -4D"
			Send Destroy to hoEditor
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Variant hRoot
		Get ComAddItem of hoItems1 "ACME Corporation" to hRoot
		Set ComSelectableItem of hoItems1 hRoot to False
		Set ComExpandItem of hoItems1 hRoot to True
		Variant h
		Get ComInsertItem of hoItems1 hRoot "Management" to h
		Get ComInsertItem of hoItems1 h "CEO - Alice Brown" to Nothing
		Get ComInsertItem of hoItems1 h "COO - James Lee" to Nothing
		Get ComInsertItem of hoItems1 hRoot "HR Department" to h
		Get ComInsertItem of hoItems1 h "Recruiter - Jane Smith" to Nothing
		Get ComInsertItem of hoItems1 h "HR Assistant - Bob Green" to Nothing
		Set ComExpandItem of hoItems1 h to True
		Get ComInsertItem of hoItems1 h "Engineering" to h
		Get ComInsertItem of hoItems1 h "Software Team" to Nothing
		Get ComInsertItem of hoItems1 h "Lead Developer - Mark H." to h
		Get ComInsertItem of hoItems1 h "Frontend Dev - Emily R." to Nothing
		Get ComInsertItem of hoItems1 h "Backend Dev - Tom W." to Nothing
		Get ComInsertItem of hoItems1 hRoot "QA Team" to Nothing
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1251
Does grouping support multi-column sorting

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSingleSort to False
	Set ComHeaderVisible to False
	Set ComDrawGridLines to OLEexRowLines
	Set ComGridLineStyle to OLEexGridLinesSolid
	Set ComAllowGroupBy to True
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Prefix" to Nothing
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "Region" to Nothing
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Get ComAdd of hoColumns2 "City" to Nothing
	Send Destroy to hoColumns2
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Variant voColumn
		Get ComAdd of hoColumns3 "Sort" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComComputedField of hoColumn to "%1 + %2"
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns3
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "+33" to h
		Set ComCellValue of hoItems h 1 to "Corsica"
		Set ComCellValue of hoItems h 2 to "Bastia "
		Get ComAddItem of hoItems "+33" to h
		Set ComCellValue of hoItems h 1 to "Occitanie"
		Set ComCellValue of hoItems h 2 to "Toulouse "
		Get ComAddItem of hoItems "+33" to h
		Set ComCellValue of hoItems h 1 to "Corsica"
		Set ComCellValue of hoItems h 2 to "Ajaccio"
		Get ComAddItem of hoItems "+33" to h
		Set ComCellValue of hoItems h 1 to "Occitanie"
		Set ComCellValue of hoItems h 2 to "Carcassonne "
	Send Destroy to hoItems
	Set ComLayout to "multiplesort="C0:2";singlesort="C3:1";"
	Send ComEndUpdate
End_Procedure
1250
How can I vertically scroll the control
Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Variant v
Handle hoPrivDBEngine
	Get Create (RefClass(cComPrivDBEngine)) to hoPrivDBEngine // Import the 'Microsoft Office 15.0 Access database engine Object Library' library
		Variant voDatabase
		Get ComOpenDatabase of hoPrivDBEngine "C:\Program Files\Exontrol\ExGrid\Sample\Access\misc.accdb" Nothing Nothing Nothing to voDatabase
		Handle hoDatabase
		Get Create (RefClass(cComDatabase)) to hoDatabase
		Set pvComObject of hoDatabase to voDatabase
			Get ComOpenRecordset of hoDatabase "Orders" Nothing Nothing Nothing to v
		Send Destroy to hoDatabase
	Send Destroy to hoPrivDBEngine
	Set ComDataSource to v
	Set ComLayout to "Collapse="";VScroll=10"
	Send ComEndUpdate
End_Procedure
1249
Export the items as a two-dimensional array

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComPutItems (ComExport(Self,"array","all")) Nothing
	Send ComEndUpdate
End_Procedure
1248
Export only expanded items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","only(expanded)"))
End_Procedure
1247
Export only selectable, sortable leaf items that are neither locked nor dividers

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","only(leaf,sortable,selectable,!divider,!locked)"))
End_Procedure
1246
Export only non-divider items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","only(!divider)"))
End_Procedure
1245
Export only selectable items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","only(selectable)"))
End_Procedure
1244
Export only sortable, but not locked items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","only(sortable,!locked)"))
End_Procedure
1243
Export only checked items on specified column

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","only(checked[0])"))
End_Procedure
1242
Export only filtered, not locked or divider items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","only(visible,!locked,!divider)"))
End_Procedure
1241
Export only selected items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","only(selected)"))
End_Procedure
1240
Export only locked items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","only(locked)"))
End_Procedure
1239
Export the leaf items of the control, excluding parent or grouped items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","leaf"))
End_Procedure
1238
Export all checked and visible items (the first column in the columns list specifies the index of the column used to query the checkbox state)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","chk"))
End_Procedure
1237
Export the selected-items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","sel"))
End_Procedure
1236
Export the visible items, excluding child items of collapsed elements, non-visible items (such as those with a height of 0), and items that do not match the current filter

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","vis"))
End_Procedure
1235
Export all items, including the hidden or collapsed items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComScrollBySingleLine to True
	Set ComLinesAtRoot to OLEexGroupLinesOutside
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Desc" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Amount" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "sum(current,rec,%1)"
			Set ComFormatColumn of hoColumn1 to "currency(value)"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexTop to 1
		Variant h
		Get ComLockedItem of hoItems OLEexTop 0 to h
		Set ComCellValue of hoItems h 0 to "All"
		Set ComCellValue of hoItems h 1 to "sum(all,rec,%1)"
		Set ComCellValueFormat of hoItems h 1 to OLEexTotalField
		Variant r
		Get ComAddItem of hoItems "Root 1" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group A" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 1")) 1 to 1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 2")) 1 to 2
		Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 0 to 1
		Variant g2
		Get ComInsertItem of hoItems r "Group B" to g2
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 3")) 1 to 3
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g2,"Item 4")) 1 to 4
		Set ComExpandItem of hoItems g1 to True
		Set ComExpandItem of hoItems r to True
		Get ComAddItem of hoItems "divider" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComSortableItem of hoItems h to False
		Set ComItemHeight of hoItems h to 1
		Get ComAddItem of hoItems "Root 2" to r
		Get ComInsertItem of hoItems r "Group C" to g1
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 5")) 1 to 5
		Set ComCellValue of hoItems (ComInsertItem(hoItems,g1,"Item 6")) 1 to 6
		Set ComSelectItem of hoItems (ComItemByIndex(hoItems,2)) to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","all"))
End_Procedure
1234
Bolds only the expanded items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voConditionalFormats
	Get ComConditionalFormats to voConditionalFormats
	Handle hoConditionalFormats
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
	Set pvComObject of hoConditionalFormats to voConditionalFormats
		Variant voConditionalFormat
		Get ComAdd of hoConditionalFormats "%CX0" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBold of hoConditionalFormat to True
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Description" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root 1" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems (ComInsertItem(hoItems,h,"Child 2")) "Sub-Child 2" to Nothing
		Set ComCellState of hoItems (ComInsertItem(hoItems,h,"Child 3")) 0 to 1
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Root 2" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Get ComInsertItem of hoItems h "Child 3" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1233
Displays the root item's index and value/caption using expressions

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComAutoDrag to OLEexAutoDragPositionAny
	Set ComAllowCopyPaste to (OLEexAllowPaste + OLEexAllowCut + OLEexAllowCopy)
	Set ComSingleSel to False
	Set ComDrawGridLines to OLEexRowLines
	Set ComGridLineStyle to OLEexGridLinesSolid
	Set ComGridLineColor to (RGB(208,208,208))
	Variant voConditionalFormats
	Get ComConditionalFormats to voConditionalFormats
	Handle hoConditionalFormats
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
	Set pvComObject of hoConditionalFormats to voConditionalFormats
		Variant voConditionalFormat
		Get ComAdd of hoConditionalFormats "%CC0 and %CX0" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBold of hoConditionalFormat to True
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	Variant voConditionalFormats1
	Get ComConditionalFormats to voConditionalFormats1
	Handle hoConditionalFormats1
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats1
	Set pvComObject of hoConditionalFormats1 to voConditionalFormats1
		Variant voConditionalFormat1
		Get ComAdd of hoConditionalFormats1 "1" Nothing to voConditionalFormat1
		Handle hoConditionalFormat1
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat1
		Set pvComObject of hoConditionalFormat1 to voConditionalFormat1
			Set ComBold of hoConditionalFormat1 to True
			Set ComApplyTo of hoConditionalFormat1 to |CI$2
		Send Destroy to hoConditionalFormat1
	Send Destroy to hoConditionalFormats1
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Description" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComPartialCheck of hoColumn to True
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "Index" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "1 index ``"
			Set ComPosition of hoColumn1 to 0
			Set ComWidth of hoColumn1 to 16
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComAdd of hoColumns2 "Root-Index" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFormatColumn of hoColumn2 to "root(1 index ``)"
			Set ComPosition of hoColumn2 to 1
			Set ComWidth of hoColumn2 to 32
			Set ComDef of hoColumn2 OLEexCellBackColor to 15790320
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Variant voColumn3
		Get ComAdd of hoColumns3 "Root-Value" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComFormatColumn of hoColumn3 to "root(%0)"
			Set ComPosition of hoColumn3 to 2
			Set ComWidth of hoColumn3 to 32
			Set ComDef of hoColumn3 OLEexCellBackColor to 15790320
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root 1" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems (ComInsertItem(hoItems,h,"Child 2")) "Sub-Child 2" to Nothing
		Set ComCellState of hoItems (ComInsertItem(hoItems,h,"Child 3")) 0 to 1
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Root 2" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Get ComInsertItem of hoItems h "Child 3" to Nothing
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1232
Displays the parent item's index and caption/value using expressions

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComAutoDrag to OLEexAutoDragPositionAny
	Set ComAllowCopyPaste to (OLEexAllowPaste + OLEexAllowCut + OLEexAllowCopy)
	Set ComSingleSel to False
	Set ComDrawGridLines to OLEexRowLines
	Set ComGridLineStyle to OLEexGridLinesSolid
	Set ComGridLineColor to (RGB(208,208,208))
	Variant voConditionalFormats
	Get ComConditionalFormats to voConditionalFormats
	Handle hoConditionalFormats
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
	Set pvComObject of hoConditionalFormats to voConditionalFormats
		Variant voConditionalFormat
		Get ComAdd of hoConditionalFormats "%CC0 and %CX0" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBold of hoConditionalFormat to True
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	Variant voConditionalFormats1
	Get ComConditionalFormats to voConditionalFormats1
	Handle hoConditionalFormats1
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats1
	Set pvComObject of hoConditionalFormats1 to voConditionalFormats1
		Variant voConditionalFormat1
		Get ComAdd of hoConditionalFormats1 "1" Nothing to voConditionalFormat1
		Handle hoConditionalFormat1
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat1
		Set pvComObject of hoConditionalFormat1 to voConditionalFormat1
			Set ComBold of hoConditionalFormat1 to True
			Set ComApplyTo of hoConditionalFormat1 to |CI$2
		Send Destroy to hoConditionalFormat1
	Send Destroy to hoConditionalFormats1
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Description" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComPartialCheck of hoColumn to True
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "Index" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "1 index `I`"
			Set ComPosition of hoColumn1 to 0
			Set ComWidth of hoColumn1 to 16
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComAdd of hoColumns2 "Parent-Index" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFormatColumn of hoColumn2 to "parent(1 index `I`)"
			Set ComPosition of hoColumn2 to 1
			Set ComWidth of hoColumn2 to 32
			Set ComDef of hoColumn2 OLEexCellBackColor to 15790320
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Variant voColumn3
		Get ComAdd of hoColumns3 "Parent-Value" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComFormatColumn of hoColumn3 to "parent(%0)"
			Set ComPosition of hoColumn3 to 2
			Set ComWidth of hoColumn3 to 32
			Set ComDef of hoColumn3 OLEexCellBackColor to 15790320
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root 1" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems (ComInsertItem(hoItems,h,"Child 2")) "Sub-Child 2" to Nothing
		Set ComCellState of hoItems (ComInsertItem(hoItems,h,"Child 3")) 0 to 1
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Root 2" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Get ComInsertItem of hoItems h "Child 3" to Nothing
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1231
Copying and Pasting the Selection Programmatically
Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Tasks" to Nothing
	Send Destroy to hoColumns
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComSingleSel to False
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Tasks" to Nothing
		Set ComSelectItem of hoItems (ComAddItem(hoItems,"Task 1")) to True
		Set ComSelectItem of hoItems (ComAddItem(hoItems,"Task 2")) to True
	Send Destroy to hoItems
	Send ComIndentSelection False
	Send ComCopySelection
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Send ComUnselectAll of hoItems1
	Send Destroy to hoItems1
	Send ComPaste Nothing
	Send ComEndUpdate
End_Procedure
1230
Enable Copy, Cut and Paste Clipboard operations
Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Tasks" to Nothing
	Send Destroy to hoColumns
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComAllowCopyPaste to (OLEexAllowPaste + OLEexAllowCut + OLEexAllowCopy)
	Set ComSingleSel to False
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Tasks" to Nothing
		Set ComSelectItem of hoItems (ComAddItem(hoItems,"Task 1")) to True
		Set ComSelectItem of hoItems (ComAddItem(hoItems,"Task 2")) to True
	Send Destroy to hoItems
	Send ComIndentSelection False
	Send ComEndUpdate
End_Procedure
1229
Adjusts the hierarchy of selected items by changing their parent

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Tasks" to Nothing
	Send Destroy to hoColumns
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComSingleSel to False
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Tasks" to Nothing
		Set ComSelectItem of hoItems (ComAddItem(hoItems,"Task A")) to True
		Set ComSelectItem of hoItems (ComAddItem(hoItems,"Task B")) to True
	Send Destroy to hoItems
	Send ComIndentSelection False
	Send ComEndUpdate
End_Procedure
1228
Specify the size of the Columns panel

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderHeight to 24
	Set ComHeaderAppearance to OLEEtched
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "City" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Start" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "End" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComVisible of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Set ComColumnsFloatBarRect to ",,96"
	Set ComColumnsFloatBarVisible to (OLEexColumnsFloatBarVisibleAsChild + OLEexColumnsFloatBarVisibleIncludeCheckColumns)
	Send ComEndUpdate
End_Procedure
1227
Show a vertical line between pivot and Columns panel (EBN color)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABRsIQAAYAQGKIYBkAKBQAGaAoDDUNQxQwAAxwfBMKgBBCLIxhEYobgmGIXRpFICQTIcBhaGIZRiAKCRTDmHwyRCNIwCLD8QxtDqBY4gOZZXhal4cJTgMaBYi+Pw3DZHcbvBRkewzHQAKgnSjoDhEMg1CTVVYTDKdOSzDyEX7sIAACpOIZQVJVEY1VT8cyxIyEZimSypWqiYJ0Ty6cQwTAIgI" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground OLEexColumnsFloatBackColor to |CI$1000000
	Set ComHeaderHeight to 24
	Set ComHeaderAppearance to OLEEtched
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "City" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Start" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "End" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComVisible of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Set ComColumnsFloatBarVisible to (OLEexColumnsFloatBarVisibleAsChild + OLEexColumnsFloatBarVisibleIncludeCheckColumns)
	Send ComEndUpdate
End_Procedure
1226
Change the background of the Columns panel (EBN color)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABNoCg6AADACAxRDAMgBQKAAzQFAYahqGKGAAGOD4JhUAIIRZGMIjFDcEwxC6NIpAWLoJDCH4mSTHYxgJIMWwzDiBZgkCA4fiGEYnThCIxzTJ0aw1CKbYRAKCUKoUAJFsSnQAJIgOO4lULPMIhDDQKQTIKBahoehqIhaEQyDSJNb2DCIahhMSEbKtCooDhGFZUWzLVxTJJNawHJqJJDuOTpSjKH4+RjWFKUXR9b4BJSNAgqeCQTiSWZEVxRUS0XbGCyZLSQY7uAAMKgOVoDYzdGLwHTtOwrMa1QAsDSbKqWZ5uRpHcQ5aAGN5DPbMbqwOaqLznAaLQLtG4RTikVRPTDYaj437+OaHGyNbI6HTNPpTlWDJWjYXI8l8C4fg6GYAAEEISgGJJGHQOocgyIwYnqKhYAAIQTH2MYRjQJBRAmZptmEAYIjGU5dk8UgOFgBJUgCTQIBYBoBmCCAmAqApghgDJUDmYQFCCZoEk2OBUm+BZPCgZgagaYZIHYHoHmGWBcm8NwiEiFJVgmYgji4Kg6GKSI2C6C5jAiRgygwIojiycINkyeJmAYPJjkiTg+g+ZAIkCdIQkyWQWDuDxkBkJhKguZAzlIRQzGQc5ODWFJlEkVhWhWZYJFYTYTmUE4yF6F5mAmBhihiZhJhYX4WmQaAUnWGpOlmNhuhuZwJkYcocmcSY4naHZlkmKhrDuJ5JnYfofmgCgGgKIJnlmXJ2h4TQKBosRokoNoOiOaQKDSd4kmiChMncPBpgoZoaiaaZKHaHonmmE5iiKJRpDicomimaoKiaKoqmqSoeiIPgogqPotiyaxKlYPA+GuCqbBMa5KnaPovmwCwGj6LgP24RIhiyCwmkqMpsksNpKD6LQLBqOIzi0SxWlaHZtAOahPssM5Wi+IYtlsXpijKbZ5lyTo5mAE4UlqOpjHOQpEjubyanKPJvEuNgVj2TY1CCao+k2G52AyP5wAwBp9DYZZ1CCaxsAABAEICA" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground OLEexColumnsFloatBackColor to |CI$1000000
	Set ComHeaderHeight to 24
	Set ComHeaderAppearance to OLEEtched
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "City" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Start" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "End" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComVisible of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Set ComColumnsFloatBarVisible to (OLEexColumnsFloatBarVisibleAsChild + OLEexColumnsFloatBarVisibleIncludeCheckColumns)
	Send ComEndUpdate
End_Procedure
1225
Change the background of the Columns panel (solid color)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderHeight to 24
	Set ComHeaderAppearance to OLEEtched
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "City" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Start" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "End" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComVisible of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Set ComColumnsFloatBarVisible to (OLEexColumnsFloatBarVisibleAsChild + OLEexColumnsFloatBarVisibleIncludeCheckColumns)
	Set ComBackground OLEexColumnsFloatBackColor to (RGB(240,240,240))
	Send ComEndUpdate
End_Procedure
1224
Change the visual appearance of the Columns panel

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABNoCg6AADACAxRDAMgBQKAAzQFAYahqGKGAAGOD4JhUAIIRZGMIjFDcEwxC6NIpAWLoJDCH4mSTHYxgJIMWwzDiBZgkCA4fiGEYnThCIxzTJ0aw1CKbYRAKCUKoUAJFsSnQAJIgOO4lULPMIhDDQKQTIKBahoehqIhaEQyDSJNb2DCIahhMSEbKtCooDhGFZUWzLVxTJJNawHJqJJDuOTpSjKH4+RjWFKUXR9b4BJSNAgqeCQTiSWZEVxRUS0XbGCyZLSQY7uAAMKgOVoDYzdGLwHTtOwrMa1QAsDSbKqWZ5uRpHcQ5aAGN5DPbMbqwOaqLznAaLQLtG4RTikVRPTDYaj437+OaHGyNbI6HTNPpTlWDJWjYXI8l8C4fg6GYAAEEISgGJJGHQOocgyIwYnqKhYAAIQTH2MYRjQJBRAmZptmEAYIjGU5dk8UgOFgBJUgCTQIBYBoBmCCAmAqApghgDJUDmYQFCCZoEk2OBUm+BZPCgZgagaYZIHYHoHmGWBcm8NwiEiFJVgmYgji4Kg6GKSI2C6C5jAiRgygwIojiycINkyeJmAYPJjkiTg+g+ZAIkCdIQkyWQWDuDxkBkJhKguZAzlIRQzGQc5ODWFJlEkVhWhWZYJFYTYTmUE4yF6F5mAmBhihiZhJhYX4WmQaAUnWGpOlmNhuhuZwJkYcocmcSY4naHZlkmKhrDuJ5JnYfofmgCgGgKIJnlmXJ2h4TQKBosRokoNoOiOaQKDSd4kmiChMncPBpgoZoaiaaZKHaHonmmE5iiKJRpDicomimaoKiaKoqmqSoeiIPgogqPotiyaxKlYPA+GuCqbBMa5KnaPovmwCwGj6LgP24RIhiyCwmkqMpsksNpKD6LQLBqOIzi0SxWlaHZtAOahPssM5Wi+IYtlsXpijKbZ5lyTo5mAE4UlqOpjHOQpEjubyanKPJvEuNgVj2TY1CCao+k2G52AyP5wAwBp9DYZZ1CCaxsAABAEICA" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground OLEexColumnsFloatAppearance to |CI$1000000
	Set ComBackground OLEexColumnsFloatCaptionBackColor to (RGB(246,246,246))
	Set ComBackColorHeader to |CI$1000000
	Set ComHeaderHeight to 24
	Set ComHeaderAppearance to OLEEtched
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "City" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Start" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "End" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComVisible of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Set ComDescription OLEexColumnsFloatBar to "Show/Hide"
	Set ComColumnsFloatBarVisible to OLEexColumnsFloatBarVisibleIncludeCheckColumns
	Send ComEndUpdate
End_Procedure
1223
Defines the symbol used to indicate repeated captions, providing a clear visual cue for identical entries (ditto mark)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComDrawGridLines to OLEexRowLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Country" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComShowIdem of hoColumn to "<fgcolor gray>〃"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Spain" to Nothing
		Get ComAddItem of hoItems "Spain" to Nothing
		Get ComAddItem of hoItems "Spain" to Nothing
		Get ComAddItem of hoItems "Spain" to Nothing
		Get ComAddItem of hoItems "Germany" to Nothing
		Get ComAddItem of hoItems "Germany" to Nothing
		Get ComAddItem of hoItems "Germany" to Nothing
		Get ComAddItem of hoItems "Germany" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1222
Defines the symbol used to indicate repeated captions, providing a clear visual cue for identical entries (space)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComDrawGridLines to OLEexRowLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Country" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComShowIdem of hoColumn to " "
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Spain" to Nothing
		Get ComAddItem of hoItems "Spain" to Nothing
		Get ComAddItem of hoItems "Spain" to Nothing
		Get ComAddItem of hoItems "Spain" to Nothing
		Get ComAddItem of hoItems "Germany" to Nothing
		Get ComAddItem of hoItems "Germany" to Nothing
		Get ComAddItem of hoItems "Germany" to Nothing
		Get ComAddItem of hoItems "Germany" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1221
Displays a glitch funnel for drop-down filter buttons (empty or active)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Set ComRenderType of hoAppearance to -1
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABa8IQAAYAQGKIYBkAKBQAGaAoDDUNQxQwAAxwfBMKgBBCLIxhEYobgmGIXRpFMbxCKQahLEiTIhGUYJHgmK4tRiAUgxVDkBxrECZYqjcBZOiwLQ2TxDM7DNKUCBnIoABhGOaYDh+IQNQjUFKwTRFGRxK4EIRKAyTDLQdRyGSMMbjdQpBCbMiMRqhESKRq2UwYRYCFS1NalaztO6BUAvK67YrWez/YBfF+SfwGeqDYReWAPfgWERnQrGMLxbD8KwZAKTRjkGJ4XhuB41TbQMqufL9ByXHKSSDpGjaXjeO5VVjYNAvS69UzXNq3bhtQAOXCMEwCgI=" to Nothing
		Get ComAdd of hoAppearance 2 "CP:1 -2 0 0 0" to Nothing
	Send Destroy to hoAppearance
	Set ComDrawGridLines to OLEexAllLines
	Set ComGridLineStyle to OLEexGridLinesGeometric
	Set ComShowFocusRect to False
	Set ComBackground OLEexHeaderFilterBarButton to |CI$2000000
	Set ComBackground OLEexHeaderFilterBarActive to |CI$2000001
	Set ComHeaderAppearance to OLEEtched
	Set ComBackColorHeader to (RGB(255,255,255))
	Set ComHeaderHeight to 24
	Set ComHeaderVisible to True
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "1st col" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComDisplayFilterPattern of hoColumn to False
			Set ComFilter of hoColumn to "Item B"
			Set ComFilterType of hoColumn to OLEexFilter
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "2nd col" to Nothing
	Send Destroy to hoColumns1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item A" to Nothing
		Get ComAddItem of hoItems "Item B" to Nothing
		Get ComAddItem of hoItems "Item C" to Nothing
	Send Destroy to hoItems
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1220
How can I store any extra data associated with a cell
// Occurs when user clicks on the cell's button.
Procedure OnComButtonClick HITEM   llItem Integer   llColIndex Variant   llKey
	Forward Send OnComButtonClick llItem llColIndex llKey
	Variant v
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComCellData of hoItems llItem llColIndex to v
	Send Destroy to hoItems
	Showln v
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Def" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Variant voEditor
			Get ComEditor of hoColumn to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLEButtonType
				Set ComLocked of hoEditor to True
			Send Destroy to hoEditor
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellData of hoItems1 (ComAddItem(hoItems1,"Cell 1")) 0 to "your extra data for cell 1"
		Set ComCellData of hoItems1 (ComAddItem(hoItems1,"Cell 2")) 0 to "your extra data for cell 2"
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1219
How can I replace or add an icon at runtime

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Get ComReplaceIcon "gAAAABgYACEHgUJFEEAAWhUJCEJEEJggEhMCYEXjUbjkJQECj8gj8hAEjkshYEpk8kf8ClsulsvAExmcvf83js5nU7nkCeEcn8boMaocXosCB9Hn09pkzcEuoL/fE+OkYB0gB9YhIHrddgVcr9aktZADAD8+P8CgIA==" Nothing to Nothing
	Get ComReplaceIcon "C:\images\favicon.ico" 0 to Nothing
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Items" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellValueFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item <img>1</img>" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1218
How can I save the changes, such as column's width, order

// Occurs when the user presses and then releases the left mouse button over the grid control.
Procedure OnComClick 
	Forward Send OnComClick 
	Set ComLayout to "Select="0";SingleSort="C0:2";Columns=1"
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item 1" to Nothing
		Get ComAddItem of hoItems "Item 2" to Nothing
		Get ComAddItem of hoItems "Item 3" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1217
How can I add totals to groups without having to go through the AddGroupItem grid function

Procedure OnCreate
	Forward Send OnCreate
	Send ComFreezeEvents True
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voConditionalFormats
	Get ComConditionalFormats to voConditionalFormats
	Handle hoConditionalFormats
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
	Set pvComObject of hoConditionalFormats to voConditionalFormats
		Variant voConditionalFormat
		Get ComAdd of hoConditionalFormats "%CT1" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComForeColor of hoConditionalFormat to (RGB(128,128,128))
			Set ComApplyTo of hoConditionalFormat to |CI$1
		Send Destroy to hoConditionalFormat
		Variant voConditionalFormat1
		Get ComAdd of hoConditionalFormats "%CT2" Nothing to voConditionalFormat1
		Handle hoConditionalFormat1
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat1
		Set pvComObject of hoConditionalFormat1 to voConditionalFormat1
			Set ComForeColor of hoConditionalFormat1 to (RGB(128,128,128))
			Set ComApplyTo of hoConditionalFormat1 to |CI$2
		Send Destroy to hoConditionalFormat1
		Variant voConditionalFormat2
		Get ComAdd of hoConditionalFormats "%CT3" Nothing to voConditionalFormat2
		Handle hoConditionalFormat2
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat2
		Set pvComObject of hoConditionalFormat2 to voConditionalFormat2
			Set ComForeColor of hoConditionalFormat2 to (RGB(128,128,128))
			Set ComApplyTo of hoConditionalFormat2 to |CI$3
		Send Destroy to hoConditionalFormat2
	Send Destroy to hoConditionalFormats
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Description" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Qty" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Variant voEditor
			Get ComEditor of hoColumn to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLESpinType
			Send Destroy to hoEditor
			Set ComDef of hoColumn OLEexTotalColumn to "sum(current,rec,%1)"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Price" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "avg(current,rec,%2)"
			Variant voEditor1
			Get ComEditor of hoColumn1 to voEditor1
			Handle hoEditor1
			Get Create (RefClass(cComEditor)) to hoEditor1
			Set pvComObject of hoEditor1 to voEditor1
				Set ComEditType of hoEditor1 to OLESpinType
			Send Destroy to hoEditor1
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Amount" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComComputedField of hoColumn2 to "%1 * %2"
			Set ComDef of hoColumn2 OLEexTotalColumn to "sum(current,rec,%3)"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant r
		Get ComAddItem of hoItems "Root" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group 1" to g1
		Variant h
		Get ComInsertItem of hoItems g1 "Item 1" to h
		Set ComCellValue of hoItems h 1 to 1
		Set ComCellValue of hoItems h 2 to 10
		Get ComInsertItem of hoItems g1 "Item 2" to h
		Set ComCellValue of hoItems h 1 to 2
		Set ComCellValue of hoItems h 2 to 11
		Variant g2
		Get ComInsertItem of hoItems r "Group 2" to g2
		Get ComInsertItem of hoItems g2 "Item 1" to h
		Set ComCellValue of hoItems h 1 to 3
		Set ComCellValue of hoItems h 2 to 12
		Get ComInsertItem of hoItems g2 "Item 2" to h
		Set ComCellValue of hoItems h 1 to 4
		Set ComCellValue of hoItems h 2 to 13
		Set ComExpandItem of hoItems 0 to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Send ComFreezeEvents False
End_Procedure
1216
How can I configure the filters in the text columns to search by content

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComFilterBarPromptVisible to OLEexFilterBarPromptVisible
	Set ComHeaderAppearance to OLENone2
	Set ComFilterBarPromptType to OLEexFilterPromptContainsAll
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Names" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Mantel" to Nothing
		Get ComAddItem of hoItems "Mechanik" to Nothing
		Get ComAddItem of hoItems "Motor" to Nothing
		Get ComAddItem of hoItems "Murks" to Nothing
		Get ComAddItem of hoItems "Märchen" to Nothing
		Get ComAddItem of hoItems "Möhren" to Nothing
		Get ComAddItem of hoItems "Mühle" to Nothing
		Get ComAddItem of hoItems "Sérigraphie" to Nothing
	Send Destroy to hoItems
	Set ComFilterBarPromptPattern to "a"
	Send ComEndUpdate
End_Procedure
1215
How can I display the control's captions in Spanish

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComFilterBarPromptVisible to OLEexFilterBarPromptVisible
	Set ComHeaderAppearance to OLENone2
	Set ComDescription OLEexFilterBarAll to "(todo) "
	Set ComDescription OLEexFilterBarFilterForCaption to "filtrar por..."
	Set ComFilterBarPrompt to "<i><fgcolor=808080>iniciar filtro...</fgcolor></i>"
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Names" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterType of hoColumn to OLEexPattern
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Mantel" to Nothing
		Get ComAddItem of hoItems "Mechanik" to Nothing
		Get ComAddItem of hoItems "Motor" to Nothing
		Get ComAddItem of hoItems "Murks" to Nothing
		Get ComAddItem of hoItems "Märchen" to Nothing
		Get ComAddItem of hoItems "Möhren" to Nothing
		Get ComAddItem of hoItems "Mühle" to Nothing
		Get ComAddItem of hoItems "Sérigraphie" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1214
How can I zoom in the control

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant s1
	Move 16 to s1
	Variant s2
	Get ComFormatABC "2 * value" s1 Nothing Nothing to s2
	Set ComImageSize to s2
	Set ComDefaultItemHeight to s2
	Set ComHeaderHeight to s2
	Set ComSortBarHeight to s2
	Set ComIndent to s2
	Variant voStdFont
	Get ComFont to voStdFont
	Handle hoStdFont
	Get Create (RefClass(cComStdFont)) to hoStdFont
	Set pvComObject of hoStdFont to voStdFont
		Set ComSize of hoStdFont to s1
	Send Destroy to hoStdFont
	Variant voStdFont1
	Get ComFilterBarFont to voStdFont1
	Handle hoStdFont1
	Get Create (RefClass(cComStdFont)) to hoStdFont1
	Set pvComObject of hoStdFont1 to voStdFont1
		Set ComSize of hoStdFont1 to s1
	Send Destroy to hoStdFont1
	Variant voStdFont2
	Get ComToolTipFont to voStdFont2
	Handle hoStdFont2
	Get Create (RefClass(cComStdFont)) to hoStdFont2
	Set pvComObject of hoStdFont2 to voStdFont2
		Set ComSize of hoStdFont2 to s1
	Send Destroy to hoStdFont2
	Set ComFilterBarPromptVisible to OLEexFilterBarPromptVisible
	Set ComHeaderAppearance to OLENone2
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Names" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterType of hoColumn to OLEexPattern
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Mantel" to Nothing
		Get ComAddItem of hoItems "Mechanik" to Nothing
		Get ComAddItem of hoItems "Motor" to Nothing
		Get ComAddItem of hoItems "Murks" to Nothing
		Get ComAddItem of hoItems "Märchen" to Nothing
		Get ComAddItem of hoItems "Möhren" to Nothing
		Get ComAddItem of hoItems "Mühle" to Nothing
		Get ComAddItem of hoItems "Sérigraphie" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1213
Can I set a filter that automatically adds a * before and after the word, so the user can just search for 'cat' and it becomes '*cat*' automatically

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Items" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComDisplayFilterPattern of hoColumn to True
			Set ComDef of hoColumn OLEexFilterPatternTemplate to "*<%filter%>*"
			Set ComFilterType of hoColumn to OLEexPattern
			Set ComFilter of hoColumn to "1"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root 1" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Root 2" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
	Send Destroy to hoItems
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1212
The fine dotted lines in the control appear much thicker than the standard ones we've been using. How can we fix this

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComDrawGridLines to OLEexAllLines
	Set ComGridLineStyle to OLEexGridLinesGeometric
	Set ComColumnAutoResize to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column 1" to Nothing
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "Column 2" to Nothing
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Get ComAdd of hoColumns2 "Column 3" to Nothing
	Send Destroy to hoColumns2
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Get ComAdd of hoColumns3 "Column 4" to Nothing
	Send Destroy to hoColumns3
	Send ComEndUpdate
End_Procedure
1211
Load data as a tree using a parent-id relationship

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComDrawGridLines to OLEexVLines
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant rs
	Get Comcreateobject "ADODB.Recordset" to rs
		Send ComOpen "Select * FROM Employees WHERE 1=0" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\Access\misc.mdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComItem of hoColumns 0 to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 128
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Get Comcreateobject "ADODB.Recordset" to rs
		Send ComOpen "Employees" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\Access\misc.mdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Send ComPutItems rs ";0;17"
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComExpandItem of hoItems 0 to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1210
Is there a way to change the contents of the drop down editor based on a value in another column

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellEditorVisible of hoItems llItem 0 to OLEexEditorVisible
	Send Destroy to hoItems
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellEditorVisible of hoItems1 llItem 1 to OLEexEditorVisible
	Send Destroy to hoItems1
End_Procedure

// Occurs when the edit operation starts.
Procedure OnComEditOpen 
	Forward Send OnComEditOpen 
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Variant v
		Get ComCellValue of hoItems2 (ComFocusItem(hoItems2)) 0 to v
		Variant c
		Get ComCellCaption of hoItems2 (ComFocusItem(hoItems2)) 0 to c
	Send Destroy to hoItems2
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComItem of hoColumns 1 to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Variant voEditor
			Get ComEditor of hoColumn to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Send ComClearItems of hoEditor
				Send ComAddItem of hoEditor v c Nothing
			Send Destroy to hoEditor
		Send Destroy to hoColumn
	Send Destroy to hoColumns
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComGridLineStyle to OLEexGridLinesGeometric
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "DropDownList" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Variant voEditor1
			Get ComEditor of hoColumn1 to voEditor1
			Handle hoEditor1
			Get Create (RefClass(cComEditor)) to hoEditor1
			Set pvComObject of hoEditor1 to voEditor1
				Set ComEditType of hoEditor1 to OLEDropDownListType
				Send ComAddItem of hoEditor1 1 "First" Nothing
				Send ComAddItem of hoEditor1 2 "Second" Nothing
				Send ComAddItem of hoEditor1 3 "Third" Nothing
			Send Destroy to hoEditor1
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Set ComDrawGridLines to OLEexAllLines
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComAdd of hoColumns2 "DropDownList-Related" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Variant voEditor2
			Get ComEditor of hoColumn2 to voEditor2
			Handle hoEditor2
			Get Create (RefClass(cComEditor)) to hoEditor2
			Set pvComObject of hoEditor2 to voEditor2
				Set ComEditType of hoEditor2 to OLEDropDownListType
			Send Destroy to hoEditor2
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Variant voItems3
	Get ComItems to voItems3
	Handle hoItems3
	Get Create (RefClass(cComItems)) to hoItems3
	Set pvComObject of hoItems3 to voItems3
		Set ComCellValue of hoItems3 (ComAddItem(hoItems3,1)) 1 to -1
		Set ComCellValue of hoItems3 (ComAddItem(hoItems3,2)) 1 to -1
		Set ComCellValue of hoItems3 (ComAddItem(hoItems3,3)) 1 to -1
		Set ComLockedItemCount of hoItems3 OLEexBottom to 1
		Variant h
		Get ComLockedItem of hoItems3 OLEexBottom 0 to h
		Set ComItemDivider of hoItems3 h to 0
		Set ComItemDividerLineAlignment of hoItems3 h to OLEDividerTop
		Set ComCellEditorVisible of hoItems3 h 0 to False
		Set ComCellSingleLine of hoItems3 h 0 to False
		Set ComCellValueFormat of hoItems3 h 0 to OLEexHTML
		Set ComCellValue of hoItems3 h 0 to "The drop down editor in the second column is filled during the <b>EditOpen event</b>, and the values are based on the selection on the first column."
	Send Destroy to hoItems3
	Send ComEndUpdate
End_Procedure
1209
Highlight the editable fields

// Occurs when the user changes the cell's content.
Procedure OnComChange HITEM   llItem Integer   llColIndex Variant   llNewValue
	Forward Send OnComChange llItem llColIndex llNewValue
	Send ComRefresh
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComFreezeEvents True
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voConditionalFormats
	Get ComConditionalFormats to voConditionalFormats
	Handle hoConditionalFormats
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
	Set pvComObject of hoConditionalFormats to voConditionalFormats
		Variant voConditionalFormat
		Get ComAdd of hoConditionalFormats "%CE1" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBold of hoConditionalFormat to True
			Set ComBackColor of hoConditionalFormat to (RGB(245,245,245))
			Set ComApplyTo of hoConditionalFormat to |CI$1
		Send Destroy to hoConditionalFormat
		Variant voConditionalFormat1
		Get ComAdd of hoConditionalFormats "%CE2" Nothing to voConditionalFormat1
		Handle hoConditionalFormat1
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat1
		Set pvComObject of hoConditionalFormat1 to voConditionalFormat1
			Set ComBold of hoConditionalFormat1 to True
			Set ComBackColor of hoConditionalFormat1 to (RGB(245,245,245))
			Set ComApplyTo of hoConditionalFormat1 to |CI$2
		Send Destroy to hoConditionalFormat1
		Variant voConditionalFormat2
		Get ComAdd of hoConditionalFormats "%CE3" Nothing to voConditionalFormat2
		Handle hoConditionalFormat2
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat2
		Set pvComObject of hoConditionalFormat2 to voConditionalFormat2
			Set ComBold of hoConditionalFormat2 to True
			Set ComBackColor of hoConditionalFormat2 to (RGB(245,245,245))
			Set ComApplyTo of hoConditionalFormat2 to |CI$3
		Send Destroy to hoConditionalFormat2
	Send Destroy to hoConditionalFormats
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Description" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Qty" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Variant voEditor
			Get ComEditor of hoColumn to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLESpinType
			Send Destroy to hoEditor
			Set ComDef of hoColumn OLEexTotalColumn to "sum(current,rec,%1)"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Price" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "avg(current,rec,%2)"
			Variant voEditor1
			Get ComEditor of hoColumn1 to voEditor1
			Handle hoEditor1
			Get Create (RefClass(cComEditor)) to hoEditor1
			Set pvComObject of hoEditor1 to voEditor1
				Set ComEditType of hoEditor1 to OLESpinType
			Send Destroy to hoEditor1
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Amount" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComComputedField of hoColumn2 to "%1 * %2"
			Set ComDef of hoColumn2 OLEexTotalColumn to "sum(current,rec,%3)"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant r
		Get ComAddItem of hoItems "Root" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group 1" to g1
		Variant h
		Get ComInsertItem of hoItems g1 "Item 1" to h
		Set ComCellValue of hoItems h 1 to 1
		Set ComCellValue of hoItems h 2 to 10
		Get ComInsertItem of hoItems g1 "Item 2" to h
		Set ComCellValue of hoItems h 1 to 2
		Set ComCellValue of hoItems h 2 to 11
		Variant g2
		Get ComInsertItem of hoItems r "Group 2" to g2
		Get ComInsertItem of hoItems g2 "Item 1" to h
		Set ComCellValue of hoItems h 1 to 3
		Set ComCellValue of hoItems h 2 to 12
		Get ComInsertItem of hoItems g2 "Item 2" to h
		Set ComCellValue of hoItems h 1 to 4
		Set ComCellValue of hoItems h 2 to 13
		Set ComExpandItem of hoItems 0 to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Send ComFreezeEvents False
End_Procedure
1208
Highlight the total fields

// Occurs when the user changes the cell's content.
Procedure OnComChange HITEM   llItem Integer   llColIndex Variant   llNewValue
	Forward Send OnComChange llItem llColIndex llNewValue
	Send ComRefresh
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComFreezeEvents True
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voConditionalFormats
	Get ComConditionalFormats to voConditionalFormats
	Handle hoConditionalFormats
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
	Set pvComObject of hoConditionalFormats to voConditionalFormats
		Variant voConditionalFormat
		Get ComAdd of hoConditionalFormats "%CT1" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComForeColor of hoConditionalFormat to (RGB(128,128,128))
			Set ComApplyTo of hoConditionalFormat to |CI$1
		Send Destroy to hoConditionalFormat
		Variant voConditionalFormat1
		Get ComAdd of hoConditionalFormats "%CT2" Nothing to voConditionalFormat1
		Handle hoConditionalFormat1
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat1
		Set pvComObject of hoConditionalFormat1 to voConditionalFormat1
			Set ComForeColor of hoConditionalFormat1 to (RGB(128,128,128))
			Set ComApplyTo of hoConditionalFormat1 to |CI$2
		Send Destroy to hoConditionalFormat1
		Variant voConditionalFormat2
		Get ComAdd of hoConditionalFormats "%CT3" Nothing to voConditionalFormat2
		Handle hoConditionalFormat2
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat2
		Set pvComObject of hoConditionalFormat2 to voConditionalFormat2
			Set ComForeColor of hoConditionalFormat2 to (RGB(128,128,128))
			Set ComApplyTo of hoConditionalFormat2 to |CI$3
		Send Destroy to hoConditionalFormat2
	Send Destroy to hoConditionalFormats
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Description" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Qty" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Variant voEditor
			Get ComEditor of hoColumn to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLESpinType
			Send Destroy to hoEditor
			Set ComDef of hoColumn OLEexTotalColumn to "sum(current,rec,%1)"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Price" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "avg(current,rec,%2)"
			Variant voEditor1
			Get ComEditor of hoColumn1 to voEditor1
			Handle hoEditor1
			Get Create (RefClass(cComEditor)) to hoEditor1
			Set pvComObject of hoEditor1 to voEditor1
				Set ComEditType of hoEditor1 to OLESpinType
			Send Destroy to hoEditor1
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Amount" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComComputedField of hoColumn2 to "%1 * %2"
			Set ComDef of hoColumn2 OLEexTotalColumn to "sum(current,rec,%3)"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant r
		Get ComAddItem of hoItems "Root" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group 1" to g1
		Variant h
		Get ComInsertItem of hoItems g1 "Item 1" to h
		Set ComCellValue of hoItems h 1 to 1
		Set ComCellValue of hoItems h 2 to 10
		Get ComInsertItem of hoItems g1 "Item 2" to h
		Set ComCellValue of hoItems h 1 to 2
		Set ComCellValue of hoItems h 2 to 11
		Variant g2
		Get ComInsertItem of hoItems r "Group 2" to g2
		Get ComInsertItem of hoItems g2 "Item 1" to h
		Set ComCellValue of hoItems h 1 to 3
		Set ComCellValue of hoItems h 2 to 12
		Get ComInsertItem of hoItems g2 "Item 2" to h
		Set ComCellValue of hoItems h 1 to 4
		Set ComCellValue of hoItems h 2 to 13
		Set ComExpandItem of hoItems 0 to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Send ComFreezeEvents False
End_Procedure
1207
Highlight the leaf items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voConditionalFormats
	Get ComConditionalFormats to voConditionalFormats
	Handle hoConditionalFormats
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
	Set pvComObject of hoConditionalFormats to voConditionalFormats
		Variant voConditionalFormat
		Get ComAdd of hoConditionalFormats "%CC0=0" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComForeColor of hoConditionalFormat to (RGB(128,128,128))
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 16
		Send Destroy to hoColumn
		Get ComAdd of hoColumns "Desc" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant hR
		Get ComAddItem of hoItems "Root" to hR
		Set ComCellValue of hoItems hR 1 to "The root directory /"
		Set ComExpandItem of hoItems hR to True
		Variant h
		Get ComInsertItem of hoItems hR "Home" to h
		Set ComCellValue of hoItems h 1 to "The home directory with user directories Alice and Bob"
		Get ComInsertItem of hoItems h "Alice" to Nothing
		Get ComInsertItem of hoItems h "Bob" to Nothing
		Set ComExpandItem of hoItems h to True
		Get ComInsertItem of hoItems hR "Etc" to h
		Set ComCellValue of hoItems h 1 to "The etc directory with one configuration file"
		Get ComInsertItem of hoItems h "nginx.conf" to h
		Set ComCellValue of hoItems (ComInsertItem(hoItems,hR,"Var")) 1 to "The var directory"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1206
Highlight the parent items

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voConditionalFormats
	Get ComConditionalFormats to voConditionalFormats
	Handle hoConditionalFormats
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
	Set pvComObject of hoConditionalFormats to voConditionalFormats
		Variant voConditionalFormat
		Get ComAdd of hoConditionalFormats "%CC0" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComForeColor of hoConditionalFormat to (RGB(255,0,0))
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 16
		Send Destroy to hoColumn
		Get ComAdd of hoColumns "Desc" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant hR
		Get ComAddItem of hoItems "Root" to hR
		Set ComCellValue of hoItems hR 1 to "The root directory /"
		Set ComExpandItem of hoItems hR to True
		Variant h
		Get ComInsertItem of hoItems hR "Home" to h
		Set ComCellValue of hoItems h 1 to "The home directory with user directories Alice and Bob"
		Get ComInsertItem of hoItems h "Alice" to Nothing
		Get ComInsertItem of hoItems h "Bob" to Nothing
		Set ComExpandItem of hoItems h to True
		Get ComInsertItem of hoItems hR "Etc" to h
		Set ComCellValue of hoItems h 1 to "The etc directory with one configuration file"
		Get ComInsertItem of hoItems h "nginx.conf" to h
		Set ComCellValue of hoItems (ComInsertItem(hoItems,hR,"Var")) 1 to "The var directory"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1205
Highlight the item being expanded or collapsed

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voConditionalFormats
	Get ComConditionalFormats to voConditionalFormats
	Handle hoConditionalFormats
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
	Set pvComObject of hoConditionalFormats to voConditionalFormats
		Variant voConditionalFormat
		Get ComAdd of hoConditionalFormats "%CX0" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBold of hoConditionalFormat to True
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 16
		Send Destroy to hoColumn
		Get ComAdd of hoColumns "Desc" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant hR
		Get ComAddItem of hoItems "Root" to hR
		Set ComCellValue of hoItems hR 1 to "The root directory /"
		Set ComExpandItem of hoItems hR to True
		Variant h
		Get ComInsertItem of hoItems hR "Home" to h
		Set ComCellValue of hoItems h 1 to "The home directory with user directories Alice and Bob"
		Get ComInsertItem of hoItems h "Alice" to Nothing
		Get ComInsertItem of hoItems h "Bob" to Nothing
		Set ComExpandItem of hoItems h to True
		Get ComInsertItem of hoItems hR "Etc" to h
		Set ComCellValue of hoItems h 1 to "The etc directory with one configuration file"
		Get ComInsertItem of hoItems h "nginx.conf" to h
		Set ComCellValue of hoItems (ComInsertItem(hoItems,hR,"Var")) 1 to "The var directory"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1204
I am using exTotalColumn. Is there an option to exclude specific cells to display the total

// Occurs when the user changes the cell's content.
Procedure OnComChange HITEM   llItem Integer   llColIndex Variant   llNewValue
	Forward Send OnComChange llItem llColIndex llNewValue
	Send ComRefresh
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComFreezeEvents True
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Description" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Qty" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Variant voEditor
			Get ComEditor of hoColumn to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLESpinType
			Send Destroy to hoEditor
			Set ComDef of hoColumn OLEexTotalColumn to "sum(current,rec,%1)"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Price" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "avg(current,rec,%2)"
			Variant voEditor1
			Get ComEditor of hoColumn1 to voEditor1
			Handle hoEditor1
			Get Create (RefClass(cComEditor)) to hoEditor1
			Set pvComObject of hoEditor1 to voEditor1
				Set ComEditType of hoEditor1 to OLESpinType
			Send Destroy to hoEditor1
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Amount" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComComputedField of hoColumn2 to "%1 * %2"
			Set ComDef of hoColumn2 OLEexTotalColumn to "sum(current,rec,%3)"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant r
		Get ComAddItem of hoItems "Root" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group 1" to g1
		Set ComFormatCell of hoItems g1 2 to "`<average missing>`"
		Set ComCellEditorVisible of hoItems g1 2 to False
		Set ComCellBold of hoItems g1 2 to True
		Set ComCellForeColor of hoItems g1 2 to (RGB(255,0,0))
		Variant h
		Get ComInsertItem of hoItems g1 "Item 1" to h
		Set ComCellValue of hoItems h 1 to 1
		Set ComCellValue of hoItems h 2 to 10
		Get ComInsertItem of hoItems g1 "Item 2" to h
		Set ComCellValue of hoItems h 1 to 2
		Set ComCellValue of hoItems h 2 to 11
		Variant g2
		Get ComInsertItem of hoItems r "Group 2" to g2
		Get ComInsertItem of hoItems g2 "Item 1" to h
		Set ComCellValue of hoItems h 1 to 3
		Set ComCellValue of hoItems h 2 to 12
		Get ComInsertItem of hoItems g2 "Item 2" to h
		Set ComCellValue of hoItems h 1 to 4
		Set ComCellValue of hoItems h 2 to 13
		Set ComExpandItem of hoItems 0 to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Send ComFreezeEvents False
End_Procedure
1203
How can I add a total column

// Occurs when the user changes the cell's content.
Procedure OnComChange HITEM   llItem Integer   llColIndex Variant   llNewValue
	Forward Send OnComChange llItem llColIndex llNewValue
	Send ComRefresh
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComFreezeEvents True
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComHeaderHeight to 24
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Description" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Qty" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Variant voEditor
			Get ComEditor of hoColumn to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLESpinType
			Send Destroy to hoEditor
			Set ComDef of hoColumn OLEexTotalColumn to "sum(current,rec,%1)"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Price" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexTotalColumn to "avg(current,rec,%2)"
			Variant voEditor1
			Get ComEditor of hoColumn1 to voEditor1
			Handle hoEditor1
			Get Create (RefClass(cComEditor)) to hoEditor1
			Set pvComObject of hoEditor1 to voEditor1
				Set ComEditType of hoEditor1 to OLESpinType
			Send Destroy to hoEditor1
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Amount" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComComputedField of hoColumn2 to "%1 * %2"
			Set ComDef of hoColumn2 OLEexTotalColumn to "sum(current,rec,%3)"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant r
		Get ComAddItem of hoItems "Root" to r
		Variant g1
		Get ComInsertItem of hoItems r "Group 1" to g1
		Variant h
		Get ComInsertItem of hoItems g1 "Item 1" to h
		Set ComCellValue of hoItems h 1 to 1
		Set ComCellValue of hoItems h 2 to 10
		Get ComInsertItem of hoItems g1 "Item 2" to h
		Set ComCellValue of hoItems h 1 to 2
		Set ComCellValue of hoItems h 2 to 11
		Variant g2
		Get ComInsertItem of hoItems r "Group 2" to g2
		Get ComInsertItem of hoItems g2 "Item 1" to h
		Set ComCellValue of hoItems h 1 to 3
		Set ComCellValue of hoItems h 2 to 12
		Get ComInsertItem of hoItems g2 "Item 2" to h
		Set ComCellValue of hoItems h 1 to 4
		Set ComCellValue of hoItems h 2 to 13
		Set ComExpandItem of hoItems 0 to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Send ComFreezeEvents False
End_Procedure
1202
Is it possible to disable sizing(size) the column
Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComDrawGridLines to OLEexVLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "32px" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComAllowSizing of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "Rest" to Nothing
	Send Destroy to hoColumns1
	Set ComColumnAutoResize to True
	Send ComEndUpdate
End_Procedure
1201
How can I add two columns of 25% and the third of 50%

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComDrawGridLines to OLEexVLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "25%" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 25
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "25%" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComWidth of hoColumn1 to 25
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComAdd of hoColumns2 "50%" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComWidth of hoColumn2 to 50
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Set ComColumnAutoResize to True
	Send ComEndUpdate
End_Procedure