2397
Is it possible to extend the HotBackColor property to the chart section, so that an item is highlighted when the cursor hovers over it
OBJECT bar,chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Def");
_ObjectSetProperty( g2antt , "HotBackColor", 16758379);
_ObjectSetProperty( g2antt , "HotForeColor", 16777215);
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(188) = 65536");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
	_ObjectSetProperty( chart , "SelBackColor", _ObjectGetProperty( g2antt , "SelBackColor"));
	_ObjectSetProperty( chart , "HotBackColor", _ObjectGetProperty( g2antt , "HotBackColor"));
	_ObjectSetProperty( chart , "HotForeColor", _ObjectGetProperty( g2antt , "HotForeColor"));
	_ObjectSetProperty( chart , "AllowCreateBar", 1);
	bar = _ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Item(`Task`)");
		_ObjectSetProperty( bar , "Color", 0);
		_ObjectSetProperty( bar , "Pattern", 1);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "Item A");
	_ObjectCallMethod( items , "AddItem", "Item B");
	_ObjectCallMethod( items , "AddItem", "Item C");
_ObjectCallMethod( g2antt , "EndUpdate");

2396
The Change event is called before changing the value. Is there any event such as Changed that is called after updating the cell's value
// Changed event - Occurs after the user has changed the content of a cell.
FUNCTION g2anttEvents_Changed(OBJECT g2antt, INT Item, INT ColIndex)
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim _ObObj,ColIndex,Item")
	_ObjectCallMethod(g2antt, "TemplatePut", _ObjectGetProperty( g2antt , "Items"))
	_ObjectCallMethod(g2antt, "TemplatePut", ColIndex)
	_ObjectCallMethod(g2antt, "TemplatePut", Item)
	Message( _ObjectCallMethod(g2antt, "ExecuteTemplate", "_ObObj.CellValue(Item,ColIndex)") );
END

OBJECT g2antt;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Chart.PaneWidth(True) = 0");
_ObjectSetProperty( _ObjectGetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Edit") , "Editor") , "EditType", 1);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Items") , "AddItem", "Item 1");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Items") , "AddItem", "Item 2");
_ObjectCallMethod( g2antt , "EndUpdate");

2395
How can I reposition the +/- (expand/collapse) icon to show as "number, icon, text" (sample 2)
// AnchorClick event - Occurs when an anchor element is clicked.
FUNCTION g2anttEvents_AnchorClick(OBJECT g2antt, STRING AnchorID, STRING Options)
	OBJECT items;
	i = _ObjectCallMethod( g2antt , "FormatABC", "int(value)",AnchorID);
	items = _ObjectGetProperty( g2antt , "Items");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,i")
		_ObjectCallMethod(g2antt, "TemplatePut", items)
		_ObjectCallMethod(g2antt, "TemplatePut", i)
		i = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(i)");
		exp = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(i)");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,exp,i")
		_ObjectCallMethod(g2antt, "TemplatePut", items)
		_ObjectCallMethod(g2antt, "TemplatePut", exp)
		_ObjectCallMethod(g2antt, "TemplatePut", i)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(i) = Me.FormatABC(`not value`,exp)");
END

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "HTMLPicture(`expand`) = `gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYc7YYBY5vVBkiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyxgjsRzEKv1TqtXrNbrtfsIAwgASAHAGShQwGQzGABUGEzudAqgyWdSmWw2Fw+sABSHI4AGH1XAGAxGAwywlI6eRqjGi1YuaJJEIJUHBPYqSJYKQAwCBDKbBPbncBibrUKQjGLFQo+TBFfR5GaUAR/KbGICyRxsiCOQClgdJxGoMpkGycpdDqUZ0EoJQJHYVoWCSCA4kEbRlHKRwJiYcYCH0PBNB2JwYCaCRsGcE8LDyfZKg+U59EsAZMlQCgJkcEA9CsywkiKJwiFcIQwEEgI=`");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "HTMLPicture(`collapse`) = `gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYU7YQBCooJSAiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyzyO13dGEAGYzWcqlWrFarlesA3AGcSAHAGShQwGQzGABUGEv2TAAFUGS26Uy2GwuH1wAKQ5HAAw+s4YwGIwGGWISpVLiXT5MrxiJyJJEIJUHBPYqSXYOQAgBgAB6jJwufxxX7YYhdYhFCSsSwSC4uMLoQajNJAG8QgZAgSIqGMCwRBkAJDicGwuiMeoHGeaRFlAU5qDwQQ6A+CYnlgPQeisGJfl4AJYhsRISjQYwJHIcpmmALAtlMEpkE4YBREmEpPBAARdicSw8AES5fi+fI5g+PpcAAUJKgyCYknaZRrssJIiicIhXCEMBBICA==`");
_ObjectSetProperty( g2antt , "HeaderVisible", 0);
_ObjectSetProperty( g2antt , "HasLines", 0);
_ObjectSetProperty( g2antt , "HasButtons", 0);
_ObjectSetProperty( g2antt , "Indent", 12);
_ObjectSetProperty( g2antt , "DefaultItemHeight", 24);
_ObjectSetProperty( g2antt , "DrawGridLines", 1);
_ObjectSetProperty( g2antt , "GridLineStyle", 48);
_ObjectSetProperty( g2antt , "GridLineColor", 13421772);
_ObjectSetProperty( g2antt , "ShowFocusRect", 0);
_ObjectSetProperty( g2antt , "ExpandOnDblClick", 0);
_ObjectSetProperty( g2antt , "ExpandOnKeys", 0);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Item");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(17) = 1");
		_ObjectSetProperty( column , "FormatColumn", "(len(parent(1 index ``)) ? (`<b><fgcolor gray>` + (1 pos ``) + `. ` + `</fgcolor></b>` + `<a ` + (0 index ``) + `><img>` + (%CC" +
	"0 ? (not %CX0 ? `expand` : `collapse`) : ``) + `:16</img></a>`) : ``) + ` ` + value");
items = _ObjectGetProperty( g2antt , "Items");
	hRoot = _ObjectCallMethod( items , "AddItem", "ACME Corporation");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,hRoot")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", hRoot)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(hRoot) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(hRoot) = True");
	h = _ObjectCallMethod( items , "InsertItem", hRoot,"","Management");
	_ObjectCallMethod( items , "InsertItem", h,"","CEO - Alice Brown");
	_ObjectCallMethod( items , "InsertItem", h,"","COO - James Lee");
	h = _ObjectCallMethod( items , "InsertItem", hRoot,"","HR Department");
	_ObjectCallMethod( items , "InsertItem", h,"","Recruiter - Jane Smith");
	_ObjectCallMethod( items , "InsertItem", h,"","HR Assistant - Bob Green");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
	h = _ObjectCallMethod( items , "InsertItem", h,"","Engineering");
	_ObjectCallMethod( items , "InsertItem", h,"","Software Team");
	h = _ObjectCallMethod( items , "InsertItem", h,"","Lead Developer - Mark H.");
	_ObjectCallMethod( items , "InsertItem", h,"","Frontend Dev - Emily R.");
	_ObjectCallMethod( items , "InsertItem", h,"","Backend Dev - Tom W.");
	_ObjectCallMethod( items , "InsertItem", hRoot,"","QA Team");
_ObjectCallMethod( g2antt , "EndUpdate");

2394
How can I reposition the +/- (expand/collapse) icon to show as "number, icon, text" (sample 1)

// AnchorClick event - Occurs when an anchor element is clicked.
FUNCTION g2anttEvents_AnchorClick(OBJECT g2antt, STRING AnchorID, STRING Options)
	OBJECT items;
	i = _ObjectCallMethod( g2antt , "FormatABC", "int(value)",AnchorID);
	items = _ObjectGetProperty( g2antt , "Items");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,i")
		_ObjectCallMethod(g2antt, "TemplatePut", items)
		_ObjectCallMethod(g2antt, "TemplatePut", i)
		i = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(i)");
		exp = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(i)");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,exp,i")
		_ObjectCallMethod(g2antt, "TemplatePut", items)
		_ObjectCallMethod(g2antt, "TemplatePut", exp)
		_ObjectCallMethod(g2antt, "TemplatePut", i)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(i) = Me.FormatABC(`not value`,exp)");
END

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "HTMLPicture(`expand`) = `gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYc7YYBY5vVBkiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyxgjsRzEKv1TqtXrNbrtfsIAwgASAHAGShQwGQzGABUGEzudAqgyWdSmWw2Fw+sABSHI4AGH1XAGAxGAwywlI6eRqjGi1YuaJJEIJUHBPYqSJYKQAwCBDKbBPbncBibrUKQjGLFQo+TBFfR5GaUAR/KbGICyRxsiCOQClgdJxGoMpkGycpdDqUZ0EoJQJHYVoWCSCA4kEbRlHKRwJiYcYCH0PBNB2JwYCaCRsGcE8LDyfZKg+U59EsAZMlQCgJkcEA9CsywkiKJwiFcIQwEEgI=`");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "HTMLPicture(`collapse`) = `gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYU7YQBCooJSAiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyzyO13dGEAGYzWcqlWrFarlesA3AGcSAHAGShQwGQzGABUGEv2TAAFUGS26Uy2GwuH1wAKQ5HAAw+s4YwGIwGGWISpVLiXT5MrxiJyJJEIJUHBPYqSXYOQAgBgAB6jJwufxxX7YYhdYhFCSsSwSC4uMLoQajNJAG8QgZAgSIqGMCwRBkAJDicGwuiMeoHGeaRFlAU5qDwQQ6A+CYnlgPQeisGJfl4AJYhsRISjQYwJHIcpmmALAtlMEpkE4YBREmEpPBAARdicSw8AES5fi+fI5g+PpcAAUJKgyCYknaZRrssJIiicIhXCEMBBICA==`");
_ObjectSetProperty( g2antt , "HeaderVisible", 0);
_ObjectSetProperty( g2antt , "HasLines", 0);
_ObjectSetProperty( g2antt , "HasButtons", 0);
_ObjectSetProperty( g2antt , "Indent", 12);
_ObjectSetProperty( g2antt , "DefaultItemHeight", 24);
_ObjectSetProperty( g2antt , "DrawGridLines", 1);
_ObjectSetProperty( g2antt , "GridLineStyle", 48);
_ObjectSetProperty( g2antt , "GridLineColor", 13421772);
_ObjectSetProperty( g2antt , "ShowFocusRect", 0);
_ObjectSetProperty( g2antt , "ExpandOnDblClick", 0);
_ObjectSetProperty( g2antt , "ExpandOnKeys", 0);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Item");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(17) = 1");
		_ObjectSetProperty( column , "FormatColumn", "(len(parent(1 index ``)) ? (`<b><fgcolor gray>` + (1 pos ``) + `. ` + `</fgcolor></b>` + `<a ` + (0 index ``) + `><img>` + (%CC" +
	"0 ? (not %CX0 ? `expand` : `collapse`) : ``) + `:16</img></a>`) : ``) + ` ` + value");
items = _ObjectGetProperty( g2antt , "Items");
	hRoot = _ObjectCallMethod( items , "AddItem", "ACME Corporation");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,hRoot")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", hRoot)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(hRoot) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(hRoot) = True");
	h = _ObjectCallMethod( items , "InsertItem", hRoot,"","Management");
	_ObjectCallMethod( items , "InsertItem", h,"","CEO - Alice Brown");
	_ObjectCallMethod( items , "InsertItem", h,"","COO - James Lee");
	h = _ObjectCallMethod( items , "InsertItem", hRoot,"","HR Department");
	_ObjectCallMethod( items , "InsertItem", h,"","Recruiter - Jane Smith");
	_ObjectCallMethod( items , "InsertItem", h,"","HR Assistant - Bob Green");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
	h = _ObjectCallMethod( items , "InsertItem", h,"","Engineering");
	_ObjectCallMethod( items , "InsertItem", h,"","Software Team");
	h = _ObjectCallMethod( items , "InsertItem", h,"","Lead Developer - Mark H.");
	_ObjectCallMethod( items , "InsertItem", h,"","Frontend Dev - Emily R.");
	_ObjectCallMethod( items , "InsertItem", h,"","Backend Dev - Tom W.");
	_ObjectCallMethod( items , "InsertItem", hRoot,"","QA Team");
_ObjectCallMethod( g2antt , "EndUpdate");

2393
Expandable bullet list

// AnchorClick event - Occurs when an anchor element is clicked.
FUNCTION g2anttEvents_AnchorClick(OBJECT g2antt, STRING AnchorID, STRING Options)
	OBJECT items;
	i = _ObjectCallMethod( g2antt , "FormatABC", "int(value)",AnchorID);
	items = _ObjectGetProperty( g2antt , "Items");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,i")
		_ObjectCallMethod(g2antt, "TemplatePut", items)
		_ObjectCallMethod(g2antt, "TemplatePut", i)
		i = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(i)");
		exp = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(i)");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,exp,i")
		_ObjectCallMethod(g2antt, "TemplatePut", items)
		_ObjectCallMethod(g2antt, "TemplatePut", exp)
		_ObjectCallMethod(g2antt, "TemplatePut", i)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(i) = Me.FormatABC(`not value`,exp)");
END

OBJECT column,columns,editor,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "HTMLPicture(`expand`) = `gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYM7YIBXCRNbtiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyzZO13dGEAGYzWcqlWrFarlesA3AGcSAHAGShQwGQzGABUGEv2TAAFUGS26Uy2GwuH1wAKQ5HAAw+s4YwGIwGGWNa6awbST7DBTiLyJJEIJUHBPUqSGJuYYwCAES5pBiQfyEX4QKAFH6QSihJQ/GZlET1FhIcgGnUdoVHMmxajSIghlMKhsGiAAFggQ5dmKcRHEUEhbFAFQBgacABmAAJgAAcAJkAZgNjUcwDFecYcD8QoIDsGJjD6aYaGyHI7mqLRfgGfBcg+TYggkEhakQThtFsEpAE2Xh7goSIJiSHp6haKgPGOXx3j+c5hiKLpri6JAPHWYJREuFJkBCYxcFeYS7ikJQzG0ZIVGKMBYGsVwXDWVQHjqfpjAoYpyE4Z5vH2YoHDkZwzkkUxHC8pwCgifIHBCdk4GMLQVmcXJVhicxWi4IIUiKSQ1A8cBUj+eBEGCFQlFSIophiPRkFAWBLFALhwm+HhKjARpmgSGwNn4AIUCcZZUFEKoVmwywkiKJwiFcIQwEEgI`");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "HTMLPicture(`collapse`) = `gCJKBOI4NBQaBQAhQNJJIIhShQACERCAIA0RD7zf5hiIBOZSI5CACuZwcdMRAhnIJNIMKWKPBb8MIFiIJOBILJzhQOYM7YIBXCRNbtiIYOhFLB0KZvMx0O5hORlABQMJpNx0FxOIpUEA1FwxFw3RbWe45iK2MpYJJmJJJFQABERmgaAM0AMRJURDd1AF3hUQhQoAIDvsRAURGIBw8ThRaiJpQ4EwsKNURyzZO13dGEAGYzWcqlWrFarlesA3AGcSAHAGShQwGQzGABUGEv2TAAFUGS26Uy2GwuH1wAKQ5HAAw+s4YwGIwGGWNa6awbST7DBTiLZJJEIJUHBPdpSGKOAQxCAzGhIBKfbAvUBsSIPbiVMhLTxJPK3banJB0N5sA8VQRlmCRKjSCRaAIOgCiORISiWaI0DYLJPBYJBxB+LAqAMBRgAsIABjAAhYAOEB5kKDQ5kGZoaCaL5vH2KoEDCbpbDaWRrE8SopE+AA/DcMoZkgAgkhKERDlcdYEHAJRzg4IpyCAKRyl6HZLGONwMEMb5clwWB3n2CZki6FoWC4cwQCbGYukKwhiAwOp3HIEJFGCNBGDyLArE8R56n4RUnlOShHGcXJdgcKQlCOSRdEcLw8DmAoInyexvFeMRGG0DARmsbRZmsfRxleFZeHoD4eEKKRxGmPANgAC5xDAWpYHMW4uCGywkiKJwiFcIQwEEgI`");
_ObjectSetProperty( g2antt , "HeaderVisible", 0);
_ObjectSetProperty( g2antt , "HasLines", 0);
_ObjectSetProperty( g2antt , "HasButtons", 0);
_ObjectSetProperty( g2antt , "Indent", 12);
_ObjectSetProperty( g2antt , "DefaultItemHeight", 24);
_ObjectSetProperty( g2antt , "DrawGridLines", 1);
_ObjectSetProperty( g2antt , "GridLineStyle", 48);
_ObjectSetProperty( g2antt , "GridLineColor", 13421772);
_ObjectSetProperty( g2antt , "ShowFocusRect", 0);
_ObjectSetProperty( g2antt , "ExpandOnDblClick", 0);
_ObjectSetProperty( g2antt , "ExpandOnKeys", 0);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Item");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(17) = 1");
		_ObjectSetProperty( column , "FormatColumn", "(len(parent(1 index ``)) ? (`<b><fgcolor gray>` + (1 pos ``) + `. ` + `</fgcolor></b>` + `<a ` + (0 index ``) + `><img>` + (%CC" +
	"0 ? (not %CX0 ? `expand` : `collapse`) : `collapse`) + `:16</img></a>`) : ``) + ` ` + value");
		editor = _ObjectGetProperty( column , "Editor");
			_ObjectSetProperty( editor , "EditType", 1);
			_ObjectCallMethod(g2antt, "TemplatePut", "Dim ediObj")
			_ObjectCallMethod(g2antt, "TemplatePut", editor)
			_ObjectCallMethod(g2antt, "ExecuteTemplate", "ediObj.Option(116) = `32D 4D -4D -4D`");
items = _ObjectGetProperty( g2antt , "Items");
	hRoot = _ObjectCallMethod( items , "AddItem", "ACME Corporation");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,hRoot")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", hRoot)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(hRoot) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(hRoot) = True");
	h = _ObjectCallMethod( items , "InsertItem", hRoot,"","Management");
	_ObjectCallMethod( items , "InsertItem", h,"","CEO - Alice Brown");
	_ObjectCallMethod( items , "InsertItem", h,"","COO - James Lee");
	h = _ObjectCallMethod( items , "InsertItem", hRoot,"","HR Department");
	_ObjectCallMethod( items , "InsertItem", h,"","Recruiter - Jane Smith");
	_ObjectCallMethod( items , "InsertItem", h,"","HR Assistant - Bob Green");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
	h = _ObjectCallMethod( items , "InsertItem", h,"","Engineering");
	_ObjectCallMethod( items , "InsertItem", h,"","Software Team");
	h = _ObjectCallMethod( items , "InsertItem", h,"","Lead Developer - Mark H.");
	_ObjectCallMethod( items , "InsertItem", h,"","Frontend Dev - Emily R.");
	_ObjectCallMethod( items , "InsertItem", h,"","Backend Dev - Tom W.");
	_ObjectCallMethod( items , "InsertItem", hRoot,"","QA Team");
_ObjectCallMethod( g2antt , "EndUpdate");

2392
How can I update the bar's start position without affecting its working duration

OBJECT bar,chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/31/2009");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 96");
	bar = _ObjectCallMethod( _ObjectGetProperty( chart , "Bars") , "Add", "Task:Split");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim barObj")
		_ObjectCallMethod(g2antt, "TemplatePut", bar)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "barObj.Def(20) = True");
		_ObjectSetProperty( bar , "Shortcut", "Task");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Item");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/4/2010","1/9/2010","");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,``,544) = #1/7/2010#");
_ObjectCallMethod( g2antt , "EndUpdate");

2391
How can I update the bar's start position without affecting its duration

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/31/2009");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 96");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Item");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/4/2010","1/9/2010","");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,``,544) = #1/7/2010#");
_ObjectCallMethod( g2antt , "EndUpdate");

2390
Change the tooltip position for the chart
// ToolTip event - Fired when the control prepares the object's tooltip.
FUNCTION g2anttEvents_ToolTip(OBJECT g2antt, INT Item, INT ColIndex, INT Visible, INT X, INT Y, INT CX, INT CY)
	Y = _ObjectCallMethod( g2antt , "FormatABC", "A = -6 ? B + 60 : B",ColIndex,Y);
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "ToolTip", "This is a bit of text that's shown while hovers the level");
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/31/2009");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 96");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Type");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 1"),"Task","1/4/2010","1/9/2010");
_ObjectCallMethod( g2antt , "EndUpdate");

2389
Change the tooltip position for the overview
// ToolTip event - Fired when the control prepares the object's tooltip.
FUNCTION g2anttEvents_ToolTip(OBJECT g2antt, INT Item, INT ColIndex, INT Visible, INT X, INT Y, INT CX, INT CY)
	X = _ObjectCallMethod( g2antt , "FormatABC", "A = -5 ? B - C/2 : B",ColIndex,X,CX);
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "OverviewVisible", -1);
	_ObjectSetProperty( chart , "OverviewToolTip", "This is a bit of text that's shown while hovers the level");
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/31/2009");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 96");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Type");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 1"),"Task","1/4/2010","1/9/2010");
_ObjectCallMethod( g2antt , "EndUpdate");

2388
Change the tooltip position for the note
// ToolTip event - Fired when the control prepares the object's tooltip.
FUNCTION g2anttEvents_ToolTip(OBJECT g2antt, INT Item, INT ColIndex, INT Visible, INT X, INT Y, INT CX, INT CY)
	Y = _ObjectCallMethod( g2antt , "FormatABC", "A = -4 ? B - 6 : B",ColIndex,Y);
END

OBJECT chart,g2antt,items,notes;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/31/2009");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 96");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Type");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 1"),"Task","1/4/2010","1/9/2010");
notes = _ObjectGetProperty( _ObjectGetProperty( g2antt , "Chart") , "Notes");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim notObj")
	_ObjectCallMethod(g2antt, "TemplatePut", notes)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "notObj.Add(`1S`,Me.Items.FirstVisibleItem,``,`Note`).PartToolTip(1) = `This is a bit of text that's shown while hovers the level`");
_ObjectCallMethod( g2antt , "EndUpdate");

2387
Change the tooltip position for the link
// ToolTip event - Fired when the control prepares the object's tooltip.
FUNCTION g2anttEvents_ToolTip(OBJECT g2antt, INT Item, INT ColIndex, INT Visible, INT X, INT Y, INT CX, INT CY)
	X = _ObjectCallMethod( g2antt , "FormatABC", "A = -3 ? B - 16 : B",ColIndex,X);
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/31/2009");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 96");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Type");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 1"),"Task","1/4/2010","1/9/2010");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 1"),"Task","1/4/2010","1/9/2010");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod( items , "AddLink", "link",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(0)"),"",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(1)"),"");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`link`,13) = `This is a bit of text that's shown while hovers the level`");
_ObjectCallMethod( g2antt , "EndUpdate");

2386
Change the tooltip position for the bar
// ToolTip event - Fired when the control prepares the object's tooltip.
FUNCTION g2anttEvents_ToolTip(OBJECT g2antt, INT Item, INT ColIndex, INT Visible, INT X, INT Y, INT CX, INT CY)
	X = _ObjectCallMethod( g2antt , "FormatABC", "A = -2 ? B + 16 : B",ColIndex,X);
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/31/2009");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 96");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Item(`Task`).Def(6) = `This is a bit of text that's shown while hovers the level`");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Type");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Original"),"Task","1/4/2010","1/9/2010","");
_ObjectCallMethod( g2antt , "EndUpdate");

2385
Change the tooltip position for the chart's level/header
// ToolTip event - Fired when the control prepares the object's tooltip.
FUNCTION g2anttEvents_ToolTip(OBJECT g2antt, INT Item, INT ColIndex, INT Visible, INT X, INT Y, INT CX, INT CY)
	Y = _ObjectCallMethod( g2antt , "FormatABC", "A = -1 ? B + 16 : B",ColIndex,Y);
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/31/2009");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 96");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Level(0).ToolTip = `This is a bit of text that's shown while hovers the level`");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Type");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Original"),"Task","1/4/2010","1/9/2010","");
_ObjectCallMethod( g2antt , "EndUpdate");

2384
Change the tooltip position for the column
// ToolTip event - Fired when the control prepares the object's tooltip.
FUNCTION g2anttEvents_ToolTip(OBJECT g2antt, INT Item, INT ColIndex, INT Visible, INT X, INT Y, INT CX, INT CY)
	X = _ObjectCallMethod( g2antt , "FormatABC", "A >= 0 ? B - 64 : B",ColIndex,X);
	Y = _ObjectCallMethod( g2antt , "FormatABC", "A >= 0 ? B + 24 : B",ColIndex,Y);
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/31/2009");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 96");
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Type") , "ToolTip", "This is a bit of text that's shown while hovers the column");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Original"),"Task","1/4/2010","1/9/2010","");
_ObjectCallMethod( g2antt , "EndUpdate");

2383
Change the properties of bars within the specified date range

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Tasks");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "8/1/2017");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 1"),"Task","8/2/2017","8/6/2017");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 2"),"Task","8/3/2017","8/9/2017");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 3"),"Task","8/4/2017","8/13/2017");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 4"),"Task","8/5/2017","8/16/2017");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBarEx(`(itembar(2) <= #8/9/2017#) and (itembar(1) >= #8/1/2017#)`,42) = 6");
_ObjectCallMethod( g2antt , "EndUpdate");

2382
Set the base level in 3-day intervals

OBJECT chart,g2antt,level;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "3/17/2025");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
	_ObjectSetProperty( chart , "LevelCount", 3);
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Level(2).Count = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Level(1).Label = 256");
	level = _ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Level(0)");
		_ObjectSetProperty( level , "Label", 16);
		_ObjectSetProperty( level , "Alignment", 17);
	_ObjectSetProperty( chart , "UnitWidth", 64);
_ObjectCallMethod( g2antt , "EndUpdate");

2381
I am using EBN for my milestone bars, but they appear very small on high DPI resolutions

OBJECT appearance,bar,chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
appearance = _ObjectGetProperty( g2antt , "VisualAppearance");
	_ObjectCallMethod( appearance , "Add", 1,"gBFLBCJwBAEHhEJAAEhABM8GACAADACAxRDAMgBQKAAzQFAYahqGKGAAGOD4JhUAIIRZGMIjFDcEwxC6EX7kIAJCb+IIDATCIyjAIoWhxFKGZYlYAoJDENo0QRCcZTR" +
	"I8NQGCyEQwnOQZDiWFofR6CEIlAZJRjoOo5DJGGL0WAaAxCEzVMYjNBIUQTICBaCgOCLCgkYJWT5aMi2XZlWzdNhTVIfC4XYq+dp3UZJF4XXZtaTpPjALxwG5rerJGTk" +
	"P7hb74LauBzdAbHLaxTCsKwzEZtZBjWR4RimOY9RLEMqxbKcDxvIKnZzpehYHomCTlOjUdhzfYtKy+cp7azbejbJrmZ5DWzGbr3HC+Az3KK+cbyOo6XgVYaLZDjOh5Dh" +
	"kgwAY7mgdg5F2Hg2DIB5Xm0eA6F4HJ/HeLZPnGeg8F2TgHHuT5qm2fA8B4W5vjuY5vmSdQkle7p/m+dx+FwN5RHMYYfGeRZ5GYH42joAw+B+ZxmAcWwgBWYZ9gOHAGEY" +
	"ERdmEN5KBUaJghYXZEgKXI4G4Hh1GINIVl+A5akgdglgmIgoi0a4FmIOIiCMQJOjQRQJEAQCAgA==");
	_ObjectCallMethod( appearance , "Add", 2,"CP:1 0 -1D 11D 1D");
	_ObjectCallMethod( appearance , "Add", 3,"gBFLBCJwBAEHhEJAAEhABIICg6AADACAxRDAMgBQKAAzQFAYahqGKGAAGOD4JhUAIIRZGMIjFDcEwxC6EX7kIAJCb+IIDATCIyjAIoWhxFKGZYlYAoJDENo0QRCcZTR" +
	"I8NQGCyEQ4nOQZDiWFofR6CEIlAZJRjoOo5DJGGL1GAeAxCEzVMYjNBIUQTICBaCgOCAYhYcJWT5aMi2XZlWzaaBnWauC4rRrObp3XhbMB3TbkSznP66bhvXA7MrvBJ+" +
	"YDdGJLMwTC4YYrAGawe6MGxPEaRY7jeQ5Ha+KzxS7EWDXBTdCS1DBeD7pY76LouN45Ty7dAxLTNDyrKq0KzrWR7A7+ZTnXBFTDJXgSNThGx+cYfXCcJrGdYpEi2N6uHg" +
	"HAuCZJmScp4FyXBNnYB5SGcdSTiaGoMm+ZA7jsFpph8Shnk+Z5shMex4iuUADj+YZiHuPI+k8Z5km+cB8hcZgVlAWpfHeDZlHmX43ioCR6mCJ4pn0fANFMEI3gQSx3lE" +
	"bYBESV52AuBpgleNgHHkYQIEoFB9CESBRnCBohlgcgMgqYooD2VRwiIWBJAODBLHiHgfHoIoYmYLIOh+SJeCGBJjCAAY2GoHR3B4KoRmOSQmCuERHmkDA/ECZJpDISIO" +
	"mUSROAuEwkmiTgigSHwCkiIgjiWYg6FaEogjMUIyCaZhiG4P4FCWKQCDWC5ElmBhhhiZRYmoaYaGaOQFG2DQfAmXhnDsTAyiqhwoBoDoGiAZ5piocINCEZYyHyHAohoH" +
	"oEiSaQqCYeYFGAJZ2g8eIEloJJ3DKSxqHyNoliiORuhgXhbkmbomh8Zh5iaIooioShygwXwqhWcobHWHB3GKJYbhmRIaAMYZrHcChMiWa5alWE4NCSapOj0WpsGsAomj" +
	"IahrC6GY0heAxYlwNwtGMcpUHObY1l6WY2G2VY5AMOpRBQJQBICA=");
	_ObjectCallMethod( appearance , "Add", 4,"CP:3 0 -1D 11D 1D");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2001");
	bar = _ObjectCallMethod( _ObjectGetProperty( chart , "Bars") , "Copy", "Milestone","Milestonee3");
		_ObjectSetProperty( bar , "Color", 33554432);
		_ObjectSetProperty( bar , "Height", 22);
	bar = _ObjectCallMethod( _ObjectGetProperty( chart , "Bars") , "Copy", "Milestone","Milestonee4");
		_ObjectSetProperty( bar , "Color", 67108864);
		_ObjectSetProperty( bar , "Height", 22);
_ObjectSetProperty( g2antt , "DefaultItemHeight", 28);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Tasks");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Milestone"),"Milestone","1/2/2001","1/2/2001");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "milestonee3.ebn"),"Milestonee3","1/2/2001","1/2/2001");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "milestonee4.ebn"),"Milestonee4","1/2/2001","1/2/2001");
_ObjectCallMethod( g2antt , "EndUpdate");

2380
How can I vertically scroll the control
// AddItem event - Occurs after a new Item has been inserted to Items collection.
FUNCTION g2anttEvents_AddItem(OBJECT g2antt, INT Item)
	OBJECT items;
	items = _ObjectGetProperty( g2antt , "Items");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,Item")
		_ObjectCallMethod(g2antt, "TemplatePut", items)
		_ObjectCallMethod(g2antt, "TemplatePut", Item)
		_ObjectCallMethod( items , "AddBar", Item,"Task",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(Item,2)"),_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(Item,4)"));
END

OBJECT chart,g2antt;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "ColumnAutoResize", 0);
_ObjectSetProperty( g2antt , "DataSource", _ObjectCallMethod( _ObjectCallMethod( CreateObject("DAO.DBEngine.120") , "OpenDatabase", "C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb") , "OpenRecordset", "Orders"));
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "8/4/1994");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 256");
_ObjectSetProperty( _ObjectGetProperty( g2antt , "Items") , "AllowCellValueToItemBar", -1);
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Columns.Item(2).Def(18) = 1");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Columns.Item(4).Def(18) = 2");
_ObjectSetProperty( g2antt , "Layout", "Collapse=^"^";VScroll=10");
_ObjectCallMethod( g2antt , "EndUpdate");

2379
Export the items as a two-dimensional array

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "PutItems", _ObjectCallMethod( g2antt , "Export", "array","all"));
_ObjectCallMethod( g2antt , "EndUpdate");

2378
Export only expanded items

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","only(expanded)") );

2377
Export only selectable, sortable leaf items that are neither locked nor dividers

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","only(leaf,sortable,selectable,!divider,!locked)") );

2376
Export only non-divider items

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","only(!divider)") );

2375
Export only selectable items

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","only(selectable)") );

2374
Export only sortable, but not locked items

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","only(sortable,!locked)") );

2373
Export only checked items on specified column

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","only(checked[0])") );

2372
Export only filtered, not locked or divider items

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","only(visible,!locked,!divider)") );

2371
Export only selected items

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","only(selected)") );

2370
Export only locked items

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","only(locked)") );

2369
Export the leaf items of the control, excluding parent or grouped items

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","leaf") );

2368
Export all checked and visible items (the first column in the columns list specifies the index of the column used to query the checkbox state)

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","chk") );

2367
Export the selected-items

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","sel") );

2366
Export the visible items, excluding child items of collapsed elements, non-visible items (such as those with a height of 0), and items that do not match the current filter

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","vis") );

2365
Export all items, including the hidden or collapsed items

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "LinesAtRoot", 5);
columns = _ObjectGetProperty( g2antt , "Columns");
	column = _ObjectCallMethod( columns , "Add", "Desc");
		_ObjectSetProperty( column , "Width", 32);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
		_ObjectSetProperty( column , "FormatColumn", "currency(value)");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(0) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(0,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `All`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `sum(all,rec,%1)`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,1) = 4");
	r = _ObjectCallMethod( items , "AddItem", "Root 1");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group A");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 1`),1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 2`),1) = 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(ItemByIndex(3),0) = 1");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group B");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 3`),1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g2,,`Item 4`),1) = 4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(g1) = True");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,r")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", r)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(r) = True");
	h = _ObjectCallMethod( items , "AddItem", "divider");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SortableItem(h) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 1");
	r = _ObjectCallMethod( items , "AddItem", "Root 2");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 5`),1) = 5");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(g1,,`Item 6`),1) = 6");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(ItemByIndex(2)) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
Message( _ObjectCallMethod( g2antt , "Export", "","all") );

2364
Bolds only the expanded items

OBJECT g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "ConditionalFormats") , "Add", "%CX0") , "Bold", -1);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Description");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Root 1");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 1");
	_ObjectCallMethod( items , "InsertItem", _ObjectCallMethod( items , "InsertItem", h,"","Child 2"),"","Sub-Child 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(InsertItem(h,,`Child 3`),0) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
	h = _ObjectCallMethod( items , "AddItem", "Root 2");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 1");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 2");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 3");
_ObjectCallMethod( g2antt , "EndUpdate");

2363
Displays the root item's index and value/caption using expressions

OBJECT column,conditionalformat,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
_ObjectSetProperty( g2antt , "AutoDrag", 3);
_ObjectSetProperty( g2antt , "AllowCopyPaste", 7);
_ObjectSetProperty( g2antt , "SingleSel", 0);
_ObjectSetProperty( g2antt , "DrawGridLines", -2);
_ObjectSetProperty( g2antt , "GridLineStyle", 48);
_ObjectSetProperty( g2antt , "GridLineColor", 13684944);
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "ConditionalFormats") , "Add", "%CC0 and %CX0") , "Bold", -1);
conditionalformat = _ObjectCallMethod( _ObjectGetProperty( g2antt , "ConditionalFormats") , "Add", "1");
	_ObjectSetProperty( conditionalformat , "Bold", -1);
	_ObjectSetProperty( conditionalformat , "ApplyTo", 2);
column = _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Description");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
	_ObjectCallMethod(g2antt, "TemplatePut", column)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	_ObjectSetProperty( column , "PartialCheck", -1);
column = _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Index");
	_ObjectSetProperty( column , "FormatColumn", "1 index ``");
	_ObjectSetProperty( column , "Position", 0);
	_ObjectSetProperty( column , "Width", 16);
column = _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Root-Index");
	_ObjectSetProperty( column , "FormatColumn", "root(1 index ``)");
	_ObjectSetProperty( column , "Position", 1);
	_ObjectSetProperty( column , "Width", 32);
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(4) = 15790320");
column = _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Root-Value");
	_ObjectSetProperty( column , "FormatColumn", "root(%0)");
	_ObjectSetProperty( column , "Position", 2);
	_ObjectSetProperty( column , "Width", 32);
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(4) = 15790320");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Root 1");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 1");
	_ObjectCallMethod( items , "InsertItem", _ObjectCallMethod( items , "InsertItem", h,"","Child 2"),"","Sub-Child 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(InsertItem(h,,`Child 3`),0) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
	h = _ObjectCallMethod( items , "AddItem", "Root 2");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 1");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 2");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
_ObjectCallMethod( g2antt , "EndUpdate");

2362
Displays the parent item's index and caption/value using expressions

OBJECT column,conditionalformat,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
_ObjectSetProperty( g2antt , "AutoDrag", 3);
_ObjectSetProperty( g2antt , "AllowCopyPaste", 7);
_ObjectSetProperty( g2antt , "SingleSel", 0);
_ObjectSetProperty( g2antt , "DrawGridLines", -2);
_ObjectSetProperty( g2antt , "GridLineStyle", 48);
_ObjectSetProperty( g2antt , "GridLineColor", 13684944);
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "ConditionalFormats") , "Add", "%CC0 and %CX0") , "Bold", -1);
conditionalformat = _ObjectCallMethod( _ObjectGetProperty( g2antt , "ConditionalFormats") , "Add", "1");
	_ObjectSetProperty( conditionalformat , "Bold", -1);
	_ObjectSetProperty( conditionalformat , "ApplyTo", 2);
column = _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Description");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
	_ObjectCallMethod(g2antt, "TemplatePut", column)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(0) = True");
	_ObjectSetProperty( column , "PartialCheck", -1);
column = _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Index");
	_ObjectSetProperty( column , "FormatColumn", "1 index `I`");
	_ObjectSetProperty( column , "Position", 0);
	_ObjectSetProperty( column , "Width", 16);
column = _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Parent-Index");
	_ObjectSetProperty( column , "FormatColumn", "parent(1 index `I`)");
	_ObjectSetProperty( column , "Position", 1);
	_ObjectSetProperty( column , "Width", 32);
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(4) = 15790320");
column = _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Parent-Value");
	_ObjectSetProperty( column , "FormatColumn", "parent(%0)");
	_ObjectSetProperty( column , "Position", 2);
	_ObjectSetProperty( column , "Width", 32);
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(4) = 15790320");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Root 1");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 1");
	_ObjectCallMethod( items , "InsertItem", _ObjectCallMethod( items , "InsertItem", h,"","Child 2"),"","Sub-Child 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellState(InsertItem(h,,`Child 3`),0) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
	h = _ObjectCallMethod( items , "AddItem", "Root 2");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 1");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 2");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
_ObjectCallMethod( g2antt , "EndUpdate");

2361
Copying and Pasting the Selection Programmatically
OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Tasks");
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2025");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
	_ObjectSetProperty( chart , "SelBackColor", _ObjectGetProperty( g2antt , "SelBackColor"));
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Item(`Task`).OverlaidType = 4");
_ObjectSetProperty( g2antt , "SingleSel", 0);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "Tasks");
	h = _ObjectCallMethod( items , "AddItem", "Task 1");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2025","1/8/2025","T1");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/7/2025","1/13/2025","T2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(h) = True");
	h = _ObjectCallMethod( items , "AddItem", "Task 2");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2025","1/8/2025","T1");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/7/2025","1/13/2025","T2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(h) = True");
_ObjectCallMethod( g2antt , "IndentSelection", 0);
_ObjectCallMethod( g2antt , "CopySelection");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Items") , "UnselectAll");
_ObjectCallMethod( g2antt , "Paste", );
_ObjectCallMethod( g2antt , "EndUpdate");

2360
Enable Copy, Cut and Paste Clipboard operations
OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Tasks");
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
_ObjectSetProperty( g2antt , "AllowCopyPaste", 7);
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "ConditionalFormats") , "Add", "%CC0 and %CX0") , "Bold", -1);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "ConditionalFormats") , "Add", "1");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2025");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
	_ObjectSetProperty( chart , "SelBackColor", _ObjectGetProperty( g2antt , "SelBackColor"));
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Item(`Task`).OverlaidType = 4");
_ObjectSetProperty( g2antt , "SingleSel", 0);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "Tasks");
	h = _ObjectCallMethod( items , "AddItem", "Task 1");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2025","1/8/2025","T1");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/7/2025","1/13/2025","T2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(h) = True");
	h = _ObjectCallMethod( items , "AddItem", "Task 2");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2025","1/8/2025","T1");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/7/2025","1/13/2025","T2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(h) = True");
_ObjectCallMethod( g2antt , "IndentSelection", 0);
_ObjectCallMethod( g2antt , "EndUpdate");

2359
Adjusts the hierarchy of selected items by changing their parent

OBJECT g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Tasks");
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
_ObjectSetProperty( g2antt , "SingleSel", 0);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "Tasks");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(AddItem(`Task A`)) = True");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectItem(AddItem(`Task B`)) = True");
_ObjectCallMethod( g2antt , "IndentSelection", 0);
_ObjectCallMethod( g2antt , "EndUpdate");

2358
How can I change the visual appearance for selected bars (EBN, frame, dash, enlarged)

OBJECT appearance,chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
appearance = _ObjectGetProperty( g2antt , "VisualAppearance");
	_ObjectCallMethod( appearance , "Add", 2,"gBFLBCJwBAEHhEJAAEhABMcGACAADACAxRDAMgBQKAAzQFAYahqGKGAAGOD4JhUAIIRZGMIjFDcEwxC6NIpAWCYRDEMw4AJCI4DRCIZBuGyPRhASQZUhmHIDTbIEBxf" +
	"IMIxLE6YaBjObIaoSGYfUhCMowG79GgBJp/YqncaKCgSHwyUrNEbgRDQEw9L6BaxqCj6OhWLQ1CTZdowSKoYTXBq3IhkGiYZpyO5gABYVLWHY0ExNFCVJYjOT5RiONaH" +
	"ABOM43JKkfT9IC/KpxGhoWxSdo6ABXVz2DBNRz5EjHaoyHQ5Ypmc4JZbleZZTbFdSjT6BbS2KzLRzSb5aXhqMI6XD+XTJKK+YIkeqZLjGJaEYblGKZPruOz3MrQOCwCA" +
	"fBafZHBsaYojqmovhkSpnGuegbBiXYjGccJblsdpxFqTgyjeW5Nl4fAbnyLpmBIUA0hiToHFOmBjFcRgECENQHEYQxkCQKBumCBZcBgRYPkYIQaGwERoEEFRsBUCBWBa" +
	"BZhCafgYgaYYYHIHh4iGeIGBWBJiCgYgPgkYR4h4KIIl8JIGBkUwUmOLRyECUAQIC");
	_ObjectCallMethod( appearance , "Add", 1,"CP:2 -2 -2 2 2");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2002");
	_ObjectSetProperty( chart , "SelBarColor", 16777216);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(0) = 48");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Task");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", );
	h = _ObjectCallMethod( items , "AddItem", "Task 1");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2002","1/4/2002","A");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/6/2002","1/10/2002","B");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/11/2002","1/14/2002","C");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,`A`,257) = True");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,`B`,257) = True");
	_ObjectCallMethod( items , "AddItem", );
_ObjectCallMethod( g2antt , "EndUpdate");

2357
Specify the size of the Columns panel

OBJECT columns,g2antt;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectCallMethod( columns , "Add", "City");
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "Start") , "Visible", 0);
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "End") , "Visible", 0);
_ObjectSetProperty( g2antt , "ColumnsFloatBarRect", ",,96");
_ObjectSetProperty( g2antt , "ColumnsFloatBarVisible", 34);
_ObjectCallMethod( g2antt , "EndUpdate");

2356
Show a vertical line between pivot and Columns panel (EBN color)

OBJECT columns,g2antt;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "VisualAppearance") , "Add", 1,"gBFLBCJwBAEHhEJAAEhABRsIQAAYAQGKIYBkAKBQAGaAoDDUNQxQwAAxwfBMKgBBCLIxhEYobgmGIXRpFICQTIcBhaGIZRiAKCRTDmHwyRCNIwCLD8QxtDqBY4gOZZX" +
	"hal4cJTgMaBYi+Pw3DZHcbvBRkewzHQAKgnSjoDhEMg1CTVVYTDKdOSzDyEX7sIAACpOIZQVJVEY1VT8cyxIyEZimSypWqiYJ0Ty6cQwTAIgI");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(87) = 16777216");
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectCallMethod( columns , "Add", "City");
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "Start") , "Visible", 0);
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "End") , "Visible", 0);
_ObjectSetProperty( g2antt , "ColumnsFloatBarVisible", 34);
_ObjectCallMethod( g2antt , "EndUpdate");

2355
Change the background of the Columns panel (EBN color)

OBJECT columns,g2antt;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "VisualAppearance") , "Add", 1,"gBFLBCJwBAEHhEJAAEhABNoCg6AADACAxRDAMgBQKAAzQFAYahqGKGAAGOD4JhUAIIRZGMIjFDcEwxC6NIpAWLoJDCH4mSTHYxgJIMWwzDiBZgkCA4fiGEYnThCIxzT" +
	"J0aw1CKbYRAKCUKoUAJFsSnQAJIgOO4lULPMIhDDQKQTIKBahoehqIhaEQyDSJNb2DCIahhMSEbKtCooDhGFZUWzLVxTJJNawHJqJJDuOTpSjKH4+RjWFKUXR9b4BJSN" +
	"AgqeCQTiSWZEVxRUS0XbGCyZLSQY7uAAMKgOVoDYzdGLwHTtOwrMa1QAsDSbKqWZ5uRpHcQ5aAGN5DPbMbqwOaqLznAaLQLtG4RTikVRPTDYaj437+OaHGyNbI6HTNPp" +
	"TlWDJWjYXI8l8C4fg6GYAAEEISgGJJGHQOocgyIwYnqKhYAAIQTH2MYRjQJBRAmZptmEAYIjGU5dk8UgOFgBJUgCTQIBYBoBmCCAmAqApghgDJUDmYQFCCZoEk2OBUm+" +
	"BZPCgZgagaYZIHYHoHmGWBcm8NwiEiFJVgmYgji4Kg6GKSI2C6C5jAiRgygwIojiycINkyeJmAYPJjkiTg+g+ZAIkCdIQkyWQWDuDxkBkJhKguZAzlIRQzGQc5ODWFJl" +
	"EkVhWhWZYJFYTYTmUE4yF6F5mAmBhihiZhJhYX4WmQaAUnWGpOlmNhuhuZwJkYcocmcSY4naHZlkmKhrDuJ5JnYfofmgCgGgKIJnlmXJ2h4TQKBosRokoNoOiOaQKDSd" +
	"4kmiChMncPBpgoZoaiaaZKHaHonmmE5iiKJRpDicomimaoKiaKoqmqSoeiIPgogqPotiyaxKlYPA+GuCqbBMa5KnaPovmwCwGj6LgP24RIhiyCwmkqMpsksNpKD6LQLB" +
	"qOIzi0SxWlaHZtAOahPssM5Wi+IYtlsXpijKbZ5lyTo5mAE4UlqOpjHOQpEjubyanKPJvEuNgVj2TY1CCao+k2G52AyP5wAwBp9DYZZ1CCaxsAABAEICA");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(87) = 16777216");
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectCallMethod( columns , "Add", "City");
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "Start") , "Visible", 0);
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "End") , "Visible", 0);
_ObjectSetProperty( g2antt , "ColumnsFloatBarVisible", 34);
_ObjectCallMethod( g2antt , "EndUpdate");

2354
Change the background of the Columns panel (solid color)

OBJECT columns,g2antt;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectCallMethod( columns , "Add", "City");
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "Start") , "Visible", 0);
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "End") , "Visible", 0);
_ObjectSetProperty( g2antt , "ColumnsFloatBarVisible", 34);
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(87) = 15790320");
_ObjectCallMethod( g2antt , "EndUpdate");

2353
Change the visual appearance of the Columns panel

OBJECT columns,g2antt;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "VisualAppearance") , "Add", 1,"gBFLBCJwBAEHhEJAAEhABNoCg6AADACAxRDAMgBQKAAzQFAYahqGKGAAGOD4JhUAIIRZGMIjFDcEwxC6NIpAWLoJDCH4mSTHYxgJIMWwzDiBZgkCA4fiGEYnThCIxzT" +
	"J0aw1CKbYRAKCUKoUAJFsSnQAJIgOO4lULPMIhDDQKQTIKBahoehqIhaEQyDSJNb2DCIahhMSEbKtCooDhGFZUWzLVxTJJNawHJqJJDuOTpSjKH4+RjWFKUXR9b4BJSN" +
	"AgqeCQTiSWZEVxRUS0XbGCyZLSQY7uAAMKgOVoDYzdGLwHTtOwrMa1QAsDSbKqWZ5uRpHcQ5aAGN5DPbMbqwOaqLznAaLQLtG4RTikVRPTDYaj437+OaHGyNbI6HTNPp" +
	"TlWDJWjYXI8l8C4fg6GYAAEEISgGJJGHQOocgyIwYnqKhYAAIQTH2MYRjQJBRAmZptmEAYIjGU5dk8UgOFgBJUgCTQIBYBoBmCCAmAqApghgDJUDmYQFCCZoEk2OBUm+" +
	"BZPCgZgagaYZIHYHoHmGWBcm8NwiEiFJVgmYgji4Kg6GKSI2C6C5jAiRgygwIojiycINkyeJmAYPJjkiTg+g+ZAIkCdIQkyWQWDuDxkBkJhKguZAzlIRQzGQc5ODWFJl" +
	"EkVhWhWZYJFYTYTmUE4yF6F5mAmBhihiZhJhYX4WmQaAUnWGpOlmNhuhuZwJkYcocmcSY4naHZlkmKhrDuJ5JnYfofmgCgGgKIJnlmXJ2h4TQKBosRokoNoOiOaQKDSd" +
	"4kmiChMncPBpgoZoaiaaZKHaHonmmE5iiKJRpDicomimaoKiaKoqmqSoeiIPgogqPotiyaxKlYPA+GuCqbBMa5KnaPovmwCwGj6LgP24RIhiyCwmkqMpsksNpKD6LQLB" +
	"qOIzi0SxWlaHZtAOahPssM5Wi+IYtlsXpijKbZ5lyTo5mAE4UlqOpjHOQpEjubyanKPJvEuNgVj2TY1CCao+k2G52AyP5wAwBp9DYZZ1CCaxsAABAEICA");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(92) = 16777216");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(93) = 16185078");
_ObjectSetProperty( g2antt , "BackColorHeader", 16777216);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectCallMethod( columns , "Add", "City");
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "Start") , "Visible", 0);
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "End") , "Visible", 0);
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Description(26) = `Show/Hide`");
_ObjectSetProperty( g2antt , "ColumnsFloatBarVisible", 2);
_ObjectCallMethod( g2antt , "EndUpdate");

2352
Defines the symbol used to indicate repeated captions, providing a clear visual cue for identical entries (ditto mark)

OBJECT g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "DrawGridLines", -2);
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Country") , "ShowIdem", "<fgcolor gray>〃");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "Spain");
	_ObjectCallMethod( items , "AddItem", "Spain");
	_ObjectCallMethod( items , "AddItem", "Spain");
	_ObjectCallMethod( items , "AddItem", "Spain");
	_ObjectCallMethod( items , "AddItem", "Germany");
	_ObjectCallMethod( items , "AddItem", "Germany");
	_ObjectCallMethod( items , "AddItem", "Germany");
	_ObjectCallMethod( items , "AddItem", "Germany");
_ObjectCallMethod( g2antt , "EndUpdate");

2351
Defines the symbol used to indicate repeated captions, providing a clear visual cue for identical entries (space)

OBJECT g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "DrawGridLines", -2);
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Country") , "ShowIdem", " ");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "Spain");
	_ObjectCallMethod( items , "AddItem", "Spain");
	_ObjectCallMethod( items , "AddItem", "Spain");
	_ObjectCallMethod( items , "AddItem", "Spain");
	_ObjectCallMethod( items , "AddItem", "Germany");
	_ObjectCallMethod( items , "AddItem", "Germany");
	_ObjectCallMethod( items , "AddItem", "Germany");
	_ObjectCallMethod( items , "AddItem", "Germany");
_ObjectCallMethod( g2antt , "EndUpdate");

2350
Displays a glitch funnel for drop-down filter buttons (empty or active)

OBJECT appearance,column,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
appearance = _ObjectGetProperty( g2antt , "VisualAppearance");
	_ObjectSetProperty( appearance , "RenderType", -1);
	_ObjectCallMethod( appearance , "Add", 1,"gBFLBCJwBAEHhEJAAEhABa8IQAAYAQGKIYBkAKBQAGaAoDDUNQxQwAAxwfBMKgBBCLIxhEYobgmGIXRpFMbxCKQahLEiTIhGUYJHgmK4tRiAUgxVDkBxrECZYqjcBZO" +
	"iwLQ2TxDM7DNKUCBnIoABhGOaYDh+IQNQjUFKwTRFGRxK4EIRKAyTDLQdRyGSMMbjdQpBCbMiMRqhESKRq2UwYRYCFS1NalaztO6BUAvK67YrWez/YBfF+SfwGeqDYRe" +
	"WAPfgWERnQrGMLxbD8KwZAKTRjkGJ4XhuB41TbQMqufL9ByXHKSSDpGjaXjeO5VVjYNAvS69UzXNq3bhtQAOXCMEwCgI=");
	_ObjectCallMethod( appearance , "Add", 2,"CP:1 -2 0 0 0");
_ObjectSetProperty( g2antt , "DrawGridLines", -1);
_ObjectSetProperty( g2antt , "GridLineStyle", 512);
_ObjectSetProperty( g2antt , "ShowFocusRect", 0);
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(0) = 33554432");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(41) = 33554433");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "BackColorHeader", 16777215);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "HeaderVisible", 1);
column = _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "1st col");
	_ObjectSetProperty( column , "DisplayFilterButton", -1);
	_ObjectSetProperty( column , "DisplayFilterPattern", 0);
	_ObjectSetProperty( column , "Filter", "Item B");
	_ObjectSetProperty( column , "FilterType", 240);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "2nd col");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "Item A");
	_ObjectCallMethod( items , "AddItem", "Item B");
	_ObjectCallMethod( items , "AddItem", "Item C");
_ObjectCallMethod( g2antt , "ApplyFilter");
_ObjectCallMethod( g2antt , "EndUpdate");

2349
Stack vs Cascade

OBJECT bar,chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "ScrollBySingleLine", -1);
_ObjectSetProperty( g2antt , "HeaderAppearance", 1);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Type");
_ObjectSetProperty( g2antt , "BackColorAlternate", 15790320);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "AllowCreateBar", 1);
	_ObjectSetProperty( chart , "AllowLinkBars", 0);
	_ObjectSetProperty( chart , "ResizeUnitScale", 65536);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2001");
	bar = _ObjectCallMethod( _ObjectGetProperty( chart , "Bars") , "Copy", "Task","T1");
		_ObjectSetProperty( bar , "OverlaidType", 4);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim barObj")
		_ObjectCallMethod(g2antt, "TemplatePut", bar)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "barObj.Def(3) = `<%=%9%>`");
	bar = _ObjectCallMethod( _ObjectGetProperty( chart , "Bars") , "Copy", "Task","T2");
		_ObjectSetProperty( bar , "OverlaidType", 515);
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "barObj.Def(3) = `<%=%9%>`");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Cascade");
	_ObjectCallMethod( items , "AddBar", h,"T1","1/2/2001","1/4/2001","A1");
	_ObjectCallMethod( items , "AddBar", h,"T1","1/3/2001","1/5/2001","A2");
	_ObjectCallMethod( items , "AddBar", h,"T1","1/4/2001","1/7/2001","A3");
	_ObjectCallMethod( items , "AddBar", h,"T1","1/2/2001","1/7/2001","A4");
	_ObjectCallMethod( items , "AddBar", h,"T1","1/8/2001","1/12/2001","A5");
	_ObjectCallMethod( items , "AddBar", h,"T1","1/8/2001","1/12/2001","A6");
	_ObjectCallMethod( items , "AddBar", h,"T1","1/8/2001","1/12/2001","A7");
	_ObjectCallMethod( items , "AddBar", h,"T1","1/8/2001","1/12/2001","A8");
	_ObjectCallMethod( items , "AddBar", h,"T1","1/8/2001","1/12/2001","A9");
	_ObjectCallMethod( items , "AddBar", h,"T1","1/8/2001","1/12/2001","AA");
	h = _ObjectCallMethod( items , "AddItem", "Stack-AutoArrange");
	_ObjectCallMethod( items , "AddBar", h,"T2","1/2/2001","1/4/2001","A1");
	_ObjectCallMethod( items , "AddBar", h,"T2","1/3/2001","1/5/2001","A2");
	_ObjectCallMethod( items , "AddBar", h,"T2","1/4/2001","1/7/2001","A3");
	_ObjectCallMethod( items , "AddBar", h,"T2","1/2/2001","1/7/2001","A4");
	_ObjectCallMethod( items , "AddBar", h,"T2","1/8/2001","1/12/2001","A5");
	_ObjectCallMethod( items , "AddBar", h,"T2","1/8/2001","1/12/2001","A6");
	_ObjectCallMethod( items , "AddBar", h,"T2","1/8/2001","1/12/2001","A7");
	_ObjectCallMethod( items , "AddBar", h,"T2","1/8/2001","1/12/2001","A8");
	_ObjectCallMethod( items , "AddBar", h,"T2","1/8/2001","1/12/2001","A9");
	_ObjectCallMethod( items , "AddBar", h,"T2","1/8/2001","1/12/2001","AA");
_ObjectCallMethod( g2antt , "EndUpdate");

2348
Horizontally(left) align the multi-line caption of the bar

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Task");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2001");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
	_ObjectSetProperty( chart , "LevelCount", 2);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(AddItem()) = False");
	h = _ObjectCallMethod( items , "AddItem", "Task 1");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 42");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2001","1/7/2001","K1","This is a bit of 1'st line<br>2'nd line<br>3'rd line");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,`K1`,4) = 0");
_ObjectCallMethod( g2antt , "EndUpdate");

2347
Defines the colors, to display overlapping links

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Name");
_ObjectSetProperty( g2antt , "AntiAliasing", -1);
_ObjectSetProperty( g2antt , "OverlapLinksColors", "black,gray,lightgray");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
	_ObjectSetProperty( chart , "ShowLinks", 642);
	_ObjectSetProperty( chart , "NonworkingDays", 0);
	_ObjectSetProperty( chart , "LinksStyle", 0);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "");
	h1 = _ObjectCallMethod( items , "AddItem", "Item 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/3/2001","1/6/2001","A");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/8/2001","1/11/2001","B");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/13/2001","1/16/2001","C");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/18/2001","1/21/2001","D");
	_ObjectCallMethod( items , "AddLink", "Link1",h1,"D",h1,"A");
	_ObjectCallMethod( items , "AddLink", "Link2",h1,"C",h1,"B");
_ObjectCallMethod( g2antt , "EndUpdate");

2346
The exPreventOverlapMixt option can be combined with the exChangeColorOnOverlap flag, allowing overlapping links to alternately adjust their width while also changing colors

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Name");
_ObjectSetProperty( g2antt , "AntiAliasing", -1);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
	_ObjectSetProperty( chart , "ShowLinks", 642);
	_ObjectSetProperty( chart , "NonworkingDays", 0);
	_ObjectSetProperty( chart , "LinksStyle", 0);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "");
	h1 = _ObjectCallMethod( items , "AddItem", "Item 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/3/2001","1/6/2001","A");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/8/2001","1/11/2001","B");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/13/2001","1/16/2001","C");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/18/2001","1/21/2001","D");
	_ObjectCallMethod( items , "AddLink", "Link1",h1,"D",h1,"A");
	_ObjectCallMethod( items , "AddLink", "Link2",h1,"C",h1,"B");
_ObjectCallMethod( g2antt , "EndUpdate");

2345
The exChangeColorOnOverlap flag changes the color for links in areas where they overlap with other links, enhancing clarity and distinction between them

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "AntiAliasing", -1);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Name");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
	_ObjectSetProperty( chart , "ShowLinks", 514);
	_ObjectSetProperty( chart , "NonworkingDays", 0);
	_ObjectSetProperty( chart , "LinksStyle", 0);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "");
	h1 = _ObjectCallMethod( items , "AddItem", "Item 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/3/2001","1/6/2001","A");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/8/2001","1/11/2001","B");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/13/2001","1/16/2001","C");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/18/2001","1/21/2001","D");
	_ObjectCallMethod( items , "AddLink", "Link1",h1,"D",h1,"A");
	_ObjectCallMethod( items , "AddLink", "Link2",h1,"C",h1,"B");
_ObjectCallMethod( g2antt , "EndUpdate");

2344
How can I assign a multiple-lines caption to an bar

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Task");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2001");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
	_ObjectSetProperty( chart , "LevelCount", 2);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectableItem(AddItem()) = False");
	h = _ObjectCallMethod( items , "AddItem", "Task 1");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemHeight(h) = 42");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2001","1/7/2001","K1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,`K1`,3) = `This is a bit of 1'st line<br>2'nd line<br>3'rd line`");
_ObjectCallMethod( g2antt , "EndUpdate");

2343
The text on the chart overlap the rest of the bars, while using OverlaidType property on exOverlaidBarsStack

OBJECT bar,chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 48");
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/3/2002");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstWeekDay", 1);
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Add(`Text`).Def(4) = 0");
	bar = _ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Item(`Task`)");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim barObj")
		_ObjectCallMethod(g2antt, "TemplatePut", bar)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "barObj.Def(4) = 0");
		_ObjectSetProperty( bar , "OverlaidType", 4611);
		_ObjectSetProperty( bar , "OverlaidGroup", "Text,Task");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Task");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Default");
	_ObjectCallMethod( items , "AddBar", h,"Text","1/4/2002","1/4/2002","","This is another text");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/6/2002","1/8/2002","A","This is a bit of text");
_ObjectCallMethod( g2antt , "EndUpdate");

2342
We are running our application on an Azure server using RDP, with the server language set to English. However, my client has their national language set to Swedish, but the tooltip is displaying dates in the English format (mm/dd/yyyy) instead of the Swedish format (yyyy-mm-dd) (method 2)

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Def");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "AllowCreateBar", 0);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2010");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Item(`Task`).Def(6) = `<%=`Start: ` + (date(%1) format `yyyy-MM-dd` )%>`");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Task");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2010","1/5/2010","A","A");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/5/2010","1/8/2010","B","B");
_ObjectCallMethod( g2antt , "EndUpdate");

2341
We are running our application on an Azure server using RDP, with the server language set to English. However, my client has their national language set to Swedish, but the tooltip is displaying dates in the English format (mm/dd/yyyy) instead of the Swedish format (yyyy-mm-dd) (method 1)

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Def");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "AllowCreateBar", 0);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2010");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Item(`Task`).Def(6) = `<%=`Start: ` + year(%1) + `-` + (month(%1) lpad `00`) + `-` + (day(%1) lpad `00`)%>`");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Task");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2010","1/5/2010","A","A");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/5/2010","1/8/2010","B","B");
_ObjectCallMethod( g2antt , "EndUpdate");

2340
How can I replace or add an icon at runtime

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( g2antt , "ReplaceIcon", "gAAAABgYACEHgUJFEEAAWhUJCEJEEJggEhMCYEXjUbjkJQECj8gj8hAEjkshYEpk8kf8ClsulsvAExmcvf83js5nU7nkCeEcn8boMaocXosCB9Hn09pkzcEuoL/fE+O" +
	"kYB0gB9YhIHrddgVcr9aktZADAD8+P8CgIA==");
_ObjectCallMethod( g2antt , "ReplaceIcon", "C:\images\favicon.ico",0);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Task");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2001");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
	_ObjectSetProperty( chart , "LevelCount", 2);
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Task 1");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2001","1/6/2001","K1");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,`K1`,3) = `<img>1</img>`");
_ObjectCallMethod( g2antt , "EndUpdate");

2339
How can I define the sensitivity for link selection when the user clicks or selects a link
// MouseMove event - Occurs when the user moves the mouse.
FUNCTION g2anttEvents_MouseMove(OBJECT g2antt, INT Button, INT Shift, INT X, INT Y)
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim _ObObj")
	_ObjectCallMethod(g2antt, "TemplatePut", _ObjectGetProperty( g2antt , "Chart"))
	Message( _ObjectCallMethod(g2antt, "ExecuteTemplate", "_ObObj.LinkFromPoint(-1,-1)") );
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Task");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/29/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "LinksWidth", 1026);
items = _ObjectGetProperty( g2antt , "Items");
	h1 = _ObjectCallMethod( items , "AddItem", "Task 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/2/2001","1/4/2001","K1");
	_ObjectCallMethod( items , "AddItem", );
	h2 = _ObjectCallMethod( items , "AddItem", "Task 2");
	_ObjectCallMethod( items , "AddBar", h2,"Task","1/8/2001","1/10/2001","K2");
	_ObjectCallMethod( items , "AddLink", "L1",h1,"K1",h2,"K2");
	_ObjectCallMethod( items , "AddItem", );
	h3 = _ObjectCallMethod( items , "AddItem", "Task 3");
	_ObjectCallMethod( items , "AddBar", h3,"Task","1/14/2001","1/16/2001","K3");
	_ObjectCallMethod( items , "AddLink", "L2",h2,"K2",h3,"K3");
_ObjectCallMethod( g2antt , "EndUpdate");

2338
How can I let the user to create task-bars for leaf0-items only, when AllowCreateBar is exCreateBarAuto
// CreateBar event - Fired when the user creates a new bar.
FUNCTION g2anttEvents_CreateBar(OBJECT g2antt, INT Item, REAL DateStart, REAL DateEnd)
	OBJECT items;
	items = _ObjectGetProperty( g2antt , "Items");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,Item")
		_ObjectCallMethod(g2antt, "TemplatePut", items)
		_ObjectCallMethod(g2antt, "TemplatePut", Item)
		Message( "Call RemoveBar if the ChildCount property returns a non-zero value" );
		Message( _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ChildCount(Item)") );
		_ObjectCallMethod( items , "RemoveBar", Item,"newbar");
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
_ObjectSetProperty( g2antt , "HeaderVisible", 1);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "AllowCreateBar", 1);
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Task");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Root");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 1");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
_ObjectCallMethod( g2antt , "EndUpdate");

2337
How can I convert the exBarStart/exBarEnd property to a string (by default it returns as VARIANT/VT_DATE type, method 3)

// BarResizing event - Occurs when a bar is moving or resizing.
FUNCTION g2anttEvents_BarResizing(OBJECT g2antt, INT Item, VARIANT Key)
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim _ObObj,Item,Key")
	_ObjectCallMethod(g2antt, "TemplatePut", _ObjectGetProperty( g2antt , "Items"))
	_ObjectCallMethod(g2antt, "TemplatePut", Item)
	_ObjectCallMethod(g2antt, "TemplatePut", Key)
	Message( "Start" );
	Message( Key );
	Message( _ObjectCallMethod(g2antt, "ExecuteTemplate", "_ObObj.ItemBar(Item,Key,547)") );
	Message( "End" );
	Message( Key );
	Message( _ObjectCallMethod(g2antt, "ExecuteTemplate", "_ObObj.ItemBar(Item,Key,548)") );
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Tasks");
_ObjectSetProperty( g2antt , "Debug", -1);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "9/20/2006");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(0) = 96");
	_ObjectSetProperty( chart , "ResizeUnitScale", 1048576);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 1"),"Task","9/21/2006","9/24/2006","K1");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 2"),"Task","9/22/2006","9/25/2006","K2");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 3"),"Task","9/23/2006","9/26/2006","K3");
_ObjectCallMethod( g2antt , "EndUpdate");

2336
How can I convert the exBarStart/exBarEnd property to a string (by default it returns as VARIANT/VT_DATE type, method 2)

// BarResizing event - Occurs when a bar is moving or resizing.
FUNCTION g2anttEvents_BarResizing(OBJECT g2antt, INT Item, VARIANT Key)
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim _ObObj,Item,Key")
	_ObjectCallMethod(g2antt, "TemplatePut", _ObjectGetProperty( g2antt , "Items"))
	_ObjectCallMethod(g2antt, "TemplatePut", Item)
	_ObjectCallMethod(g2antt, "TemplatePut", Key)
	Message( "Start" );
	Message( Key );
	Message( _ObjectCallMethod( g2antt , "FormatABC", "dateF(value)",_ObjectCallMethod(g2antt, "ExecuteTemplate", "_ObObj.ItemBar(Item,Key,1)")) );
	Message( "End" );
	Message( Key );
	Message( _ObjectCallMethod( g2antt , "FormatABC", "dateF(value)",_ObjectCallMethod(g2antt, "ExecuteTemplate", "_ObObj.ItemBar(Item,Key,2)")) );
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Tasks");
_ObjectSetProperty( g2antt , "Debug", -1);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "9/20/2006");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(0) = 96");
	_ObjectSetProperty( chart , "ResizeUnitScale", 1048576);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 1"),"Task","9/21/2006","9/24/2006","K1");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 2"),"Task","9/22/2006","9/25/2006","K2");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 3"),"Task","9/23/2006","9/26/2006","K3");
_ObjectCallMethod( g2antt , "EndUpdate");

2335
How can I convert the exBarStart/exBarEnd property to a string (by default it returns as VARIANT/VT_DATE type, method 1)

// BarResizing event - Occurs when a bar is moving or resizing.
FUNCTION g2anttEvents_BarResizing(OBJECT g2antt, INT Item, VARIANT Key)
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim _ObObj,Item,Key")
	_ObjectCallMethod(g2antt, "TemplatePut", _ObjectGetProperty( g2antt , "Items"))
	_ObjectCallMethod(g2antt, "TemplatePut", Item)
	_ObjectCallMethod(g2antt, "TemplatePut", Key)
	Message( "Start" );
	Message( Key );
	Message( _ObjectCallMethod( g2antt , "FormatABC", "date(value) format `MM/dd/yyyy HH:mm:ss`",_ObjectCallMethod(g2antt, "ExecuteTemplate", "_ObObj.ItemBar(Item,Key,1)")) );
	Message( "End" );
	Message( Key );
	Message( _ObjectCallMethod( g2antt , "FormatABC", "date(value) format `MM/dd/yyyy HH:mm:ss`",_ObjectCallMethod(g2antt, "ExecuteTemplate", "_ObObj.ItemBar(Item,Key,2)")) );
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Tasks");
_ObjectSetProperty( g2antt , "Debug", -1);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "9/20/2006");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(0) = 96");
	_ObjectSetProperty( chart , "ResizeUnitScale", 1048576);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 1"),"Task","9/21/2006","9/24/2006","K1");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 2"),"Task","9/22/2006","9/25/2006","K2");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Task 3"),"Task","9/23/2006","9/26/2006","K3");
_ObjectCallMethod( g2antt , "EndUpdate");

2334
Add/Remove/Updates the item-bar's resources

// Click event - Occurs when the user presses and then releases the left mouse button over the tree control.
FUNCTION g2anttEvents_Click()
	OBJECT items;
	items = _ObjectGetProperty( g2antt , "Items");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
		_ObjectCallMethod(g2antt, "TemplatePut", items)
		h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.SelectedItem(0)");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
		_ObjectCallMethod(g2antt, "TemplatePut", items)
		_ObjectCallMethod(g2antt, "TemplatePut", h)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,FirstItemBar(h),49) = `+R4[10%]`");
END

OBJECT bar,chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 96");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2001");
	bar = _ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Item(`Task`)");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim barObj")
		_ObjectCallMethod(g2antt, "TemplatePut", bar)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "barObj.Def(4) = 18");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "barObj.Def(3) = `<%=%49%>`");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Machines");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Machine 1");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/6/2001","1/12/2001","K1");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,`K1`,49) = `R1,R2`");
	h = _ObjectCallMethod( items , "AddItem", "Machine 2");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/4/2001","1/14/2001","K2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,`K2`,49) = `R2[75%],R3`");
_ObjectCallMethod( g2antt , "EndUpdate");

2333
Distributes resources to a bar

OBJECT bar,chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 96");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2001");
	bar = _ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Item(`Task`)");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim barObj")
		_ObjectCallMethod(g2antt, "TemplatePut", bar)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "barObj.Def(4) = 18");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "barObj.Def(3) = `<%=%49%>`");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Machines");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Machine 1");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/6/2001","1/12/2001","K1");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,`K1`,49) = `R1,R2`");
	h = _ObjectCallMethod( items , "AddItem", "Machine 2");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/4/2001","1/14/2001","K2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h,`K2`,49) = `R2[75%],R3`");
_ObjectCallMethod( g2antt , "EndUpdate");

2332
How can I display additional information about a time zone when the user clicks on it (expandable)

OBJECT chart,g2antt;

g2antt =  ObjectByName("AN1") ;
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 0");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/20/2009");
	_ObjectCallMethod( chart , "MarkTimeZone", "TZ","1/1/2010","1/3/2010",65280,"1;;<c>TimeZone<b><off -4><a ;exp=just more info about>*</a></b>;1");

2331
How can I have a tooltip for a marked TimeZone

// MouseMove event - Occurs when the user moves the mouse.
FUNCTION g2anttEvents_MouseMove(OBJECT g2antt, INT Button, INT Shift, INT X, INT Y)
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim _ObObj")
	_ObjectCallMethod(g2antt, "TemplatePut", _ObjectGetProperty( g2antt , "Chart"))
	_ObjectCallMethod( g2antt , "ShowToolTip", _ObjectCallMethod(g2antt, "ExecuteTemplate", "_ObObj.TimeZoneFromPoint(-1,-1)"),"","","+8");
END

OBJECT chart,g2antt;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 0");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2009");
	_ObjectCallMethod( chart , "MarkTimeZone", "Top","1/1/2010","1/5/2010",16711680,"1;;<fgcolor=FFFFFF>Top;1");
	_ObjectCallMethod( chart , "MarkTimeZone", "Partial","1/8/2010","1/12/2010",16711680,"50;;<fgcolor=FFFFFF>Partial;1");
	_ObjectCallMethod( chart , "MarkTimeZone", "Default","1/15/2010","1/19/2010",16711680,";;<fgcolor=FFFFFF>Default;1");

2330
Can I set a filter that automatically adds a * before and after the word, so the user can just search for 'cat' and it becomes '*cat*' automatically

OBJECT column,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
column = _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Items");
	_ObjectSetProperty( column , "DisplayFilterButton", -1);
	_ObjectSetProperty( column , "DisplayFilterPattern", -1);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
	_ObjectCallMethod(g2antt, "TemplatePut", column)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(21) = `*<%filter%>*`");
	_ObjectSetProperty( column , "FilterType", 3);
	_ObjectSetProperty( column , "Filter", "1");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Root 1");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 1");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
	h = _ObjectCallMethod( items , "AddItem", "Root 2");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 1");
	_ObjectCallMethod( items , "InsertItem", h,"","Child 2");
_ObjectCallMethod( g2antt , "ApplyFilter");
_ObjectCallMethod( g2antt , "EndUpdate");

2329
The fine dotted lines in the control appear much thicker than the standard ones we've been using. How can we fix this

OBJECT chart,g2antt;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "DrawGridLines", -1);
_ObjectSetProperty( g2antt , "GridLineStyle", 512);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "GridLineStyle", 512);
	_ObjectSetProperty( chart , "DrawGridLines", -1);
_ObjectSetProperty( g2antt , "ColumnAutoResize", 0);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Column 1");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Column 2");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Column 3");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Column 4");
_ObjectCallMethod( g2antt , "EndUpdate");

2328
Load data as a tree using a parent-id relationship

OBJECT g2antt,rs;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "ColumnAutoResize", 0);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "DrawGridLines", 2);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
rs = CreateObject("ADODB.Recordset");
	_ObjectCallMethod( rs , "Open", "Select * FROM Employees WHERE 1=0","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.mdb",3,3);
_ObjectSetProperty( g2antt , "DataSource", rs);
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Columns.Item(0).Width = 128");
rs = CreateObject("ADODB.Recordset");
	_ObjectCallMethod( rs , "Open", "Employees","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.mdb",3,3);
_ObjectCallMethod( g2antt , "PutItems", _ObjectCallMethod( rs , "GetRows", ),";0;17");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Items.ExpandItem(0) = True");
_ObjectCallMethod( g2antt , "EndUpdate");

2327
Is there a way to change the contents of the drop down editor based on a value in another column

// AddItem event - Occurs after a new Item has been inserted to Items collection.
FUNCTION g2anttEvents_AddItem(OBJECT g2antt, INT Item)
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim Item")
	_ObjectCallMethod(g2antt, "TemplatePut", Item)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "Items.CellEditorVisible(Item,0) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "Items.CellEditorVisible(Item,1) = 1");
END

// EditOpen event - Occurs when the edit operation starts.
FUNCTION g2anttEvents_EditOpen()
	OBJECT editor,items;
	items = _ObjectGetProperty( g2antt , "Items");
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
		_ObjectCallMethod(g2antt, "TemplatePut", items)
		v = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(FocusItem,0)");
		c = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellCaption(FocusItem,0)");
	editor = _ObjectCallMethod(g2antt, "ExecuteTemplate", "Columns.Item(1).Editor");
		_ObjectCallMethod( editor , "ClearItems");
		_ObjectCallMethod( editor , "AddItem", v,c);
END

OBJECT column,editor,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "GridLineStyle", 512);
column = _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "DropDownList");
	editor = _ObjectGetProperty( column , "Editor");
		_ObjectSetProperty( editor , "EditType", 3);
		_ObjectCallMethod( editor , "AddItem", 1,"First");
		_ObjectCallMethod( editor , "AddItem", 2,"Second");
		_ObjectCallMethod( editor , "AddItem", 3,"Third");
_ObjectSetProperty( g2antt , "DrawGridLines", -1);
_ObjectSetProperty( _ObjectGetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "DropDownList-Related") , "Editor") , "EditType", 3);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(AddItem(1),1) = -1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(AddItem(2),1) = -1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(AddItem(3),1) = -1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItemCount(2) = 1");
	h = _ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.LockedItem(2,0)");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDivider(h) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemDividerLineAlignment(h) = 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellEditorVisible(h,0) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellSingleLine(h,0) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValueFormat(h,0) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,0) = `The drop down editor in the second column is filled during the <b>EditOpen event</b>, and the values are based on the selection on the first column.`");
_ObjectCallMethod( g2antt , "EndUpdate");

2326
Highlight the editable fields

// Change event - Occurs when the user changes the cell's content.
FUNCTION g2anttEvents_Change(OBJECT g2antt, INT Item, INT ColIndex, VARIANT NewValue)
	_ObjectCallMethod( g2antt , "Refresh");
END

OBJECT column,columns,conditionalformat,conditionalformats,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "FreezeEvents", -1);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
conditionalformats = _ObjectGetProperty( g2antt , "ConditionalFormats");
	conditionalformat = _ObjectCallMethod( conditionalformats , "Add", "%CE1");
		_ObjectSetProperty( conditionalformat , "Bold", -1);
		_ObjectSetProperty( conditionalformat , "BackColor", 16119285);
		_ObjectSetProperty( conditionalformat , "ApplyTo", 1);
	conditionalformat = _ObjectCallMethod( conditionalformats , "Add", "%CE2");
		_ObjectSetProperty( conditionalformat , "Bold", -1);
		_ObjectSetProperty( conditionalformat , "BackColor", 16119285);
		_ObjectSetProperty( conditionalformat , "ApplyTo", 2);
	conditionalformat = _ObjectCallMethod( conditionalformats , "Add", "%CE3");
		_ObjectSetProperty( conditionalformat , "Bold", -1);
		_ObjectSetProperty( conditionalformat , "BackColor", 16119285);
		_ObjectSetProperty( conditionalformat , "ApplyTo", 3);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectCallMethod( columns , "Add", "Description");
	column = _ObjectCallMethod( columns , "Add", "Qty");
		_ObjectSetProperty( _ObjectGetProperty( column , "Editor") , "EditType", 4);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
	column = _ObjectCallMethod( columns , "Add", "Price");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `avg(current,rec,%2)`");
		_ObjectSetProperty( _ObjectGetProperty( column , "Editor") , "EditType", 4);
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectSetProperty( column , "ComputedField", "%1 * %2");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%3)`");
items = _ObjectGetProperty( g2antt , "Items");
	r = _ObjectCallMethod( items , "AddItem", "Root");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group 1");
	h = _ObjectCallMethod( items , "InsertItem", g1,"","Item 1");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 10");
	h = _ObjectCallMethod( items , "InsertItem", g1,"","Item 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 11");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group 2");
	h = _ObjectCallMethod( items , "InsertItem", g2,"","Item 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 12");
	h = _ObjectCallMethod( items , "InsertItem", g2,"","Item 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 4");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 13");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(0) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
_ObjectCallMethod( g2antt , "FreezeEvents", 0);

2325
Highlight the total fields

// Change event - Occurs when the user changes the cell's content.
FUNCTION g2anttEvents_Change(OBJECT g2antt, INT Item, INT ColIndex, VARIANT NewValue)
	_ObjectCallMethod( g2antt , "Refresh");
END

OBJECT column,columns,conditionalformat,conditionalformats,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "FreezeEvents", -1);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
conditionalformats = _ObjectGetProperty( g2antt , "ConditionalFormats");
	conditionalformat = _ObjectCallMethod( conditionalformats , "Add", "%CT1");
		_ObjectSetProperty( conditionalformat , "ForeColor", 8421504);
		_ObjectSetProperty( conditionalformat , "ApplyTo", 1);
	conditionalformat = _ObjectCallMethod( conditionalformats , "Add", "%CT2");
		_ObjectSetProperty( conditionalformat , "ForeColor", 8421504);
		_ObjectSetProperty( conditionalformat , "ApplyTo", 2);
	conditionalformat = _ObjectCallMethod( conditionalformats , "Add", "%CT3");
		_ObjectSetProperty( conditionalformat , "ForeColor", 8421504);
		_ObjectSetProperty( conditionalformat , "ApplyTo", 3);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectCallMethod( columns , "Add", "Description");
	column = _ObjectCallMethod( columns , "Add", "Qty");
		_ObjectSetProperty( _ObjectGetProperty( column , "Editor") , "EditType", 4);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
	column = _ObjectCallMethod( columns , "Add", "Price");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `avg(current,rec,%2)`");
		_ObjectSetProperty( _ObjectGetProperty( column , "Editor") , "EditType", 4);
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectSetProperty( column , "ComputedField", "%1 * %2");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%3)`");
items = _ObjectGetProperty( g2antt , "Items");
	r = _ObjectCallMethod( items , "AddItem", "Root");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group 1");
	h = _ObjectCallMethod( items , "InsertItem", g1,"","Item 1");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 10");
	h = _ObjectCallMethod( items , "InsertItem", g1,"","Item 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 11");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group 2");
	h = _ObjectCallMethod( items , "InsertItem", g2,"","Item 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 12");
	h = _ObjectCallMethod( items , "InsertItem", g2,"","Item 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 4");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 13");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(0) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
_ObjectCallMethod( g2antt , "FreezeEvents", 0);

2324
Highlight the leaf items

OBJECT columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "ConditionalFormats") , "Add", "%CC0=0") , "ForeColor", 8421504);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "Item") , "Width", 16);
	_ObjectCallMethod( columns , "Add", "Desc");
items = _ObjectGetProperty( g2antt , "Items");
	hR = _ObjectCallMethod( items , "AddItem", "Root");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,hR")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", hR)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(hR,1) = `The root directory /`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(hR) = True");
	h = _ObjectCallMethod( items , "InsertItem", hR,"","Home");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `The home directory with user directories Alice and Bob`");
	_ObjectCallMethod( items , "InsertItem", h,"","Alice");
	_ObjectCallMethod( items , "InsertItem", h,"","Bob");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
	h = _ObjectCallMethod( items , "InsertItem", hR,"","Etc");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `The etc directory with one configuration file`");
	h = _ObjectCallMethod( items , "InsertItem", h,"","nginx.conf");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,hR")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", hR)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(hR,,`Var`),1) = `The var directory`");
_ObjectCallMethod( g2antt , "EndUpdate");

2323
Highlight the parent items

OBJECT columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "ConditionalFormats") , "Add", "%CC0") , "ForeColor", 255);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "Item") , "Width", 16);
	_ObjectCallMethod( columns , "Add", "Desc");
items = _ObjectGetProperty( g2antt , "Items");
	hR = _ObjectCallMethod( items , "AddItem", "Root");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,hR")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", hR)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(hR,1) = `The root directory /`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(hR) = True");
	h = _ObjectCallMethod( items , "InsertItem", hR,"","Home");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `The home directory with user directories Alice and Bob`");
	_ObjectCallMethod( items , "InsertItem", h,"","Alice");
	_ObjectCallMethod( items , "InsertItem", h,"","Bob");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
	h = _ObjectCallMethod( items , "InsertItem", hR,"","Etc");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `The etc directory with one configuration file`");
	h = _ObjectCallMethod( items , "InsertItem", h,"","nginx.conf");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,hR")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", hR)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(hR,,`Var`),1) = `The var directory`");
_ObjectCallMethod( g2antt , "EndUpdate");

2322
Highlight the item being expanded or collapsed

OBJECT columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "ConditionalFormats") , "Add", "%CX0") , "Bold", -1);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectSetProperty( _ObjectCallMethod( columns , "Add", "Item") , "Width", 16);
	_ObjectCallMethod( columns , "Add", "Desc");
items = _ObjectGetProperty( g2antt , "Items");
	hR = _ObjectCallMethod( items , "AddItem", "Root");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,hR")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", hR)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(hR,1) = `The root directory /`");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(hR) = True");
	h = _ObjectCallMethod( items , "InsertItem", hR,"","Home");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `The home directory with user directories Alice and Bob`");
	_ObjectCallMethod( items , "InsertItem", h,"","Alice");
	_ObjectCallMethod( items , "InsertItem", h,"","Bob");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(h) = True");
	h = _ObjectCallMethod( items , "InsertItem", hR,"","Etc");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = `The etc directory with one configuration file`");
	h = _ObjectCallMethod( items , "InsertItem", h,"","nginx.conf");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,hR")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", hR)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(InsertItem(hR,,`Var`),1) = `The var directory`");
_ObjectCallMethod( g2antt , "EndUpdate");

2321
I am using exTotalColumn. Is there an option to exclude specific cells to display the total

// Change event - Occurs when the user changes the cell's content.
FUNCTION g2anttEvents_Change(OBJECT g2antt, INT Item, INT ColIndex, VARIANT NewValue)
	_ObjectCallMethod( g2antt , "Refresh");
END

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "FreezeEvents", -1);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectCallMethod( columns , "Add", "Description");
	column = _ObjectCallMethod( columns , "Add", "Qty");
		_ObjectSetProperty( _ObjectGetProperty( column , "Editor") , "EditType", 4);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
	column = _ObjectCallMethod( columns , "Add", "Price");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `avg(current,rec,%2)`");
		_ObjectSetProperty( _ObjectGetProperty( column , "Editor") , "EditType", 4);
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectSetProperty( column , "ComputedField", "%1 * %2");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%3)`");
items = _ObjectGetProperty( g2antt , "Items");
	r = _ObjectCallMethod( items , "AddItem", "Root");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group 1");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,g1")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", g1)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.FormatCell(g1,2) = ``<average missing>``");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellEditorVisible(g1,2) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellBold(g1,2) = True");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellForeColor(g1,2) = 255");
	h = _ObjectCallMethod( items , "InsertItem", g1,"","Item 1");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 10");
	h = _ObjectCallMethod( items , "InsertItem", g1,"","Item 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 11");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group 2");
	h = _ObjectCallMethod( items , "InsertItem", g2,"","Item 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 12");
	h = _ObjectCallMethod( items , "InsertItem", g2,"","Item 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 4");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 13");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(0) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
_ObjectCallMethod( g2antt , "FreezeEvents", 0);

2320
How can I add a total column

// Change event - Occurs when the user changes the cell's content.
FUNCTION g2anttEvents_Change(OBJECT g2antt, INT Item, INT ColIndex, VARIANT NewValue)
	_ObjectCallMethod( g2antt , "Refresh");
END

OBJECT column,columns,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "FreezeEvents", -1);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "HeaderHeight", 24);
_ObjectSetProperty( g2antt , "LinesAtRoot", -1);
columns = _ObjectGetProperty( g2antt , "Columns");
	_ObjectCallMethod( columns , "Add", "Description");
	column = _ObjectCallMethod( columns , "Add", "Qty");
		_ObjectSetProperty( _ObjectGetProperty( column , "Editor") , "EditType", 4);
		_ObjectCallMethod(g2antt, "TemplatePut", "Dim colObj")
		_ObjectCallMethod(g2antt, "TemplatePut", column)
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%1)`");
	column = _ObjectCallMethod( columns , "Add", "Price");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `avg(current,rec,%2)`");
		_ObjectSetProperty( _ObjectGetProperty( column , "Editor") , "EditType", 4);
	column = _ObjectCallMethod( columns , "Add", "Amount");
		_ObjectSetProperty( column , "ComputedField", "%1 * %2");
		_ObjectCallMethod(g2antt, "ExecuteTemplate", "colObj.Def(20) = `sum(current,rec,%3)`");
items = _ObjectGetProperty( g2antt , "Items");
	r = _ObjectCallMethod( items , "AddItem", "Root");
	g1 = _ObjectCallMethod( items , "InsertItem", r,"","Group 1");
	h = _ObjectCallMethod( items , "InsertItem", g1,"","Item 1");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 10");
	h = _ObjectCallMethod( items , "InsertItem", g1,"","Item 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 11");
	g2 = _ObjectCallMethod( items , "InsertItem", r,"","Group 2");
	h = _ObjectCallMethod( items , "InsertItem", g2,"","Item 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 12");
	h = _ObjectCallMethod( items , "InsertItem", g2,"","Item 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,1) = 4");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.CellValue(h,2) = 13");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ExpandItem(0) = True");
_ObjectCallMethod( g2antt , "EndUpdate");
_ObjectCallMethod( g2antt , "FreezeEvents", 0);

2319
Is it possible when I move the horizontal scroll bar, that the whole chart scrolls live during move the horizontal scroll bar. Not it scrolls just when I release the left mouse, not during change the horizontal scroll position
OBJECT chart,g2antt;

g2antt =  ObjectByName("AN1") ;
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 0");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "ToolTip", "");

2318
The exLinkStyle is not valid (the style of the link is still solid) if the link's width is greater than 1. What can be done
OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Task");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2001");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 128");
_ObjectSetProperty( g2antt , "AntiAliasing", -1);
items = _ObjectGetProperty( g2antt , "Items");
	h1 = _ObjectCallMethod( items , "AddItem", "Task 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/2/2001","1/4/2001","K1");
	h2 = _ObjectCallMethod( items , "AddItem", "Task 2");
	_ObjectCallMethod( items , "AddBar", h2,"Task","1/5/2001","1/7/2001","K2");
	_ObjectCallMethod( items , "AddLink", "L1",h1,"K1",h2,"K2");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`L1`,9) = 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`L1`,10) = 2");
	h3 = _ObjectCallMethod( items , "AddItem", "Task 4");
	_ObjectCallMethod( items , "AddBar", h3,"Task","1/8/2001","1/10/2001","K3");
	_ObjectCallMethod( items , "AddLink", "L2",h2,"K2",h3,"K3");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`L2`,9) = 1");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`L2`,10) = 2");
_ObjectCallMethod( g2antt , "EndUpdate");

2317
How can I change the tooltip's margins (method 2)

// MouseMove event - Occurs when the user moves the mouse.
FUNCTION g2anttEvents_MouseMove(OBJECT g2antt, INT Button, INT Shift, INT X, INT Y)
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim _ObObj")
	_ObjectCallMethod(g2antt, "TemplatePut", _ObjectGetProperty( g2antt , "Chart"))
	_ObjectCallMethod( g2antt , "ShowToolTip", _ObjectCallMethod(g2antt, "ExecuteTemplate", "_ObObj.BarFromPoint(-1,-1)"));
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "ToolTipMargin", "16,8");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Def");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "AllowCreateBar", 0);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2010");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Item(`Task`).Def(6) = `...`");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Task");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2010","1/5/2010","A","A");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/5/2010","1/8/2010","B","B");
_ObjectCallMethod( g2antt , "EndUpdate");

2316
Are there any properties to set text margins at tooltip, like Margins="5,5" (method 1). Margins is used to get some space between text and the tooltips border

// MouseMove event - Occurs when the user moves the mouse.
FUNCTION g2anttEvents_MouseMove(OBJECT g2antt, INT Button, INT Shift, INT X, INT Y)
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim _ObObj")
	_ObjectCallMethod(g2antt, "TemplatePut", _ObjectGetProperty( g2antt , "Chart"))
	_ObjectCallMethod( g2antt , "ShowToolTip", _ObjectCallMethod(g2antt, "ExecuteTemplate", "_ObObj.BarFromPoint(-1,-1)"));
END

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
ObjectAssociateEvents("g2anttEvents", g2antt);
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "ToolTipMargin", "16,8");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Def");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "AllowCreateBar", 0);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/1/2010");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Bars.Item(`Task`).Def(6) = `...`");
items = _ObjectGetProperty( g2antt , "Items");
	h = _ObjectCallMethod( items , "AddItem", "Task");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/2/2010","1/5/2010","A","A");
	_ObjectCallMethod( items , "AddBar", h,"Task","1/5/2010","1/8/2010","B","B");
_ObjectCallMethod( g2antt , "EndUpdate");

2315
exShowExtendedLinks

OBJECT chart,g2antt,items,level;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "DefaultItemHeight", 24);
_ObjectSetProperty( g2antt , "HeaderHeight", 20);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "AntiAliasing", -1);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Task");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 48");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "UnitScale", 65536);
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/10/2024");
	level = _ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Level(1)");
		_ObjectSetProperty( level , "DrawTickLines", 0);
		_ObjectCallMethod( level , "DrawTickLinesFrom", 0,1);
	_ObjectSetProperty( chart , "AllowResizeChart", -1);
	_ObjectSetProperty( chart , "ShowLinks", 1);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "T1"),"Task","1/10/2024 10:00:00 AM","1/10/2024 10:20:00 AM","T1");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "T2"),"Task","1/10/2024 9:00:00 AM","1/10/2024 12:00:00 PM","T2");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "T3"),"Task","1/10/2024 8:00:00 AM","1/10/2024 8:30:00 AM","T3");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "T4"),"Task","1/10/2024 8:00:00 AM","1/10/2024 8:30:00 AM","T4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod( items , "AddLink", "L13",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(0)"),"T1",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(2)"),"T3");
	_ObjectCallMethod( items , "AddLink", "L14",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(0)"),"T1",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(3)"),"T4");
	_ObjectCallMethod( items , "AddLink", "L24",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(1)"),"T2",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(3)"),"T4");
_ObjectCallMethod( g2antt , "EndUpdate");

2314
According to the documentation of the ShowExtendedLinksEnum value exShowExtendedLinks (1) it is possible to distinctly visualise links (rather than showing them one over another) when two or more links start or end on the same bar

OBJECT chart,g2antt,items,level;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "DefaultItemHeight", 24);
_ObjectSetProperty( g2antt , "HeaderHeight", 20);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( g2antt , "AntiAliasing", -1);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Task");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 48");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "UnitScale", 65536);
	_ObjectSetProperty( chart , "FirstVisibleDate", "1/10/2024");
	level = _ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Level(1)");
		_ObjectSetProperty( level , "DrawTickLines", 0);
		_ObjectCallMethod( level , "DrawTickLinesFrom", 0,1);
	_ObjectSetProperty( chart , "AllowResizeChart", -1);
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "T1"),"Task","1/10/2024 10:00:00 AM","1/10/2024 10:20:00 AM","T1");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "T2"),"Task","1/10/2024 9:00:00 AM","1/10/2024 12:00:00 PM","T2");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "T3"),"Task","1/10/2024 8:00:00 AM","1/10/2024 8:30:00 AM","T3");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "T4"),"Task","1/10/2024 8:00:00 AM","1/10/2024 8:30:00 AM","T4");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod( items , "AddLink", "L1",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(0)"),"T1",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(2)"),"T3");
	_ObjectCallMethod( items , "AddLink", "L2",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(1)"),"T2",_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemByIndex(3)"),"T4");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`L2`,15) = 4");
_ObjectCallMethod( g2antt , "EndUpdate");

2313
How to use arrows key left/right to move the cursor left/right inside the text
OBJECT editor,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
editor = _ObjectGetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Edit") , "Editor");
	_ObjectSetProperty( editor , "EditType", 1);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim ediObj")
	_ObjectCallMethod(g2antt, "TemplatePut", editor)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "ediObj.Option(20) = False");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "ediObj.Option(21) = False");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "000");
	_ObjectCallMethod( items , "AddItem", "111");
	_ObjectCallMethod( items , "AddItem", "222");
_ObjectCallMethod( g2antt , "EndUpdate");

2312
How can I force the cursor to jump to the end of the editor once the user clicks the cell
OBJECT editor,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "SelBackColor", _ObjectGetProperty( g2antt , "BackColor"));
_ObjectSetProperty( g2antt , "SelForeColor", _ObjectGetProperty( g2antt , "ForeColor"));
editor = _ObjectGetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Edit") , "Editor");
	_ObjectSetProperty( editor , "EditType", 1);
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim ediObj")
	_ObjectCallMethod(g2antt, "TemplatePut", editor)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "ediObj.Option(48) = -1");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddItem", "000");
	_ObjectCallMethod( items , "AddItem", "111");
	_ObjectCallMethod( items , "AddItem", "222");
_ObjectCallMethod( g2antt , "EndUpdate");

2311
How can I show the overview with a different color except or outside the selection

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "VisualAppearance") , "Add", 1,"gBFLBCJwBAEHhEJAAEhABVIDg6AADACAxRDAMgBQKAAzAJBIYhiGgcYCgMZBSDeCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADE2YAoJDUN4nDKMMDybBkRxtDCPIDnGQoD" +
	"iGI4nSbKIzSCKMQhrEKZZrnaLJFgOTY8ABLEBvfSgASof6MKBlKhKGoiUo2SCFEaBTBNHxDL6raqqWJ5HDINQlWzbcjjKKFYRbOqTZDkGj4XqKTo3YBAdZSXJsXwTGKk" +
	"ji3ZgMOR3HaQaTjOgINpuDZdRzkUYZUDFSwSDqQIRtCpbJqzFZDZbLNbYBYME47AayID0CbdCgmaalSZHNxbVa0BzpXrFLw1TLoDy8AJ+ABseKzfo9PxdIygZRzKJ8ao" +
	"fE+YxynIfJcC8QgbCmL5eiEPIKH6RABlibJpicW4/FcAx/HOYRGmud4+CcHxdmiDhkGEIIIEkQJSGMHQHFGSBlFEUITEmewAAQIQ2AYRpDGQJAoEIXhXCkCB5kmSAdmg" +
	"VZPmgZJ8gaT4oHSeIHk8aIEnWCJiEiFgmgmYoIiYJIIE8aB8niB0pmyfIGE+ZYmDQPpjgOUg6DqY5DgYPg2mQAxqEKEJkEkFhGhGZIJA4QA2mOY4GDwOsumCe4NAACJK" +
	"DoPQOFkZJThaSoZHSGYXmYCYGGKGJmEmFhmCsJoDFYag5iaSISDIAAjAkPJLhyS4JlYbA5iSeZmHqHpnkmdh+hOZx5lSOAzGgSQ+DAAAimkNIkiKTh6DSbIjmkChGhKJ" +
	"JpEoVoWiSaJThyKImmSWI4ACCwNkqBhgDsahKhaJopmqComiqKpqkqEhghKYpAAIJIQmYA46jaLZrgqZo6i6a5KnaPotiZRQkiyIg6lIXw7myCwmkqMpsksNpOjObQLC" +
	"KQYQiwOpOEKGAPAsZpajabZLHaXo3m4C4GlmNJNisVpFjWZZzkaao6m6S42m6O5vAuRpyjqLhLhidYxgmE5KnqPpvkudp+j+cAMAcAo+i8WIOkSPZuguZwDkKcJMDafp" +
	"BE8XAengPJxEwVwWkWcYMGcGpGnGTBTBCRIwhkXwikichMhcJpJnKDIPB+NYNimAgqkucwMkcMoInKO4fC2F5ikyZw6k6c5MncPpPnOLJXAiTZJhOXxGlGdINCcSpSnS" +
	"TQ3E6UY0CuYgulSdRNFcVpVnWDRnFSVBwh0axeledgNFsXJRA+HYXGaWZ2g2JxqlqdpNjcZZYmYCJDHKXJ3E2K4doux3gbE8OEF4ygtjuH6L8eAHAHgFGCO8bY2QZgZD" +
	"iBwJ4FRijxE4G8DoxBxj6B6EINwTADjvBaMseYHBng1GaPMTg7wepxA4J4Rx8RjgfCYFMeoEQ6BpGqPUTob2MD2A6IQLoNAKiHAuG0WYAAJCVBCCETAHR3DMFWPgDwD2" +
	"9j4E8CoV4sw7imAIIcJASggAHBeBIJw5grikCmHoSYNxWjrH2BMAoNgqAZE8O0GYEg5DgAIG8DgxwjhXGaCYZIcgnxBGSDILgmwTjKHkJMNwqgjCREoGEC4RRMifHqJc" +
	"YokQ6BgEYJEUIaQOhlHIIESAECAg=");
_ObjectSetProperty( g2antt , "BackColorLevelHeader", _ObjectGetProperty( g2antt , "BackColor"));
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(199) = 1");
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(200) = 15790320");
_ObjectSetProperty( _ObjectGetProperty( g2antt , "Chart") , "OverviewSelBackColor", 16777215);
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(201) = 16777216");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "6/21/2001");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 48");
	_ObjectSetProperty( chart , "OverviewVisible", 31746);
	_ObjectSetProperty( chart , "OverviewHeight", 64);
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "UnitScale", 4096);
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Label(65536) = ``");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Label(1048576) = ``");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Label(16777216) = ``");
	_ObjectSetProperty( chart , "AllowOverviewZoom", 1);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Column");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 1"),"Task","1/2/2001","1/11/2001");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 2"),"Task","7/2/2001","7/11/2001");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 3"),"Task","11/2/2001","11/11/2001");
_ObjectCallMethod( g2antt , "EndUpdate");

2310
Resize the chart using the overview's selection left and right margins (blue)

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "BackColorLevelHeader", _ObjectGetProperty( g2antt , "BackColor"));
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(199) = 16711680");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "6/21/2001");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 48");
	_ObjectSetProperty( chart , "OverviewVisible", 31746);
	_ObjectSetProperty( chart , "OverviewHeight", 64);
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "UnitScale", 4096);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Column");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 1"),"Task","1/2/2001","1/11/2001");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 2"),"Task","7/2/2001","7/11/2001");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 3"),"Task","11/2/2001","11/11/2001");
_ObjectCallMethod( g2antt , "EndUpdate");

2309
Resize the chart using the overview's selection left and right margins (black)

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "BackColorLevelHeader", _ObjectGetProperty( g2antt , "BackColor"));
_ObjectCallMethod(g2antt, "ExecuteTemplate", "Background(199) = 1");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "FirstVisibleDate", "6/21/2001");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 48");
	_ObjectSetProperty( chart , "OverviewVisible", 31746);
	_ObjectSetProperty( chart , "OverviewHeight", 64);
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "UnitScale", 4096);
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Column");
items = _ObjectGetProperty( g2antt , "Items");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 1"),"Task","1/2/2001","1/11/2001");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 2"),"Task","7/2/2001","7/11/2001");
	_ObjectCallMethod( items , "AddBar", _ObjectCallMethod( items , "AddItem", "Item 3"),"Task","11/2/2001","11/11/2001");
_ObjectCallMethod( g2antt , "EndUpdate");

2308
Disable temporarily the column's sort, resize and drag and drop

OBJECT chart,g2antt,level;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectSetProperty( g2antt , "OnResizeControl", 1);
_ObjectSetProperty( g2antt , "SortBarVisible", -1);
_ObjectSetProperty( g2antt , "SortBarCaption", "<fgcolor 808080><c>the header and the sort-bar are disabled (no drag and drop is allowed)");
_ObjectSetProperty( g2antt , "AllowGroupBy", -1);
_ObjectSetProperty( g2antt , "HeaderEnabled", 0);
_ObjectSetProperty( g2antt , "HeaderAppearance", 4);
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Index") , "FormatColumn", "1 index ``");
_ObjectSetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Pos") , "FormatColumn", "1 apos ``");
_ObjectSetProperty( _ObjectGetProperty( _ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Edit") , "Editor") , "EditType", 1);
_ObjectSetProperty( g2antt , "GridLineStyle", 512);
_ObjectSetProperty( g2antt , "DrawGridLines", 2);
_ObjectSetProperty( g2antt , "GridLineColor", 14737632);
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "AllowCreateBar", 1);
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 196");
	_ObjectSetProperty( chart , "GridLineStyle", 512);
	_ObjectSetProperty( chart , "DrawGridLines", -1);
	level = _ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.Level(1)");
		_ObjectSetProperty( level , "DrawGridLines", -1);
		_ObjectSetProperty( level , "GridLineColor", _ObjectGetProperty( g2antt , "GridLineColor"));
_ObjectCallMethod( g2antt , "EndUpdate");

2307
Adds a Finish-Start(FS) link (method 3)

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Name");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
items = _ObjectGetProperty( g2antt , "Items");
	h1 = _ObjectCallMethod( items , "AddItem", "Item 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/3/2001","1/6/2001");
	h2 = _ObjectCallMethod( items , "AddItem", "Item 2");
	_ObjectCallMethod( items , "AddBar", h2,"Task","1/3/2001","1/6/2001");
	_ObjectCallMethod( items , "AddLink", "Link1",h1,"",h2,"");
	_ObjectCallMethod( items , "SchedulePDM", 0,"");
_ObjectCallMethod( g2antt , "EndUpdate");

2306
Adds a Start-Start(SS) link (method 3)

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Name");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
items = _ObjectGetProperty( g2antt , "Items");
	h1 = _ObjectCallMethod( items , "AddItem", "Item 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/3/2001","1/6/2001");
	h2 = _ObjectCallMethod( items , "AddItem", "Item 2");
	_ObjectCallMethod( items , "AddBar", h2,"Task","1/3/2001","1/6/2001");
	_ObjectCallMethod( items , "AddLink", "Link1",h1,"",h2,"");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`Link1`,6) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`Link1`,7) = 0");
	_ObjectCallMethod( items , "SchedulePDM", 0,"");
_ObjectCallMethod( g2antt , "EndUpdate");

2305
Adds a Finish-Finish(FF) link (method 3)

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Name");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
items = _ObjectGetProperty( g2antt , "Items");
	h1 = _ObjectCallMethod( items , "AddItem", "Item 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/3/2001","1/6/2001");
	h2 = _ObjectCallMethod( items , "AddItem", "Item 2");
	_ObjectCallMethod( items , "AddBar", h2,"Task","1/3/2001","1/6/2001");
	_ObjectCallMethod( items , "AddLink", "Link1",h1,"",h2,"");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`Link1`,6) = 2");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`Link1`,7) = 2");
	_ObjectCallMethod( items , "SchedulePDM", 0,"");
_ObjectCallMethod( g2antt , "EndUpdate");

2304
Adds a Start-Finish(SF) link (method 3)

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Name");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
items = _ObjectGetProperty( g2antt , "Items");
	h1 = _ObjectCallMethod( items , "AddItem", "Item 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/3/2001","1/6/2001");
	h2 = _ObjectCallMethod( items , "AddItem", "Item 2");
	_ObjectCallMethod( items , "AddBar", h2,"Task","1/3/2001","1/6/2001");
	_ObjectCallMethod( items , "AddLink", "Link1",h1,"",h2,"");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`Link1`,6) = 0");
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.Link(`Link1`,7) = 2");
	_ObjectCallMethod( items , "SchedulePDM", 0,"");
_ObjectCallMethod( g2antt , "EndUpdate");

2303
Adds a Finish-Start(FS) link (method 2)

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Name");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
items = _ObjectGetProperty( g2antt , "Items");
	h1 = _ObjectCallMethod( items , "AddItem", "Item 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/3/2001","1/6/2001");
	h2 = _ObjectCallMethod( items , "AddItem", "Item 2");
	_ObjectCallMethod( items , "AddBar", h2,"Task","1/3/2001","1/6/2001");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h2,``,270) = `1FS`");
	_ObjectCallMethod( items , "SchedulePDM", 0,"");
_ObjectCallMethod( g2antt , "EndUpdate");

2302
Adds a Start-Start(SS) link (method 2)

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Name");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
items = _ObjectGetProperty( g2antt , "Items");
	h1 = _ObjectCallMethod( items , "AddItem", "Item 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/3/2001","1/6/2001");
	h2 = _ObjectCallMethod( items , "AddItem", "Item 2");
	_ObjectCallMethod( items , "AddBar", h2,"Task","1/3/2001","1/6/2001");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h2,``,270) = `1SS`");
	_ObjectCallMethod( items , "SchedulePDM", 0,"");
_ObjectCallMethod( g2antt , "EndUpdate");

2301
Adds a Finish-Finish(FF) link (method 2)

OBJECT chart,g2antt,items;

g2antt =  ObjectByName("AN1") ;
_ObjectCallMethod( g2antt , "BeginUpdate");
_ObjectCallMethod( _ObjectGetProperty( g2antt , "Columns") , "Add", "Name");
chart = _ObjectGetProperty( g2antt , "Chart");
	_ObjectSetProperty( chart , "LevelCount", 2);
	_ObjectSetProperty( chart , "FirstVisibleDate", "12/28/2000");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim chaObj")
	_ObjectCallMethod(g2antt, "TemplatePut", chart)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "chaObj.PaneWidth(False) = 64");
items = _ObjectGetProperty( g2antt , "Items");
	h1 = _ObjectCallMethod( items , "AddItem", "Item 1");
	_ObjectCallMethod( items , "AddBar", h1,"Task","1/3/2001","1/6/2001");
	h2 = _ObjectCallMethod( items , "AddItem", "Item 2");
	_ObjectCallMethod( items , "AddBar", h2,"Task","1/3/2001","1/6/2001");
	_ObjectCallMethod(g2antt, "TemplatePut", "Dim iteObj,h2")
	_ObjectCallMethod(g2antt, "TemplatePut", items)
	_ObjectCallMethod(g2antt, "TemplatePut", h2)
	_ObjectCallMethod(g2antt, "ExecuteTemplate", "iteObj.ItemBar(h2,``,270) = `1FF`");
	_ObjectCallMethod( items , "SchedulePDM", 0,"");
_ObjectCallMethod( g2antt , "EndUpdate");