1122:
How can I define a column of button type

// Occurs when user clicks on the cell's button.
Procedure OnComButtonClick HITEM   llItem Integer   llColIndex Variant   llKey
	Forward Send OnComButtonClick llItem llColIndex llKey
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Showln (ComCellValue(hoItems,llItem,llColIndex))
	Send Destroy to hoItems
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 "Button" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasButton to True
			Set ComDef of hoColumn OLEexCellButtonAutoWidth to False
			Set ComFormatColumn of hoColumn to "``"
			Set ComAllowSizing of hoColumn to False
			Set ComWidth of hoColumn to 48
		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 "Second" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "` Item ` + 1 index ``"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Get ComAddItem of hoItems1 "Button 1" to Nothing
		Get ComAddItem of hoItems1 "Button 2" to Nothing
		Get ComAddItem of hoItems1 "Button 3 " to Nothing
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1121:
Is it possible to configure different colour/icon when there is a active filter

// Occurs when filter was changed.
Procedure OnComFilterChange 
	Forward Send OnComFilterChange 
	Variant vA
	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
			Get ComFilterType of hoColumn to vA
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Set ComBackground OLEexHeaderFilterBarButton to (ComFormatABC(Self,"value = 0 ? 0x1000001 : 0x10000FF ",vA,Nothing,Nothing))
End_Procedure

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 -16777216
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABXUIQAAYAQGKIcBiAKBQAGYBIJDEMgzDDAUBjKKocQTC4AIQjCK4JDKHYJRpHEZyCA8EhqGASRAFUQBYiWE4oSpLABQaK0ZwIGyRIrkGQgQgmPYDSDNU4zVIEEglBI0TDNczhNDENgtGYaJqHIYpZBcM40TKkEZoSIITZcRrOEBiRL1S0RBhGcRUHZlWzdN64LhuK47UrWdD/XhdVzXRbjfz1Oq+bxve48Br7A5yYThdr4LhOFQ3RjIL4xbIcUwGe6VZhjOLZXjmO49T69HTtOCYBEBA" to Nothing
	Send Destroy to hoAppearance
	Set ComDrawGridLines to OLEexAllLines
	Set ComShowFocusRect to False
	Set ComBackground OLEexHeaderFilterBarButton to |CI$1000001
	Set ComBackground OLEexCursorHoverColumn to -1
	Set ComHeaderAppearance to OLEEtched
	Set ComBackColorHeader to (RGB(255,255,255))
	Set ComHeaderVisible to True
	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 "Filter" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComAllowSort of hoColumn1 to False
			Set ComAllowDragging of hoColumn1 to False
			Set ComFilterList of hoColumn1 to OLEexShowCheckBox
		Send Destroy to hoColumn1
	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
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFilter of hoColumn2 to "Item B"
			Set ComFilterType of hoColumn2 to OLEexFilter
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1120:
How can I display the type of the value the column display

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	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 "Values" 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 "value + ` <off 4><fgcolor=808080>type(` + type(%0) + `)`"
		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 Nothing to Nothing
		Get ComAddItem of hoItems -1 to Nothing
		Get ComAddItem of hoItems "string" to Nothing
		Get ComAddItem of hoItems "1/1/2001" to Nothing
		Get ComAddItem of hoItems 2 to Nothing
		Get ComAddItem of hoItems True to Nothing
		Get ComAddItem of hoItems 12.34 to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1119:
I want to create a conditional format for a column, verifying that the value of the cell is numeric, how can I do

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComDrawGridLines to OLEexRowLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Values" to Nothing
	Send Destroy to hoColumns
	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 "type(%0) in (2,3,4,5,18,19,20,21)" 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))
			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 "type(%0) = 11" Nothing to voConditionalFormat1
		Handle hoConditionalFormat1
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat1
		Set pvComObject of hoConditionalFormat1 to voConditionalFormat1
			Set ComForeColor of hoConditionalFormat1 to (RGB(0,255,0))
		Send Destroy to hoConditionalFormat1
	Send Destroy to hoConditionalFormats1
	Variant voConditionalFormats2
	Get ComConditionalFormats to voConditionalFormats2
	Handle hoConditionalFormats2
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats2
	Set pvComObject of hoConditionalFormats2 to voConditionalFormats2
		Variant voConditionalFormat2
		Get ComAdd of hoConditionalFormats2 "type(%0) = 7" Nothing to voConditionalFormat2
		Handle hoConditionalFormat2
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat2
		Set pvComObject of hoConditionalFormat2 to voConditionalFormat2
			Set ComForeColor of hoConditionalFormat2 to (RGB(0,0,255))
		Send Destroy to hoConditionalFormat2
	Send Destroy to hoConditionalFormats2
	Variant voConditionalFormats3
	Get ComConditionalFormats to voConditionalFormats3
	Handle hoConditionalFormats3
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats3
	Set pvComObject of hoConditionalFormats3 to voConditionalFormats3
		Variant voConditionalFormat3
		Get ComAdd of hoConditionalFormats3 "type(%0) in (0,1)" Nothing to voConditionalFormat3
		Handle hoConditionalFormat3
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat3
		Set pvComObject of hoConditionalFormat3 to voConditionalFormat3
			Set ComBackColor of hoConditionalFormat3 to (RGB(240,240,240))
		Send Destroy to hoConditionalFormat3
	Send Destroy to hoConditionalFormats3
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems Nothing to Nothing
		Get ComAddItem of hoItems -1 to Nothing
		Get ComAddItem of hoItems "string" to Nothing
		Get ComAddItem of hoItems "1/1/2001" to Nothing
		Get ComAddItem of hoItems 2 to Nothing
		Get ComAddItem of hoItems True to Nothing
		Get ComAddItem of hoItems 12.34 to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1118:
How can I assign a computed value on a different column based on other columns

// Occurs when the user changes the cell's content.
Procedure OnComChange HITEM   llItem Integer   llColIndex Variant   llNewValue
	Forward Send OnComChange llItem llColIndex llNewValue
	Send ComFreezeEvents True
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant v
			Get ComFormatABC "int(255*sin(value/2))" llNewValue Nothing Nothing to v
		Set ComCellValue of hoItems llItem 1 to v
		Variant v1
			Get ComFormatABC "int(255*cos(value/2))" llNewValue Nothing Nothing to v1
		Set ComCellValue of hoItems llItem 2 to v1
	Send Destroy to hoItems
	Send ComFreezeEvents False
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSelBackMode to OLEexTransparent
	Set ComHeaderAppearance to OLEEtched
	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 "Value" 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 ComWidth of hoColumn to 64
			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
		Variant voColumn1
		Get ComAdd of hoColumns1 "Assign A" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexCellBackColor to 16448250
		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 "Assign B" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComDef of hoColumn2 OLEexCellBackColor to 16448250
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Variant v2
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Get ComAdd of hoColumns3 "Computed" to v2
	Send Destroy to hoColumns3
	Variant var_Column
	Move v2 to var_Column
		Set ComDef OLEexCellBackColor to 16448250
		Set ComComputedField to "%1 + %2"
		Set ComFormatColumn to "value format ``"
		Set ComAlignment to OLERightAlignment
		Set ComHeaderAlignment to (ComAlignment(Self))
	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 "%3 >= 0" 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 voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Get ComAddItem of hoItems1 1989 to Nothing
		Get ComAddItem of hoItems1 2001 to Nothing
		Get ComAddItem of hoItems1 2017 to Nothing
		Get ComAddItem of hoItems1 2018 to Nothing
		Get ComAddItem of hoItems1 2019 to Nothing
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1117:
How can I get computed a value on a different column

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	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 "Year" 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 ComWidth of hoColumn to 64
			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
		Variant voColumn1
		Get ComAdd of hoColumns1 "Easter" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "date(dateS('3/1/' + %0)  + ((1:=(((255 - 11 * (%0 mod 19)) - 21) mod 30) + 21) + (=:1 > 48 ? -1 : 0) + 6 - ((%0 + int(%0 / 4)) + =:1 + (=:1 > 48 ? -1 : 0) + 1) mod 7))"
		Send Destroy to hoColumn1
	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 1989 to Nothing
		Get ComAddItem of hoItems 2001 to Nothing
		Get ComAddItem of hoItems 2017 to Nothing
		Get ComAddItem of hoItems 2018 to Nothing
		Get ComAddItem of hoItems 2019 to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1116:
How can I prevent applying ConditionalFormats on a specified cell, for instance I am displaying a Total field, and I will like to have formatted in a different way (method 2)

// 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 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 "(%0 >= 0)" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComExpression of hoConditionalFormat to "(0=type(%CD0)) and (%0 >= 0)"
			Set ComBold of hoConditionalFormat to True
			Set ComForeColor of hoConditionalFormat to (RGB(255,0,0))
			Showln "ConditionalFormat.Valid" (ComValid(hoConditionalFormat))
		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
		Variant voColumn
		Get ComAdd of hoColumns "Numbers" 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 ComNumeric of hoEditor to OLEexInteger
				Set ComEditType of hoEditor to OLESpinType
			Send Destroy to hoEditor
			Set ComSortType of hoColumn to OLESortNumeric
		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 100 to Nothing
		Get ComAddItem of hoItems -25 to Nothing
		Get ComAddItem of hoItems 31 to Nothing
		Get ComAddItem of hoItems -48 to Nothing
	Send Destroy to hoItems
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Variant h
		Get ComAddItem of hoItems1 "sum(all,dir,dbl(%0))" to h
		Set ComSelectableItem of hoItems1 h to False
		Set ComSortableItem of hoItems1 h to False
		Set ComItemBackColor of hoItems1 h to (RGB(240,240,240))
		Set ComCellData of hoItems1 h 0 to "total"
		Set ComCellValueFormat of hoItems1 h 0 to (OLEexTotalField + OLEexHTML)
		Set ComFormatCell of hoItems1 h 0 to "'Total: <b><fgcolor=0000FF>'+(value format ``)"
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1115:
How can I prevent applying ConditionalFormats on a specified cell, for instance I am displaying a Total field, and I will like to have formatted in a different way (method 1)

// 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 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 "%0 >= 0" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBold of hoConditionalFormat to True
			Set ComForeColor of hoConditionalFormat to (RGB(255,0,0))
			Set ComApplyTo of hoConditionalFormat to OLEexFormatToColumns
		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
		Variant voColumn
		Get ComAdd of hoColumns "Numbers" 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 ComNumeric of hoEditor to OLEexInteger
				Set ComEditType of hoEditor to OLESpinType
			Send Destroy to hoEditor
			Set ComSortType of hoColumn to OLESortNumeric
		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 "Total" 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 hoColumns1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEexBottom to 1
		Variant h
		Get ComLockedItem of hoItems OLEexBottom 0 to h
		Set ComItemDivider of hoItems h to 1
		Set ComItemDividerLine of hoItems h to OLEEmptyLine
		Set ComItemBackColor of hoItems h to (RGB(240,240,240))
		Set ComCellValue of hoItems h 1 to "sum(all,dir,dbl(%0))"
		Set ComCellValueFormat of hoItems h 1 to (OLEexTotalField + OLEexHTML)
		Set ComCellHAlignment of hoItems h 1 to OLERightAlignment
		Set ComFormatCell of hoItems h 1 to "'Total: <b><fgcolor=0000FF>'+(value format ``)"
	Send Destroy to hoItems
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Get ComAddItem of hoItems1 100 to Nothing
		Get ComAddItem of hoItems1 -25 to Nothing
		Get ComAddItem of hoItems1 31 to Nothing
		Get ComAddItem of hoItems1 -48 to Nothing
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1114:
ADODB Requery sample

// Occurs when user clicks on the cell's button.
Procedure OnComButtonClick HITEM   llItem Integer   llColIndex Variant   llKey
	Forward Send OnComButtonClick llItem llColIndex llKey
	Variant cmd
	Get Comcreateobject "ADODB.Command" to cmd
		Variant v
			Variant voRecordset
			Get ComDataSource to voRecordset
			Handle hoRecordset
			Get Create (RefClass(cComRecordset)) to hoRecordset
			Set pvComObject of hoRecordset to voRecordset
				Get ComActiveConnection of hoRecordset to v
			Send Destroy to hoRecordset
		Set ComActiveConnection to v
		Set ComCommandText to "INSERT INTO Orders (EmployeeID) VALUES(12345)"
		Set ComCommandType to OLEadCmdText
		Get ComExecute Nothing Nothing Nothing to Nothing
	Variant voRecordset1
	Get ComDataSource to voRecordset1
	Handle hoRecordset1
	Get Create (RefClass(cComRecordset)) to hoRecordset1
	Set pvComObject of hoRecordset1 to voRecordset1
		Send ComRequery of hoRecordset1 Nothing
	Send Destroy to hoRecordset1
End_Procedure

// Fired when an internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComColumnAutoResize to False
	Variant rs
	Get Comcreateobject "ADODB.Recordset" to rs
		Send ComOpen "Select * From Orders" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.accdb" OLEadOpenKeyset OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	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 "%1=12345" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBackColor of hoConditionalFormat to (RGB(240,240,240))
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	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 ComItemDivider of hoItems h to 0
		Set ComCellHasButton of hoItems h 0 to True
		Set ComCellValue of hoItems h 0 to "Requery (add a new record, using ADODB.Command)"
		Set ComCellHAlignment of hoItems h 0 to OLECenterAlignment
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1113:
I am using DetectAddNew property, but no new items is added when AddNew is performed

// Occurs when user clicks on the cell's button.
Procedure OnComButtonClick HITEM   llItem Integer   llColIndex Variant   llKey
	Forward Send OnComButtonClick llItem llColIndex llKey
	Variant voRecordset
	Get ComDataSource to voRecordset
	Handle hoRecordset
	Get Create (RefClass(cComRecordset)) to hoRecordset
	Set pvComObject of hoRecordset to voRecordset
		Send ComAddNew of hoRecordset "EmployeeID" 123
		Send ComUpdate of hoRecordset Nothing Nothing
	Send Destroy to hoRecordset
End_Procedure

// Fired when an internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComColumnAutoResize to False
	Variant rs
	Get Comcreateobject "ADODB.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.accdb" OLEadOpenKeyset OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	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 ComItemDivider of hoItems h to 0
		Set ComCellHasButton of hoItems h 0 to True
		Set ComCellValue of hoItems h 0 to "AddNew"
		Set ComCellHAlignment of hoItems h 0 to OLECenterAlignment
	Send Destroy to hoItems
	Set ComDetectAddNew to True
	Set ComDetectDelete to True
	Send ComEndUpdate
End_Procedure
1112:
I am skinning the control's header-bar, but the background of the header-bar is shown on each item in the filter-bar drop down panel. What can I do

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 "gBFLBCJwBAEHhEJAAEhABFgDg6AADACAxRDgMQBQKAAzQFAYcBqGqGAAGQZxYgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHLUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQGhsCYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU8lORLUi+M4zSBPcZVTRtGShPDBKTjMKKYgkG4lVpRNa0PC1GTzQ6mazkKQLRADDIDVbAeL3LiMBy9LyLLItQALByua5mWhbcZyBCOPgBTrRb5zO58FjuTK7YLjMB7NrUNYtFaUMy2OpOCADIaecTNcaWLxPF2MY1HWYxVj2Jw3DuRJonKYBgggSRAlIYw6B0ThGFgPAkFUDAhBMfZRiGNAkFECZnm4YQdneJwqnsSQrGAAhWAIJBJBIQgFCQIBiEIAglgqYo0i4V4MEgRI9gSToYFSb4Fk6Y4+BmBZhFOJgTC8TBogQAArgqco4muCZOkOMJtgmYpIjYKg7GKE4uCUK4AAKKg2DwI4DiCZw5k6KJ2D6D4OHiag4DwIxiiQAArAqMosnEPBPAOIhOg+DozjIJ4PGSY4iEwPAkhKLhHUUSQsnKFCnkYU9MjORhcCsAAIACLQ8iaSJ6FKC5jJoaobA8KYoACCRKnmMJzhuDpZnSboMCKGJ4nMPIPDmYAACwKIDk6CoLCeU40m6I5oliMoKDyaICokLIpgoThviOKJoGYf4KmUKhMjMLJLCAAojCyaYoiYGoGmqM46CkOwPEoKonAACxKlSdItmiWBeBeDgrioNo3D0KxSlAAAtgsUpYnUPRPEoco8hCa+T40SxbBRj5tEsHJ1i6JhbGYS4ug8awelQLZAAKZI5C4DxrhYQ9ehmUppWiA48nAPRuFKYpiAAC47laZQ9iuKZSgOPotkuFI7C6C4gACPJAm8eQOhOQZoikDp3kCS5AACPoEk8fBGnqQgpDOSppD2TxjlyPZD6CfwekQTx5lKP5ImseZTCAL5MAMAAAkoTADmMLpIjISp+HSS4PgyMAADBzAHDSIoPCOUpWjObIKE8NJOHKIwPEaTprBsHpdjWLB9AieQ+DQYwQAAMR1EOZxWi+bx7HcWQ8msfRYnnDhQACRwxgwc5rGaMZPE0ZxqjWNZtgyRwAAyTZEnuXJzEyAx2kQcxNkye5cEy3cYAcANrGAIH4OAhx3gNGGPAfgIR8jBA4McBMARViHH4HQOYmxuCpF2MsecEQVBvGQCcIQvA6i2CAAIARAQ=" to Nothing
		Get ComAdd of hoAppearance 2 "gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzQFAYcBqGqGAAGQZxYgmFgAQhFcZQSKUOQTDKMIziYBYJhEMwwDhEIwjHCEEhsGIbJAGQBJCjWGodQLOEgzNC0IxNFCQILhEZJADKII8TTOU5UPRESwTE4cKBmKhQCo2NpKR7VUTxCKQahLLivoCjBT8EzHMqtIzrCA6MpaP4pQjKcqwHJ8YyHEi0ZrjazKaj6T5AXDUcaWbbNVx3PK3aioOpLZrqOZZYzYFoABTuJzPMSyIhxXD8cweaZvSpLExVYK9BY3PbKMgxC77QgTIpDaQMNS6PjtF43PAALLFUaNYzoOKzABMHATBIXAYJCwIIR5G7ID4BbQcCQAHL9DBaEEIAEEISgGhMGZQmocgymmIRQkIEQ2BcGgbEIRQci8XaMBqTRVgSAZHG+S5pnOep+D6f4vjec5zn0fpfmgBgAH6TRoBYBoAh+eAmAiAgPFgNArgOQpIESdoEmCOAOAqBYfFGAgaEaBgYHYFYFmIB5UiGCJUgKCgmgeYoHk4BgCmKRQiCwApgHgYgyH8B54lQU4NkMeJlBoDgjkiXBTg0R54iYIR+koeQVBoKpkgkChKhEJBkF4SFEjkDgJhFQoeEmDJlBeehUhWJQJGIXoICWOQ6FeFIlhkfhlDsSJpiQVoamaSY2G6G5nAmRhpCOH5pkwVYdmeCZmHqHpnkmdhzhmaAIFiax8AABAEICA==" to Nothing
	Send Destroy to hoAppearance
	Set ComBackColorHeader to |CI$1000000
	Set ComForeColorHeader to (RGB(128,128,128))
	Set ComBackground OLEexHeaderFilterBarButton to |CI$2000000
	Set ComBackground OLEexBackColorFilter to (RGB(255,255,255))
	Set ComBackground OLEexForeColorFilter to (RGB(0,0,1))
	Set ComBackground OLEexSelBackColorFilter to |CI$1ff8000
	Set ComBackground OLEexSelForeColorFilter to (RGB(240,240,240))
	Set ComBackground OLEexCursorHoverColumn to -1
	Set ComHeaderHeight to 24
	Set ComBackColorLevelHeader to (ComBackColor(Self))
	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 "Filter" 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 ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
			Set ComDef of hoColumn OLEexHeaderPaddingLeft to 2
			Set ComDef of hoColumn OLEexHeaderPaddingRight to 2
		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 "A" to Nothing
		Get ComAddItem of hoItems "B" to Nothing
		Get ComAddItem of hoItems "C" to Nothing
		Get ComAddItem of hoItems "D" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1111:
How can I change the font for entire column (method 3)

// 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
		Variant v
			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 voColumn1
					Get ComItem of hoColumn 1 to voColumn1
					Handle hoColumn1
					Get Create (RefClass(cComColumn)) to hoColumn1
					Set pvComObject of hoColumn1 to voColumn1
						Get ComData of hoColumn1 to v
					Send Destroy to hoColumn1
				Send Destroy to hoColumn
			Send Destroy to hoColumns
		Set ComCellFont of hoItems llItem 1 to v
		Set ComCellBold of hoItems llItem 1 to True
		Set ComCellForeColor of hoItems llItem 1 to (RGB(255,0,0))
	Send Destroy to hoItems
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderHeight to 24
	Set ComHeaderAppearance to OLEEtched
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "C1" 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
		Variant voColumn2
		Get ComAdd of hoColumns2 "C2" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComHTMLCaption of hoColumn2 to "<b><font Tahoma;14>C2"
			Variant f
			Get Comcreateobject of hoColumn2 "StdFont" to f
				Set ComName of hoColumn2 to "Tahoma"
				Set ComSize of hoColumn2 to 11
			Send Destroy to hoColumn2
			Set ComData of hoColumns2 to f
		Send Destroy to hoColumns2
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellValue of hoItems1 (ComAddItem(hoItems1,10)) 1 to 11
		Set ComCellValue of hoItems1 (ComAddItem(hoItems1,12)) 1 to 13
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1110:
How can I change the font for entire column (method 2)

// 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
		Variant f
		Get Comcreateobject of hoItems "StdFont" to f
			Set ComName of hoItems to "Tahoma"
			Set ComSize of hoItems to 11
		Send Destroy to hoItems
		Set ComCellFont llItem 1 to f
		Set ComCellBold llItem 1 to True
		Set ComCellForeColor llItem 1 to (RGB(255,0,0))
End_Procedure

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 "C1" 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
		Variant voColumn
		Get ComAdd of hoColumns1 "C2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComHTMLCaption of hoColumn to "<b><font Tahoma;14>C2"
		Send Destroy to hoColumn
	Send Destroy to hoColumns1
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellValue of hoItems1 (ComAddItem(hoItems1,10)) 1 to 11
		Set ComCellValue of hoItems1 (ComAddItem(hoItems1,12)) 1 to 13
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1109:
How can I change the font for entire column (method 1)

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 "1" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBold of hoConditionalFormat to True
			Set ComForeColor of hoConditionalFormat to (RGB(255,0,0))
			Variant f
			Get Comcreateobject of hoConditionalFormat "StdFont" to f
				Set ComName of hoConditionalFormat to "Tahoma"
				Set ComSize of hoConditionalFormat to 11
			Send Destroy to hoConditionalFormat
			Set ComFont of hoConditionalFormats to f
			Set ComApplyTo of hoConditionalFormats to |CI$1
		Send Destroy to hoConditionalFormats
	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 "C1" 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
		Variant voColumn
		Get ComAdd of hoColumns1 "C2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComHTMLCaption of hoColumn to "<b><font Tahoma;14>C2"
		Send Destroy to hoColumn
	Send Destroy to hoColumns1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellValue of hoItems (ComAddItem(hoItems,10)) 1 to 11
		Set ComCellValue of hoItems (ComAddItem(hoItems,12)) 1 to 13
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1108:
I am using ExComboBox as an user editor, how can I display a different column

// Fired the user editor is about to be opened.
Procedure OnComUserEditorClose Variant   llObject HITEM   llItem Integer   llColIndex
	Forward Send OnComUserEditorClose llObject llItem llColIndex
	// Items.CellValue(Item,ColIndex) = Object.Select("OrderID")
End_Procedure

// Occurs when an user editor fires an event.
Procedure OnComUserEditorOleEvent Variant   llObject Variant   llEv Boolean   llCloseEditor HITEM   llItem Integer   llColIndex
	Forward Send OnComUserEditorOleEvent llObject llEv llCloseEditor llItem llColIndex
	Showln llEv
End_Procedure

// Occurs when an user editor is about to be opened.
Procedure OnComUserEditorOpen Variant   llObject HITEM   llItem Integer   llColIndex
	Forward Send OnComUserEditorOpen llObject llItem llColIndex
	// Object.Select("OrderID") = Me.Items.CellValue(Item,ColIndex)
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSortOnClick to OLEexNoSort
	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 "Exontrol.ComboBox" 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 OLEUserEditorType
				Send ComUserEditor of hoEditor "Exontrol.ComboBox" ""
				Variant voComboBox
				Get ComUserEditorObject of hoEditor to voComboBox
				Handle hoComboBox
				Get Create (RefClass(cComComboBox)) to hoComboBox
				Set pvComObject of hoComboBox to voComboBox
					Send ComBeginUpdate of hoComboBox
					Set ComStyle of hoComboBox to OLEDropDownList
					Set ComColumnAutoResize of hoComboBox to False
					Variant rs
					Get Comcreateobject of hoComboBox "ADOR.Recordset" to rs
						Send ComOpen of hoComboBox "Orders" "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB" OLEadOpenStatic OLEadLockOptimistic Nothing
					Send Destroy to hoComboBox
					Set ComDataSource of hoEditor to rs
					Set ComAlignment of hoEditor to OLELeftAlignment
					Set ComIntegralHeight of hoEditor to True
					Set ComMinHeightList of hoEditor to 128
					Set ComMinWidthList of hoEditor to 648
					Set ComHeaderHeight of hoEditor to 36
					Set ComAllowSizeGrip of hoEditor to True
					Set ComSingleEdit of hoEditor to True
					Set ComLabelColumnIndex of hoEditor to 7
					Set ComSearchColumnIndex of hoEditor to 0
					Variant voColumns1
					Get ComColumns of hoEditor to voColumns1
					Handle hoColumns1
					Get Create (RefClass(cComColumns)) to hoColumns1
					Set pvComObject of hoColumns1 to voColumns1
						Variant voColumn1
						Get ComItem of hoColumns1 0 to voColumn1
						Handle hoColumn1
						Get Create (RefClass(cComColumn)) to hoColumn1
						Set pvComObject of hoColumn1 to voColumn1
							Set ComHeaderBold of hoColumn1 to True
							Set ComHTMLCaption of hoColumn1 to "OrderID<br><fgcolor=808080>(search)"
						Send Destroy to hoColumn1
					Send Destroy to hoColumns1
					Variant voColumns2
					Get ComColumns of hoEditor to voColumns2
					Handle hoColumns2
					Get Create (RefClass(cComColumns)) to hoColumns2
					Set pvComObject of hoColumns2 to voColumns2
						Variant voColumn2
						Get ComItem of hoColumns2 7 to voColumn2
						Handle hoColumn2
						Get Create (RefClass(cComColumn)) to hoColumn2
						Set pvComObject of hoColumn2 to voColumn2
							Set ComHeaderBold of hoColumn2 to True
							Set ComHTMLCaption of hoColumn2 to "ShipName<br><fgcolor=808080>(display)"
							Set ComWidth of hoColumn2 to 128
						Send Destroy to hoColumn2
					Send Destroy to hoColumns2
					Set ComUseTabKey of hoEditor to False
					Send ComEndUpdate of hoEditor
				Send Destroy to hoEditor
			Send Destroy to hoColumn
		Send Destroy to hoColumns
	Set ComDrawGridLines to OLEexRowLines
	Set ComTreeColumnIndex to -1
	Set ComDefaultItemHeight to 21
	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 "shows always the drop-down editor" to h
		Set ComCellHAlignment of hoItems h 0 to OLECenterAlignment
		Set ComItemDivider of hoItems h to 0
		Set ComItemDividerLineAlignment of hoItems h to OLEDividerCenter
		Set ComSelectableItem of hoItems h to False
		Set ComEnableItem of hoItems h to False
		Set ComCellEditorVisible of hoItems (ComAddItem(hoItems,10248)) 0 to OLEexEditorVisible
		Set ComCellEditorVisible of hoItems (ComAddItem(hoItems,10249)) 0 to OLEexEditorVisible
		Set ComCellEditorVisible of hoItems (ComAddItem(hoItems,10250)) 0 to OLEexEditorVisible
		Get ComAddItem of hoItems "shows the drop-down editor when user clicks it" to h
		Set ComCellHAlignment of hoItems h 0 to OLECenterAlignment
		Set ComItemDivider of hoItems h to 0
		Set ComItemDividerLineAlignment of hoItems h to OLEDividerCenter
		Set ComSelectableItem of hoItems h to False
		Set ComEnableItem of hoItems h to False
		Get ComAddItem of hoItems 10248 to Nothing
		Get ComAddItem of hoItems 10249 to Nothing
		Get ComAddItem of hoItems 10250 to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1107:
The ItemHeight property is not working (method 2)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Set ComScrollBySingleLine 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 "Column" 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
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellSingleLine of hoItems (ComAddItem(hoItems,"This is a bit of text that should break the line")) 0 to OLEexCaptionWordWrap
		Variant h
		Get ComAddItem of hoItems "" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComItemDividerLineAlignment of hoItems h to OLEDividerCenter
		Set ComItemHeight of hoItems h to 3
		Set ComCellSingleLine of hoItems (ComAddItem(hoItems,"This is a bit of text that should break the line")) 0 to OLEexCaptionWordWrap
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1106:
The ItemHeight property is not working (method 1)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Set ComScrollBySingleLine 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 "Column" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 128
			Set ComDef of hoColumn OLEexCellSingleLine to 0
		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 "This is a bit of text that should break the line" to Nothing
		Variant h
		Get ComAddItem of hoItems "" to h
		Set ComItemDivider of hoItems h to 0
		Set ComSelectableItem of hoItems h to False
		Set ComItemDividerLineAlignment of hoItems h to OLEDividerCenter
		Set ComItemMinHeight of hoItems h to 3
		Set ComItemMaxHeight of hoItems h to 3
		Get ComAddItem of hoItems "This is a bit of text that should break the line" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1105:
How do I add a total field locked at the bottom of the control

// Occurs after a new Group Item has been inserted to Items collection.
Procedure OnComAddGroupItem HITEM   llItem
	Forward Send OnComAddGroupItem llItem
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComItemDividerLine of hoItems llItem to OLEEmptyLine
		Set ComFormatCell of hoItems llItem (ComGroupItem(hoItems,llItem)) to "value + ` Min: <b>` + %13 + `</b> Max: <b>` + %14 + `</b> Sum: <b>` + %15 + `</b>, of Freight column`"
		Set ComCellValue of hoItems llItem "Min" to "min(current,all,dbl(%6))"
		Set ComCellValueFormat of hoItems llItem "Min" to OLEexTotalField
		Set ComCellValue of hoItems llItem "Max" to "max(current,all,dbl(%6))"
		Set ComCellValueFormat of hoItems llItem "Max" to OLEexTotalField
		Set ComCellValue of hoItems llItem "Sum" to "sum(current,all,dbl(%6))"
		Set ComCellValueFormat of hoItems llItem "Sum" to OLEexTotalField
		Set ComItemBackColor of hoItems llItem to (RGB(240,240,240))
	Send Destroy to hoItems
End_Procedure

// 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 ComBeginUpdate
	Set ComHasLines to OLEexNoLine
	Set ComDescription OLEexColumnsFloatBar to "Show/Hide"
	Set ComColumnsFloatBarSortOrder to OLESortAscending
	Set ComColumnsFloatBarVisible to OLEexColumnsFloatBarVisibleIncludeCheckColumns
	Set ComColumnAutoResize to False
	Set ComBackColorSortBar to (RGB(240,240,240))
	Variant rs
	Get Comcreateobject "ADOR.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Set ComSingleSort to False
	Set ComSortBarVisible to True
	Set ComAllowGroupBy to True
	Set ComSortBarCaption to "Drag a <b>column</b> header here to group by that column."
	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 "Min" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
			Set ComAllowDragging of hoColumn to False
		Send Destroy to hoColumn
		Variant var_Column
		Get ComAdd of hoColumns "Max" to var_Column
			Set ComVisible of hoColumns to False
			Set ComVisible of hoColumns to False
			Set ComAllowDragging of hoColumns to False
		Send Destroy to hoColumns
		Variant var_Column1
		Get ComAdd "Sum" to var_Column1
			Set ComVisible to False
			Set ComVisible to False
			Set ComAllowDragging to False
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComItem of hoColumns1 "Freight" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "currency(value)"
			Set ComDef of hoColumn1 OLEexCellBackColor to 12895487
			Set ComDef of hoColumn1 OLEexHeaderBackColor to (ComDef(hoColumn1,OLEexCellBackColor))
			Set ComHeaderBold of hoColumn1 to True
			Set ComAllowGroupBy of hoColumn1 to False
			Set ComAlignment of hoColumn1 to OLERightAlignment
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Set ComScrollBySingleLine to False
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComLockedItemCount of hoItems1 OLEexBottom to 2
		Variant hL
		Get ComLockedItem of hoItems1 OLEexBottom 0 to hL
		Set ComItemDivider of hoItems1 hL to 0
		Set ComItemHeight of hoItems1 hL to 3
		Set ComItemDividerLineAlignment of hoItems1 hL to OLEDividerTop
		Set ComItemDividerLine of hoItems1 hL to OLEDoubleLine
		Get ComLockedItem of hoItems1 OLEexBottom 1 to hL
		Set ComCellValue of hoItems1 hL 6 to "sum(all,rec,dbl(%6))"
		Set ComCellValueFormat of hoItems1 hL 6 to OLEexTotalField
		Set ComItemHeight of hoItems1 hL to 24
		Set ComItemBold of hoItems1 hL to True
	Send Destroy to hoItems1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 "EmployeeID" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComSortOrder of hoColumn2 to True
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComEndUpdate
End_Procedure
1104:
How can I add a total field, when I use grouping

// Occurs after a new Group Item has been inserted to Items collection.
Procedure OnComAddGroupItem HITEM   llItem
	Forward Send OnComAddGroupItem llItem
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComItemDividerLine of hoItems llItem to OLEEmptyLine
		Set ComFormatCell of hoItems llItem (ComGroupItem(hoItems,llItem)) to "value + ` Min: <b>` + %13 + `</b> Max: <b>` + %14 + `</b> Sum: <b>` + %15 + `</b>, of Freight column`"
		Set ComCellValue of hoItems llItem "Min" to "min(current,all,dbl(%6))"
		Set ComCellValueFormat of hoItems llItem "Min" to OLEexTotalField
		Set ComCellValue of hoItems llItem "Max" to "max(current,all,dbl(%6))"
		Set ComCellValueFormat of hoItems llItem "Max" to OLEexTotalField
		Set ComCellValue of hoItems llItem "Sum" to "sum(current,all,dbl(%6))"
		Set ComCellValueFormat of hoItems llItem "Sum" to OLEexTotalField
		Set ComItemBackColor of hoItems llItem to (RGB(240,240,240))
	Send Destroy to hoItems
End_Procedure

// 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 ComBeginUpdate
	Set ComHasLines to OLEexNoLine
	Set ComColumnAutoResize to False
	Set ComBackColorSortBar to (RGB(240,240,240))
	Variant rs
	Get Comcreateobject "ADOR.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Set ComSingleSort to False
	Set ComSortBarVisible to True
	Set ComAllowGroupBy 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 ComItem of hoColumns 1 to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComSortOrder 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 "Min" 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
		Variant voColumn2
		Get ComAdd of hoColumns1 "Max" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComVisible of hoColumn2 to False
		Send Destroy to hoColumn2
		Variant voColumn3
		Get ComAdd of hoColumns1 "Sum" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComVisible of hoColumn3 to False
		Send Destroy to hoColumn3
	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 voColumn4
		Get ComItem of hoColumns2 "Freight" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComDef of hoColumn4 OLEexCellBackColor to 12895487
			Set ComDef of hoColumn4 OLEexHeaderBackColor to (ComDef(hoColumn4,OLEexCellBackColor))
			Set ComHeaderBold of hoColumn4 to True
			Set ComAllowGroupBy of hoColumn4 to False
		Send Destroy to hoColumn4
	Send Destroy to hoColumns2
	Set ComScrollBySingleLine to False
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComLockedItemCount of hoItems1 OLEexBottom to 1
		Variant hL
		Get ComLockedItem of hoItems1 OLEexBottom 0 to hL
		Set ComItemDivider of hoItems1 hL to 0
		Set ComItemHeight of hoItems1 hL to 24
		Set ComItemDividerLineAlignment of hoItems1 hL to OLEDividerTop
		Set ComItemDividerLine of hoItems1 hL to OLEDoubleLine
		Set ComCellValue of hoItems1 hL 0 to "sum(all,rec,dbl(%6))"
		Set ComCellValueFormat of hoItems1 hL 0 to (OLEexTotalField + OLEexHTML)
		Set ComCellHAlignment of hoItems1 hL 0 to OLERightAlignment
		Set ComFormatCell of hoItems1 hL 0 to "'Freight: <bgcolor=FFC4C4> '+(value format ``) + ` `"
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1103:
How do I use the ColumnsFloatBarVisible on exColumnsFloatBarVisibleIncludeCheckColumns

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	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 ComColumnsFloatBarSortOrder to OLESortAscending
	Set ComColumnsFloatBarVisible to OLEexColumnsFloatBarVisibleIncludeCheckColumns
	Send ComEndUpdate
End_Procedure
1102:
How do I use the ColumnsFloatBarVisible on exColumnsFloatBarVisibleIncludeHiddenColumn

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	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"
	Set ComColumnsFloatBarVisible to OLEexColumnsFloatBarVisibleIncludeHiddenColumns
	Set ComColumnsFloatBarSortOrder to OLESortAscending
	Send ComEndUpdate
End_Procedure
1101:
How do I use the ColumnsFloatBarVisible on exColumnsFloatBarVisibleIncludeGroupByColumns

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	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
		Get ComAdd of hoColumns "Start" to Nothing
		Get ComAdd of hoColumns "End" to Nothing
	Send Destroy to hoColumns
	Set ComAllowGroupBy to True
	Set ComSortBarVisible to True
	Set ComSortBarCaption to "Drag a <b>column</b> header here to group by that column."
	Set ComBackColorSortBar to (RGB(250,250,250))
	Set ComDescription OLEexColumnsFloatBar to "Group-By"
	Set ComColumnsFloatBarVisible to OLEexColumnsFloatBarVisibleIncludeGroupByColumns
	Set ComColumnsFloatBarSortOrder to OLESortAscending
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn
		Get ComItem of hoColumns1 "City" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComSortOrder of hoColumn to OLESortAscending
		Send Destroy to hoColumn
	Send Destroy to hoColumns1
	Send ComEndUpdate
End_Procedure
1100:
How can I advance to the next line, once the user presses the ENTER key

// Occurs when the user presses a key while an object has the focus.
Procedure OnComKeyDown Short   llKeyCode Short   llShift
	Forward Send OnComKeyDown llKeyCode llShift
	Showln "KeyCode Before:" llKeyCode
	Get ComFormatABC "value = 13 ? 40 : value" llKeyCode Nothing Nothing to KeyCode
	Showln "KeyCode After:" llKeyCode
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 "A" 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 ComAppearance of hoEditor to OLEEtchedApp
				Set ComEditType of hoEditor to OLEEditType
			Send Destroy to hoEditor
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "B" 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 ComAppearance of hoEditor1 to OLEEtchedApp
				Set ComEditType of hoEditor1 to OLEEditType
			Send Destroy to hoEditor1
		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
		Variant h0
		Get ComAddItem of hoItems "Item A.1" to h0
		Set ComCellValue of hoItems h0 1 to "Item B.1"
		Get ComAddItem of hoItems "Item A.2" to h0
		Set ComCellValue of hoItems h0 1 to "Item B.2"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1099:
I am using AddNew to add new records, but I can not see them into the control

// Occurs when user clicks on the cell's button.
Procedure OnComButtonClick HITEM   llItem Integer   llColIndex Variant   llKey
	Forward Send OnComButtonClick llItem llColIndex llKey
	Variant voRecordset
	Get ComDataSource to voRecordset
	Handle hoRecordset
	Get Create (RefClass(cComRecordset)) to hoRecordset
	Set pvComObject of hoRecordset to voRecordset
		Send ComAddNew of hoRecordset Nothing Nothing
		Variant vo
		Get ComFields of hoRecordset to vo
		Handle ho
		Get Create (RefClass(cCom)) to ho
		Set pvComObject of ho to vo
			Variant voField
			Get ComItem of ho "A" to voField
			Handle hoField
			Get Create (RefClass(cComField)) to hoField
			Set pvComObject of hoField to voField
				Set ComValue of hoField to "new A"
			Send Destroy to hoField
		Send Destroy to ho
		Variant vo1
		Get ComFields of hoRecordset to vo1
		Handle ho1
		Get Create (RefClass(cCom)) to ho1
		Set pvComObject of ho1 to vo1
			Variant voField1
			Get ComItem of ho1 "B" to voField1
			Handle hoField1
			Get Create (RefClass(cComField)) to hoField1
			Set pvComObject of hoField1 to voField1
				Set ComValue of hoField1 to "new B"
			Send Destroy to hoField1
		Send Destroy to ho1
		Send ComUpdate of hoRecordset Nothing Nothing
	Send Destroy to hoRecordset
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Variant rs
	Get Comcreateobject "ADODB.Recordset" to rs
		Variant voFields
		Get ComFields to voFields
		Handle hoFields
		Get Create (RefClass(cComFields)) to hoFields
		Set pvComObject of hoFields to voFields
			Send ComAppend of hoFields "A" OLEadBSTR Nothing Nothing Nothing
		Send Destroy to hoFields
		Variant voFields1
		Get ComFields to voFields1
		Handle hoFields1
		Get Create (RefClass(cComFields)) to hoFields1
		Set pvComObject of hoFields1 to voFields1
			Send ComAppend of hoFields1 "B" OLEadBSTR Nothing Nothing Nothing
		Send Destroy to hoFields1
		Send ComOpen Nothing Nothing Nothing Nothing Nothing
		Send ComAddNew Nothing Nothing
		Variant vo2
		Get ComFields to vo2
		Handle ho2
		Get Create (RefClass(cCom)) to ho2
		Set pvComObject of ho2 to vo2
			Variant voField2
			Get ComItem of ho2 "A" to voField2
			Handle hoField2
			Get Create (RefClass(cComField)) to hoField2
			Set pvComObject of hoField2 to voField2
				Set ComValue of hoField2 to "Item A.1"
			Send Destroy to hoField2
		Send Destroy to ho2
		Variant vo3
		Get ComFields to vo3
		Handle ho3
		Get Create (RefClass(cCom)) to ho3
		Set pvComObject of ho3 to vo3
			Variant voField3
			Get ComItem of ho3 "B" to voField3
			Handle hoField3
			Get Create (RefClass(cComField)) to hoField3
			Set pvComObject of hoField3 to voField3
				Set ComValue of hoField3 to "Item B.1"
			Send Destroy to hoField3
		Send Destroy to ho3
		Send ComUpdate Nothing Nothing
		Send ComAddNew Nothing Nothing
		Variant vo4
		Get ComFields to vo4
		Handle ho4
		Get Create (RefClass(cCom)) to ho4
		Set pvComObject of ho4 to vo4
			Variant voField4
			Get ComItem of ho4 "A" to voField4
			Handle hoField4
			Get Create (RefClass(cComField)) to hoField4
			Set pvComObject of hoField4 to voField4
				Set ComValue of hoField4 to "Item A.2"
			Send Destroy to hoField4
		Send Destroy to ho4
		Variant vo5
		Get ComFields to vo5
		Handle ho5
		Get Create (RefClass(cCom)) to ho5
		Set pvComObject of ho5 to vo5
			Variant voField5
			Get ComItem of ho5 "B" to voField5
			Handle hoField5
			Get Create (RefClass(cComField)) to hoField5
			Set pvComObject of hoField5 to voField5
				Set ComValue of hoField5 to "Item B.2"
			Send Destroy to hoField5
		Send Destroy to ho5
		Send ComUpdate Nothing Nothing
	Set ComDataSource to rs
	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 ComItemDivider of hoItems h to 0
		Set ComCellHasButton of hoItems h 0 to True
		Set ComCellValue of hoItems h 0 to "AddNew"
		Set ComCellHAlignment of hoItems h 0 to OLECenterAlignment
	Send Destroy to hoItems
	Set ComDetectAddNew to True
	Set ComDetectDelete to True
	Send ComEndUpdate
End_Procedure
1098:
How can I create a new ADO recordset

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant rs
	Get Comcreateobject "ADODB.Recordset" to rs
		Variant voFields
		Get ComFields to voFields
		Handle hoFields
		Get Create (RefClass(cComFields)) to hoFields
		Set pvComObject of hoFields to voFields
			Send ComAppend of hoFields "A" OLEadBSTR Nothing Nothing Nothing
		Send Destroy to hoFields
		Variant voFields1
		Get ComFields to voFields1
		Handle hoFields1
		Get Create (RefClass(cComFields)) to hoFields1
		Set pvComObject of hoFields1 to voFields1
			Send ComAppend of hoFields1 "B" OLEadBSTR Nothing Nothing Nothing
		Send Destroy to hoFields1
		Send ComOpen Nothing Nothing Nothing Nothing Nothing
		Send ComAddNew Nothing Nothing
		Variant vo
		Get ComFields to vo
		Handle ho
		Get Create (RefClass(cCom)) to ho
		Set pvComObject of ho to vo
			Variant voField
			Get ComItem of ho "A" to voField
			Handle hoField
			Get Create (RefClass(cComField)) to hoField
			Set pvComObject of hoField to voField
				Set ComValue of hoField to "Item A.1"
			Send Destroy to hoField
		Send Destroy to ho
		Variant vo1
		Get ComFields to vo1
		Handle ho1
		Get Create (RefClass(cCom)) to ho1
		Set pvComObject of ho1 to vo1
			Variant voField1
			Get ComItem of ho1 "B" to voField1
			Handle hoField1
			Get Create (RefClass(cComField)) to hoField1
			Set pvComObject of hoField1 to voField1
				Set ComValue of hoField1 to "Item B.1"
			Send Destroy to hoField1
		Send Destroy to ho1
		Send ComUpdate Nothing Nothing
		Send ComAddNew Nothing Nothing
		Variant vo2
		Get ComFields to vo2
		Handle ho2
		Get Create (RefClass(cCom)) to ho2
		Set pvComObject of ho2 to vo2
			Variant voField2
			Get ComItem of ho2 "A" to voField2
			Handle hoField2
			Get Create (RefClass(cComField)) to hoField2
			Set pvComObject of hoField2 to voField2
				Set ComValue of hoField2 to "Item A.2"
			Send Destroy to hoField2
		Send Destroy to ho2
		Variant vo3
		Get ComFields to vo3
		Handle ho3
		Get Create (RefClass(cCom)) to ho3
		Set pvComObject of ho3 to vo3
			Variant voField3
			Get ComItem of ho3 "B" to voField3
			Handle hoField3
			Get Create (RefClass(cComField)) to hoField3
			Set pvComObject of hoField3 to voField3
				Set ComValue of hoField3 to "Item B.2"
			Send Destroy to hoField3
		Send Destroy to ho3
		Send ComUpdate Nothing Nothing
	Set ComDataSource to rs
	Send ComEndUpdate
End_Procedure
1097:
Do do I get the DAO version I have installed

Procedure OnCreate
	Forward Send OnCreate
	Variant v
Handle hoPrivDBEngine
	Get Create (RefClass(cComPrivDBEngine)) to hoPrivDBEngine // Import the 'Microsoft DAO 2.5/3.51 Compatibility Library' library
		Get ComVersion of hoPrivDBEngine to v
	Send Destroy to hoPrivDBEngine
	Showln v
	Variant v1
Handle hoPrivDBEngine1
	Get Create (RefClass(cComPrivDBEngine)) to hoPrivDBEngine1 // Import the 'Microsoft DAO 3.6 Object Library' library
		Get ComVersion of hoPrivDBEngine1 to v1
	Send Destroy to hoPrivDBEngine1
	Showln v1
	Variant v2
Handle hoPrivDBEngine2
	Get Create (RefClass(cComPrivDBEngine)) to hoPrivDBEngine2 // Import the 'Microsoft Office 12.0 Access database engine Object Library' library
		Get ComVersion of hoPrivDBEngine2 to v2
	Send Destroy to hoPrivDBEngine2
	Showln v2
End_Procedure
1096:
How do I get a list of interfaces the object implemenets

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Handle hoPrivDBEngine
	Get Create (RefClass(cComPrivDBEngine)) to hoPrivDBEngine // Import the 'Microsoft Office 12.0 Access database engine Object Library' library
		Variant v
		Variant voDatabase
		Get ComOpenDatabase of hoPrivDBEngine "C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.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
		Variant rs
		Move v to rs
	Send Destroy to hoPrivDBEngine
	Variant v1
Handle hoPropertiesList
	Get Create (RefClass(cComPropertiesList)) to hoPropertiesList // Import the 'ExPropertiesList 1.0 Control Library' library
		Get ComInterfaces of hoPropertiesList rs to v1
	Send Destroy to hoPropertiesList
	Showln v1
	Set ComDataSource to rs
	Send ComEndUpdate
End_Procedure
1095:
Do do I get the ADO version I have installed

Procedure OnCreate
	Forward Send OnCreate
	Variant v
Handle hoConnection
	Get Create (RefClass(cComConnection)) to hoConnection // Import the 'Microsoft ActiveX Data Objects 6.1 Library' library
		Get ComVersion of hoConnection to v
	Send Destroy to hoConnection
	Showln "ADO Version:" v
End_Procedure
1094:
DAO, ACCDB, 120

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Handle hoPrivDBEngine
	Get Create (RefClass(cComPrivDBEngine)) to hoPrivDBEngine // Import the 'Microsoft Office 12.0 Access database engine Object Library' library
		Variant v
		Variant voDatabase
		Get ComOpenDatabase of hoPrivDBEngine "C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.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
		Variant rs
		Move v to rs
	Send Destroy to hoPrivDBEngine
	Set ComDataSource to rs
	Send ComEndUpdate
End_Procedure
1093:
DAO, MDB, 120

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Handle hoPrivDBEngine
	Get Create (RefClass(cComPrivDBEngine)) to hoPrivDBEngine // Import the 'Microsoft Office 12.0 Access database engine Object Library' library
		Variant v
		Variant voDatabase
		Get ComOpenDatabase of hoPrivDBEngine "C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB" 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
		Variant rs
		Move v to rs
	Send Destroy to hoPrivDBEngine
	Set ComDataSource to rs
	Send ComEndUpdate
End_Procedure
1092:
DAO, MDB

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Handle hoPrivDBEngine
	Get Create (RefClass(cComPrivDBEngine)) to hoPrivDBEngine // Import the 'Microsoft DAO 3.6 Object Library' library
		Variant v
		Variant voDatabase
		Get ComOpenDatabase of hoPrivDBEngine "C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB" 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
		Variant rs
		Move v to rs
	Send Destroy to hoPrivDBEngine
	Set ComDataSource to rs
	Send ComEndUpdate
End_Procedure
1091:
ADODB, ACCDB, x64

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Variant rs
	Get Comcreateobject "ADODB.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.accdb" OLEadOpenKeyset OLEadLockReadOnly Nothing
	Set ComDataSource to rs
	Send ComEndUpdate
End_Procedure
1090:
ADOR, ACCDB

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Variant rs
	Get Comcreateobject "ADOR.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.accdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Send ComEndUpdate
End_Procedure
1089:
ADODB, MDB

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Variant rs
	Get Comcreateobject "ADODB.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Send ComEndUpdate
End_Procedure
1088:
ADOR, MDB

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Variant rs
	Get Comcreateobject "ADOR.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Send ComEndUpdate
End_Procedure
1087:
How can I display the row on multiple lines (excrd)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderAppearance to OLEEtched
	Set ComSelBackMode to OLEexTransparent
	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 "Default" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellFormatLevel to "[b=0]60;1[b=15]:60,((20;"<fgcolor=808080>Dateigröße"[b=1][a=2]:120,2[b=15])/(20;"<fgcolor=808080>Erstellt am"[a=2]:120,3[b=15])/(20;"<fgcolor=808080>Zuletzt bearbeitet"[b=4][a=2]:120,4[b=15]))"
			Set ComAllowSort 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
		Variant voColumn1
		Get ComAdd of hoColumns1 1 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 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 2 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComVisible of hoColumn2 to False
			Variant voEditor
			Get ComEditor of hoColumn2 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
			Set ComFormatColumn of hoColumn2 to "1 index `A-Z`"
		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 3 to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComVisible of hoColumn3 to False
			Variant voEditor1
			Get ComEditor of hoColumn3 to voEditor1
			Handle hoEditor1
			Get Create (RefClass(cComEditor)) to hoEditor1
			Set pvComObject of hoEditor1 to voEditor1
				Set ComEditType of hoEditor1 to OLEEditType
			Send Destroy to hoEditor1
			Set ComFormatColumn of hoColumn3 to "1 index ``"
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComAdd of hoColumns4 4 to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComVisible of hoColumn4 to False
			Variant voEditor2
			Get ComEditor of hoColumn4 to voEditor2
			Handle hoEditor2
			Get Create (RefClass(cComEditor)) to hoEditor2
			Set pvComObject of hoEditor2 to voEditor2
				Set ComEditType of hoEditor2 to OLEEditType
			Send Destroy to hoEditor2
			Set ComFormatColumn of hoColumn4 to "date(``)"
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Set ComDefaultItemHeight to 48
	Set ComDrawGridLines to OLEexRowLines
	Set ComGridLineStyle to OLEexGridLinesSolid
	Set ComViewModeOption OLEexTableView OLEexBorderWidth to 1
	Set ComViewModeOption OLEexTableView OLEexBorderHeight to 1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellValue of hoItems (ComAddItem(hoItems,"")) 1 to "One"
		Set ComCellValue of hoItems (ComAddItem(hoItems,"")) 1 to "Two"
		Set ComCellValue of hoItems (ComAddItem(hoItems,"")) 1 to "Three"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1086:
Type of wraps the cell's caption support (Sample 2)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderSingleLine to False
	Set ComHeaderHeight to 36
	Set ComDrawGridLines to OLEexRowLines
	Set ComColumnAutoResize to False
	Set ComScrollBySingleLine 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 "Single-Line (exCaptionSingleLine)" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 96
			Set ComDef of hoColumn OLEexCellValueFormat to 1
			Set ComDef of hoColumn OLEexCellSingleLine to -1
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Word-Wrap (exCaptionWordWrap)" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComWidth of hoColumn1 to 96
			Set ComDef of hoColumn1 OLEexCellValueFormat to 1
			Set ComDef of hoColumn1 OLEexCellSingleLine to 0
			Set ComFormatColumn of hoColumn1 to "%0"
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Break-Wrap (exCaptionBreakWrap)" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComWidth of hoColumn2 to 96
			Set ComDef of hoColumn2 OLEexCellValueFormat to 1
			Set ComDef of hoColumn2 OLEexCellSingleLine to 1
			Set ComFormatColumn of hoColumn2 to "%0"
		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
		Get ComAddItem of hoItems "This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line." to Nothing
		Get ComAddItem of hoItems "This is the <b>first</b> line.\r\nThis is the <b>second</b> line.\r\nThis is the <b>third</b> line." to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1085:
Type of wraps the cell's caption support (Sample 1)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderSingleLine to False
	Set ComHeaderHeight to 36
	Set ComDrawGridLines to OLEexRowLines
	Set ComColumnAutoResize to False
	Set ComScrollBySingleLine 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 "Default" 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
	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 "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to h
		Get ComAddItem of hoItems "This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line." to h
		Set ComCellValueFormat of hoItems h 0 to OLEexHTML
		Get ComAddItem of hoItems "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to h
		Set ComCellSingleLine of hoItems h 0 to OLEexCaptionWordWrap
		Get ComAddItem of hoItems "This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line." to h
		Set ComCellValueFormat of hoItems h 0 to OLEexHTML
		Set ComCellSingleLine of hoItems h 0 to OLEexCaptionWordWrap
		Get ComAddItem of hoItems "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to h
		Set ComCellSingleLine of hoItems h 0 to OLEexCaptionBreakWrap
		Get ComAddItem of hoItems "This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line." to h
		Set ComCellValueFormat of hoItems h 0 to OLEexHTML
		Set ComCellSingleLine of hoItems h 0 to OLEexCaptionBreakWrap
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1084:
Can I break the cell's caption using the line break <br> or \r\n (Sample 2)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComDrawGridLines to OLEexRowLines
	Set ComColumnAutoResize to False
	Set ComScrollBySingleLine 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 "Default" 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
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellSingleLine of hoItems (ComAddItem(hoItems,"This is the first line.\r\nThis is the second line.\r\nThis is the third line.")) 0 to OLEexCaptionBreakWrap
		Get ComAddItem of hoItems "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1083:
Can I break the cell's caption using the line break <br> or \r\n (Sample 1)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComDrawGridLines to OLEexRowLines
	Set ComColumnAutoResize to False
	Set ComScrollBySingleLine 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 "Default" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 128
			Set ComDef of hoColumn OLEexCellSingleLine 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 "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to Nothing
		Get ComAddItem of hoItems "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1082:
How can I change the visual appearance/color of the Filter For ... field

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComBackColorHeader to (RGB(1,0,0))
	Set ComForeColorHeader to (RGB(255,255,255))
	Set ComBackground OLEexBackColorFilter to (ComBackColorHeader(Self))
	Set ComBackground OLEexForeColorFilter to (ComForeColorHeader(Self))
	Set ComBackground OLEexHeaderFilterBarButton to (RGB(240,240,240))
	Set ComBackground OLEexCursorHoverColumn to -1
	Set ComHeaderAppearance to OLEBump
	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 ComFilterOnType of hoColumn to True
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to OLEexNoItems
		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 ComEndUpdate
End_Procedure
1081:
How can I display the cell's caption without spaces on both sides

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize 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 "Default" 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 "((trim(value) replace `   ` with ` `) replace `  ` with ` `) replace ` ` with `<bgcolor=FF0000> </bgcolor>`"
		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 "" to Nothing
		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 ComEndUpdate
End_Procedure
1080:
How can I highlight the spaces within the column (sample 2)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize 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 "Default" 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 "`'` + ( value replace ` ` with `_` ) + `'`"
		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 "" to Nothing
		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 ComEndUpdate
End_Procedure
1079:
How can I highlight the spaces within the column (sample 1)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize 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 "Default" 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(value) = 0 ? `<bgcolor=FF0000> </bgcolor>` : ( value replace ` ` with `<bgcolor=FF0000> </bgcolor>` )"
		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 "" to Nothing
		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 ComEndUpdate
End_Procedure
1078:
How can I change the visual aspect of the drop down filter-calendar

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComBackground OLEexBackColorFilter to (RGB(0,0,1))
	Set ComBackground OLEexForeColorFilter to (RGB(255,255,255))
	Set ComBackground OLEexDateScrollRange to (RGB(255,255,255))
	Set ComBackground OLEexDateHeader to (ComBackground(Self,OLEexBackColorFilter))
	Set ComBackground OLEexDateScrollThumb to (RGB(128,128,128))
	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 "Date" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComFilterType of hoColumn to OLEexDate
			Set ComDisplayFilterButton of hoColumn to True
			Set ComDisplayFilterDate of hoColumn to True
			Set ComDisplayFilterPattern of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Send ComEndUpdate
End_Procedure
1077:
How can I hide the filter bar description

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 "Filter" 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 OLEexFilter
			Set ComFilter of hoColumn to "B"
		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 "A" to Nothing
		Get ComAddItem of hoItems "B" to Nothing
		Get ComAddItem of hoItems "C" to Nothing
	Send Destroy to hoItems
	Send ComApplyFilter
	Set ComFilterBarHeight to 0
	Send ComEndUpdate
End_Procedure
1076:
Export Data in HTML format

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComBackColorAlternate to (RGB(240,240,240))
	Set ComDrawGridLines to OLEexAllLines
	Set ComHeaderAppearance to OLEEtched
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080> ` + value + ` </fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "(( ( value replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount + ` item(s)`) )))"
	Set ComFilterBarPromptVisible to (OLEexFilterBarCompact + OLEexFilterBarShowCloseIfRequired + OLEexFilterBarSingleLine + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Set ComFilterBarPromptType to OLEexFilterPromptContainsAny
	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 "%0 like `*parent*`" "parent" to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBackColor of hoConditionalFormat to (RGB(192,192,192))
		Send Destroy to hoConditionalFormat
		Variant voConditionalFormat1
		Get ComAdd of hoConditionalFormats "%0 like `*child*`" "child" to voConditionalFormat1
		Handle hoConditionalFormat1
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat1
		Set pvComObject of hoConditionalFormat1 to voConditionalFormat1
			Set ComForeColor of hoConditionalFormat1 to (RGB(255,128,128))
			Set ComApplyTo of hoConditionalFormat1 to OLEexFormatToColumns
		Send Destroy to hoConditionalFormat1
		Variant voConditionalFormat2
		Get ComAdd of hoConditionalFormats "%0 like `*B*`" "b" to voConditionalFormat2
		Handle hoConditionalFormat2
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat2
		Set pvComObject of hoConditionalFormat2 to voConditionalFormat2
			Set ComForeColor of hoConditionalFormat2 to (RGB(0,0,255))
			Set ComBold of hoConditionalFormat2 to True
			Set ComItalic of hoConditionalFormat2 to True
			Set ComApplyTo of hoConditionalFormat2 to OLEexFormatToColumns
		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
		Variant voColumn
		Get ComAdd of hoColumns "Value" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 128
			Set ComHTMLCaption of hoColumn to "<b>VA</b><r>sko"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "APos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "0 apos ``"
			Set ComAllowSort of hoColumn1 to False
			Set ComDef of hoColumn1 OLEexCellBackColor to 15790320
			Set ComDef of hoColumn1 OLEexCellForeColor to 8421504
			Set ComDef of hoColumn1 OLEexHeaderForeColor to (ComDef(hoColumn1,OLEexCellForeColor))
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "RPos" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFormatColumn of hoColumn2 to "0 rpos ``"
			Set ComAllowSort of hoColumn2 to False
			Set ComPosition of hoColumn2 to 1
		Send Destroy to hoColumn2
		Variant voColumn3
		Get ComAdd of hoColumns "Index" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComFormatColumn of hoColumn3 to "0 index ``"
			Set ComDisplayFilterButton of hoColumn3 to True
			Set ComFilterList of hoColumn3 to OLEexShowCheckBox
			Set ComPosition of hoColumn3 to 2
		Send Destroy to hoColumn3
		Variant voColumn4
		Get ComAdd of hoColumns "Data 1" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComFormatColumn of hoColumn4 to "0 index `A-Z`"
			Set ComDef of hoColumn4 OLEexCellHasCheckBox to True
		Send Destroy to hoColumn4
		Variant voColumn5
		Get ComAdd of hoColumns "Data 2" to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComFormatColumn of hoColumn5 to "0 index `AB` replace `A` with `<off -4>A</off>`"
			Set ComDef of hoColumn5 OLEexCellSingleLine to False
			Set ComDef of hoColumn5 OLEexCellValueFormat to 1
			Set ComDef of hoColumn5 OLEexCellHasRadioButton to True
		Send Destroy to hoColumn5
		Variant voColumn6
		Get ComAdd of hoColumns "Data 3" to voColumn6
		Handle hoColumn6
		Get Create (RefClass(cComColumn)) to hoColumn6
		Set pvComObject of hoColumn6 to voColumn6
			Set ComFormatColumn of hoColumn6 to "0 index `CDC` replace `D` with `<b>D</b>`"
			Set ComDef of hoColumn6 OLEexCellValueFormat to 1
		Send Destroy to hoColumn6
	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 "ParentA" to h
		Get ComInsertItem of hoItems h "Child A" to Nothing
		Get ComInsertItem of hoItems h "Child B" to Nothing
		Set ComCellState of hoItems h 4 to 1
		Set ComCellBackColor of hoItems (ComInsertItem(hoItems,h,"Child C")) 5 to (RGB(0,255,0))
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Item A" to Nothing
		Get ComAddItem of hoItems "ParentB" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Set ComCellBackColor of hoItems (ComInsertItem(hoItems,h,"Child 3")) 5 to (RGB(0,255,0))
		Set ComCellState of hoItems h 5 to 1
		Get ComAddItem of hoItems "Item B" to Nothing
		Get ComAddItem of hoItems "Item C" to Nothing
		Get ComAddItem of hoItems "Item D" to Nothing
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Variant sFile
	Move "c:/temp/export.html" to sFile
	Get ComExport sFile "vis" to Nothing
	Handle hoShellBrowserWindow
	Get Create (RefClass(cComShellBrowserWindow)) to hoShellBrowserWindow // Import the 'Microsoft Internet Controls' library
		Get ComNavigate2 of hoShellBrowserWindow sFile Nothing Nothing Nothing Nothing to Nothing
	Send Destroy to hoShellBrowserWindow
End_Procedure
1075:
Export Data in CSV format

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComBackColorAlternate to (RGB(240,240,240))
	Set ComDrawGridLines to OLEexAllLines
	Set ComHeaderAppearance to OLEEtched
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080> ` + value + ` </fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "(( ( value replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount + ` item(s)`) )))"
	Set ComFilterBarPromptVisible to (OLEexFilterBarCompact + OLEexFilterBarShowCloseIfRequired + OLEexFilterBarSingleLine + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Set ComFilterBarPromptType to OLEexFilterPromptContainsAny
	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 "%0 like `*parent*`" "parent" to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBackColor of hoConditionalFormat to (RGB(192,192,192))
		Send Destroy to hoConditionalFormat
		Variant voConditionalFormat1
		Get ComAdd of hoConditionalFormats "%0 like `*child*`" "child" to voConditionalFormat1
		Handle hoConditionalFormat1
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat1
		Set pvComObject of hoConditionalFormat1 to voConditionalFormat1
			Set ComForeColor of hoConditionalFormat1 to (RGB(255,128,128))
			Set ComApplyTo of hoConditionalFormat1 to OLEexFormatToColumns
		Send Destroy to hoConditionalFormat1
		Variant voConditionalFormat2
		Get ComAdd of hoConditionalFormats "%0 like `*B*`" "b" to voConditionalFormat2
		Handle hoConditionalFormat2
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat2
		Set pvComObject of hoConditionalFormat2 to voConditionalFormat2
			Set ComForeColor of hoConditionalFormat2 to (RGB(0,0,255))
			Set ComBold of hoConditionalFormat2 to True
			Set ComItalic of hoConditionalFormat2 to True
			Set ComApplyTo of hoConditionalFormat2 to OLEexFormatToColumns
		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
		Variant voColumn
		Get ComAdd of hoColumns "Value" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 128
			Set ComHTMLCaption of hoColumn to "<b>VA</b><r>sko"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "APos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "0 apos ``"
			Set ComAllowSort of hoColumn1 to False
			Set ComDef of hoColumn1 OLEexCellBackColor to 15790320
			Set ComDef of hoColumn1 OLEexCellForeColor to 8421504
			Set ComDef of hoColumn1 OLEexHeaderForeColor to (ComDef(hoColumn1,OLEexCellForeColor))
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "RPos" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFormatColumn of hoColumn2 to "0 rpos ``"
			Set ComAllowSort of hoColumn2 to False
			Set ComPosition of hoColumn2 to 1
		Send Destroy to hoColumn2
		Variant voColumn3
		Get ComAdd of hoColumns "Index" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComFormatColumn of hoColumn3 to "0 index ``"
			Set ComDisplayFilterButton of hoColumn3 to True
			Set ComFilterList of hoColumn3 to OLEexShowCheckBox
			Set ComPosition of hoColumn3 to 2
		Send Destroy to hoColumn3
		Variant voColumn4
		Get ComAdd of hoColumns "Data 1" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComFormatColumn of hoColumn4 to "0 index `A-Z`"
			Set ComDef of hoColumn4 OLEexCellHasCheckBox to True
		Send Destroy to hoColumn4
		Variant voColumn5
		Get ComAdd of hoColumns "Data 2" to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComFormatColumn of hoColumn5 to "0 index `AB` replace `A` with `<off -4>A</off>`"
			Set ComDef of hoColumn5 OLEexCellSingleLine to False
			Set ComDef of hoColumn5 OLEexCellValueFormat to 1
			Set ComDef of hoColumn5 OLEexCellHasRadioButton to True
		Send Destroy to hoColumn5
		Variant voColumn6
		Get ComAdd of hoColumns "Data 3" to voColumn6
		Handle hoColumn6
		Get Create (RefClass(cComColumn)) to hoColumn6
		Set pvComObject of hoColumn6 to voColumn6
			Set ComFormatColumn of hoColumn6 to "0 index `CDC` replace `D` with `<b>D</b>`"
			Set ComDef of hoColumn6 OLEexCellValueFormat to 1
		Send Destroy to hoColumn6
	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 "ParentA" to h
		Get ComInsertItem of hoItems h "Child A" to Nothing
		Get ComInsertItem of hoItems h "Child B" to Nothing
		Set ComCellState of hoItems h 4 to 1
		Set ComCellBackColor of hoItems (ComInsertItem(hoItems,h,"Child C")) 5 to (RGB(0,255,0))
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Item A" to Nothing
		Get ComAddItem of hoItems "ParentB" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Set ComCellBackColor of hoItems (ComInsertItem(hoItems,h,"Child 3")) 5 to (RGB(0,255,0))
		Set ComCellState of hoItems h 5 to 1
		Get ComAddItem of hoItems "Item B" to Nothing
		Get ComAddItem of hoItems "Item C" to Nothing
		Get ComAddItem of hoItems "Item D" to Nothing
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"","vis"))
End_Procedure
1074:
Is it possible to check multiple-items at once

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant bHasParent
	Variant vA
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComItemParent of hoItems llItem to vA
	Send Destroy to hoItems
	Get ComFormatABC "value != 0" vA Nothing Nothing to bHasParent
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellHasCheckBox of hoItems1 llItem 0 to bHasParent
	Send Destroy to hoItems1
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	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 "Tasks" 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 "value + (%CS0 = 1 ? `<r><fgcolor=808080>(checked)` : ``)"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Set ComHeaderVisible to True
	Set ComSingleSel to False
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Variant h
		Get ComAddItem of hoItems2 "Project" to h
		Variant hChild
		Get ComInsertItem of hoItems2 h "Task 1" to hChild
		Get ComInsertItem of hoItems2 h "Task 2" to hChild
		Get ComInsertItem of hoItems2 h "Task 3" to hChild
		Set ComExpandItem of hoItems2 h to True
		Set ComLockedItemCount of hoItems2 OLEexTop to 1
		Set ComCellValue of hoItems2 (ComLockedItem(hoItems2,OLEexTop,0)) 0 to "<c>Select multiple items and press the <b>SPACE</b> key"
	Send Destroy to hoItems2
	Send ComEndUpdate
End_Procedure
1073:
How can I get the icon from the cell when using the Items.CellImages property (icon index)

// Occurs when the user moves the mouse.
Procedure OnComMouseMove Short   llButton Short   llShift OLE_XPOS_PIXELS   llX OLE_YPOS_PIXELS   llY
	Forward Send OnComMouseMove llButton llShift llX llY
	Variant i
	Get ComItemFromPoint -1 -1 c hit to i
	Variant vB
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComCellImages of hoItems i c to vB
	Send Destroy to hoItems
	Showln (ComFormatABC(Self,"( 0x44 = ( value bitand 0x44 ) ) ? ( ( (value bitand 0xFFFF0000) bitshift 16 ) array B split `,` )  : `no image`",hit,vB,Nothing))
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Default" to Nothing
	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 ComCellImages of hoItems1 (ComAddItem(hoItems1,"Item 1")) 0 to "3,2,1"
		Set ComCellImages of hoItems1 (ComAddItem(hoItems1,"Item 2")) 0 to "2,3"
		Set ComCellImages of hoItems1 (ComAddItem(hoItems1,"Item 3")) 0 to "2,"
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1072:
How can I get the icon from the cell when using the Items.CellImages property (icon position within the cell)

// Occurs when the user moves the mouse.
Procedure OnComMouseMove Short   llButton Short   llShift OLE_XPOS_PIXELS   llX OLE_YPOS_PIXELS   llY
	Forward Send OnComMouseMove llButton llShift llX llY
	Variant i
	Get ComItemFromPoint -1 -1 c hit to i
	Showln (ComFormatABC(Self,"( 0x44 = ( value bitand 0x44 ) ) ? 1 + ( (value bitand 0xFFFF0000) bitshift 16 ) : `no image`",hit,Nothing,Nothing))
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Default" 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
		Set ComCellImages of hoItems (ComAddItem(hoItems,"Item 1")) 0 to "3,2,1"
		Set ComCellImages of hoItems (ComAddItem(hoItems,"Item 2")) 0 to "2,3"
		Set ComCellImages of hoItems (ComAddItem(hoItems,"Item 3")) 0 to "2"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1071:
Is it possible to change the visual appearance of the position signs when user changes the column's position by drag and drop

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
		Get ComAdd of hoColumns "Column 1" to Nothing
		Get ComAdd of hoColumns "Column 2" to Nothing
		Get ComAdd of hoColumns "Column 3" to Nothing
	Send Destroy to hoColumns
	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 "gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADKMA4SOKIZhrE4bBhGaQRUgyI43RhHUBzVIUcQvE6TZRHCQYHgkNIhDJIM7TPLkeSVJaTIRoKhJUogApQThTMgVRDEThkGoSa6soSoYTDBKybLrSLKagOT5YUDKUqSdKEZRpEq1YztWbaQoCUoqVRRVIWfbNd4JJa4aDhWpYdpeeY5R7bWLgBYVVABL7LLRsSxpHxPF6RXxaeI3GKsaS8G6ic6nPQMHj7I4NS5pUa6Rh2VYNSa8AAtETRYznOw4bTMXAjNIea5bAYIIR5HIoDzVbQcCQAHL9DBeEMIQEEISgGhMGZQmocgymoYRRCIEQ0G2HYBnEIBig4V4zCQGINnmagCECY43medZ6H2Pw/g+X5fnueh/h+R5+AKABfkMWgGgGYA4AICoCGCE5WA4CphACMgSD2IRIDIBICmEd5YGCBpRjGBgegWIYIgWdgoGIRQsiKCZiAiJZ0gGQI4jUS4LECOAiBmDJflGfg2BSY4Al4OhGkOCJ2DgFJjGGfgqgiH5Ch4RhGkqOQmEOEpkFkHQYhJRYyESAokGKHhIhKIxJEmf4VGUeRGFmF5iBkchPhYJQ5GoYIZg6Ug6GoFYmkmNhuhulRGHKGoImefh0BUZ4JmYeoemeSZ2H6HQmgoBgXDqXwUAQgI=" to Nothing
		Get ComAdd of hoAppearance 2 "CP:1 0 -36 0 0" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground OLEexColumnsPositionSign to |CI$2000000
	Send ComEndUpdate
End_Procedure
1070:
How can I add a title column

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderHeight to 22
	Set ComHeaderAppearance to OLEEtched
	Set ComDrawGridLines to OLEexAllLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Col 1" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Col 2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComFormatColumn of hoColumn to "1 pos ``"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Col 3" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "1 pos `A-`"
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Col 4" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFormatColumn of hoColumn2 to "1 pos `A-Z`"
		Send Destroy to hoColumn2
		Variant voColumn3
		Get ComAdd of hoColumns "Title" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComExpandColumns of hoColumn3 to "0,1,2,3"
			Set ComDisplayExpandButton of hoColumn3 to False
			Set ComAllowSort of hoColumn3 to False
			Set ComAllowDragging of hoColumn3 to False
			Set ComPosition of hoColumn3 to 0
			Set ComHeaderAlignment of hoColumn3 to OLECenterAlignment
		Send Destroy to hoColumn3
	Send Destroy to hoColumns
	Set ComColumnAutoResize 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 "Item 1" to Nothing
		Get ComAddItem of hoItems "Item 2" to Nothing
		Get ComAddItem of hoItems "Item 3" to Nothing
		Get ComAddItem of hoItems "Item 4" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln (ComExport(Self,"",Nothing))
End_Procedure
1069:
FilterBarCaption ALLUI Keyword ( sample 3, result, leaf )

// Occurs after a new Group Item has been inserted to Items collection.
Procedure OnComAddGroupItem HITEM   llItem
	Forward Send OnComAddGroupItem llItem
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComItemBackColor of hoItems llItem to (RGB(240,240,240))
		Variant val
		Get ComCellValue of hoItems llItem (ComGroupItem(hoItems,llItem)) to val
		Variant v
			Get ComFormatABC "A = `Checked` ? 1 : 0" val Nothing Nothing to v
		Set ComCellState of hoItems llItem (ComGroupItem(hoItems,llItem)) to v
	Send Destroy to hoItems
End_Procedure

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant i
	Variant vA
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Get ComItemToIndex of hoItems1 llItem to vA
	Send Destroy to hoItems1
	Get ComFormatABC "value + 1" vA Nothing Nothing to i
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Set ComCellImage of hoItems2 llItem 3 to i
	Send Destroy to hoItems2
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	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 "Col-1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Col-2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Check" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComDef of hoColumn2 OLEexCellHasCheckBox to True
			Set ComDisplayFilterButton of hoColumn2 to True
			Set ComDisplayFilterPattern of hoColumn2 to False
			Set ComFilterType of hoColumn2 to OLEexCheck
		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 "Image" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComDisplayFilterButton of hoColumn3 to True
			Set ComFilterType of hoColumn3 to OLEexImage
			Set ComFilterList of hoColumn3 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox)
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComAdd of hoColumns4 "Pos" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComAllowSizing of hoColumn4 to False
			Set ComAllowSort of hoColumn4 to False
			Set ComWidth of hoColumn4 to 32
			Set ComFormatColumn of hoColumn4 to "1 rpos ``"
			Set ComPosition of hoColumn4 to 0
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	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,"Item A")) 1 to "Sub-Item A"
		Variant h
		Get ComAddItem of hoItems3 "Item B" to h
		Set ComCellValue of hoItems3 h 1 to "Sub-Item B"
		Set ComCellState of hoItems3 h 2 to 1
		Set ComCellValue of hoItems3 (ComAddItem(hoItems3,"Item C")) 1 to "Sub-Item C"
	Send Destroy to hoItems3
	Set ComFilterBarFont to (ComFont(Self))
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080> ` + value + ` </fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "(( ( allui replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + leafitemcount + ` result(s)` ) : (`<r><fgcolor=808080>`+ leafitemcount + ` item(s)`) )))"
	Set ComFilterBarPromptVisible to (OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Set ComAllowGroupBy to True
	Set ComSortBarVisible to True
	Variant voColumns5
	Get ComColumns to voColumns5
	Handle hoColumns5
	Get Create (RefClass(cComColumns)) to hoColumns5
	Set pvComObject of hoColumns5 to voColumns5
		Variant voColumn5
		Get ComItem of hoColumns5 2 to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComFormatColumn of hoColumn5 to "%CS2 ? `Checked` : `Unchecked`"
			Set ComSortOrder of hoColumn5 to OLESortAscending
		Send Destroy to hoColumn5
	Send Destroy to hoColumns5
	Send ComEndUpdate
End_Procedure
1068:
A black portion is shown while I am using the BackColorAlternate with EBN colors. What can I do

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to True
	Set ComDefaultItemHeight to 20
	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 "gBFLBCJwBAEHhEJAAEhIDhAxHAxg0HG0Mg4xGI3HMOig3GcJiYAf8jAEhhUnAAyhEqg8hk0oAsIjgAiAwmYxGA4mYzGwwkI0i0ooUnB0IBMIl1Dg8zmYyGolptPkI1mY1GAll9KoUslNIrVCqNQldShFUstXAVfrVcrlZtVhuFnsUHq1zoczoQGhFBkNpg6zbDykUkhsPHE2h85nc9n8xtVDtlex9Msd2p1YstVq9ux8HyMtzuFz1PsNTzQlv2hhWfkuqpeVuN0q+nvEooN5veSAGpkb/ACcZrvhU3w83nM/poxGuchGpoVBvWgg+8knA4WimnFxI45Er5XOlHMg/Q3XU33W4ew9Wyu11mchDagcO7zus8VDoNBBEIKBpMY6DqOQyokhA/IQIQmwMk4bIQFDcoO6LWgwhQkNcABwEyAB5GwWbet6cRQg3DENQ5D8QxADZvEkAB8nabsURGeBpFM3pwE2AEZRpDx/neZpOR3Dz9oO/r/wCMoZNTBQAQRJSEwYg8HPGhEIoNCaEwq10gQ2WcRt7LcRxRFpuxUAEURQ3sczBEMgTTG8gN7HpOSEAEiQBAQZpmQ0DibPUFwbKcHwkhQoQtNQNzNEMbABOKDy/DMYQzHLeoPL0OTJSUd0pHcxTewk5zrIygIRPslz4lEngBKIAQivgASs/kLSBTlO00f8t0vGcgUbDlDRjXLCUNRERRvRgAHW2oAICA==" to Nothing
	Send Destroy to hoAppearance
	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 "Default" 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 "Position" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "1 rindex ``"
			Set ComVisible of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	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 "%C1 mod 2" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBackColor of hoConditionalFormat to |CI$1000000
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	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
		Get ComAddItem of hoItems "Item 4" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1067:
How can I specify alternate background colors for each root item, similar with BackColorAlternate

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	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 "Default" 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 "Position" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "( ( 1:=( ( 0:=(1 rpos '') ) lfind `.`) ) < 0 ? =:0 : (=:0 left =:1) )"
			Set ComVisible of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	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 "%C1 mod 2" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBackColor of hoConditionalFormat to (RGB(240,240,240))
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	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
		Get ComAddItem of hoItems "Root 3" 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 ComEndUpdate
End_Procedure
1066:
Is it possible to change the caption from a column without to remove the column and add it with the new caption
Procedure OnCreate
	Forward Send OnCreate
	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 "ColumnName" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComCaption of hoColumn to "NewName"
		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 "ColumnName" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComHTMLCaption of hoColumn1 to "<b>New</b>Name"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
End_Procedure
1065:
FilterBarCaption ALL Keyword ( sample 2, result )

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant i
	Variant vA
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComItemToIndex of hoItems llItem to vA
	Send Destroy to hoItems
	Get ComFormatABC "value + 1" vA Nothing Nothing to i
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellImage of hoItems1 llItem 3 to i
	Send Destroy to hoItems1
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	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 "Col-1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Col-2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Check" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Variant voEditor
			Get ComEditor of hoColumn2 to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLECheckValueType
				Set ComOption of hoEditor OLEexCheckValue2 to 1
			Send Destroy to hoEditor
			Set ComDisplayFilterButton of hoColumn2 to True
			Set ComDisplayFilterPattern of hoColumn2 to False
			Set ComFilterType of hoColumn2 to OLEexCheck
		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 "Image" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComDisplayFilterButton of hoColumn3 to True
			Set ComFilterType of hoColumn3 to OLEexImage
			Set ComFilterList of hoColumn3 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox)
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComAdd of hoColumns4 "Pos" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComAllowSizing of hoColumn4 to False
			Set ComAllowSort of hoColumn4 to False
			Set ComWidth of hoColumn4 to 32
			Set ComFormatColumn of hoColumn4 to "1 apos ``"
			Set ComPosition of hoColumn4 to 0
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item A")) 1 to "Sub-Item A"
		Variant h
		Get ComAddItem of hoItems2 "Item B" to h
		Set ComCellValue of hoItems2 h 1 to "Sub-Item B"
		Set ComCellState of hoItems2 h 2 to 1
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item C")) 1 to "Sub-Item C"
	Send Destroy to hoItems2
	Set ComFilterBarFont to (ComFont(Self))
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080> ` + value + ` </fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "(( ( all replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount + ` item(s)`) )))"
	Set ComFilterBarPromptVisible to (OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns5
	Get ComColumns to voColumns5
	Handle hoColumns5
	Get Create (RefClass(cComColumns)) to hoColumns5
	Set pvComObject of hoColumns5 to voColumns5
		Variant voColumn5
		Get ComItem of hoColumns5 0 to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComFilterType of hoColumn5 to OLEexFilter
			Set ComFilter of hoColumn5 to "Item A|Item B"
		Send Destroy to hoColumn5
	Send Destroy to hoColumns5
	Variant voColumns6
	Get ComColumns to voColumns6
	Handle hoColumns6
	Get Create (RefClass(cComColumns)) to hoColumns6
	Set pvComObject of hoColumns6 to voColumns6
		Variant voColumn6
		Get ComItem of hoColumns6 2 to voColumn6
		Handle hoColumn6
		Get Create (RefClass(cComColumn)) to hoColumn6
		Set pvComObject of hoColumn6 to voColumn6
			Set ComFilter of hoColumn6 to 1
		Send Destroy to hoColumn6
	Send Destroy to hoColumns6
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1064:
FilterBarCaption ALL Keyword ( sample 1 )

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant i
	Variant vA
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComItemToIndex of hoItems llItem to vA
	Send Destroy to hoItems
	Get ComFormatABC "value + 1" vA Nothing Nothing to i
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellImage of hoItems1 llItem 3 to i
	Send Destroy to hoItems1
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	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 "Col-1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Col-2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Check" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Variant voEditor
			Get ComEditor of hoColumn2 to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLECheckValueType
				Set ComOption of hoEditor OLEexCheckValue2 to 1
			Send Destroy to hoEditor
			Set ComDisplayFilterButton of hoColumn2 to True
			Set ComDisplayFilterPattern of hoColumn2 to False
			Set ComFilterType of hoColumn2 to OLEexCheck
		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 "Image" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComDisplayFilterButton of hoColumn3 to True
			Set ComFilterType of hoColumn3 to OLEexImage
			Set ComFilterList of hoColumn3 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox)
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComAdd of hoColumns4 "Pos" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComAllowSizing of hoColumn4 to False
			Set ComAllowSort of hoColumn4 to False
			Set ComWidth of hoColumn4 to 32
			Set ComFormatColumn of hoColumn4 to "1 apos ``"
			Set ComPosition of hoColumn4 to 0
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item A")) 1 to "Sub-Item A"
		Variant h
		Get ComAddItem of hoItems2 "Item B" to h
		Set ComCellValue of hoItems2 h 1 to "Sub-Item B"
		Set ComCellState of hoItems2 h 2 to 1
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item C")) 1 to "Sub-Item C"
	Send Destroy to hoItems2
	Set ComFilterBarFont to (ComFont(Self))
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080> ` + value + ` </fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "all"
	Set ComFilterBarPromptVisible to (OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns5
	Get ComColumns to voColumns5
	Handle hoColumns5
	Get Create (RefClass(cComColumns)) to hoColumns5
	Set pvComObject of hoColumns5 to voColumns5
		Variant voColumn5
		Get ComItem of hoColumns5 0 to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComFilterType of hoColumn5 to OLEexFilter
			Set ComFilter of hoColumn5 to "Item A|Item B"
		Send Destroy to hoColumn5
	Send Destroy to hoColumns5
	Variant voColumns6
	Get ComColumns to voColumns6
	Handle hoColumns6
	Get Create (RefClass(cComColumns)) to hoColumns6
	Set pvComObject of hoColumns6 to voColumns6
		Variant voColumn6
		Get ComItem of hoColumns6 2 to voColumn6
		Handle hoColumn6
		Get Create (RefClass(cComColumn)) to hoColumn6
		Set pvComObject of hoColumn6 to voColumn6
			Set ComFilter of hoColumn6 to 1
		Send Destroy to hoColumn6
	Send Destroy to hoColumns6
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1063:
FilterBarCaption ALLUI Keyword ( sample 2, result )

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant i
	Variant vA
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComItemToIndex of hoItems llItem to vA
	Send Destroy to hoItems
	Get ComFormatABC "value + 1" vA Nothing Nothing to i
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellImage of hoItems1 llItem 3 to i
	Send Destroy to hoItems1
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	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 "Col-1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Col-2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Check" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Variant voEditor
			Get ComEditor of hoColumn2 to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLECheckValueType
				Set ComOption of hoEditor OLEexCheckValue2 to 1
			Send Destroy to hoEditor
			Set ComDisplayFilterButton of hoColumn2 to True
			Set ComDisplayFilterPattern of hoColumn2 to False
			Set ComFilterType of hoColumn2 to OLEexCheck
		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 "Image" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComDisplayFilterButton of hoColumn3 to True
			Set ComFilterType of hoColumn3 to OLEexImage
			Set ComFilterList of hoColumn3 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox)
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComAdd of hoColumns4 "Pos" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComAllowSizing of hoColumn4 to False
			Set ComAllowSort of hoColumn4 to False
			Set ComWidth of hoColumn4 to 32
			Set ComFormatColumn of hoColumn4 to "1 apos ``"
			Set ComPosition of hoColumn4 to 0
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item A")) 1 to "Sub-Item A"
		Variant h
		Get ComAddItem of hoItems2 "Item B" to h
		Set ComCellValue of hoItems2 h 1 to "Sub-Item B"
		Set ComCellState of hoItems2 h 2 to 1
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item C")) 1 to "Sub-Item C"
	Send Destroy to hoItems2
	Set ComFilterBarFont to (ComFont(Self))
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080> ` + value + ` </fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "(( ( allui replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount + ` item(s)`) )))"
	Set ComFilterBarPromptVisible to (OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns5
	Get ComColumns to voColumns5
	Handle hoColumns5
	Get Create (RefClass(cComColumns)) to hoColumns5
	Set pvComObject of hoColumns5 to voColumns5
		Variant voColumn5
		Get ComItem of hoColumns5 0 to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComFilterType of hoColumn5 to OLEexFilter
			Set ComFilter of hoColumn5 to "Item A|Item B"
		Send Destroy to hoColumn5
	Send Destroy to hoColumns5
	Variant voColumns6
	Get ComColumns to voColumns6
	Handle hoColumns6
	Get Create (RefClass(cComColumns)) to hoColumns6
	Set pvComObject of hoColumns6 to voColumns6
		Variant voColumn6
		Get ComItem of hoColumns6 2 to voColumn6
		Handle hoColumn6
		Get Create (RefClass(cComColumn)) to hoColumn6
		Set pvComObject of hoColumn6 to voColumn6
			Set ComFilter of hoColumn6 to 1
		Send Destroy to hoColumn6
	Send Destroy to hoColumns6
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1062:
FilterBarCaption ALLUI Keyword ( sample 1 )

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant i
	Variant vA
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComItemToIndex of hoItems llItem to vA
	Send Destroy to hoItems
	Get ComFormatABC "value + 1" vA Nothing Nothing to i
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellImage of hoItems1 llItem 3 to i
	Send Destroy to hoItems1
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	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 "Col-1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Col-2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Check" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Variant voEditor
			Get ComEditor of hoColumn2 to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLECheckValueType
				Set ComOption of hoEditor OLEexCheckValue2 to 1
			Send Destroy to hoEditor
			Set ComDisplayFilterButton of hoColumn2 to True
			Set ComDisplayFilterPattern of hoColumn2 to False
			Set ComFilterType of hoColumn2 to OLEexCheck
		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 "Image" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComDisplayFilterButton of hoColumn3 to True
			Set ComFilterType of hoColumn3 to OLEexImage
			Set ComFilterList of hoColumn3 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox)
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComAdd of hoColumns4 "Pos" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComAllowSizing of hoColumn4 to False
			Set ComAllowSort of hoColumn4 to False
			Set ComWidth of hoColumn4 to 32
			Set ComFormatColumn of hoColumn4 to "1 apos ``"
			Set ComPosition of hoColumn4 to 0
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item A")) 1 to "Sub-Item A"
		Variant h
		Get ComAddItem of hoItems2 "Item B" to h
		Set ComCellValue of hoItems2 h 1 to "Sub-Item B"
		Set ComCellState of hoItems2 h 2 to 1
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item C")) 1 to "Sub-Item C"
	Send Destroy to hoItems2
	Set ComFilterBarFont to (ComFont(Self))
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080> ` + value + ` </fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "allui"
	Set ComFilterBarPromptVisible to (OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns5
	Get ComColumns to voColumns5
	Handle hoColumns5
	Get Create (RefClass(cComColumns)) to hoColumns5
	Set pvComObject of hoColumns5 to voColumns5
		Variant voColumn5
		Get ComItem of hoColumns5 0 to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComFilterType of hoColumn5 to OLEexFilter
			Set ComFilter of hoColumn5 to "Item A|Item B"
		Send Destroy to hoColumn5
	Send Destroy to hoColumns5
	Variant voColumns6
	Get ComColumns to voColumns6
	Handle hoColumns6
	Get Create (RefClass(cComColumns)) to hoColumns6
	Set pvComObject of hoColumns6 to voColumns6
		Variant voColumn6
		Get ComItem of hoColumns6 2 to voColumn6
		Handle hoColumn6
		Get Create (RefClass(cComColumn)) to hoColumn6
		Set pvComObject of hoColumn6 to voColumn6
			Set ComFilter of hoColumn6 to 1
		Send Destroy to hoColumn6
	Send Destroy to hoColumns6
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1061:
FilterBarCaption AVAILABLE Keyword ( sample 2, result )

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant i
	Variant vA
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComItemToIndex of hoItems llItem to vA
	Send Destroy to hoItems
	Get ComFormatABC "value + 1" vA Nothing Nothing to i
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellImage of hoItems1 llItem 3 to i
	Send Destroy to hoItems1
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	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 "Col-1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Col-2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Check" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Variant voEditor
			Get ComEditor of hoColumn2 to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLECheckValueType
				Set ComOption of hoEditor OLEexCheckValue2 to 1
			Send Destroy to hoEditor
			Set ComDisplayFilterButton of hoColumn2 to True
			Set ComDisplayFilterPattern of hoColumn2 to False
			Set ComFilterType of hoColumn2 to OLEexCheck
		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 "Image" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComDisplayFilterButton of hoColumn3 to True
			Set ComFilterType of hoColumn3 to OLEexImage
			Set ComFilterList of hoColumn3 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox)
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComAdd of hoColumns4 "Pos" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComAllowSizing of hoColumn4 to False
			Set ComAllowSort of hoColumn4 to False
			Set ComWidth of hoColumn4 to 32
			Set ComFormatColumn of hoColumn4 to "1 apos ``"
			Set ComPosition of hoColumn4 to 0
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item A")) 1 to "Sub-Item A"
		Variant h
		Get ComAddItem of hoItems2 "Item B" to h
		Set ComCellValue of hoItems2 h 1 to "Sub-Item B"
		Set ComCellState of hoItems2 h 2 to 1
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item C")) 1 to "Sub-Item C"
	Send Destroy to hoItems2
	Set ComFilterBarFont to (ComFont(Self))
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080> ` + value + ` </fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "(( ( value replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>` ) + ` ` + ( available replace `[` with `<bgcolor=C0C0C0><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>` replace `<s>` with `` replace `</s>` with `` ) + `<fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount + ` item(s)`) )))"
	Set ComFilterBarPromptVisible to (OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns5
	Get ComColumns to voColumns5
	Handle hoColumns5
	Get Create (RefClass(cComColumns)) to hoColumns5
	Set pvComObject of hoColumns5 to voColumns5
		Variant voColumn5
		Get ComItem of hoColumns5 0 to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComFilterType of hoColumn5 to OLEexFilter
			Set ComFilter of hoColumn5 to "Item A|Item B"
		Send Destroy to hoColumn5
	Send Destroy to hoColumns5
	Variant voColumns6
	Get ComColumns to voColumns6
	Handle hoColumns6
	Get Create (RefClass(cComColumns)) to hoColumns6
	Set pvComObject of hoColumns6 to voColumns6
		Variant voColumn6
		Get ComItem of hoColumns6 2 to voColumn6
		Handle hoColumn6
		Get Create (RefClass(cComColumn)) to hoColumn6
		Set pvComObject of hoColumn6 to voColumn6
			Set ComFilter of hoColumn6 to 1
		Send Destroy to hoColumn6
	Send Destroy to hoColumns6
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1060:
FilterBarCaption AVAILABLE Keyword ( sample 1 )

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant i
	Variant vA
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComItemToIndex of hoItems llItem to vA
	Send Destroy to hoItems
	Get ComFormatABC "value + 1" vA Nothing Nothing to i
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellImage of hoItems1 llItem 3 to i
	Send Destroy to hoItems1
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	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 "Col-1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Col-2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Check" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Variant voEditor
			Get ComEditor of hoColumn2 to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLECheckValueType
				Set ComOption of hoEditor OLEexCheckValue2 to 1
			Send Destroy to hoEditor
			Set ComDisplayFilterButton of hoColumn2 to True
			Set ComDisplayFilterPattern of hoColumn2 to False
			Set ComFilterType of hoColumn2 to OLEexCheck
		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 "Image" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComDisplayFilterButton of hoColumn3 to True
			Set ComFilterType of hoColumn3 to OLEexImage
			Set ComFilterList of hoColumn3 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox)
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComAdd of hoColumns4 "Pos" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComAllowSizing of hoColumn4 to False
			Set ComAllowSort of hoColumn4 to False
			Set ComWidth of hoColumn4 to 32
			Set ComFormatColumn of hoColumn4 to "1 apos ``"
			Set ComPosition of hoColumn4 to 0
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item A")) 1 to "Sub-Item A"
		Variant h
		Get ComAddItem of hoItems2 "Item B" to h
		Set ComCellValue of hoItems2 h 1 to "Sub-Item B"
		Set ComCellState of hoItems2 h 2 to 1
		Set ComCellValue of hoItems2 (ComAddItem(hoItems2,"Item C")) 1 to "Sub-Item C"
	Send Destroy to hoItems2
	Set ComFilterBarFont to (ComFont(Self))
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080> ` + value + ` </fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "value + ` ` + available"
	Set ComFilterBarPromptVisible to (OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns5
	Get ComColumns to voColumns5
	Handle hoColumns5
	Get Create (RefClass(cComColumns)) to hoColumns5
	Set pvComObject of hoColumns5 to voColumns5
		Variant voColumn5
		Get ComItem of hoColumns5 0 to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComFilterType of hoColumn5 to OLEexFilter
			Set ComFilter of hoColumn5 to "Item A|Item B"
		Send Destroy to hoColumn5
	Send Destroy to hoColumns5
	Variant voColumns6
	Get ComColumns to voColumns6
	Handle hoColumns6
	Get Create (RefClass(cComColumns)) to hoColumns6
	Set pvComObject of hoColumns6 to voColumns6
		Variant voColumn6
		Get ComItem of hoColumns6 2 to voColumn6
		Handle hoColumn6
		Get Create (RefClass(cComColumn)) to hoColumn6
		Set pvComObject of hoColumn6 to voColumn6
			Set ComFilter of hoColumn6 to 1
		Send Destroy to hoColumn6
	Send Destroy to hoColumns6
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1059:
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 3, results )

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 "Col-1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Col-2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Pos" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComAllowSizing of hoColumn2 to False
			Set ComAllowSort of hoColumn2 to False
			Set ComWidth of hoColumn2 to 32
			Set ComFormatColumn of hoColumn2 to "1 apos ``"
			Set ComPosition of hoColumn2 to 0
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellValue of hoItems (ComAddItem(hoItems,"Item A")) 1 to "Sub-Item A"
		Set ComCellValue of hoItems (ComAddItem(hoItems,"Item B")) 1 to "Sub-Item B"
		Set ComCellValue of hoItems (ComAddItem(hoItems,"Item C")) 1 to "Sub-Item C"
	Send Destroy to hoItems
	Set ComFilterBarFont to (ComFont(Self))
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080>` + value + `</fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "(`<b>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<fgcolor=808080>`+ itemcount + ` item(s)`) )) replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>`"
	Set ComFilterBarPromptVisible to OLEexFilterBarToggle
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Variant voColumn3
		Get ComItem of hoColumns3 0 to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComFilterType of hoColumn3 to OLEexFilter
			Set ComFilter of hoColumn3 to "Item A|Item B"
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComItem of hoColumns4 1 to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComFilterType of hoColumn4 to OLEexPattern
			Set ComFilter of hoColumn4 to "*B"
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1058:
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 2 )

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 "Col-1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Col-2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Pos" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComAllowSizing of hoColumn2 to False
			Set ComAllowSort of hoColumn2 to False
			Set ComWidth of hoColumn2 to 32
			Set ComFormatColumn of hoColumn2 to "1 apos ``"
			Set ComPosition of hoColumn2 to 0
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellValue of hoItems (ComAddItem(hoItems,"Item A")) 1 to "Sub-Item A"
		Set ComCellValue of hoItems (ComAddItem(hoItems,"Item B")) 1 to "Sub-Item B"
		Set ComCellValue of hoItems (ComAddItem(hoItems,"Item C")) 1 to "Sub-Item C"
	Send Destroy to hoItems
	Set ComFilterBarFont to (ComFont(Self))
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080>` + value + `</fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "value replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>`"
	Set ComFilterBarPromptVisible to OLEexFilterBarToggle
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Variant voColumn3
		Get ComItem of hoColumns3 0 to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComFilterType of hoColumn3 to OLEexFilter
			Set ComFilter of hoColumn3 to "Item A|Item B"
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComItem of hoColumns4 1 to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComFilterType of hoColumn4 to OLEexPattern
			Set ComFilter of hoColumn4 to "*B"
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1057:
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 1 )

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 "Col-1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Col-2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Pos" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComAllowSizing of hoColumn2 to False
			Set ComAllowSort of hoColumn2 to False
			Set ComWidth of hoColumn2 to 32
			Set ComFormatColumn of hoColumn2 to "1 apos ``"
			Set ComPosition of hoColumn2 to 0
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellValue of hoItems (ComAddItem(hoItems,"Item A")) 1 to "Sub-Item A"
		Set ComCellValue of hoItems (ComAddItem(hoItems,"Item B")) 1 to "Sub-Item B"
		Set ComCellValue of hoItems (ComAddItem(hoItems,"Item C")) 1 to "Sub-Item C"
	Send Destroy to hoItems
	Set ComDescription OLEexFilterBarAnd to (ComFormatABC(Self,"`<fgcolor=808080>` + value + `</fgcolor>`",(ComDescription(Self,OLEexFilterBarAnd)),Nothing,Nothing))
	Set ComFilterBarCaption to "value replace `[` with `<fgcolor=808080>[` replace `]` with `]</fgcolor>`"
	Set ComFilterBarPromptVisible to OLEexFilterBarToggle
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Variant voColumn3
		Get ComItem of hoColumns3 0 to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComFilterType of hoColumn3 to OLEexFilter
			Set ComFilter of hoColumn3 to "Item A|Item B"
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComItem of hoColumns4 1 to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComFilterType of hoColumn4 to OLEexPattern
			Set ComFilter of hoColumn4 to "*B"
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1056:
Is it possible to automatically displays the control's filter label to the right

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarCaption to "`<r>` + value"
	Set ComFilterBarPromptVisible to (OLEexFilterBarShowCloseOnRight + OLEexFilterBarToggle)
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFilterType of hoColumn2 to OLEexFilter
			Set ComFilter of hoColumn2 to "Item B"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1055:
How can I get the number of results/items being shown in the control's filter bar (sample 4)

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
		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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarFont to (ComFont(Self))
	Set ComFilterBarPrompt to (ComFormatABC(Self,"`<b>` + value",(ComFilterBarPrompt(Self)),Nothing,Nothing))
	Set ComFilterBarCaption to "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<fgcolor=808080>`+ itemcount + ` item(s)`) )"
	Set ComFilterBarPromptVisible to (OLEexFilterBarCompact + OLEexFilterBarShowCloseOnRight + OLEexFilterBarShowCloseIfRequired + OLEexFilterBarCaptionVisible + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Send ComEndUpdate
End_Procedure
1054:
How can I get the number of results being shown in the control's filter bar (sample 3)

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarFont to (ComFont(Self))
	Set ComFilterBarCaption to "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : ``)"
	Set ComFilterBarPromptVisible to (OLEexFilterBarCompact + OLEexFilterBarCaptionVisible + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFilterType of hoColumn2 to OLEexFilter
			Set ComFilter of hoColumn2 to "Item A|Item B"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1053:
How can I get the number of results being shown in the control's filter bar (sample 2, compact)

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarFont to (ComFont(Self))
	Set ComFilterBarCaption to "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? `<off -4> ` + abs(matchitemcount + 1) + ` result(s)` : ``)"
	Set ComFilterBarPromptVisible to (OLEexFilterBarCompact + OLEexFilterBarSingleLine + OLEexFilterBarCaptionVisible + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFilterType of hoColumn2 to OLEexFilter
			Set ComFilter of hoColumn2 to "Item A|Item B"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1052:
How can I get the number of results being shown in the control's filter bar (sample 1)

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarFont to (ComFont(Self))
	Set ComFilterBarCaption to "`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? abs(matchitemcount + 1) + ` result(s)` : ``)"
	Set ComFilterBarPromptVisible to (OLEexFilterBarCaptionVisible + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFilterType of hoColumn2 to OLEexFilter
			Set ComFilter of hoColumn2 to "Item A|Item B"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1051:
FilterBarCaption Predefined Keywords

// Fired after an item is expanded (collapsed).
Procedure OnComAfterExpandItem HITEM   llItem
	Forward Send OnComAfterExpandItem llItem
	Send ComRefresh
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	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 ComDisplayFilterButton 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 "Check" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Variant voEditor
			Get ComEditor of hoColumn1 to voEditor
			Handle hoEditor
			Get Create (RefClass(cComEditor)) to hoEditor
			Set pvComObject of hoEditor to voEditor
				Set ComEditType of hoEditor to OLECheckValueType
				Set ComOption of hoEditor OLEexCheckValue2 to 1
			Send Destroy to hoEditor
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComDisplayFilterPattern of hoColumn1 to False
			Set ComFilterType of hoColumn1 to OLEexCheck
		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 "Pos" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComAllowSizing of hoColumn2 to False
			Set ComAllowSort of hoColumn2 to False
			Set ComWidth of hoColumn2 to 32
			Set ComFormatColumn of hoColumn2 to "1 apos ``"
			Set ComPosition of hoColumn2 to 0
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	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
		Variant h
		Get ComAddItem of hoItems "Item B" to h
		Set ComCellState of hoItems (ComInsertItem(hoItems,h,"Sub-Item B1")) 1 to 1
		Get ComInsertItem of hoItems h "Sub-Item B2" to Nothing
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Item C" to Nothing
	Send Destroy to hoItems
	Set ComFilterInclude to OLEexItemsWithChilds
	Set ComFilterBarFont to (ComFont(Self))
	Set ComFilterBarCaption to "`<fgcolor=0000FF><i>value/current</i></fgcolor>: <fgcolor=808080>` + value + `</fgcolor>` + `<br><fgcolor=0000FF><i>available</i></fgcolor>: ` + available + `<br><fgcolor=0000FF><i>allui</i></fgcolor>: ` + allui + `<br><fgcolor=0000FF><i>all</i></fgcolor>: ` + all + `<br><fgcolor=0000FF><i>itemcount</i></fgcolor>: <fgcolor=808080>` + itemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><i>visibleitemcount</i></fgcolor>: <fgcolor=808080>` + visibleitemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><i>matchitemcount</i></fgcolor>: <fgcolor=808080>` + matchitemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><i>promptpattern</i></fgcolor>: <fgcolor=808080>` + promptpattern + `</fgcolor>`+ `<br><fgcolor=0000FF><i>leafitemcount</i></fgcolor>: <fgcolor=808080>` + leafitemcount + `</fgcolor>`"
	Set ComFilterBarPromptPattern to "B"
	Set ComFilterBarPromptVisible to (OLEexFilterBarCaptionVisible + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Variant voColumn3
		Get ComItem of hoColumns3 0 to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComFilterType of hoColumn3 to OLEexFilter
			Set ComFilter of hoColumn3 to "Item A|Item B"
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1050:
I am using filter prompt feature, and also column's filter, just wondering if possible to compact displaying the filter bar so it won't show on multiple lines

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarFont to (ComFont(Self))
	Set ComFilterBarCaption to "`<r><i><fgcolor=808080><upline><solidline><sha ;;0>` + value"
	Set ComFilterBarPromptPattern to "B"
	Set ComFilterBarPromptVisible to (OLEexFilterBarCompact + OLEexFilterBarSingleLine + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFilterType of hoColumn2 to OLEexFilter
			Set ComFilter of hoColumn2 to "Item A|Item B"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1049:
Just wondering if it is possible to show the filter bar's close button on the right ( sample 2 )

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarPromptVisible to (OLEexFilterBarShowCloseOnRight + OLEexFilterBarToggle + OLEexFilterBarPromptVisible)
	Set ComFilterBarPrompt to (ComFormatABC(Self,"`<r>` + value",(ComFilterBarPrompt(Self)),Nothing,Nothing))
	Send ComEndUpdate
End_Procedure
1048:
Just wondering if it is possible to show the filter bar's close button on the right ( sample 1 )

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComRightToLeft 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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarPromptVisible to (OLEexFilterBarToggle + OLEexFilterBarPromptVisible)
	Send ComEndUpdate
End_Procedure
1047:
How can I change the visual appearance of the filter bar's close button (EBN)

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 "gBFLBCJwBAEHhEJAAEhABHQDg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLOg7IJjyI4/SJAYCydKAWhxIaZKJHCZoEDaTAADCNVAQp6MEIJVbVEI0e79OgBLp/Z7kECIJJAaRjHQdJxGLA8EhtCQhCZteK6SgMKJYXhWQYRXI1JwvMBrWrdQjiOYELQtMKmSZNLYGG4dR5SVJbcYhSYsRRFMoyDIOXYDLKsdYqSpXIThObEGgaPqJYjsUjCMKnR7HVIURrBPC9TBPE69ZgmC6ucKPX51ShKFaBWDZcwFAS+UBuYCAILiEAQGZ1XT8OROicbgJgSTJRlCaZeDsHY7QGR4xkSYp3CaExZAQMgalQYAwjCAAfBANxcA2TgKAUOpDCGFhKg0RpXCwCwDHQHQHEyAIkCkOhbFOGA8A8DohBgRg9AccZcn8EpEjMLI2C2DYxAgQgvAIUIVkoAAPBQDJlECTZ3CCYwDACQwUA8A5MCAWAWDiQi4l8aQOEgLJuBgBgDmYFAzEoIoIl0WALgKYJbBABADAAHgHg8VAMmqCQQDMXABAATYwTmNwBDATJXAiAgjHmNQ5lgQ5QEQEQMmcWg/GwD5ylyNw2gMcJcjsBgBgOQQDDhRpVAMMwnDBFw1B0Ax8D0DxOmmJJIGQTY5hGMAwkwM4CAYLZAmAOJnAqAojiIGg6iieYkmeAYOHaKJDCyCwjH6AoggsQpQliAJLhgaJ0CESBTnyDwjk+cg4g4P5IHIHJ+BWRRzlYWAxiOUxihsY4KjKLJRGqC44FCegkkkM58iAKAPnIWIWD8SRSFSfQnkmewUhYP4GiGKJ7G0TIbCSUoggqUo0lAQ4LnEcBcD8Coiiif4nE+eAAn2HpOkcFJqi4T5SkyMw/kqQown8IBIBOdA+A+DJrBqVxXEqYo4lCApLhGHBnD8S4ymyfxmg+cwQkQP5egOUZIWoEAkjIeIPBMBJBD+TBjBifwvkuc58hQJQPmFrYykkchclSApKjGOBuD+TRDFCfw3mmIxNi8FxFlOXhVC4aYDFyPgvg2YBcBcLZGCGCJ0DSLRzGSWQ/lmY5+mEP5gmMDBZRSMRsFsOxMhMJJ/DsTpTnwaQaE+N5ojuNhdEYNI5C4TZJO1GRDmCaxnA2Yx4n8IpIjOTBQBQC5TgyYw7gUYRYikC0BYRwsDQBoB8eA6Q2hsE0BUXgywZtYCyHMKwnxSAhAQHkIQhRrBaDsCwA4ERiB2EWAIYIXhhiVEgAEUYwwYjyASLge4FhHgRDkM8OQih0jWPkGgBBAQ" to Nothing
	Send Destroy to hoAppearance
	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 ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarPromptVisible to (OLEexFilterBarToggle + OLEexFilterBarPromptVisible)
	Set ComBackground OLEexFooterFilterBarButton to |CI$1000000
	Send ComEndUpdate
End_Procedure
1046:
How can I change the visual appearance of the filter bar's close button (solid)

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarPromptVisible to OLEexFilterBarPromptVisible
	Set ComBackground OLEexFooterFilterBarButton to (RGB(255,0,0))
	Send ComEndUpdate
End_Procedure
1045:
Is it possible to prevent definitely showing the filter bar's close button

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarPromptVisible to OLEexFilterBarPromptVisible
	Set ComBackground OLEexFooterFilterBarButton to -1
	Send ComEndUpdate
End_Procedure
1044:
Is it possible to show the close button only if there is a filter applied

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarPromptVisible to (OLEexFilterBarShowCloseIfRequired + OLEexFilterBarPromptVisible)
	Send ComEndUpdate
End_Procedure
1043:
The control's filter bar is not closed once I click the close button (toggle)

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
		Set ComLockedItemCount of hoItems OLEexBottom to 1
		Variant h
		Get ComLockedItem of hoItems OLEexBottom 0 to h
		Set ComItemDivider of hoItems h to 0
		Set ComCellValue of hoItems h 0 to "<c><fgcolor=808080>Press the CTRL + F to turn on/off the control's filter bar. ALT + Up/Down moves the focus."
		Set ComCellValueFormat of hoItems h 0 to OLEexHTML
	Send Destroy to hoItems
	Set ComFilterBarCaption to "`<r><fgcolor=808080>` + value"
	Set ComFilterBarPromptPattern to "B"
	Set ComFilterBarPromptVisible to (OLEexFilterBarCompact + OLEexFilterBarToggle + OLEexFilterBarSingleLine + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFilterType of hoColumn2 to OLEexFilter
			Set ComFilter of hoColumn2 to "Item B"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1042:
How can I display the control's filter on a single line

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarCaption to "len(value) ? `filter for: <fgcolor 808080>` + value  : `<fgcolor 808080>no filter`"
	Set ComFilterBarPromptVisible to (OLEexFilterBarSingleLine + OLEexFilterBarVisible)
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFilterType of hoColumn2 to OLEexFilter
			Set ComFilter of hoColumn2 to "Item A|Item B"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1041:
How can I display the control's filter on a single line (prompt-combined)

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarCaption to "`<r>` + value"
	Set ComFilterBarPromptVisible to (OLEexFilterBarCompact + OLEexFilterBarSingleLine + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFilterType of hoColumn2 to OLEexFilter
			Set ComFilter of hoColumn2 to "Item A|Item B"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1040:
How can I get the number of results after a filter is applied

// Occurs when the user presses and then releases the left mouse button over the grid control.
Procedure OnComClick 
	Forward Send OnComClick 
	Send ComClearFilter
End_Procedure

// Occurs when filter was changed.
Procedure OnComFilterChange 
	Forward Send OnComFilterChange 
	Variant v
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComMatchItemCount of hoItems to v
	Send Destroy to hoItems
	Showln "Items.MatchItemCount" v
	Variant vA
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Get ComMatchItemCount of hoItems1 to vA
	Send Destroy to hoItems1
	Showln (ComFormatABC(Self,"value < 0 ? `filter applied: ` + abs(value + 1) + ` result(s)` : `no filter`",vA,Nothing,Nothing))
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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	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 A" to Nothing
		Get ComAddItem of hoItems2 "Item B" to Nothing
		Get ComAddItem of hoItems2 "Item C" to Nothing
	Send Destroy to hoItems2
	Set ComFilterBarPromptVisible to OLEexFilterBarPromptVisible
	Set ComFilterBarPromptPattern to "Item"
	Send ComEndUpdate
End_Procedure
1039:
How can I programmatically clear the control's filter
// Occurs when the user presses and then releases the left mouse button over the grid control.
Procedure OnComClick 
	Forward Send OnComClick 
	Send ComClearFilter
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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarPromptVisible to OLEexFilterBarPromptVisible
	Set ComFilterBarPromptPattern to "B"
	Send ComEndUpdate
End_Procedure
1038:
Is it possible to prevent closing the control's filter bar, so it is always shown (prompt-combined)

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarPromptPattern to "B"
	Set ComFilterBarPromptVisible to (OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFilterType of hoColumn2 to OLEexFilter
			Set ComFilter of hoColumn2 to "Item B"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1037:
Is it possible to prevent closing the control's filter bar, so it is always shown (prompt)

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarPromptVisible to OLEexFilterBarPromptVisible
	Set ComFilterBarPromptPattern to "B"
	Send ComEndUpdate
End_Procedure
1036:
Is it possible to prevent closing the control's filter bar, so it is always shown

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 "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton 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 "Pos" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComAllowSort of hoColumn1 to False
			Set ComWidth of hoColumn1 to 32
			Set ComFormatColumn of hoColumn1 to "1 apos ``"
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	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
	Set ComFilterBarCaption to "len(value) = 0 ? `<fgcolor=808080>no filter` : value"
	Set ComFilterBarPromptVisible to OLEexFilterBarVisible
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFilterType of hoColumn2 to OLEexFilter
			Set ComFilter of hoColumn2 to "Item B"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
1035:
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 4)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComVisualDesign to "gBFLBWIgBAEHhEJAEGg6VAkHeLpgwChAOhULB8XAUUg8MAAREEHGMcgRCJ0ei8dhABDEcQAAYAQGKIYBkAKBQAGaAoDDMOQwQwAAxjGKEEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQiiCYsS5GQBRWAkEwiBiEQTjea5CgOIAFS7LIqjRQEBxhIaZYIGaiQADENo9TxIMZAfBIHShK6NJABCCSQKkYx0HScRijDIEFwGIQmbKiej4DCiCQQW7OYYRVCNMQSfa8HivJyrcamfp/YBgOBYHb1eLVPR5LwfPCGUw1P6PLxkORZHimK4tSLHV7xVpMIwZFafIQhCCoHomS5NU7UNR0TQUFx9FaGX7rDDsGwLAJ6XRgF4bg2VpnHePpenAN4bH2GwHFmApSjEGBLnWOpRGOTBZHOegrE6BxPiWVJqCweQrn0LgJAWJBjwgaw1gKO5HmWch5h+fovF+G5bmich4BgfZkB8dynRUVYqiUR5rnmex/F6N4tn2AJfnebZ3DEXw3HWXgzAyIwgicKJKBKEIhCeCgiHyHYFEmSAFmqBghFIdgSCeIJygYDAyAgJx6AoIINAMOJNCgCZCGoGoLmMCI+CwJoihMNglCCIhzFCUg0EmMhghWDBkAiQg9CUY4jEYN4Jk2IxklYJoJHIUg+CSZJSESFwkkkGI+FOFIJEIRhPhMCRJCSVoRrSBhiDgTZjHYT4PEkYhwhgJYm0SaIaiaSYuE+GQNlmCIBGCJxjhiZQ5AkMhAg6ExJCkPhPguaAiFYUAlAkKZ0g6HoOEmWR/GHcA4m0OwIlIJIHCRgQshGJhpjoaocieaZiC6GAimkUgehIOwnGYGYIGkah6jaE4rg6SpCjKK5rEOMYlGIGIihKOggloFoqj6L5aGaBo6CkGIkAQjiPpCAAaJILCTJQlKPACDaXJgmSaJsnCdJ4nygKEoijKQpSmKcqCpKoqysK0rivLAsSyLMtC1LYty4Lkui7LwvS+L8wDBMIwzEMUxjHMgyTKMszDNM4zzQNE0jTNQ1TWNc2DZNo2zcN03jfOA4TiOM5DlOY5zoOk6jrOw7TuO88DxPI8z0PU9j3Pg+T6Ps/D9P4/0AQFAkDQRBUGQdCEJQpC0MQ1DkPRBEUSRNFEVBhFkXRhGQ9D6Dxfh+W5gGGd4QH2XQjCmDpFFaKoVB+D5Xmed5+H8YAHnIAh9EwV5Fl0d4MkMKJICmSgygSJAoEmMUCIPgnDCCIOQFYCxJjwFoCcA4kxoF+AIJkAgExegDEgEYQInAzCUAIOEGgfxiiRDYF1Q4EQ2BSCaEQYwbAiKREMpRSymFNDIAkAxT6oVRgSA2qdVKq1WqvVirMZQUhSCnBUMoIgoQRgnGSIQUgkg1hIHYAkAYMROAmHiLsE4xxSCxBwEwCQ0wmDdBsE0GYXBtg2CSPMFIuwYiQBYBQeAcwOCnBCCZgw0g0glBONAQgqQThCGgPQGoBQfiRGmOEZIPAXjsBoPAO4HRThhA0EQSA5BAgaCKJIGg3QdhOCmNUBoQAijTCIF0FwQxpCHDIPAYYMQGgtCmFcaQtRAjZCyFYSojQ2B2BoKwIYFApBXEIBsIQ1QsAWAWEwaA1xCgjAoIAQBAQ="
	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
		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" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1034:
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 3)

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 3 "gBFLBCJwBAEHhEJAAEhABDwCg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJegef4zluaJ3nqPJeCYH4BAeX5TDLBpVGqKRRnwf4flefZtHsX54BYAR/F+EwVnUd5eAMMJKDIChygyIQpAoEh4iIJ5JlgXIcgCXpIGoFwnGEQh6BEKBgmMIICHgIJCAiUAzgyUoAhwJohkiRgygwYpiGoKwzGIcgKCkNQNCMRIbCYCRYk4QoMiOchWDwNBjhiJJaDYTRiGiFwlCQAhOE8JBJHITIRgwZRZFCFCZBkOIUhKTRpCWAwgGYQ4El4NxlBifIWCcCYCFoaoMGaKYyG6GxlBmGJdhkCAWBIeA5g4U4QhMJAImkPIShRVxGgQJRlCIUISh+SJpnCZIeBgFgiHgO4OlOMINCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYgYiaHopiuaRakCbIsisSpGjYOwaHYKYMCkK5CA2IxrCwCwFigaJrkLTI6lcdANAEgIA=" to Nothing
		Get ComAdd of hoAppearance 1 "CP:3 -2 -2 2 2" to Nothing
		Get ComAdd of hoAppearance 4 "gBFLBCJwBAEHhEJAAEhABEICg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJeg8X4rluaZ3niGB+AQHx/EyShjjEVYqiUR5rnmex/GAB5+AIf4gEeXJFHyXZ3gCTAygyAociMKBKEKBIeCiCZyHYFAnCEeBkh+BghFgRIegOCgYCySAgh4CAkgINAMmMNIgCcCYjn4LoLmMCJGDKC5ijIagoDMYhCAoJg1A0IxEhsJgJFiThChCY5yFYPA0GOGIYloNhNGIaIXCUJACE4TwkEkchOFSFYlFkXhUCUCQZEYTglCSMxaEkYJIBmFJhDeDZZEYPwlgmQhghaGqVDoa4bGaeY6FGGZNlmFIBGEJ4jhiZQ5AkMhAg6E5JCkRoGCUSQ6B6CYiSCBIOh+DhJmmARiWQOJtDsCJSCSBwkXSLIRicaZ6HqIIomoIguhwIpphIHoWDsJ4mCGChpmqOpGheLIOkqUo2iya4DjGJxihiQoSj4IJaDaMpCjCWoGg6PgpBiQ4tHcQJQBAgI=" to Nothing
		Get ComAdd of hoAppearance 2 "CP:4 -2 -2 2 2" to Nothing
	Send Destroy to hoAppearance
	Set ComLinesAtRoot to OLEexGroupLinesAtRoot
	Set ComHasButtons to OLEexCustom
	Set ComHasButtonsCustom False to 16777216
	Set ComHasButtonsCustom True to 33554432
	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
		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" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1033:
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 2)

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 "XP:TREEVIEW 2 1" to Nothing
		Get ComAdd of hoAppearance 2 "XP:TREEVIEW 2 2" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground OLEexTreeGlyphOpen to |CI$1000000
	Set ComBackground OLEexTreeGlyphClose to |CI$2000000
	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 "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
		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" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1032:
How can I find if the control is running in DPI mode
Procedure OnCreate
	Forward Send OnCreate
	Showln (ComFormatABC(Self,"dpi = 1 ? `normal/stretch mode` : `dpi mode`",Nothing,Nothing,Nothing))
End_Procedure
1031:
How can I change the visual appearance of the +/- buttons (method 1)

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 "gBFLBCJwBAEHhEJAAEhABDwCg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJegef4zluaJ3nqPJeCYH4BAeX5TDLBpVGqKRRnwf4flefZtHsX54BYAR/F+EwVnUd5eAMMJKDIChygyIQpAoEh4iIJ5JlgXIcgCXpIGoFwnGEQh6BEKBgmMIICHgIJCAiUAzgyUoAhwJohkiRgygwYpiGoKwzGIcgKCkNQNCMRIbCYCRYk4QoMiOchWDwNBjhiJJaDYTRiGiFwlCQAhOE8JBJHITIRgwZRZFCFCZBkOIUhKTRpCWAwgGYQ4El4NxlBifIWCcCYCFoaoMGaKYyG6GxlBmGJdhkCAWBIeA5g4U4QhMJAImkPIShRVxGgQJRlCIUISh+SJpnCZIeBgFgiHgO4OlOMINCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYgYiaHopiuaRakCbIsisSpGjYOwaHYKYMCkK5CA2IxrCwCwFigaJrkLTI6lcdANAEgIA=" to Nothing
		Get ComAdd of hoAppearance 2 "gBFLBCJwBAEHhEJAAEhABEICg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJeg8X4rluaZ3niGB+AQHx/EyShjjEVYqiUR5rnmex/GAB5+AIf4gEeXJFHyXZ3gCTAygyAociMKBKEKBIeCiCZyHYFAnCEeBkh+BghFgRIegOCgYCySAgh4CAkgINAMmMNIgCcCYjn4LoLmMCJGDKC5ijIagoDMYhCAoJg1A0IxEhsJgJFiThChCY5yFYPA0GOGIYloNhNGIaIXCUJACE4TwkEkchOFSFYlFkXhUCUCQZEYTglCSMxaEkYJIBmFJhDeDZZEYPwlgmQhghaGqVDoa4bGaeY6FGGZNlmFIBGEJ4jhiZQ5AkMhAg6E5JCkRoGCUSQ6B6CYiSCBIOh+DhJmmARiWQOJtDsCJSCSBwkXSLIRicaZ6HqIIomoIguhwIpphIHoWDsJ4mCGChpmqOpGheLIOkqUo2iya4DjGJxihiQoSj4IJaDaMpCjCWoGg6PgpBiQ4tHcQJQBAgI=" to Nothing
	Send Destroy to hoAppearance
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComBackground OLEexTreeGlyphOpen to |CI$1000000
	Set ComBackground OLEexTreeGlyphClose to |CI$2000000
	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
		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" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1030:
I am using single selection, the question is if possible to select an item only when the user releases the mouse, as currently it selects the item as soon as the user clicks it
// Fired after a new item has been selected.
Procedure OnComSelectionChanged 
	Forward Send OnComSelectionChanged 
	Showln "SelectionChanged"
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComFreezeEvents True
	Set ComSingleSel to True
	Set ComSelectOnRelease 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 "Column" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComFormatColumn of hoColumn to "1 apos `A-Z`"
		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 "" to Nothing
		Set ComSelectItem of hoItems (ComAddItem(hoItems,"")) to True
		Get ComAddItem of hoItems "" to Nothing
	Send Destroy to hoItems
	Send ComFreezeEvents False
	Send ComEndUpdate
End_Procedure
1029:
Is it possible to select nothing
// Fired after a new item has been selected.
Procedure OnComSelectionChanged 
	Forward Send OnComSelectionChanged 
	Showln "SelectionChanged"
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComFreezeEvents True
	Set ComAllowSelectNothing 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 "Column" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComFormatColumn of hoColumn to "1 apos `A-Z`"
		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 "" to Nothing
		Set ComSelectItem of hoItems (ComAddItem(hoItems,"")) to True
		Get ComAddItem of hoItems "" to Nothing
	Send Destroy to hoItems
	Send ComFreezeEvents False
	Send ComEndUpdate
End_Procedure
1028:
How can I specify the color for control's selection when it loses the focus

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 "" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComAllowSizing of hoColumn to False
			Set ComAllowDragging of hoColumn to False
			Set ComAllowSort of hoColumn to False
			Set ComWidth of hoColumn to 24
			Set ComDef of hoColumn OLEexCellHasButton 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 "Column" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "1 apos `A-Z`"
		Send Destroy to hoColumn1
	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 "" to Nothing
		Set ComSelectItem of hoItems (ComAddItem(hoItems,"")) to True
		Get ComAddItem of hoItems "" to Nothing
	Send Destroy to hoItems
	Set ComBackground OLEexSelBackColorHide to (RGB(196,196,196))
	Set ComBackground OLEexSelForeColorHide to (RGB(0,0,1))
	Send ComEndUpdate
End_Procedure
1027:
How can I change the background color for checked items (EBN color, frame)

// Fired after cell's state has been changed.
Procedure OnComCellStateChanged HITEM   llItem Integer   llColIndex
	Forward Send OnComCellStateChanged llItem llColIndex
	Send ComRefresh
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComSelBackMode to OLEexTransparent
	Set ComDefaultItemHeight to 22
	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 "Tasks" 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 voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 2 "gBFLBCJwBAEHhEJAAEhABUkIQAAYAQGKIcBiAKBQAGYBIJDEMQ3DjAUBjMK4ZwTC4AIQjCK4JDKHYJRpHEZgLBMJAAGIZYhhUYRUiYMkiJBGGDIDiGGI2SJAcbTVIEcx9EyUJSgSTJOjCMokTTIU4TTLYASbJafJJhWSaAiyMouDIOMg1BDNIw/Hika6jOgKUisNJXRzWIBTbDlOQ3JqnbCjOQRSrQBoNDAMAiiaKlbwJPK9RoieQXfwUAJrXJcFqXFSLVxNBKAQEBA=" to Nothing
		Get ComAdd of hoAppearance 1 "CP:2 1 1 -1 -1" to Nothing
	Send Destroy to hoAppearance
	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 "%CS0 = 1" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBackColor of hoConditionalFormat to |CI$1000000
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	Set ComHeaderVisible to True
	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 "Project" to h
		Variant hChild
		Get ComInsertItem of hoItems h "Task 1" to hChild
		Set ComSelectItem of hoItems hChild to True
		Get ComInsertItem of hoItems h "Task 2" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Get ComInsertItem of hoItems h "Task 3" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1026:
How can I change the caption of the checked items (sample 2)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	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 "Tasks" 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
			Set ComDef of hoColumn OLEexCellValueFormat to 1
			Set ComFormatColumn of hoColumn to "%CS0 = 1 ? `<bgcolor=000000><fgcolor=FFFFFF> ` + value + ` </fgcolor></bgcolor>` : value"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Set ComHeaderVisible to True
	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 "Project" to h
		Variant hChild
		Get ComInsertItem of hoItems h "Task 1" to hChild
		Set ComSelectItem of hoItems hChild to True
		Get ComInsertItem of hoItems h "Task 2" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Get ComInsertItem of hoItems h "Task 3" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1025:
How can I change the caption of the checked items (sample 1)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	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 "Tasks" 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
			Set ComDef of hoColumn OLEexCellValueFormat to 1
			Set ComFormatColumn of hoColumn to "value + (%CS0 = 1 ? `<r><fgcolor=808080>(checked)` : ``)"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Set ComHeaderVisible to True
	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 "Project" to h
		Variant hChild
		Get ComInsertItem of hoItems h "Task 1" to hChild
		Set ComSelectItem of hoItems hChild to True
		Get ComInsertItem of hoItems h "Task 2" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Get ComInsertItem of hoItems h "Task 3" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1024:
How can I change the font for the checked items

// Fired after cell's state has been changed.
Procedure OnComCellStateChanged HITEM   llItem Integer   llColIndex
	Forward Send OnComCellStateChanged llItem llColIndex
	Send ComRefresh
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComDefaultItemHeight to 22
	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 "Tasks" 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 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 "%CS0 = 1" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Variant f
			Get Comcreateobject of hoConditionalFormat "StdFont" to f
				Variant v
					Variant voStdFont
					Get ComFont to voStdFont
					Handle hoStdFont
					Get Create (RefClass(cComStdFont)) to hoStdFont
					Set pvComObject of hoStdFont to voStdFont
						Get ComName of hoStdFont to v
					Send Destroy to hoStdFont
				Set ComName of hoConditionalFormat to v
				Set ComSize of hoConditionalFormat to 12
			Send Destroy to hoConditionalFormat
			Set ComFont of hoConditionalFormats to f
		Send Destroy to hoConditionalFormats
	Set ComHeaderVisible to True
	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 "Project" to h
		Variant hChild
		Get ComInsertItem of hoItems h "Task 1" to hChild
		Set ComSelectItem of hoItems hChild to True
		Get ComInsertItem of hoItems h "Task 2" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Get ComInsertItem of hoItems h "Task 3" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1023:
How can I bold the checked items

// Fired after cell's state has been changed.
Procedure OnComCellStateChanged HITEM   llItem Integer   llColIndex
	Forward Send OnComCellStateChanged llItem llColIndex
	Send ComRefresh
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	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 "Tasks" 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 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 "%CS0 = 1" 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 ComHeaderVisible to True
	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 "Project" to h
		Variant hChild
		Get ComInsertItem of hoItems h "Task 1" to hChild
		Set ComSelectItem of hoItems hChild to True
		Get ComInsertItem of hoItems h "Task 2" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Get ComInsertItem of hoItems h "Task 3" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1022:
How can I change the foreground color for checked items

// Fired after cell's state has been changed.
Procedure OnComCellStateChanged HITEM   llItem Integer   llColIndex
	Forward Send OnComCellStateChanged llItem llColIndex
	Send ComRefresh
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComSelBackMode to OLEexTransparent
	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 "Tasks" 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 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 "%CS0 = 1" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComForeColor of hoConditionalFormat to (RGB(255,128,128))
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	Set ComHeaderVisible to True
	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 "Project" to h
		Variant hChild
		Get ComInsertItem of hoItems h "Task 1" to hChild
		Set ComSelectItem of hoItems hChild to True
		Get ComInsertItem of hoItems h "Task 2" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Get ComInsertItem of hoItems h "Task 3" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1021:
How can I change the background color for checked items (solid color)

// Fired after cell's state has been changed.
Procedure OnComCellStateChanged HITEM   llItem Integer   llColIndex
	Forward Send OnComCellStateChanged llItem llColIndex
	Send ComRefresh
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComSelBackMode to OLEexTransparent
	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 "Tasks" 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 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 "%CS0 = 1" Nothing to voConditionalFormat
		Handle hoConditionalFormat
		Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
		Set pvComObject of hoConditionalFormat to voConditionalFormat
			Set ComBackColor of hoConditionalFormat to (RGB(255,128,128))
		Send Destroy to hoConditionalFormat
	Send Destroy to hoConditionalFormats
	Set ComHeaderVisible to True
	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 "Project" to h
		Variant hChild
		Get ComInsertItem of hoItems h "Task 1" to hChild
		Set ComSelectItem of hoItems hChild to True
		Get ComInsertItem of hoItems h "Task 2" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Get ComInsertItem of hoItems h "Task 3" to hChild
		Set ComCellState of hoItems hChild Nothing to 1
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1020:
How can I export the cell's state as well

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 "C1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "C2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "1 index `A-Z`"
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "C3" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFormatColumn of hoColumn2 to "100 index ``"
		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
		Get ComAddItem of hoItems "Item 1" to Nothing
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 2")) Nothing to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 3")) Nothing to 1
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln "Export CSV Items including Check-State:"
	Send ComBeginUpdate
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn3
		Get ComAdd of hoColumns1 "Check" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComPosition of hoColumn3 to 0
			Set ComFormatColumn of hoColumn3 to "%CS0"
		Send Destroy to hoColumn3
	Send Destroy to hoColumns1
	Showln (ComExport(Self,"",Nothing))
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Send ComRemove of hoColumns2 "Check"
	Send Destroy to hoColumns2
	Send ComEndUpdate
End_Procedure
1019:
Is it possible to customize the editor selection colour of the built in text editor, from standard blue to black

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSelBackColor to (RGB(0,0,0))
	Set ComSelForeColor to (RGB(255,255,255))
	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 OLEMaskType
				Set ComMask of hoEditor to ";;;rich"
			Send Destroy to hoEditor
		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 "" to Nothing
		Get ComAddItem of hoItems "Just a text" to Nothing
		Get ComAddItem of hoItems "" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1018:
Is it possible to customize the editor selection colour of the built in dropdown editor, from standard blue to black

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSelBackColor to (RGB(0,0,0))
	Set ComSelForeColor to (RGB(255,255,255))
	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 "DropDown" 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 ComAddItem of hoEditor 1 "This is just the first item" Nothing
				Send ComAddItem of hoEditor 2 "This is just the second item" Nothing
				Send ComAddItem of hoEditor 3 "This is just the third item" Nothing
				Set ComEditType of hoEditor to OLEDropDownType
				Set ComMask of hoEditor to ";;;rich"
			Send Destroy to hoEditor
		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 "" to Nothing
		Get ComAddItem of hoItems "Just a text" to Nothing
		Get ComAddItem of hoItems "" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1017:
The BeforeExpandItem event is fired when clicking the drop down filter button. What we can do to prevent that
// Fired before an item is about to be expanded (collapsed).
Procedure OnComBeforeExpandItem HITEM   llItem Variant   llCancel
	Forward Send OnComBeforeExpandItem llItem llCancel
	Showln "BeforeExpandItem" llItem
	Showln "ColumnFromPoint" (ComColumnFromPoint(Self,-1,-1))
	Showln "ColumnFromPoint return -1, if the user clicks the +/- glitch, else it returns the index of the column where the click occurs."
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComInsertItem of hoItems llItem "new child" to Nothing
	Send Destroy to hoItems
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	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
		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 ComItemHasChildren of hoItems1 (ComInsertItem(hoItems1,,"Group 1")) to True
		Set ComItemHasChildren of hoItems1 (ComInsertItem(hoItems1,,"Group 2")) to True
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
1016:
How do I change the drop down filter icon/button (black)

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 "gBFLBCJwBAEHhEJAAEhABXUIQAAYAQGKIcBiAKBQAGYBIJDEMgzDDAUBjKKocQTC4AIQjCK4JDKHYJRpHEZyCA8EhqGASRAFUQBYiWE4oSpLABQaK0ZwIGyRIrkGQgQgmPYDSDNU4zVIEEglBI0TDNczhNDENgtGYaJqHIYpZBcM40TKkEZoSIITZcRrOEBiRL1S0RBhGcRUHZlWzdN64LhuK47UrWdD/XhdVzXRbjfz1Oq+bxve48Br7A5yYThdr4LhOFQ3RjIL4xbIcUwGe6VZhjOLZXjmO49T69HTtOCYBEBA" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground OLEexHeaderFilterBarButton to |CI$1000000
	Set ComBackground OLEexCursorHoverColumn to -1
	Set ComHeaderAppearance to OLENone2
	Set ComBackColorHeader to (RGB(0,0,0))
	Set ComForeColorHeader to (RGB(255,255,255))
	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 "Filter" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComAllowSort of hoColumn to False
			Set ComAllowDragging of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Send ComEndUpdate
End_Procedure
1015:
How do I change the drop down filter icon/button (white)

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 2 "gBFLBCJwBAEHhEJAAEhABX8GACAADACAxSDEMQBQKAAzQFAYbhgHCGAAGQaBUgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwYgmNYiTLAcgANJ0WBaGIZJ4gOT5fDKMoEDRRYADFCscwxJybQAqGQKKb+VgAVY/cTyBIAEQSKA0TDOQ5TSKWB4JPZQRBEbZMNBtBIUJquKaqShdQJCU5FdY3Xblez9P7AMBwLFEC4NQ8YNYuPhjR4dRTIMhvVAsUArFh8Zg9GZZFjmDIDT4ydBLTQwcyVIKnP5qOa6XbmPoCQDYKxZHYxPzVDa3axuL76dqCAT7XrXNy1TbNRrzQKfcJqfCbdw2YaDZLOOT3fjuI4hhKaRzFAHJ+jYQ4xHuY4gHuGIXGeExqC8Tp6C+PoEm+G5ImycRgh0XwvDGa5rgOeoejyXwnFeQp2mkf5ClgBB9gCWIYAwfYAEKV58mkdwOggNArgOXY2EWLoDkKOA0mgbhOGgZApgaSBIHWSYHSmbApgYThmESZYJkIeIkgeCpfliLIHgpMIcmUYYYmODAlg2SI4mWfRfGOEguDcCRjFYAJihCQhJBSDoRmONgKEcI4kFCEJhhOVYTmYnAlEAQhWBMJYJGYWoWmWSR2F6F5lnkWAQhUAgpEieRWEuSYkjWGpmkmNhuhuZwJkYcocmaaYkjyEhngnUA6lEFAlAEgI=" to Nothing
		Get ComAdd of hoAppearance 1 "CP:2 -4 -4 2 4" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground OLEexHeaderFilterBarButton to |CI$1000000
	Set ComBackground OLEexCursorHoverColumn to (ComBackColor(Self))
	Set ComHeaderAppearance to OLENone2
	Set ComHeaderHeight to 24
	Set ComBackColorHeader to (RGB(255,255,255))
	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 "Filter" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComAllowSort of hoColumn to False
			Set ComAllowDragging of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Send ComEndUpdate
End_Procedure
1014:
How can I draw a solid frame around the the focusing item

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSingleSel to False
	Set ComDefaultItemHeight to 20
	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 "gBFLBCJwBAEHhEJAAEhABOkGACAADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBKUQSDqEYyjGLIXAWCYSAAMIwDKAUEwpFAZBhgeDYMiSNoYDJCM4wHIURRJFCUJSGWQpTgSIgyT5HFIxXKoASbJabZLhWS6EpWOotTbIQQRYCkEyfKKfZyGURZQqOKA1DBZErWTJESRFJqLazgO4LAhyQYrVgAErzVKVCRNOqbJzADApdpGQJTULDNTQHRFIyhOSnIRrWbMAhid6JUZiVT4dBOIYhSYANAqCwLFqrDJmWrpV5WZjlZ47V6BdAyXJsIrmFJEXaOGhyDDlGybSDZYryfZhUziUw4XjbWwZDqPF6DKTTdSGLREE8WZVlURZvDaep3C+AY8kAYRgGCCBJECUhjDoHROEYWgoAGTQ1CEEx9lGMY0CQUYSnuZQDBGBYFlOH5+H+igGAKAJgEgFgGgGVgDn4CoCmCSA2A6A5hAgDgQgSYRIE4EoFGGCBiBeBhhkgPgbgcYgICoH4IGGWIOCSBhiGiHgVgoYooFoAoLGIWI+DCCgjCiTgrgII4ImYOoOmOSJ2AYOpWlQDQBICA=" to Nothing
	Send Destroy to hoAppearance
	Set ComShowFocusRect to True
	Set ComBackground OLEexShowFocusRect to |CI$1000000
	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 "P1" 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 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" 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
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1013:
The frame around the focusing item is not very clear. Can I show it larger or more cleared (sample 2)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSingleSel to False
	Set ComDefaultItemHeight to 20
	Set ComShowFocusRect to True
	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 2 "gBFLBCJwBAEHhEJAAEhABPEGACAADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBKUQSDqEYyjGLIXAWCYSAAMIwDKAUEwpFAZBhgeCRUgyJI3RgMUIzVAcRRFEiUJQlIZZCjOAw0SIMU7xZRcNxsACnaZnCR4NiuRYiUhOcqzRIQIQ4CiEahqOgJbDUJYwWZKAyjBY8XTZFCSJCpeJ6egOc5jRxQUp1WAEXx3GSsJKvCZ5cADBY+VLQNS0JBtMSTKSLaiuWoIJqCPaDRheWKQJh1NSnLqEcjyYANDxDCZlWzAYxWTZ2Uz7N7PbB0HY4DyPGKZYrfESVRbQcZNS6nNigPI9XhfGq6VjRe63ZaOaYpWrnOJqTRWjOKYujWdZ2BGO5lkuBAAkmcQkDmDBEAwEQJCgGhMGcQ4pkiSxGAAOYmkQIhvkYNg2gSCgyj+LI4GIMIwF2XQoAYAoAmASAWAaAZgggJgKFiT54DYDoDmECBGBKBJgGgTgWgWYRoFYGIGmGOBqByB5hCgegggiYJYgoJIICIaIeByChiigYgsgsYYYBYMIKCMKJOCuDRjGiOgLg6Y5InYPoPmQCAkmsXAQDQBCAg=" to Nothing
		Get ComAdd of hoAppearance 3 "CP:2 -3 0 3 0" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground OLEexShowFocusRect to |CI$3010101
	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 "P1" 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 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" 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
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1012:
The frame around the focusing item is not very clear. Can I show it larger or more cleared (sample 1)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSingleSel to False
	Set ComShowFocusRect to True
	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 "gBFLBCJwBAEHhEJAAEhABHoDg6AADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBIZQ7BKNIxjSJwFiCCQwSDKEjyCKcGRHF6MI6gOYpCgOIYjRJNIASVAceAAGaUZrjSgobjmOYhAJCLqhYIgASXJqLaBlOCaAieSc+QhjQJIJoeCZXU5TFg1BTsOhqEqcRiseaRVDCaIJWzbdYWLDdNQHHKYLjnWorbpSJZ5XjNEySDQkMS9PrEJ7vST8FBCdAABLJUB2BR9RwxRafKpnWwJDpmCaOQLXEB5DK1PyVMTKYrtGy7GrIAJxWxbV4UHh+QABOzIMAvHKJMwvHYcUZne5XVLeF41HbONogPaJZyIAK2cLROq6Xo7GEcJZEcLASB4DwvgWUZlE6AQQhKAYkkYdA6hyDIwHgSoqFwQgmnsYxjGgSIiBOTpSEiAwRgOJI7j4JAHA6U5wm0MpPlOBIjD8TZiGYCICiCGAuA6AxhAgMgSgOYQ4DYBg/g6cw1n+ABOmMMJ9DmCwjnScw4RsVJngkYh4hoKIKmKKI2CmC5ikiQgqgiT5jhyMw8g4QwIn0OIKEiCJhD8DwTGyfA7k0WQOEWEQkGkJhIhKZB5DYSoTiSCQEn4PQOCOXJcCeIJjliaIQk0aRyF4O5llmAhfhgZhJg4ZoYiaAxYn4PZOhOZJaCUZYTiYQw1mcOZUm+HQnHmWh4h6Z4pnYeYfk0eYsmqG4nAgNJ2DqD5DkCWoiGiOgqgyI5omoRoNiSaQKFKEojCaM4ugSFhOjkAJcieKgDkaH4oioGoOiaKRqgqEoqDddwyhuAxPgOMJ8DyDZqk6NYtCsapmjiLprHqdo6i+K5K1oPhOlqPgKD4DpjnII4yiOewuk6MxtAsMpSjObQ7EaT4wk6ewYn0PgPAiCJkjeLgDk6X44i4G4OmaORuguEpqDkLAzkaWg+E8GIUmaPIvEOVpzj2Lxbl6eo+G+S5in4OYPmOaJyjuTwjnYWpBg6DAjAqQZwkwJwNkKcJsEcEJCDBEpaD6Dw8BiapGjGSgfB2RpxmyBwgkicZ8haBw/g+M5TBcPQPlOXJskscp8jsMJMnMLJXDGTZzEyYw2kwMoDlcFw9i2M4/EGUJPg0CxFlENBtCcSJSnQfQ0m+SgPHsaJ7lALZLG6XZVHWDRfFqVY1k0ZxdladYTnifJUGaeAWAeMnSGcGWgBObJ3lWbwdjKW5cHcTZPHaLkN4GxXDlFqFsA4uRbBOGAFAEIzAsDEFOBkfYqR4D6AOBEYo8QuBvAmMceInBDgcD0JwOIqQyJ1DMAwG4IANDnHSMoK4QhOgMBGNEIQvQWAdGenETIswGiddsAAQAgCAgA==" to Nothing
		Get ComAdd of hoAppearance 2 "gBFLBCJwBAEHhEJAAEhABeEGACAADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADDFIBQSLAYROGSDJBGODJDjWGIeQLOEhQHIMRxPE6UYLhWYpBDKPYcUbGc7yBBMVwGf59XzACoKSheQIVSDQkw6Fo6NYhAxHALyNRkBy8f60KjtGpodDUJYvW5JYyjBZ8EznOqbJBkeJ7BgOe5NQjaD72VgdWQJFSWJajWYYJDOJY2ZAAE5TVINEwxJbDaylChIdxaF6WAzZEBhBYoATPNLBMrhWqKDw2XaQWBCOgwHYeR5LU7BdRwbIrRq2eAAXbcVyXfDddZlBK+QA0SK9lRVTKvJZmKgBWw1COSxmAAGw4kcNx1iKFBiCAfQsG8lJemucg7nsXpUHOOxrm+DI3jOH4XAOBx2nscw0j2HhPG4L5uGEVIECQCBCEUAYkGMHQHFGSBlGaAxkEgQgTGCVBsDYQhCgQJZrHKUggGEShkFGNgIlsNpPnMHJHD+TADAIJIJiIWIeCqChikiIgmgiD5zHyXxgiACJKCuC4jHiZgtg6I4IlkCQwkwOIonMPJjEkFhGhGZBpA4KoMBCGJuEiE5lAkGg7hMY4JEYVoUCUNAOE6FZl0KWQACWOR2GKF5mBmChchkJRZhoXYaCKKYqGuDglEmNhuhWZpIiYc4dCcCRqGmHZlgm2YxAwSQKESHwkFkKgpiAIAIH4PIimOOg2DiChoiQJRRD+TZDHCfwyAyCgyg+JpiioYJ/DgDgIlECQ6lwRAEICA=" to Nothing
		Get ComAdd of hoAppearance 3 "CP:2 -2 0 2 0" to Nothing
	Send Destroy to hoAppearance
	Set ComSelBackColor to |CI$1000000
	Set ComSelForeColor to (RGB(0,0,0))
	Set ComBackground OLEexShowFocusRect to |CI$3ff0000
	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 "P1" 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 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" 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
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1011:
I have a column right-aligned. How can I display its check box aligned to the right, as it appears to the left of the cell's caption

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to True
	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 "Left" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComAllowSizing of hoColumn to False
			Set ComWidth of hoColumn to 96
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComFormatColumn of hoColumn to "0 pos `A-Z`"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Center" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComHeaderAlignment of hoColumn1 to OLECenterAlignment
			Set ComAlignment of hoColumn1 to (ComHeaderAlignment(hoColumn1))
			Set ComAllowSizing of hoColumn1 to False
			Set ComWidth of hoColumn1 to 96
			Set ComDef of hoColumn1 OLEexCellHasCheckBox to True
			Set ComFormatColumn of hoColumn1 to "0 pos `A-Z`"
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Right" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComHeaderAlignment of hoColumn2 to OLERightAlignment
			Set ComAlignment of hoColumn2 to (ComHeaderAlignment(hoColumn2))
			Set ComAllowSizing of hoColumn2 to False
			Set ComWidth of hoColumn2 to 96
			Set ComDef of hoColumn2 OLEexCellHasCheckBox to True
			Set ComFormatColumn of hoColumn2 to "0 pos `A-Z`"
			Set ComDef of hoColumn2 OLEexCellDrawPartsOrder to "caption,check,icon,icons,picture"
		Send Destroy to hoColumn2
		Get ComAdd of hoColumns "" 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
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 1")) 3 to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 2")) 2 to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 3")) 1 to 1
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1010:
Can I display the column's multiple-lines caption vertically oriented (method 2)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderHeight to 48
	Set ComColumnAutoResize 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 "And others ..." to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComHTMLCaption of hoColumn to "First Column"
			Set ComHeaderVertical of hoColumn to True
			Set ComWidth of hoColumn to 36
			Set ComAllowSizing of hoColumn to False
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComDef of hoColumn OLEexCellPaddingLeft to 8
			Set ComPosition of hoColumn to 0
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComHTMLCaption of hoColumn1 to "<c><b>Second Column"
			Set ComHeaderVertical of hoColumn1 to True
			Set ComWidth of hoColumn1 to 36
			Set ComAllowSizing of hoColumn1 to False
			Set ComDef of hoColumn1 OLEexCellHasCheckBox to True
			Set ComDef of hoColumn1 OLEexCellPaddingLeft to 8
			Set ComPosition of hoColumn1 to 1
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComHTMLCaption of hoColumn2 to "<r>Third Column"
			Set ComHeaderVertical of hoColumn2 to True
			Set ComWidth of hoColumn2 to 36
			Set ComAllowSizing of hoColumn2 to False
			Set ComDef of hoColumn2 OLEexCellHasCheckBox to True
			Set ComDef of hoColumn2 OLEexCellPaddingLeft to 8
			Set ComPosition of hoColumn2 to 2
		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
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 1")) 3 to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 2")) 2 to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 3")) 1 to 1
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1009:
Can I display the column's multiple-lines caption vertically oriented (method 1)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderHeight to 48
	Set ComHeaderSingleLine to False
	Set ComColumnAutoResize 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 "And others ..." to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "First Column" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComHeaderVertical of hoColumn to True
			Set ComWidth of hoColumn to 36
			Set ComAllowSizing of hoColumn to False
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComDef of hoColumn OLEexCellPaddingLeft to 8
			Set ComPosition of hoColumn to 0
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Second Column" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComHeaderBold of hoColumn1 to True
			Set ComHeaderVertical of hoColumn1 to True
			Set ComWidth of hoColumn1 to 36
			Set ComAllowSizing of hoColumn1 to False
			Set ComDef of hoColumn1 OLEexCellHasCheckBox to True
			Set ComDef of hoColumn1 OLEexCellPaddingLeft to 8
			Set ComPosition of hoColumn1 to 1
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Third Column" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComHeaderVertical of hoColumn2 to True
			Set ComWidth of hoColumn2 to 36
			Set ComAllowSizing of hoColumn2 to False
			Set ComDef of hoColumn2 OLEexCellHasCheckBox to True
			Set ComDef of hoColumn2 OLEexCellPaddingLeft to 8
			Set ComPosition of hoColumn2 to 2
		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
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 1")) 3 to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 2")) 2 to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 3")) 1 to 1
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1008:
Can I display the column's caption vertically oriented (method 2)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderHeight to 48
	Set ComColumnAutoResize 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 "And others ..." to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComHTMLCaption of hoColumn to "First"
			Set ComHeaderVertical of hoColumn to True
			Set ComWidth of hoColumn to 20
			Set ComAllowSizing of hoColumn to False
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComPosition of hoColumn to 0
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComHTMLCaption of hoColumn1 to "<c><b>Second"
			Set ComHeaderVertical of hoColumn1 to True
			Set ComWidth of hoColumn1 to 20
			Set ComAllowSizing of hoColumn1 to False
			Set ComDef of hoColumn1 OLEexCellHasCheckBox to True
			Set ComPosition of hoColumn1 to 1
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComHTMLCaption of hoColumn2 to "<r>Third"
			Set ComHeaderVertical of hoColumn2 to True
			Set ComWidth of hoColumn2 to 20
			Set ComAllowSizing of hoColumn2 to False
			Set ComDef of hoColumn2 OLEexCellHasCheckBox to True
			Set ComPosition of hoColumn2 to 2
		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
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 1")) 3 to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 2")) 2 to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 3")) 1 to 1
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1007:
Can I display the column's caption vertically oriented (method 1)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHeaderHeight to 48
	Set ComColumnAutoResize 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 "And others ..." to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "First" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComHeaderVertical of hoColumn to True
			Set ComWidth of hoColumn to 20
			Set ComAllowSizing of hoColumn to False
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComPosition of hoColumn to 0
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Second" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComHeaderBold of hoColumn1 to True
			Set ComHeaderVertical of hoColumn1 to True
			Set ComWidth of hoColumn1 to 20
			Set ComAllowSizing of hoColumn1 to False
			Set ComDef of hoColumn1 OLEexCellHasCheckBox to True
			Set ComPosition of hoColumn1 to 1
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Third" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComHeaderVertical of hoColumn2 to True
			Set ComWidth of hoColumn2 to 20
			Set ComAllowSizing of hoColumn2 to False
			Set ComDef of hoColumn2 OLEexCellHasCheckBox to True
			Set ComPosition of hoColumn2 to 2
		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
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 1")) 3 to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 2")) 2 to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 3")) 1 to 1
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1006:
How do I automatically bold items being checked

// Fired after cell's state has been changed.
Procedure OnComCellStateChanged HITEM   llItem Integer   llColIndex
	Forward Send OnComCellStateChanged llItem llColIndex
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSelBackMode to OLEexTransparent
	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 "%CS0" "check" 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
		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 OLEexCellHasCheckBox 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 vColumnCaption
			Variant voConditionalFormats1
			Get ComConditionalFormats to voConditionalFormats1
			Handle hoConditionalFormats1
			Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats1
			Set pvComObject of hoConditionalFormats1 to voConditionalFormats1
				Variant voConditionalFormat1
				Get ComItem of hoConditionalFormats1 "check" to voConditionalFormat1
				Handle hoConditionalFormat1
				Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat1
				Set pvComObject of hoConditionalFormat1 to voConditionalFormat1
					Variant voConditionalFormat2
					Get ComItem of hoConditionalFormat1 "check" to voConditionalFormat2
					Handle hoConditionalFormat2
					Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat2
					Set pvComObject of hoConditionalFormat2 to voConditionalFormat2
						Get ComExpression of hoConditionalFormat2 to vColumnCaption
					Send Destroy to hoConditionalFormat2
				Send Destroy to hoConditionalFormat1
			Send Destroy to hoConditionalFormats1
				Variant voColumn1
		Get ComAdd of hoColumns1 vColumnCaption to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Variant v
				Variant voConditionalFormats2
				Get ComConditionalFormats to voConditionalFormats2
				Handle hoConditionalFormats2
				Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats2
				Set pvComObject of hoConditionalFormats2 to voConditionalFormats2
					Variant voConditionalFormat3
					Get ComItem of hoConditionalFormats2 "check" to voConditionalFormat3
					Handle hoConditionalFormat3
					Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat3
					Set pvComObject of hoConditionalFormat3 to voConditionalFormat3
						Variant voConditionalFormat4
						Get ComItem of hoConditionalFormat3 "check" to voConditionalFormat4
						Handle hoConditionalFormat4
						Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat4
						Set pvComObject of hoConditionalFormat4 to voConditionalFormat4
							Get ComExpression of hoConditionalFormat4 to v
						Send Destroy to hoConditionalFormat4
					Send Destroy to hoConditionalFormat3
				Send Destroy to hoConditionalFormats2
			Set ComFormatColumn of hoColumn1 to v
		Send Destroy to hoColumn1
	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 1" to Nothing
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 2")) 0 to 1
		Get ComAddItem of hoItems "Item 3" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1005:
How can I use the CellState with ConditionalFormat/ComputedField/FormatColumn

// Fired after cell's state has been changed.
Procedure OnComCellStateChanged HITEM   llItem Integer   llColIndex
	Forward Send OnComCellStateChanged llItem llColIndex
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexGroupLinesInsideLeaf
	Set ComSelBackMode to OLEexTransparent
	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 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 "Format" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "%CS0"
			Set ComCaption of hoColumn1 to (ComFormatColumn(hoColumn1))
			Set ComDef of hoColumn1 OLEexCellForeColor to 8421504
			Set ComDef of hoColumn1 OLEexHeaderForeColor to (ComDef(hoColumn1,OLEexCellForeColor))
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	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" to h
		Get ComInsertItem of hoItems h "Item 1" to Nothing
		Set ComCellState of hoItems (ComInsertItem(hoItems,h,"Item 2")) 0 to 1
		Set ComCellState of hoItems (ComInsertItem(hoItems,h,"Item 3")) 0 to 1
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1004:
How can I use the CellData with ConditionalFormat/ComputedField/FormatColumn

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 "Items" 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
		Variant voColumn
		Get ComAdd of hoColumns1 "Format" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComFormatColumn of hoColumn to "%CD0"
			Set ComCaption of hoColumn to (ComFormatColumn(hoColumn))
			Set ComDef of hoColumn OLEexCellForeColor to 8421504
			Set ComDef of hoColumn OLEexHeaderForeColor to (ComDef(hoColumn,OLEexCellForeColor))
		Send Destroy to hoColumn
	Send Destroy to hoColumns1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellData of hoItems (ComAddItem(hoItems,"Item 1")) 0 to 1234
		Set ComCellData of hoItems (ComAddItem(hoItems,"Item 2")) 0 to "this is just an user data"
		Set ComCellData of hoItems (ComAddItem(hoItems,"Item 3")) 0 to "1/1/2001"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1003:
How can I use the CellValue/CellCaption with ConditionalFormat/ComputedField/FormatColumn

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 "Items" 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 OLEDropDownListType
				Send ComAddItem of hoEditor 1 "Item 1" Nothing
				Send ComAddItem of hoEditor 2 "Item 2" Nothing
				Send ComAddItem of hoEditor 3 "Item 3" Nothing
			Send Destroy to hoEditor
		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 "Format" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "%0"
			Set ComCaption of hoColumn1 to (ComFormatColumn(hoColumn1))
			Set ComDef of hoColumn1 OLEexCellForeColor to 8421504
			Set ComDef of hoColumn1 OLEexHeaderForeColor to (ComDef(hoColumn1,OLEexCellForeColor))
			Set ComAllowSizing of hoColumn1 to False
		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 "Format" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFormatColumn of hoColumn2 to "%C0"
			Set ComCaption of hoColumn2 to (ComFormatColumn(hoColumn2))
			Set ComDef of hoColumn2 OLEexCellForeColor to 8421504
			Set ComDef of hoColumn2 OLEexHeaderForeColor to (ComDef(hoColumn2,OLEexCellForeColor))
			Set ComAllowSizing of hoColumn2 to False
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems 1 to Nothing
		Set ComCellValue of hoItems (ComAddItem(hoItems,0)) 0 to 2
		Get ComAddItem of hoItems 2 to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1002:
Can I display the radio-button with a solid color

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComRadioImage False to 32699122
	Set ComRadioImage True to 16777216
	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 "Check" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasRadioButton to True
		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 "Radio 1" to Nothing
		Set ComCellState of hoItems (ComAddItem(hoItems,"Radio 2")) 0 to 1
		Get ComAddItem of hoItems "Radio 1" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
1001:
Can I display the check-box with a solid color

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComCheckImage OLEUnchecked to 32699122
	Set ComCheckImage OLEChecked to 16777216
	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 "Check" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		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 "Check 1" to Nothing
		Set ComCellState of hoItems (ComAddItem(hoItems,"Check 2")) 0 to 1
		Get ComAddItem of hoItems "Check 3" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure