991
Highlight the match once the filter is applied

// FilterChange event - Occurs when the filter was changed.
void onEvent_FilterChange()
{
	COM com_Column;
	COMVariant format;
	anytype var_Column;
	;
	format = exgantt1.FormatABC("`lower(value) replace lower('` + value + `') with '<bgcolor 000000><fgcolor FFFFFF>` + value  + `</fgcolor></bgcolor>'`",COMVariant::createFromStr(exgantt1.FilterBarPromptPattern()));
	var_Column = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column = var_Column;
	com_Column.FormatColumn(format);
	var_Column = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(1)); com_Column = var_Column;
	com_Column.FormatColumn(format);
	var_Column = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(2)); com_Column = var_Column;
	com_Column.FormatColumn(format);
}

public void init()
{
	COM com_Column,com_Column1,com_Column2,com_Columns,com_Items;
	COMVariant format;
	anytype var_Column,var_Column1,var_Column2,var_Columns,var_Items;
	int h0;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.SelBackColor(exgantt1.BackColor());
	exgantt1.SelForeColor(exgantt1.ForeColor());
	exgantt1.ColumnAutoResize(true);
	exgantt1.ContinueColumnScroll(0);
	exgantt1.MarkSearchColumn(false);
	exgantt1.SearchColumnIndex(1);
	exgantt1.HeaderAppearance(4/*Etched*/);
	exgantt1.HeaderHeight(23);
	exgantt1.BackColorLevelHeader(exgantt1.BackColor());
	exgantt1.FilterBarCaption("`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? abs(matchitemcount + 1) + ` result(s)` : ``)");
	exgantt1.FilterBarPromptVisible(2055/*exFilterBarCompact | exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible*/);
	exgantt1.FilterBarBackColor(exgantt1.BackColor());
	exgantt1.FilterBarPromptPattern("and");
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		var_Column = COM::createFromVariant(com_Columns.Add("Name")); com_Column = var_Column;
			com_Column.Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
			com_Column.FormatColumn("lower(value)");
		var_Column1 = COM::createFromVariant(com_Columns.Add("Title")); com_Column1 = var_Column1;
			com_Column1.Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
			com_Column1.FormatColumn("lower(value)");
		var_Column2 = COM::createFromVariant(com_Columns.Add("City")); com_Column2 = var_Column2;
			com_Column2.Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
			com_Column2.FormatColumn("lower(value)");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h0 = com_Items.AddItem("Nancy Davolio");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Sales Representative");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"Seattle");
		h0 = com_Items.AddItem("Andrew Fuller");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Vice President, Sales");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"Tacoma");
		com_Items.SelectItem(h0,1);
		h0 = com_Items.AddItem("Janet Leverling");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Sales Representative");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"Kirkland");
		h0 = com_Items.AddItem("Margaret Peacock");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Sales Representative");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"Redmond");
		h0 = com_Items.AddItem("Steven Buchanan");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Sales Manager");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"London");
		h0 = com_Items.AddItem("Michael Suyama");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Sales Representative");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"London");
		h0 = com_Items.AddItem("Robert King");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Sales Representative");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"London");
		h0 = com_Items.AddItem("Laura Callahan");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Inside Sales Coordinator");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"Seattle");
		h0 = com_Items.AddItem("Anne Dodsworth");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Sales Representative");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"London");
	exgantt1.EndUpdate();
}
990
ADOR, MDB (JET)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	COM com_Items;
	anytype var_Items;
	;
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddBar(_Item,"Task",com_Items.CellCaption(_Item,COMVariant::createFromInt(2)),com_Items.CellCaption(_Item,COMVariant::createFromInt(4)));
}

public void init()
{
	COM com_Chart,com_Items,com_rs;
	anytype rs,var_Chart,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("8/10/1994",213)));
		com_Chart.LevelCount(2);
	exgantt1.ColumnAutoResize(false);
	exgantt1.ContinueColumnScroll(false);
	// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
	rs = COM::createFromObject(new ADODB.Recordset()); com_rs = rs;
		rs.Open("Orders","Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Program Files\\Exontrol\\ExGantt\\Sample\\Access\\SAMPLE.MDB",3/*adOpenStatic*/,3/*adLockOptimistic*/);
	exgantt1.DataSource(rs);
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
989
Re-order the cell's caption, icons and images/pictures

public void init()
{
	COM com_Column,com_Column1,com_Items;
	anytype var_Column,var_Column1,var_Items;
	int h;
	str var_s,var_s1,var_s2;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ColumnAutoResize(true);
	var_s = "gBJJgBAICAADAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEahkZAIAEEbjMjlErlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql";
	var_s = var_s + "Vq1XrFZrVbrlTiFdib/sNjr9gs1nldlrlqtFtt0stlguNvulyh91ud1vVVvNuvt7wFHr9/vl3luEwOJouIq+Dw2KyGRyWTymVy2XzGZzUuiw+lmej0gkUaksljaAnmDc";
	var_s = var_s + "D/cEbf7w1+ufD/fEbeB028bYAO3enB6AB++4EoA4A4sb4vHjXJ4nG5vKAHA4ca6XBjTAD/Y2x/eB/jcB";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("ToLeft")); com_Column = var_Column;
		com_Column.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("ToRight")); com_Column1 = var_Column1;
		com_Column1.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column1.Def(34/*exCellDrawPartsOrder*/,"caption,picture,icons,icon,check");
	exgantt1.DefaultItemHeight(32);
	exgantt1.DrawGridLines(2/*exVLines*/);
	exgantt1.HeaderAppearance(4/*Etched*/);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Caption");
		com_Items.CellImage(h,COMVariant::createFromInt(0),2);
		com_Items.CellImages(h,COMVariant::createFromInt(0),"1,2");
		var_s1 = "loadpicture(`gCJKBOI4NBQaBQAhQNJJIIhShQAEEREAIA0ROZ6PT0hQKYZpIZDKBJkIgKByN5mNJsMsKPABVqXBI4KjrD7HL6GWKPJKiCIhMiySidKxbOzZZJWMLsG";
		var_s1 = var_s1 + "L2FqyLjZMonNa2CyiZDOUqsQqUEq0ZCNISFXDIFxzZ4hUrbdrefZ/fz3ZgzZ75Tz3XjvHZnZznPieb55AKgAqmRyOOzEhR7XirWaWQQMTa+QIhDbZOZAAoYUCPDAQG7F";
		var_s1 = var_s1 + "XI4JRrNCoIRdPyyFr0AYifDUKZ+PCufK4RReALLUbtdBHSrGTCCNKqT4MbRqUxxQx+CAAEQ2VCBbxqGaLYDZNgzFbCbLDarRCrqMYMM6cWqpHKUDqhZjnVijEoLcp0FC";
		var_s1 = var_s1 + "jVg2OYhTjN/QWk4bo4iseBsAcABIDoPA5g2HgADIkQfDCNxwkEQYnFmAIAB4OJHGcKAPioGRKFKdh2g6UB8iiZ5QkYQp3gKWhDlsWYmAARBcgCIAUniVpmiSA5AF3A4w";
		var_s1 = var_s1 + "G8P41nGWwDDAW4MAAIpSG+bRzBoGx3AeCJhh6C4ljCUJGnSRBUFKAIQA6EgIHMWBoHqYgAngHJDCALBmhCCAfHOARAScUBvAmc5zHYXxoguXQ8DEMIAH8dI8HmP4/AyQ";
		var_s1 = var_s1 + "JAEAYAoHqRByEQGJiECBAzAkKIpBYNIcikAp8kcZhDn4EBChmUoMgqHIqhiWoIgaDImgyVQImaRw/F0EZGCcSw3DaM4Kn6GBBhwYYZDGZo3C+RgOAmNQnhYeYqgsTZen";
		var_s1 = var_s1 + "EVgSFYLo2CydhGg4OROF2HJjlydR7i+cJjDGFo8BgHgVl4Po+DufJRgcbQOlkCxyKuCJNAsdwIhSC4mgieYKkeHJWD0Ih8BQaYYkkMYppwTg0EsFhJC0SxEkgeodDSFp";
		var_s1 = var_s1 + "TheV5SDgLBIieRIigyVo5CeOpymoWhtEQfRACMR4zE2KxRnsV5dF2ehFCeC50G+GBkBiZgaCUGYnBySY+BsdIuEkJJJDSSRsjGeYqEWOhliYVYOHWDYbFuNhFmcS5siq";
		var_s1 = var_s1 + "bZrnGLYOh0DpPhyXo7D8d4ZHGXR1CcdRAnsMh7GELwIHiSx7CiXY0HYNZ1nOcoPg0SB+CWLwwGqUpbFAQJwEeEImlCVQwk4cJxAiFRIhMS4ulGYRRlmMQVDEHZxG8YxX";
		var_s1 = var_s1 + "hIaQSniLhIiaGwnDiJZGicZYnjeZw8D6OoSkWEIthwI4emudwtGwepNhuLQ3F8Zojm4bQrhALo0D0HZwCcJwoimeI0ASWR6CAJkJQORfAiFcLIXgahaiGCgMsKIpw8DP";
		var_s1 = var_s1 + "H8H4Pj2BhjrBMGQGYfxFjuEGIsB4rxbg+DSFsPAxBtChHoAQaYmRojVG0D0e6JALjVD2K0F4qxfjjGyPIRY/QXi1AOAILwFQGgOF8KYDwOgdBsHmCYcobRtjIHoGgZAm";
		var_s1 = var_s1 + "Bgi7HgPcWoHxTAmCQCcVwTgDB+FYJgfQMAOj0F2PoZgkRMjeKQLkWATwdDzEkPMF4FxzAXDGJYfAlgPAuB+FkeIWxuizC0LkUwvQbD9ByHIDouxvBCBgCMCAvh4CXCME";
		var_s1 = var_s1 + "gSA0BJDEH+AsfwMgfjhDeL0Ro/xkgvH4JMXA7RYjyAONgPAWhfjyCuBEcAFRSAWE4BIOwEAUgTCaIYfA4wSBUAcAsDowQOBFA4J0Hg9h2B4EmCQTYVBdB0FwIwU4rByj";
		var_s1 = var_s1 + "JGmHIRQ8gJAKB4IoZgShaDKAQOUIolQkjVBuGoSw6hugaFaJoeoWgajaDKDoO4dB5j0FcJ0Zw1Ang3CQDEdgNQnA6EmHgGw4QuCiCSAKFIXBgilEwGcLAZAtDmC0N0Wg";
		var_s1 = var_s1 + "LhaApFiK0HgfxniuGKP4GIvhrhhGgHEZgaRtB5GSBUcIhg5BnHkOAeQFB5A6DiEEao2xoDHH0KIQ4bxYBfFEP8RogB5BfA8AQHwvwqAZBIBURgCgwgPAqAkKYCgfgTHC";
		var_s1 = var_s1 + "BwDIegcgjFUDQXQPQzA4DsCkDwnRABNAwE8OgTw5C6AkJEPgPRSg+DqCANoMRBjuHUKEJglQWDrHYOATg3BuDGDWEMa4CQbj3HMB0Z4Pw5jLFuCAWYsB/D2DgBEUQmB1";
		var_s1 = var_s1 + "iuDEMkfI0hUCyEkPIfwihKgqGsGobIGhNhfFGGoZY6gDDuGWDceANA1A2DyDUM4txaA/EwG0bo0wTDXEcH8Sg/BcD2GSHQC4pgtiuGOOkNIRg3hbG+MIGYjhzgaBeHwL";
		var_s1 = var_s1 + "4FgHAMAYFIfgJh4nJBQGkfAwRNiFAiO4KIlhoiKFiOoO4EwPiYGONUE4RATg6BOMcUwEApgZGmP4X4lxnjYGaLIZg7RNirH6FQG47xZCAC6OQLK5B1BYF8LgOQZAqh0F";
		var_s1 = var_s1 + "qGcBo/xMhpE6HsXomQwBKCwIcfA6w/DxA+IURAIxwgmBSCMKoJgOhFD0JMeIkQdhREwFAEQKRFioAYKkJIqQlhpBYFEPYUQui0GCGgFI9BlCOAUDoS4nRhA7HOOkFYdg";
		var_s1 = var_s1 + "uhgEgGYUgZB2DeE6IIYIMQEgyAiPYHgYgnBlFiNsPYghKiODqISfddhPgVEOCQE4hg5iWHWPEfwfB3BgFYPkAIWQPAOC8BIb1MwrD+QsNEQ43ACAMAKGUQgsBhBoHCGU";
		var_s1 = var_s1 + "SNrxBBoEqNgGo8QMAJF+MMOwRxGCOFUBwHYdhODvDwMEBILgk21AKKkOI6RrgyD6LIDoJxNjkDUOQF4yAXgoC4FMXgqhKCiE4KACQow9D5CoJgLQiA9CwEMLUYwOxmhA";
		var_s1 = var_s1 + "FaEAdoSwdBBF0CEPQEWWDrGOBoEgGhTAaDyBsPoNgXA4CmHIWw+guCDCSJsNIjxsgADcNQPg2hxC2FKLACo2hNDFEMMcKw/BeCcE6LYXoGRvDJGCN8GIxgUjYAyOUbg6";
		var_s1 = var_s1 + "BpDrB0OYWw5AgjtGSOoEofAgjRG2NgY4+RRCfBeKUN4qQvi7H+HAYAchwCOCWAcQQZBBFiG4EIUYww3CFFuEQSgRAlBdDMIwCQiRrCMGCMcIwxhuiKDeE0PAlxCC8GFZ";
		var_s1 = var_s1 + "QS4YhIgaEkJYS43hLAxE8EkTodQUBbBWMcHoNxy0lHqOETYyAeDeD4I0AQlRhD0G2E0O4PgKCjHeEoSgmBKCGEsBUS4vxUA8C6M0K4ox7irD+O0VouhfD7FUA33I+gmi";
		var_s1 = var_s1 + "XE0IsLY1gtipG0CQbQLQPjFDuDQHw2RtjFGsK0bw4x9j0CcO8N4/RtBnhSgvAcBehmAOh0ANgiAhAnhih8gwh1gbhugRhSBRhDhjh2Bvgyhfh3gPhThOBIBOA6B9gsAY";
		var_s1 = var_s1 + "Aah+BdhlBWBtAuBoBThtB8gnhFheAlhcByh6BKhvAahNBnh5B1gJB1g+hCAsgAAbB1gOguAJhIAoAmhFBvqzACABh0BlgFggA6CaBvBQA7BDEHAaA0AABoAcgGBEACg5";
		var_s1 = var_s1 + "AAgYgZgLAIBKgFBBhWh9AggCAIBoBNgAANA9AJhwABBxBwAKAYAAALCJu9ADAYAFBLExBEAiBEgmBEgxBEANBENbhmgJh5gJBNgJgzgJBfgRAvAhpKhnAQg5AIpkARAS";
		var_s1 = var_s1 + "A/ASKGAPBJhZBIAdBJAbARh7n4BIhshkAnAZDVgkBZAUg5AWh5AVB5AEgFAbBFA4BFACglA5hlAfAVAChVAtBVAig1AQh1ABBNB+gaAcgUA7AqAbAWgTg2gfB2gSB9AI";
		var_s1 = var_s1 + "BdA1BDh2BHAnBdAZg6Apgdh+h0g7lCBoAXh3BJBugahkBwBihkBkAsBYgtg/h7gNATBNgkhIgUhBg0gzI6BZgJRJglhvAvARgrAtBrALBbBFh2BxB2BZh9hFAcgOAcAd";
		var_s1 = var_s1 + "AcgCgcBzhcAVB7h9g5BlgxhohsArgDh5A8heA8BKh8hMB8gzB8APgPBmAdByAShQAVgUAWMMAaAThuATgpAWhNASgLARB3ASAwg+AsEwhiAoimBTBxhUAJhEAJhVhJBP";
		var_s1 = var_s1 + "hSBTBSBjgyhvBPlWAbgUgfhRhYBUAkAoBTAoBQgrgygfyhgTBShXBSgwhUh0hWgKhTguhQBphRAdhWAjhoBvg1gQA0g0A1AKACAehLgegzgrgmhcAmBahmB+A4AihzAh";
		var_s1 = var_s1 + "hLA6ArAFBrAfAbAyhbAPh2hYB7BzB8AOBDgwhTg+hnALAXB8hXBph3AxAPA/BPA2gLg7A8hxg+AlAXANB9ARB+A6B+h5gBgEBAg9BLhFBBAUghAWAhANhhhsgRgBARBv";
		var_s1 = var_s1 + "gjAUgiALhjBpBig8hjhHgSA1ASBqgvA4gkhzAmgkglhRgnB7hlh8BKA0hNgxhMBtg7guh5gjAzhPAtB/BJgBBmhhBvAdhDAighg7g2glAzBlg+AVhUAVAphVAHhqURAG";
		var_s1 = var_s1 + "hvh7g0AgAahvA2FigMg2BhhaBrg6AMAegTA6AVi5B6BlgehNgMgoA9gigMAZA/hBgMgGg+hfgbAvAegSgbApgegXhZhqBagzBYgogfgwB/Cwg7hgh/hDA/gTg5B+gNh/";
		var_s1 = var_s1 + "gXh6B8hbh8B/hEhfASg2h/BHh6BfhZBbhuAjB/g9h7BbBth0h/gbh2Ayh/hAh+h/gnh/Ajh3AwgnA/gigPBzBPBVBegigfA1h8BPhshr1HgNhvAxB/hoBdgGgBhZh3sU";
		var_s1 = var_s1 + "hMh0gmh1hLg9hIgchQB7BthugQh5hbgugth6BTgLi/ALBkocoPgCA/BQBfhmh+hXhzA/hzh+g7B1hbgch/heh4gvhEg3hsBfBOgbA2B9ArhrANhPTSKXAMg7A+Bhh4Af";
		var_s1 = var_s1 + "gZh/AVhdg/hzB7BTBsgfh5B+gdhZh/g7oQBogSh/BMrPhUhYBshvheBfA9AThph7ANhvhNgog/hZBNg/hdhvgIAxhjB2hHBhhOBtg1gPBCg3hZBDAmhDg0gfhNhAg8xM";
		var_s1 = var_s1 + "hgBiBvkig7BGgKBHBDBfBJhDBWhPg6BPxKAvBOBUhPB5hMhLhAh0mXBXAFhhB/A3hXBIhwB9AAgUBKg4AHA8AMgdgDhuB8hGghhcACgUAAgOA4AAA8AQABh2BQAegHA2";
		var_s1 = var_s1 + "BOB9BYhxhrBAA/hfg7hah4BCBrAxgABkAdAcK4BtgsAshdhZCSAVglgFgbASgeB3AQAPhNhIFJ2TBnhahchDBBh9gQBogABSAlhhBUgbBLANBvA+hbh+gAgWBzB5BXBW";
		var_s1 = var_s1 + "hFh/knAAADgLAkgiAggqAsAEhigrA1g2AKAqgKBfAZgdh9g2BbhugjhUgCgtgBALAtAYy+AWhEgmgAhFgSAaT4gAASgaATAahIgxACB9ghhGgfgmBoAEB4gIg/ANBagx";
		var_s1 = var_s1 + "AkhGBRA0gs3yBaBjTNAFBCBFBghCACAJAlhFh+AAAEgCAQgQg+h2g7Bbhdgdgdhdhxh7gGvUhbBHhah/B5ATAzh3BOtAWchuh3hOA9h3XvAfgbh0hfh8Brg6hegDB9Bt";
		var_s1 = var_s1 + "nWDQByA4gkAGJIAZAEgcgFh8gvBJBSAdh0BLhqBLACAABHBtgwB2x8yngsg+gAByA2gAB8hxhvh6Byg+AFBp4nBShMgmBzANgAB8ACBZADARBLPVhQh7uKBOg/B7hqBU";
		var_s1 = var_s1 + "gphbA+AfALAygQYohXBZi2AThYhcAeBPhAuwhdgIBEgiB7B9YzhDA0AvAthIBAg8AeBfApAohKA/B2BRA+BYm/gGBCguAG5JhAhjZLAgAvgvhPg1gYgehmAbgLZQhDAj";
		var_s1 = var_s1 + "AjgjgOh5heAxzgABhx5Wgig0AfgQA/B13iBgBchVgrhXgVXFhbh9gKBdgugUAbXDgygsg+A/B+B8AqA6g6hahbBsANBmA/hCgmhegeSVgeADBwB+BKg+BnA0hwBxBihF";
		var_s1 = var_s1 + "h7BxBxAxAIgGACAiAYAMAKA/BPgnguAMgPBbBngak8B+hsgqAVBag2hnBOAoBWAJhYgsA2AchvAHhIEMAmgmAmAkAjhHgPB6hUBkhSAqApgpjehsBcgZhAhuAYBOBdAu";
		var_s1 = var_s1 + "AXAwgpgPBMBwAOB5AjB+AeAYBwANACghgnBTgph3h0B0BMB4h91BgMAJhxAmgSByhshbajBaWPgTgCAYA4ACWGg3g/AyBfgzhnhPBxA1hrhXBshehChChRBQBQAgAeAF";
		var_s1 = var_s1 + "BNAtg7h3hHB7h7B7A9BOgHBDgggfhrBEBHA+h9gRB+68hPAfg3huAoAzbAAiAGBZA7B2htAqB7hYgxgwhVgehOVIFFBRgchLhhgAA7BfBthdB9hkhkgkg0hyBlAKhBg3";
		var_s1 = var_s1 + "ABAgAZBEg4AcBWAGYIhzgXAEgDA6gmhphwAtgRBYBmBwBwBQAThBA3gvBXn3hrBDBuBcA/BugnANgEBLhKhCgzhwYzhAAiARAohGgHgggJgMg9gMBrA4g+A6BoAUhchu";
		var_s1 = var_s1 + "g3BBgAhZAIBPBNApAFAFAFh6hZBZAZAWhMgkAkBEgyApb1BOAqBGBIBmATAShAhsgOgHBuhxh4gsBOhph2ArAfBmBLCWgigxgOhZhshtAMBrghhDgHgjgfrIB5ABBCBQ";
		var_s1 = var_s1 + "AcAgV4gPhcgIBWhVhXgnhBApA4hVBXhngFhTLMgcgOhRgtAMh+hFh2h2gohnAsgshCg+rTAGgNhcgjgvwhAsA0BOA8gV4dBN8qBJh68rgUgoB2BdA6h5hTABhMgWAxhT";
		var_s1 = var_s1 + "g9A2guguhJBDB0g4B5hzBmsvhwgwgzgog4g4gDAmAygPBUhWAqANgbg3AmBAI2AOBzhDA8hmBKgxBIAFgAAJhbCuhGgKl7BwhwAmgcAKAigDh2gZAJArABANgDBegx5W";
		var_s1 = var_s1 + "gZADgwBGBEAkBegAg2AYg9gwKABtBmhPABBoBZAPgFhHBMAPhmB/B6bdhZhdhdhth1hh8lBGgIBEAUgOhEgKgVgrA0AngaAaBiBIgyB5A3gLgXBcAEhlJjAJgEAsAJAk";
		var_s1 = var_s1 + "gqqlhththThrhrhrBVBTAWhZhDhPhThIBWARg+Bn7Sg7A3gDhZAvAphEgegGgehuhpAJAyAJBZQ9gBggAAgAgwBDg3BCAAhkgTh0hkAAhLhthWhTgqAqhJBIAhhmAEgq";
		var_s1 = var_s1 + "gqgCgbBiB6h9BD8zhxhmABrOhfAqhMg7ghwiA4BSJNhMgqg4BEhkY8AjBphNATBaA6AtAwBYgEACBBiEBABIAggbg7gmh1AlglAlgahXBmhmB1BgBPBEAmAnwZgogyhV";
		var_s1 = var_s1 + "gmgABcgxsNBUAWAAB2B4AHBvA5h3B3ggAQBIAwg+hPhSgqBQCEA/gQBQA2htKUgfAJhFgkhkAYBtAIAMHpgbAasHg0gVAsBhhIgbBVAxAi/MgFBnAZBDBpB2ABgwADBW";
		var_s1 = var_s1 + "h3gchuBwBxhrhkB1BbhWAFAP5mBCghgTgnA8AgBV+OgqhSg2g1g3AnBOAcg+hNAYgbhHBRg8g6BjhjhjA2ADgdAdhTg/Aeg/hvA6h1h7A2gChLhKfjAdAxhahigYgMAG";
		var_s1 = var_s1 + "Ashzg5AAaYh/AGAjh2AChABwBOgwXnBFh/ApAzgT2GBZBGvTBHAjBGhAF0wAgsDi1w4Nza2UkyBUYiA+maxm6g1K32ad3s2Qg8AKlRaBlKD1wKE+rCCjSObAK8iGsFOr";
		var_s1 = var_s1 + "C0vR0lTeDV8IUatHu6GO2jkAHgAwgfgC5TYrVsKk2Y3MBRcpBQkgmOUuznY2FqKy0WSymXeX0ASwel0olHI5AwJ1mx0gL1mTXU6XS8Vpdj4hyg8BemDYZHqMFOUyYZTW";
		var_s1 = var_s1 + "P1WJ1CN1MTR6gH4cmysjKr2mlCqn3GuR+jDoJHGWlKkU+ajXpgg1yq2FQDFigSEBROwkCKnQwGwjliIU45x2HGyIB4dnM0UmUC+PhaLxefwOdia5zMT3+8wwYCQmEwdi";
		var_s1 = var_s1 + "4vQKqHKvigKHoKnc9Rs7GMDUOhhGOnAYjWkzKKRGyxsDUA01QCw0QCOF0uh0OkfRUMMbyRNwTBiCYZwKMIYyZAUkSlBYkxsCYAAHG4qwCBwMQfBYlxsNgsDhLEgwHA8P";
		var_s1 = var_s1 + "iPNg1ygP4uywIgMSwK4zSQG46BnFAATDJcL3IHM6DQBsPR3O83j/AsJyGH8w4ZJY5TsN8EAdFojTwJ0AAoA4MgATIMDqAcrQPMEwTDBgVy0LYtiuK8qyrFs6QtCocnLC";
		var_s1 = var_s1 + "s8wAGAChOGM+CZJ0HAaoQHQYocBiaHtJT3LEfgCLYIgQNYgw4IQiSaBcAABBEAB/DAXS4HgPAgLUSCzGkPjkIATyXPQoCeNYfR6Do7QGI8Zj+CAHiyCY2SkIQTSSCIyD";
		var_s1 = var_s1 + "QCkpDBJQJinMMuAUPgOxGOcpA/AkoTzJwyiYFMiDwJEsShFAURFCwJRVFceQXKQIS8P8STlBgLggAcrAQCQATjIgZA0JgVSxL0OAmKI6CpEc4SuOkeBeOwMRnLQuQhOA";
		var_s1 = var_s1 + "pDJAImYmD44BPIgAzFMYiR3LcQw4JwqhQAknAMFAxwEEwJwUO4ljCHgmxzNwNQ3EU3ScLYEAACocDePwZgCLI+yFN8jg7FEQTtKMcwrAAOhgHw6SQI4OCmJgjDmNAjj5";
		var_s1 = var_s1 + "Gw+wbHkkTpEw7gpFgIAA2sABJEUThEK4QhgIJAQ==`)";
		com_Items.CellPicture(h,COMVariant::createFromInt(0),COM::createFromVariant(exgantt1.ExecuteTemplate(var_s1)));
		com_Items.CellCaption(h,COMVariant::createFromInt(1),com_Items.CellCaption(h,COMVariant::createFromInt(0)));
		com_Items.CellHAlignment(h,COMVariant::createFromInt(1),2/*RightAlignment*/);
		com_Items.CellImage(h,COMVariant::createFromInt(1),com_Items.CellImage(h,COMVariant::createFromInt(0)));
		com_Items.CellImages(h,COMVariant::createFromInt(1),"2,1");
		com_Items.CellPicture(h,COMVariant::createFromInt(1),COM::createFromVariant(com_Items.CellPicture(h,COMVariant::createFromInt(0))));
		h = com_Items.AddItem("<b>HTML</b> <off 4>Caption");
		com_Items.CellCaptionFormat(h,COMVariant::createFromInt(0),1/*exHTML*/);
		com_Items.CellImage(h,COMVariant::createFromInt(0),2);
		com_Items.CellImages(h,COMVariant::createFromInt(0),"1,2");
		var_s2 = "loadpicture(`gCJKBOI4NBQaBQAhQNJJIIhShQAEEREAIA0ROZ6PT0hQKYZpIZDKBJkIgKByN5mNJsMsKPABVqXBI4KjrD7HL6GWKPJKiCIhMiySidKxbOzZZJWMLsG";
		var_s2 = var_s2 + "L2FqyLjZMonNa2CyiZDOUqsQqUEq0ZCNISFXDIFxzZ4hUrbdrefZ/fz3ZgzZ75Tz3XjvHZnZznPieb55AKgAqmRyOOzEhR7XirWaWQQMTa+QIhDbZOZAAoYUCPDAQG7F";
		var_s2 = var_s2 + "XI4JRrNCoIRdPyyFr0AYifDUKZ+PCufK4RReALLUbtdBHSrGTCCNKqT4MbRqUxxQx+CAAEQ2VCBbxqGaLYDZNgzFbCbLDarRCrqMYMM6cWqpHKUDqhZjnVijEoLcp0FC";
		var_s2 = var_s2 + "jVg2OYhTjN/QWk4bo4iseBsAcABIDoPA5g2HgADIkQfDCNxwkEQYnFmAIAB4OJHGcKAPioGRKFKdh2g6UB8iiZ5QkYQp3gKWhDlsWYmAARBcgCIAUniVpmiSA5AF3A4w";
		var_s2 = var_s2 + "G8P41nGWwDDAW4MAAIpSG+bRzBoGx3AeCJhh6C4ljCUJGnSRBUFKAIQA6EgIHMWBoHqYgAngHJDCALBmhCCAfHOARAScUBvAmc5zHYXxoguXQ8DEMIAH8dI8HmP4/AyQ";
		var_s2 = var_s2 + "JAEAYAoHqRByEQGJiECBAzAkKIpBYNIcikAp8kcZhDn4EBChmUoMgqHIqhiWoIgaDImgyVQImaRw/F0EZGCcSw3DaM4Kn6GBBhwYYZDGZo3C+RgOAmNQnhYeYqgsTZen";
		var_s2 = var_s2 + "EVgSFYLo2CydhGg4OROF2HJjlydR7i+cJjDGFo8BgHgVl4Po+DufJRgcbQOlkCxyKuCJNAsdwIhSC4mgieYKkeHJWD0Ih8BQaYYkkMYppwTg0EsFhJC0SxEkgeodDSFp";
		var_s2 = var_s2 + "TheV5SDgLBIieRIigyVo5CeOpymoWhtEQfRACMR4zE2KxRnsV5dF2ehFCeC50G+GBkBiZgaCUGYnBySY+BsdIuEkJJJDSSRsjGeYqEWOhliYVYOHWDYbFuNhFmcS5siq";
		var_s2 = var_s2 + "bZrnGLYOh0DpPhyXo7D8d4ZHGXR1CcdRAnsMh7GELwIHiSx7CiXY0HYNZ1nOcoPg0SB+CWLwwGqUpbFAQJwEeEImlCVQwk4cJxAiFRIhMS4ulGYRRlmMQVDEHZxG8YxX";
		var_s2 = var_s2 + "hIaQSniLhIiaGwnDiJZGicZYnjeZw8D6OoSkWEIthwI4emudwtGwepNhuLQ3F8Zojm4bQrhALo0D0HZwCcJwoimeI0ASWR6CAJkJQORfAiFcLIXgahaiGCgMsKIpw8DP";
		var_s2 = var_s2 + "H8H4Pj2BhjrBMGQGYfxFjuEGIsB4rxbg+DSFsPAxBtChHoAQaYmRojVG0D0e6JALjVD2K0F4qxfjjGyPIRY/QXi1AOAILwFQGgOF8KYDwOgdBsHmCYcobRtjIHoGgZAm";
		var_s2 = var_s2 + "Bgi7HgPcWoHxTAmCQCcVwTgDB+FYJgfQMAOj0F2PoZgkRMjeKQLkWATwdDzEkPMF4FxzAXDGJYfAlgPAuB+FkeIWxuizC0LkUwvQbD9ByHIDouxvBCBgCMCAvh4CXCME";
		var_s2 = var_s2 + "gSA0BJDEH+AsfwMgfjhDeL0Ro/xkgvH4JMXA7RYjyAONgPAWhfjyCuBEcAFRSAWE4BIOwEAUgTCaIYfA4wSBUAcAsDowQOBFA4J0Hg9h2B4EmCQTYVBdB0FwIwU4rByj";
		var_s2 = var_s2 + "JGmHIRQ8gJAKB4IoZgShaDKAQOUIolQkjVBuGoSw6hugaFaJoeoWgajaDKDoO4dB5j0FcJ0Zw1Ang3CQDEdgNQnA6EmHgGw4QuCiCSAKFIXBgilEwGcLAZAtDmC0N0Wg";
		var_s2 = var_s2 + "LhaApFiK0HgfxniuGKP4GIvhrhhGgHEZgaRtB5GSBUcIhg5BnHkOAeQFB5A6DiEEao2xoDHH0KIQ4bxYBfFEP8RogB5BfA8AQHwvwqAZBIBURgCgwgPAqAkKYCgfgTHC";
		var_s2 = var_s2 + "BwDIegcgjFUDQXQPQzA4DsCkDwnRABNAwE8OgTw5C6AkJEPgPRSg+DqCANoMRBjuHUKEJglQWDrHYOATg3BuDGDWEMa4CQbj3HMB0Z4Pw5jLFuCAWYsB/D2DgBEUQmB1";
		var_s2 = var_s2 + "iuDEMkfI0hUCyEkPIfwihKgqGsGobIGhNhfFGGoZY6gDDuGWDceANA1A2DyDUM4txaA/EwG0bo0wTDXEcH8Sg/BcD2GSHQC4pgtiuGOOkNIRg3hbG+MIGYjhzgaBeHwL";
		var_s2 = var_s2 + "4FgHAMAYFIfgJh4nJBQGkfAwRNiFAiO4KIlhoiKFiOoO4EwPiYGONUE4RATg6BOMcUwEApgZGmP4X4lxnjYGaLIZg7RNirH6FQG47xZCAC6OQLK5B1BYF8LgOQZAqh0F";
		var_s2 = var_s2 + "qGcBo/xMhpE6HsXomQwBKCwIcfA6w/DxA+IURAIxwgmBSCMKoJgOhFD0JMeIkQdhREwFAEQKRFioAYKkJIqQlhpBYFEPYUQui0GCGgFI9BlCOAUDoS4nRhA7HOOkFYdg";
		var_s2 = var_s2 + "uhgEgGYUgZB2DeE6IIYIMQEgyAiPYHgYgnBlFiNsPYghKiODqISfddhPgVEOCQE4hg5iWHWPEfwfB3BgFYPkAIWQPAOC8BIb1MwrD+QsNEQ43ACAMAKGUQgsBhBoHCGU";
		var_s2 = var_s2 + "SNrxBBoEqNgGo8QMAJF+MMOwRxGCOFUBwHYdhODvDwMEBILgk21AKKkOI6RrgyD6LIDoJxNjkDUOQF4yAXgoC4FMXgqhKCiE4KACQow9D5CoJgLQiA9CwEMLUYwOxmhA";
		var_s2 = var_s2 + "FaEAdoSwdBBF0CEPQEWWDrGOBoEgGhTAaDyBsPoNgXA4CmHIWw+guCDCSJsNIjxsgADcNQPg2hxC2FKLACo2hNDFEMMcKw/BeCcE6LYXoGRvDJGCN8GIxgUjYAyOUbg6";
		var_s2 = var_s2 + "BpDrB0OYWw5AgjtGSOoEofAgjRG2NgY4+RRCfBeKUN4qQvi7H+HAYAchwCOCWAcQQZBBFiG4EIUYww3CFFuEQSgRAlBdDMIwCQiRrCMGCMcIwxhuiKDeE0PAlxCC8GFZ";
		var_s2 = var_s2 + "QS4YhIgaEkJYS43hLAxE8EkTodQUBbBWMcHoNxy0lHqOETYyAeDeD4I0AQlRhD0G2E0O4PgKCjHeEoSgmBKCGEsBUS4vxUA8C6M0K4ox7irD+O0VouhfD7FUA33I+gmi";
		var_s2 = var_s2 + "XE0IsLY1gtipG0CQbQLQPjFDuDQHw2RtjFGsK0bw4x9j0CcO8N4/RtBnhSgvAcBehmAOh0ANgiAhAnhih8gwh1gbhugRhSBRhDhjh2Bvgyhfh3gPhThOBIBOA6B9gsAY";
		var_s2 = var_s2 + "Aah+BdhlBWBtAuBoBThtB8gnhFheAlhcByh6BKhvAahNBnh5B1gJB1g+hCAsgAAbB1gOguAJhIAoAmhFBvqzACABh0BlgFggA6CaBvBQA7BDEHAaA0AABoAcgGBEACg5";
		var_s2 = var_s2 + "AAgYgZgLAIBKgFBBhWh9AggCAIBoBNgAANA9AJhwABBxBwAKAYAAALCJu9ADAYAFBLExBEAiBEgmBEgxBEANBENbhmgJh5gJBNgJgzgJBfgRAvAhpKhnAQg5AIpkARAS";
		var_s2 = var_s2 + "A/ASKGAPBJhZBIAdBJAbARh7n4BIhshkAnAZDVgkBZAUg5AWh5AVB5AEgFAbBFA4BFACglA5hlAfAVAChVAtBVAig1AQh1ABBNB+gaAcgUA7AqAbAWgTg2gfB2gSB9AI";
		var_s2 = var_s2 + "BdA1BDh2BHAnBdAZg6Apgdh+h0g7lCBoAXh3BJBugahkBwBihkBkAsBYgtg/h7gNATBNgkhIgUhBg0gzI6BZgJRJglhvAvARgrAtBrALBbBFh2BxB2BZh9hFAcgOAcAd";
		var_s2 = var_s2 + "AcgCgcBzhcAVB7h9g5BlgxhohsArgDh5A8heA8BKh8hMB8gzB8APgPBmAdByAShQAVgUAWMMAaAThuATgpAWhNASgLARB3ASAwg+AsEwhiAoimBTBxhUAJhEAJhVhJBP";
		var_s2 = var_s2 + "hSBTBSBjgyhvBPlWAbgUgfhRhYBUAkAoBTAoBQgrgygfyhgTBShXBSgwhUh0hWgKhTguhQBphRAdhWAjhoBvg1gQA0g0A1AKACAehLgegzgrgmhcAmBahmB+A4AihzAh";
		var_s2 = var_s2 + "hLA6ArAFBrAfAbAyhbAPh2hYB7BzB8AOBDgwhTg+hnALAXB8hXBph3AxAPA/BPA2gLg7A8hxg+AlAXANB9ARB+A6B+h5gBgEBAg9BLhFBBAUghAWAhANhhhsgRgBARBv";
		var_s2 = var_s2 + "gjAUgiALhjBpBig8hjhHgSA1ASBqgvA4gkhzAmgkglhRgnB7hlh8BKA0hNgxhMBtg7guh5gjAzhPAtB/BJgBBmhhBvAdhDAighg7g2glAzBlg+AVhUAVAphVAHhqURAG";
		var_s2 = var_s2 + "hvh7g0AgAahvA2FigMg2BhhaBrg6AMAegTA6AVi5B6BlgehNgMgoA9gigMAZA/hBgMgGg+hfgbAvAegSgbApgegXhZhqBagzBYgogfgwB/Cwg7hgh/hDA/gTg5B+gNh/";
		var_s2 = var_s2 + "gXh6B8hbh8B/hEhfASg2h/BHh6BfhZBbhuAjB/g9h7BbBth0h/gbh2Ayh/hAh+h/gnh/Ajh3AwgnA/gigPBzBPBVBegigfA1h8BPhshr1HgNhvAxB/hoBdgGgBhZh3sU";
		var_s2 = var_s2 + "hMh0gmh1hLg9hIgchQB7BthugQh5hbgugth6BTgLi/ALBkocoPgCA/BQBfhmh+hXhzA/hzh+g7B1hbgch/heh4gvhEg3hsBfBOgbA2B9ArhrANhPTSKXAMg7A+Bhh4Af";
		var_s2 = var_s2 + "gZh/AVhdg/hzB7BTBsgfh5B+gdhZh/g7oQBogSh/BMrPhUhYBshvheBfA9AThph7ANhvhNgog/hZBNg/hdhvgIAxhjB2hHBhhOBtg1gPBCg3hZBDAmhDg0gfhNhAg8xM";
		var_s2 = var_s2 + "hgBiBvkig7BGgKBHBDBfBJhDBWhPg6BPxKAvBOBUhPB5hMhLhAh0mXBXAFhhB/A3hXBIhwB9AAgUBKg4AHA8AMgdgDhuB8hGghhcACgUAAgOA4AAA8AQABh2BQAegHA2";
		var_s2 = var_s2 + "BOB9BYhxhrBAA/hfg7hah4BCBrAxgABkAdAcK4BtgsAshdhZCSAVglgFgbASgeB3AQAPhNhIFJ2TBnhahchDBBh9gQBogABSAlhhBUgbBLANBvA+hbh+gAgWBzB5BXBW";
		var_s2 = var_s2 + "hFh/knAAADgLAkgiAggqAsAEhigrA1g2AKAqgKBfAZgdh9g2BbhugjhUgCgtgBALAtAYy+AWhEgmgAhFgSAaT4gAASgaATAahIgxACB9ghhGgfgmBoAEB4gIg/ANBagx";
		var_s2 = var_s2 + "AkhGBRA0gs3yBaBjTNAFBCBFBghCACAJAlhFh+AAAEgCAQgQg+h2g7Bbhdgdgdhdhxh7gGvUhbBHhah/B5ATAzh3BOtAWchuh3hOA9h3XvAfgbh0hfh8Brg6hegDB9Bt";
		var_s2 = var_s2 + "nWDQByA4gkAGJIAZAEgcgFh8gvBJBSAdh0BLhqBLACAABHBtgwB2x8yngsg+gAByA2gAB8hxhvh6Byg+AFBp4nBShMgmBzANgAB8ACBZADARBLPVhQh7uKBOg/B7hqBU";
		var_s2 = var_s2 + "gphbA+AfALAygQYohXBZi2AThYhcAeBPhAuwhdgIBEgiB7B9YzhDA0AvAthIBAg8AeBfApAohKA/B2BRA+BYm/gGBCguAG5JhAhjZLAgAvgvhPg1gYgehmAbgLZQhDAj";
		var_s2 = var_s2 + "AjgjgOh5heAxzgABhx5Wgig0AfgQA/B13iBgBchVgrhXgVXFhbh9gKBdgugUAbXDgygsg+A/B+B8AqA6g6hahbBsANBmA/hCgmhegeSVgeADBwB+BKg+BnA0hwBxBihF";
		var_s2 = var_s2 + "h7BxBxAxAIgGACAiAYAMAKA/BPgnguAMgPBbBngak8B+hsgqAVBag2hnBOAoBWAJhYgsA2AchvAHhIEMAmgmAmAkAjhHgPB6hUBkhSAqApgpjehsBcgZhAhuAYBOBdAu";
		var_s2 = var_s2 + "AXAwgpgPBMBwAOB5AjB+AeAYBwANACghgnBTgph3h0B0BMB4h91BgMAJhxAmgSByhshbajBaWPgTgCAYA4ACWGg3g/AyBfgzhnhPBxA1hrhXBshehChChRBQBQAgAeAF";
		var_s2 = var_s2 + "BNAtg7h3hHB7h7B7A9BOgHBDgggfhrBEBHA+h9gRB+68hPAfg3huAoAzbAAiAGBZA7B2htAqB7hYgxgwhVgehOVIFFBRgchLhhgAA7BfBthdB9hkhkgkg0hyBlAKhBg3";
		var_s2 = var_s2 + "ABAgAZBEg4AcBWAGYIhzgXAEgDA6gmhphwAtgRBYBmBwBwBQAThBA3gvBXn3hrBDBuBcA/BugnANgEBLhKhCgzhwYzhAAiARAohGgHgggJgMg9gMBrA4g+A6BoAUhchu";
		var_s2 = var_s2 + "g3BBgAhZAIBPBNApAFAFAFh6hZBZAZAWhMgkAkBEgyApb1BOAqBGBIBmATAShAhsgOgHBuhxh4gsBOhph2ArAfBmBLCWgigxgOhZhshtAMBrghhDgHgjgfrIB5ABBCBQ";
		var_s2 = var_s2 + "AcAgV4gPhcgIBWhVhXgnhBApA4hVBXhngFhTLMgcgOhRgtAMh+hFh2h2gohnAsgshCg+rTAGgNhcgjgvwhAsA0BOA8gV4dBN8qBJh68rgUgoB2BdA6h5hTABhMgWAxhT";
		var_s2 = var_s2 + "g9A2guguhJBDB0g4B5hzBmsvhwgwgzgog4g4gDAmAygPBUhWAqANgbg3AmBAI2AOBzhDA8hmBKgxBIAFgAAJhbCuhGgKl7BwhwAmgcAKAigDh2gZAJArABANgDBegx5W";
		var_s2 = var_s2 + "gZADgwBGBEAkBegAg2AYg9gwKABtBmhPABBoBZAPgFhHBMAPhmB/B6bdhZhdhdhth1hh8lBGgIBEAUgOhEgKgVgrA0AngaAaBiBIgyB5A3gLgXBcAEhlJjAJgEAsAJAk";
		var_s2 = var_s2 + "gqqlhththThrhrhrBVBTAWhZhDhPhThIBWARg+Bn7Sg7A3gDhZAvAphEgegGgehuhpAJAyAJBZQ9gBggAAgAgwBDg3BCAAhkgTh0hkAAhLhthWhTgqAqhJBIAhhmAEgq";
		var_s2 = var_s2 + "gqgCgbBiB6h9BD8zhxhmABrOhfAqhMg7ghwiA4BSJNhMgqg4BEhkY8AjBphNATBaA6AtAwBYgEACBBiEBABIAggbg7gmh1AlglAlgahXBmhmB1BgBPBEAmAnwZgogyhV";
		var_s2 = var_s2 + "gmgABcgxsNBUAWAAB2B4AHBvA5h3B3ggAQBIAwg+hPhSgqBQCEA/gQBQA2htKUgfAJhFgkhkAYBtAIAMHpgbAasHg0gVAsBhhIgbBVAxAi/MgFBnAZBDBpB2ABgwADBW";
		var_s2 = var_s2 + "h3gchuBwBxhrhkB1BbhWAFAP5mBCghgTgnA8AgBV+OgqhSg2g1g3AnBOAcg+hNAYgbhHBRg8g6BjhjhjA2ADgdAdhTg/Aeg/hvA6h1h7A2gChLhKfjAdAxhahigYgMAG";
		var_s2 = var_s2 + "Ashzg5AAaYh/AGAjh2AChABwBOgwXnBFh/ApAzgT2GBZBGvTBHAjBGhAF0wAgsDi1w4Nza2UkyBUYiA+maxm6g1K32ad3s2Qg8AKlRaBlKD1wKE+rCCjSObAK8iGsFOr";
		var_s2 = var_s2 + "C0vR0lTeDV8IUatHu6GO2jkAHgAwgfgC5TYrVsKk2Y3MBRcpBQkgmOUuznY2FqKy0WSymXeX0ASwel0olHI5AwJ1mx0gL1mTXU6XS8Vpdj4hyg8BemDYZHqMFOUyYZTW";
		var_s2 = var_s2 + "P1WJ1CN1MTR6gH4cmysjKr2mlCqn3GuR+jDoJHGWlKkU+ajXpgg1yq2FQDFigSEBROwkCKnQwGwjliIU45x2HGyIB4dnM0UmUC+PhaLxefwOdia5zMT3+8wwYCQmEwdi";
		var_s2 = var_s2 + "4vQKqHKvigKHoKnc9Rs7GMDUOhhGOnAYjWkzKKRGyxsDUA01QCw0QCOF0uh0OkfRUMMbyRNwTBiCYZwKMIYyZAUkSlBYkxsCYAAHG4qwCBwMQfBYlxsNgsDhLEgwHA8P";
		var_s2 = var_s2 + "iPNg1ygP4uywIgMSwK4zSQG46BnFAATDJcL3IHM6DQBsPR3O83j/AsJyGH8w4ZJY5TsN8EAdFojTwJ0AAoA4MgATIMDqAcrQPMEwTDBgVy0LYtiuK8qyrFs6QtCocnLC";
		var_s2 = var_s2 + "s8wAGAChOGM+CZJ0HAaoQHQYocBiaHtJT3LEfgCLYIgQNYgw4IQiSaBcAABBEAB/DAXS4HgPAgLUSCzGkPjkIATyXPQoCeNYfR6Do7QGI8Zj+CAHiyCY2SkIQTSSCIyD";
		var_s2 = var_s2 + "QCkpDBJQJinMMuAUPgOxGOcpA/AkoTzJwyiYFMiDwJEsShFAURFCwJRVFceQXKQIS8P8STlBgLggAcrAQCQATjIgZA0JgVSxL0OAmKI6CpEc4SuOkeBeOwMRnLQuQhOA";
		var_s2 = var_s2 + "pDJAImYmD44BPIgAzFMYiR3LcQw4JwqhQAknAMFAxwEEwJwUO4ljCHgmxzNwNQ3EU3ScLYEAACocDePwZgCLI+yFN8jg7FEQTtKMcwrAAOhgHw6SQI4OCmJgjDmNAjj5";
		var_s2 = var_s2 + "Gw+wbHkkTpEw7gpFgIAA2sABJEUThEK4QhgIJAQ==`)";
		com_Items.CellPicture(h,COMVariant::createFromInt(0),COM::createFromVariant(exgantt1.ExecuteTemplate(var_s2)));
		com_Items.CellCaption(h,COMVariant::createFromInt(1),com_Items.CellCaption(h,COMVariant::createFromInt(0)));
		com_Items.CellCaptionFormat(h,COMVariant::createFromInt(1),1/*exHTML*/);
		com_Items.CellHAlignment(h,COMVariant::createFromInt(1),2/*RightAlignment*/);
		com_Items.CellImage(h,COMVariant::createFromInt(1),com_Items.CellImage(h,COMVariant::createFromInt(0)));
		com_Items.CellImages(h,COMVariant::createFromInt(1),"2,1");
		com_Items.CellPicture(h,COMVariant::createFromInt(1),COM::createFromVariant(com_Items.CellPicture(h,COMVariant::createFromInt(0))));
	exgantt1.EndUpdate();
}
988
ImageSize property on 32 (specifies the size of control' icons/images/check-boxes/radio-buttons)

// AddColumn event - Fired after a new column has been added.
void onEvent_AddColumn(COM   _Column)
{
	// Column.Def(48) = 2
	// Column.Def(49) = 2
	;
}

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("1/2/2022",213)),COMVariant::createFromDate(str2Date("1/8/2022",213)),,"<img>1</img>");
}

public void init()
{
	COM com_Appearance,com_Bar,com_Chart,com_Column,com_Column1,com_Column2,com_Column3,com_Column4,com_Items;
	anytype var_Appearance,var_Bar,var_Chart,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Items;
	int h,hR;
	str var_s,var_s1,var_s2,var_s3,var_s4;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ImageSize(32);
	exgantt1.DefaultItemHeight(36);
	exgantt1.HeaderHeight(exgantt1.DefaultItemHeight());
	exgantt1.SortBarHeight(exgantt1.DefaultItemHeight());
	exgantt1.Font().Size(16);
	exgantt1.FilterBarFont().Size(exgantt1.Font().Size());
	exgantt1.ToolTipFont().Size(exgantt1.Font().Size());
	exgantt1.Indent(26);
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("1/1/2022",213)));
		var_Bar = COM::createFromObject(com_Chart.Bars()).Item("Task"); com_Bar = var_Bar;
		com_Bar.Height(22);
	var_s = "gBJJgBAIDAAEg4AEEKAD/hz/EMNh8TIRNGwAjEZAEXjAojKAjMLjABhkaABAk0plUrlktl0vmExmUzmk1m03nE5nU7nk9miAoE+oVDolFo1HpFJpU5h8Sf9OqFNqUOqN";
	var_s = var_s + "UqdPq9VrFWrlbr1QpdhAFAkFis1ntFptVrtkrpszrNvmVxqk3uVtm1kmF3sdBvF/wGBmV+j9BYGHwWJulfxdax2NyFdx2JlV6l9Nw7AAGZymdz2Cy2GxErvWcz9ivlwy";
	var_s = var_s + "V21cuxugwktzGIzmvwtl0+53U5y0a0Wazmmyu/3dCyOMyXHx/J5nIr9q3uyqnBxFN3G46ma4vb7mD2Ng4nZze00fDkHC7t7us2rOX5tguetpHRlmz4HVqnXk1PjHO+CM";
	var_s = var_s + "Po9MBMC+j2vC8j7wS8cFNI4kBo05UIvfCT/NsnsApU+0Fqg/T+oy/kPxC0sEQfErKQK96+w28UWRI8UGvO8sTLS9r2PWmsMJTDTask3CsIbIEQRA3shOXEEAO/GclJ9F";
	var_s = var_s + "EKrrA8FRbKMXRIlb0JxCkjS1LMswhCcvuel0cv26cSMa8Ufx+2sQwhEUoSXOCjSbLcnxjKc7sdKUVyq28NtVI71P9P7JxtQEapjQ6fzfM8zPfNE2PhIsLL63E40slk5y";
	var_s = var_s + "7N89LcyU9SvMb3SdUc6VJLj5VLVLfO/PS9KzNFHUa/0XyBD0dxlS9cxhMlTRSoNXypPErWDPyfNS+MwprRNO0FD8wVVZ1AI08URwVRjtJ1WCn21QkkUrXVLVPQS/XIkF";
	var_s = var_s + "gTxT9iONZ9xVTdq+L1eKg3kkF6Upe68XtfV51/MtrVjBlwYFL1ev8y1/P6/lyzzYl02wntj0RVFmS1Qa+M5as93QxEUW9e993rfmQ2+vy65M/mL1lhl/2bj2ByVduMtN";
	var_s = var_s + "hCJT9hdz41nN14Ld12Z9UjfI/oUAaGseiw6+uFLLhcVabJOS5RqOE0BHlZ5VnEr5fOMs3st+aa/bbRzrJGV51Y0b0DbqaWXZD90hIsPbjWu52+6Wyadpe66hhO+P/Xio";
	var_s = var_s + "W5rD8ZbrUZuVg6n1dsE/cXmewu1m9PVwnd35/nueXho/NaJzmjc61W76esuT77eG8pTquy9TwWH8LEzG8RDfFalx3Gcfvna9rvG/cptGLd9tuI6TZOP5Fiqi99vea+X4";
	var_s = var_s + "VRcBq/JZZtVQ9cwSs5lsXE372+a9z7PbfB3VVqHyvMctLto8uob6eV0m/cD6MN2v+T33t6sBut42vdv2bJ8a997x2maFJfK+qArbGJPEKE+1qTflMsIdW/GCJX17KcT6";
	var_s = var_s + "/czr/X+u1g29B7j/4BQfWkkx4zIHisjhPCmE0K4SwtXM+d4BvHRwNZOoBph9IJvPek9d40FoMJxf691jj2ywQQcHEWET4XJwkTszlVqm2GokewxtBT1DpQjRxDN0rUVD";
	var_s = var_s + "NKdC3lb6tzNOwh6upMSSYfv4YBCl/bsn9PxiFCEo7SI6Obc9HeOrnY8x4jtHtdpN4GRbaorhsbu18Pph5CiHymI0RpSXGJ/z2oUOxYxG858AyiI+bfJtuTcG5yelBJyT";
	var_s = var_s + "8okhqFd4a5yxL0rvulYtKCsZiWxWkc1s1cRoxxwhA31DLE0mR9l9HqX8fJgTDmFMVH0MIsRzVYnwnMi1dyzmhLt2kS2pxIiU62Wj5ptQGlSYFakLonTUJNLKaM5Wzlff";
	var_s = var_s + "EkuFkk5wTrhVO2eE7G6lJhxFFYUZ55zmn0WuBCD4pzhirFCKkbomsOoIYmZx5p90LoYWGPdD5g0QmJRKYxbZ6zYoVQ2jVGylSak7KSkFH6RSjpHKFuU+YMyNo5SulkC6";
	var_s = var_s + "I0vonTCitMXPoEpVS2H5FQfEqp2R1opIgAEkJISYARTCukOhmPNI5Ex/wzGHUsicMwA1LHgQ90Y/KpoQHAD+pB/R4NzIaMAB9Xaw1gqaAOsh/A/ptIkWUfhGK1kZH8Rg";
	var_s = var_s + "H5GqvgArqRmt4AAPrTroRofBGADkqr6Rmu4D7CEaHARiwpJrEEZsXXwlVjyMWRsaRqwdkLGNBABZmytmyMnaINZqyVpLR2ftKAAAdd6h2osbaskdiq4EZtgSmyNcbVWR";
	var_s = var_s + "JNXe3AA7REar3b0stlAAXBtoRmvJGLjEYAHUWsFcwCD/rnaop9aEICMAPdK5hT6xpeuzdOtAgKuJeGfdq6ggEbkTvAP+p9UCHXrvKkcgIA==";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s1 = "gBFLBCJwBAEHhEJAAEhABfICg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj6";
		var_s1 = var_s1 + "CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7EM";
		var_s1 = var_s1 + "RwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsOatVqjG5sYjcGC3La9cz3Pq/bpuDCbMxuaK1TrYXr1TTrcofBDldAxXRKDxR";
		var_s1 = var_s1 + "DWVhLnYOw9i6XxzjuXprCaOoKB6EwbiCZZCGOdZYlcT4xHmbhMnwNxtn+G5bmqdZ7n4Pw/i+X5zm+dQ9g4CAFjsfAJheOI8HsDoWDWTB/lwSAQkmA5PEgRYoDyDwYFYF";
		var_s1 = var_s1 + "oFmGCBmBqBphDgRJ0gOTIYBGRB/lyRh0iSCZbjYWJzgWDwIjYLoLmMCJGDKDJjBgWgqG6YhyhGHRzA2aJ1mCABOAiOJvhCZBJBYRoRmSCQmEqEQimkAZgg8TZnDCV4Uk";
		var_s1 = var_s1 + "mCUmBKZYJGYWoWCUUhiFMNZckNUh2GENoaGaGZmgmJhqhqZpGGIEx2GYIxSGGGJdggWJth2Z4JmYeoemeSZ2H6H4hGmQhihyTRHGYLg7CiCgmgqIpokoNoOiOaJ4jqAo";
		var_s1 = var_s1 + "chqaZGgaCxpAoZoaiaaJqEmWIcGgShcnCJwqEqFoR3YOoFlgchflqNouiuawHmWSYqGkWZQhcatzmaOoumuSp2j6L5bBaKo0GQKRnGGCxqiyCwmkqMpsksNpOGUGI7A0";
		var_s1 = var_s1 + "ew1G0Rxlg0PptgsZuDG2Sx2l6N5tnYNZZjUDRXDCVo5l2FoymqOpukuNpujubwLjmWY5k0ZwxkaFxYlWdp6j6b5Lnafo/nABQdg2FxcUsY5BkmXAkmeQpckwNRrkKTh8";
		var_s1 = var_s1 + "CSHZBk4NwyC4KxxgMDwakOMZDn8GgwnGAo2C4cwthMcwmCcMoHBMHRehwTIghySYNksZwcH4HBMEsHx5hyPItiweYxnwSZEH4Mozn0fR+DMAo7EYJ50gkdZelKdNql2U";
		var_s1 = var_s1 + "gJn0GIukwH4HicQRai2GI4mSVpNl0dZGledgNgcYpYDWUx3FsOQi5YV5anaTY3G6W53A2RxylydxFjiaxEFCCgBBAQ==";
		com_Appearance.Add(1,COMVariant::createFromStr(var_s1));
		var_s2 = "gBFLBCJwBAEHhEJAAEhABcoFg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj6";
		var_s2 = var_s2 + "CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7EM";
		var_s2 = var_s2 + "RwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsLpOS5LNKsaxmWLYdhFdTxQi6LpvfA8BwXC6JY7heRYRbFbYxRjGNi1TS7G4n";
		var_s2 = var_s2 + "GKd5WGuL4UHwI4VkaYxii8V4pgQMgVBQdQ5iCTYGi8T4vlWbJ3nuPg+l+H5AlSCg6ByPBoE8Ap3jqYxhBido5g0OgOGOGI4CsSpCCAcgcAuEokiEN5NCKfJ9DyTRjnSc";
		var_s2 = var_s2 + "g1CEYxOBmBpPCgagdgcIZoHoGIFA4AxQkCAxKAgKBwgGSpIBCZhjF2E5UnQPQMiMCJBCIBwxkSQgsgo+JtDKT4ziiQw+k6EwAnsOgLnkHI+yCQ4iEuE4klkPhShEJBpA";
		var_s2 = var_s2 + "oPgymOMoaDgHBjFMBgyD0HYTiCZSZhIIIGC4ChiHSew5kwM5omILZPiOBI0hwZw5kodIdA+M4Uj4PxOmMSJ9DuTQzmyZgviceZagaHVfj4awwmaAh2GUIYmCOEZZDaDR";
		var_s2 = var_s2 + "DFGdwcg4EwyHMN4LBOaJbCoaZqgKH8qkMfIyD8DozDyfA7A0Coui0OpMmOZJdCsahKg6NooioChwmEMxLEoXJbDUTRXGSUgykyMgQG0GpPHMdI3D4TRCgSeQ0kmaw+lG";
		var_s2 = var_s2 + "NAtCOZJVCiT5DhyRQwAqMg0EoDBBGEGAsASC5yiSCw+k4Mp6lWNQuksTpRjMTxDGzJwGmGMpDDKXYTECSAxl6Q5olkK4PgMMIVkASRMBMBgzEkaZEjsNALhIZA6AeQBg";
		var_s2 = var_s2 + "k0ZJEgAAJ0CIAgODMNIsD6DRih9uYwFyAwfCUb5ijmbI+gwdxkk8MZMGeMpPCkDxzBiC5MHMPJLDSSROFMLIoBEQogEMFJPnENYQGgE4DCOaJfC7tYkhGTQ0kyWwykuX";
		var_s2 = var_s2 + "pMiyRpKjKR4wngM4JmOWJACCdYtHMWw+Eych4nINYLAEYA8AgdAEEsQZajaQoog4GxPiMVIolcdxNG8XZVkmNoRwWRVBlFeFEeAZQJgnFiHgHwcAhjhHgGMSI5xki2Cy";
		var_s2 = var_s2 + "A4EQsA3i0HkBsLwKRFgAHcPkHopBJBcBeDUYI7xyDOHqKkWo2hLCsDIBIY4qQ5A8DoMMYwOAqCSBGKgU4yB2iDBwIgB4hxQgAAWNgBoAgsBdEcBUQ4sQ9A/HqD0JI8Rp";
		var_s2 = var_s2 + "BzH2OYVgahLBHFiJQJweQiDhDUE4SAARQAzFsG0EQwA6AOWSBkFgVAIBCHeGERQFQiCQHeFkC4vkiB8DyB4F4QxVDvGMNEOQexMjlBeOAKQiQLgfDA7QEAaRiBdEkH8T";
		var_s2 = var_s2 + "I7AZiFBAGYBIABWjYBiGACioQ4C1A+AMMgWhfgxHgPsT4URIB0COKgPgjRwiAB8AYUArxBgCF6J4GY5hrAOCAPAAoGRRCsCIMEXATXfgAF8BMJwURuEQDgD4Q4OBoAeH";
		var_s2 = var_s2 + "GFgLIwQrC2D0JoSQ+QvhrHoSgQI8AbDFGID8C4Ah6BQAQAASACwgCYCMAUMARAvCKAiAMCAokeCKBEOAKgCBoDaHuMsEAqwJDiACDURg8R6gPCyDofYWAhgoDIJ4ZAuh";
		var_s2 = var_s2 + "oiGAYGgRoQw/A0GMMga4GwxiEDeIYYInATCDBQAoBAwAoDlA0KMBoVRGiDGwDQUYIRsgaGGDgM4LAwDWB8EcIA1APhjEgGQVwgRIgjFIIQHokgZA+CSEkLIKQSjHAwMs";
		var_s2 = var_s2 + "CwDAsAEB2ABTIwRwD6A8CMToSxkAxE4HYIw+BsgbBEDAHYBwojCBoIYFgXSjABE4MsHIbQWhlGILQS4UhvBdAUKEEwHgxDAAABQQQUAhgKHiDwE4JS4A7BGLQZwCR4ga";
		var_s2 = var_s2 + "BEMUYAqgKApHgGwVAIRNgvBMMQXImwZDtE4I8UIyAZCDCAE8AwrhgAdEEBACQLRCg4FEB4AYtA7CdEiPQMoJAMDNCkOMCAXAFDhH0D0Q4EgfAaGSK4NYzRUj9BuCgAgs";
		var_s2 = var_s2 + "wOBjB4Fqpw8B2ADAwE4A4Qx2DAE6JIaQPQGhAGKBcIQ5B5gHByKIFARwADbAyKUfgdBKBBGyEcVIAB/ijHoIoSA0gdBNl+OATYERZgBGSDYWIWAUCEGKA4FAhR7CIBtY";
		var_s2 = var_s2 + "QGYZg4CMAiKEcAOwkBjHWE8Z4lQgA+DkBoTohwwCeAaMEEgBQCCABgHMRwQRhhMEWFQd4HwZgwDqFESItAbAGEANCpINAzANCCJkK4ah+heFYBURwsQrS2CsMYMoWGBh";
		var_s2 = var_s2 + "YDWI0EInQgiApXaOVI1QFDsC8MUNoMBMA1HMJga4eh+BeAWOgNNowGjYzCGAAwax+iJBeBVT4gxoBIAGFsJFBxgBiGKFkKQ7g5DFFQEcAo4AzDDACKEQQLgCiJDYB0Mg";
		var_s2 = var_s2 + "RBCCQAgQEA==";
		com_Appearance.Add(2,COMVariant::createFromStr(var_s2));
		var_s3 = "gBFLBCJwBAEHhEJAAEhABQ4Fg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj6";
		var_s3 = var_s3 + "CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7EM";
		var_s3 = var_s3 + "RwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsLpOS5LNKsaxmWLYdhFdTxQi6LpvfA8BwXC6JY7heRYRbFbYxRjGNi1TS7G4n";
		var_s3 = var_s3 + "GKd5WGuL4UHwI4VkaYxii8V4pgQMgVBQdQ5iCTYGi8T4vlWbJ3nuPg+l+H5AlSCg6ByPBoE8Ap3jqYxhBido5g0OgOGOGI4CsSpCCAcgcAuEosiYN5NHMOJ+D4TpTnSe";
		var_s3 = var_s3 + "Q7CEY4uBmBpPhgagdgcIZoHibIEyUBJZDQIJShoCgcCAcoyAQOYYlcZJ1D0DxDCiQgwEiAZMHEMJLFKPJ9D2DoDnidQ4k+Y5QmKEROBkIhKD0JIZDIS4TGUCQuEeEJjn";
		var_s3 = var_s3 + "OIg8CuY4RkYNgwGMM5RllGpThDRYIGKZIpCkJFUH0PINyWcQ3CaaZCG+HBnEOTJhD8Tx4GoeQ/GcaZSHOH5nCmQhshoZhihYYwhiYA4RlkNoNEMUZ3ByDjwEsPxOnMaJ";
		var_s3 = var_s3 + "9DuDR6F6GYmCmKh0nANtMioP4Gg8aoSiIO5NhodociqaY6GaFYkEyOg8lsNRNTaUgykyMgQG0GpPiONJbD8DpDEyfA6k0KwOkWMQsGsAJU0SagwkoJQJDIPISCQCJTGS";
		var_s3 = var_s3 + "UwyGaM4KkmMgtksHpFjAZ4TGCBAbgaSpcksdhNAMIJHHsD5TjSWWMAMOpwjyLwbk6cAz0KRJiDkDYzESCwiggcgcgYIQwCIEINCMCITj6TVxkMXp2j0cQLlCTo7E2F4y";
		var_s3 = var_s3 + "mkMZdhMPJHDGHpLAyVg+k4UwrCCSIyByDJ8DuDY8CiWY0kiXAXC6QJwFKGIjCeJpjgyezjlyDw6klHx5myRoMGwZwbkcToTEiew4kwbQfEmUgPkOKJUD4DpTHSHQmgkX";
		var_s3 = var_s3 + "I/ASTA1g0XIEDMTBimyfI7jSLYHEiUoPk0Fw/kadAsHGao8A0A5smEMJ2mNyg5gzJZwDgCpChyIZVyIZwFCMJEPASRkBqE+IcHInRcDxA2H4bIsx0AtDsIBpwZwYicD6";
		var_s3 = var_s3 + "BscwDwUBgHCIYaIfgtiVH2O4WgUwJjEFeAEQA7y4hMCiBMS4aRdB9A4CYE4LxljyBMHcDItBxinDCLcTYmgejBFQ9UTg9gFBOEmAQTI7A4iZGMGkQAWQ7jYA2HIL8BRA";
		var_s3 = var_s3 + "jDG4HcCwARbjZHiNoDw1nLDnGyNINQ+wjCpBMEgcovQUgICQJEcgWRuBvAyJ4d4ugpCUAINcHogxIgnDiM4N4axzD3F2JMTY/hRqYF6FsWIxhYAGGoAALQYgYirBwBEB";
		var_s3 = var_s3 + "wpAjBEAAIEIYsA2gOHCMAGgXAACIDmMITAUgFABH0D0I4WwvhNFGMAOIvxRD2GKNcMA8gjAPDCPwBogRPAxA8PgRwZRICYDED8RAXQEghEAN8DIgwIBdB4JYWwMgtiQH";
		var_s3 = var_s3 + "oFQKAiRFguFKGwGQhglDsEOVwEQQRkCKBwOIHgSREDRBYHEXQcQdD7GIGARQHRxipBrMobgewDCUCADsEYWAzgMHKHQDQxxsDzA6EMfAeQHB4GQDkUYPA0iECiKoGgRh";
		var_s3 = var_s3 + "cDdA2GMQA8AOCjDSPgHI4QnApAKBICwHg1A+BcAwcYsgbjGGQNkCIgRsA6EcBEWANADjsB0B8YYzQQDIGSBcEYZBCCPEkFIHQSgkgZAwG4IwBAbAYGGAgL4Ch4g8BOCQ";
		var_s3 = var_s3 + "AA2KKC0GcAke4AAXAFCoHkDw4xbBFEcJkE4JRSiEFeJYKQVRMgJHODwX4xAgC/AsIIZAeAHDRG0HYI40RKCLEGDUI4jAghwBWIceA+whCpHMFYZYOQxglDMHMBQGxYjV";
		var_s3 = var_s3 + "HiAoBIPgfgHGwPsHYJRSB6A0IERQLhCjJHMA4OQoAoCOACLYGYSx8DpBQIMWQdRnDRH+DsE4fB3CeAmM67kAAXBFEIDYDI7wLBtEoEIfYNwjiUGGJQYQMAjCHEAO0C4z";
		var_s3 = var_s3 + "xW29CoCgfIxR9AKA6J8BgUAIhDGMIoJ40hqgwCgKETgnBhhqCGI0AIqgZhGDANQDIlBDCRGkCoJISR0g1BSKQOgfAzBRG0DYHARh4DeDAOwANuw8ApCKKkYg/RPhjBsH";
		var_s3 = var_s3 + "0J4yg5hPGWN0GwFBHQBFaDoQIURljFAoB4GgzRVzbBECQFQRQoguHGHANwDRdCKy8CgSIGwhhoDYJYYI1giBICSAEgI=";
		com_Appearance.Add(3,COMVariant::createFromStr(var_s3));
		var_s4 = "gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHL";
		var_s4 = var_s4 + "UXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKBU";
		var_s4 = var_s4 + "rGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo3";
		var_s4 = var_s4 + "NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDsY";
		var_s4 = var_s4 + "YDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoVm";
		var_s4 = var_s4 + "WCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoVo";
		var_s4 = var_s4 + "WiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZiS";
		var_s4 = var_s4 + "e41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbhF";
		var_s4 = var_s4 + "CcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA==";
		com_Appearance.Add(4,COMVariant::createFromStr(var_s4));
	exgantt1.BackColorHeader(0x4c6c6c6);
	exgantt1.SelBackColor(0x4000000);
	exgantt1.SelForeColor(WinApi::RGB2int(0,0,1));
	exgantt1.CheckImage(0/*Unchecked*/,16777216);
	exgantt1.CheckImage(1/*Checked*/,33554432);
	exgantt1.CheckImage(2/*PartialChecked*/,50331648);
	exgantt1.Background(20/*exSelBackColorFilter*/,exgantt1.SelBackColor());
	exgantt1.Background(21/*exSelForeColorFilter*/,exgantt1.SelForeColor());
	exgantt1.Background(26/*exBackColorFilter*/,exgantt1.BackColor());
	exgantt1.Background(27/*exForeColorFilter*/,exgantt1.ForeColor());
	exgantt1.Background(32/*exCursorHoverColumn*/,-1);
	exgantt1.Background(0/*exHeaderFilterBarButton*/,0x4000000);
	exgantt1.Background(41/*exHeaderFilterBarActive*/,0x4010101);
	exgantt1.Background(1/*exFooterFilterBarButton*/,0x40000ff);
	exgantt1.HeaderAppearance(4/*Etched*/);
	exgantt1.ShowFocusRect(false);
	exgantt1.SortBarVisible(true);
	exgantt1.BackColorSortBar(exgantt1.BackColor());
	exgantt1.BackColorLevelHeader(exgantt1.BackColor());
	exgantt1.FilterBarDropDownHeight(1);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Check")); com_Column = var_Column;
		com_Column.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column.PartialCheck(true);
		com_Column.Width(128);
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(256/*exShowCheckBox*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column1 = var_Column1;
		com_Column1.FormatColumn("1 pos ``");
		com_Column1.AllowSort(false);
		com_Column1.Width(48);
		com_Column1.AllowSizing(false);
		com_Column1.Alignment(1/*CenterAlignment*/);
		com_Column1.HeaderAlignment(1/*CenterAlignment*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Image")); com_Column2 = var_Column2;
		com_Column2.DisplayFilterButton(true);
		com_Column2.FilterList(8480/*exShowExclude | exShowCheckBox | exSortItemsAsc*/);
		com_Column2.FilterType(10/*exImage*/);
		com_Column2.DisplayExpandButton(true);
		com_Column2.ExpandColumns("1,2,3");
		com_Column2.Width(128);
		com_Column2.HeaderImage(1);
	var_Column3 = COM::createFromVariant(exgantt1.Columns().Add("Images")); com_Column3 = var_Column3;
		com_Column3.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column3.Width(196);
		com_Column3.HTMLCaption("<img>1</img><img>2</img><img>3</img> Images");
	var_Column4 = COM::createFromObject(exgantt1.Columns()).Item("Pos"); com_Column4 = var_Column4;
	com_Column4.Position(3);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		hR = com_Items.AddItem("Root");
		com_Items.ItemDivider(hR,0);
		com_Items.ItemDividerLine(hR,0/*EmptyLine*/);
		h = com_Items.InsertItem(hR,,"Child A");
		com_Items.CellImage(h,COMVariant::createFromInt(2),1);
		com_Items.CellImages(h,COMVariant::createFromInt(3),"1,2,3");
		com_Items.CellCaption(h,COMVariant::createFromInt(3),"123");
		h = com_Items.InsertItem(hR,,"Child B");
		com_Items.CellState(h,COMVariant::createFromInt(0),1);
		com_Items.CellImage(h,COMVariant::createFromInt(2),3);
		com_Items.CellImages(h,COMVariant::createFromInt(3),"2,3,1");
		com_Items.CellCaption(h,COMVariant::createFromInt(3),"231");
		com_Items.SelectItem(h,true);
		h = com_Items.InsertItem(hR,,"Child C");
		com_Items.CellImage(h,COMVariant::createFromInt(2),2);
		com_Items.CellState(h,COMVariant::createFromInt(3),1);
		com_Items.CellCaption(h,COMVariant::createFromInt(3),"312");
		com_Items.CellImages(h,COMVariant::createFromInt(3),"3,1,2");
		com_Items.ExpandItem(hR,true);
	exgantt1.EndUpdate();
}
987
ImageSize property on 16 (default) (specifies the size of control' icons/images/check-boxes/radio-buttons)

// AddColumn event - Fired after a new column has been added.
void onEvent_AddColumn(COM   _Column)
{
	// Column.Def(48) = 2
	// Column.Def(49) = 2
	;
}

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("1/2/2022",213)),COMVariant::createFromDate(str2Date("1/8/2022",213)),,"<img>1</img>");
}

public void init()
{
	COM com_Appearance,com_Column,com_Column1,com_Column2,com_Column3,com_Column4,com_Items;
	anytype var_Appearance,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Items;
	int h,hR;
	str var_s,var_s1;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.Chart().FirstVisibleDate(COMVariant::createFromDate(str2Date("1/1/2022",213)));
	exgantt1.ImageSize(16);
	var_s = "gBJJgBAIDAAEg4ACEKAD/hz/EMNh8TIRNGwAjEZAEXjAojJAjMLjABAAgjUYkUnlUrlktl0vmExmUzmk1m03nE5nU7nkrQCAntBoVDolFo1HoM/ADAplLptImdMYFOqd";
	var_s = var_s + "SqlXq1QrVbrlGpVWsFNrNdnNjsk7pQAtNroFnt0sh8Yr9iulTuNxs1Eu8OiT/vsnsNVutXlk/oGGtVKxGLxWNtsZtN8iUYuNvy0Zvd+xNYwdwvl4p870GCqc8vOeuVtt";
	var_s = var_s + "mp1knyOayWVy+WzN/ze1wOElenm+12WUz/Bv2/3UyyWrzeutux2GSyGP2dQ33C1ur3GD3M4zUNzHdlWjq/E3nGzVpjWv4HA7fRy/Tv2IrN8rPW6nZ3ve7mUlfu20Z8ac";
	var_s = var_s + "vQyb+vY9jasYoDwMm+LytVBDqKG3z8O3Cb8P+mkAuY9cCQ2uL4KaxDKvkp8RNLEjqugnrwQo/UWPzFyeQw5sNLZFENrI4kOqU66pw8uzmOKvTqNqjULJvGL1JO48GtTG";
	var_s = var_s + "sbLdEL3scxLlyiw8dQeoUVxdLTtyKmUjwGlslRPJsnK1HbAKbKCrsQo8uQk/CeP44iaR/ATnTNPLvyxPU+z9P9AUDQVBowiofJXQ6Oo+kKMpIkjztE4TKn4P6JowfgPn";
	var_s = var_s + "wD5/nAjB8AOeAPo0eAA1IAFH07UhAIMpYAVIYFHqBUhwVjV1S1EtQAHxW65V0AZwAeuQAnwB5gAPYViEDVhwAHTQBkCjB4gOhwDmCyhH0sACAg==";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s1 = "gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHL";
		var_s1 = var_s1 + "UXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKBU";
		var_s1 = var_s1 + "rGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo3";
		var_s1 = var_s1 + "NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDsY";
		var_s1 = var_s1 + "YDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoVm";
		var_s1 = var_s1 + "WCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoVo";
		var_s1 = var_s1 + "WiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZiS";
		var_s1 = var_s1 + "e41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbhF";
		var_s1 = var_s1 + "CcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA==";
		com_Appearance.Add(4,COMVariant::createFromStr(var_s1));
	exgantt1.BackColorHeader(0x4c6c6c6);
	exgantt1.SelBackColor(0x4000000);
	exgantt1.SelForeColor(WinApi::RGB2int(0,0,1));
	exgantt1.Background(20/*exSelBackColorFilter*/,exgantt1.SelBackColor());
	exgantt1.Background(21/*exSelForeColorFilter*/,exgantt1.SelForeColor());
	exgantt1.Background(26/*exBackColorFilter*/,exgantt1.BackColor());
	exgantt1.Background(27/*exForeColorFilter*/,exgantt1.ForeColor());
	exgantt1.Background(32/*exCursorHoverColumn*/,-1);
	exgantt1.Background(0/*exHeaderFilterBarButton*/,0x4000000);
	exgantt1.Background(41/*exHeaderFilterBarActive*/,0x4010101);
	exgantt1.Background(1/*exFooterFilterBarButton*/,0x40000ff);
	exgantt1.HeaderAppearance(4/*Etched*/);
	exgantt1.ShowFocusRect(false);
	exgantt1.SortBarVisible(true);
	exgantt1.BackColorSortBar(exgantt1.BackColor());
	exgantt1.BackColorLevelHeader(exgantt1.BackColor());
	exgantt1.FilterBarDropDownHeight(1);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Check")); com_Column = var_Column;
		com_Column.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column.PartialCheck(true);
		com_Column.Width(128);
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(256/*exShowCheckBox*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column1 = var_Column1;
		com_Column1.FormatColumn("1 pos ``");
		com_Column1.AllowSort(false);
		com_Column1.Width(48);
		com_Column1.AllowSizing(false);
		com_Column1.Alignment(1/*CenterAlignment*/);
		com_Column1.HeaderAlignment(1/*CenterAlignment*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Image")); com_Column2 = var_Column2;
		com_Column2.DisplayFilterButton(true);
		com_Column2.FilterList(8480/*exShowExclude | exShowCheckBox | exSortItemsAsc*/);
		com_Column2.FilterType(10/*exImage*/);
		com_Column2.DisplayExpandButton(true);
		com_Column2.ExpandColumns("1,2,3");
		com_Column2.Width(128);
		com_Column2.HeaderImage(1);
	var_Column3 = COM::createFromVariant(exgantt1.Columns().Add("Images")); com_Column3 = var_Column3;
		com_Column3.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column3.Width(196);
		com_Column3.HTMLCaption("<img>1</img><img>2</img><img>3</img> Images");
	var_Column4 = COM::createFromObject(exgantt1.Columns()).Item("Pos"); com_Column4 = var_Column4;
	com_Column4.Position(3);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		hR = com_Items.AddItem("Root");
		com_Items.ItemDivider(hR,0);
		com_Items.ItemDividerLine(hR,0/*EmptyLine*/);
		h = com_Items.InsertItem(hR,,"Child A");
		com_Items.CellImage(h,COMVariant::createFromInt(2),1);
		com_Items.CellImages(h,COMVariant::createFromInt(3),"1,2,3");
		com_Items.CellCaption(h,COMVariant::createFromInt(3),"123");
		h = com_Items.InsertItem(hR,,"Child B");
		com_Items.CellState(h,COMVariant::createFromInt(0),1);
		com_Items.CellImage(h,COMVariant::createFromInt(2),3);
		com_Items.CellImages(h,COMVariant::createFromInt(3),"2,3,1");
		com_Items.CellCaption(h,COMVariant::createFromInt(3),"231");
		com_Items.SelectItem(h,true);
		h = com_Items.InsertItem(hR,,"Child C");
		com_Items.CellImage(h,COMVariant::createFromInt(2),2);
		com_Items.CellState(h,COMVariant::createFromInt(3),1);
		com_Items.CellCaption(h,COMVariant::createFromInt(3),"312");
		com_Items.CellImages(h,COMVariant::createFromInt(3),"3,1,2");
		com_Items.ExpandItem(hR,true);
	exgantt1.EndUpdate();
}
986
The user clicks the drop-down filter, select a value and the control's list filters for the selected item(s). Is there a way for when the user then goes to the next column to add another filter and the drop down arrow is clicked for the list of values they can filter by to be limited to what is being displayed in the list due to the first filter they set

// AddColumn event - Fired after a new column has been added.
void onEvent_AddColumn(COM   _Column)
{
	;
}

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	COM com_Items;
	anytype var_Items;
	;
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddBar(_Item,"Task",com_Items.CellCaption(_Item,COMVariant::createFromInt(2)),com_Items.CellCaption(_Item,COMVariant::createFromInt(4)));
}

public void init()
{
	COM com_Chart,com_Column,com_Items,com_rs;
	anytype rs,var_Chart,var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ColumnAutoResize(false);
	// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
	rs = COM::createFromObject(new ADODB.Recordset()); com_rs = rs;
		rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGantt\\Sample\\Access2007\\sample.accdb",3/*adOpenStatic*/,3/*adLockOptimistic*/);
	exgantt1.DataSource(rs);
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("8/4/1994",213)));
		com_Chart.LevelCount(2);
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,290);
	var_Column = COM::createFromObject(exgantt1.Columns()).Item("ShipVia"); com_Column = var_Column;
	com_Column.Position(2);
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,290);
}
*/
985
Is it possible to set from code, a column sort without being inserted in the sortbar

public void init()
{
	COM com_rs;
	anytype rs;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ColumnAutoResize(false);
	// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
	rs = COM::createFromObject(new ADODB.Recordset()); com_rs = rs;
		rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGantt\\Sample\\Access2007\\sample.accdb",1/*adOpenKeyset*/,3/*adLockOptimistic*/);
	exgantt1.DataSource(rs);
	exgantt1.SortBarVisible(true);
	exgantt1.Layout("singlesort=\"C1:1\"");
	exgantt1.EndUpdate();
}
984
Is it possible to view all events the control fires
// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

// Event event - Notifies the application once the control fires an event.
void onEvent_Event(int   _EventID)
{
	;
	print( exgantt1.EventParam(-2) );
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarCaption("`<r>` + value");
	exgantt1.FilterBarPromptVisible(2067/*exFilterBarCompact | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
		com_Column1.FilterType(240/*exFilter*/);
		com_Column1.Filter("Item A|Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
983
How can I prevent expanding/collapsing the child items

// BeforeExpandItem event - Fired before an item is about to be expanded (collapsed).
void onEvent_BeforeExpandItem(int   _Item,COMVariant /*variant*/   _Cancel)
{
	;
	_Cancel = exgantt1.Items().ItemParent(_Item);
}

public void init()
{
	COM com_Items;
	anytype var_Items;
	int h;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.SingleSel(false);
	exgantt1.Columns().Add("Default");
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Root 1");
		com_Items.InsertItem(com_Items.InsertItem(h,,"Child 1.1"),,"Child");
		com_Items.InsertItem(h,,"Child 1.2");
		com_Items.ExpandItem(h,true);
		h = com_Items.AddItem("Root 2");
		com_Items.InsertItem(com_Items.InsertItem(h,,"Child 2.1"),,"Child");
		com_Items.InsertItem(h,,"Child 2.2");
		com_Items.ExpandItem(h,true);
	exgantt1.EndUpdate();
}
982
How can I display an item of picture type

public void init()
{
	COM com_Items;
	anytype var_Items;
	int h,h1;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	exgantt1.ScrollBySingleLine(false);
	exgantt1.HeaderAppearance(4/*Etched*/);
	exgantt1.HeaderHeight(24);
	COM::createFromVariant(exgantt1.Columns().Add("Artikel")).HTMLCaption("<u>Artikel");
	COM::createFromVariant(exgantt1.Columns().Add("Waarde")).HTMLCaption("<u>Waarde");
	exgantt1.HTMLPicture("T22128","c:\\exontrol\\images\\zipdisk.gif");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("T22128-28)2D");
		h1 = com_Items.InsertItem(h,,"<img>T22128:128</img>");
		com_Items.CellCaptionFormat(h1,COMVariant::createFromInt(0),1/*exHTML*/);
		com_Items.ItemHeight(h1,128);
		h1 = com_Items.InsertItem(h,,"werkvoorbereiding");
		com_Items.CellCaption(h1,COMVariant::createFromInt(1),"5.80");
		com_Items.CellBold(h1,COMVariant::createFromInt(1),true);
		com_Items.CellCaption(com_Items.InsertItem(h1,,"Type"),COMVariant::createFromInt(1),"Eenvoudig");
		com_Items.CellCaption(com_Items.InsertItem(h1,,"Prijs p/uur"),COMVariant::createFromInt(1),"60,00");
		com_Items.CellCaption(com_Items.InsertItem(h1,,"Marhe"),COMVariant::createFromInt(1),"15,00%");
		com_Items.CellCaption(com_Items.InsertItem(h1,,"Insteltijd min."),COMVariant::createFromInt(1),"5,00");
		com_Items.CellCaption(com_Items.InsertItem(h1,,"Aantal"),COMVariant::createFromInt(1),COMVariant::createFromInt(1));
		com_Items.CellCaption(com_Items.InsertItem(h1,,"Kostprije"),COMVariant::createFromInt(1),"5,00");
		com_Items.ExpandItem(h1,true);
		h1 = com_Items.InsertItem(h,,"materiall");
		com_Items.CellCaption(h1,COMVariant::createFromInt(1),"14.82");
		com_Items.CellBold(h1,COMVariant::createFromInt(1),true);
		com_Items.ItemHasChildren(h1,true);
		h1 = com_Items.InsertItem(h,,"snijden");
		com_Items.CellCaption(h1,COMVariant::createFromInt(1),"3.13");
		com_Items.CellBold(h1,COMVariant::createFromInt(1),true);
		com_Items.ItemHasChildren(h1,true);
		com_Items.ExpandItem(h,true);
	exgantt1.EndUpdate();
}
981
Dark mode

public void init()
{
	COM com_Chart;
	anytype var_Chart;
	str back,fore,var_s,var_s1,var_s2;
	;

	super();

	exgantt1.BeginUpdate();
	back = 65536;
	fore = 16777215;
	var_s = "gBFLBCJwBAEHhEJAAEhABXUIQAAYAQGKIcBiAKBQAGYBIJDEMgzDDAUBjKKocQTC4AIQjCK4JDKHYJRpHEZyCA8EhqGASRAFUQBYiWE4oSpLABQaK0ZwIGyRIrkGQgQg";
	var_s = var_s + "mPYDSDNU4zVIEEglBI0TDNczhNDENgtGYaJqHIYpZBcM40TKkEZoSIITZcRrOEBiRL1S0RBhGcRUHZlWzdN64LhuK47UrWdD/XhdVzXRbjfz1Oq+bxve48Br7A5yYThd";
	var_s = var_s + "r4LhOFQ3RjIL4xbIcUwGe6VZhjOLZXjmO49T69HTtOCYBEBA";
	exgantt1.VisualAppearance().Add(1,COMVariant::createFromStr(var_s));
	var_s1 = "gBFLBCJwBAEHhEJAAEhABPMIQAAYAQGKIcBiAKBQAGaAoDDcMgwQwAAxjIKUEwsACEIrjKCYVgOHYYQjGMZwHCMIhiGwcAChEZYHgkMYmDAMUhSE78axHG6PY7kKZ4bi";
	var_s1 = var_s1 + "aKIqQLLEhSfJ0YyBECBZpfebIbjmIZMSLEIxDKItJSpCIaRgqWS6ahGO4JUbUFLQHT9IR4daIYRgEEBA";
	exgantt1.VisualAppearance().Add(2,COMVariant::createFromStr(var_s1));
	var_s2 = "gBFLBCJwBAEHhEJAAEhABUUIQAAYAQGKIcBiAKBQAGaAoDDcMgwQwAAxjIKUEwsACEIrjKCYVgOHYYQjGMZwGAsEwjAoYAChEaILgkMw2DBIQwgJIMEr/G6RZxjeL5Cj";
	var_s2 = var_s2 + "mG4nDhKMpybAcXxjBIYZJgOQpXb+PobTrNNLzfRFAxVAaWJikcZ4HpIAJNVLFdQ0XYMNSBISsBqrKiKcpeIIDWBZMbRZT1ZABCIZBpEW6LahENQwXrCN74DYkNTdKaxb";
	var_s2 = var_s2 + "buaaXLhGCYBgIA==";
	exgantt1.VisualAppearance().Add(3,COMVariant::createFromStr(var_s2));
	exgantt1.HeaderAppearance(5/*Bump*/);
	exgantt1.BackColor(back);
	exgantt1.BackColorHeader(back);
	exgantt1.BackColorLevelHeader(back);
	exgantt1.BackColorSortBar(back);
	exgantt1.BackColorSortBarCaption(back);
	exgantt1.FilterBarBackColor(back);
	exgantt1.FilterBarForeColor(fore);
	exgantt1.ForeColor(fore);
	exgantt1.ForeColorHeader(fore);
	exgantt1.ForeColorSortBar(fore);
	exgantt1.SelBackColor(fore);
	exgantt1.SelForeColor(back);
	exgantt1.Background(0/*exHeaderFilterBarButton*/,0x1000000);
	exgantt1.Background(32/*exCursorHoverColumn*/,-1);
	exgantt1.Background(64/*exToolTipAppearance*/,0x3000000);
	exgantt1.Background(65/*exToolTipBackColor*/,back);
	exgantt1.Background(66/*exToolTipForeColor*/,fore);
	exgantt1.Background(20/*exSelBackColorFilter*/,fore);
	exgantt1.Background(21/*exSelForeColorFilter*/,back);
	exgantt1.Background(26/*exBackColorFilter*/,back);
	exgantt1.Background(27/*exForeColorFilter*/,fore);
	exgantt1.Background(28/*exSortBarLinkColor*/,back);
	exgantt1.Background(186/*exTreeLinesColor*/,fore);
	exgantt1.Description(25/*exFilterBarExclude*/,"<bgcolor 0><fgcolor ffffff> Exclude </fgcolor></bgcolor>");
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.BackColor(back);
		com_Chart.BackColorLevelHeader(back);
		com_Chart.ForeColor(fore);
		com_Chart.ForeColorLevelHeader(fore);
	exgantt1.EndUpdate();
}
980
How can I specify the cell's outline, border or lines around, when the cell gets selected

public void init()
{
	COM com_Appearance,com_Items;
	anytype var_Appearance,var_Items;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.AttachTemplate("handle AddColumn(Column){Column{Def(48)=4;Def(49)=4;}}");
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s = "gBFLBCJwBAEHhEJAAEhABPEGACAADACAxRDgMQBQKAAzQFAYbBuGCGAAGIYBTgmFgAQhFcZQSpEEg7BKMYwjOJgFgmEQxDANIBQSKoaQiGQYYLhEZAEiONoaDJCM4wHI";
		var_s = var_s + "MQxHCKTZRkGcfaRCGSfIzpGKpVgOTYiTbPcIyQKtBxDIydJTmeQQQhsFIJU7SdVUPDUJZlWbLAwWTAYazXCKRZBpeJqdo6Y5RUDKUqSdLUYyvEq7ZqnOIpw5vICpaCqO";
		var_s = var_s + "p6HqKFpiXSAFL1fLmAwvPKrJjoeqpWpyCaRZQAGg4dbEdTNNCIbatQANKrCSpgZ7sMB6Di2L4TPS2awoWgRYyTFZMbBAeQ7LC1c45Fqrd4zS4dSxKCahcLxFiaNpYZYn";
		var_s = var_s + "jUap1jGPJlkuAgAkidB3nceZsCQEQJCgGhMGcQ4pkiSxEAAOYpiQIhvkYNA2gSCg5n+LIoGILowFyXQoAYAoAmASAWAaAZgggJgKF2T54DYDoDmECBGBKBJgGgTgWgWY";
		var_s = var_s + "RoFYGIGmGOBqByB5hCgegggiYJYgoJIICIaIeByChixULILGGGAWDCCgjCiTgrg0YxojoC4OmOSJ2D6D5kAgJLFgABAEICA=";
		com_Appearance.Add(1,COMVariant::createFromStr(var_s));
		com_Appearance.Add(2,"CP:1 -4 0 0 0");
	exgantt1.SelBackColor(0x2000000);
	exgantt1.SelForeColor(WinApi::RGB2int(0,0,1));
	exgantt1.FullRowSelect(0);
	exgantt1.ShowFocusRect(false);
	exgantt1.DefaultItemHeight(24);
	exgantt1.HeaderHeight(24);
	exgantt1.DrawGridLines(2/*exVLines*/);
	exgantt1.Columns().Add("C1");
	exgantt1.Columns().Add("C2");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Cell 1"),COMVariant::createFromInt(1),"Cell 2");
		com_Items.CellCaption(com_Items.AddItem("Cell 3"),COMVariant::createFromInt(1),"Cell 4");
	exgantt1.Items().SelectPos(COMVariant::createFromInt(1));
	exgantt1.SelectColumnIndex(1);
	exgantt1.EndUpdate();
}
979
How can I specify the cell's outline, border or lines around, when the item gets selected

public void init()
{
	COM com_Items;
	anytype var_Items;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.AttachTemplate("handle AddColumn(Column){Column{Def(48)=4;Def(49)=4;}}");
	var_s = "gBFLBCJwBAEHhEJAAEhABPEGACAADACAxRDgMQBQKAAzQFAYbBuGCGAAGIYBTgmFgAQhFcZQSpEEg7BKMYwjOJgFgmEQxDANIBQSKoaQiGQYYLhEZAEiONoaDJCM4wHI";
	var_s = var_s + "MQxHCKTZRkGcfaRCGSfIzpGKpVgOTYiTbPcIyQKtBxDIydJTmeQQQhsFIJU7SdVUPDUJZlWbLAwWTAYazXCKRZBpeJqdo6Y5RUDKUqSdLUYyvEq7ZqnOIpw5vICpaCqO";
	var_s = var_s + "p6HqKFpiXSAFL1fLmAwvPKrJjoeqpWpyCaRZQAGg4dbEdTNNCIbatQANKrCSpgZ7sMB6Di2L4TPS2awoWgRYyTFZMbBAeQ7LC1c45Fqrd4zS4dSxKCahcLxFiaNpYZYn";
	var_s = var_s + "jUap1jGPJlkuAgAkidB3nceZsCQEQJCgGhMGcQ4pkiSxEAAOYpiQIhvkYNA2gSCg5n+LIoGILowFyXQoAYAoAmASAWAaAZgggJgKF2T54DYDoDmECBGBKBJgGgTgWgWY";
	var_s = var_s + "RoFYGIGmGOBqByB5hCgegggiYJYgoJIICIaIeByChixULILGGGAWDCCgjCiTgrg0YxojoC4OmOSJ2D6D5kAgJLFgABAEICA=";
	exgantt1.VisualAppearance().Add(1,COMVariant::createFromStr(var_s));
	exgantt1.SelBackColor(0x1000000);
	exgantt1.SelForeColor(WinApi::RGB2int(0,0,1));
	exgantt1.ShowFocusRect(false);
	exgantt1.DefaultItemHeight(24);
	exgantt1.HeaderHeight(24);
	exgantt1.DrawGridLines(2/*exVLines*/);
	exgantt1.Columns().Add("C1");
	exgantt1.Columns().Add("C2");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Cell 1"),COMVariant::createFromInt(1),"Cell 2");
		com_Items.CellCaption(com_Items.AddItem("Cell 3"),COMVariant::createFromInt(1),"Cell 4");
		com_Items.SelectPos(COMVariant::createFromInt(1));
	exgantt1.EndUpdate();
}
978
How can I specify the cell's outline, border or lines around

public void init()
{
	COM com_Items;
	anytype var_Items;
	int h;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.AttachTemplate("handle AddColumn(Column){Column{Def(48)=4;Def(49)=4;}}");
	var_s = "gBFLBCJwBAEHhEJAAEhABPEGACAADACAxRDgMQBQKAAzQFAYbBuGCGAAGIYBTgmFgAQhFcZQSpEEg7BKMYwjOJgFgmEQxDANIBQSKoaQiGQYYLhEZAEiONoaDJCM4wHI";
	var_s = var_s + "MQxHCKTZRkGcfaRCGSfIzpGKpVgOTYiTbPcIyQKtBxDIydJTmeQQQhsFIJU7SdVUPDUJZlWbLAwWTAYazXCKRZBpeJqdo6Y5RUDKUqSdLUYyvEq7ZqnOIpw5vICpaCqO";
	var_s = var_s + "p6HqKFpiXSAFL1fLmAwvPKrJjoeqpWpyCaRZQAGg4dbEdTNNCIbatQANKrCSpgZ7sMB6Di2L4TPS2awoWgRYyTFZMbBAeQ7LC1c45Fqrd4zS4dSxKCahcLxFiaNpYZYn";
	var_s = var_s + "jUap1jGPJlkuAgAkidB3nceZsCQEQJCgGhMGcQ4pkiSxEAAOYpiQIhvkYNA2gSCg5n+LIoGILowFyXQoAYAoAmASAWAaAZgggJgKF2T54DYDoDmECBGBKBJgGgTgWgWY";
	var_s = var_s + "RoFYGIGmGOBqByB5hCgegggiYJYgoJIICIaIeByChixULILGGGAWDCCgjCiTgrg0YxojoC4OmOSJ2D6D5kAgJLFgABAEICA=";
	exgantt1.VisualAppearance().Add(1,COMVariant::createFromStr(var_s));
	exgantt1.SelBackMode(1/*exTransparent*/);
	exgantt1.ShowFocusRect(false);
	exgantt1.DefaultItemHeight(24);
	exgantt1.HeaderHeight(24);
	exgantt1.DrawGridLines(2/*exVLines*/);
	exgantt1.Columns().Add("C1");
	exgantt1.Columns().Add("C2");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Cell 1"),COMVariant::createFromInt(1),"Cell 2");
		h = com_Items.AddItem("Cell 2");
		com_Items.CellCaption(h,COMVariant::createFromInt(1),"Cell 3");
		com_Items.CellBackColor(h,COMVariant::createFromInt(1),0x1000000);
	exgantt1.EndUpdate();
}
977
Is it possible to highligth the match while a filter is applied

// AddColumn event - Fired after a new column has been added.
void onEvent_AddColumn(COM   _Column)
{
	// Column.Def(17) = 1
	;
}

// FilterChange event - Occurs when the filter was changed.
void onEvent_FilterChange()
{
	COM com_Column;
	COMVariant format;
	anytype var_Column;
	;
	format = exgantt1.FormatABC("`value replace '` + value + `' with '<bgcolor 000000><fgcolor FFFFFF>` + value  + `</fgcolor></bgcolor>'`",COMVariant::createFromStr(exgantt1.FilterBarPromptPattern()));
	var_Column = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column = var_Column;
	com_Column.FormatColumn(format);
	var_Column = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(1)); com_Column = var_Column;
	com_Column.FormatColumn(format);
}

public void init()
{
	COM com_Column,com_Items;
	COMVariant format;
	anytype var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.DrawGridLines(2/*exVLines*/);
	exgantt1.HeaderAppearance(4/*Etched*/);
	exgantt1.Columns().Add("Col 1");
	exgantt1.Columns().Add("Col 2");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("219 Smith"),COMVariant::createFromInt(1),"Ignacio 1234");
		com_Items.CellCaption(com_Items.AddItem("1666 County Road 309A"),COMVariant::createFromInt(1),"897 Manassa");
		com_Items.CellCaption(com_Items.AddItem("38 Lone Pine"),COMVariant::createFromInt(1),"Durango 11");
		com_Items.CellCaption(com_Items.AddItem("612 Jachim Street"),COMVariant::createFromInt(1),"Lamar 222");
	exgantt1.FilterBarPromptPattern("1");
	exgantt1.FilterBarPromptVisible(2067/*exFilterBarCompact | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/);
	exgantt1.FilterBarPromptType(257/*exFilterPromptCaseSensitive | exFilterPromptContainsAll*/);
	exgantt1.EndUpdate();
}
976
Is it possible to highlight the column's header once a filter is applied (sample 2)

public void init()
{
	COM com_Appearance,com_Column,com_Columns,com_Items;
	anytype var_Appearance,var_Column,var_Columns,var_Items;
	int h;
	str var_s,var_s1;
	;

	super();

	exgantt1.BeginUpdate();
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s = "gBFLBCJwBAEHhEJAAEhABO8GACAADACAxRDgMQBQKAAzQFAYbBuGCGAAGIYBTgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwQgmNYDSBMcbwSA";
		var_s = var_s + "sXRYFocJ5gOT6AjKBA2UclEZpajiTY3ABUEgUS5oOBIACqariaQJAAiCRQGiYZyHKaRSwPBKFYDIIjbJheTIDChNVxUcDENQjJqLBIDRzbarye59YBfeBXdgmA4LQbDM";
		var_s = var_s + "RwNgMMQTDqKYbkOQZHbeGKAWTMEZzJj8cxTEqIaBhGTLfojSZMS7UGK1LLtMyHI6kP7sOiLfi2W4/W7XV72F79TzXIa2ZBuO57bhnAZ/VzGNj4PRNezfRqicjsGxcZwX";
		var_s = var_s + "g+TpQj0ew6gSOw7wSbozjsfYXi8PwMnSc52leHotl+MxjmoXh2nybxOH+SQtnYXx+D2P4vGMB56hQf5PCgBYeDwYBCEo1xggebgKH6IIDBYBgkiAQ5FgYPAhEIRgWGqD";
		var_s = var_s + "BoC4GoCiGCBYhGBQPAWdIQp0eIUiWCZigiJgqgqYpIioJQhmIMhBH0NxjEMag2g2Y4ImYOoOmOSJeDQNxXlOLR3ECUAQICA=";
		com_Appearance.Add(1,COMVariant::createFromStr(var_s));
		var_s1 = "gBFLBCJwBAEHhEJAAEhABgsHQAAYAQGKIcBiAKBQAGaAoDDYNwwQwAAxDAKcEwsACEIrjKCRShyCYZRrGUgRCKQahLEiTIhGUYJHgmK4tRoAUgxWCEExrAaQJjjeCQFi";
		var_s1 = var_s1 + "6LAtDhPMByfQEZQIGyjkgjNLUcSbG4AKgkCiXfpUAJVP7FcgSABEEigNIxToOU4jFgeCYLQKQRK2RC9GQGFCbLhpYKIahGTYWVheN5XXblez9P7ABQwKCcAwXBp7YIKA";
		var_s1 = var_s1 + "T4XBIdYdQ7IL4xGA0AJPFoJC7mOQ5XiYAIBAZ/RL0LCcbxHHafVboQj6JouD5PUDVNY1XBdPynI6CbLhWy6Dq4UZzPwzeBifSHfDjRoJcCZe71KY3GwSEboNA6Kp+QBH";
		var_s1 = var_s1 + "AmZoZjSPYIEiF47lOLJVnuYofBwJJHmaQoYj0MIRHeM4/m6cJ8B+fpBHQJ5SGKPYYH8OYMk+P5Bn4fxaAYZAvEIX4RgUWBGgCCAmAqApgkgNgOgMEYlGASoEkQeBWBaB";
		var_s1 = var_s1 + "ZhggZgagaYRoEwShWA6NZZAMQBAICA==";
		com_Appearance.Add(2,COMVariant::createFromStr(var_s1));
	exgantt1.Background(0/*exHeaderFilterBarButton*/,0x1000000);
	exgantt1.Background(41/*exHeaderFilterBarActive*/,0x2000000);
	exgantt1.Background(32/*exCursorHoverColumn*/,-1);
	exgantt1.HeaderHeight(28);
	exgantt1.BackColorHeader(WinApi::RGB2int(255,255,255));
	exgantt1.DrawGridLines(-2/*exRowLines*/);
	exgantt1.HeaderVisible(1);
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		COM::createFromVariant(com_Columns.Add("C1")).DisplayFilterButton(true);
		var_Column = COM::createFromVariant(com_Columns.Add("C2")); com_Column = var_Column;
			com_Column.DisplayFilterButton(true);
			com_Column.Filter("Item 2");
			com_Column.FilterType(240/*exFilter*/);
		COM::createFromVariant(com_Columns.Add("C3")).DisplayFilterButton(true);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Item 1");
		com_Items.CellCaption(h,COMVariant::createFromInt(1),"Item 2");
		com_Items.CellCaption(h,COMVariant::createFromInt(2),"Item 3");
		h = com_Items.AddItem("Item 4");
		com_Items.CellCaption(h,COMVariant::createFromInt(1),"Item 5");
		com_Items.CellCaption(h,COMVariant::createFromInt(2),"Item 6");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}
975
How can I make the expand/collapse glyphs DPI aware

public void init()
{
	COM com_Appearance,com_Items;
	anytype var_Appearance,var_Items;
	int h;
	str size,var_s,var_s1;
	;

	super();

	size = 2;
	exgantt1.BeginUpdate();
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s = "gBFLBCJwBAEHhEJAAEhEGAUHQAAYAQGKIcBiAKBQAGaAoDDYOA4QwAAxDAKcEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQiiCYsS5GQBRfIUEghGyNZjgNzQcC";
		var_s = var_s + "QAI8T5IUgARBJIDSMY6DpOIxYHgmC4DEITNLxOK0EhRHCBZrgOCAYhqEY1Ro+dhPFYjVTMdK0LRtKy7Mq2aJmOpZDxWE7dZKpO5fbxXS67cr2fp/YBed4rfa7KTlOBKc";
		var_s = var_s + "RQRBEFQPDqPZBkORZHh2FoLRJKbgtHJmHYNQWhVyYBbNCyTI6lahpeuHBx1QaWWxjbCMEr6bpoWLbFi3Ha1UzrPa8b5vSw7Gr+HzYQTHGPXGqaYJdZrnea6B7+U5XUJr";
		var_s = var_s + "nSOZciYHwhAeR5HDK+JVGqKRRmScx5HyfRei+H5bmmcp4Fi8o/CGGJKGQKZUGoFQigUPIiCeSZXnyHB6l0SAJn8JxfkIeZ5CgXxjCCAhyB8QgIlAM4MlKAIcCaIBIGYG";
		var_s = var_s + "oGGEYhqBMMxgnICgRDUDQjESGwmAkWBuCqBoiHIVgkDQYgYESWg2E0YhohcJQigITg3CQSRyEyEYGGOWJwhQJD4FiFIMk0aJFGsIBkkOBJeDc+AchYJwJgIWhSgYZQpF";
		var_s = var_s + "IVoVGOGQ4l2EwIBWMhgDmDhThCEwkAiaJchKDhjhgZhsCUY4iFCEoZkiaYQmSGAWhWQhgDuDpTjCDQiEgchAg0IpJBoDoFiEKBqCaCAimgIguH8IZnkPUhcBcJg+hGJZ";
		var_s = var_s + "nloYJsiaKZKGa24YnWSR0CkKhCA2CxlCqColhAYpqEKER0DqVZ0A0ASAgA==";
		com_Appearance.Add(3,COMVariant::createFromStr(var_s));
		var_s1 = "gBFLBCJwBAEHhEJAAEhABAQCg6AADACAxRDgMQBQKAAzQFAYbBwHCGAAGIYBTgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACjeQYJBCNYbTJAbqhYI";
		var_s1 = var_s1 + "gAR3HqQZABCCSQKkYx0HScRiwPBMFwGIQmaaicZoJCiN4DTZAcIBRDUIxpDR9bBeKw3KqVaZnWhaNpWXZlTzKdSxXisF67RZSdi/XgvF5XXblez9P69LwXe5mUrGbyVY";
		var_s1 = var_s1 + "ghCCIKgeG4dR7IMhyLDcKQXCCVW7aGSsOwbAqAXpdGAXTQdDyLJKnaZqOi6BjjA4rNbHGIYJb1XTRMa1LJuG5LJrOeZ3Xre4BLfh1VoFRpjWIYNY1QS7TLOczzfRdDxT";
		var_s1 = var_s1 + "iGVpkjCeJoD4Ng1hSRxiisVRKg8D4PkWZJznmPQ+F8Xx5guWpjHGWYMiYQodEaIRSCgU5KCSeh3naHB/iAAh9n8fwfgIeZ1CgXwjCCAhxl8AgIlAM4MlKAIcCaD54FYF";
		var_s1 = var_s1 + "oFmGCBmBaBIJigPJNgKSAoDSVC+BIbIYCUYYoiYKoJgkWIMlGCAglMaJZDWCYiFyFIJkkOJYhEJc7G4PYPCOaJshQJBjgiVIUgyDRokEaggGSQ4El4N1CBiFgnAmAhaF";
		var_s1 = var_s1 + "KFZlFkShUhWJRYmITg3GSQgFGuGBOGOFJkCSSQCDoNgkiOCY0hUJJmmmQhvhqZtYmUOQmBWIRvhgTpjjSbAjEiEgchBZgyEaBIhigWgegqIhIjoDILiACB5nTL5WnWRY";
		var_s1 = var_s1 + "OiSKYJnqGQ7CmOh2hqJ5OkYORxFyShKhSAxihkOomioY5YiqFIkFyTo1HkAxAEAgIA==";
		com_Appearance.Add(4,COMVariant::createFromStr(var_s1));
		com_Appearance.Add(1,exgantt1.FormatABC("`CP:3 -` + int(value*dpi) + ` -` + int(value*dpi) + ` ` +  int(value*dpi) + ` ` + int(value*dpi)",size));
		com_Appearance.Add(2,exgantt1.FormatABC("`CP:4 -` + int(value*dpi) + ` -` + int(value*dpi) + ` ` +  int(value*dpi) + ` ` + int(value*dpi)",size));
	exgantt1.LinesAtRoot(1/*exGroupLinesAtRoot*/);
	exgantt1.HasButtons(4/*exCustom*/);
	exgantt1.HasButtonsCustom(0,16777216);
	exgantt1.HasButtonsCustom(1,33554432);
	exgantt1.Columns().Add("Column");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Root 1");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
		com_Items.ExpandItem(h,true);
		h = com_Items.AddItem("Root 2");
		com_Items.InsertItem(h,,"Child");
	exgantt1.EndUpdate();
}
974
Is it possible to highlight the column's header once a filter is applied (sample 1)

public void init()
{
	COM com_Appearance,com_Column,com_Columns,com_Items;
	anytype var_Appearance,var_Column,var_Columns,var_Items;
	int h;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s = "gBFLBCJwBAEHhEJAAEhABX8GACAADACAxSDEMQBQKAAzQFAYbhgHCGAAGQaBUgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwYgmNYiTLAcgANJ";
		var_s = var_s + "0WBaGIZJ4gOT5fDKMoEDRRYADFCscwxJybQAqGQKKb+VgAVY/cTyBIAEQSKA0TDOQ5TSKWB4JPZQRBEbZMNBtBIUJquKaqShdQJCU5FdY3Xblez9P7AMBwLFEC4NQ8YN";
		var_s = var_s + "YuPhjR4dRTIMhvVAsUArFh8Zg9GZZFjmDIDT4ydBLTQwcyVIKnP5qOa6XbmPoCQDYKxZHYxPzVDa3axuL76dqCAT7XrXNy1TbNRrzQKfcJqfCbdw2YaDZLOOT3fjuI4h";
		var_s = var_s + "hKaRzFAHJ+jYQ4xHuY4gHuGIXGeExqC8Tp6C+PoEm+G5ImycRgh0XwvDGa5rgOeoejyXwnFeQp2mkf5ClgBB9gCWIYAwfYAEKV58mkdwOggNArgOXY2EWLoDkKOA0mgb";
		var_s = var_s + "hOGgZApgaSBIHWSYHSmbApgYThmESZYJkIeIkgeCpfliLIHgpMIcmUYYYmODAlg2SI4mWfRfGOEguDcCRjFYAJihCQhJBSDoRmONgKEcI4kFCEJhhOVYTmYnAlEAQhWB";
		var_s = var_s + "MJYJGYWoWmWSR2F6F5lnkWAQhUAgpEieRWEuSYkjWGpmkmNhuhuZwJkYcocmaaYkjyEhngnUA6lEFAlAEgI=";
		com_Appearance.Add(2,COMVariant::createFromStr(var_s));
		com_Appearance.Add(1,"CP:2 -8 -4 2 4");
	exgantt1.Background(0/*exHeaderFilterBarButton*/,0x1fefefe);
	exgantt1.Background(41/*exHeaderFilterBarActive*/,0x1010101);
	exgantt1.Background(32/*exCursorHoverColumn*/,-1);
	exgantt1.HeaderHeight(28);
	exgantt1.BackColorHeader(WinApi::RGB2int(255,255,255));
	exgantt1.DrawGridLines(-2/*exRowLines*/);
	exgantt1.HeaderVisible(1);
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		COM::createFromVariant(com_Columns.Add("C1")).DisplayFilterButton(true);
		var_Column = COM::createFromVariant(com_Columns.Add("C2")); com_Column = var_Column;
			com_Column.DisplayFilterButton(true);
			com_Column.Filter("Item 2");
			com_Column.FilterType(240/*exFilter*/);
		COM::createFromVariant(com_Columns.Add("C3")).DisplayFilterButton(true);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Item 1");
		com_Items.CellCaption(h,COMVariant::createFromInt(1),"Item 2");
		com_Items.CellCaption(h,COMVariant::createFromInt(2),"Item 3");
		h = com_Items.AddItem("Item 4");
		com_Items.CellCaption(h,COMVariant::createFromInt(1),"Item 5");
		com_Items.CellCaption(h,COMVariant::createFromInt(2),"Item 6");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}
973
Is it possible to show the filterbar on top of the rows

public void init()
{
	COM com_Column,com_Column1,com_Items;
	anytype var_Column,var_Column1,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.FilterBarPromptVisible(8192/*exFilterBarTop*/);
	exgantt1.HeaderHeight(24);
	exgantt1.FilterBarHeight(exgantt1.HeaderHeight());
	exgantt1.HeaderAppearance(1/*Flat*/);
	exgantt1.DrawGridLines(-1/*exAllLines*/);
	exgantt1.GridLineStyle(512/*exGridLinesGeometric*/);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Column")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterType(3/*exPattern*/);
		com_Column.Filter("B*");
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Index")); com_Column1 = var_Column1;
		com_Column1.FormatColumn("1 index ``");
		com_Column1.Position(0);
		com_Column1.Width(48);
		com_Column1.AllowSizing(false);
		com_Column1.SortType(1/*SortNumeric*/);
		com_Column1.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("A.1");
		com_Items.AddItem("A.2");
		com_Items.AddItem("B.1");
		com_Items.AddItem("B.2");
		com_Items.AddItem("B.3");
		com_Items.AddItem("C");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}
972
Is there anyway to stop the header changing colour when the mouse hovers/moves across the column header (non-clickable)

public void init()
{
	COM com_Column,com_Columns,com_Items;
	anytype var_Column,var_Columns,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.HeaderAppearance(4/*Etched*/);
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		com_Columns.Add("Item");
		var_Column = COM::createFromVariant(com_Columns.Add("Pos")); com_Column = var_Column;
			com_Column.Position(0);
			com_Column.Width(32);
			com_Column.AllowSizing(false);
			com_Column.FormatColumn("1 index ``");
			com_Column.AllowSort(false);
			com_Column.AllowDragging(false);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.EndUpdate();
}
971
Is there anyway to stop the header changing colour when the mouse hovers/moves across the column header

public void init()
{
	COM com_Column,com_Columns,com_Items;
	anytype var_Column,var_Columns,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.HeaderAppearance(4/*Etched*/);
	exgantt1.Background(32/*exCursorHoverColumn*/,-1);
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		com_Columns.Add("Item");
		var_Column = COM::createFromVariant(com_Columns.Add("Pos")); com_Column = var_Column;
			com_Column.Position(0);
			com_Column.Width(32);
			com_Column.AllowSizing(false);
			com_Column.FormatColumn("1 index ``");
			com_Column.AllowSort(false);
			com_Column.AllowDragging(false);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.EndUpdate();
}
970
I would like to display a solid line between "root" items, and dotted lines (default) between child items. How can I do that

public void init()
{
	COM com_Column,com_Column1,com_ConditionalFormat,com_Items;
	anytype var_Column,var_Column1,var_ConditionalFormat,var_Items;
	int h;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	exgantt1.DrawGridLines(1/*exHLines*/);
	exgantt1.GridLineStyle(512/*exGridLinesGeometric*/);
	var_s = "gBFLBCJwBAEHhEJAAEhABMsIQAAYAQGKIcBiAKBQAGaAoDgYN4MAANAwjJBMKgBBCLIxhEYobgmGIXRpFMbxAKQahLEiTIgGUYJHgmK4tQLHb7zGAABRDDSOIDnGQJXh";
	var_s = var_s + "aI4JQSMMQDGLAZxVFiPRhAWLpBh+PQATrOdLUfSjVwhBKAQEBA==";
	exgantt1.VisualAppearance().Add(1,COMVariant::createFromStr(var_s));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Default")); com_Column = var_Column;
		com_Column.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column.PartialCheck(true);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Position")); com_Column1 = var_Column1;
		com_Column1.FormatColumn("((1 rindex ``) contains `.`) = 0");
		com_Column1.Visible(false);
	var_ConditionalFormat = COM::createFromObject(exgantt1.ConditionalFormats()).Add("%C1"); com_ConditionalFormat = var_ConditionalFormat;
		com_ConditionalFormat.BackColor(0x1e0e0e0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Root 1");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
		com_Items.InsertItem(h,,"Child 3");
		com_Items.ExpandItem(h,true);
		h = com_Items.AddItem("Root 2");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
		h = com_Items.AddItem("Root 3");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
	exgantt1.EndUpdate();
}
969
I can not center or align the cell's caption and icon, when it displays the hierarchy

public void init()
{
	COM com_Column,com_Items;
	anytype var_Column,var_Items;
	int h,hChild;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql";
	var_s = var_s + "Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0";
	var_s = var_s + "ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN";
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Tasks")); com_Column = var_Column;
		com_Column.Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
	exgantt1.HeaderVisible(1);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Project");
		hChild = com_Items.InsertItem(h,,"<img>1</img> Task (left)");
		hChild = com_Items.InsertItem(h,,"<c><img>2</img> Task (center)");
		hChild = com_Items.InsertItem(h,,"<r>Task (right) <img>3</img>");
		com_Items.ExpandItem(h,true);
	exgantt1.EndUpdate();
}
968
How do I set an extra data for each item
// MouseMove event - Occurs when the user moves the mouse.
void onEvent_MouseMove(int   _Button,int   _Shift,int   _X,int   _Y)
{
	int i;
	;
	i = exgantt1.ItemFromPoint(-1,-1,c,hit);
	print( i );
	print( exgantt1.Items().ItemData(i) );
}

public void init()
{
	COM com_Items,com_Items1;
	anytype var_Items,var_Items1;
	int i;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ColumnAutoResize(true);
	exgantt1.Columns().Add("Default");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.ItemData(com_Items.AddItem("method 1"),"your extra data of method 1");
		com_Items.InsertItem(0,"your extra data of method 2","method 2");
	var_Items1 = exgantt1.Items(); com_Items1 = var_Items1;
		com_Items1.DefaultItem(com_Items1.AddItem("method 3"));
		com_Items1.ItemData(0,"your extra data of method 3");
	exgantt1.EndUpdate();
}
967
I do not like to specify the item padding for every column I add. The question is how can I do it automatically

public void init()
{
	COM com_Column,com_Columns,com_Items;
	anytype var_Column,var_Columns,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.AttachTemplate("handle AddColumn(Column){Column{Def(48)=8;Def(49)=8;AllowDragging=False;AllowSizing = True}}");
	exgantt1.HeaderAppearance(4/*Etched*/);
	exgantt1.DrawGridLines(-1/*exAllLines*/);
	exgantt1.GridLineStyle(32/*exGridLinesVSolid*/);
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		com_Columns.Add("Item");
		var_Column = COM::createFromVariant(com_Columns.Add("Pos")); com_Column = var_Column;
			com_Column.Position(0);
			com_Column.Width(32);
			com_Column.AllowSizing(false);
			com_Column.FormatColumn("1 index ``");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.EndUpdate();
}
966
Can I sort the column by check-state

public void init()
{
	COM com_Column,com_Column1,com_Items;
	anytype var_Column,var_Column1,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Check")); com_Column = var_Column;
		com_Column.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column.SortType(32/*exSortByState*/);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem();
		com_Items.CellState(com_Items.AddItem(),COMVariant::createFromInt(0),1);
		com_Items.CellState(com_Items.AddItem(),COMVariant::createFromInt(0),1);
		com_Items.AddItem();
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
	com_Column1.SortOrder(1/*SortAscending*/);
	exgantt1.EndUpdate();
}
965
Can I sort the column by image

public void init()
{
	COM com_Column,com_Column1,com_Items;
	anytype var_Column,var_Column1,var_Items;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql";
	var_s = var_s + "Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0";
	var_s = var_s + "ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN";
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Image")); com_Column = var_Column;
		com_Column.SortType(48/*exSortByImage*/);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellImage(com_Items.AddItem(),COMVariant::createFromInt(0),3);
		com_Items.AddItem();
		com_Items.CellImage(com_Items.AddItem(),COMVariant::createFromInt(0),1);
		com_Items.CellImage(com_Items.AddItem(),COMVariant::createFromInt(0),2);
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
	com_Column1.SortOrder(1/*SortAscending*/);
	exgantt1.EndUpdate();
}
964
How can I display UNICODE characters

public void init()
{
	COM com_Items,com_StdFont;
	anytype var_Items,var_StdFont;
	;

	super();

	exgantt1.BeginUpdate();
	/*should be called during the form's activate method*/ exgantt1.Chart().PaneWidth(true,0);
	var_StdFont = exgantt1.Font(); com_StdFont = var_StdFont;
		com_StdFont.Name("Arial Unicode");
		com_StdFont.Size(22);
	exgantt1.HeaderVisible(false);
	exgantt1.DefaultItemHeight(48);
	COM::createFromVariant(exgantt1.Columns().Add("")).Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Ӓӓ");
		com_Items.AddItem("ᦜᦝ;ᦞ");
		com_Items.AddItem("ɮɭ;ɯ");
		com_Items.AddItem("勳勴勵勶");
		com_Items.FormatCell(com_Items.AddItem(COMVariant::createFromStr(exgantt1.Version())),COMVariant::createFromInt(0),"(value lfind `UNICODE`) < 0 ? `<fgcolor=FF0000><b>!UNICODE!</b> version</fgcolor> required: ` + value : `` ");
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(true,0);
}
*/
963
How do I display the position of the item with 0-padding

public void init()
{
	COM com_Items;
	anytype var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	COM::createFromVariant(exgantt1.Columns().Add("Items")).FormatColumn("((1 apos ``) lpad `00`) + `. `  + value");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
		com_Items.AddItem("Item D");
	exgantt1.EndUpdate();
}
962
Can't get the +/- to be displayed on a divider item. What else can I do

public void init()
{
	COM com_Columns,com_Items;
	anytype var_Columns,var_Items;
	int h;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	exgantt1.DrawGridLines(-1/*exAllLines*/);
	exgantt1.TreeColumnIndex(0);
	exgantt1.MarkSearchColumn(false);
	exgantt1.FullRowSelect(0);
	exgantt1.HeaderAppearance(-1/*0xffffffff | Bump | Sunken*/);
	/*should be called during the form's activate method*/ exgantt1.Chart().PaneWidth(true,0);
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		COM::createFromVariant(com_Columns.Add("C1")).Width(32);
		COM::createFromVariant(com_Columns.Add("C2")).FormatColumn("1 index ``");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Cell 1");
		com_Items.CellSingleLine(h,COMVariant::createFromInt(1),false);
		h = com_Items.AddItem("This is bit of text merges all cells in the item (divider shows no +/-)");
		com_Items.ItemDivider(h,0);
		com_Items.ItemBackColor(h,WinApi::RGB2int(240,240,240));
		com_Items.ItemDividerLine(h,0/*EmptyLine*/);
		com_Items.CellHAlignment(h,COMVariant::createFromInt(0),1/*CenterAlignment*/);
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
		com_Items.ExpandItem(h,true);
		h = com_Items.AddItem("Cell 3");
		h = com_Items.AddItem("This is bit of text merges all cells in the item (merge shows +/-)");
		com_Items.ItemBackColor(h,WinApi::RGB2int(240,240,240));
		com_Items.CellMerge(h,COMVariant::createFromInt(0),COMVariant::createFromInt(1));
		com_Items.InsertItem(h,,"Child 3");
		com_Items.InsertItem(h,,"Child 4");
		com_Items.ExpandItem(h,true);
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(true,0);
}
*/
961
ADODB Requery sample

// CellButtonClick event - Fired after the user clicks on the cell of button type. 
void onEvent_CellButtonClick(int   _Item,int   _ColIndex)
{
	COM com_cmd;
	anytype cmd;
	;
	// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
	cmd = COM::createFromObject(new ADODB.Command()); com_cmd = cmd;
		cmd.ActiveConnection(COM::createFromVariant(exgantt1.DataSource().ActiveConnection()));
		cmd.CommandText("INSERT INTO Orders (EmployeeID) VALUES(12345)");
		cmd.CommandType(1/*adCmdText*/);
		cmd.Execute();
	exgantt1.DataSource().Requery();
}

public void init()
{
	COM com_ConditionalFormat,com_Items,com_cmd,com_rs;
	anytype cmd,rs,var_ConditionalFormat,var_Items;
	int h;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.HeaderAppearance(4/*Etched*/);
	exgantt1.ColumnAutoResize(false);
	rs = COM::createFromObject(new ADODB.Recordset()); com_rs = rs;
		rs.Open("Select * From Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGantt\\Sample\\Access2007\\sample.accdb",1/*adOpenKeyset*/,3/*adLockOptimistic*/);
	exgantt1.DataSource(rs);
	var_ConditionalFormat = COM::createFromObject(exgantt1.ConditionalFormats()).Add("%1=12345"); com_ConditionalFormat = var_ConditionalFormat;
	com_ConditionalFormat.BackColor(WinApi::RGB2int(240,240,240));
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.LockedItemCount(0/*TopAlignment*/,1);
		h = com_Items.LockedItem(0/*TopAlignment*/,0);
		com_Items.ItemDivider(h,0);
		com_Items.CellHasButton(h,COMVariant::createFromInt(0),true);
		com_Items.CellCaption(h,COMVariant::createFromInt(0),"Requery (add a new record, using ADODB.Command)");
		com_Items.CellHAlignment(h,COMVariant::createFromInt(0),1/*CenterAlignment*/);
	exgantt1.EndUpdate();
}
960
I am skinning the control's header-bar, but the background of the header-bar is shown on each item in the filter-bar drop down panel. What can I do

public void init()
{
	COM com_Appearance,com_Column,com_Items;
	anytype var_Appearance,var_Column,var_Items;
	str var_s,var_s1;
	;

	super();

	exgantt1.BeginUpdate();
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s = "gBFLBCJwBAEHhEJAAEhABFgDg6AADACAxRDgMQBQKAAzQFAYcBqGqGAAGQZxYgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHL";
		var_s = var_s + "UXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQGhsCYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU8lORLUi+M4zSBPcZVTRtGShPDBK";
		var_s = var_s + "TjMKKYgkG4lVpRNa0PC1GTzQ6mazkKQLRADDIDVbAeL3LiMBy9LyLLItQALByua5mWhbcZyBCOPgBTrRb5zO58FjuTK7YLjMB7NrUNYtFaUMy2OpOCADIaecTNcaWLxP";
		var_s = var_s + "F2MY1HWYxVj2Jw3DuRJonKYBgggSRAlIYw6B0ThGFgPAkFUDAhBMfZRiGNAkFECZnm4YQdneJwqnsSQrGAAhWAIJBJBIQgFCQIBiEIAglgqYo0i4V4MEgRI9gSToYFSb";
		var_s = var_s + "4Fk6Y4+BmBZhFOJgTC8TBogQAArgqco4muCZOkOMJtgmYpIjYKg7GKE4uCUK4AAKKg2DwI4DiCZw5k6KJ2D6D4OHiag4DwIxiiQAArAqMosnEPBPAOIhOg+DozjIJ4PG";
		var_s = var_s + "SY4iEwPAkhKLhHUUSQsnKFCnkYU9MjORhcCsAAIACLQ8iaSJ6FKC5jJoaobA8KYoACCRKnmMJzhuDpZnSboMCKGJ4nMPIPDmYAACwKIDk6CoLCeU40m6I5oliMoKDyaI";
		var_s = var_s + "CokLIpgoThviOKJoGYf4KmUKhMjMLJLCAAojCyaYoiYGoGmqM46CkOwPEoKonAACxKlSdItmiWBeBeDgrioNo3D0KxSlAAAtgsUpYnUPRPEoco8hCa+T40SxbBRj5tEs";
		var_s = var_s + "HJ1i6JhbGYS4ug8awelQLZAAKZI5C4DxrhYQ9ehmUppWiA48nAPRuFKYpiAAC47laZQ9iuKZSgOPotkuFI7C6C4gACPJAm8eQOhOQZoikDp3kCS5AACPoEk8fBGnqQgp";
		var_s = var_s + "DOSppD2TxjlyPZD6CfwekQTx5lKP5ImseZTCAL5MAMAAAkoTADmMLpIjISp+HSS4PgyMAADBzAHDSIoPCOUpWjObIKE8NJOHKIwPEaTprBsHpdjWLB9AieQ+DQYwQAAM";
		var_s = var_s + "R1EOZxWi+bx7HcWQ8msfRYnnDhQACRwxgwc5rGaMZPE0ZxqjWNZtgyRwAAyTZEnuXJzEyAx2kQcxNkye5cEy3cYAcANrGAIH4OAhx3gNGGPAfgIR8jBA4McBMARViHH4";
		var_s = var_s + "HQOYmxuCpF2MsecEQVBvGQCcIQvA6i2CAAIARAQ=";
		com_Appearance.Add(1,COMVariant::createFromStr(var_s));
		var_s1 = "gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzQFAYcBqGqGAAGQZxYgmFgAQhFcZQSKUOQTDKMIziYBYJhEMwwDhEIwjHCEEhsGIbJAGQBJCjWGodQLOEgzNC";
		var_s1 = var_s1 + "0IxNFCQILhEZJADKII8TTOU5UPRESwTE4cKBmKhQCo2NpKR7VUTxCKQahLLivoCjBT8EzHMqtIzrCA6MpaP4pQjKcqwHJ8YyHEi0ZrjazKaj6T5AXDUcaWbbNVx3PK3a";
		var_s1 = var_s1 + "ioOpLZrqOZZYzYFoABTuJzPMSyIhxXD8cweaZvSpLExVYK9BY3PbKMgxC77QgTIpDaQMNS6PjtF43PAALLFUaNYzoOKzABMHATBIXAYJCwIIR5G7ID4BbQcCQAHL9DBa";
		var_s1 = var_s1 + "EEIAEEISgGhMGZQmocgymmIRQkIEQ2BcGgbEIRQci8XaMBqTRVgSAZHG+S5pnOep+D6f4vjec5zn0fpfmgBgAH6TRoBYBoAh+eAmAiAgPFgNArgOQpIESdoEmCOAOAqB";
		var_s1 = var_s1 + "YfFGAgaEaBgYHYFYFmIB5UiGCJUgKCgmgeYoHk4BgCmKRQiCwApgHgYgyH8B54lQU4NkMeJlBoDgjkiXBTg0R54iYIR+koeQVBoKpkgkChKhEJBkF4SFEjkDgJhFQoeE";
		var_s1 = var_s1 + "mDJlBeehUhWJQJGIXoICWOQ6FeFIlhkfhlDsSJpiQVoamaSY2G6G5nAmRhpCOH5pkwVYdmeCZmHqHpnkmdhzhmaAIFiax8AABAEICA==";
		com_Appearance.Add(2,COMVariant::createFromStr(var_s1));
	exgantt1.BackColorHeader(0x1000000);
	exgantt1.ForeColorHeader(WinApi::RGB2int(128,128,128));
	exgantt1.Background(0/*exHeaderFilterBarButton*/,0x2000000);
	exgantt1.Background(26/*exBackColorFilter*/,WinApi::RGB2int(255,255,255));
	exgantt1.Background(27/*exForeColorFilter*/,WinApi::RGB2int(0,0,1));
	exgantt1.Background(20/*exSelBackColorFilter*/,0x1ff8000);
	exgantt1.Background(21/*exSelForeColorFilter*/,WinApi::RGB2int(240,240,240));
	exgantt1.Background(32/*exCursorHoverColumn*/,-1);
	exgantt1.HeaderHeight(24);
	exgantt1.BackColorLevelHeader(exgantt1.BackColor());
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Filter")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.DisplayFilterPattern(false);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
		com_Column.Def(52/*exHeaderPaddingLeft*/,COMVariant::createFromInt(2));
		com_Column.Def(53/*exHeaderPaddingRight*/,COMVariant::createFromInt(2));
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("A");
		com_Items.AddItem("B");
		com_Items.AddItem("C");
		com_Items.AddItem("D");
	exgantt1.EndUpdate();
}
959
How do I use the ColumnsFloatBarVisible on exColumnsFloatBarVisibleIncludeCheckColumns

public void init()
{
	COM com_Columns;
	anytype var_Columns;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ColumnAutoResize(false);
	exgantt1.HeaderAppearance(4/*Etched*/);
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		com_Columns.Add("City");
		COM::createFromVariant(com_Columns.Add("Start")).Visible(false);
		COM::createFromVariant(com_Columns.Add("End")).Visible(false);
	exgantt1.Description(26/*exColumnsFloatBar*/,"Show/Hide");
	exgantt1.ColumnsFloatBarSortOrder(1/*SortAscending*/);
	exgantt1.ColumnsFloatBarVisible(2/*exColumnsFloatBarVisibleIncludeCheckColumns*/);
	exgantt1.EndUpdate();
}
958
How do I use the ColumnsFloatBarVisible on exColumnsFloatBarVisibleIncludeHiddenColumn

public void init()
{
	COM com_Columns;
	anytype var_Columns;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ColumnAutoResize(false);
	exgantt1.HeaderAppearance(4/*Etched*/);
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		com_Columns.Add("City");
		COM::createFromVariant(com_Columns.Add("Start")).Visible(false);
		COM::createFromVariant(com_Columns.Add("End")).Visible(false);
	exgantt1.Description(26/*exColumnsFloatBar*/,"Show");
	exgantt1.ColumnsFloatBarVisible(-1/*exColumnsFloatBarVisibleIncludeHiddenColumns*/);
	exgantt1.ColumnsFloatBarSortOrder(1/*SortAscending*/);
	exgantt1.EndUpdate();
}
957
Type of wraps the cell's caption support (Sample 2)

public void init()
{
	COM com_Column,com_Column1,com_Column2,com_Columns,com_Items;
	anytype var_Column,var_Column1,var_Column2,var_Columns,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.HeaderSingleLine(false);
	exgantt1.HeaderHeight(36);
	exgantt1.DrawGridLines(-2/*exRowLines*/);
	exgantt1.ColumnAutoResize(false);
	exgantt1.ScrollBySingleLine(true);
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		var_Column = COM::createFromVariant(com_Columns.Add("Single-Line (exCaptionSingleLine)")); com_Column = var_Column;
			com_Column.Width(96);
			com_Column.Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
			com_Column.Def(16/*exCellSingleLine*/,COMVariant::createFromInt(-1));
		var_Column1 = COM::createFromVariant(com_Columns.Add("Word-Wrap (exCaptionWordWrap)")); com_Column1 = var_Column1;
			com_Column1.Width(96);
			com_Column1.Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
			com_Column1.Def(16/*exCellSingleLine*/,COMVariant::createFromInt(0));
			com_Column1.FormatColumn("%0");
		var_Column2 = COM::createFromVariant(com_Columns.Add("Break-Wrap (exCaptionBreakWrap)")); com_Column2 = var_Column2;
			com_Column2.Width(96);
			com_Column2.Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
			com_Column2.Def(16/*exCellSingleLine*/,COMVariant::createFromInt(1));
			com_Column2.FormatColumn("%0");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.");
		com_Items.AddItem("This is the <b>first</b> line.\\r\\nThis is the <b>second</b> line.\\r\\nThis is the <b>third</b> line.");
	exgantt1.EndUpdate();
}
956
Type of wraps the cell's caption support (Sample 1)

public void init()
{
	COM com_Items;
	anytype var_Items;
	int h;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.HeaderSingleLine(false);
	exgantt1.HeaderHeight(36);
	exgantt1.DrawGridLines(-2/*exRowLines*/);
	exgantt1.ColumnAutoResize(false);
	exgantt1.ScrollBySingleLine(true);
	COM::createFromVariant(exgantt1.Columns().Add("Default")).Width(128);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("This is the first line.\\r\\nThis is the second line.\\r\\nThis is the third line.");
		h = com_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.");
		com_Items.CellCaptionFormat(h,COMVariant::createFromInt(0),1/*exHTML*/);
		h = com_Items.AddItem("This is the first line.\\r\\nThis is the second line.\\r\\nThis is the third line.");
		com_Items.CellSingleLine(h,COMVariant::createFromInt(0),0/*exCaptionWordWrap*/);
		h = com_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.");
		com_Items.CellCaptionFormat(h,COMVariant::createFromInt(0),1/*exHTML*/);
		com_Items.CellSingleLine(h,COMVariant::createFromInt(0),0/*exCaptionWordWrap*/);
		h = com_Items.AddItem("This is the first line.\\r\\nThis is the second line.\\r\\nThis is the third line.");
		com_Items.CellSingleLine(h,COMVariant::createFromInt(0),1/*exCaptionBreakWrap*/);
		h = com_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.");
		com_Items.CellCaptionFormat(h,COMVariant::createFromInt(0),1/*exHTML*/);
		com_Items.CellSingleLine(h,COMVariant::createFromInt(0),1/*exCaptionBreakWrap*/);
	exgantt1.EndUpdate();
}
955
Can I break the cell's caption using the line break <br> or \r\n (Sample 2)

public void init()
{
	COM com_Items;
	anytype var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.DrawGridLines(-2/*exRowLines*/);
	exgantt1.ColumnAutoResize(false);
	exgantt1.ScrollBySingleLine(true);
	COM::createFromVariant(exgantt1.Columns().Add("Default")).Width(128);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellSingleLine(com_Items.AddItem("This is the first line.\\r\\nThis is the second line.\\r\\nThis is the third line."),COMVariant::createFromInt(0),1/*exCaptionBreakWrap*/);
		com_Items.AddItem("This is the first line.\\r\\nThis is the second line.\\r\\nThis is the third line.");
	exgantt1.EndUpdate();
}
954
Can I break the cell's caption using the line break <br> or \r\n (Sample 1)

public void init()
{
	COM com_Column,com_Items;
	anytype var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.DrawGridLines(-2/*exRowLines*/);
	exgantt1.ColumnAutoResize(false);
	exgantt1.ScrollBySingleLine(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Default")); com_Column = var_Column;
		com_Column.Width(128);
		com_Column.Def(16/*exCellSingleLine*/,COMVariant::createFromInt(1));
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("This is the first line.\\r\\nThis is the second line.\\r\\nThis is the third line.");
		com_Items.AddItem("This is the first line.\\r\\nThis is the second line.\\r\\nThis is the third line.");
	exgantt1.EndUpdate();
}
953
How can I change the visual appearance/color of the Filter For ... field

public void init()
{
	COM com_Column,com_Items;
	anytype var_Column,var_Items;
	int h;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	exgantt1.BackColorHeader(WinApi::RGB2int(1,0,0));
	exgantt1.ForeColorHeader(WinApi::RGB2int(255,255,255));
	exgantt1.Background(26/*exBackColorFilter*/,exgantt1.BackColorHeader());
	exgantt1.Background(27/*exForeColorFilter*/,exgantt1.ForeColorHeader());
	exgantt1.Background(0/*exHeaderFilterBarButton*/,WinApi::RGB2int(240,240,240));
	exgantt1.Background(32/*exCursorHoverColumn*/,-1);
	exgantt1.HeaderAppearance(5/*Bump*/);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Items")); com_Column = var_Column;
		com_Column.FilterOnType(true);
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(2/*exNoItems*/);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Root 1");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
		com_Items.ExpandItem(h,true);
		h = com_Items.AddItem("Root 2");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
	exgantt1.EndUpdate();
}
952
How can I display the cell's caption without spaces on both sides

public void init()
{
	COM com_Column,com_Items;
	anytype var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ColumnAutoResize(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Default")); com_Column = var_Column;
		com_Column.Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
		com_Column.FormatColumn("((trim(value) replace `   ` with ` `) replace `  ` with ` `) replace ` ` with `<bgcolor=FF0000> </bgcolor>`");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("");
		com_Items.AddItem("Item A");
		com_Items.AddItem("    Item B");
		com_Items.AddItem("        Item   C    ");
	exgantt1.EndUpdate();
}
951
How can I highlight the spaces within the column (sample 2)

public void init()
{
	COM com_Column,com_Items;
	anytype var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ColumnAutoResize(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Default")); com_Column = var_Column;
		com_Column.Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
		com_Column.FormatColumn("`'` + ( value replace ` ` with `_` ) + `'`");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("");
		com_Items.AddItem("Item A");
		com_Items.AddItem("    Item B");
		com_Items.AddItem("        Item   C    ");
	exgantt1.EndUpdate();
}
950
How can I highlight the spaces within the column (sample 1)

public void init()
{
	COM com_Column,com_Items;
	anytype var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ColumnAutoResize(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Default")); com_Column = var_Column;
		com_Column.Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
		com_Column.FormatColumn("len(value) = 0 ? `<bgcolor=FF0000> </bgcolor>` : ( value replace ` ` with `<bgcolor=FF0000> </bgcolor>` )");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("");
		com_Items.AddItem("Item A");
		com_Items.AddItem("    Item B");
		com_Items.AddItem("        Item   C    ");
	exgantt1.EndUpdate();
}
949
How can I change the visual aspect of the drop down filter-calendar

public void init()
{
	COM com_Column;
	anytype var_Column;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.Background(26/*exBackColorFilter*/,WinApi::RGB2int(0,0,1));
	exgantt1.Background(27/*exForeColorFilter*/,WinApi::RGB2int(255,255,255));
	exgantt1.Background(12/*exDateScrollRange*/,WinApi::RGB2int(255,255,255));
	exgantt1.Background(8/*exDateHeader*/,exgantt1.Background(26/*exBackColorFilter*/));
	exgantt1.Background(11/*exDateScrollThumb*/,WinApi::RGB2int(128,128,128));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Date")); com_Column = var_Column;
		com_Column.FilterType(4/*exDate*/);
		com_Column.DisplayFilterButton(true);
		com_Column.DisplayFilterDate(true);
		com_Column.DisplayFilterPattern(false);
	exgantt1.EndUpdate();
}
948
Export Data in HTML format

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	COM com_Items;
	anytype var_Items;
	int i;
	;
	var_Items = exgantt1.Items(); com_Items = var_Items;
		i = com_Items.ItemToIndex(_Item);
		com_Items.AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("1/2/2008",213)),COMVariant::createFromDate(str2Date("1/9/2008",213)),"");
		com_Items.ItemBar(_Item,"",514/*exBarDuration*/,i);
		com_Items.ItemBar(_Item,"",515/*exBarMove*/,i);
		com_Items.CellCaption(_Item,COMVariant::createFromInt(1),com_Items.ItemBar(_Item,"",1/*exBarStart*/));
		com_Items.CellCaption(_Item,COMVariant::createFromInt(2),com_Items.ItemBar(_Item,"",2/*exBarEnd*/));
}

public void init()
{
	COM com_Chart,com_Columns,com_ConditionalFormat,com_ConditionalFormat1,com_Items,com_ShellBrowserWindow;
	anytype var_Chart,var_Columns,var_ConditionalFormat,var_ConditionalFormat1,var_Items,var_ShellBrowserWindow;
	int i;
	str sFile,var_s;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.BackColorAlternate(WinApi::RGB2int(240,240,240));
	exgantt1.DrawGridLines(-1/*exAllLines*/);
	exgantt1.HeaderAppearance(4/*Etched*/);
	exgantt1.Description(11/*exFilterBarAnd*/,exgantt1.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",COMVariant::createFromStr(exgantt1.Description(11/*exFilterBarAnd*/))));
	var_s = "(( ( value replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `";
	var_s = var_s + "[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( match";
	var_s = var_s + "itemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcoun";
	var_s = var_s + "t + ` item(s)`) )))";
	exgantt1.FilterBarCaption(var_s);
	exgantt1.FilterBarPromptVisible(2579/*exFilterBarCompact | exFilterBarShowCloseIfRequired | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/);
	exgantt1.FilterBarPromptType(2/*exFilterPromptContainsAny*/);
	exgantt1.DrawGridLines(-1/*exAllLines*/);
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.DrawGridLines(-1/*exAllLines*/);
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,196);
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("1/1/2008",213)));
		com_Chart.FirstWeekDay(1/*exMonday*/);
	var_ConditionalFormat = COM::createFromObject(exgantt1.ConditionalFormats()).Add("(%2 - %1) = 3","K3"); com_ConditionalFormat = var_ConditionalFormat;
		com_ConditionalFormat.ForeColor(WinApi::RGB2int(255,0,0));
		com_ConditionalFormat.BarColor(com_ConditionalFormat.ForeColor());
		com_ConditionalFormat.ApplyToBars("Task");
	var_ConditionalFormat1 = COM::createFromObject(exgantt1.ConditionalFormats()).Add("(%2 - %1) = 5","K5"); com_ConditionalFormat1 = var_ConditionalFormat1;
		com_ConditionalFormat1.ForeColor(WinApi::RGB2int(0,255,0));
		com_ConditionalFormat1.BarColor(com_ConditionalFormat1.ForeColor());
		com_ConditionalFormat1.ApplyToBars("Task");
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		COM::createFromVariant(com_Columns.Add("Tasks")).Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Columns.Add("Start");
		com_Columns.Add("End");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Task 1");
		com_Items.AddItem("Task 2");
		com_Items.AddItem("Task 3");
		com_Items.AddItem("Task 4");
		com_Items.AddItem("Task 5");
		com_Items.AddItem("Task 6");
		com_Items.AddItem("Task 7");
		com_Items.AddItem("Task 8");
	exgantt1.EndUpdate();
	sFile = "c:/temp/export.html";
	exgantt1.Export(sFile,"vis");
	// Add 'Microsoft Internet Controls(ieframe.dll)' reference to your project.
	var_ShellBrowserWindow = COM::createFromObject(new SHDocVw.ShellBrowserWindow()); com_ShellBrowserWindow = var_ShellBrowserWindow;
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,196);
}
*/
947
Export Data in CSV format

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	COM com_Items;
	anytype var_Items;
	int i;
	;
	var_Items = exgantt1.Items(); com_Items = var_Items;
		i = com_Items.ItemToIndex(_Item);
		com_Items.AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("1/2/2008",213)),COMVariant::createFromDate(str2Date("1/9/2008",213)),"");
		com_Items.ItemBar(_Item,"",514/*exBarDuration*/,i);
		com_Items.ItemBar(_Item,"",515/*exBarMove*/,i);
		com_Items.CellCaption(_Item,COMVariant::createFromInt(1),com_Items.ItemBar(_Item,"",1/*exBarStart*/));
		com_Items.CellCaption(_Item,COMVariant::createFromInt(2),com_Items.ItemBar(_Item,"",2/*exBarEnd*/));
}

public void init()
{
	COM com_Chart,com_Columns,com_ConditionalFormat,com_ConditionalFormat1,com_Items;
	anytype var_Chart,var_Columns,var_ConditionalFormat,var_ConditionalFormat1,var_Items;
	int i;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.BackColorAlternate(WinApi::RGB2int(240,240,240));
	exgantt1.DrawGridLines(-1/*exAllLines*/);
	exgantt1.HeaderAppearance(4/*Etched*/);
	exgantt1.Description(11/*exFilterBarAnd*/,exgantt1.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",COMVariant::createFromStr(exgantt1.Description(11/*exFilterBarAnd*/))));
	var_s = "(( ( value replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `";
	var_s = var_s + "[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( match";
	var_s = var_s + "itemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcoun";
	var_s = var_s + "t + ` item(s)`) )))";
	exgantt1.FilterBarCaption(var_s);
	exgantt1.FilterBarPromptVisible(2579/*exFilterBarCompact | exFilterBarShowCloseIfRequired | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/);
	exgantt1.FilterBarPromptType(2/*exFilterPromptContainsAny*/);
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,196);
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("1/1/2008",213)));
	var_ConditionalFormat = COM::createFromObject(exgantt1.ConditionalFormats()).Add("(%2 - %1) = 3","K3"); com_ConditionalFormat = var_ConditionalFormat;
		com_ConditionalFormat.ForeColor(WinApi::RGB2int(255,0,0));
		com_ConditionalFormat.BarColor(com_ConditionalFormat.ForeColor());
		com_ConditionalFormat.ApplyToBars("Task");
	var_ConditionalFormat1 = COM::createFromObject(exgantt1.ConditionalFormats()).Add("(%2 - %1) = 5","K5"); com_ConditionalFormat1 = var_ConditionalFormat1;
		com_ConditionalFormat1.ForeColor(WinApi::RGB2int(0,255,0));
		com_ConditionalFormat1.BarColor(com_ConditionalFormat1.ForeColor());
		com_ConditionalFormat1.ApplyToBars("Task");
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		COM::createFromVariant(com_Columns.Add("Tasks")).Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Columns.Add("Start");
		com_Columns.Add("End");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Task 1");
		com_Items.AddItem("Task 2");
		com_Items.AddItem("Task 3");
		com_Items.AddItem("Task 4");
		com_Items.AddItem("Task 5");
		com_Items.AddItem("Task 6");
		com_Items.AddItem("Task 7");
		com_Items.AddItem("Task 8");
	exgantt1.EndUpdate();
	print( exgantt1.Export("","vis") );
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,196);
}
*/
946
Is it possible to check multiple-items at once
// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	COM com_Items;
	COMVariant bHasParent;
	anytype var_Items;
	;
	bHasParent = exgantt1.FormatABC("value != 0",exgantt1.Items().ItemParent(_Item));
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellHasCheckBox(_Item,COMVariant::createFromInt(0),bHasParent);
}

public void init()
{
	COM com_Column,com_Items;
	COMVariant bHasParent;
	anytype var_Column,var_Items;
	int h,hChild;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Tasks")); com_Column = var_Column;
		com_Column.Def(17/*exCellCaptionFormat*/,COMVariant::createFromInt(1));
		com_Column.FormatColumn("value + (%CS0 = 1 ? `<r><fgcolor=808080>(checked)` : ``)");
	exgantt1.HeaderVisible(1);
	exgantt1.SingleSel(false);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Project");
		hChild = com_Items.InsertItem(h,,"Task 1");
		hChild = com_Items.InsertItem(h,,"Task 2");
		hChild = com_Items.InsertItem(h,,"Task 3");
		com_Items.ExpandItem(h,true);
		com_Items.LockedItemCount(0/*TopAlignment*/,1);
		com_Items.CellCaption(com_Items.LockedItem(0/*TopAlignment*/,0),COMVariant::createFromInt(0),"<c>Select multiple items and press the <b>SPACE</b> key");
	exgantt1.EndUpdate();
}
945
How can I get the icon from the cell when using the Items.CellImages property (icon index)

// MouseMove event - Occurs when the user moves the mouse.
void onEvent_MouseMove(int   _Button,int   _Shift,int   _X,int   _Y)
{
	int i;
	;
	i = exgantt1.ItemFromPoint(-1,-1,c,hit);
	print( exgantt1.FormatABC("( 0x44 = ( value bitand 0x44 ) ) ? ( ( (value bitand 0xFFFF0000) bitshift 16 ) array B split `,` )  : `no image`",hit,exgantt1.Items().CellImages(i,c)) );
}

public void init()
{
	COM com_Items;
	anytype var_Items;
	int i;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql";
	var_s = var_s + "Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0";
	var_s = var_s + "ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN";
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	/*should be called during the form's activate method*/ exgantt1.Chart().PaneWidth(true,0);
	exgantt1.Columns().Add("Default");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellImages(com_Items.AddItem("Item 1"),COMVariant::createFromInt(0),"3,2,1");
		com_Items.CellImages(com_Items.AddItem("Item 2"),COMVariant::createFromInt(0),"2,3");
		com_Items.CellImages(com_Items.AddItem("Item 3"),COMVariant::createFromInt(0),"2,");
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(true,0);
}
*/
944
How can I get the icon from the cell when using the Items.CellImages property (icon position within the cell)

// MouseMove event - Occurs when the user moves the mouse.
void onEvent_MouseMove(int   _Button,int   _Shift,int   _X,int   _Y)
{
	int i;
	;
	i = exgantt1.ItemFromPoint(-1,-1,c,hit);
	print( exgantt1.FormatABC("( 0x44 = ( value bitand 0x44 ) ) ? 1 + ( (value bitand 0xFFFF0000) bitshift 16 ) : `no image`",hit) );
}

public void init()
{
	COM com_Items;
	anytype var_Items;
	int i;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql";
	var_s = var_s + "Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0";
	var_s = var_s + "ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN";
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	/*should be called during the form's activate method*/ exgantt1.Chart().PaneWidth(true,0);
	exgantt1.Columns().Add("Default");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellImages(com_Items.AddItem("Item 1"),COMVariant::createFromInt(0),"3,2,1");
		com_Items.CellImages(com_Items.AddItem("Item 2"),COMVariant::createFromInt(0),"2,3");
		com_Items.CellImages(com_Items.AddItem("Item 3"),COMVariant::createFromInt(0),"2");
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(true,0);
}
*/
943
Is it possible to change the visual appearance of the position signs when user changes the column's position by drag and drop
public void init()
{
	COM com_Appearance,com_Columns;
	anytype var_Appearance,var_Columns;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.HeaderAppearance(4/*Etched*/);
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		com_Columns.Add("Column 1");
		com_Columns.Add("Column 2");
		com_Columns.Add("Column 3");
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s = "gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADKMA4SOKIZhrE4bBhGaQRUgyI43RhHUBzVI";
		var_s = var_s + "UcQvE6TZRHCQYHgkNIhDJIM7TPLkeSVJaTIRoKhJUogApQThTMgVRDEThkGoSa6soSoYTDBKybLrSLKagOT5YUDKUqSdKEZRpEq1YztWbaQoCUoqVRRVIWfbNd4JJa4a";
		var_s = var_s + "DhWpYdpeeY5R7bWLgBYVVABL7LLRsSxpHxPF6RXxaeI3GKsaS8G6ic6nPQMHj7I4NS5pUa6Rh2VYNSa8AAtETRYznOw4bTMXAjNIea5bAYIIR5HIoDzVbQcCQAHL9DBe";
		var_s = var_s + "EMIQEEISgGhMGZQmocgymoYRRCIEQ0G2HYBnEIBig4V4zCQGINnmagCECY43medZ6H2Pw/g+X5fnueh/h+R5+AKABfkMWgGgGYA4AICoCGCE5WA4CphACMgSD2IRIDIB";
		var_s = var_s + "ICmEd5YGCBpRjGBgegWIYIgWdgoGIRQsiKCZiAiJZ0gGQI4jUS4LECOAiBmDJflGfg2BSY4Al4OhGkOCJ2DgFJjGGfgqgiH5Ch4RhGkqOQmEOEpkFkHQYhJRYyESAokG";
		var_s = var_s + "KHhIhKIxJEmf4VGUeRGFmF5iBkchPhYJQ5GoYIZg6Ug6GoFYmkmNhuhulRGHKGoImefh0BUZ4JmYeoemeSZ2H6HQmgoBgXDqXwUAQgI=";
		com_Appearance.Add(1,COMVariant::createFromStr(var_s));
		com_Appearance.Add(2,"CP:1 0 -36 0 0");
	exgantt1.Background(182/*exColumnsPositionSign*/,0x2000000);
	exgantt1.EndUpdate();
}
942
A black portion is shown while I am using the BackColorAlternate with EBN colors. What can I do

public void init()
{
	COM com_Column,com_Column1,com_ConditionalFormat,com_Items;
	anytype var_Column,var_Column1,var_ConditionalFormat,var_Items;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ColumnAutoResize(true);
	exgantt1.DefaultItemHeight(20);
	var_s = "gBFLBCJwBAEHhEJAAEhIDhAxHAxg0HG0Mg4xGI3HMOig3GcJiYAf8jAEhhUnAAyhEqg8hk0oAsIjgAiAwmYxGA4mYzGwwkI0i0ooUnB0IBMIl1Dg8zmYyGolptPkI1mY";
	var_s = var_s + "1GAll9KoUslNIrVCqNQldShFUstXAVfrVcrlZtVhuFnsUHq1zoczoQGhFBkNpg6zbDykUkhsPHE2h85nc9n8xtVDtlex9Msd2p1YstVq9ux8HyMtzuFz1PsNTzQlv2hh";
	var_s = var_s + "WfkuqpeVuN0q+nvEooN5veSAGpkb/ACcZrvhU3w83nM/poxGuchGpoVBvWgg+8knA4WimnFxI45Er5XOlHMg/Q3XU33W4ew9Wyu11mchDagcO7zus8VDoNBBEIKBpMY6";
	var_s = var_s + "DqOQyokhA/IQIQmwMk4bIQFDcoO6LWgwhQkNcABwEyAB5GwWbet6cRQg3DENQ5D8QxADZvEkAB8nabsURGeBpFM3pwE2AEZRpDx/neZpOR3Dz9oO/r/wCMoZNTBQAQRJ";
	var_s = var_s + "SEwYg8HPGhEIoNCaEwq10gQ2WcRt7LcRxRFpuxUAEURQ3sczBEMgTTG8gN7HpOSEAEiQBAQZpmQ0DibPUFwbKcHwkhQoQtNQNzNEMbABOKDy/DMYQzHLeoPL0OTJSUd0";
	var_s = var_s + "pHcxTewk5zrIygIRPslz4lEngBKIAQivgASs/kLSBTlO00f8t0vGcgUbDlDRjXLCUNRERRvRgAHW2oAICA==";
	exgantt1.VisualAppearance().Add(1,COMVariant::createFromStr(var_s));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Default")); com_Column = var_Column;
		com_Column.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column.PartialCheck(true);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Position")); com_Column1 = var_Column1;
		com_Column1.FormatColumn("1 rindex ``");
		com_Column1.Visible(false);
	var_ConditionalFormat = COM::createFromObject(exgantt1.ConditionalFormats()).Add("%C1 mod 2"); com_ConditionalFormat = var_ConditionalFormat;
		com_ConditionalFormat.BackColor(0x1000000);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item 1");
		com_Items.AddItem("Item 2");
		com_Items.AddItem("Item 3");
		com_Items.AddItem("Item 4");
	exgantt1.EndUpdate();
}
941
How can I specify alternate background colors for each root item, similar with BackColorAlternate

public void init()
{
	COM com_Column,com_Column1,com_ConditionalFormat,com_Items;
	anytype var_Column,var_Column1,var_ConditionalFormat,var_Items;
	int h;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Default")); com_Column = var_Column;
		com_Column.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column.PartialCheck(true);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Position")); com_Column1 = var_Column1;
		com_Column1.FormatColumn("( ( 1:=( ( 0:=(1 rpos '') ) lfind `.`) ) < 0 ? =:0 : (=:0 left =:1) )");
		com_Column1.Visible(false);
	var_ConditionalFormat = COM::createFromObject(exgantt1.ConditionalFormats()).Add("%C1 mod 2"); com_ConditionalFormat = var_ConditionalFormat;
		com_ConditionalFormat.BackColor(WinApi::RGB2int(240,240,240));
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Root 1");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
		com_Items.ExpandItem(h,true);
		h = com_Items.AddItem("Root 2");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
		h = com_Items.AddItem("Root 3");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
	exgantt1.EndUpdate();
}
940
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 4)

public void init()
{
	COM com_Items;
	anytype var_Items;
	int h;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	var_s = "gBFLBWIgBAEHhEJAEGg6VAkHeLpgwChAOhULB8XAUUg8MAAREEHGMcgRCJ0ei8dhABDEcQAAYAQGKIYBkAKBQAGaAoDDMOQwQwAAxjGKEEwsACEIrjKCRShyCYZRhGcT";
	var_s = var_s + "SBCIZBqEqSZLiEZRQiiCYsS5GQBRWAkEwiBiEQTjea5CgOIAFS7LIqjRQEBxhIaZYIGaiQADENo9TxIMZAfBIHShK6NJABCCSQKkYx0HScRijDIEFwGIQmbKiej4DCiC";
	var_s = var_s + "QQW7OYYRVCNMQSfa8HivJyrcamfp/YBgOBYHb1eLVPR5LwfPCGUw1P6PLxkORZHimK4tSLHV7xVpMIwZFafIQhCCoHomS5NU7UNR0TQUFx9FaGX7rDDsGwLAJ6XRgF4b";
	var_s = var_s + "g2VpnHePpenAN4bH2GwHFmApSjEGBLnWOpRGOTBZHOegrE6BxPiWVJqCweQrn0LgJAWJBjwgaw1gKO5HmWch5h+fovF+G5bmich4BgfZkB8dynRUVYqiUR5rnmex/F6N";
	var_s = var_s + "4tn2AJfnebZ3DEXw3HWXgzAyIwgicKJKBKEIhCeCgiHyHYFEmSAFmqBghFIdgSCeIJygYDAyAgJx6AoIINAMOJNCgCZCGoGoLmMCI+CwJoihMNglCCIhzFCUg0EmMhgh";
	var_s = var_s + "WDBkAiQg9CUY4jEYN4Jk2IxklYJoJHIUg+CSZJSESFwkkkGI+FOFIJEIRhPhMCRJCSVoRrSBhiDgTZjHYT4PEkYhwhgJYm0SaIaiaSYuE+GQNlmCIBGCJxjhiZQ5AkMh";
	var_s = var_s + "Ag6ExJCkPhPguaAiFYUAlAkKZ0g6HoOEmWR/GHcA4m0OwIlIJIHCRgQshGJhpjoaocieaZiC6GAimkUgehIOwnGYGYIGkah6jaE4rg6SpCjKK5rEOMYlGIGIihKOgglo";
	var_s = var_s + "Foqj6L5aGaBo6CkGIkAQjiPpCAAaJILCTJQlKPACDaXJgmSaJsnCdJ4nygKEoijKQpSmKcqCpKoqysK0rivLAsSyLMtC1LYty4Lkui7LwvS+L8wDBMIwzEMUxjHMgyTK";
	var_s = var_s + "MszDNM4zzQNE0jTNQ1TWNc2DZNo2zcN03jfOA4TiOM5DlOY5zoOk6jrOw7TuO88DxPI8z0PU9j3Pg+T6Ps/D9P4/0AQFAkDQRBUGQdCEJQpC0MQ1DkPRBEUSRNFEVBhF";
	var_s = var_s + "kXRhGQ9D6Dxfh+W5gGGd4QH2XQjCmDpFFaKoVB+D5Xmed5+H8YAHnIAh9EwV5Fl0d4MkMKJICmSgygSJAoEmMUCIPgnDCCIOQFYCxJjwFoCcA4kxoF+AIJkAgExegDEg";
	var_s = var_s + "EYQInAzCUAIOEGgfxiiRDYF1Q4EQ2BSCaEQYwbAiKREMpRSymFNDIAkAxT6oVRgSA2qdVKq1WqvVirMZQUhSCnBUMoIgoQRgnGSIQUgkg1hIHYAkAYMROAmHiLsE4xxS";
	var_s = var_s + "CxBwEwCQ0wmDdBsE0GYXBtg2CSPMFIuwYiQBYBQeAcwOCnBCCZgw0g0glBONAQgqQThCGgPQGoBQfiRGmOEZIPAXjsBoPAO4HRThhA0EQSA5BAgaCKJIGg3QdhOCmNUB";
	var_s = var_s + "oQAijTCIF0FwQxpCHDIPAYYMQGgtCmFcaQtRAjZCyFYSojQ2B2BoKwIYFApBXEIBsIQ1QsAWAWEwaA1xCgjAoIAQBAQ=";
	exgantt1.VisualDesign(var_s);
	exgantt1.Columns().Add("Column");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Root 1");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
		com_Items.ExpandItem(h,true);
		h = com_Items.AddItem("Root 2");
		com_Items.InsertItem(h,,"Child");
	exgantt1.EndUpdate();
}
939
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 3)

public void init()
{
	COM com_Appearance,com_Items;
	anytype var_Appearance,var_Items;
	int h;
	str var_s,var_s1;
	;

	super();

	exgantt1.BeginUpdate();
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s = "gBFLBCJwBAEHhEJAAEhABDwCg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSB";
		var_s = var_s + "cQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfD";
		var_s = var_s + "xXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4l";
		var_s = var_s + "lWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJegef4zluaJ3nqPJeCYH4BAeX5TDLBpVGqKRRnwf4flefZtHsX54BYAR/F+EwVnUd5eAMMJKDIChygyIQpAoEh4iIJ5JlgX";
		var_s = var_s + "IcgCXpIGoFwnGEQh6BEKBgmMIICHgIJCAiUAzgyUoAhwJohkiRgygwYpiGoKwzGIcgKCkNQNCMRIbCYCRYk4QoMiOchWDwNBjhiJJaDYTRiGiFwlCQAhOE8JBJHITIRg";
		var_s = var_s + "wZRZFCFCZBkOIUhKTRpCWAwgGYQ4El4NxlBifIWCcCYCFoaoMGaKYyG6GxlBmGJdhkCAWBIeA5g4U4QhMJAImkPIShRVxGgQJRlCIUISh+SJpnCZIeBgFgiHgO4OlOMI";
		var_s = var_s + "NCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYgYiaHopiuaRakCbIsisSpGjYOwaHYKYMCkK5CA2IxrCwCwFigaJrkLTI6lcdANAEgIA=";
		com_Appearance.Add(3,COMVariant::createFromStr(var_s));
		com_Appearance.Add(1,"CP:3 -2 -2 2 2");
		var_s1 = "gBFLBCJwBAEHhEJAAEhABEICg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSB";
		var_s1 = var_s1 + "cQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfD";
		var_s1 = var_s1 + "xXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4l";
		var_s1 = var_s1 + "lWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJeg8X4rluaZ3niGB+AQHx/EyShjjEVYqiUR5rnmex/GAB5+AIf4gEeXJFHyXZ3gCTAygyAociMKBKEKBIeCiCZyHYFAnCEe";
		var_s1 = var_s1 + "Bkh+BghFgRIegOCgYCySAgh4CAkgINAMmMNIgCcCYjn4LoLmMCJGDKC5ijIagoDMYhCAoJg1A0IxEhsJgJFiThChCY5yFYPA0GOGIYloNhNGIaIXCUJACE4TwkEkchOF";
		var_s1 = var_s1 + "SFYlFkXhUCUCQZEYTglCSMxaEkYJIBmFJhDeDZZEYPwlgmQhghaGqVDoa4bGaeY6FGGZNlmFIBGEJ4jhiZQ5AkMhAg6E5JCkRoGCUSQ6B6CYiSCBIOh+DhJmmARiWQOJ";
		var_s1 = var_s1 + "tDsCJSCSBwkXSLIRicaZ6HqIIomoIguhwIpphIHoWDsJ4mCGChpmqOpGheLIOkqUo2iya4DjGJxihiQoSj4IJaDaMpCjCWoGg6PgpBiQ4tHcQJQBAgI=";
		com_Appearance.Add(4,COMVariant::createFromStr(var_s1));
		com_Appearance.Add(2,"CP:4 -2 -2 2 2");
	exgantt1.LinesAtRoot(1/*exGroupLinesAtRoot*/);
	exgantt1.HasButtons(4/*exCustom*/);
	exgantt1.HasButtonsCustom(0,16777216);
	exgantt1.HasButtonsCustom(1,33554432);
	exgantt1.Columns().Add("Column");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Root 1");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
		com_Items.ExpandItem(h,true);
		h = com_Items.AddItem("Root 2");
		com_Items.InsertItem(h,,"Child");
	exgantt1.EndUpdate();
}
938
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 2)

public void init()
{
	COM com_Appearance,com_Items;
	anytype var_Appearance,var_Items;
	int h;
	;

	super();

	exgantt1.BeginUpdate();
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		com_Appearance.Add(1,"XP:TREEVIEW 2 1");
		com_Appearance.Add(2,"XP:TREEVIEW 2 2");
	exgantt1.Background(180/*exTreeGlyphOpen*/,0x1000000);
	exgantt1.Background(181/*exTreeGlyphClose*/,0x2000000);
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	exgantt1.Columns().Add("Column");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Root 1");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
		com_Items.ExpandItem(h,true);
		h = com_Items.AddItem("Root 2");
		com_Items.InsertItem(h,,"Child");
	exgantt1.EndUpdate();
}
937
How can I find if the control is running in DPI mode
public void init()
{
	;

	super();

	print( exgantt1.FormatABC("dpi = 1 ? `normal/stretch mode` : `dpi mode`") );
}
936
How can I change the visual appearance of the +/- buttons (method 1)

public void init()
{
	COM com_Appearance,com_Items;
	anytype var_Appearance,var_Items;
	int h;
	str var_s,var_s1;
	;

	super();

	exgantt1.BeginUpdate();
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s = "gBFLBCJwBAEHhEJAAEhABDwCg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSB";
		var_s = var_s + "cQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfD";
		var_s = var_s + "xXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4l";
		var_s = var_s + "lWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJegef4zluaJ3nqPJeCYH4BAeX5TDLBpVGqKRRnwf4flefZtHsX54BYAR/F+EwVnUd5eAMMJKDIChygyIQpAoEh4iIJ5JlgX";
		var_s = var_s + "IcgCXpIGoFwnGEQh6BEKBgmMIICHgIJCAiUAzgyUoAhwJohkiRgygwYpiGoKwzGIcgKCkNQNCMRIbCYCRYk4QoMiOchWDwNBjhiJJaDYTRiGiFwlCQAhOE8JBJHITIRg";
		var_s = var_s + "wZRZFCFCZBkOIUhKTRpCWAwgGYQ4El4NxlBifIWCcCYCFoaoMGaKYyG6GxlBmGJdhkCAWBIeA5g4U4QhMJAImkPIShRVxGgQJRlCIUISh+SJpnCZIeBgFgiHgO4OlOMI";
		var_s = var_s + "NCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYgYiaHopiuaRakCbIsisSpGjYOwaHYKYMCkK5CA2IxrCwCwFigaJrkLTI6lcdANAEgIA=";
		com_Appearance.Add(1,COMVariant::createFromStr(var_s));
		var_s1 = "gBFLBCJwBAEHhEJAAEhABEICg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSB";
		var_s1 = var_s1 + "cQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfD";
		var_s1 = var_s1 + "xXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4l";
		var_s1 = var_s1 + "lWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJeg8X4rluaZ3niGB+AQHx/EyShjjEVYqiUR5rnmex/GAB5+AIf4gEeXJFHyXZ3gCTAygyAociMKBKEKBIeCiCZyHYFAnCEe";
		var_s1 = var_s1 + "Bkh+BghFgRIegOCgYCySAgh4CAkgINAMmMNIgCcCYjn4LoLmMCJGDKC5ijIagoDMYhCAoJg1A0IxEhsJgJFiThChCY5yFYPA0GOGIYloNhNGIaIXCUJACE4TwkEkchOF";
		var_s1 = var_s1 + "SFYlFkXhUCUCQZEYTglCSMxaEkYJIBmFJhDeDZZEYPwlgmQhghaGqVDoa4bGaeY6FGGZNlmFIBGEJ4jhiZQ5AkMhAg6E5JCkRoGCUSQ6B6CYiSCBIOh+DhJmmARiWQOJ";
		var_s1 = var_s1 + "tDsCJSCSBwkXSLIRicaZ6HqIIomoIguhwIpphIHoWDsJ4mCGChpmqOpGheLIOkqUo2iya4DjGJxihiQoSj4IJaDaMpCjCWoGg6PgpBiQ4tHcQJQBAgI=";
		com_Appearance.Add(2,COMVariant::createFromStr(var_s1));
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	exgantt1.Background(180/*exTreeGlyphOpen*/,0x1000000);
	exgantt1.Background(181/*exTreeGlyphClose*/,0x2000000);
	exgantt1.Columns().Add("Column");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h = com_Items.AddItem("Root 1");
		com_Items.InsertItem(h,,"Child 1");
		com_Items.InsertItem(h,,"Child 2");
		com_Items.ExpandItem(h,true);
		h = com_Items.AddItem("Root 2");
		com_Items.InsertItem(h,,"Child");
	exgantt1.EndUpdate();
}
935
How can I display the control's filter bar in the Items section only, as it was displayed before

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Column3,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Column3,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Col-1")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Col-2")); com_Column1 = var_Column1;
		com_Column1.DisplayFilterButton(true);
		com_Column1.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column2 = var_Column2;
		com_Column2.AllowSizing(false);
		com_Column2.AllowSort(false);
		com_Column2.Width(32);
		com_Column2.FormatColumn("1 apos ``");
		com_Column2.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Item A"),COMVariant::createFromInt(1),"Sub-Item A");
		com_Items.CellCaption(com_Items.AddItem("Item B"),COMVariant::createFromInt(1),"Sub-Item B");
		com_Items.CellCaption(com_Items.AddItem("Item C"),COMVariant::createFromInt(1),"Sub-Item C");
	exgantt1.FilterBarPromptVisible(4096/*exFilterBarShort*/);
	var_Column3 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(1)); com_Column3 = var_Column3;
		com_Column3.FilterType(3/*exPattern*/);
		com_Column3.Filter("*B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
934
FilterBarCaption ALL Keyword ( sample 2, result )

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	COMVariant i;
	;
	i = exgantt1.FormatABC("value + 1",exgantt1.Items().ItemToIndex(_Item));
	exgantt1.Items().CellImage(_Item,COMVariant::createFromInt(3),i);
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Column3,com_Column4,com_Column5,com_Column6,com_Items;
	COMVariant i;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Column6,var_Items;
	int h;
	str var_s,var_s1;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql";
	var_s = var_s + "Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0";
	var_s = var_s + "ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN";
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Col-1")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Col-2")); com_Column1 = var_Column1;
		com_Column1.DisplayFilterButton(true);
		com_Column1.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Check")); com_Column2 = var_Column2;
		com_Column2.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column2.DisplayFilterButton(true);
		com_Column2.DisplayFilterPattern(false);
		com_Column2.FilterType(6/*exCheck*/);
	var_Column3 = COM::createFromVariant(exgantt1.Columns().Add("Image")); com_Column3 = var_Column3;
		com_Column3.DisplayFilterButton(true);
		com_Column3.FilterType(10/*exImage*/);
		com_Column3.FilterList(9472/*exShowExclude | exShowFocusItem | exShowCheckBox*/);
	var_Column4 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column4 = var_Column4;
		com_Column4.AllowSizing(false);
		com_Column4.AllowSort(false);
		com_Column4.Width(32);
		com_Column4.FormatColumn("1 apos ``");
		com_Column4.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Item A"),COMVariant::createFromInt(1),"Sub-Item A");
		h = com_Items.AddItem("Item B");
		com_Items.CellCaption(h,COMVariant::createFromInt(1),"Sub-Item B");
		com_Items.CellState(h,COMVariant::createFromInt(2),1);
		com_Items.CellCaption(com_Items.AddItem("Item C"),COMVariant::createFromInt(1),"Sub-Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.Description(11/*exFilterBarAnd*/,exgantt1.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",COMVariant::createFromStr(exgantt1.Description(11/*exFilterBarAnd*/))));
	var_s1 = "(( ( all replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `[<";
	var_s1 = var_s1 + "s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( matchit";
	var_s1 = var_s1 + "emcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount ";
	var_s1 = var_s1 + "+ ` item(s)`) )))";
	exgantt1.FilterBarCaption(var_s1);
	exgantt1.FilterBarPromptVisible(3/*exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column5 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column5 = var_Column5;
		com_Column5.FilterType(240/*exFilter*/);
		com_Column5.Filter("Item A|Item B");
	var_Column6 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(2)); com_Column6 = var_Column6;
	com_Column6.Filter(1);
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
933
FilterBarCaption ALL Keyword ( sample 1 )

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	COMVariant i;
	;
	i = exgantt1.FormatABC("value + 1",exgantt1.Items().ItemToIndex(_Item));
	exgantt1.Items().CellImage(_Item,COMVariant::createFromInt(3),i);
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Column3,com_Column4,com_Column5,com_Column6,com_Items;
	COMVariant i;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Column6,var_Items;
	int h;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql";
	var_s = var_s + "Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0";
	var_s = var_s + "ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN";
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Col-1")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Col-2")); com_Column1 = var_Column1;
		com_Column1.DisplayFilterButton(true);
		com_Column1.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Check")); com_Column2 = var_Column2;
		com_Column2.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column2.DisplayFilterButton(true);
		com_Column2.DisplayFilterPattern(false);
		com_Column2.FilterType(6/*exCheck*/);
	var_Column3 = COM::createFromVariant(exgantt1.Columns().Add("Image")); com_Column3 = var_Column3;
		com_Column3.DisplayFilterButton(true);
		com_Column3.FilterType(10/*exImage*/);
		com_Column3.FilterList(9472/*exShowExclude | exShowFocusItem | exShowCheckBox*/);
	var_Column4 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column4 = var_Column4;
		com_Column4.AllowSizing(false);
		com_Column4.AllowSort(false);
		com_Column4.Width(32);
		com_Column4.FormatColumn("1 apos ``");
		com_Column4.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Item A"),COMVariant::createFromInt(1),"Sub-Item A");
		h = com_Items.AddItem("Item B");
		com_Items.CellCaption(h,COMVariant::createFromInt(1),"Sub-Item B");
		com_Items.CellState(h,COMVariant::createFromInt(2),1);
		com_Items.CellCaption(com_Items.AddItem("Item C"),COMVariant::createFromInt(1),"Sub-Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.Description(11/*exFilterBarAnd*/,exgantt1.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",COMVariant::createFromStr(exgantt1.Description(11/*exFilterBarAnd*/))));
	exgantt1.FilterBarCaption("all");
	exgantt1.FilterBarPromptVisible(3/*exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column5 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column5 = var_Column5;
		com_Column5.FilterType(240/*exFilter*/);
		com_Column5.Filter("Item A|Item B");
	var_Column6 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(2)); com_Column6 = var_Column6;
	com_Column6.Filter(1);
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
932
FilterBarCaption ALLUI Keyword ( sample 2, result )

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	COMVariant i;
	;
	i = exgantt1.FormatABC("value + 1",exgantt1.Items().ItemToIndex(_Item));
	exgantt1.Items().CellImage(_Item,COMVariant::createFromInt(3),i);
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Column3,com_Column4,com_Column5,com_Column6,com_Items;
	COMVariant i;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Column6,var_Items;
	int h;
	str var_s,var_s1;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql";
	var_s = var_s + "Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0";
	var_s = var_s + "ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN";
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Col-1")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Col-2")); com_Column1 = var_Column1;
		com_Column1.DisplayFilterButton(true);
		com_Column1.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Check")); com_Column2 = var_Column2;
		com_Column2.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column2.DisplayFilterButton(true);
		com_Column2.DisplayFilterPattern(false);
		com_Column2.FilterType(6/*exCheck*/);
	var_Column3 = COM::createFromVariant(exgantt1.Columns().Add("Image")); com_Column3 = var_Column3;
		com_Column3.DisplayFilterButton(true);
		com_Column3.FilterType(10/*exImage*/);
		com_Column3.FilterList(9472/*exShowExclude | exShowFocusItem | exShowCheckBox*/);
	var_Column4 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column4 = var_Column4;
		com_Column4.AllowSizing(false);
		com_Column4.AllowSort(false);
		com_Column4.Width(32);
		com_Column4.FormatColumn("1 apos ``");
		com_Column4.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Item A"),COMVariant::createFromInt(1),"Sub-Item A");
		h = com_Items.AddItem("Item B");
		com_Items.CellCaption(h,COMVariant::createFromInt(1),"Sub-Item B");
		com_Items.CellState(h,COMVariant::createFromInt(2),1);
		com_Items.CellCaption(com_Items.AddItem("Item C"),COMVariant::createFromInt(1),"Sub-Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.Description(11/*exFilterBarAnd*/,exgantt1.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",COMVariant::createFromStr(exgantt1.Description(11/*exFilterBarAnd*/))));
	var_s1 = "(( ( allui replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `";
	var_s1 = var_s1 + "[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( match";
	var_s1 = var_s1 + "itemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcoun";
	var_s1 = var_s1 + "t + ` item(s)`) )))";
	exgantt1.FilterBarCaption(var_s1);
	exgantt1.FilterBarPromptVisible(3/*exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column5 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column5 = var_Column5;
		com_Column5.FilterType(240/*exFilter*/);
		com_Column5.Filter("Item A|Item B");
	var_Column6 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(2)); com_Column6 = var_Column6;
	com_Column6.Filter(1);
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
931
FilterBarCaption ALLUI Keyword ( sample 1 )

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	COMVariant i;
	;
	i = exgantt1.FormatABC("value + 1",exgantt1.Items().ItemToIndex(_Item));
	exgantt1.Items().CellImage(_Item,COMVariant::createFromInt(3),i);
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Column3,com_Column4,com_Column5,com_Column6,com_Items;
	COMVariant i;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Column6,var_Items;
	int h;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql";
	var_s = var_s + "Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0";
	var_s = var_s + "ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN";
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Col-1")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Col-2")); com_Column1 = var_Column1;
		com_Column1.DisplayFilterButton(true);
		com_Column1.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Check")); com_Column2 = var_Column2;
		com_Column2.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column2.DisplayFilterButton(true);
		com_Column2.DisplayFilterPattern(false);
		com_Column2.FilterType(6/*exCheck*/);
	var_Column3 = COM::createFromVariant(exgantt1.Columns().Add("Image")); com_Column3 = var_Column3;
		com_Column3.DisplayFilterButton(true);
		com_Column3.FilterType(10/*exImage*/);
		com_Column3.FilterList(9472/*exShowExclude | exShowFocusItem | exShowCheckBox*/);
	var_Column4 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column4 = var_Column4;
		com_Column4.AllowSizing(false);
		com_Column4.AllowSort(false);
		com_Column4.Width(32);
		com_Column4.FormatColumn("1 apos ``");
		com_Column4.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Item A"),COMVariant::createFromInt(1),"Sub-Item A");
		h = com_Items.AddItem("Item B");
		com_Items.CellCaption(h,COMVariant::createFromInt(1),"Sub-Item B");
		com_Items.CellState(h,COMVariant::createFromInt(2),1);
		com_Items.CellCaption(com_Items.AddItem("Item C"),COMVariant::createFromInt(1),"Sub-Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.Description(11/*exFilterBarAnd*/,exgantt1.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",COMVariant::createFromStr(exgantt1.Description(11/*exFilterBarAnd*/))));
	exgantt1.FilterBarCaption("allui");
	exgantt1.FilterBarPromptVisible(3/*exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column5 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column5 = var_Column5;
		com_Column5.FilterType(240/*exFilter*/);
		com_Column5.Filter("Item A|Item B");
	var_Column6 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(2)); com_Column6 = var_Column6;
	com_Column6.Filter(1);
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
930
FilterBarCaption AVAILABLE Keyword ( sample 2, result )

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	COMVariant i;
	;
	i = exgantt1.FormatABC("value + 1",exgantt1.Items().ItemToIndex(_Item));
	exgantt1.Items().CellImage(_Item,COMVariant::createFromInt(3),i);
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Column3,com_Column4,com_Column5,com_Column6,com_Items;
	COMVariant i;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Column6,var_Items;
	int h;
	str var_s,var_s1;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql";
	var_s = var_s + "Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0";
	var_s = var_s + "ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN";
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Col-1")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Col-2")); com_Column1 = var_Column1;
		com_Column1.DisplayFilterButton(true);
		com_Column1.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Check")); com_Column2 = var_Column2;
		com_Column2.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column2.DisplayFilterButton(true);
		com_Column2.DisplayFilterPattern(false);
		com_Column2.FilterType(6/*exCheck*/);
	var_Column3 = COM::createFromVariant(exgantt1.Columns().Add("Image")); com_Column3 = var_Column3;
		com_Column3.DisplayFilterButton(true);
		com_Column3.FilterType(10/*exImage*/);
		com_Column3.FilterList(9472/*exShowExclude | exShowFocusItem | exShowCheckBox*/);
	var_Column4 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column4 = var_Column4;
		com_Column4.AllowSizing(false);
		com_Column4.AllowSort(false);
		com_Column4.Width(32);
		com_Column4.FormatColumn("1 apos ``");
		com_Column4.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Item A"),COMVariant::createFromInt(1),"Sub-Item A");
		h = com_Items.AddItem("Item B");
		com_Items.CellCaption(h,COMVariant::createFromInt(1),"Sub-Item B");
		com_Items.CellState(h,COMVariant::createFromInt(2),1);
		com_Items.CellCaption(com_Items.AddItem("Item C"),COMVariant::createFromInt(1),"Sub-Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.Description(11/*exFilterBarAnd*/,exgantt1.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",COMVariant::createFromStr(exgantt1.Description(11/*exFilterBarAnd*/))));
	var_s1 = "(( ( value replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>` ) + ` ` + ( avai";
	var_s1 = var_s1 + "lable replace `[` with `<bgcolor=C0C0C0><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>` replace `<s>` with ``";
	var_s1 = var_s1 + " replace `</s>` with `` ) + `<fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount ";
	var_s1 = var_s1 + "+ 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount + ` item(s)`) )))";
	exgantt1.FilterBarCaption(var_s1);
	exgantt1.FilterBarPromptVisible(3/*exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column5 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column5 = var_Column5;
		com_Column5.FilterType(240/*exFilter*/);
		com_Column5.Filter("Item A|Item B");
	var_Column6 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(2)); com_Column6 = var_Column6;
	com_Column6.Filter(1);
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
929
FilterBarCaption AVAILABLE Keyword ( sample 1 )

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	COMVariant i;
	;
	i = exgantt1.FormatABC("value + 1",exgantt1.Items().ItemToIndex(_Item));
	exgantt1.Items().CellImage(_Item,COMVariant::createFromInt(3),i);
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Column3,com_Column4,com_Column5,com_Column6,com_Items;
	COMVariant i;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Column6,var_Items;
	int h;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql";
	var_s = var_s + "Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0";
	var_s = var_s + "ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN";
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=";
	exgantt1.Images(COMVariant::createFromStr(var_s));
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Col-1")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Col-2")); com_Column1 = var_Column1;
		com_Column1.DisplayFilterButton(true);
		com_Column1.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Check")); com_Column2 = var_Column2;
		com_Column2.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column2.DisplayFilterButton(true);
		com_Column2.DisplayFilterPattern(false);
		com_Column2.FilterType(6/*exCheck*/);
	var_Column3 = COM::createFromVariant(exgantt1.Columns().Add("Image")); com_Column3 = var_Column3;
		com_Column3.DisplayFilterButton(true);
		com_Column3.FilterType(10/*exImage*/);
		com_Column3.FilterList(9472/*exShowExclude | exShowFocusItem | exShowCheckBox*/);
	var_Column4 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column4 = var_Column4;
		com_Column4.AllowSizing(false);
		com_Column4.AllowSort(false);
		com_Column4.Width(32);
		com_Column4.FormatColumn("1 apos ``");
		com_Column4.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Item A"),COMVariant::createFromInt(1),"Sub-Item A");
		h = com_Items.AddItem("Item B");
		com_Items.CellCaption(h,COMVariant::createFromInt(1),"Sub-Item B");
		com_Items.CellState(h,COMVariant::createFromInt(2),1);
		com_Items.CellCaption(com_Items.AddItem("Item C"),COMVariant::createFromInt(1),"Sub-Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.Description(11/*exFilterBarAnd*/,exgantt1.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",COMVariant::createFromStr(exgantt1.Description(11/*exFilterBarAnd*/))));
	exgantt1.FilterBarCaption("value + ` ` + available");
	exgantt1.FilterBarPromptVisible(3/*exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column5 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column5 = var_Column5;
		com_Column5.FilterType(240/*exFilter*/);
		com_Column5.Filter("Item A|Item B");
	var_Column6 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(2)); com_Column6 = var_Column6;
	com_Column6.Filter(1);
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
928
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 3, results )

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Column3,com_Column4,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Items;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Col-1")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Col-2")); com_Column1 = var_Column1;
		com_Column1.DisplayFilterButton(true);
		com_Column1.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column2 = var_Column2;
		com_Column2.AllowSizing(false);
		com_Column2.AllowSort(false);
		com_Column2.Width(32);
		com_Column2.FormatColumn("1 apos ``");
		com_Column2.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Item A"),COMVariant::createFromInt(1),"Sub-Item A");
		com_Items.CellCaption(com_Items.AddItem("Item B"),COMVariant::createFromInt(1),"Sub-Item B");
		com_Items.CellCaption(com_Items.AddItem("Item C"),COMVariant::createFromInt(1),"Sub-Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.Description(11/*exFilterBarAnd*/,exgantt1.FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",COMVariant::createFromStr(exgantt1.Description(11/*exFilterBarAnd*/))));
	var_s = "(`<b>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ";
	var_s = var_s + "` result(s)` ) : (`<fgcolor=808080>`+ itemcount + ` item(s)`) )) replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace";
	var_s = var_s + " `]` with ` </b></bgcolor></fgcolor>`";
	exgantt1.FilterBarCaption(var_s);
	exgantt1.FilterBarPromptVisible(256/*exFilterBarToggle*/);
	var_Column3 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column3 = var_Column3;
		com_Column3.FilterType(240/*exFilter*/);
		com_Column3.Filter("Item A|Item B");
	var_Column4 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(1)); com_Column4 = var_Column4;
		com_Column4.FilterType(3/*exPattern*/);
		com_Column4.Filter("*B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
927
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 2 )

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Column3,com_Column4,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Col-1")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Col-2")); com_Column1 = var_Column1;
		com_Column1.DisplayFilterButton(true);
		com_Column1.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column2 = var_Column2;
		com_Column2.AllowSizing(false);
		com_Column2.AllowSort(false);
		com_Column2.Width(32);
		com_Column2.FormatColumn("1 apos ``");
		com_Column2.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Item A"),COMVariant::createFromInt(1),"Sub-Item A");
		com_Items.CellCaption(com_Items.AddItem("Item B"),COMVariant::createFromInt(1),"Sub-Item B");
		com_Items.CellCaption(com_Items.AddItem("Item C"),COMVariant::createFromInt(1),"Sub-Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.Description(11/*exFilterBarAnd*/,exgantt1.FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",COMVariant::createFromStr(exgantt1.Description(11/*exFilterBarAnd*/))));
	exgantt1.FilterBarCaption("value replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>`");
	exgantt1.FilterBarPromptVisible(256/*exFilterBarToggle*/);
	var_Column3 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column3 = var_Column3;
		com_Column3.FilterType(240/*exFilter*/);
		com_Column3.Filter("Item A|Item B");
	var_Column4 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(1)); com_Column4 = var_Column4;
		com_Column4.FilterType(3/*exPattern*/);
		com_Column4.Filter("*B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
926
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 1 )

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Column3,com_Column4,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Col-1")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Col-2")); com_Column1 = var_Column1;
		com_Column1.DisplayFilterButton(true);
		com_Column1.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column2 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column2 = var_Column2;
		com_Column2.AllowSizing(false);
		com_Column2.AllowSort(false);
		com_Column2.Width(32);
		com_Column2.FormatColumn("1 apos ``");
		com_Column2.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.CellCaption(com_Items.AddItem("Item A"),COMVariant::createFromInt(1),"Sub-Item A");
		com_Items.CellCaption(com_Items.AddItem("Item B"),COMVariant::createFromInt(1),"Sub-Item B");
		com_Items.CellCaption(com_Items.AddItem("Item C"),COMVariant::createFromInt(1),"Sub-Item C");
	exgantt1.Description(11/*exFilterBarAnd*/,exgantt1.FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",COMVariant::createFromStr(exgantt1.Description(11/*exFilterBarAnd*/))));
	exgantt1.FilterBarCaption("value replace `[` with `<fgcolor=808080>[` replace `]` with `]</fgcolor>`");
	exgantt1.FilterBarPromptVisible(256/*exFilterBarToggle*/);
	var_Column3 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column3 = var_Column3;
		com_Column3.FilterType(240/*exFilter*/);
		com_Column3.Filter("Item A|Item B");
	var_Column4 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(1)); com_Column4 = var_Column4;
		com_Column4.FilterType(3/*exPattern*/);
		com_Column4.Filter("*B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
925
Is it possible to automatically displays the control's filter label to the right

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Item")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column1 = var_Column1;
		com_Column1.AllowSizing(false);
		com_Column1.AllowSort(false);
		com_Column1.Width(32);
		com_Column1.FormatColumn("1 apos ``");
		com_Column1.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarCaption("`<r>` + value");
	exgantt1.FilterBarPromptVisible(1280/*exFilterBarShowCloseOnRight | exFilterBarToggle*/);
	var_Column2 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column2 = var_Column2;
		com_Column2.FilterType(240/*exFilter*/);
		com_Column2.Filter("Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
924
How can I get the number of results/items being shown in the control's filter bar (sample 4)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Items;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Item")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.FilterList(9504/*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column1 = var_Column1;
		com_Column1.AllowSizing(false);
		com_Column1.AllowSort(false);
		com_Column1.Width(32);
		com_Column1.FormatColumn("1 apos ``");
		com_Column1.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.FilterBarPrompt(exgantt1.FormatABC("`<b>` + value",COMVariant::createFromStr(exgantt1.FilterBarPrompt())));
	var_s = "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount +";
	var_s = var_s + " 1) + ` result(s)` ) : (`<fgcolor=808080>`+ itemcount + ` item(s)`) )";
	exgantt1.FilterBarCaption(var_s);
	exgantt1.FilterBarPromptVisible(3591/*exFilterBarCompact | exFilterBarShowCloseOnRight | exFilterBarShowCloseIfRequired | exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible*/);
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
923
How can I get the number of results being shown in the control's filter bar (sample 3)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Items;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	var_s = "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount +";
	var_s = var_s + " 1) + ` result(s)` ) : ``)";
	exgantt1.FilterBarCaption(var_s);
	exgantt1.FilterBarPromptVisible(2055/*exFilterBarCompact | exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
		com_Column1.FilterType(240/*exFilter*/);
		com_Column1.Filter("Item A|Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
922
How can I get the number of results being shown in the control's filter bar (sample 2, compact)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.FilterBarCaption("`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? `<off -4> ` + abs(matchitemcount + 1) + ` result(s)` : ``)");
	exgantt1.FilterBarPromptVisible(2071/*exFilterBarCompact | exFilterBarSingleLine | exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
		com_Column1.FilterType(240/*exFilter*/);
		com_Column1.Filter("Item A|Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
921
How can I get the number of results being shown in the control's filter bar (sample 1)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.FilterBarCaption("`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? abs(matchitemcount + 1) + ` result(s)` : ``)");
	exgantt1.FilterBarPromptVisible(7/*exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
		com_Column1.FilterType(240/*exFilter*/);
		com_Column1.Filter("Item A|Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
920
FilterBarCaption Predefined Keywords

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

// AfterExpandItem event - Fired after an item is expanded (collapsed).
void onEvent_AfterExpandItem(int   _Item)
{
	;
	exgantt1.Refresh();
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Column2,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Column2,var_Items;
	int h;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Check")); com_Column = var_Column;
		com_Column.Def(0/*exCellHasCheckBox*/,COMVariant::createFromBoolean(true));
		com_Column.DisplayFilterButton(true);
		com_Column.DisplayFilterPattern(false);
		com_Column.FilterType(6/*exCheck*/);
	var_Column1 = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column1 = var_Column1;
		com_Column1.AllowSizing(false);
		com_Column1.AllowSort(false);
		com_Column1.Width(32);
		com_Column1.FormatColumn("1 apos ``");
		com_Column1.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		h = com_Items.AddItem("Item B");
		com_Items.CellState(com_Items.InsertItem(h,,"Sub-Item B1"),COMVariant::createFromInt(1),1);
		com_Items.InsertItem(h,,"Sub-Item B2");
		com_Items.ExpandItem(h,true);
		com_Items.AddItem("Item C");
	exgantt1.FilterInclude(1/*exItemsWithChilds*/);
	exgantt1.FilterBarFont(exgantt1.Font());
	var_s = "`<fgcolor=0000FF><i>value/current</i></fgcolor>: <fgcolor=808080>` + value + `</fgcolor>` + `<br><fgcolor=0000FF><i>available</i";
	var_s = var_s + "></fgcolor>: ` + available + `<br><fgcolor=0000FF><i>allui</i></fgcolor>: ` + allui + `<br><fgcolor=0000FF><i>all</i></fgcolor>:";
	var_s = var_s + " ` + all + `<br><fgcolor=0000FF><i>itemcount</i></fgcolor>: <fgcolor=808080>` + itemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><";
	var_s = var_s + "i>visibleitemcount</i></fgcolor>: <fgcolor=808080>` + visibleitemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><i>matchitemcount</i";
	var_s = var_s + "></fgcolor>: <fgcolor=808080>` + matchitemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><i>promptpattern</i></fgcolor>: <fgcolor=80";
	var_s = var_s + "8080>` + promptpattern + `</fgcolor>`+ `<br><fgcolor=0000FF><i>leafitemcount</i></fgcolor>: <fgcolor=808080>` + leafitemcount + ";
	var_s = var_s + "`</fgcolor>`";
	exgantt1.FilterBarCaption(var_s);
	exgantt1.FilterBarPromptPattern("B");
	exgantt1.FilterBarPromptVisible(7/*exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column2 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column2 = var_Column2;
		com_Column2.FilterType(240/*exFilter*/);
		com_Column2.Filter("Item A|Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
919
I am using filter prompt feature, and also column's filter, just wondering if possible to compact displaying the filter bar so it won't show on multiple lines

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarFont(exgantt1.Font());
	exgantt1.FilterBarCaption("`<r><i><fgcolor=808080><upline><solidline><sha ;;0>` + value");
	exgantt1.FilterBarPromptPattern("B");
	exgantt1.FilterBarPromptVisible(2067/*exFilterBarCompact | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
		com_Column1.FilterType(240/*exFilter*/);
		com_Column1.Filter("Item A|Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
918
Just wondering if it is possible to show the filter bar's close button on the right ( sample 2 )

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Items;
	anytype var_Chart,var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarPromptVisible(1281/*exFilterBarShowCloseOnRight | exFilterBarToggle | exFilterBarPromptVisible*/);
	exgantt1.FilterBarPrompt(exgantt1.FormatABC("`<r>` + value",COMVariant::createFromStr(exgantt1.FilterBarPrompt())));
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
917
Just wondering if it is possible to show the filter bar's close button on the right ( sample 1 )

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Items;
	anytype var_Chart,var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	exgantt1.RightToLeft(true);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarPromptVisible(257/*exFilterBarToggle | exFilterBarPromptVisible*/);
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
916
How can I change the visual appearance of the filter bar's close button (EBN)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Appearance,com_Chart,com_Column,com_Items;
	anytype var_Appearance,var_Chart,var_Column,var_Items;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s = "gBFLBCJwBAEHhEJAAEhABHQDg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLOg7IJj";
		var_s = var_s + "yI4/SJAYCydKAWhxIaZKJHCZoEDaTAADCNVAQp6MEIJVbVEI0e79OgBLp/Z7kECIJJAaRjHQdJxGLA8EhtCQhCZteK6SgMKJYXhWQYRXI1JwvMBrWrdQjiOYELQtMKmS";
		var_s = var_s + "ZNLYGG4dR5SVJbcYhSYsRRFMoyDIOXYDLKsdYqSpXIThObEGgaPqJYjsUjCMKnR7HVIURrBPC9TBPE69ZgmC6ucKPX51ShKFaBWDZcwFAS+UBuYCAILiEAQGZ1XT8ORO";
		var_s = var_s + "icbgJgSTJRlCaZeDsHY7QGR4xkSYp3CaExZAQMgalQYAwjCAAfBANxcA2TgKAUOpDCGFhKg0RpXCwCwDHQHQHEyAIkCkOhbFOGA8A8DohBgRg9AccZcn8EpEjMLI2C2D";
		var_s = var_s + "YxAgQgvAIUIVkoAAPBQDJlECTZ3CCYwDACQwUA8A5MCAWAWDiQi4l8aQOEgLJuBgBgDmYFAzEoIoIl0WALgKYJbBABADAAHgHg8VAMmqCQQDMXABAATYwTmNwBDATJXA";
		var_s = var_s + "iAgjHmNQ5lgQ5QEQEQMmcWg/GwD5ylyNw2gMcJcjsBgBgOQQDDhRpVAMMwnDBFw1B0Ax8D0DxOmmJJIGQTY5hGMAwkwM4CAYLZAmAOJnAqAojiIGg6iieYkmeAYOHaKJ";
		var_s = var_s + "DCyCwjH6AoggsQpQliAJLhgaJ0CESBTnyDwjk+cg4g4P5IHIHJ+BWRRzlYWAxiOUxihsY4KjKLJRGqC44FCegkkkM58iAKAPnIWIWD8SRSFSfQnkmewUhYP4GiGKJ7G0";
		var_s = var_s + "TIbCSUoggqUo0lAQ4LnEcBcD8Coiiif4nE+eAAn2HpOkcFJqi4T5SkyMw/kqQown8IBIBOdA+A+DJrBqVxXEqYo4lCApLhGHBnD8S4ymyfxmg+cwQkQP5egOUZIWoEAk";
		var_s = var_s + "jIeIPBMBJBD+TBjBifwvkuc58hQJQPmFrYykkchclSApKjGOBuD+TRDFCfw3mmIxNi8FxFlOXhVC4aYDFyPgvg2YBcBcLZGCGCJ0DSLRzGSWQ/lmY5+mEP5gmMDBZRSM";
		var_s = var_s + "RsFsOxMhMJJ/DsTpTnwaQaE+N5ojuNhdEYNI5C4TZJO1GRDmCaxnA2Yx4n8IpIjOTBQBQC5TgyYw7gUYRYikC0BYRwsDQBoB8eA6Q2hsE0BUXgywZtYCyHMKwnxSAhAQ";
		var_s = var_s + "HkIQhRrBaDsCwA4ERiB2EWAIYIXhhiVEgAEUYwwYjyASLge4FhHgRDkM8OQih0jWPkGgBBAQ";
		com_Appearance.Add(1,COMVariant::createFromStr(var_s));
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarPromptVisible(257/*exFilterBarToggle | exFilterBarPromptVisible*/);
	exgantt1.Background(1/*exFooterFilterBarButton*/,0x1000000);
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
915
How can I change the visual appearance of the filter bar's close button (solid)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Items;
	anytype var_Chart,var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarPromptVisible(1/*exFilterBarPromptVisible*/);
	exgantt1.Background(1/*exFooterFilterBarButton*/,WinApi::RGB2int(255,0,0));
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
914
Is it possible to prevent definitely showing the filter bar's close button

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Items;
	anytype var_Chart,var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarPromptVisible(1/*exFilterBarPromptVisible*/);
	exgantt1.Background(1/*exFooterFilterBarButton*/,-1);
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
913
Is it possible to show the close button only if there is a filter applied

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Items;
	anytype var_Chart,var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarPromptVisible(513/*exFilterBarShowCloseIfRequired | exFilterBarPromptVisible*/);
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
912
The control's filter bar is not closed once I click the close button (toggle)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Items;
	int h;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
		com_Items.LockedItemCount(2/*BottomAlignment*/,1);
		h = com_Items.LockedItem(2/*BottomAlignment*/,0);
		com_Items.ItemDivider(h,0);
		com_Items.CellCaption(h,COMVariant::createFromInt(0),"<c><fgcolor=808080>Press the CTRL + F to turn on/off the control's filter bar. ALT + Up/Down moves the focus.");
		com_Items.CellCaptionFormat(h,COMVariant::createFromInt(0),1/*exHTML*/);
	exgantt1.FilterBarCaption("`<r><fgcolor=808080>` + value");
	exgantt1.FilterBarPromptPattern("B");
	exgantt1.FilterBarPromptVisible(2323/*exFilterBarCompact | exFilterBarToggle | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
		com_Column1.FilterType(240/*exFilter*/);
		com_Column1.Filter("Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
911
How can I display the control's filter on a single line

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarCaption("len(value) ? `filter for: <fgcolor 808080>` + value  : `<fgcolor 808080>no filter`");
	exgantt1.FilterBarPromptVisible(18/*exFilterBarSingleLine | exFilterBarVisible*/);
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
		com_Column1.FilterType(240/*exFilter*/);
		com_Column1.Filter("Item A|Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
910
How can I display the control's filter on a single line (prompt-combined)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarCaption("`<r>` + value");
	exgantt1.FilterBarPromptVisible(2067/*exFilterBarCompact | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
		com_Column1.FilterType(240/*exFilter*/);
		com_Column1.Filter("Item A|Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
909
How can I get the number of results after a filter is applied

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

// Click event - Occurs when the user presses and then releases the left mouse button over the tree control.
void onEvent_Click()
{
	;
	exgantt1.ClearFilter();
}

// FilterChange event - Occurs when the filter was changed.
void onEvent_FilterChange()
{
	;
	print( "Items.MatchItemCount" );
	print( exgantt1.Items().MatchItemCount() );
	print( exgantt1.FormatABC("value < 0 ? `filter applied: ` + abs(value + 1) + ` result(s)` : `no filter`",exgantt1.Items().MatchItemCount()) );
}

public void init()
{
	COM com_Chart,com_Column,com_Items;
	anytype var_Chart,var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarPromptVisible(1/*exFilterBarPromptVisible*/);
	exgantt1.FilterBarPromptPattern("Item");
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
908
How can I programmatically clear the control's filter
// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

// Click event - Occurs when the user presses and then releases the left mouse button over the tree control.
void onEvent_Click()
{
	;
	exgantt1.ClearFilter();
}

public void init()
{
	COM com_Chart,com_Column,com_Items;
	anytype var_Chart,var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarPromptVisible(1/*exFilterBarPromptVisible*/);
	exgantt1.FilterBarPromptPattern("B");
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
907
Is it possible to prevent closing the control's filter bar, so it is always shown (prompt-combined)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarPromptPattern("B");
	exgantt1.FilterBarPromptVisible(3/*exFilterBarVisible | exFilterBarPromptVisible*/);
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
		com_Column1.FilterType(240/*exFilter*/);
		com_Column1.Filter("Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
906
Is it possible to prevent closing the control's filter bar, so it is always shown (prompt)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Items;
	anytype var_Chart,var_Column,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarPromptVisible(1/*exFilterBarPromptVisible*/);
	exgantt1.FilterBarPromptPattern("B");
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
905
Is it possible to prevent closing the control's filter bar, so it is always shown

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void onEvent_AddItem(int   _Item)
{
	;
	exgantt1.Items().AddBar(_Item,"Task",COMVariant::createFromDate(str2Date("12/4/2017",213)),COMVariant::createFromDate(str2Date("12/14/2017",213)));
}

public void init()
{
	COM com_Chart,com_Column,com_Column1,com_Items;
	anytype var_Chart,var_Column,var_Column1,var_Items;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/2/2017",213)));
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,256);
	COM::createFromVariant(exgantt1.Columns().Add("Item")).DisplayFilterButton(true);
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Pos")); com_Column = var_Column;
		com_Column.AllowSizing(false);
		com_Column.AllowSort(false);
		com_Column.Width(32);
		com_Column.FormatColumn("1 apos ``");
		com_Column.Position(0);
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("Item A");
		com_Items.AddItem("Item B");
		com_Items.AddItem("Item C");
	exgantt1.FilterBarCaption("len(value) = 0 ? `<fgcolor=808080>no filter` : value");
	exgantt1.FilterBarPromptVisible(2/*exFilterBarVisible*/);
	var_Column1 = COM::createFromObject(exgantt1.Columns()).Item(COMVariant::createFromInt(0)); com_Column1 = var_Column1;
		com_Column1.FilterType(240/*exFilter*/);
		com_Column1.Filter("Item B");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,256);
}
*/
904
How do I change the drop down filter icon/button (black)

public void init()
{
	COM com_Appearance,com_Chart,com_Column,com_Items;
	anytype var_Appearance,var_Chart,var_Column,var_Items;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s = "gBFLBCJwBAEHhEJAAEhABXUIQAAYAQGKIcBiAKBQAGYBIJDEMgzDDAUBjKKocQTC4AIQjCK4JDKHYJRpHEZyCA8EhqGASRAFUQBYiWE4oSpLABQaK0ZwIGyRIrkGQgQg";
		var_s = var_s + "mPYDSDNU4zVIEEglBI0TDNczhNDENgtGYaJqHIYpZBcM40TKkEZoSIITZcRrOEBiRL1S0RBhGcRUHZlWzdN64LhuK47UrWdD/XhdVzXRbjfz1Oq+bxve48Br7A5yYThd";
		var_s = var_s + "r4LhOFQ3RjIL4xbIcUwGe6VZhjOLZXjmO49T69HTtOCYBEBA";
		com_Appearance.Add(1,COMVariant::createFromStr(var_s));
	exgantt1.Background(32/*exCursorHoverColumn*/,-1);
	exgantt1.Background(0/*exHeaderFilterBarButton*/,0x1000000);
	exgantt1.Background(26/*exBackColorFilter*/,WinApi::RGB2int(0,0,1));
	exgantt1.Background(27/*exForeColorFilter*/,WinApi::RGB2int(255,255,255));
	exgantt1.Description(25/*exFilterBarExclude*/,"<bgcolor 0><fgcolor ffffff> Exclude </fgcolor></bgcolor>");
	exgantt1.HeaderAppearance(0/*None2*/);
	exgantt1.BackColorHeader(WinApi::RGB2int(0,0,0));
	exgantt1.ForeColorHeader(WinApi::RGB2int(255,255,255));
	exgantt1.HeaderVisible(1);
	exgantt1.BackColorLevelHeader(exgantt1.BackColor());
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Filter")); com_Column = var_Column;
		com_Column.FilterList(8448/*exShowExclude | exShowCheckBox*/);
		com_Column.DisplayFilterButton(true);
		com_Column.AllowSort(false);
		com_Column.AllowDragging(false);
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,196);
		com_Chart.LevelCount(2);
		com_Chart.BackColorLevelHeader(exgantt1.BackColorHeader());
		com_Chart.ForeColorLevelHeader(exgantt1.ForeColorHeader());
	var_Items = exgantt1.Items(); com_Items = var_Items;
		com_Items.AddItem("One");
		com_Items.AddItem("Two");
		com_Items.AddItem("Three");
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,196);
}
*/
903
How do I change the drop down filter icon/button (white)

public void init()
{
	COM com_Appearance,com_Chart,com_Column;
	anytype var_Appearance,var_Chart,var_Column;
	str var_s;
	;

	super();

	exgantt1.BeginUpdate();
	var_Appearance = exgantt1.VisualAppearance(); com_Appearance = var_Appearance;
		var_s = "gBFLBCJwBAEHhEJAAEhABX8GACAADACAxSDEMQBQKAAzQFAYbhgHCGAAGQaBUgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwYgmNYiTLAcgANJ";
		var_s = var_s + "0WBaGIZJ4gOT5fDKMoEDRRYADFCscwxJybQAqGQKKb+VgAVY/cTyBIAEQSKA0TDOQ5TSKWB4JPZQRBEbZMNBtBIUJquKaqShdQJCU5FdY3Xblez9P7AMBwLFEC4NQ8YN";
		var_s = var_s + "YuPhjR4dRTIMhvVAsUArFh8Zg9GZZFjmDIDT4ydBLTQwcyVIKnP5qOa6XbmPoCQDYKxZHYxPzVDa3axuL76dqCAT7XrXNy1TbNRrzQKfcJqfCbdw2YaDZLOOT3fjuI4h";
		var_s = var_s + "hKaRzFAHJ+jYQ4xHuY4gHuGIXGeExqC8Tp6C+PoEm+G5ImycRgh0XwvDGa5rgOeoejyXwnFeQp2mkf5ClgBB9gCWIYAwfYAEKV58mkdwOggNArgOXY2EWLoDkKOA0mgb";
		var_s = var_s + "hOGgZApgaSBIHWSYHSmbApgYThmESZYJkIeIkgeCpfliLIHgpMIcmUYYYmODAlg2SI4mWfRfGOEguDcCRjFYAJihCQhJBSDoRmONgKEcI4kFCEJhhOVYTmYnAlEAQhWB";
		var_s = var_s + "MJYJGYWoWmWSR2F6F5lnkWAQhUAgpEieRWEuSYkjWGpmkmNhuhuZwJkYcocmaaYkjyEhngnUA6lEFAlAEgI=";
		com_Appearance.Add(2,COMVariant::createFromStr(var_s));
		com_Appearance.Add(1,"CP:2 -4 -4 2 4");
	exgantt1.Background(0/*exHeaderFilterBarButton*/,0x1000000);
	exgantt1.Background(32/*exCursorHoverColumn*/,exgantt1.BackColor());
	exgantt1.HeaderAppearance(0/*None2*/);
	exgantt1.BackColorHeader(WinApi::RGB2int(255,255,255));
	exgantt1.BackColorLevelHeader(exgantt1.BackColor());
	exgantt1.HeaderHeight(24);
	exgantt1.HeaderVisible(true);
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,196);
		com_Chart.LevelCount(2);
		com_Chart.BackColorLevelHeader(exgantt1.BackColorHeader());
		com_Chart.ForeColorLevelHeader(exgantt1.ForeColorHeader());
	var_Column = COM::createFromVariant(exgantt1.Columns().Add("Filter")); com_Column = var_Column;
		com_Column.DisplayFilterButton(true);
		com_Column.AllowSort(false);
		com_Column.AllowDragging(false);
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,196);
}
*/
902
How can I display the week-number in ISO8601 format

public void init()
{
	COM com_Chart;
	anytype var_Chart;
	;

	super();

	exgantt1.BeginUpdate();
	var_Chart = exgantt1.Chart(); com_Chart = var_Chart;
	/*should be called during the form's activate method*/ 	com_Chart.PaneWidth(false,0);
		com_Chart.LevelCount(2);
		com_Chart.FirstVisibleDate(COMVariant::createFromDate(str2Date("12/12/2007",213)));
		com_Chart.DrawGridLines(-1/*exAllLines*/);
		com_Chart.UnitScale(256/*exWeek*/);
		com_Chart.WeekNumberAs(0/*exISO8601WeekNumber*/);
		com_Chart.FirstWeekDay(1/*exMonday*/);
	exgantt1.EndUpdate();
}

/*
public void activate(boolean _active)
{
	;

	super(_active);

	exgantt1.Chart().PaneWidth(false,0);
}
*/
901
How can I include the child items, when a filter is applied

public void init()
{
	COM com_Columns,com_Items;
	anytype var_Columns,var_Items;
	int h0;
	;

	super();

	exgantt1.BeginUpdate();
	exgantt1.ColumnAutoResize(true);
	exgantt1.ContinueColumnScroll(0);
	exgantt1.MarkSearchColumn(false);
	exgantt1.SearchColumnIndex(1);
	exgantt1.Indent(16);
	exgantt1.LinesAtRoot(-1/*exLinesAtRoot*/);
	exgantt1.FilterBarPromptVisible(true);
	exgantt1.FilterBarPromptPattern("Nancy");
	exgantt1.FilterInclude(1/*exItemsWithChilds*/);
	exgantt1.Chart().LevelCount(2);
	var_Columns = exgantt1.Columns(); com_Columns = var_Columns;
		COM::createFromVariant(com_Columns.Add("Name")).Width(96);
		COM::createFromVariant(com_Columns.Add("Title")).Width(96);
		com_Columns.Add("City");
	var_Items = exgantt1.Items(); com_Items = var_Items;
		h0 = com_Items.AddItem("Nancy Davolio");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Sales Representative");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"Seattle");
		h0 = com_Items.InsertItem(h0,,"Andrew Fuller");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Vice President, Sales");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"Tacoma");
		h0 = com_Items.InsertItem(h0,,"Michael Suyama");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Sales Representative");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"London");
		h0 = com_Items.AddItem("Janet Leverling");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Sales Representative");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"Kirkland");
		h0 = com_Items.InsertItem(h0,,"Margaret Peacock");
		com_Items.CellCaption(h0,COMVariant::createFromInt(1),"Sales Representative");
		com_Items.CellCaption(h0,COMVariant::createFromInt(2),"Redmond");
	exgantt1.ApplyFilter();
	exgantt1.EndUpdate();
}