1968:
How do I get the duration/working count of the bar (sample 6,excrd)

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 48;
G2antt1->ShowFocusRect = false;
G2antt1->SelBackMode = Exg2anttlib_tlb::BackModeEnum::exTransparent;
G2antt1->BackColorLevelHeader = G2antt1->BackColor;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,12,26).operator double()));
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->Add(L"Task:Split");
		var_Bar->Shortcut = L"Task";
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<%=%263%>"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOffset,TVariant(-12));
	var_Chart->ColumnsFormatLevel = L"1,2/3";
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Duration");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(513));
	var_Column->Visible = false;
	var_Column->Alignment = Exg2anttlib_tlb::AlignmentEnum::LeftAlignment;
	var_Column->FormatColumn = L"value + `d`";
Exg2anttlib_tlb::IColumnPtr var_Column1 = G2antt1->Columns->Add(L"Working");
	var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(258));
	var_Column1->Visible = false;
	var_Column1->Alignment = Exg2anttlib_tlb::AlignmentEnum::RightAlignment;
	var_Column1->FormatColumn = L"value + `w`";
Exg2anttlib_tlb::IColumnPtr var_Column2 = G2antt1->Columns->Add(L"Working-Period");
	var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(263));
	var_Column2->Visible = false;
	var_Column2->Alignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Column2->FormatColumn = L"((value replace `\\r\\n` with `,`) replace `#` with ``) replace ` ` with ``";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2002,1,2).operator double()),TVariant(TDateTime(2002,1,11).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2002,1,3).operator double()),TVariant(TDateTime(2002,1,15).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2001,12,31).operator double()),TVariant(TDateTime(2002,1,13).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1967:
How do I get the duration/working count of the bar (sample 5)

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void __fastcall TForm1::G2antt1AddItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->set_ItemMaxHeight(Item,64);
}

G2antt1->BeginUpdate();
G2antt1->BackColorAlternate = RGB(240,240,240);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,256);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2002,1,1).operator double()));
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->Add(L"Task:Split");
		var_Bar->Shortcut = L"Task";
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<%=%263%>"));
	var_Chart->ColumnsFormatLevel = L"1,2";
	var_Chart->SelBackColor = G2antt1->SelBackColor;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Task");
	var_Column->AllowSizing = false;
	var_Column->Width = 48;
Exg2anttlib_tlb::IColumnPtr var_Column1 = G2antt1->Columns->Add(L"Duration");
	var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(513));
	var_Column1->Visible = false;
	var_Column1->Alignment = Exg2anttlib_tlb::AlignmentEnum::LeftAlignment;
Exg2anttlib_tlb::IColumnPtr var_Column2 = G2antt1->Columns->Add(L"Working");
	var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(258));
	var_Column2->Visible = false;
	var_Column2->Alignment = Exg2anttlib_tlb::AlignmentEnum::RightAlignment;
Exg2anttlib_tlb::IColumnPtr var_Column3 = G2antt1->Columns->Add(L"Working-Period");
	var_Column3->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(263));
	var_Column3->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellSingleLine,TVariant(false));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2002,1,2).operator double()),TVariant(TDateTime(2002,1,12).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2002,1,3).operator double()),TVariant(TDateTime(2002,1,15).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2002,1,4).operator double()),TVariant(TDateTime(2002,1,16).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1966:
How do I get the duration/working count of the bar (sample 4)

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,12,26).operator double()));
	var_Chart->Bars->Add(L"Task:Split")->Shortcut = L"Task";
	var_Chart->ColumnsFormatLevel = L"1,2";
G2antt1->Columns->Add(L"Task")->Width = 48;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Duration");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(513));
	var_Column->Visible = false;
	var_Column->Alignment = Exg2anttlib_tlb::AlignmentEnum::LeftAlignment;
	var_Column->FormatColumn = L"value + `d`";
Exg2anttlib_tlb::IColumnPtr var_Column1 = G2antt1->Columns->Add(L"Working");
	var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(258));
	var_Column1->Visible = false;
	var_Column1->Alignment = Exg2anttlib_tlb::AlignmentEnum::RightAlignment;
	var_Column1->FormatColumn = L"value + `w`";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2002,1,2).operator double()),TVariant(TDateTime(2002,1,12).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2002,1,3).operator double()),TVariant(TDateTime(2002,1,15).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1965:
How do I get the duration/working count of the bar (sample 3)

// BarResizing event - Occurs when a bar is moving or resizing.
void __fastcall TForm1::G2antt1BarResizing(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,Variant   Key)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		OutputDebugString( var_Items->get_CellCaption(TVariant(Item),TVariant(0)) );
		OutputDebugString( L"Working" );
		OutputDebugString( PChar(var_Items->get_ItemBar(Item,TVariant(Key),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarWorkingCount)) );
		OutputDebugString( var_Items->get_CellCaption(TVariant(Item),TVariant(0)) );
		OutputDebugString( L"Duration" );
		OutputDebugString( PChar(var_Items->get_ItemBar(Item,TVariant(Key),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarDuration)) );
}

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,12,26).operator double()));
	var_Chart->Bars->Add(L"Task:Split")->Shortcut = L"Task";
G2antt1->Columns->Add(L"Task")->Width = 48;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2002,1,2).operator double()),TVariant(TDateTime(2002,1,12).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2002,1,3).operator double()),TVariant(TDateTime(2002,1,15).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1964:
How do I get the duration/working count of the bar (sample 2)

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,12,26).operator double()));
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->Add(L"Task:Split");
		var_Bar->Shortcut = L"Task";
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%258%>w"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("<%=%513%>d"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(16));
G2antt1->Columns->Add(L"Task")->Width = 48;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2002,1,2).operator double()),TVariant(TDateTime(2002,1,12).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2002,1,3).operator double()),TVariant(TDateTime(2002,1,15).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1963:
How do I get the duration/working count of the bar (sample 1)

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,196);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2002,1,1).operator double()));
	var_Chart->Bars->Add(L"Task:Split")->Shortcut = L"Task";
G2antt1->Columns->Add(L"Task")->Width = 48;
G2antt1->Columns->Add(L"Duration")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(513));
G2antt1->Columns->Add(L"Working")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(258));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2002,1,2).operator double()),TVariant(TDateTime(2002,1,12).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2002,1,3).operator double()),TVariant(TDateTime(2002,1,15).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1962:
How can I draw a solid frame around the the focusing item

G2antt1->BeginUpdate();
G2antt1->SingleSel = false;
G2antt1->DefaultItemHeight = 20;
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->RenderType = -1;
	var_Appearance->Add(1,TVariant(String("gBFLBCJwBAEHhEJAAEhABOkGACAADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBKUQSDqEYyjGLIXAWCYSAAMIwDKAUEwpFAZBhgeDYMiSNoYDJCM4wH") +
"IURRJFCUJSGWQpTgSIgyT5HFIxXKoASbJabZLhWS6EpWOotTbIQQRYCkEyfKKfZyGURZQqOKA1DBZErWTJESRFJqLazgO4LAhyQYrVgAErzVKVCRNOqbJzADApdpGQJT" +
"ULDNTQHRFIyhOSnIRrWbMAhid6JUZiVT4dBOIYhSYANAqCwLFqrDJmWrpV5WZjlZ47V6BdAyXJsIrmFJEXaOGhyDDlGybSDZYryfZhUziUw4XjbWwZDqPF6DKTTdSGLR" +
"EE8WZVlURZvDaep3C+AY8kAYRgGCCBJECUhjDoHROEYWgoAGTQ1CEEx9lGMY0CQUYSnuZQDBGBYFlOH5+H+igGAKAJgEgFgGgGVgDn4CoCmCSA2A6A5hAgDgQgSYRIE4" +
"EoFGGCBiBeBhhkgPgbgcYgICoH4IGGWIOCSBhiGiHgVgoYooFoAoLGIWI+DCCgjCiTgrgII4ImYOoOmOSJ2AYOpWlQDQBICA="));
G2antt1->ShowFocusRect = true;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exShowFocusRect] = 0x1000000;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
G2antt1->Chart->set_PaneWidth(true,1);
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"P1");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Root"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 1"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 2"));
	var_Items->set_ExpandItem(h,true);
G2antt1->EndUpdate();

1961:
The frame around the focusing item is not very clear. Can I show it larger or more cleared (sample 2)

G2antt1->BeginUpdate();
G2antt1->SingleSel = false;
G2antt1->DefaultItemHeight = 20;
G2antt1->ShowFocusRect = true;
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->RenderType = -1;
	var_Appearance->Add(2,TVariant(String("gBFLBCJwBAEHhEJAAEhABPEGACAADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBKUQSDqEYyjGLIXAWCYSAAMIwDKAUEwpFAZBhgeCRUgyJI3RgMUIzV") +
"AcRRFEiUJQlIZZCjOAw0SIMU7xZRcNxsACnaZnCR4NiuRYiUhOcqzRIQIQ4CiEahqOgJbDUJYwWZKAyjBY8XTZFCSJCpeJ6egOc5jRxQUp1WAEXx3GSsJKvCZ5cADBY+" +
"VLQNS0JBtMSTKSLaiuWoIJqCPaDRheWKQJh1NSnLqEcjyYANDxDCZlWzAYxWTZ2Uz7N7PbB0HY4DyPGKZYrfESVRbQcZNS6nNigPI9XhfGq6VjRe63ZaOaYpWrnOJqTR" +
"WjOKYujWdZ2BGO5lkuBAAkmcQkDmDBEAwEQJCgGhMGcQ4pkiSxGAAOYmkQIhvkYNg2gSCgyj+LI4GIMIwF2XQoAYAoAmASAWAaAZgggJgKFiT54DYDoDmECBGBKBJgGg" +
"TgWgWYRoFYGIGmGOBqByB5hCgegggiYJYgoJIICIaIeByChiigYgsgsYYYBYMIKCMKJOCuDRjGiOgLg6Y5InYPoPmQCAkmsXAQDQBCAg="));
	var_Appearance->Add(3,TVariant("CP:2 -3 0 3 0"));
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exShowFocusRect] = 0x3010101;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
G2antt1->Chart->set_PaneWidth(true,1);
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"P1");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Root"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 1"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 2"));
	var_Items->set_ExpandItem(h,true);
G2antt1->EndUpdate();

1960:
The frame around the focusing item is not very clear. Can I show it larger or more cleared (sample 1)

G2antt1->BeginUpdate();
G2antt1->SingleSel = false;
G2antt1->ShowFocusRect = true;
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(1,TVariant(String("gBFLBCJwBAEHhEJAAEhABHoDg6AADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBIZQ7BKNIxjSJwFiCCQwSDKEjyCKcGRHF6MI6gOYpCgOIYjRJNIASV") +
"AceAAGaUZrjSgobjmOYhAJCLqhYIgASXJqLaBlOCaAieSc+QhjQJIJoeCZXU5TFg1BTsOhqEqcRiseaRVDCaIJWzbdYWLDdNQHHKYLjnWorbpSJZ5XjNEySDQkMS9PrE" +
"J7vST8FBCdAABLJUB2BR9RwxRafKpnWwJDpmCaOQLXEB5DK1PyVMTKYrtGy7GrIAJxWxbV4UHh+QABOzIMAvHKJMwvHYcUZne5XVLeF41HbONogPaJZyIAK2cLROq6Xo" +
"7GEcJZEcLASB4DwvgWUZlE6AQQhKAYkkYdA6hyDIwHgSoqFwQgmnsYxjGgSIiBOTpSEiAwRgOJI7j4JAHA6U5wm0MpPlOBIjD8TZiGYCICiCGAuA6AxhAgMgSgOYQ4DY" +
"Bg/g6cw1n+ABOmMMJ9DmCwjnScw4RsVJngkYh4hoKIKmKKI2CmC5ikiQgqgiT5jhyMw8g4QwIn0OIKEiCJhD8DwTGyfA7k0WQOEWEQkGkJhIhKZB5DYSoTiSCQEn4PQO" +
"COXJcCeIJjliaIQk0aRyF4O5llmAhfhgZhJg4ZoYiaAxYn4PZOhOZJaCUZYTiYQw1mcOZUm+HQnHmWh4h6Z4pnYeYfk0eYsmqG4nAgNJ2DqD5DkCWoiGiOgqgyI5omoR" +
"oNiSaQKFKEojCaM4ugSFhOjkAJcieKgDkaH4oioGoOiaKRqgqEoqDddwyhuAxPgOMJ8DyDZqk6NYtCsapmjiLprHqdo6i+K5K1oPhOlqPgKD4DpjnII4yiOewuk6MxtA" +
"sMpSjObQ7EaT4wk6ewYn0PgPAiCJkjeLgDk6X44i4G4OmaORuguEpqDkLAzkaWg+E8GIUmaPIvEOVpzj2Lxbl6eo+G+S5in4OYPmOaJyjuTwjnYWpBg6DAjAqQZwkwJw" +
"NkKcJsEcEJCDBEpaD6Dw8BiapGjGSgfB2RpxmyBwgkicZ8haBw/g+M5TBcPQPlOXJskscp8jsMJMnMLJXDGTZzEyYw2kwMoDlcFw9i2M4/EGUJPg0CxFlENBtCcSJSnQ" +
"fQ0m+SgPHsaJ7lALZLG6XZVHWDRfFqVY1k0ZxdladYTnifJUGaeAWAeMnSGcGWgBObJ3lWbwdjKW5cHcTZPHaLkN4GxXDlFqFsA4uRbBOGAFAEIzAsDEFOBkfYqR4D6A" +
"OBEYo8QuBvAmMceInBDgcD0JwOIqQyJ1DMAwG4IANDnHSMoK4QhOgMBGNEIQvQWAdGenETIswGiddsAAQAgCAgA=="));
	var_Appearance->Add(2,TVariant(String("gBFLBCJwBAEHhEJAAEhABeEGACAADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADDFIBQSLAYROGSDJBGODJDjWGIeQLOEhQH") +
"IMRxPE6UYLhWYpBDKPYcUbGc7yBBMVwGf59XzACoKSheQIVSDQkw6Fo6NYhAxHALyNRkBy8f60KjtGpodDUJYvW5JYyjBZ8EznOqbJBkeJ7BgOe5NQjaD72VgdWQJFSW" +
"JajWYYJDOJY2ZAAE5TVINEwxJbDaylChIdxaF6WAzZEBhBYoATPNLBMrhWqKDw2XaQWBCOgwHYeR5LU7BdRwbIrRq2eAAXbcVyXfDddZlBK+QA0SK9lRVTKvJZmKgBWw" +
"1COSxmAAGw4kcNx1iKFBiCAfQsG8lJemucg7nsXpUHOOxrm+DI3jOH4XAOBx2nscw0j2HhPG4L5uGEVIECQCBCEUAYkGMHQHFGSBlGaAxkEgQgTGCVBsDYQhCgQJZrHK" +
"UggGEShkFGNgIlsNpPnMHJHD+TADAIJIJiIWIeCqChikiIgmgiD5zHyXxgiACJKCuC4jHiZgtg6I4IlkCQwkwOIonMPJjEkFhGhGZBpA4KoMBCGJuEiE5lAkGg7hMY4J" +
"EYVoUCUNAOE6FZl0KWQACWOR2GKF5mBmChchkJRZhoXYaCKKYqGuDglEmNhuhWZpIiYc4dCcCRqGmHZlgm2YxAwSQKESHwkFkKgpiAIAIH4PIimOOg2DiChoiQJRRD+T" +
"ZDHCfwyAyCgyg+JpiioYJ/DgDgIlECQ6lwRAEICA="));
	var_Appearance->Add(3,TVariant("CP:2 -2 0 2 0"));
G2antt1->SelBackColor = 0x1000000;
G2antt1->SelForeColor = RGB(0,0,0);
G2antt1->Chart->set_PaneWidth(true,1);
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exShowFocusRect] = 0x3ff0000;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"P1");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Root"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 1"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 2"));
	var_Items->set_ExpandItem(h,true);
G2antt1->EndUpdate();

1959:
How can I display the start/end margins of bars, when cursor hovers it like a tooltip

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"exBarToolTip");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<b><%=%9 + '/' + %C0%></b><br><upline><dotline>Start: <%=%1%><br>End: <%=%2%><br>Duration: <%=(%2-%1)%><br>Working: <%=%258%>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Bar.Def")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,9).operator double()),TVariant("K1"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Bar.Def")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K1"),TNoParam());
	long h = var_Items->AddItem(TVariant("Items.ItemBar"));
	var_Items->AddBar(h,TVariant("Unknown"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,11).operator double()),TVariant("K"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("Start:<%=%1%><br>End:<%=%2%>"));
G2antt1->EndUpdate();

1958:
Is it possible to define different kinds of summary bars with using the EBN files

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->RenderType = -16777216;
	var_Appearance->Add(1,TVariant(String("gBFLBCJwBAEHhEJAAEhABN0GACAADACAxRDAMgBQKAAzQFAYahuGSGAAGMYxQgmFgAQhFcZQSKUOQTDKMIziYBYJhEMQyDAAUIjOKsIhkGYcZAGQBJCjWGodQLOEgwH") +
"IERQjEyUJAGGQIHhyPYbUbGUpQHKkeRtGqgBgoKhKEouNYgAbGYIwTRsdyfDSXBpEWwbDgkNQwWTDNoRDIUQStCysaYjOpnfrUAJ1P7FdQ1NJkXRhGSSK7maapaiCSZ6" +
"STCMj1FhVKSNJ7DQKhGpgKh/ApgYpQOK4fLNXyRBK4QAyKA6bgPFZOZbFViaXY1V5bNKrcjhHQwAyHJ4XXRdV4YRAkUT4GqiJKGSYcQhuXZWbRqO6ABhef6DRThc6jKp" +
"FHIE4llEcojHqSZNgoIxnlgd5thsLREleL43gsYZ9BkaAYkMAgAm+CxGDWWAtiKCRfjcdRgHoHYnicUwgAIEIREAaQYkcQZUHIGRUDQJBOEYRAhDYCxGgMZAkCgdYQha" +
"XQIAYERwQuahXggdgeG6VZ4H4IhdiIGIOB8YIiGiHZZgqYpGF4KYHiKCI+CAU5jCiTQ2g0YhEFyax4gABAEIC"));
	var_Appearance->Add(2,TVariant(String("gBFLBCJwBAEHhEJAAEhABU0IQAAYAQGKQYhiAKBQAGaAoDDcMA4QwAAyjAKMEwsACEIrjKCRShyCYZRhGcTAJBMIhiGQYAChEZxVhEMgzDjIAxSJAcQRFESaAABGCQG") +
"h+N4/S4NIi0CIsZQjCaiZ7pKA5bgMCo+UrNMixZQVCSOGChYRpCaZWpGGodQRUFbVHAlKypJKCKrEWSrDhuYAAW7XM7yBS1TzVNSuLZtaLqSroAJ1WTWMB0Ra8NzZEKf" +
"aZACj4arKejrRDCMAggI="));
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
		var_Bar->Color = RGB(1,0,0);
	Exg2anttlib_tlb::IBarPtr var_Bar1 = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
		var_Bar1->Color = 0x2000000;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long hSummaryJ = var_Items->AddItem(TVariant("Summary A"));
	var_Items->AddBar(hSummaryJ,TVariant("Summary"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,2).operator double()),TVariant("J"),TNoParam());
	long hTaskJ = var_Items->InsertItem(hSummaryJ,TNoParam(),TVariant("Task A.1"));
	var_Items->AddBar(hTaskJ,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("J1"),TNoParam());
	hTaskJ = var_Items->InsertItem(hSummaryJ,TNoParam(),TVariant("Task A.2"));
	var_Items->AddBar(hTaskJ,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("J2"),TNoParam());
	var_Items->DefineSummaryBars(hSummaryJ,TVariant("J"),-1,TVariant("<*>"));
	long hSummaryK = var_Items->AddItem(TVariant("Summary B"));
	var_Items->AddBar(hSummaryK,TVariant("Summary"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,2).operator double()),TVariant("K"),TNoParam());
	long hTaskK = var_Items->InsertItem(hSummaryK,TNoParam(),TVariant("Task B.1"));
	var_Items->AddBar(hTaskK,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("K1"),TNoParam());
	hTaskK = var_Items->InsertItem(hSummaryK,TNoParam(),TVariant("Task B.2"));
	var_Items->AddBar(hTaskK,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K2"),TNoParam());
	var_Items->DefineSummaryBars(hSummaryK,TVariant("K"),-1,TVariant("<*>"));
	var_Items->set_ItemBar(0,TVariant("<K*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));
	long hSummaryZ = var_Items->AddItem(TVariant("Summary B"));
	var_Items->AddBar(hSummaryZ,TVariant("Summary"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,2).operator double()),TVariant("Z"),TNoParam());
	long hTaskZ = var_Items->InsertItem(hSummaryZ,TNoParam(),TVariant("Task B.1"));
	var_Items->AddBar(hTaskZ,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("Z1"),TNoParam());
	hTaskZ = var_Items->InsertItem(hSummaryZ,TNoParam(),TVariant("Task B.2"));
	var_Items->AddBar(hTaskZ,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("Z2"),TNoParam());
	var_Items->DefineSummaryBars(hSummaryZ,TVariant("Z"),-1,TVariant("<*>"));
	var_Items->set_ItemBar(hSummaryZ,TVariant("Z"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(16842496));
	var_Items->set_ItemBar(0,TVariant("<Z1>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(50266112));
	var_Items->set_ItemBar(0,TVariant("<Z2>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(33554176));
	var_Items->set_ExpandItem(0,true);
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2007,12,12).operator double()));
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exWeek;
	var_Chart->get_Level(0)->FormatLabel = L"value + `<r><off -4><fgcolor=808080><font ;6>` + year(dvalue)";
	var_Chart->get_Level(1)->FormatLabel = L"(value = 1 ? `<bgcolor=000000><fgcolor=FFFFFF>` : ``) + value";
	var_Chart->WeekNumberAs = Exg2anttlib_tlb::WeekNumberAsEnum::exISO8601WeekNumber;
	var_Chart->FirstWeekDay = Exg2anttlib_tlb::WeekDayEnum::exMonday;
G2antt1->EndUpdate();

1956:
I have a column right-aligned. How can I display its check box aligned to the right, as it appears to the left of the cell's caption

G2antt1->BeginUpdate();
G2antt1->ColumnAutoResize = true;
G2antt1->Chart->set_PaneWidth(true,0);
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exVLines;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Left");
		var_Column->AllowSizing = false;
		var_Column->Width = 96;
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column->FormatColumn = L"0 pos `A-Z`";
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"Center");
		var_Column1->HeaderAlignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
		var_Column1->Alignment = var_Column1->HeaderAlignment;
		var_Column1->AllowSizing = false;
		var_Column1->Width = 96;
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column1->FormatColumn = L"0 pos `A-Z`";
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"Right");
		var_Column2->HeaderAlignment = Exg2anttlib_tlb::AlignmentEnum::RightAlignment;
		var_Column2->Alignment = var_Column2->HeaderAlignment;
		var_Column2->AllowSizing = false;
		var_Column2->Width = 96;
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column2->FormatColumn = L"0 pos `A-Z`";
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellDrawPartsOrder,TVariant("caption,check,icon,icons,picture"));
	var_Columns->Add(L"");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 1"))),TVariant(3),1);
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 2"))),TVariant(2),1);
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 3"))),TVariant(1),1);
G2antt1->EndUpdate();

1955:
Can I display the column's multiple-lines caption vertically oriented (method 2)

G2antt1->BeginUpdate();
G2antt1->HeaderHeight = 48;
G2antt1->ColumnAutoResize = true;
G2antt1->Chart->set_PaneWidth(true,0);
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"And others ...");
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"");
		var_Column->HTMLCaption = L"First Column";
		var_Column->HeaderVertical = true;
		var_Column->Width = 36;
		var_Column->AllowSizing = false;
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellPaddingLeft,TVariant(8));
		var_Column->Position = 0;
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"");
		var_Column1->HTMLCaption = L"<c><b>Second Column";
		var_Column1->HeaderVertical = true;
		var_Column1->Width = 36;
		var_Column1->AllowSizing = false;
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellPaddingLeft,TVariant(8));
		var_Column1->Position = 1;
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"");
		var_Column2->HTMLCaption = L"<r>Third Column";
		var_Column2->HeaderVertical = true;
		var_Column2->Width = 36;
		var_Column2->AllowSizing = false;
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellPaddingLeft,TVariant(8));
		var_Column2->Position = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 1"))),TVariant(3),1);
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 2"))),TVariant(2),1);
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 3"))),TVariant(1),1);
G2antt1->EndUpdate();

1954:
Can I display the column's multiple-lines caption vertically oriented (method 1)

G2antt1->BeginUpdate();
G2antt1->HeaderHeight = 48;
G2antt1->HeaderSingleLine = false;
G2antt1->ColumnAutoResize = true;
G2antt1->Chart->set_PaneWidth(true,0);
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"And others ...");
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"First Column");
		var_Column->HeaderVertical = true;
		var_Column->Width = 36;
		var_Column->AllowSizing = false;
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellPaddingLeft,TVariant(8));
		var_Column->Position = 0;
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"Second Column");
		var_Column1->HeaderBold = true;
		var_Column1->HeaderVertical = true;
		var_Column1->Width = 36;
		var_Column1->AllowSizing = false;
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellPaddingLeft,TVariant(8));
		var_Column1->Position = 1;
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"Third Column");
		var_Column2->HeaderVertical = true;
		var_Column2->Width = 36;
		var_Column2->AllowSizing = false;
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellPaddingLeft,TVariant(8));
		var_Column2->Position = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 1"))),TVariant(3),1);
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 2"))),TVariant(2),1);
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 3"))),TVariant(1),1);
G2antt1->EndUpdate();

1953:
Can I display the column's caption vertically oriented (method 2)

G2antt1->BeginUpdate();
G2antt1->HeaderHeight = 48;
G2antt1->ColumnAutoResize = true;
G2antt1->Chart->set_PaneWidth(true,0);
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"And others ...");
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"");
		var_Column->HTMLCaption = L"First";
		var_Column->HeaderVertical = true;
		var_Column->Width = 20;
		var_Column->AllowSizing = false;
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column->Position = 0;
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"");
		var_Column1->HTMLCaption = L"<c><b>Second";
		var_Column1->HeaderVertical = true;
		var_Column1->Width = 20;
		var_Column1->AllowSizing = false;
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column1->Position = 1;
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"");
		var_Column2->HTMLCaption = L"<r>Third";
		var_Column2->HeaderVertical = true;
		var_Column2->Width = 20;
		var_Column2->AllowSizing = false;
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column2->Position = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 1"))),TVariant(3),1);
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 2"))),TVariant(2),1);
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 3"))),TVariant(1),1);
G2antt1->EndUpdate();

1952:
Can I display the column's caption vertically oriented (method 1)

G2antt1->BeginUpdate();
G2antt1->HeaderHeight = 48;
G2antt1->ColumnAutoResize = true;
G2antt1->Chart->set_PaneWidth(true,0);
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"And others ...");
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"First");
		var_Column->HeaderVertical = true;
		var_Column->Width = 20;
		var_Column->AllowSizing = false;
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column->Position = 0;
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"Second");
		var_Column1->HeaderBold = true;
		var_Column1->HeaderVertical = true;
		var_Column1->Width = 20;
		var_Column1->AllowSizing = false;
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column1->Position = 1;
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"Third");
		var_Column2->HeaderVertical = true;
		var_Column2->Width = 20;
		var_Column2->AllowSizing = false;
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
		var_Column2->Position = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 1"))),TVariant(3),1);
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 2"))),TVariant(2),1);
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 3"))),TVariant(1),1);
G2antt1->EndUpdate();

1951:
How can I resize all task-bars 0-length

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,3).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,5).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBarEx(TVariant("itembar(513) = 0 and itembar(0) = `Task`"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));
	var_Items->set_ItemBarEx(TVariant("itembar(513) = 0 and itembar(0) = `Task`"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarDuration,TVariant("value + 1"));
G2antt1->EndUpdate();

1950:
Is it possible to mark items that holds items with 0-length (zero,empty, sample 3)
G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Duration");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(513));
	var_Column->Visible = false;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat = G2antt1->ConditionalFormats->Add(L"%1 = 0",TNoParam());
	var_ConditionalFormat->Bold = true;
	var_ConditionalFormat->BackColor = RGB(190,190,190);
	var_ConditionalFormat->ChartBackColor = var_ConditionalFormat->BackColor;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,3).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,5).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1949:
Is it possible to mark items that holds items with 0-length (zero,empty, sample 2)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,3).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,5).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBarEx(TVariant("itembar(513) = 0"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("`zero-length`"));
G2antt1->EndUpdate();

1948:
Is it possible to mark items that holds items with 0-length (zero,empty, sample 1)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,3).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,5).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBarEx(TVariant("itembar(513) = 0"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarBackgroundExt,TVariant("`[frame=RGB(255,0,0),framethick,pattern=6,patterncolor=RGB(255,0,0)]`"));
	var_Items->set_ItemBarEx(TVariant("itembar(513) = 0"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarBackgroundExtInflate,TVariant("`-4,-4,4,4`"));
G2antt1->EndUpdate();

1947:
How can I find how many tasks/bars of 0-length (zero,empty) do I have

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,3).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,5).operator double()),TNoParam(),TNoParam());
	OutputDebugString( PChar(var_Items->get_ItemBarEx(TVariant("itembar(513) = 0"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
G2antt1->EndUpdate();

1946:
How can I remove all bars from selected items

G2antt1->BeginUpdate();
G2antt1->SingleSel = false;
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->SelBackColor = RGB(240,240,240);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
		var_Bar->OverlaidGroup = L"Task,Task-Diff";
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<font ;6><%=%0%>"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
	Exg2anttlib_tlb::IBarPtr var_Bar1 = var_Chart->Bars->Copy(L"Task",L"Task-Diff");
		var_Bar1->Height = 4;
		var_Bar1->Color = RGB(255,0,0);
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<font ;6><%=%0%>"));
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(16));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	long h = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,9).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(h,true);
	h = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TVariant(""),TNoParam());
	var_Items->AddBar(h,TVariant("Task-Diff"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,14).operator double()),TVariant("P"),TNoParam());
	var_Items->set_SelectItem(h,true);
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,16).operator double()),TNoParam(),TNoParam());
	OutputDebugString( L"Bars before remove: " );
	OutputDebugString( PChar(var_Items->get_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
	var_Items->set_ItemBarEx(TVariant("itemisselected"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKey,TVariant("`toberemove` + value "));
	var_Items->RemoveBar(0,TVariant("<toberemove*>"));
	OutputDebugString( L"Bars after remove: " );
	OutputDebugString( PChar(var_Items->get_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
G2antt1->EndUpdate();

1945:
How can I remove task bars from selected items

G2antt1->BeginUpdate();
G2antt1->SingleSel = false;
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->SelBackColor = RGB(240,240,240);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
		var_Bar->OverlaidGroup = L"Task,Task-Diff";
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<font ;6><%=%0%>"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
	Exg2anttlib_tlb::IBarPtr var_Bar1 = var_Chart->Bars->Copy(L"Task",L"Task-Diff");
		var_Bar1->Height = 4;
		var_Bar1->Color = RGB(255,0,0);
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<font ;6><%=%0%>"));
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(16));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	long h = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,9).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(h,true);
	h = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TVariant(""),TNoParam());
	var_Items->AddBar(h,TVariant("Task-Diff"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,14).operator double()),TVariant("P"),TNoParam());
	var_Items->set_SelectItem(h,true);
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,16).operator double()),TNoParam(),TNoParam());
	OutputDebugString( L"Bars before remove: " );
	OutputDebugString( PChar(var_Items->get_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
	var_Items->set_ItemBarEx(TVariant("itemisselected and itembar(0) = `Task`"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKey,TVariant("`toberemove` + value "));
	var_Items->RemoveBar(0,TVariant("<toberemove*>"));
	OutputDebugString( L"Bars after remove: " );
	OutputDebugString( PChar(var_Items->get_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
G2antt1->EndUpdate();

1944:
How can I change the pattern for some bars only

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	long h = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,9).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(h),TVariant(0),1);
	h = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(h),TVariant(0),1);
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,16).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBarEx(TVariant("cellstate(0)"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarPattern,TVariant(6));
G2antt1->EndUpdate();

1943:
How do I apply the same effort to all bars

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->HistogramView = Exg2anttlib_tlb::HistogramViewEnum::exHistogramAllItems;
	var_Chart->HistogramVisible = true;
	var_Chart->HistogramHeight = 64;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->HistogramPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
		var_Bar->HistogramType = Exg2anttlib_tlb::HistogramTypeEnum::exHistOverAllocation;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,9).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,16).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarEffort,TVariant(2));
G2antt1->EndUpdate();

1942:
How do I apply the same percent to all bars

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->Add(L"Task%Progress");
		var_Bar->Shortcut = L"Task";
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarShowPercentCaption,TVariant(true));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,9).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,16).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarPercent,TVariant(0.5));
G2antt1->EndUpdate();

1941:
How can I set the same duration for all bars

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,9).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,16).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarDuration,TVariant(4));
G2antt1->EndUpdate();

1940:
How do I move all bars to end at the same date-time

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,9).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,16).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarMoveEnd,TVariant("#8/15/2017#"));
G2antt1->EndUpdate();

1939:
How do I move all bars to start at the same date-time

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,9).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,16).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarMoveStart,TVariant("#8/2/2017#"));
G2antt1->EndUpdate();

1938:
How do I apply a new color for some bars, while others should be shown with a different color

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->SelBackColor = RGB(240,240,240);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
		var_Bar->OverlaidGroup = L"Task,Task-Diff";
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<font ;6><%=%0%>"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
	Exg2anttlib_tlb::IBarPtr var_Bar1 = var_Chart->Bars->Copy(L"Task",L"Task-Diff");
		var_Bar1->Height = 4;
		var_Bar1->Color = RGB(255,0,0);
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<font ;6><%=%0%>"));
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(16));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,9).operator double()),TNoParam(),TNoParam());
	long h = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TVariant(""),TNoParam());
	var_Items->AddBar(h,TVariant("Task-Diff"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,14).operator double()),TVariant("P"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,16).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant("cellcaption(0) like `*2` ? 0x0000FF : 0x00FF00"));
G2antt1->EndUpdate();

1937:
How do I hide some bars, and show others

G2antt1->BeginUpdate();
G2antt1->SingleSel = false;
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->SelBackColor = RGB(240,240,240);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
		var_Bar->OverlaidGroup = L"Task,Task-Diff";
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<font ;6><%=%0%>"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
	Exg2anttlib_tlb::IBarPtr var_Bar1 = var_Chart->Bars->Copy(L"Task",L"Task-Diff");
		var_Bar1->Height = 4;
		var_Bar1->Color = RGB(255,0,0);
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<font ;6><%=%0%>"));
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(16));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	long h = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,9).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(h,true);
	h = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TVariant(""),TNoParam());
	var_Items->AddBar(h,TVariant("Task-Diff"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,14).operator double()),TVariant("P"),TNoParam());
	var_Items->set_SelectItem(h,true);
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,16).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBarEx(TVariant("-1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarTransparent,TVariant("itembar(0) = `Task` ? 0 : 100"));
G2antt1->EndUpdate();

1936:
I like how ItemBarEx works, the question is how can I remove the bars based on the same criteria

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,9).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2017,8,5).operator double()),TVariant(TDateTime(2017,8,16).operator double()),TNoParam(),TNoParam());
	OutputDebugString( L"Bars before remove: " );
	OutputDebugString( PChar(var_Items->get_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
	var_Items->set_ItemBarEx(TVariant("cellcaption(0) like `*2 *3`"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKey,TVariant("`toberemove` + value "));
	var_Items->RemoveBar(0,TVariant("<toberemove*>"));
	OutputDebugString( L"Bars after remove: " );
	OutputDebugString( PChar(var_Items->get_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
G2antt1->EndUpdate();

1935:
Is it possible to automatically color the bar being checked

// CellStateChanged event - Fired after cell's state has been changed.
void __fastcall TForm1::G2antt1CellStateChanged(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,long   ColIndex)
{
}

G2antt1->BeginUpdate();
G2antt1->SelBackMode = Exg2anttlib_tlb::BackModeEnum::exTransparent;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,256);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,1,1).operator double()));
Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat = G2antt1->ConditionalFormats->Add(L"%CS0",TVariant("check"));
	var_ConditionalFormat->Bold = true;
	var_ConditionalFormat->ApplyToBars = L"Task";
	var_ConditionalFormat->BarColor = RGB(0,0,1);
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Items");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->Width = 256;
G2antt1->Columns->Add(G2antt1->ConditionalFormats->get_Item(TVariant("check"))->Expression)->FormatColumn = G2antt1->ConditionalFormats->get_Item(TVariant("check"))->Expression;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 1")),TVariant("Task"),TVariant(TDateTime(2017,1,2).operator double()),TVariant(TDateTime(2017,1,12).operator double()),TNoParam(),TNoParam());
	long h = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2017,1,3).operator double()),TVariant(TDateTime(2017,1,13).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(h),TVariant(0),1);
	h = var_Items->AddItem(TVariant("Item 3"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2017,1,4).operator double()),TVariant(TDateTime(2017,1,14).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(h),TVariant(0),1);
G2antt1->EndUpdate();

1934:
How do I automatically bold items being checked

// CellStateChanged event - Fired after cell's state has been changed.
void __fastcall TForm1::G2antt1CellStateChanged(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,long   ColIndex)
{
}

G2antt1->BeginUpdate();
G2antt1->SelBackMode = Exg2anttlib_tlb::BackModeEnum::exTransparent;
G2antt1->Chart->set_PaneWidth(true,0);
Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat = G2antt1->ConditionalFormats->Add(L"%CS0",TVariant("check"));
	var_ConditionalFormat->Bold = true;
G2antt1->Columns->Add(L"Items")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
G2antt1->Columns->Add(G2antt1->ConditionalFormats->get_Item(TVariant("check"))->Expression)->FormatColumn = G2antt1->ConditionalFormats->get_Item(TVariant("check"))->Expression;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("Item 1"));
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Item 2"))),TVariant(0),1);
	var_Items->AddItem(TVariant("Item 3"));
G2antt1->EndUpdate();

1933:
Can I display the radio-button with a solid color

G2antt1->BeginUpdate();
G2antt1->Chart->set_PaneWidth(true,0);
G2antt1->RadioImage[false] = 32699122;
G2antt1->RadioImage[true] = 16777216;
G2antt1->Columns->Add(L"Check")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasRadioButton,TVariant(true));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("Radio 1"));
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Radio 2"))),TVariant(0),1);
	var_Items->AddItem(TVariant("Radio 1"));
G2antt1->EndUpdate();

1932:
Can I display the check-box with a solid color

G2antt1->BeginUpdate();
G2antt1->Chart->set_PaneWidth(true,0);
G2antt1->CheckImage[Exg2anttlib_tlb::CheckStateEnum::Unchecked] = 32699122;
G2antt1->CheckImage[Exg2anttlib_tlb::CheckStateEnum::Checked] = 16777216;
G2antt1->Columns->Add(L"Check")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("Check 1"));
	var_Items->set_CellState(TVariant(var_Items->AddItem(TVariant("Check 2"))),TVariant(0),1);
	var_Items->AddItem(TVariant("Check 3"));
G2antt1->EndUpdate();

1931:
How can I use the CellState with ConditionalFormat/ComputedField/FormatColumn

// CellStateChanged event - Fired after cell's state has been changed.
void __fastcall TForm1::G2antt1CellStateChanged(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,long   ColIndex)
{
}

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exGroupLinesInsideLeaf;
G2antt1->SelBackMode = Exg2anttlib_tlb::BackModeEnum::exTransparent;
G2antt1->Chart->set_PaneWidth(true,0);
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Items");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
Exg2anttlib_tlb::IColumnPtr var_Column1 = G2antt1->Columns->Add(L"Format");
	var_Column1->FormatColumn = L"%CS0";
	var_Column1->Caption = var_Column1->FormatColumn;
	var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellForeColor,TVariant(8421504));
	var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exHeaderForeColor,TVariant(var_Column1->get_Def(Exg2anttlib_tlb::DefColumnEnum::exCellForeColor)));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Root"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Item 1"));
	var_Items->set_CellState(TVariant(var_Items->InsertItem(h,TNoParam(),TVariant("Item 2"))),TVariant(0),1);
	var_Items->set_CellState(TVariant(var_Items->InsertItem(h,TNoParam(),TVariant("Item 3"))),TVariant(0),1);
	var_Items->set_ExpandItem(h,true);
G2antt1->EndUpdate();

1930:
How can I use the CellData with ConditionalFormat/ComputedField/FormatColumn

G2antt1->BeginUpdate();
G2antt1->Chart->set_PaneWidth(true,0);
G2antt1->Columns->Add(L"Items");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Format");
	var_Column->FormatColumn = L"%CD0";
	var_Column->Caption = var_Column->FormatColumn;
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellForeColor,TVariant(8421504));
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exHeaderForeColor,TVariant(var_Column->get_Def(Exg2anttlib_tlb::DefColumnEnum::exCellForeColor)));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellData(TVariant(var_Items->AddItem(TVariant("Item 1"))),TVariant(0),TVariant(1234));
	var_Items->set_CellData(TVariant(var_Items->AddItem(TVariant("Item 2"))),TVariant(0),TVariant("this is just an user data"));
	var_Items->set_CellData(TVariant(var_Items->AddItem(TVariant("Item 3"))),TVariant(0),TVariant(TDateTime(2001,1,1).operator double()));
G2antt1->EndUpdate();

1929:
How can I use the CellValue/CellCaption with ConditionalFormat/ComputedField/FormatColumn

G2antt1->BeginUpdate();
G2antt1->Chart->set_PaneWidth(true,0);
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Items");
	Exg2anttlib_tlb::IEditorPtr var_Editor = var_Column->Editor;
		var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
		var_Editor->AddItem(1,L"Item 1",TNoParam());
		var_Editor->AddItem(2,L"Item 2",TNoParam());
		var_Editor->AddItem(3,L"Item 3",TNoParam());
Exg2anttlib_tlb::IColumnPtr var_Column1 = G2antt1->Columns->Add(L"Format");
	var_Column1->FormatColumn = L"%0";
	var_Column1->Caption = var_Column1->FormatColumn;
	var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellForeColor,TVariant(8421504));
	var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exHeaderForeColor,TVariant(var_Column1->get_Def(Exg2anttlib_tlb::DefColumnEnum::exCellForeColor)));
	var_Column1->AllowSizing = false;
Exg2anttlib_tlb::IColumnPtr var_Column2 = G2antt1->Columns->Add(L"Format");
	var_Column2->FormatColumn = L"%C0";
	var_Column2->Caption = var_Column2->FormatColumn;
	var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellForeColor,TVariant(8421504));
	var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exHeaderForeColor,TVariant(var_Column2->get_Def(Exg2anttlib_tlb::DefColumnEnum::exCellForeColor)));
	var_Column2->AllowSizing = false;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant(1));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant(0))),TVariant(0),TVariant(2));
	var_Items->AddItem(TVariant(2));
G2antt1->EndUpdate();

1928:
How can I use the ShowNonworkingHours property (hide the non-working hours)

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->NonworkingHours = 16253183;
	var_Chart->ShowNonworkingHours = false;
	var_Chart->ShowNonworkingUnits = false;
G2antt1->EndUpdate();

1927:
How can I use the ShowNonworkingDates property (hide the non-working days)

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exDay;
	var_Chart->ShowNonworkingDates = false;
	var_Chart->ShowNonworkingUnits = false;
G2antt1->EndUpdate();

1926:
How can I show/hide bars once the user checks or un-checks a column

// CellStateChanged event - Fired after cell's state has been changed.
void __fastcall TForm1::G2antt1CellStateChanged(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,long   ColIndex)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarTransparent,TVariant("cellstate(0) = 1 ? 0 : 100"));
}

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarTransparent,TVariant("cellstate(0) = 1 ? 0 : 100"));
G2antt1->EndUpdate();

1925:
How can I change the color for all Task bars

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant("itembar(0) = `Task`"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(65280));
G2antt1->EndUpdate();

1924:
Is it possible to automatically select bars only when user selects a new item

// SelectionChanged event - Fired after a new item has been selected.
void __fastcall TForm1::G2antt1SelectionChanged(TObject *Sender)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant("itemisselected"));
}

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
G2antt1->Columns->Add(L"Tasks");
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowSelectObjects = Exg2anttlib_tlb::SelectObjectsEnum::exNoSelectObjects;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
G2antt1->EndUpdate();

1923:
Is it possible to automatically select bars only when the user clicks the column's checkbox

// CellStateChanged event - Fired after cell's state has been changed.
void __fastcall TForm1::G2antt1CellStateChanged(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,long   ColIndex)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant("cellstate(0) = 1"));
}

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowSelectObjects = Exg2anttlib_tlb::SelectObjectsEnum::exNoSelectObjects;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
G2antt1->EndUpdate();

1922:
How do I select all bars on leaf items

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant("itemlevel = 1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(true));
G2antt1->EndUpdate();

1921:
How can I change the caption for all checked Task bars

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant("(cellstate(0) = 1) and (itembar(0) = `Task`)"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("`new caption`"));
G2antt1->EndUpdate();

1920:
How can I change the caption for all Task bars

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant("(itembar(0) = `Task`)"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("`new caption`"));
G2antt1->EndUpdate();

1919:
How can I change the caption for all bars

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("`new caption`"));
G2antt1->EndUpdate();

1918:
How can I move all Task bars to end at the same date time

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant("(itembar(0) = `Task`)"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarMove,TVariant("#8/14/2017# - itembar(2)"));
G2antt1->EndUpdate();

1917:
How can I move all Task bars to start at the same date time

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant("(itembar(0) = `Task`)"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarMove,TVariant("#8/3/2017# - itembar(1)"));
G2antt1->EndUpdate();

1916:
How can I change the color for checked Task bars

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant("cellstate(0) = 1 and itembar(0) = `Task`"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));
G2antt1->EndUpdate();

1915:
How do I resize all Task bars programatically

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant("itembar(0) = `Task`"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarEnd,TVariant("value + 2"));
G2antt1->EndUpdate();

1914:
How do I move just the checked Task bars in the chart

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant("cellstate(0) = 1 and itembar(0) = `Task`"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarMove,TVariant(-2));
G2antt1->EndUpdate();

1913:
How do I move all Task bars in the chart

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant("itembar(0) = `Task`"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarMove,TVariant(1));
G2antt1->EndUpdate();

1912:
How do I count all Task bars in the chart
G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
G2antt1->Columns->Add(L"Tasks");
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	OutputDebugString( PChar(var_Items->get_ItemBarEx(TVariant("itembar(0) = `Task`"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
G2antt1->EndUpdate();

1911:
How do I select bars whose items are checked

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Tasks");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->SelBackColor = RGB(240,240,240);
G2antt1->SelForeColor = RGB(0,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,8,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Summary"));
		var_Bar->StartShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->EndShape = Exg2anttlib_tlb::ShapeCornerEnum::exShapeIconEmpty;
		var_Bar->Shape = Exg2anttlib_tlb::ShapeBarEnum::exShapeThinDown;
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project"));
	long hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,2).operator double()),TVariant(TDateTime(2017,8,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(hChild,true);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,3).operator double()),TVariant(TDateTime(2017,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	hChild = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(hChild,TVariant("Task"),TVariant(TDateTime(2017,8,4).operator double()),TVariant(TDateTime(2017,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_CellState(TVariant(hChild),TNoParam(),1);
	var_Items->AddBar(h,TVariant("Summary"),TVariant(TDateTime(2017,8,1).operator double()),TVariant(TDateTime(2017,8,1).operator double()),TVariant("sum"),TNoParam());
	var_Items->DefineSummaryBars(h,TVariant("sum"),-3,TVariant(""));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ItemBarEx(TVariant("cellstate(0) = 1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(true));
G2antt1->EndUpdate();

1910:
How can I select all bars, where a specified column matches a specified criteria

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
G2antt1->Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
G2antt1->Chart->set_PaneWidth(false,48);
G2antt1->Chart->SelBarColor = RGB(255,0,0);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TVariant("K1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("K2"),TVariant("K2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("P"),TVariant("P"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("Q"),TVariant("Q"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("M"),TVariant("M"));
	var_Items->set_ItemBarEx(TVariant("cellcaption(0) = `Task 1`"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(true));
G2antt1->EndUpdate();

1909:
How can I select/unselect all bars

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
G2antt1->Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
G2antt1->Chart->set_PaneWidth(false,48);
G2antt1->Chart->SelBarColor = RGB(255,0,0);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TVariant("K1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("K2"),TVariant("K2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("P"),TVariant("P"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("Q"),TVariant("Q"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 4")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("M"),TVariant("M"));
	var_Items->set_ItemBarEx(TVariant(true),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(true));
G2antt1->EndUpdate();

1908:
Is it possible to set the background color of the chart for one item and one day
G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Items");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("Item"));
	long h = var_Items->AddItem(TVariant("Item"));
	var_Items->AddBar(h,TVariant(""),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,3).operator double()),TVariant("Back"),TVariant(" "));
	var_Items->set_ItemBar(h,TVariant("Back"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarBackColor,TVariant(255));
	var_Items->set_ItemBar(h,TVariant("Back"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelectable,TVariant(false));
	var_Items->AddItem(TVariant("Item"));
G2antt1->EndUpdate();

1907:
It is possible to search for an item ( inside the Editor ), case insensitive

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IEditorPtr var_Editor = G2antt1->Columns->Add(L"DropDownList")->Editor;
	var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
	var_Editor->AddItem(1,L"One",TNoParam());
	var_Editor->AddItem(2,L"Two",TNoParam());
	var_Editor->AddItem(3,L"Three",TNoParam());
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant(G2antt1->Columns->get_Item(TVariant(0))->Editor->get_FindItem(TVariant(">ONE"))));
	var_Items->AddItem(TVariant(G2antt1->Columns->get_Item(TVariant(0))->Editor->get_FindItem(TVariant(">ThRee"))));
	var_Items->AddItem(TVariant(G2antt1->Columns->get_Item(TVariant(0))->Editor->get_FindItem(TVariant("ONE"))));
	var_Items->AddItem(TVariant(G2antt1->Columns->get_Item(TVariant(0))->Editor->get_FindItem(TVariant(">tWo"))));
G2antt1->EndUpdate();

1906:
The text after the BR-tag is in same line as the text before the BR-tag (entire column)

G2antt1->BeginUpdate();
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
G2antt1->Chart->set_PaneWidth(true,0);
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Default");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueFormat,TVariant(1));
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellSingleLine,TVariant(false));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("This is the first line.<br>This is the second line."));
	var_Items->AddItem(TVariant("This is the first line.<br>This is the second line."));
	var_Items->AddItem(TVariant("This is the first line.<br>This is the second line."));
G2antt1->EndUpdate();

1905:
The text after the BR-tag is in same line as the text before the BR-tag (individual)

G2antt1->BeginUpdate();
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
G2antt1->Chart->set_PaneWidth(true,0);
G2antt1->Columns->Add(L"Default");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellValueFormat(TVariant(var_Items->AddItem(TVariant("This is the first line.<br>This is the second line."))),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	long h = var_Items->AddItem(TVariant("<b>This is the first line.<br>This is the second line.</b>"));
	var_Items->set_CellValueFormat(TVariant(h),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_CellSingleLine(TVariant(h),TVariant(0),false);
	var_Items->set_CellValueFormat(TVariant(var_Items->AddItem(TVariant("This is the first line.<br>This is the second line."))),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
G2antt1->EndUpdate();

1904:
How do I prevent showing the control's BackColorAlternate property on empty / non-items part of the control

G2antt1->BeginUpdate();
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
G2antt1->BackColorAlternate = 0x7ff0f0f0;
G2antt1->BackColorLevelHeader = G2antt1->BackColor;
G2antt1->Columns->Add(L"Column");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 1")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 2")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 3")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 4")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,13).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 5")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1903:
Can I disable an item once the user selects a new value into a different item

// Change event - Occurs when the user changes the cell's content.
void __fastcall TForm1::G2antt1Change(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,long   ColIndex,Variant *   NewValue)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->set_EnableItem(var_Items->get_ItemByIndex(1),false);
}

G2antt1->FreezeEvents(true);
G2antt1->BeginUpdate();
G2antt1->Chart->set_PaneWidth(true,0);
G2antt1->ScrollBySingleLine = true;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
G2antt1->Columns->Add(L"Q");
G2antt1->Columns->Add(L"A");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("What's your gender?"));
	Exg2anttlib_tlb::IEditorPtr var_Editor = var_Items->get_CellEditor(TVariant(h1),TVariant(1));
		var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
		var_Editor->AddItem(1,L"Male",TNoParam());
		var_Editor->AddItem(0,L"Female",TNoParam());
	var_Items->set_CellValue(TVariant(h1),TVariant(1),TVariant(1));
	long h2 = var_Items->AddItem(TVariant("What's pet name?"));
	var_Items->set_CellValue(TVariant(h2),TVariant(1),TVariant("This is my pet favorite long long long name, that shoul break the line in multiple pieces"));
	var_Items->set_CellSingleLine(TVariant(h2),TVariant(1),false);
G2antt1->EndUpdate();
G2antt1->FreezeEvents(false);

1902:
How can I get a row expanded / enlarged to fit the cell's text (entire column)

G2antt1->BeginUpdate();
G2antt1->Chart->set_PaneWidth(true,0);
G2antt1->ScrollBySingleLine = true;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
G2antt1->Columns->Add(L"Q");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"A");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellSingleLine,TVariant(false));
	Exg2anttlib_tlb::IEditorPtr var_Editor = var_Column->Editor;
		var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::MemoType;
		var_Editor->Appearance = Exg2anttlib_tlb::InplaceAppearanceEnum::SingleApp;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("What's name?"));
	var_Items->set_CellValue(TVariant(h1),TVariant(1),TVariant("This is my pet favorite long long long name, that shoul break the line in multiple pieces"));
	long h2 = var_Items->AddItem(TVariant("What's your pet name?"));
	var_Items->set_CellValue(TVariant(h2),TVariant(1),TVariant("This is my pet favorite long long long name, that shoul break the line in multiple pieces"));
G2antt1->EndUpdate();

1901:
How can I get a row expanded / enlarged to fit the cell's text (individual cell)

G2antt1->BeginUpdate();
G2antt1->Chart->set_PaneWidth(true,0);
G2antt1->ScrollBySingleLine = true;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
G2antt1->Columns->Add(L"Q");
G2antt1->Columns->Add(L"A");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("What's name?"));
	var_Items->set_CellValue(TVariant(h1),TVariant(1),TVariant("This is my pet favorite long long long name, that shoul break the line in multiple pieces"));
	long h2 = var_Items->AddItem(TVariant("What's your pet name?"));
	Exg2anttlib_tlb::IEditorPtr var_Editor = var_Items->get_CellEditor(TVariant(h2),TVariant(1));
		var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::MemoType;
		var_Editor->Appearance = Exg2anttlib_tlb::InplaceAppearanceEnum::SingleApp;
	var_Items->set_CellValue(TVariant(h2),TVariant(1),TVariant("This is my pet favorite long long long name, that shoul break the line in multiple pieces"));
	var_Items->set_CellSingleLine(TVariant(h2),TVariant(1),false);
G2antt1->EndUpdate();