957:
Type of wraps the cell's caption support (Sample 2)

Dim oGantt as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Columns as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.HeaderSingleLine = .f.
oGantt.HeaderHeight = 36
oGantt.DrawGridLines = -2
oGantt.ColumnAutoResize = .f.
oGantt.ScrollBySingleLine = .t.
var_Columns = oGantt.Columns
	var_Column = var_Columns.Add("Single-Line (exCaptionSingleLine)")
		var_Column.Width = 96
		' var_Column.Def(17) = 1
		oGantt.TemplateDef = "dim var_Column"
		oGantt.TemplateDef = var_Column
		oGantt.Template = "var_Column.Def(17) = 1"

		' var_Column.Def(16) = -1
		oGantt.TemplateDef = "dim var_Column"
		oGantt.TemplateDef = var_Column
		oGantt.Template = "var_Column.Def(16) = -1"

	var_Column1 = var_Columns.Add("Word-Wrap (exCaptionWordWrap)")
		var_Column1.Width = 96
		' var_Column1.Def(17) = 1
		oGantt.TemplateDef = "dim var_Column1"
		oGantt.TemplateDef = var_Column1
		oGantt.Template = "var_Column1.Def(17) = 1"

		' var_Column1.Def(16) = 0
		oGantt.TemplateDef = "dim var_Column1"
		oGantt.TemplateDef = var_Column1
		oGantt.Template = "var_Column1.Def(16) = 0"

		var_Column1.FormatColumn = "%0"
	var_Column2 = var_Columns.Add("Break-Wrap (exCaptionBreakWrap)")
		var_Column2.Width = 96
		' var_Column2.Def(17) = 1
		oGantt.TemplateDef = "dim var_Column2"
		oGantt.TemplateDef = var_Column2
		oGantt.Template = "var_Column2.Def(17) = 1"

		' var_Column2.Def(16) = 1
		oGantt.TemplateDef = "dim var_Column2"
		oGantt.TemplateDef = var_Column2
		oGantt.Template = "var_Column2.Def(16) = 1"

		var_Column2.FormatColumn = "%0"
var_Items = oGantt.Items
	var_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.")
	var_Items.AddItem("This is the <b>first</b> line.\r\nThis is the <b>second</b> line.\r\nThis is the <b>third</b> line.")
oGantt.EndUpdate()

956:
Type of wraps the cell's caption support (Sample 1)

Dim h as N
Dim oGantt as P
Dim var_Column as local
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.HeaderSingleLine = .f.
oGantt.HeaderHeight = 36
oGantt.DrawGridLines = -2
oGantt.ColumnAutoResize = .f.
oGantt.ScrollBySingleLine = .t.
' oGantt.Columns.Add("Default").Width = 128
var_Column = oGantt.Columns.Add("Default")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.Width = 128"

var_Items = oGantt.Items
	h = var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
	h = var_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.")
	' var_Items.CellCaptionFormat(h,0) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellCaptionFormat(h,0) = 1"

	h = var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
	' var_Items.CellSingleLine(h,0) = 0
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellSingleLine(h,0) = 0"

	h = var_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.")
	' var_Items.CellCaptionFormat(h,0) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellCaptionFormat(h,0) = 1"

	' var_Items.CellSingleLine(h,0) = 0
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellSingleLine(h,0) = 0"

	h = var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
	' var_Items.CellSingleLine(h,0) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellSingleLine(h,0) = 1"

	h = var_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.")
	' var_Items.CellCaptionFormat(h,0) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellCaptionFormat(h,0) = 1"

	' var_Items.CellSingleLine(h,0) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellSingleLine(h,0) = 1"

oGantt.EndUpdate()

955:
Can I break the cell's caption using the line break <br> or \r\n (Sample 2)

Dim oGantt as P
Dim var_Column as local
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.DrawGridLines = -2
oGantt.ColumnAutoResize = .f.
oGantt.ScrollBySingleLine = .t.
' oGantt.Columns.Add("Default").Width = 128
var_Column = oGantt.Columns.Add("Default")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.Width = 128"

var_Items = oGantt.Items
	' var_Items.CellSingleLine(var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line."),0) = 1
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellSingleLine(AddItem(`This is the first line.\r\nThis is the second line.\r\nThis is the third line.`),0) = 1"

	var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
oGantt.EndUpdate()

954:
Can I break the cell's caption using the line break <br> or \r\n (Sample 1)

Dim oGantt as P
Dim var_Column as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.DrawGridLines = -2
oGantt.ColumnAutoResize = .f.
oGantt.ScrollBySingleLine = .t.
var_Column = oGantt.Columns.Add("Default")
	var_Column.Width = 128
	' var_Column.Def(16) = 1
	oGantt.TemplateDef = "dim var_Column"
	oGantt.TemplateDef = var_Column
	oGantt.Template = "var_Column.Def(16) = 1"

var_Items = oGantt.Items
	var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
	var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
oGantt.EndUpdate()

953:
How can I change the visual appearance/color of the Filter For ... field

Dim h as N
Dim oGantt as P
Dim var_Column as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.LinesAtRoot = -1
oGantt.BackColorHeader = 1
oGantt.ForeColorHeader = 16777215
oGantt.Template = "Background(26) = BackColorHeader" // oGantt.Background(26) = oGantt.BackColorHeader
oGantt.Template = "Background(27) = ForeColorHeader" // oGantt.Background(27) = oGantt.ForeColorHeader
oGantt.Template = "Background(0) = 15790320" // oGantt.Background(0) = 15790320
oGantt.Template = "Background(32) = -1" // oGantt.Background(32) = -1
oGantt.HeaderAppearance = 5
var_Column = oGantt.Columns.Add("Items")
	var_Column.FilterOnType = .t.
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 2
var_Items = oGantt.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.ExpandItem(h) = True"

	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
oGantt.EndUpdate()

952:
How can I display the cell's caption without spaces on both sides

Dim oGantt as P
Dim var_Column as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.ColumnAutoResize = .t.
var_Column = oGantt.Columns.Add("Default")
	' var_Column.Def(17) = 1
	oGantt.TemplateDef = "dim var_Column"
	oGantt.TemplateDef = var_Column
	oGantt.Template = "var_Column.Def(17) = 1"

	var_Column.FormatColumn = "((trim(value) replace `   ` with ` `) replace `  ` with ` `) replace ` ` with `<bgcolor=FF0000> </bgcolor>`"
var_Items = oGantt.Items
	var_Items.AddItem("")
	var_Items.AddItem("Item A")
	var_Items.AddItem("    Item B")
	var_Items.AddItem("        Item   C    ")
oGantt.EndUpdate()

951:
How can I highlight the spaces within the column (sample 2)

Dim oGantt as P
Dim var_Column as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.ColumnAutoResize = .t.
var_Column = oGantt.Columns.Add("Default")
	' var_Column.Def(17) = 1
	oGantt.TemplateDef = "dim var_Column"
	oGantt.TemplateDef = var_Column
	oGantt.Template = "var_Column.Def(17) = 1"

	var_Column.FormatColumn = "`'` + ( value replace ` ` with `_` ) + `'`"
var_Items = oGantt.Items
	var_Items.AddItem("")
	var_Items.AddItem("Item A")
	var_Items.AddItem("    Item B")
	var_Items.AddItem("        Item   C    ")
oGantt.EndUpdate()

950:
How can I highlight the spaces within the column (sample 1)

Dim oGantt as P
Dim var_Column as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.ColumnAutoResize = .t.
var_Column = oGantt.Columns.Add("Default")
	' var_Column.Def(17) = 1
	oGantt.TemplateDef = "dim var_Column"
	oGantt.TemplateDef = var_Column
	oGantt.Template = "var_Column.Def(17) = 1"

	var_Column.FormatColumn = "len(value) = 0 ? `<bgcolor=FF0000> </bgcolor>` : ( value replace ` ` with `<bgcolor=FF0000> </bgcolor>` )"
var_Items = oGantt.Items
	var_Items.AddItem("")
	var_Items.AddItem("Item A")
	var_Items.AddItem("    Item B")
	var_Items.AddItem("        Item   C    ")
oGantt.EndUpdate()

949:
How can I change the visual aspect of the drop down filter-calendar

Dim oGantt as P
Dim var_Column as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.Template = "Background(26) = 65536" // oGantt.Background(26) = 65536
oGantt.Template = "Background(27) = 16777215" // oGantt.Background(27) = 16777215
oGantt.Template = "Background(12) = 16777215" // oGantt.Background(12) = 16777215
oGantt.Template = "Background(8) = Background(26)" // oGantt.Background(8) = oGantt.Background(26)
oGantt.Template = "Background(11) = 8421504" // oGantt.Background(11) = 8421504
var_Column = oGantt.Columns.Add("Date")
	var_Column.FilterType = 4
	var_Column.DisplayFilterButton = .t.
	var_Column.DisplayFilterDate = .t.
	var_Column.DisplayFilterPattern = .f.
oGantt.EndUpdate()

948:
Export Data in HTML format

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	Dim i as 
	Dim var_Items as P
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oGantt.Items
		i = var_Items.ItemToIndex(Item)
		var_Items.AddBar(Item,"Task",{01/02/2008},{01/09/2008},"")
		' var_Items.ItemBar(Item,"",514) = i
		oGantt.TemplateDef = "dim var_Items,Item"
		oGantt.TemplateDef = var_Items
		oGantt.TemplateDef = Item
		oGantt.Template = "var_Items.ItemBar(Item,``,514) = i"
		' var_Items.ItemBar(Item,"",515) = i
		oGantt.TemplateDef = "dim var_Items,Item"
		oGantt.TemplateDef = var_Items
		oGantt.TemplateDef = Item
		oGantt.Template = "var_Items.ItemBar(Item,``,515) = i"
		' var_Items.CellCaption(Item,1) = var_Items.ItemBar(Item,"",1)
		oGantt.TemplateDef = "dim var_Items,Item"
		oGantt.TemplateDef = var_Items
		oGantt.TemplateDef = Item
		oGantt.Template = "var_Items.CellCaption(Item,1) = ItemBar(Item,``,1)"
		' var_Items.CellCaption(Item,2) = var_Items.ItemBar(Item,"",2)
		oGantt.TemplateDef = "dim var_Items,Item"
		oGantt.TemplateDef = var_Items
		oGantt.TemplateDef = Item
		oGantt.Template = "var_Items.CellCaption(Item,2) = ItemBar(Item,``,2)"

end function

Dim oGantt as P
Dim sFile as 
Dim var_Chart as P
Dim var_Column as local
Dim var_Columns as P
Dim var_ConditionalFormat as P
Dim var_ConditionalFormat1 as P
Dim var_Items as P
Dim var_ShellBrowserWindow as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.BackColorAlternate = 15790320
oGantt.DrawGridLines = -1
oGantt.HeaderAppearance = 4
oGantt.Template = "Description(11) = FormatABC(```<fgcolor=808080> `` + value + `` </fgcolor>```,Description(11))" // oGantt.Description(11) = oGantt.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGantt.Description(11))
oGantt.FilterBarCaption = "(( ( 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)`) )))"
oGantt.FilterBarPromptVisible = 2579 'exFilterBarCompact + exFilterBarShowCloseIfRequired + exFilterBarSingleLine + exFilterBarVisible + exFilterBarPromptVisible
oGantt.FilterBarPromptType = 2
oGantt.DrawGridLines = -1
var_Chart = oGantt.Chart
	var_Chart.DrawGridLines = -1
	' var_Chart.PaneWidth(.f.) = 196
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 196"

	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {01/01/2008}
	var_Chart.FirstWeekDay = 1
var_ConditionalFormat = oGantt.ConditionalFormats.Add("(%2 - %1) = 3","K3")
	var_ConditionalFormat.ForeColor = 255
	var_ConditionalFormat.BarColor = var_ConditionalFormat.ForeColor
	var_ConditionalFormat.ApplyToBars = "Task"
var_ConditionalFormat1 = oGantt.ConditionalFormats.Add("(%2 - %1) = 5","K5")
	var_ConditionalFormat1.ForeColor = 65280
	var_ConditionalFormat1.BarColor = var_ConditionalFormat1.ForeColor
	var_ConditionalFormat1.ApplyToBars = "Task"
var_Columns = oGantt.Columns
	' var_Columns.Add("Tasks").Def(0) = .t.
	var_Column = var_Columns.Add("Tasks")
	oGantt.TemplateDef = "dim var_Column"
	oGantt.TemplateDef = var_Column
	oGantt.Template = "var_Column.Def(0) = True"

	var_Columns.Add("Start")
	var_Columns.Add("End")
var_Items = oGantt.Items
	var_Items.AddItem("Task 1")
	var_Items.AddItem("Task 2")
	var_Items.AddItem("Task 3")
	var_Items.AddItem("Task 4")
	var_Items.AddItem("Task 5")
	var_Items.AddItem("Task 6")
	var_Items.AddItem("Task 7")
	var_Items.AddItem("Task 8")
oGantt.EndUpdate()
sFile = "c:/temp/export.html"
oGantt.Export(sFile,"vis")
var_ShellBrowserWindow = OLE.Create("InternetExplorer.Application")
	var_ShellBrowserWindow.Navigate2(sFile)

947:
Export Data in CSV format

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	Dim i as 
	Dim var_Items as P
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oGantt.Items
		i = var_Items.ItemToIndex(Item)
		var_Items.AddBar(Item,"Task",{01/02/2008},{01/09/2008},"")
		' var_Items.ItemBar(Item,"",514) = i
		oGantt.TemplateDef = "dim var_Items,Item"
		oGantt.TemplateDef = var_Items
		oGantt.TemplateDef = Item
		oGantt.Template = "var_Items.ItemBar(Item,``,514) = i"
		' var_Items.ItemBar(Item,"",515) = i
		oGantt.TemplateDef = "dim var_Items,Item"
		oGantt.TemplateDef = var_Items
		oGantt.TemplateDef = Item
		oGantt.Template = "var_Items.ItemBar(Item,``,515) = i"
		' var_Items.CellCaption(Item,1) = var_Items.ItemBar(Item,"",1)
		oGantt.TemplateDef = "dim var_Items,Item"
		oGantt.TemplateDef = var_Items
		oGantt.TemplateDef = Item
		oGantt.Template = "var_Items.CellCaption(Item,1) = ItemBar(Item,``,1)"
		' var_Items.CellCaption(Item,2) = var_Items.ItemBar(Item,"",2)
		oGantt.TemplateDef = "dim var_Items,Item"
		oGantt.TemplateDef = var_Items
		oGantt.TemplateDef = Item
		oGantt.Template = "var_Items.CellCaption(Item,2) = ItemBar(Item,``,2)"

end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Columns as P
Dim var_ConditionalFormat as P
Dim var_ConditionalFormat1 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.BackColorAlternate = 15790320
oGantt.DrawGridLines = -1
oGantt.HeaderAppearance = 4
oGantt.Template = "Description(11) = FormatABC(```<fgcolor=808080> `` + value + `` </fgcolor>```,Description(11))" // oGantt.Description(11) = oGantt.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGantt.Description(11))
oGantt.FilterBarCaption = "(( ( 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)`) )))"
oGantt.FilterBarPromptVisible = 2579 'exFilterBarCompact + exFilterBarShowCloseIfRequired + exFilterBarSingleLine + exFilterBarVisible + exFilterBarPromptVisible
oGantt.FilterBarPromptType = 2
var_Chart = oGantt.Chart
	' var_Chart.PaneWidth(.f.) = 196
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 196"

	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {01/01/2008}
var_ConditionalFormat = oGantt.ConditionalFormats.Add("(%2 - %1) = 3","K3")
	var_ConditionalFormat.ForeColor = 255
	var_ConditionalFormat.BarColor = var_ConditionalFormat.ForeColor
	var_ConditionalFormat.ApplyToBars = "Task"
var_ConditionalFormat1 = oGantt.ConditionalFormats.Add("(%2 - %1) = 5","K5")
	var_ConditionalFormat1.ForeColor = 65280
	var_ConditionalFormat1.BarColor = var_ConditionalFormat1.ForeColor
	var_ConditionalFormat1.ApplyToBars = "Task"
var_Columns = oGantt.Columns
	' var_Columns.Add("Tasks").Def(0) = .t.
	var_Column = var_Columns.Add("Tasks")
	oGantt.TemplateDef = "dim var_Column"
	oGantt.TemplateDef = var_Column
	oGantt.Template = "var_Column.Def(0) = True"

	var_Columns.Add("Start")
	var_Columns.Add("End")
var_Items = oGantt.Items
	var_Items.AddItem("Task 1")
	var_Items.AddItem("Task 2")
	var_Items.AddItem("Task 3")
	var_Items.AddItem("Task 4")
	var_Items.AddItem("Task 5")
	var_Items.AddItem("Task 6")
	var_Items.AddItem("Task 7")
	var_Items.AddItem("Task 8")
oGantt.EndUpdate()
? oGantt.Export("","vis") 

946:
Is it possible to check multiple-items at once
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	Dim bHasParent as 
	Dim var_Items as P
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	bHasParent = oGantt.FormatABC("value != 0",oGantt.Items.ItemParent(Item))
	var_Items = oGantt.Items
		' var_Items.CellHasCheckBox(Item,0) = .f.
		oGantt.TemplateDef = "dim var_Items,Item"
		oGantt.TemplateDef = var_Items
		oGantt.TemplateDef = Item
		oGantt.Template = "var_Items.CellHasCheckBox(Item,0) = bHasParent"

end function

Dim h as N
Dim hChild as N
Dim oGantt as P
Dim var_Column as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.LinesAtRoot = -1
var_Column = oGantt.Columns.Add("Tasks")
	' var_Column.Def(17) = 1
	oGantt.TemplateDef = "dim var_Column"
	oGantt.TemplateDef = var_Column
	oGantt.Template = "var_Column.Def(17) = 1"

	var_Column.FormatColumn = "value + (%CS0 = 1 ? `<r><fgcolor=808080>(checked)` : ``)"
oGantt.HeaderVisible = .t.
oGantt.SingleSel = .f.
var_Items = oGantt.Items
	h = var_Items.AddItem("Project")
	hChild = var_Items.InsertItem(h,,"Task 1")
	hChild = var_Items.InsertItem(h,,"Task 2")
	hChild = var_Items.InsertItem(h,,"Task 3")
	' var_Items.ExpandItem(h) = .t.
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.ExpandItem(h) = True"

	' var_Items.LockedItemCount(0) = 1
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.LockedItemCount(0) = 1"

	' var_Items.CellCaption(var_Items.LockedItem(0,0),0) = "<c>Select multiple items and press the <b>SPACE</b> key"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(LockedItem(0,0),0) = `<c>Select multiple items and press the <b>SPACE</b> key`"

oGantt.EndUpdate()

945:
How can I get the icon from the cell when using the Items.CellImages property (icon index)

' Occurs when the user moves the mouse.
function MouseMove as v (Button  as  N,Shift  as  N,X  as  OLE::Exontrol.Gantt.1::OLE_XPOS_PIXELS,Y  as  OLE::Exontrol.Gantt.1::OLE_YPOS_PIXELS)
	Dim i as N
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	i = oGantt.ItemFromPoint(-1,-1,c,hit)
	? oGantt.FormatABC("( 0x44 = ( value bitand 0x44 ) ) ? ( ( (value bitand 0xFFFF0000) bitshift 16 ) array B split `,` )  : `no image`",hit,oGantt.Items.CellImages(i,c)) 
end function

Dim oGantt as P
Dim var_Chart as local
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
' oGantt.Chart.PaneWidth(.t.) = 0
var_Chart = oGantt.Chart
oGantt.TemplateDef = "dim var_Chart"
oGantt.TemplateDef = var_Chart
oGantt.Template = "var_Chart.PaneWidth(True) = 0"

oGantt.Columns.Add("Default")
var_Items = oGantt.Items
	' var_Items.CellImages(var_Items.AddItem("Item 1"),0) = "3,2,1"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImages(AddItem(`Item 1`),0) = `3,2,1`"

	' var_Items.CellImages(var_Items.AddItem("Item 2"),0) = "2,3"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImages(AddItem(`Item 2`),0) = `2,3`"

	' var_Items.CellImages(var_Items.AddItem("Item 3"),0) = "2,"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImages(AddItem(`Item 3`),0) = `2,`"

oGantt.EndUpdate()

944:
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.
function MouseMove as v (Button  as  N,Shift  as  N,X  as  OLE::Exontrol.Gantt.1::OLE_XPOS_PIXELS,Y  as  OLE::Exontrol.Gantt.1::OLE_YPOS_PIXELS)
	Dim i as N
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	i = oGantt.ItemFromPoint(-1,-1,c,hit)
	? oGantt.FormatABC("( 0x44 = ( value bitand 0x44 ) ) ? 1 + ( (value bitand 0xFFFF0000) bitshift 16 ) : `no image`",hit) 
end function

Dim oGantt as P
Dim var_Chart as local
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
' oGantt.Chart.PaneWidth(.t.) = 0
var_Chart = oGantt.Chart
oGantt.TemplateDef = "dim var_Chart"
oGantt.TemplateDef = var_Chart
oGantt.Template = "var_Chart.PaneWidth(True) = 0"

oGantt.Columns.Add("Default")
var_Items = oGantt.Items
	' var_Items.CellImages(var_Items.AddItem("Item 1"),0) = "3,2,1"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImages(AddItem(`Item 1`),0) = `3,2,1`"

	' var_Items.CellImages(var_Items.AddItem("Item 2"),0) = "2,3"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImages(AddItem(`Item 2`),0) = `2,3`"

	' var_Items.CellImages(var_Items.AddItem("Item 3"),0) = "2"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImages(AddItem(`Item 3`),0) = `2`"

oGantt.EndUpdate()

943:
Is it possible to change the visual appearance of the position signs when user changes the column's position by drag and drop
Dim oGantt as P
Dim var_Appearance as P
Dim var_Columns as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.HeaderAppearance = 4
var_Columns = oGantt.Columns
	var_Columns.Add("Column 1")
	var_Columns.Add("Column 2")
	var_Columns.Add("Column 3")
var_Appearance = oGantt.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADKMA4SOKIZhrE4bBhGaQRUgyI43RhHUBzVIUcQvE6TZRHCQYHgkNIhDJIM7TPLkeSVJaTIRoKhJUogApQThTMgVRDEThkGoSa6soSoYTDBKybLrSLKagOT5YUDKUqSdKEZRpEq1YztWbaQoCUoqVRRVIWfbNd4JJa4aDhWpYdpeeY5R7bWLgBYVVABL7LLRsSxpHxPF6RXxaeI3GKsaS8G6ic6nPQMHj7I4NS5pUa6Rh2VYNSa8AAtETRYznOw4bTMXAjNIea5bAYIIR5HIoDzVbQcCQAHL9DBeEMIQEEISgGhMGZQmocgymoYRRCIEQ0G2HYBnEIBig4V4zCQGINnmagCECY43medZ6H2Pw/g+X5fnueh/h+R5+AKABfkMWgGgGYA4AICoCGCE5WA4CphACMgSD2IRIDIBICmEd5YGCBpRjGBgegWIYIgWdgoGIRQsiKCZiAiJZ0gGQI4jUS4LECOAiBmDJflGfg2BSY4Al4OhGkOCJ2DgFJjGGfgqgiH5Ch4RhGkqOQmEOEpkFkHQYhJRYyESAokGKHhIhKIxJEmf4VGUeRGFmF5iBkchPhYJQ5GoYIZg6Ug6GoFYmkmNhuhulRGHKGoImefh0BUZ4JmYeoemeSZ2H6HQmgoBgXDqXwUAQgI=")
	var_Appearance.Add(2,"CP:1 0 -36 0 0")
oGantt.Template = "Background(182) = 33554432" // oGantt.Background(182) = 33554432
oGantt.EndUpdate()

942:
A black portion is shown while I am using the BackColorAlternate with EBN colors. What can I do

Dim oGantt as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_ConditionalFormat as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.ColumnAutoResize = .t.
oGantt.DefaultItemHeight = 20
oGantt.VisualAppearance.Add(1,"gBFLBCJwBAEHhEJAAEhIDhAxHAxg0HG0Mg4xGI3HMOig3GcJiYAf8jAEhhUnAAyhEqg8hk0oAsIjgAiAwmYxGA4mYzGwwkI0i0ooUnB0IBMIl1Dg8zmYyGolptPkI1mY1GAll9KoUslNIrVCqNQldShFUstXAVfrVcrlZtVhuFnsUHq1zoczoQGhFBkNpg6zbDykUkhsPHE2h85nc9n8xtVDtlex9Msd2p1YstVq9ux8HyMtzuFz1PsNTzQlv2hhWfkuqpeVuN0q+nvEooN5veSAGpkb/ACcZrvhU3w83nM/poxGuchGpoVBvWgg+8knA4WimnFxI45Er5XOlHMg/Q3XU33W4ew9Wyu11mchDagcO7zus8VDoNBBEIKBpMY6DqOQyokhA/IQIQmwMk4bIQFDcoO6LWgwhQkNcABwEyAB5GwWbet6cRQg3DENQ5D8QxADZvEkAB8nabsURGeBpFM3pwE2AEZRpDx/neZpOR3Dz9oO/r/wCMoZNTBQAQRJSEwYg8HPGhEIoNCaEwq10gQ2WcRt7LcRxRFpuxUAEURQ3sczBEMgTTG8gN7HpOSEAEiQBAQZpmQ0DibPUFwbKcHwkhQoQtNQNzNEMbABOKDy/DMYQzHLeoPL0OTJSUd0pHcxTewk5zrIygIRPslz4lEngBKIAQivgASs/kLSBTlO00f8t0vGcgUbDlDRjXLCUNRERRvRgAHW2oAICA==")
var_Column = oGantt.Columns.Add("Default")
	' var_Column.Def(0) = .t.
	oGantt.TemplateDef = "dim var_Column"
	oGantt.TemplateDef = var_Column
	oGantt.Template = "var_Column.Def(0) = True"

	var_Column.PartialCheck = .t.
var_Column1 = oGantt.Columns.Add("Position")
	var_Column1.FormatColumn = "1 rindex ``"
	var_Column1.Visible = .f.
var_ConditionalFormat = oGantt.ConditionalFormats.Add("%C1 mod 2")
	var_ConditionalFormat.BackColor = 16777216
var_Items = oGantt.Items
	var_Items.AddItem("Item 1")
	var_Items.AddItem("Item 2")
	var_Items.AddItem("Item 3")
	var_Items.AddItem("Item 4")
oGantt.EndUpdate()

941:
How can I specify alternate background colors for each root item, similar with BackColorAlternate

Dim h as N
Dim oGantt as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_ConditionalFormat as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.LinesAtRoot = -1
var_Column = oGantt.Columns.Add("Default")
	' var_Column.Def(0) = .t.
	oGantt.TemplateDef = "dim var_Column"
	oGantt.TemplateDef = var_Column
	oGantt.Template = "var_Column.Def(0) = True"

	var_Column.PartialCheck = .t.
var_Column1 = oGantt.Columns.Add("Position")
	var_Column1.FormatColumn = "( ( 1:=( ( 0:=(1 rpos '') ) lfind `.`) ) < 0 ? =:0 : (=:0 left =:1) )"
	var_Column1.Visible = .f.
var_ConditionalFormat = oGantt.ConditionalFormats.Add("%C1 mod 2")
	var_ConditionalFormat.BackColor = 15790320
var_Items = oGantt.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.ExpandItem(h) = True"

	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	h = var_Items.AddItem("Root 3")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
oGantt.EndUpdate()

940:
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 4)

Dim h as N
Dim oGantt as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.LinesAtRoot = -1
oGantt.VisualDesign = "gBFLBWIgBAEHhEJAEGg6VAkHeLpgwChAOhULB8XAUUg8MAAREEHGMcgRCJ0ei8dhABDEcQAAYAQGKIYBkAKBQAGaAoDDMOQwQwAAxjGKEEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQiiCYsS5GQBRWAkEwiBiEQTjea5CgOIAFS7LIqjRQEBxhIaZYIGaiQADENo9TxIMZAfBIHShK6NJABCCSQKkYx0HScRijDIEFwGIQmbKiej4DCiCQQW7OYYRVCNMQSfa8HivJyrcamfp/YBgOBYHb1eLVPR5LwfPCGUw1P6PLxkORZHimK4tSLHV7xVpMIwZFafIQhCCoHomS5NU7UNR0TQUFx9FaGX7rDDsGwLAJ6XRgF4bg2VpnHePpenAN4bH2GwHFmApSjEGBLnWOpRGOTBZHOegrE6BxPiWVJqCweQrn0LgJAWJBjwgaw1gKO5HmWch5h+fovF+G5bmich4BgfZkB8dynRUVYqiUR5rnmex/F6N4tn2AJfnebZ3DEXw3HWXgzAyIwgicKJKBKEIhCeCgiHyHYFEmSAFmqBghFIdgSCeIJygYDAyAgJx6AoIINAMOJNCgCZCGoGoLmMCI+CwJoihMNglCCIhzFCUg0EmMhghWDBkAiQg9CUY4jEYN4Jk2IxklYJoJHIUg+CSZJSESFwkkkGI+FOFIJEIRhPhMCRJCSVoRrSBhiDgTZjHYT4PEkYhwhgJYm0SaIaiaSYuE+GQNlmCIBGCJxjhiZQ5AkMhAg6ExJCkPhPguaAiFYUAlAkKZ0g6HoOEmWR/GHcA4m0OwIlIJIHCRgQshGJhpjoaocieaZiC6GAimkUgehIOwnGYGYIGkah6jaE4rg6SpCjKK5rEOMYlGIGIihKOggloFoqj6L5aGaBo6CkGIkAQjiPpCAAaJILCTJQlKPACDaXJgmSaJsnCdJ4nygKEoijKQpSmKcqCpKoqysK0rivLAsSyLMtC1LYty4Lkui7LwvS+L8wDBMIwzEMUxjHMgyTKMszDNM4zzQNE0jTNQ1TWNc2DZNo2zcN03jfOA4TiOM5DlOY5zoOk6jrOw7TuO88DxPI8z0PU9j3Pg+T6Ps/D9P4/0AQFAkDQRBUGQdCEJQpC0MQ1DkPRBEUSRNFEVBhFkXRhGQ9D6Dxfh+W5gGGd4QH2XQjCmDpFFaKoVB+D5Xmed5+H8YAHnIAh9EwV5Fl0d4MkMKJICmSgygSJAoEmMUCIPgnDCCIOQFYCxJjwFoCcA4kxoF+AIJkAgExegDEgEYQInAzCUAIOEGgfxiiRDYF1Q4EQ2BSCaEQYwbAiKREMpRSymFNDIAkAxT6oVRgSA2qdVKq1WqvVirMZQUhSCnBUMoIgoQRgnGSIQUgkg1hIHYAkAYMROAmHiLsE4xxSCxBwEwCQ0wmDdBsE0GYXBtg2CSPMFIuwYiQBYBQeAcwOCnBCCZgw0g0glBONAQgqQThCGgPQGoBQfiRGmOEZIPAXjsBoPAO4HRThhA0EQSA5BAgaCKJIGg3QdhOCmNUBoQAijTCIF0FwQxpCHDIPAYYMQGgtCmFcaQtRAjZCyFYSojQ2B2BoKwIYFApBXEIBsIQ1QsAWAWEwaA1xCgjAoIAQBAQ="
oGantt.Columns.Add("Column")
var_Items = oGantt.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.ExpandItem(h) = True"

	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,,"Child")
oGantt.EndUpdate()

939:
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 3)

Dim h as N
Dim oGantt as P
Dim var_Appearance as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Appearance = oGantt.VisualAppearance
	var_Appearance.Add(3,"gBFLBCJwBAEHhEJAAEhABDwCg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJegef4zluaJ3nqPJeCYH4BAeX5TDLBpVGqKRRnwf4flefZtHsX54BYAR/F+EwVnUd5eAMMJKDIChygyIQpAoEh4iIJ5JlgXIcgCXpIGoFwnGEQh6BEKBgmMIICHgIJCAiUAzgyUoAhwJohkiRgygwYpiGoKwzGIcgKCkNQNCMRIbCYCRYk4QoMiOchWDwNBjhiJJaDYTRiGiFwlCQAhOE8JBJHITIRgwZRZFCFCZBkOIUhKTRpCWAwgGYQ4El4NxlBifIWCcCYCFoaoMGaKYyG6GxlBmGJdhkCAWBIeA5g4U4QhMJAImkPIShRVxGgQJRlCIUISh+SJpnCZIeBgFgiHgO4OlOMINCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYgYiaHopiuaRakCbIsisSpGjYOwaHYKYMCkK5CA2IxrCwCwFigaJrkLTI6lcdANAEgIA=")
	var_Appearance.Add(1,"CP:3 -2 -2 2 2")
	var_Appearance.Add(4,"gBFLBCJwBAEHhEJAAEhABEICg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJeg8X4rluaZ3niGB+AQHx/EyShjjEVYqiUR5rnmex/GAB5+AIf4gEeXJFHyXZ3gCTAygyAociMKBKEKBIeCiCZyHYFAnCEeBkh+BghFgRIegOCgYCySAgh4CAkgINAMmMNIgCcCYjn4LoLmMCJGDKC5ijIagoDMYhCAoJg1A0IxEhsJgJFiThChCY5yFYPA0GOGIYloNhNGIaIXCUJACE4TwkEkchOFSFYlFkXhUCUCQZEYTglCSMxaEkYJIBmFJhDeDZZEYPwlgmQhghaGqVDoa4bGaeY6FGGZNlmFIBGEJ4jhiZQ5AkMhAg6E5JCkRoGCUSQ6B6CYiSCBIOh+DhJmmARiWQOJtDsCJSCSBwkXSLIRicaZ6HqIIomoIguhwIpphIHoWDsJ4mCGChpmqOpGheLIOkqUo2iya4DjGJxihiQoSj4IJaDaMpCjCWoGg6PgpBiQ4tHcQJQBAgI=")
	var_Appearance.Add(2,"CP:4 -2 -2 2 2")
oGantt.LinesAtRoot = 1
oGantt.HasButtons = 4
oGantt.Template = "HasButtonsCustom(0) = 16777216" // oGantt.HasButtonsCustom(.f.) = 16777216
oGantt.Template = "HasButtonsCustom(1) = 33554432" // oGantt.HasButtonsCustom(.t.) = 33554432
oGantt.Columns.Add("Column")
var_Items = oGantt.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.ExpandItem(h) = True"

	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,,"Child")
oGantt.EndUpdate()

938:
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 2)

Dim h as N
Dim oGantt as P
Dim var_Appearance as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Appearance = oGantt.VisualAppearance
	var_Appearance.Add(1,"XP:TREEVIEW 2 1")
	var_Appearance.Add(2,"XP:TREEVIEW 2 2")
oGantt.Template = "Background(180) = 16777216" // oGantt.Background(180) = 16777216
oGantt.Template = "Background(181) = 33554432" // oGantt.Background(181) = 33554432
oGantt.LinesAtRoot = -1
oGantt.Columns.Add("Column")
var_Items = oGantt.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.ExpandItem(h) = True"

	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,,"Child")
oGantt.EndUpdate()

937:
How can I find if the control is running in DPI mode
Dim oGantt as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
? oGantt.FormatABC("dpi = 1 ? `normal/stretch mode` : `dpi mode`") 

936:
How can I change the visual appearance of the +/- buttons (method 1)

Dim h as N
Dim oGantt as P
Dim var_Appearance as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Appearance = oGantt.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABDwCg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJegef4zluaJ3nqPJeCYH4BAeX5TDLBpVGqKRRnwf4flefZtHsX54BYAR/F+EwVnUd5eAMMJKDIChygyIQpAoEh4iIJ5JlgXIcgCXpIGoFwnGEQh6BEKBgmMIICHgIJCAiUAzgyUoAhwJohkiRgygwYpiGoKwzGIcgKCkNQNCMRIbCYCRYk4QoMiOchWDwNBjhiJJaDYTRiGiFwlCQAhOE8JBJHITIRgwZRZFCFCZBkOIUhKTRpCWAwgGYQ4El4NxlBifIWCcCYCFoaoMGaKYyG6GxlBmGJdhkCAWBIeA5g4U4QhMJAImkPIShRVxGgQJRlCIUISh+SJpnCZIeBgFgiHgO4OlOMINCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYgYiaHopiuaRakCbIsisSpGjYOwaHYKYMCkK5CA2IxrCwCwFigaJrkLTI6lcdANAEgIA=")
	var_Appearance.Add(2,"gBFLBCJwBAEHhEJAAEhABEICg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJeg8X4rluaZ3niGB+AQHx/EyShjjEVYqiUR5rnmex/GAB5+AIf4gEeXJFHyXZ3gCTAygyAociMKBKEKBIeCiCZyHYFAnCEeBkh+BghFgRIegOCgYCySAgh4CAkgINAMmMNIgCcCYjn4LoLmMCJGDKC5ijIagoDMYhCAoJg1A0IxEhsJgJFiThChCY5yFYPA0GOGIYloNhNGIaIXCUJACE4TwkEkchOFSFYlFkXhUCUCQZEYTglCSMxaEkYJIBmFJhDeDZZEYPwlgmQhghaGqVDoa4bGaeY6FGGZNlmFIBGEJ4jhiZQ5AkMhAg6E5JCkRoGCUSQ6B6CYiSCBIOh+DhJmmARiWQOJtDsCJSCSBwkXSLIRicaZ6HqIIomoIguhwIpphIHoWDsJ4mCGChpmqOpGheLIOkqUo2iya4DjGJxihiQoSj4IJaDaMpCjCWoGg6PgpBiQ4tHcQJQBAgI=")
oGantt.LinesAtRoot = -1
oGantt.Template = "Background(180) = 16777216" // oGantt.Background(180) = 16777216
oGantt.Template = "Background(181) = 33554432" // oGantt.Background(181) = 33554432
oGantt.Columns.Add("Column")
var_Items = oGantt.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.ExpandItem(h) = True"

	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,,"Child")
oGantt.EndUpdate()

935:
How can I display the control's filter bar in the Items section only, as it was displayed before

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Column3 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

var_Column = oGantt.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = .t.
	var_Column1.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column2 = oGantt.Columns.Add("Pos")
	var_Column2.AllowSizing = .f.
	var_Column2.AllowSort = .f.
	var_Column2.Width = 32
	var_Column2.FormatColumn = "1 apos ``"
	var_Column2.Position = 0
var_Items = oGantt.Items
	' var_Items.CellCaption(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item A`),1) = `Sub-Item A`"

	' var_Items.CellCaption(var_Items.AddItem("Item B"),1) = "Sub-Item B"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item B`),1) = `Sub-Item B`"

	' var_Items.CellCaption(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item C`),1) = `Sub-Item C`"

oGantt.FilterBarPromptVisible = 4096
var_Column3 = oGantt.Columns.Item(1)
	var_Column3.FilterType = 3
	var_Column3.Filter = "*B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

934:
FilterBarCaption ALL Keyword ( sample 2, result )

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	Dim i as 
	Dim var_Items as local
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	i = oGantt.FormatABC("value + 1",oGantt.Items.ItemToIndex(Item))
	' oGantt.Items.CellImage(Item,3) = i
	var_Items = oGantt.Items
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImage(Item,3) = i"
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim h as N
Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Column3 as P
Dim var_Column4 as P
Dim var_Column5 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

oGantt.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGantt.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = .t.
	var_Column1.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column2 = oGantt.Columns.Add("Check")
	' var_Column2.Def(0) = .t.
	oGantt.TemplateDef = "dim var_Column2"
	oGantt.TemplateDef = var_Column2
	oGantt.Template = "var_Column2.Def(0) = True"

	var_Column2.DisplayFilterButton = .t.
	var_Column2.DisplayFilterPattern = .f.
	var_Column2.FilterType = 6
var_Column3 = oGantt.Columns.Add("Image")
	var_Column3.DisplayFilterButton = .t.
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 'exShowExclude + exShowFocusItem + exShowCheckBox
var_Column4 = oGantt.Columns.Add("Pos")
	var_Column4.AllowSizing = .f.
	var_Column4.AllowSort = .f.
	var_Column4.Width = 32
	var_Column4.FormatColumn = "1 apos ``"
	var_Column4.Position = 0
var_Items = oGantt.Items
	' var_Items.CellCaption(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item A`),1) = `Sub-Item A`"

	h = var_Items.AddItem("Item B")
	' var_Items.CellCaption(h,1) = "Sub-Item B"
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellCaption(h,1) = `Sub-Item B`"

	' var_Items.CellState(h,2) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellState(h,2) = 1"

	' var_Items.CellCaption(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item C`),1) = `Sub-Item C`"

oGantt.FilterBarFont = oGantt.Font
oGantt.Template = "Description(11) = FormatABC(```<fgcolor=808080> `` + value + `` </fgcolor>```,Description(11))" // oGantt.Description(11) = oGantt.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGantt.Description(11))
oGantt.FilterBarCaption = "(( ( 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)`) )))"
oGantt.FilterBarPromptVisible = 3 'exFilterBarVisible + exFilterBarPromptVisible
var_Column5 = oGantt.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGantt.Columns.Item(2).Filter = 1
oGantt.ApplyFilter()
oGantt.EndUpdate()

933:
FilterBarCaption ALL Keyword ( sample 1 )

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	Dim i as 
	Dim var_Items as local
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	i = oGantt.FormatABC("value + 1",oGantt.Items.ItemToIndex(Item))
	' oGantt.Items.CellImage(Item,3) = i
	var_Items = oGantt.Items
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImage(Item,3) = i"
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim h as N
Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Column3 as P
Dim var_Column4 as P
Dim var_Column5 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

oGantt.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGantt.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = .t.
	var_Column1.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column2 = oGantt.Columns.Add("Check")
	' var_Column2.Def(0) = .t.
	oGantt.TemplateDef = "dim var_Column2"
	oGantt.TemplateDef = var_Column2
	oGantt.Template = "var_Column2.Def(0) = True"

	var_Column2.DisplayFilterButton = .t.
	var_Column2.DisplayFilterPattern = .f.
	var_Column2.FilterType = 6
var_Column3 = oGantt.Columns.Add("Image")
	var_Column3.DisplayFilterButton = .t.
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 'exShowExclude + exShowFocusItem + exShowCheckBox
var_Column4 = oGantt.Columns.Add("Pos")
	var_Column4.AllowSizing = .f.
	var_Column4.AllowSort = .f.
	var_Column4.Width = 32
	var_Column4.FormatColumn = "1 apos ``"
	var_Column4.Position = 0
var_Items = oGantt.Items
	' var_Items.CellCaption(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item A`),1) = `Sub-Item A`"

	h = var_Items.AddItem("Item B")
	' var_Items.CellCaption(h,1) = "Sub-Item B"
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellCaption(h,1) = `Sub-Item B`"

	' var_Items.CellState(h,2) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellState(h,2) = 1"

	' var_Items.CellCaption(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item C`),1) = `Sub-Item C`"

oGantt.FilterBarFont = oGantt.Font
oGantt.Template = "Description(11) = FormatABC(```<fgcolor=808080> `` + value + `` </fgcolor>```,Description(11))" // oGantt.Description(11) = oGantt.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGantt.Description(11))
oGantt.FilterBarCaption = "all"
oGantt.FilterBarPromptVisible = 3 'exFilterBarVisible + exFilterBarPromptVisible
var_Column5 = oGantt.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGantt.Columns.Item(2).Filter = 1
oGantt.ApplyFilter()
oGantt.EndUpdate()

932:
FilterBarCaption ALLUI Keyword ( sample 2, result )

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	Dim i as 
	Dim var_Items as local
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	i = oGantt.FormatABC("value + 1",oGantt.Items.ItemToIndex(Item))
	' oGantt.Items.CellImage(Item,3) = i
	var_Items = oGantt.Items
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImage(Item,3) = i"
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim h as N
Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Column3 as P
Dim var_Column4 as P
Dim var_Column5 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

oGantt.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGantt.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = .t.
	var_Column1.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column2 = oGantt.Columns.Add("Check")
	' var_Column2.Def(0) = .t.
	oGantt.TemplateDef = "dim var_Column2"
	oGantt.TemplateDef = var_Column2
	oGantt.Template = "var_Column2.Def(0) = True"

	var_Column2.DisplayFilterButton = .t.
	var_Column2.DisplayFilterPattern = .f.
	var_Column2.FilterType = 6
var_Column3 = oGantt.Columns.Add("Image")
	var_Column3.DisplayFilterButton = .t.
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 'exShowExclude + exShowFocusItem + exShowCheckBox
var_Column4 = oGantt.Columns.Add("Pos")
	var_Column4.AllowSizing = .f.
	var_Column4.AllowSort = .f.
	var_Column4.Width = 32
	var_Column4.FormatColumn = "1 apos ``"
	var_Column4.Position = 0
var_Items = oGantt.Items
	' var_Items.CellCaption(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item A`),1) = `Sub-Item A`"

	h = var_Items.AddItem("Item B")
	' var_Items.CellCaption(h,1) = "Sub-Item B"
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellCaption(h,1) = `Sub-Item B`"

	' var_Items.CellState(h,2) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellState(h,2) = 1"

	' var_Items.CellCaption(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item C`),1) = `Sub-Item C`"

oGantt.FilterBarFont = oGantt.Font
oGantt.Template = "Description(11) = FormatABC(```<fgcolor=808080> `` + value + `` </fgcolor>```,Description(11))" // oGantt.Description(11) = oGantt.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGantt.Description(11))
oGantt.FilterBarCaption = "(( ( 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)`) )))"
oGantt.FilterBarPromptVisible = 3 'exFilterBarVisible + exFilterBarPromptVisible
var_Column5 = oGantt.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGantt.Columns.Item(2).Filter = 1
oGantt.ApplyFilter()
oGantt.EndUpdate()

931:
FilterBarCaption ALLUI Keyword ( sample 1 )

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	Dim i as 
	Dim var_Items as local
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	i = oGantt.FormatABC("value + 1",oGantt.Items.ItemToIndex(Item))
	' oGantt.Items.CellImage(Item,3) = i
	var_Items = oGantt.Items
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImage(Item,3) = i"
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim h as N
Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Column3 as P
Dim var_Column4 as P
Dim var_Column5 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

oGantt.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGantt.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = .t.
	var_Column1.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column2 = oGantt.Columns.Add("Check")
	' var_Column2.Def(0) = .t.
	oGantt.TemplateDef = "dim var_Column2"
	oGantt.TemplateDef = var_Column2
	oGantt.Template = "var_Column2.Def(0) = True"

	var_Column2.DisplayFilterButton = .t.
	var_Column2.DisplayFilterPattern = .f.
	var_Column2.FilterType = 6
var_Column3 = oGantt.Columns.Add("Image")
	var_Column3.DisplayFilterButton = .t.
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 'exShowExclude + exShowFocusItem + exShowCheckBox
var_Column4 = oGantt.Columns.Add("Pos")
	var_Column4.AllowSizing = .f.
	var_Column4.AllowSort = .f.
	var_Column4.Width = 32
	var_Column4.FormatColumn = "1 apos ``"
	var_Column4.Position = 0
var_Items = oGantt.Items
	' var_Items.CellCaption(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item A`),1) = `Sub-Item A`"

	h = var_Items.AddItem("Item B")
	' var_Items.CellCaption(h,1) = "Sub-Item B"
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellCaption(h,1) = `Sub-Item B`"

	' var_Items.CellState(h,2) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellState(h,2) = 1"

	' var_Items.CellCaption(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item C`),1) = `Sub-Item C`"

oGantt.FilterBarFont = oGantt.Font
oGantt.Template = "Description(11) = FormatABC(```<fgcolor=808080> `` + value + `` </fgcolor>```,Description(11))" // oGantt.Description(11) = oGantt.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGantt.Description(11))
oGantt.FilterBarCaption = "allui"
oGantt.FilterBarPromptVisible = 3 'exFilterBarVisible + exFilterBarPromptVisible
var_Column5 = oGantt.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGantt.Columns.Item(2).Filter = 1
oGantt.ApplyFilter()
oGantt.EndUpdate()

930:
FilterBarCaption AVAILABLE Keyword ( sample 2, result )

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	Dim i as 
	Dim var_Items as local
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	i = oGantt.FormatABC("value + 1",oGantt.Items.ItemToIndex(Item))
	' oGantt.Items.CellImage(Item,3) = i
	var_Items = oGantt.Items
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImage(Item,3) = i"
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim h as N
Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Column3 as P
Dim var_Column4 as P
Dim var_Column5 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

oGantt.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGantt.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = .t.
	var_Column1.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column2 = oGantt.Columns.Add("Check")
	' var_Column2.Def(0) = .t.
	oGantt.TemplateDef = "dim var_Column2"
	oGantt.TemplateDef = var_Column2
	oGantt.Template = "var_Column2.Def(0) = True"

	var_Column2.DisplayFilterButton = .t.
	var_Column2.DisplayFilterPattern = .f.
	var_Column2.FilterType = 6
var_Column3 = oGantt.Columns.Add("Image")
	var_Column3.DisplayFilterButton = .t.
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 'exShowExclude + exShowFocusItem + exShowCheckBox
var_Column4 = oGantt.Columns.Add("Pos")
	var_Column4.AllowSizing = .f.
	var_Column4.AllowSort = .f.
	var_Column4.Width = 32
	var_Column4.FormatColumn = "1 apos ``"
	var_Column4.Position = 0
var_Items = oGantt.Items
	' var_Items.CellCaption(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item A`),1) = `Sub-Item A`"

	h = var_Items.AddItem("Item B")
	' var_Items.CellCaption(h,1) = "Sub-Item B"
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellCaption(h,1) = `Sub-Item B`"

	' var_Items.CellState(h,2) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellState(h,2) = 1"

	' var_Items.CellCaption(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item C`),1) = `Sub-Item C`"

oGantt.FilterBarFont = oGantt.Font
oGantt.Template = "Description(11) = FormatABC(```<fgcolor=808080> `` + value + `` </fgcolor>```,Description(11))" // oGantt.Description(11) = oGantt.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGantt.Description(11))
oGantt.FilterBarCaption = "(( ( 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)`) )))"
oGantt.FilterBarPromptVisible = 3 'exFilterBarVisible + exFilterBarPromptVisible
var_Column5 = oGantt.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGantt.Columns.Item(2).Filter = 1
oGantt.ApplyFilter()
oGantt.EndUpdate()

929:
FilterBarCaption AVAILABLE Keyword ( sample 1 )

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	Dim i as 
	Dim var_Items as local
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	i = oGantt.FormatABC("value + 1",oGantt.Items.ItemToIndex(Item))
	' oGantt.Items.CellImage(Item,3) = i
	var_Items = oGantt.Items
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellImage(Item,3) = i"
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim h as N
Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Column3 as P
Dim var_Column4 as P
Dim var_Column5 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

oGantt.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGantt.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = .t.
	var_Column1.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column2 = oGantt.Columns.Add("Check")
	' var_Column2.Def(0) = .t.
	oGantt.TemplateDef = "dim var_Column2"
	oGantt.TemplateDef = var_Column2
	oGantt.Template = "var_Column2.Def(0) = True"

	var_Column2.DisplayFilterButton = .t.
	var_Column2.DisplayFilterPattern = .f.
	var_Column2.FilterType = 6
var_Column3 = oGantt.Columns.Add("Image")
	var_Column3.DisplayFilterButton = .t.
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 'exShowExclude + exShowFocusItem + exShowCheckBox
var_Column4 = oGantt.Columns.Add("Pos")
	var_Column4.AllowSizing = .f.
	var_Column4.AllowSort = .f.
	var_Column4.Width = 32
	var_Column4.FormatColumn = "1 apos ``"
	var_Column4.Position = 0
var_Items = oGantt.Items
	' var_Items.CellCaption(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item A`),1) = `Sub-Item A`"

	h = var_Items.AddItem("Item B")
	' var_Items.CellCaption(h,1) = "Sub-Item B"
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellCaption(h,1) = `Sub-Item B`"

	' var_Items.CellState(h,2) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellState(h,2) = 1"

	' var_Items.CellCaption(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item C`),1) = `Sub-Item C`"

oGantt.FilterBarFont = oGantt.Font
oGantt.Template = "Description(11) = FormatABC(```<fgcolor=808080> `` + value + `` </fgcolor>```,Description(11))" // oGantt.Description(11) = oGantt.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGantt.Description(11))
oGantt.FilterBarCaption = "value + ` ` + available"
oGantt.FilterBarPromptVisible = 3 'exFilterBarVisible + exFilterBarPromptVisible
var_Column5 = oGantt.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGantt.Columns.Item(2).Filter = 1
oGantt.ApplyFilter()
oGantt.EndUpdate()

928:
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 3, results )

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Column3 as P
Dim var_Column4 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

var_Column = oGantt.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = .t.
	var_Column1.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column2 = oGantt.Columns.Add("Pos")
	var_Column2.AllowSizing = .f.
	var_Column2.AllowSort = .f.
	var_Column2.Width = 32
	var_Column2.FormatColumn = "1 apos ``"
	var_Column2.Position = 0
var_Items = oGantt.Items
	' var_Items.CellCaption(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item A`),1) = `Sub-Item A`"

	' var_Items.CellCaption(var_Items.AddItem("Item B"),1) = "Sub-Item B"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item B`),1) = `Sub-Item B`"

	' var_Items.CellCaption(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item C`),1) = `Sub-Item C`"

oGantt.FilterBarFont = oGantt.Font
oGantt.Template = "Description(11) = FormatABC(```<fgcolor=808080>`` + value + ``</fgcolor>```,Description(11))" // oGantt.Description(11) = oGantt.FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",oGantt.Description(11))
oGantt.FilterBarCaption = "(`<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>`"
oGantt.FilterBarPromptVisible = 256
var_Column3 = oGantt.Columns.Item(0)
	var_Column3.FilterType = 240
	var_Column3.Filter = "Item A|Item B"
var_Column4 = oGantt.Columns.Item(1)
	var_Column4.FilterType = 3
	var_Column4.Filter = "*B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

927:
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 2 )

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Column3 as P
Dim var_Column4 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

var_Column = oGantt.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = .t.
	var_Column1.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column2 = oGantt.Columns.Add("Pos")
	var_Column2.AllowSizing = .f.
	var_Column2.AllowSort = .f.
	var_Column2.Width = 32
	var_Column2.FormatColumn = "1 apos ``"
	var_Column2.Position = 0
var_Items = oGantt.Items
	' var_Items.CellCaption(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item A`),1) = `Sub-Item A`"

	' var_Items.CellCaption(var_Items.AddItem("Item B"),1) = "Sub-Item B"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item B`),1) = `Sub-Item B`"

	' var_Items.CellCaption(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item C`),1) = `Sub-Item C`"

oGantt.FilterBarFont = oGantt.Font
oGantt.Template = "Description(11) = FormatABC(```<fgcolor=808080>`` + value + ``</fgcolor>```,Description(11))" // oGantt.Description(11) = oGantt.FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",oGantt.Description(11))
oGantt.FilterBarCaption = "value replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>`"
oGantt.FilterBarPromptVisible = 256
var_Column3 = oGantt.Columns.Item(0)
	var_Column3.FilterType = 240
	var_Column3.Filter = "Item A|Item B"
var_Column4 = oGantt.Columns.Item(1)
	var_Column4.FilterType = 3
	var_Column4.Filter = "*B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

926:
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 1 )

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Column3 as P
Dim var_Column4 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

var_Column = oGantt.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = .t.
	var_Column1.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column2 = oGantt.Columns.Add("Pos")
	var_Column2.AllowSizing = .f.
	var_Column2.AllowSort = .f.
	var_Column2.Width = 32
	var_Column2.FormatColumn = "1 apos ``"
	var_Column2.Position = 0
var_Items = oGantt.Items
	' var_Items.CellCaption(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item A`),1) = `Sub-Item A`"

	' var_Items.CellCaption(var_Items.AddItem("Item B"),1) = "Sub-Item B"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item B`),1) = `Sub-Item B`"

	' var_Items.CellCaption(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellCaption(AddItem(`Item C`),1) = `Sub-Item C`"

oGantt.Template = "Description(11) = FormatABC(```<fgcolor=808080>`` + value + ``</fgcolor>```,Description(11))" // oGantt.Description(11) = oGantt.FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",oGantt.Description(11))
oGantt.FilterBarCaption = "value replace `[` with `<fgcolor=808080>[` replace `]` with `]</fgcolor>`"
oGantt.FilterBarPromptVisible = 256
var_Column3 = oGantt.Columns.Item(0)
	var_Column3.FilterType = 240
	var_Column3.Filter = "Item A|Item B"
var_Column4 = oGantt.Columns.Item(1)
	var_Column4.FilterType = 3
	var_Column4.Filter = "*B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

925:
Is it possible to automatically displays the control's filter label to the right

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

var_Column = oGantt.Columns.Add("Item")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarCaption = "`<r>` + value"
oGantt.FilterBarPromptVisible = 1280 'exFilterBarShowCloseOnRight + exFilterBarToggle
var_Column2 = oGantt.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

924:
How can I get the number of results/items being shown in the control's filter bar (sample 4)

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

var_Column = oGantt.Columns.Add("Item")
	var_Column.DisplayFilterButton = .t.
	var_Column.FilterList = 9504 'exShowExclude + exShowFocusItem + exShowCheckBox + exSortItemsAsc
var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarFont = oGantt.Font
oGantt.FilterBarPrompt = oGantt.FormatABC("`<b>` + value",oGantt.FilterBarPrompt)
oGantt.FilterBarCaption = "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<fgcolor=808080>`+ itemcount + ` item(s)`) )"
oGantt.FilterBarPromptVisible = 3591 'exFilterBarCompact + exFilterBarShowCloseOnRight + exFilterBarShowCloseIfRequired + exFilterBarCaptionVisible + exFilterBarVisible + exFilterBarPromptVisible
oGantt.EndUpdate()

923:
How can I get the number of results being shown in the control's filter bar (sample 3)

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarFont = oGantt.Font
oGantt.FilterBarCaption = "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : ``)"
oGantt.FilterBarPromptVisible = 2055 'exFilterBarCompact + exFilterBarCaptionVisible + exFilterBarVisible + exFilterBarPromptVisible
var_Column2 = oGantt.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

922:
How can I get the number of results being shown in the control's filter bar (sample 2, compact)

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarFont = oGantt.Font
oGantt.FilterBarCaption = "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? `<off -4> ` + abs(matchitemcount + 1) + ` result(s)` : ``)"
oGantt.FilterBarPromptVisible = 2071 'exFilterBarCompact + exFilterBarSingleLine + exFilterBarCaptionVisible + exFilterBarVisible + exFilterBarPromptVisible
var_Column2 = oGantt.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

921:
How can I get the number of results being shown in the control's filter bar (sample 1)

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarFont = oGantt.Font
oGantt.FilterBarCaption = "`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? abs(matchitemcount + 1) + ` result(s)` : ``)"
oGantt.FilterBarPromptVisible = 7 'exFilterBarCaptionVisible + exFilterBarVisible + exFilterBarPromptVisible
var_Column2 = oGantt.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

920:
FilterBarCaption Predefined Keywords

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

' Fired after an item is expanded (collapsed).
function AfterExpandItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Refresh()
end function

Dim h as N
Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Column3 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

oGantt.LinesAtRoot = -1
' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Check")
	' var_Column1.Def(0) = .t.
	oGantt.TemplateDef = "dim var_Column1"
	oGantt.TemplateDef = var_Column1
	oGantt.Template = "var_Column1.Def(0) = True"

	var_Column1.DisplayFilterButton = .t.
	var_Column1.DisplayFilterPattern = .f.
	var_Column1.FilterType = 6
var_Column2 = oGantt.Columns.Add("Pos")
	var_Column2.AllowSizing = .f.
	var_Column2.AllowSort = .f.
	var_Column2.Width = 32
	var_Column2.FormatColumn = "1 apos ``"
	var_Column2.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	h = var_Items.AddItem("Item B")
	' var_Items.CellState(var_Items.InsertItem(h,,"Sub-Item B1"),1) = 1
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.CellState(InsertItem(h,,`Sub-Item B1`),1) = 1"

	var_Items.InsertItem(h,,"Sub-Item B2")
	' var_Items.ExpandItem(h) = .t.
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.ExpandItem(h) = True"

	var_Items.AddItem("Item C")
oGantt.FilterInclude = 1
oGantt.FilterBarFont = oGantt.Font
oGantt.FilterBarCaption = "`<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>`"
oGantt.FilterBarPromptPattern = "B"
oGantt.FilterBarPromptVisible = 7 'exFilterBarCaptionVisible + exFilterBarVisible + exFilterBarPromptVisible
var_Column3 = oGantt.Columns.Item(0)
	var_Column3.FilterType = 240
	var_Column3.Filter = "Item A|Item B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

919:
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

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarFont = oGantt.Font
oGantt.FilterBarCaption = "`<r><i><fgcolor=808080><upline><solidline><sha ;;0>` + value"
oGantt.FilterBarPromptPattern = "B"
oGantt.FilterBarPromptVisible = 2067 'exFilterBarCompact + exFilterBarSingleLine + exFilterBarVisible + exFilterBarPromptVisible
var_Column2 = oGantt.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

918:
Just wondering if it is possible to show the filter bar's close button on the right ( sample 2 )

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarPromptVisible = 1281 'exFilterBarShowCloseOnRight + exFilterBarToggle + exFilterBarPromptVisible
oGantt.FilterBarPrompt = oGantt.FormatABC("`<r>` + value",oGantt.FilterBarPrompt)
oGantt.EndUpdate()

917:
Just wondering if it is possible to show the filter bar's close button on the right ( sample 1 )

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

oGantt.RightToLeft = .t.
' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarPromptVisible = 257 'exFilterBarToggle + exFilterBarPromptVisible
oGantt.EndUpdate()

916:
How can I change the visual appearance of the filter bar's close button (EBN)

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Appearance as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

var_Appearance = oGantt.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABHQDg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLOg7IJjyI4/SJAYCydKAWhxIaZKJHCZoEDaTAADCNVAQp6MEIJVbVEI0e79OgBLp/Z7kECIJJAaRjHQdJxGLA8EhtCQhCZteK6SgMKJYXhWQYRXI1JwvMBrWrdQjiOYELQtMKmSZNLYGG4dR5SVJbcYhSYsRRFMoyDIOXYDLKsdYqSpXIThObEGgaPqJYjsUjCMKnR7HVIURrBPC9TBPE69ZgmC6ucKPX51ShKFaBWDZcwFAS+UBuYCAILiEAQGZ1XT8OROicbgJgSTJRlCaZeDsHY7QGR4xkSYp3CaExZAQMgalQYAwjCAAfBANxcA2TgKAUOpDCGFhKg0RpXCwCwDHQHQHEyAIkCkOhbFOGA8A8DohBgRg9AccZcn8EpEjMLI2C2DYxAgQgvAIUIVkoAAPBQDJlECTZ3CCYwDACQwUA8A5MCAWAWDiQi4l8aQOEgLJuBgBgDmYFAzEoIoIl0WALgKYJbBABADAAHgHg8VAMmqCQQDMXABAATYwTmNwBDATJXAiAgjHmNQ5lgQ5QEQEQMmcWg/GwD5ylyNw2gMcJcjsBgBgOQQDDhRpVAMMwnDBFw1B0Ax8D0DxOmmJJIGQTY5hGMAwkwM4CAYLZAmAOJnAqAojiIGg6iieYkmeAYOHaKJDCyCwjH6AoggsQpQliAJLhgaJ0CESBTnyDwjk+cg4g4P5IHIHJ+BWRRzlYWAxiOUxihsY4KjKLJRGqC44FCegkkkM58iAKAPnIWIWD8SRSFSfQnkmewUhYP4GiGKJ7G0TIbCSUoggqUo0lAQ4LnEcBcD8Coiiif4nE+eAAn2HpOkcFJqi4T5SkyMw/kqQown8IBIBOdA+A+DJrBqVxXEqYo4lCApLhGHBnD8S4ymyfxmg+cwQkQP5egOUZIWoEAkjIeIPBMBJBD+TBjBifwvkuc58hQJQPmFrYykkchclSApKjGOBuD+TRDFCfw3mmIxNi8FxFlOXhVC4aYDFyPgvg2YBcBcLZGCGCJ0DSLRzGSWQ/lmY5+mEP5gmMDBZRSMRsFsOxMhMJJ/DsTpTnwaQaE+N5ojuNhdEYNI5C4TZJO1GRDmCaxnA2Yx4n8IpIjOTBQBQC5TgyYw7gUYRYikC0BYRwsDQBoB8eA6Q2hsE0BUXgywZtYCyHMKwnxSAhAQHkIQhRrBaDsCwA4ERiB2EWAIYIXhhiVEgAEUYwwYjyASLge4FhHgRDkM8OQih0jWPkGgBBAQ")
' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarPromptVisible = 257 'exFilterBarToggle + exFilterBarPromptVisible
oGantt.Template = "Background(1) = 16777216" // oGantt.Background(1) = 16777216
oGantt.EndUpdate()

915:
How can I change the visual appearance of the filter bar's close button (solid)

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarPromptVisible = 1
oGantt.Template = "Background(1) = 255" // oGantt.Background(1) = 255
oGantt.EndUpdate()

914:
Is it possible to prevent definitely showing the filter bar's close button

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarPromptVisible = 1
oGantt.Template = "Background(1) = -1" // oGantt.Background(1) = -1
oGantt.EndUpdate()

913:
Is it possible to show the close button only if there is a filter applied

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarPromptVisible = 513 'exFilterBarShowCloseIfRequired + exFilterBarPromptVisible
oGantt.EndUpdate()

912:
The control's filter bar is not closed once I click the close button (toggle)

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim h as N
Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
	' var_Items.LockedItemCount(2) = 1
	oGantt.TemplateDef = "dim var_Items"
	oGantt.TemplateDef = var_Items
	oGantt.Template = "var_Items.LockedItemCount(2) = 1"

	h = var_Items.LockedItem(2,0)
	' var_Items.ItemDivider(h) = 0
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.ItemDivider(h) = 0"

	' var_Items.CellCaption(h,0) = "<c><fgcolor=808080>Press the CTRL + F to turn on/off the control's filter bar. ALT + Up/Down moves the focus."
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellCaption(h,0) = `<c><fgcolor=808080>Press the CTRL + F to turn on/off the control's filter bar. ALT + Up/Down moves the focus.`"

	' var_Items.CellCaptionFormat(h,0) = 1
	oGantt.TemplateDef = "dim var_Items,h"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h
	oGantt.Template = "var_Items.CellCaptionFormat(h,0) = 1"

oGantt.FilterBarCaption = "`<r><fgcolor=808080>` + value"
oGantt.FilterBarPromptPattern = "B"
oGantt.FilterBarPromptVisible = 2323 'exFilterBarCompact + exFilterBarToggle + exFilterBarSingleLine + exFilterBarVisible + exFilterBarPromptVisible
var_Column2 = oGantt.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

911:
How can I display the control's filter on a single line

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarCaption = "len(value) ? `filter for: <fgcolor 808080>` + value  : `<fgcolor 808080>no filter`"
oGantt.FilterBarPromptVisible = 18 'exFilterBarSingleLine + exFilterBarVisible
var_Column2 = oGantt.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

910:
How can I display the control's filter on a single line (prompt-combined)

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarCaption = "`<r>` + value"
oGantt.FilterBarPromptVisible = 2067 'exFilterBarCompact + exFilterBarSingleLine + exFilterBarVisible + exFilterBarPromptVisible
var_Column2 = oGantt.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

909:
How can I get the number of results after a filter is applied

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

' Occurs when the user presses and then releases the left mouse button over the tree control.
function Click as v ()
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.ClearFilter()
end function

' Occurs when the filter was changed.
function FilterChange as v ()
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	? "Items.MatchItemCount" 
	? oGantt.Items.MatchItemCount 
	? oGantt.FormatABC("value < 0 ? `filter applied: ` + abs(value + 1) + ` result(s)` : `no filter`",oGantt.Items.MatchItemCount) 
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarPromptVisible = 1
oGantt.FilterBarPromptPattern = "Item"
oGantt.EndUpdate()

908:
How can I programmatically clear the control's filter
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

' Occurs when the user presses and then releases the left mouse button over the tree control.
function Click as v ()
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.ClearFilter()
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarPromptVisible = 1
oGantt.FilterBarPromptPattern = "B"
oGantt.EndUpdate()

907:
Is it possible to prevent closing the control's filter bar, so it is always shown (prompt-combined)

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarPromptPattern = "B"
oGantt.FilterBarPromptVisible = 3 'exFilterBarVisible + exFilterBarPromptVisible
var_Column2 = oGantt.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

906:
Is it possible to prevent closing the control's filter bar, so it is always shown (prompt)

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarPromptVisible = 1
oGantt.FilterBarPromptPattern = "B"
oGantt.EndUpdate()

905:
Is it possible to prevent closing the control's filter bar, so it is always shown

' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.Gantt.1::HITEM)
	oGantt = topparent:CONTROL_ACTIVEX1.activex
	oGantt.Items.AddBar(Item,"Task",{12/04/2017},{12/14/2017})
end function

Dim oGantt as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/02/2017}
	' var_Chart.PaneWidth(.f.) = 256
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 256"

' oGantt.Columns.Add("Item").DisplayFilterButton = .t.
var_Column = oGantt.Columns.Add("Item")
oGantt.TemplateDef = "dim var_Column"
oGantt.TemplateDef = var_Column
oGantt.Template = "var_Column.DisplayFilterButton = True"

var_Column1 = oGantt.Columns.Add("Pos")
	var_Column1.AllowSizing = .f.
	var_Column1.AllowSort = .f.
	var_Column1.Width = 32
	var_Column1.FormatColumn = "1 apos ``"
	var_Column1.Position = 0
var_Items = oGantt.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGantt.FilterBarCaption = "len(value) = 0 ? `<fgcolor=808080>no filter` : value"
oGantt.FilterBarPromptVisible = 2
var_Column2 = oGantt.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item B"
oGantt.ApplyFilter()
oGantt.EndUpdate()

904:
How do I change the drop down filter icon/button (black)

Dim oGantt as P
Dim var_Appearance as P
Dim var_Chart as P
Dim var_Column as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Appearance = oGantt.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABXUIQAAYAQGKIcBiAKBQAGYBIJDEMgzDDAUBjKKocQTC4AIQjCK4JDKHYJRpHEZyCA8EhqGASRAFUQBYiWE4oSpLABQaK0ZwIGyRIrkGQgQgmPYDSDNU4zVIEEglBI0TDNczhNDENgtGYaJqHIYpZBcM40TKkEZoSIITZcRrOEBiRL1S0RBhGcRUHZlWzdN64LhuK47UrWdD/XhdVzXRbjfz1Oq+bxve48Br7A5yYThdr4LhOFQ3RjIL4xbIcUwGe6VZhjOLZXjmO49T69HTtOCYBEBA")
oGantt.Template = "Background(0) = 16777216" // oGantt.Background(0) = 16777216
oGantt.Template = "Background(32) = -1" // oGantt.Background(32) = -1
oGantt.Template = "Background(15) = 15790320" // oGantt.Background(15) = 15790320
oGantt.HeaderAppearance = 0
oGantt.BackColorHeader = 0
oGantt.ForeColorHeader = 16777215
oGantt.HeaderVisible = .t.
oGantt.BackColorLevelHeader = oGantt.BackColor
var_Column = oGantt.Columns.Add("Filter")
	var_Column.DisplayFilterButton = .t.
	var_Column.AllowSort = .f.
	var_Column.AllowDragging = .f.
var_Chart = oGantt.Chart
	' var_Chart.PaneWidth(.f.) = 196
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 196"

	var_Chart.LevelCount = 2
	var_Chart.BackColorLevelHeader = oGantt.BackColorHeader
	var_Chart.ForeColorLevelHeader = oGantt.ForeColorHeader
oGantt.EndUpdate()

903:
How do I change the drop down filter icon/button (white)

Dim oGantt as P
Dim var_Appearance as P
Dim var_Chart as P
Dim var_Column as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Appearance = oGantt.VisualAppearance
	var_Appearance.Add(2,"gBFLBCJwBAEHhEJAAEhABX8GACAADACAxSDEMQBQKAAzQFAYbhgHCGAAGQaBUgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwYgmNYiTLAcgANJ0WBaGIZJ4gOT5fDKMoEDRRYADFCscwxJybQAqGQKKb+VgAVY/cTyBIAEQSKA0TDOQ5TSKWB4JPZQRBEbZMNBtBIUJquKaqShdQJCU5FdY3Xblez9P7AMBwLFEC4NQ8YNYuPhjR4dRTIMhvVAsUArFh8Zg9GZZFjmDIDT4ydBLTQwcyVIKnP5qOa6XbmPoCQDYKxZHYxPzVDa3axuL76dqCAT7XrXNy1TbNRrzQKfcJqfCbdw2YaDZLOOT3fjuI4hhKaRzFAHJ+jYQ4xHuY4gHuGIXGeExqC8Tp6C+PoEm+G5ImycRgh0XwvDGa5rgOeoejyXwnFeQp2mkf5ClgBB9gCWIYAwfYAEKV58mkdwOggNArgOXY2EWLoDkKOA0mgbhOGgZApgaSBIHWSYHSmbApgYThmESZYJkIeIkgeCpfliLIHgpMIcmUYYYmODAlg2SI4mWfRfGOEguDcCRjFYAJihCQhJBSDoRmONgKEcI4kFCEJhhOVYTmYnAlEAQhWBMJYJGYWoWmWSR2F6F5lnkWAQhUAgpEieRWEuSYkjWGpmkmNhuhuZwJkYcocmaaYkjyEhngnUA6lEFAlAEgI=")
	var_Appearance.Add(1,"CP:2 -4 -4 2 4")
oGantt.Template = "Background(0) = 16777216" // oGantt.Background(0) = 16777216
oGantt.Template = "Background(32) = BackColor" // oGantt.Background(32) = oGantt.BackColor
oGantt.HeaderAppearance = 0
oGantt.BackColorHeader = 16777215
oGantt.BackColorLevelHeader = oGantt.BackColor
oGantt.HeaderHeight = 24
oGantt.HeaderVisible = .t.
var_Chart = oGantt.Chart
	' var_Chart.PaneWidth(.f.) = 196
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 196"

	var_Chart.LevelCount = 2
	var_Chart.BackColorLevelHeader = oGantt.BackColorHeader
	var_Chart.ForeColorLevelHeader = oGantt.ForeColorHeader
var_Column = oGantt.Columns.Add("Filter")
	var_Column.DisplayFilterButton = .t.
	var_Column.AllowSort = .f.
	var_Column.AllowDragging = .f.
oGantt.EndUpdate()

902:
How can I display the week-number in ISO8601 format

Dim oGantt as P
Dim var_Chart as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
var_Chart = oGantt.Chart
	' var_Chart.PaneWidth(.f.) = 0
	oGantt.TemplateDef = "dim var_Chart"
	oGantt.TemplateDef = var_Chart
	oGantt.Template = "var_Chart.PaneWidth(False) = 0"

	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/12/2007}
	var_Chart.DrawGridLines = -1
	var_Chart.UnitScale = 256
	var_Chart.WeekNumberAs = 0
	var_Chart.FirstWeekDay = 1
oGantt.EndUpdate()

901:
How can I include the child items, when a filter is applied

Dim h0 as N
Dim oGantt as P
Dim var_Column as local
Dim var_Column1 as local
Dim var_Columns as P
Dim var_Items as P

oGantt = topparent:CONTROL_ACTIVEX1.activex
oGantt.BeginUpdate()
oGantt.ColumnAutoResize = .t.
oGantt.ContinueColumnScroll = .f.
oGantt.MarkSearchColumn = .f.
oGantt.SearchColumnIndex = 1
oGantt.Indent = 16
oGantt.LinesAtRoot = -1
oGantt.FilterBarPromptVisible = .t.
oGantt.FilterBarPromptPattern = "Nancy"
oGantt.FilterInclude = 1
oGantt.Chart.LevelCount = 2
var_Columns = oGantt.Columns
	' var_Columns.Add("Name").Width = 96
	var_Column = var_Columns.Add("Name")
	oGantt.TemplateDef = "dim var_Column"
	oGantt.TemplateDef = var_Column
	oGantt.Template = "var_Column.Width = 96"

	' var_Columns.Add("Title").Width = 96
	var_Column1 = var_Columns.Add("Title")
	oGantt.TemplateDef = "dim var_Column1"
	oGantt.TemplateDef = var_Column1
	oGantt.Template = "var_Column1.Width = 96"

	var_Columns.Add("City")
var_Items = oGantt.Items
	h0 = var_Items.AddItem("Nancy Davolio")
	' var_Items.CellCaption(h0,1) = "Sales Representative"
	oGantt.TemplateDef = "dim var_Items,h0"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h0
	oGantt.Template = "var_Items.CellCaption(h0,1) = `Sales Representative`"

	' var_Items.CellCaption(h0,2) = "Seattle"
	oGantt.TemplateDef = "dim var_Items,h0"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h0
	oGantt.Template = "var_Items.CellCaption(h0,2) = `Seattle`"

	h0 = var_Items.InsertItem(h0,,"Andrew Fuller")
	' var_Items.CellCaption(h0,1) = "Vice President, Sales"
	oGantt.TemplateDef = "dim var_Items,h0"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h0
	oGantt.Template = "var_Items.CellCaption(h0,1) = `Vice President, Sales`"

	' var_Items.CellCaption(h0,2) = "Tacoma"
	oGantt.TemplateDef = "dim var_Items,h0"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h0
	oGantt.Template = "var_Items.CellCaption(h0,2) = `Tacoma`"

	h0 = var_Items.InsertItem(h0,,"Michael Suyama")
	' var_Items.CellCaption(h0,1) = "Sales Representative"
	oGantt.TemplateDef = "dim var_Items,h0"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h0
	oGantt.Template = "var_Items.CellCaption(h0,1) = `Sales Representative`"

	' var_Items.CellCaption(h0,2) = "London"
	oGantt.TemplateDef = "dim var_Items,h0"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h0
	oGantt.Template = "var_Items.CellCaption(h0,2) = `London`"

	h0 = var_Items.AddItem("Janet Leverling")
	' var_Items.CellCaption(h0,1) = "Sales Representative"
	oGantt.TemplateDef = "dim var_Items,h0"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h0
	oGantt.Template = "var_Items.CellCaption(h0,1) = `Sales Representative`"

	' var_Items.CellCaption(h0,2) = "Kirkland"
	oGantt.TemplateDef = "dim var_Items,h0"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h0
	oGantt.Template = "var_Items.CellCaption(h0,2) = `Kirkland`"

	h0 = var_Items.InsertItem(h0,,"Margaret Peacock")
	' var_Items.CellCaption(h0,1) = "Sales Representative"
	oGantt.TemplateDef = "dim var_Items,h0"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h0
	oGantt.Template = "var_Items.CellCaption(h0,1) = `Sales Representative`"

	' var_Items.CellCaption(h0,2) = "Redmond"
	oGantt.TemplateDef = "dim var_Items,h0"
	oGantt.TemplateDef = var_Items
	oGantt.TemplateDef = h0
	oGantt.Template = "var_Items.CellCaption(h0,2) = `Redmond`"

oGantt.ApplyFilter()
oGantt.EndUpdate()