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

// BarResizing event - Occurs when a bar is moving or resizing.
void __fastcall TForm1::G2antt1BarResizing(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,Variant   Key)
{
	OutputDebugString( L"Start" );
	OutputDebugString( L"Key" );
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(Item,TVariant(Key),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarStartStr)) );
	OutputDebugString( L"End" );
	OutputDebugString( L"Key" );
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(Item,TVariant(Key),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarEndStr)) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
G2antt1->Debug = true;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exMinute;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,24).operator double()),TVariant("K1"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2006,9,22).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2006,9,23).operator double()),TVariant(TDateTime(2006,9,26).operator double()),TVariant("K3"),TNoParam());
G2antt1->EndUpdate();

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

// BarResizing event - Occurs when a bar is moving or resizing.
void __fastcall TForm1::G2antt1BarResizing(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,Variant   Key)
{
	OutputDebugString( L"Start" );
	OutputDebugString( L"Key" );
	OutputDebugString( PChar(G2antt1->FormatABC(L"dateF(value)",G2antt1->Items->get_ItemBar(Item,TVariant(Key),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarStart),TNoParam(),TNoParam())) );
	OutputDebugString( L"End" );
	OutputDebugString( L"Key" );
	OutputDebugString( PChar(G2antt1->FormatABC(L"dateF(value)",G2antt1->Items->get_ItemBar(Item,TVariant(Key),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarEnd),TNoParam(),TNoParam())) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
G2antt1->Debug = true;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exMinute;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,24).operator double()),TVariant("K1"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2006,9,22).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2006,9,23).operator double()),TVariant(TDateTime(2006,9,26).operator double()),TVariant("K3"),TNoParam());
G2antt1->EndUpdate();

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

// BarResizing event - Occurs when a bar is moving or resizing.
void __fastcall TForm1::G2antt1BarResizing(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,Variant   Key)
{
	OutputDebugString( L"Start" );
	OutputDebugString( L"Key" );
	OutputDebugString( PChar(G2antt1->FormatABC(L"date(value) format `MM/dd/yyyy HH:mm:ss`",G2antt1->Items->get_ItemBar(Item,TVariant(Key),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarStart),TNoParam(),TNoParam())) );
	OutputDebugString( L"End" );
	OutputDebugString( L"Key" );
	OutputDebugString( PChar(G2antt1->FormatABC(L"date(value) format `MM/dd/yyyy HH:mm:ss`",G2antt1->Items->get_ItemBar(Item,TVariant(Key),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarEnd),TNoParam(),TNoParam())) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
G2antt1->Debug = true;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exMinute;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,24).operator double()),TVariant("K1"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2006,9,22).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2006,9,23).operator double()),TVariant(TDateTime(2006,9,26).operator double()),TVariant("K3"),TNoParam());
G2antt1->EndUpdate();

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

// Click event - Occurs when the user presses and then releases the left mouse button over the tree control.
void __fastcall TForm1::G2antt1Click(TObject *Sender)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		long h = var_Items->get_SelectedItem(0);
		var_Items->set_ItemBar(h,TVariant(var_Items->get_FirstItemBar(h)),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarResources,TVariant("+R4[10%]"));
}

G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->LevelCount = 2;
	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->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%49%>"));
G2antt1->Columns->Add(L"Machines");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Machine 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,6).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("K1"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarResources,TVariant("R1,R2"));
	h = var_Items->AddItem(TVariant("Machine 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,14).operator double()),TVariant("K2"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarResources,TVariant("R2[75%],R3"));
G2antt1->EndUpdate();

2333
Distributes resources to a bar

G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->LevelCount = 2;
	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->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%49%>"));
G2antt1->Columns->Add(L"Machines");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Machine 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,6).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("K1"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarResources,TVariant("R1,R2"));
	h = var_Items->AddItem(TVariant("Machine 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,14).operator double()),TVariant("K2"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarResources,TVariant("R2[75%],R3"));
G2antt1->EndUpdate();

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

Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2009,12,20).operator double()));
	var_Chart->MarkTimeZone(TVariant("TZ"),TVariant(TDateTime(2010,1,1).operator double()),TVariant(TDateTime(2010,1,3).operator double()),TVariant(65280),TVariant("1;;<c>TimeZone<b><off -4><a ;exp=just more info about>*</a></b>;1"));

2331
How can I have a tooltip for a marked TimeZone

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->ShowToolTip(G2antt1->Chart->get_TimeZoneFromPoint(-1,-1),TVariant(""),TNoParam(),TVariant("+8"),TNoParam());
}

Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2009,12,28).operator double()));
	var_Chart->MarkTimeZone(TVariant("Top"),TVariant(TDateTime(2010,1,1).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant(16711680),TVariant("1;;<fgcolor=FFFFFF>Top;1"));
	var_Chart->MarkTimeZone(TVariant("Partial"),TVariant(TDateTime(2010,1,8).operator double()),TVariant(TDateTime(2010,1,12).operator double()),TVariant(16711680),TVariant("50;;<fgcolor=FFFFFF>Partial;1"));
	var_Chart->MarkTimeZone(TVariant("Default"),TVariant(TDateTime(2010,1,15).operator double()),TVariant(TDateTime(2010,1,19).operator double()),TVariant(16711680),TVariant(";;<fgcolor=FFFFFF>Default;1"));

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

G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Items");
	var_Column->DisplayFilterButton = true;
	var_Column->DisplayFilterPattern = true;
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exFilterPatternTemplate,TVariant("*<%filter%>*"));
	var_Column->FilterType = Exg2anttlib_tlb::FilterTypeEnum::exPattern;
	var_Column->Filter = L"1";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Root 1"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 1"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 2"));
	var_Items->set_ExpandItem(h,true);
	h = var_Items->AddItem(TVariant("Root 2"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 1"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 2"));
G2antt1->ApplyFilter();
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
G2antt1->ColumnAutoResize = false;
G2antt1->Columns->Add(L"Column 1");
G2antt1->Columns->Add(L"Column 2");
G2antt1->Columns->Add(L"Column 3");
G2antt1->Columns->Add(L"Column 4");
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->ColumnAutoResize = false;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exVLines;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADODB.Recordset");
	rs->Open(TVariant("Select * FROM Employees WHERE 1=0"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.mdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->DataSource = (IDispatch*)rs;
G2antt1->Columns->get_Item(TVariant(0))->Width = 128;
rs = Variant::CreateObject(L"ADODB.Recordset");
	rs->Open(TVariant("Employees"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.mdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->PutItems(rs->GetRows(0,TNoParam(),TNoParam()),TVariant(";0;17"));
G2antt1->Items->set_ExpandItem(0,true);
G2antt1->EndUpdate();

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

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void __fastcall TForm1::G2antt1AddItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item)
{
	G2antt1->Items->set_CellEditorVisible(TVariant(Item),TVariant(0),Exg2anttlib_tlb::EditorVisibleEnum::exEditorVisible);
	G2antt1->Items->set_CellEditorVisible(TVariant(Item),TVariant(1),Exg2anttlib_tlb::EditorVisibleEnum::exEditorVisible);
}

// EditOpen event - Occurs when the edit operation starts.
void __fastcall TForm1::G2antt1EditOpen(TObject *Sender)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		TVariant v = TVariant(var_Items->get_CellValue(TVariant(var_Items->FocusItem),TVariant(0)));
		String c = var_Items->get_CellCaption(TVariant(var_Items->FocusItem),TVariant(0));
	Exg2anttlib_tlb::IEditorPtr var_Editor = G2antt1->Columns->get_Item(TVariant(1))->Editor;
		var_Editor->ClearItems();
		var_Editor->AddItem(v,L"c",TNoParam());
}

G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"DropDownList");
	Exg2anttlib_tlb::IEditorPtr var_Editor = var_Column->Editor;
		var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
		var_Editor->AddItem(1,L"First",TNoParam());
		var_Editor->AddItem(2,L"Second",TNoParam());
		var_Editor->AddItem(3,L"Third",TNoParam());
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
G2antt1->Columns->Add(L"DropDownList-Related")->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant(1))),TVariant(1),TVariant(-1));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant(2))),TVariant(1),TVariant(-1));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant(3))),TVariant(1),TVariant(-1));
	var_Items->set_LockedItemCount(Exg2anttlib_tlb::VAlignmentEnum::exBottom,1);
	long h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exBottom,0);
	var_Items->set_ItemDivider(h,0);
	var_Items->set_ItemDividerLineAlignment(h,Exg2anttlib_tlb::DividerAlignmentEnum::DividerTop);
	var_Items->set_CellEditorVisible(TVariant(h),TVariant(0),Exg2anttlib_tlb::EditorVisibleEnum::exEditorHidden);
	var_Items->set_CellSingleLine(TVariant(h),TVariant(0),Exg2anttlib_tlb::CellSingleLineEnum::exCaptionWordWrap);
	var_Items->set_CellValueFormat(TVariant(h),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_CellValue(TVariant(h),TVariant(0),TVariant(String("The drop down editor in the second column is filled during the <b>EditOpen event</b>, and the values are based on the selection") +
" on the first column."));
G2antt1->EndUpdate();

2326
Highlight the editable fields

// 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)
{
	G2antt1->Refresh();
}

G2antt1->FreezeEvents(true);
G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IConditionalFormatsPtr var_ConditionalFormats = G2antt1->ConditionalFormats;
	Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat = var_ConditionalFormats->Add(L"%CE1",TNoParam());
		var_ConditionalFormat->Bold = true;
		var_ConditionalFormat->BackColor = RGB(245,245,245);
		var_ConditionalFormat->ApplyTo = Exg2anttlib_tlb::FormatApplyToEnum(0x1);
	Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat1 = var_ConditionalFormats->Add(L"%CE2",TNoParam());
		var_ConditionalFormat1->Bold = true;
		var_ConditionalFormat1->BackColor = RGB(245,245,245);
		var_ConditionalFormat1->ApplyTo = Exg2anttlib_tlb::FormatApplyToEnum(0x2);
	Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat2 = var_ConditionalFormats->Add(L"%CE3",TNoParam());
		var_ConditionalFormat2->Bold = true;
		var_ConditionalFormat2->BackColor = RGB(245,245,245);
		var_ConditionalFormat2->ApplyTo = Exg2anttlib_tlb::FormatApplyToEnum(0x3);
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Description");
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Qty");
		var_Column->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("sum(current,rec,%1)"));
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"Price");
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("avg(current,rec,%2)"));
		var_Column1->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"Amount");
		var_Column2->ComputedField = L"%1 * %2";
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("sum(current,rec,%3)"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long r = var_Items->AddItem(TVariant("Root"));
	long g1 = var_Items->InsertItem(r,TNoParam(),TVariant("Group 1"));
	long h = var_Items->InsertItem(g1,TNoParam(),TVariant("Item 1"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(1));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(10));
	h = var_Items->InsertItem(g1,TNoParam(),TVariant("Item 2"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(2));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(11));
	long g2 = var_Items->InsertItem(r,TNoParam(),TVariant("Group 2"));
	h = var_Items->InsertItem(g2,TNoParam(),TVariant("Item 1"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(3));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(12));
	h = var_Items->InsertItem(g2,TNoParam(),TVariant("Item 2"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(4));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(13));
	var_Items->set_ExpandItem(0,true);
G2antt1->EndUpdate();
G2antt1->FreezeEvents(false);

2325
Highlight the total fields

// 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)
{
	G2antt1->Refresh();
}

G2antt1->FreezeEvents(true);
G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IConditionalFormatsPtr var_ConditionalFormats = G2antt1->ConditionalFormats;
	Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat = var_ConditionalFormats->Add(L"%CT1",TNoParam());
		var_ConditionalFormat->ForeColor = RGB(128,128,128);
		var_ConditionalFormat->ApplyTo = Exg2anttlib_tlb::FormatApplyToEnum(0x1);
	Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat1 = var_ConditionalFormats->Add(L"%CT2",TNoParam());
		var_ConditionalFormat1->ForeColor = RGB(128,128,128);
		var_ConditionalFormat1->ApplyTo = Exg2anttlib_tlb::FormatApplyToEnum(0x2);
	Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat2 = var_ConditionalFormats->Add(L"%CT3",TNoParam());
		var_ConditionalFormat2->ForeColor = RGB(128,128,128);
		var_ConditionalFormat2->ApplyTo = Exg2anttlib_tlb::FormatApplyToEnum(0x3);
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Description");
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Qty");
		var_Column->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("sum(current,rec,%1)"));
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"Price");
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("avg(current,rec,%2)"));
		var_Column1->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"Amount");
		var_Column2->ComputedField = L"%1 * %2";
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("sum(current,rec,%3)"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long r = var_Items->AddItem(TVariant("Root"));
	long g1 = var_Items->InsertItem(r,TNoParam(),TVariant("Group 1"));
	long h = var_Items->InsertItem(g1,TNoParam(),TVariant("Item 1"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(1));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(10));
	h = var_Items->InsertItem(g1,TNoParam(),TVariant("Item 2"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(2));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(11));
	long g2 = var_Items->InsertItem(r,TNoParam(),TVariant("Group 2"));
	h = var_Items->InsertItem(g2,TNoParam(),TVariant("Item 1"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(3));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(12));
	h = var_Items->InsertItem(g2,TNoParam(),TVariant("Item 2"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(4));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(13));
	var_Items->set_ExpandItem(0,true);
G2antt1->EndUpdate();
G2antt1->FreezeEvents(false);

2324
Highlight the leaf items

G2antt1->BeginUpdate();
G2antt1->ConditionalFormats->Add(L"%CC0=0",TNoParam())->ForeColor = RGB(128,128,128);
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Item")->Width = 16;
	var_Columns->Add(L"Desc");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long hR = var_Items->AddItem(TVariant("Root"));
	var_Items->set_CellValue(TVariant(hR),TVariant(1),TVariant("The root directory /"));
	var_Items->set_ExpandItem(hR,true);
	long h = var_Items->InsertItem(hR,TNoParam(),TVariant("Home"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("The home directory with user directories Alice and Bob"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Alice"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Bob"));
	var_Items->set_ExpandItem(h,true);
	h = var_Items->InsertItem(hR,TNoParam(),TVariant("Etc"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("The etc directory with one configuration file"));
	h = var_Items->InsertItem(h,TNoParam(),TVariant("nginx.conf"));
	var_Items->set_CellValue(TVariant(var_Items->InsertItem(hR,TNoParam(),TVariant("Var"))),TVariant(1),TVariant("The var directory"));
G2antt1->EndUpdate();

2323
Highlight the parent items

G2antt1->BeginUpdate();
G2antt1->ConditionalFormats->Add(L"%CC0",TNoParam())->ForeColor = RGB(255,0,0);
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Item")->Width = 16;
	var_Columns->Add(L"Desc");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long hR = var_Items->AddItem(TVariant("Root"));
	var_Items->set_CellValue(TVariant(hR),TVariant(1),TVariant("The root directory /"));
	var_Items->set_ExpandItem(hR,true);
	long h = var_Items->InsertItem(hR,TNoParam(),TVariant("Home"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("The home directory with user directories Alice and Bob"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Alice"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Bob"));
	var_Items->set_ExpandItem(h,true);
	h = var_Items->InsertItem(hR,TNoParam(),TVariant("Etc"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("The etc directory with one configuration file"));
	h = var_Items->InsertItem(h,TNoParam(),TVariant("nginx.conf"));
	var_Items->set_CellValue(TVariant(var_Items->InsertItem(hR,TNoParam(),TVariant("Var"))),TVariant(1),TVariant("The var directory"));
G2antt1->EndUpdate();

2322
Highlight the item being expanded or collapsed

G2antt1->BeginUpdate();
G2antt1->ConditionalFormats->Add(L"%CX0",TNoParam())->Bold = true;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Item")->Width = 16;
	var_Columns->Add(L"Desc");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long hR = var_Items->AddItem(TVariant("Root"));
	var_Items->set_CellValue(TVariant(hR),TVariant(1),TVariant("The root directory /"));
	var_Items->set_ExpandItem(hR,true);
	long h = var_Items->InsertItem(hR,TNoParam(),TVariant("Home"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("The home directory with user directories Alice and Bob"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Alice"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Bob"));
	var_Items->set_ExpandItem(h,true);
	h = var_Items->InsertItem(hR,TNoParam(),TVariant("Etc"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("The etc directory with one configuration file"));
	h = var_Items->InsertItem(h,TNoParam(),TVariant("nginx.conf"));
	var_Items->set_CellValue(TVariant(var_Items->InsertItem(hR,TNoParam(),TVariant("Var"))),TVariant(1),TVariant("The var directory"));
G2antt1->EndUpdate();

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

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

G2antt1->FreezeEvents(true);
G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Description");
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Qty");
		var_Column->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("sum(current,rec,%1)"));
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"Price");
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("avg(current,rec,%2)"));
		var_Column1->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"Amount");
		var_Column2->ComputedField = L"%1 * %2";
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("sum(current,rec,%3)"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long r = var_Items->AddItem(TVariant("Root"));
	long g1 = var_Items->InsertItem(r,TNoParam(),TVariant("Group 1"));
	var_Items->set_FormatCell(TVariant(g1),TVariant(2),L"`<average missing>`");
	var_Items->set_CellEditorVisible(TVariant(g1),TVariant(2),Exg2anttlib_tlb::EditorVisibleEnum::exEditorHidden);
	var_Items->set_CellBold(TVariant(g1),TVariant(2),true);
	var_Items->set_CellForeColor(TVariant(g1),TVariant(2),RGB(255,0,0));
	long h = var_Items->InsertItem(g1,TNoParam(),TVariant("Item 1"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(1));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(10));
	h = var_Items->InsertItem(g1,TNoParam(),TVariant("Item 2"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(2));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(11));
	long g2 = var_Items->InsertItem(r,TNoParam(),TVariant("Group 2"));
	h = var_Items->InsertItem(g2,TNoParam(),TVariant("Item 1"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(3));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(12));
	h = var_Items->InsertItem(g2,TNoParam(),TVariant("Item 2"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(4));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(13));
	var_Items->set_ExpandItem(0,true);
G2antt1->EndUpdate();
G2antt1->FreezeEvents(false);

2320
How can I add a total column

// 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)
{
	G2antt1->Refresh();
}

G2antt1->FreezeEvents(true);
G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Description");
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Qty");
		var_Column->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("sum(current,rec,%1)"));
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"Price");
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("avg(current,rec,%2)"));
		var_Column1->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"Amount");
		var_Column2->ComputedField = L"%1 * %2";
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exTotalColumn,TVariant("sum(current,rec,%3)"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long r = var_Items->AddItem(TVariant("Root"));
	long g1 = var_Items->InsertItem(r,TNoParam(),TVariant("Group 1"));
	long h = var_Items->InsertItem(g1,TNoParam(),TVariant("Item 1"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(1));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(10));
	h = var_Items->InsertItem(g1,TNoParam(),TVariant("Item 2"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(2));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(11));
	long g2 = var_Items->InsertItem(r,TNoParam(),TVariant("Group 2"));
	h = var_Items->InsertItem(g2,TNoParam(),TVariant("Item 1"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(3));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(12));
	h = var_Items->InsertItem(g2,TNoParam(),TVariant("Item 2"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(4));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant(13));
	var_Items->set_ExpandItem(0,true);
G2antt1->EndUpdate();
G2antt1->FreezeEvents(false);

2319
Is it possible when I move the horizontal scroll bar, that the whole chart scrolls live during move the horizontal scroll bar. Not it scrolls just when I release the left mouse, not during change the horizontal scroll position
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->ToolTip = L"";

2318
The exLinkStyle is not valid (the style of the link is still solid) if the link's width is greater than 1. What can be done
G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->set_PaneWidth(false,128);
G2antt1->AntiAliasing = true;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkStyle,TVariant(2));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkWidth,TVariant(2));
	long h3 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkStyle,TVariant(1));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkWidth,TVariant(2));
G2antt1->EndUpdate();

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

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->ShowToolTip(G2antt1->Chart->get_BarFromPoint(-1,-1),TNoParam(),TNoParam(),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
G2antt1->ToolTipMargin = L"16,8";
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("..."));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,5).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant("B"),TVariant("B"));
G2antt1->EndUpdate();

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

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->ShowToolTip(G2antt1->Chart->get_BarFromPoint(-1,-1),TNoParam(),TNoParam(),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
G2antt1->ToolTipMargin = L"16,8";
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("..."));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,5).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant("B"),TVariant("B"));
G2antt1->EndUpdate();

2315
exShowExtendedLinks

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 24;
G2antt1->HeaderHeight = 20;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->AntiAliasing = true;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2024,1,10).operator double()));
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(1);
		var_Level->DrawTickLines = Exg2anttlib_tlb::LevelLineEnum::exLevelNoLine;
		var_Level->DrawTickLinesFrom(0,Exg2anttlib_tlb::LevelLineEnum::exLevelDotLine);
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum(0xfffffef9 | Exg2anttlib_tlb::ResizeChartEnum::exAllowChangeUnitScale | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader);
	var_Chart->ShowLinks = Exg2anttlib_tlb::ShowExtendedLinksEnum::exShowExtendedLinks;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("T1")),TVariant("Task"),TVariant(TDateTime(2024,1,10,10,00,00,0).operator double()),TVariant(TDateTime(2024,1,10,10,20,00,0).operator double()),TVariant("T1"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("T2")),TVariant("Task"),TVariant(TDateTime(2024,1,10,9,00,00,0).operator double()),TVariant(TDateTime(2024,1,10,12,00,00,0).operator double()),TVariant("T2"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("T3")),TVariant("Task"),TVariant(TDateTime(2024,1,10,8,00,00,0).operator double()),TVariant(TDateTime(2024,1,10,8,30,00,0).operator double()),TVariant("T3"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("T4")),TVariant("Task"),TVariant(TDateTime(2024,1,10,8,00,00,0).operator double()),TVariant(TDateTime(2024,1,10,8,30,00,0).operator double()),TVariant("T4"),TNoParam());
	var_Items->AddLink(TVariant("L13"),var_Items->get_ItemByIndex(0),TVariant("T1"),var_Items->get_ItemByIndex(2),TVariant("T3"));
	var_Items->AddLink(TVariant("L14"),var_Items->get_ItemByIndex(0),TVariant("T1"),var_Items->get_ItemByIndex(3),TVariant("T4"));
	var_Items->AddLink(TVariant("L24"),var_Items->get_ItemByIndex(1),TVariant("T2"),var_Items->get_ItemByIndex(3),TVariant("T4"));
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 24;
G2antt1->HeaderHeight = 20;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->AntiAliasing = true;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2024,1,10).operator double()));
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(1);
		var_Level->DrawTickLines = Exg2anttlib_tlb::LevelLineEnum::exLevelNoLine;
		var_Level->DrawTickLinesFrom(0,Exg2anttlib_tlb::LevelLineEnum::exLevelDotLine);
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum(0xfffffef9 | Exg2anttlib_tlb::ResizeChartEnum::exAllowChangeUnitScale | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("T1")),TVariant("Task"),TVariant(TDateTime(2024,1,10,10,00,00,0).operator double()),TVariant(TDateTime(2024,1,10,10,20,00,0).operator double()),TVariant("T1"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("T2")),TVariant("Task"),TVariant(TDateTime(2024,1,10,9,00,00,0).operator double()),TVariant(TDateTime(2024,1,10,12,00,00,0).operator double()),TVariant("T2"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("T3")),TVariant("Task"),TVariant(TDateTime(2024,1,10,8,00,00,0).operator double()),TVariant(TDateTime(2024,1,10,8,30,00,0).operator double()),TVariant("T3"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("T4")),TVariant("Task"),TVariant(TDateTime(2024,1,10,8,00,00,0).operator double()),TVariant(TDateTime(2024,1,10,8,30,00,0).operator double()),TVariant("T4"),TNoParam());
	var_Items->AddLink(TVariant("L1"),var_Items->get_ItemByIndex(0),TVariant("T1"),var_Items->get_ItemByIndex(2),TVariant("T3"));
	var_Items->AddLink(TVariant("L2"),var_Items->get_ItemByIndex(1),TVariant("T2"),var_Items->get_ItemByIndex(3),TVariant("T4"));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkShowRound,TVariant(4));
G2antt1->EndUpdate();

2313
How to use arrows key left/right to move the cursor left/right inside the text
G2antt1->BeginUpdate();
Exg2anttlib_tlb::IEditorPtr var_Editor = G2antt1->Columns->Add(L"Edit")->Editor;
	var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
	var_Editor->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exLeftArrow,TVariant(false));
	var_Editor->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exRightArrow,TVariant(false));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("000"));
	var_Items->AddItem(TVariant("111"));
	var_Items->AddItem(TVariant("222"));
G2antt1->EndUpdate();

2312
How can I force the cursor to jump to the end of the editor once the user clicks the cell
G2antt1->BeginUpdate();
G2antt1->SelBackColor = G2antt1->BackColor;
G2antt1->SelForeColor = G2antt1->ForeColor;
Exg2anttlib_tlb::IEditorPtr var_Editor = G2antt1->Columns->Add(L"Edit")->Editor;
	var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
	var_Editor->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exEditSelStart,TVariant(-1));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("000"));
	var_Items->AddItem(TVariant("111"));
	var_Items->AddItem(TVariant("222"));
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->VisualAppearance->Add(1,TVariant(String("gBFLBCJwBAEHhEJAAEhABVIDg6AADACAxRDAMgBQKAAzAJBIYhiGgcYCgMZBSDeCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADE2YAoJDUN4nDKMMDybBkRxtDCPIDnGQoD") +
"iGI4nSbKIzSCKMQhrEKZZrnaLJFgOTY8ABLEBvfSgASof6MKBlKhKGoiUo2SCFEaBTBNHxDL6raqqWJ5HDINQlWzbcjjKKFYRbOqTZDkGj4XqKTo3YBAdZSXJsXwTGKk" +
"ji3ZgMOR3HaQaTjOgINpuDZdRzkUYZUDFSwSDqQIRtCpbJqzFZDZbLNbYBYME47AayID0CbdCgmaalSZHNxbVa0BzpXrFLw1TLoDy8AJ+ABseKzfo9PxdIygZRzKJ8ao" +
"fE+YxynIfJcC8QgbCmL5eiEPIKH6RABlibJpicW4/FcAx/HOYRGmud4+CcHxdmiDhkGEIIIEkQJSGMHQHFGSBlFEUITEmewAAQIQ2AYRpDGQJAoEIXhXCkCB5kmSAdmg" +
"VZPmgZJ8gaT4oHSeIHk8aIEnWCJiEiFgmgmYoIiYJIIE8aB8niB0pmyfIGE+ZYmDQPpjgOUg6DqY5DgYPg2mQAxqEKEJkEkFhGhGZIJA4QA2mOY4GDwOsumCe4NAACJK" +
"DoPQOFkZJThaSoZHSGYXmYCYGGKGJmEmFhmCsJoDFYag5iaSISDIAAjAkPJLhyS4JlYbA5iSeZmHqHpnkmdh+hOZx5lSOAzGgSQ+DAAAimkNIkiKTh6DSbIjmkChGhKJ" +
"JpEoVoWiSaJThyKImmSWI4ACCwNkqBhgDsahKhaJopmqComiqKpqkqEhghKYpAAIJIQmYA46jaLZrgqZo6i6a5KnaPotiZRQkiyIg6lIXw7myCwmkqMpsksNpOjObQLC" +
"KQYQiwOpOEKGAPAsZpajabZLHaXo3m4C4GlmNJNisVpFjWZZzkaao6m6S42m6O5vAuRpyjqLhLhidYxgmE5KnqPpvkudp+j+cAMAcAo+i8WIOkSPZuguZwDkKcJMDafp" +
"BE8XAengPJxEwVwWkWcYMGcGpGnGTBTBCRIwhkXwikichMhcJpJnKDIPB+NYNimAgqkucwMkcMoInKO4fC2F5ikyZw6k6c5MncPpPnOLJXAiTZJhOXxGlGdINCcSpSnS" +
"TQ3E6UY0CuYgulSdRNFcVpVnWDRnFSVBwh0axeledgNFsXJRA+HYXGaWZ2g2JxqlqdpNjcZZYmYCJDHKXJ3E2K4doux3gbE8OEF4ygtjuH6L8eAHAHgFGCO8bY2QZgZD" +
"iBwJ4FRijxE4G8DoxBxj6B6EINwTADjvBaMseYHBng1GaPMTg7wepxA4J4Rx8RjgfCYFMeoEQ6BpGqPUTob2MD2A6IQLoNAKiHAuG0WYAAJCVBCCETAHR3DMFWPgDwD2" +
"9j4E8CoV4sw7imAIIcJASggAHBeBIJw5grikCmHoSYNxWjrH2BMAoNgqAZE8O0GYEg5DgAIG8DgxwjhXGaCYZIcgnxBGSDILgmwTjKHkJMNwqgjCREoGEC4RRMifHqJc" +
"YokQ6BgEYJEUIaQOhlHIIESAECAg="));
G2antt1->BackColorLevelHeader = G2antt1->BackColor;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exOverviewSelResize] = RGB(1,0,0);
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exOverviewSelOut] = RGB(240,240,240);
G2antt1->Chart->OverviewSelBackColor = RGB(255,255,255);
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exOverviewSelUnit] = 0x1000000;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,6,21).operator double()));
	var_Chart->set_PaneWidth(false,48);
	var_Chart->OverviewVisible = Exg2anttlib_tlb::OverviewVisibleEnum(0x400 | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowSelMargins | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowMargins | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowDateTimeScaleBottom | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowAllVisible);
	var_Chart->OverviewHeight = 64;
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exDay;
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exHour,L"");
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exMinute,L"");
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exSecond,L"");
	var_Chart->AllowOverviewZoom = Exg2anttlib_tlb::OverviewZoomEnum::exAlwaysZoom;
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,11).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 2")),TVariant("Task"),TVariant(TDateTime(2001,7,2).operator double()),TVariant(TDateTime(2001,7,11).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 3")),TVariant("Task"),TVariant(TDateTime(2001,11,2).operator double()),TVariant(TDateTime(2001,11,11).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->BackColorLevelHeader = G2antt1->BackColor;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exOverviewSelResize] = RGB(0,0,255);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,6,21).operator double()));
	var_Chart->set_PaneWidth(false,48);
	var_Chart->OverviewVisible = Exg2anttlib_tlb::OverviewVisibleEnum(0x400 | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowSelMargins | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowMargins | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowDateTimeScaleBottom | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowAllVisible);
	var_Chart->OverviewHeight = 64;
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exDay;
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,11).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 2")),TVariant("Task"),TVariant(TDateTime(2001,7,2).operator double()),TVariant(TDateTime(2001,7,11).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 3")),TVariant("Task"),TVariant(TDateTime(2001,11,2).operator double()),TVariant(TDateTime(2001,11,11).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->BackColorLevelHeader = G2antt1->BackColor;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exOverviewSelResize] = RGB(1,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,6,21).operator double()));
	var_Chart->set_PaneWidth(false,48);
	var_Chart->OverviewVisible = Exg2anttlib_tlb::OverviewVisibleEnum(0x400 | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowSelMargins | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowMargins | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowDateTimeScaleBottom | Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowAllVisible);
	var_Chart->OverviewHeight = 64;
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exDay;
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,11).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 2")),TVariant("Task"),TVariant(TDateTime(2001,7,2).operator double()),TVariant(TDateTime(2001,7,11).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 3")),TVariant("Task"),TVariant(TDateTime(2001,11,2).operator double()),TVariant(TDateTime(2001,11,11).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->OnResizeControl = Exg2anttlib_tlb::OnResizeControlEnum::exResizeChart;
G2antt1->SortBarVisible = true;
G2antt1->SortBarCaption = L"<fgcolor 808080><c>the header and the sort-bar are disabled (no drag and drop is allowed)";
G2antt1->AllowGroupBy = true;
G2antt1->HeaderEnabled = false;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->Columns->Add(L"Index")->FormatColumn = L"1 index ``";
G2antt1->Columns->Add(L"Pos")->FormatColumn = L"1 apos ``";
G2antt1->Columns->Add(L"Edit")->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exVLines;
G2antt1->GridLineColor = RGB(224,224,224);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,196);
	var_Chart->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(1);
		var_Level->DrawGridLines = true;
		var_Level->GridLineColor = G2antt1->GridLineColor;
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("Link1"),h1,TVariant(""),h2,TVariant(""));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("Link1"),h1,TVariant(""),h2,TVariant(""));
	var_Items->set_Link(TVariant("Link1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkStartPos,TVariant(0));
	var_Items->set_Link(TVariant("Link1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkEndPos,TVariant(0));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("Link1"),h1,TVariant(""),h2,TVariant(""));
	var_Items->set_Link(TVariant("Link1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkStartPos,TVariant(2));
	var_Items->set_Link(TVariant("Link1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkEndPos,TVariant(2));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("Link1"),h1,TVariant(""),h2,TVariant(""));
	var_Items->set_Link(TVariant("Link1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkStartPos,TVariant(0));
	var_Items->set_Link(TVariant("Link1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkEndPos,TVariant(2));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h2,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarPredecessor,TVariant("1FS"));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h2,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarPredecessor,TVariant("1SS"));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

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

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h2,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarPredecessor,TVariant("1FF"));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

2300
Adds a Start-Finish(SF) link (method 2)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h2,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarPredecessor,TVariant("1SF"));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

2299
Adds a Start-Finish(SF) link (method 1)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("Link1"),h1,TVariant(""),h2,TVariant(""));
	var_Items->set_Link(TVariant("Link1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkType,TVariant("SF"));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

2298
Adds a Finish-Finish(FF) link (method 1)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("Link1"),h1,TVariant(""),h2,TVariant(""));
	var_Items->set_Link(TVariant("Link1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkType,TVariant("FF"));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

2297
Adds a Start-Start(SS) link (method 1)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("Link1"),h1,TVariant(""),h2,TVariant(""));
	var_Items->set_Link(TVariant("Link1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkType,TVariant("SS"));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

2296
Adds a Finish-Start(FS) link (method 1)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("Link1"),h1,TVariant(""),h2,TVariant(""));
	var_Items->set_Link(TVariant("Link1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkType,TVariant("FS"));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

2295
What is the difference between lags with "W" or without

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->Add(L"Task:Split");
		var_Bar->Shortcut = L"Task";
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKeepWorkingCount,TVariant(true));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 1")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).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,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 3")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(var_Items->get_ItemByIndex(0),TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSuccessor,TVariant("2SF:-1,3SF:-1W"));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

2294
What is the difference between lags with "W" or without

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 1")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).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,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 3")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(var_Items->get_ItemByIndex(0),TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSuccessor,TVariant("2SF:-1,3SF:-1W"));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

2293
How can I remove all outgoing links

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 1")),TVariant("Task"),TVariant(TDateTime(2001,1,1).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 2")),TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 3")),TVariant("Task"),TVariant(TDateTime(2001,1,9).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("L1"),var_Items->get_ItemByIndex(0),TVariant(""),var_Items->get_ItemByIndex(1),TVariant(""));
	var_Items->AddLink(TVariant("L2"),var_Items->get_ItemByIndex(1),TVariant(""),var_Items->get_ItemByIndex(2),TVariant(""));
	var_Items->set_ItemBar(var_Items->get_ItemByIndex(1),TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSuccessor,TVariant(""));
G2antt1->EndUpdate();

2292
How can I remove all incoming links

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 1")),TVariant("Task"),TVariant(TDateTime(2001,1,1).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 2")),TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 3")),TVariant("Task"),TVariant(TDateTime(2001,1,9).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("L1"),var_Items->get_ItemByIndex(0),TVariant(""),var_Items->get_ItemByIndex(1),TVariant(""));
	var_Items->AddLink(TVariant("L2"),var_Items->get_ItemByIndex(1),TVariant(""),var_Items->get_ItemByIndex(2),TVariant(""));
	var_Items->set_ItemBar(var_Items->get_ItemByIndex(1),TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarPredecessor,TVariant(""));
G2antt1->EndUpdate();

2291
How do I add a link between two bars (method 3)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,1).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 2")),TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSuccessor,TVariant("2SF"));
G2antt1->EndUpdate();

2290
How do I add a link between two bars (method 2)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Name");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Item 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,1).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 2")),TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarPredecessor,TVariant("2SF"));
G2antt1->EndUpdate();

2289
Highlight the selected-link while editing the predecessor/successor column

// AddLink event - Occurs when the user links two bars using the mouse.
void __fastcall TForm1::G2antt1AddLink(TObject *Sender,BSTR   LinkKey)
{
	G2antt1->Items->set_Link(TVariant(LinkKey),Exg2anttlib_tlb::LinkPropertyEnum::exLinkShowRound,TVariant(3));
}

G2antt1->BeginUpdate();
G2antt1->OnResizeControl = Exg2anttlib_tlb::OnResizeControlEnum::exResizeChart;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->ColumnAutoResize = false;
G2antt1->HeaderHeight = 32;
G2antt1->DefaultItemHeight = 28;
G2antt1->BackColorLevelHeader = RGB(255,255,255);
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exPSLinkColorEditSel] = RGB(160,160,160);
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exPSBarColorEditSel] = RGB(128,128,128);
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Name")->Width = 48;
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Start");
		var_Column->Width = 48;
		var_Column->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DateType;
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"End");
		var_Column1->Width = 48;
		var_Column1->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DateType;
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(543));
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"Predecessor");
		Exg2anttlib_tlb::IEditorPtr var_Editor = var_Column2->Editor;
			var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
			var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::MaskType;
			var_Editor->Mask = L";;;rich";
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(270));
	Exg2anttlib_tlb::IColumnPtr var_Column3 = var_Columns->Add(L"Successor");
		Exg2anttlib_tlb::IEditorPtr var_Editor1 = var_Column3->Editor;
			var_Editor1->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
			var_Editor1->EditType = Exg2anttlib_tlb::EditTypeEnum::MaskType;
			var_Editor1->Mask = L";;;rich";
		var_Column3->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(271));
	Exg2anttlib_tlb::IColumnPtr var_Column4 = var_Columns->Add(L"(I)");
		var_Column4->FormatColumn = L"1 index ``";
		var_Column4->Position = 0;
		var_Column4->AllowSizing = false;
		var_Column4->Width = 20;
G2antt1->ColumnAutoResize = true;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
G2antt1->GridLineColor = RGB(224,224,224);
G2antt1->AntiAliasing = true;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->ShowLinks = Exg2anttlib_tlb::ShowExtendedLinksEnum::exShowExtendedLinks;
	var_Chart->LinksStyle = Exg2anttlib_tlb::LinkStyleEnum::exLinkSolid;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,362);
	var_Chart->NonworkingDays = 0;
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAutoEndInclusive;
	var_Chart->AllowZoomOnFly = Exg2anttlib_tlb::ZoomOnFlyEnum(0xfffffcc4 | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyIncludeSelectedItems | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyBarsOnly | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFly | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyCtrl | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyShift);
	var_Chart->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->Height = 15;
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%C5%>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Phase A")),TVariant("Task"),TVariant(TDateTime(2001,1,1).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Phase B")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Phase C")),TVariant("Task"),TVariant(TDateTime(2000,12,29).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("L1"),var_Items->get_ItemByIndex(0),TVariant(""),var_Items->get_ItemByIndex(1),TVariant(""));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkPDMDelay,TVariant(1));
	var_Items->AddLink(TVariant("L2"),var_Items->get_ItemByIndex(0),TVariant(""),var_Items->get_ItemByIndex(2),TVariant(""));
	var_Items->AddLink(TVariant("L3"),var_Items->get_ItemByIndex(2),TVariant(""),var_Items->get_ItemByIndex(1),TVariant(""));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

2288
Adding an editable successor column

G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Name")->Width = 48;
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Successor");
		Exg2anttlib_tlb::IEditorPtr var_Editor = var_Column->Editor;
			var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
			var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::MaskType;
			var_Editor->Mask = L";;;rich";
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(271));
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"(I)");
		var_Column1->FormatColumn = L"1 index ``";
		var_Column1->Position = 0;
		var_Column1->AllowSizing = false;
		var_Column1->Width = 20;
G2antt1->ColumnAutoResize = true;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
G2antt1->GridLineColor = RGB(224,224,224);
G2antt1->AntiAliasing = true;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,256);
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAutoEndInclusive;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Phase A")),TVariant("Task"),TVariant(TDateTime(2001,1,1).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Phase B")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Phase C")),TVariant("Task"),TVariant(TDateTime(2000,12,29).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("L1"),var_Items->get_ItemByIndex(0),TVariant(""),var_Items->get_ItemByIndex(1),TVariant(""));
	var_Items->AddLink(TVariant("L2"),var_Items->get_ItemByIndex(0),TVariant(""),var_Items->get_ItemByIndex(2),TVariant(""));
	var_Items->AddLink(TVariant("L3"),var_Items->get_ItemByIndex(2),TVariant(""),var_Items->get_ItemByIndex(1),TVariant(""));
G2antt1->EndUpdate();

2287
Adding an editable predecessor column

G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Name")->Width = 48;
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Predecessor");
		Exg2anttlib_tlb::IEditorPtr var_Editor = var_Column->Editor;
			var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
			var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::MaskType;
			var_Editor->Mask = L";;;rich";
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(270));
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"(I)");
		var_Column1->FormatColumn = L"1 index ``";
		var_Column1->Position = 0;
		var_Column1->AllowSizing = false;
		var_Column1->Width = 20;
G2antt1->ColumnAutoResize = true;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
G2antt1->GridLineColor = RGB(224,224,224);
G2antt1->AntiAliasing = true;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,256);
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAutoEndInclusive;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Phase A")),TVariant("Task"),TVariant(TDateTime(2001,1,1).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Phase B")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Phase C")),TVariant("Task"),TVariant(TDateTime(2000,12,29).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("L1"),var_Items->get_ItemByIndex(0),TVariant(""),var_Items->get_ItemByIndex(1),TVariant(""));
	var_Items->AddLink(TVariant("L2"),var_Items->get_ItemByIndex(0),TVariant(""),var_Items->get_ItemByIndex(2),TVariant(""));
	var_Items->AddLink(TVariant("L3"),var_Items->get_ItemByIndex(2),TVariant(""),var_Items->get_ItemByIndex(1),TVariant(""));
G2antt1->EndUpdate();

2286
Adding an Index column

G2antt1->BeginUpdate();
G2antt1->Chart->set_PaneWidth(true,0);
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Name")->Width = 48;
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Index");
		var_Column->FormatColumn = L"1 index ``";
		var_Column->Position = 0;
		var_Column->AllowSizing = false;
		var_Column->Width = 48;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("Phase A"));
	var_Items->AddItem(TVariant("Phase B"));
	var_Items->AddItem(TVariant("Phase C"));
G2antt1->EndUpdate();

2285
Create a new bar should start at 1 day (after moving some pixel to the right 1 days is showing) and new days should been showing as soon as you hit the next day. How can I do that (create bar manually)

// CreateBar event - Fired when the user creates a new bar.
void __fastcall TForm1::G2antt1CreateBar(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,DATE   DateStart,DATE   DateEnd)
{
	G2antt1->Items->AddBar(Item,TVariant("Task"),TVariant(DateStart),TVariant(DateEnd),TVariant(""),TVariant("new"));
}

G2antt1->BeginUpdate();
G2antt1->OnResizeControl = Exg2anttlib_tlb::OnResizeControlEnum::exResizeChart;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->Columns->Add(L"Index")->FormatColumn = L"1 index ``";
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
G2antt1->GridLineColor = RGB(224,224,224);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
	var_Chart->NonworkingDays = 0;
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarManualEndInclusive;
	var_Chart->AllowZoomOnFly = Exg2anttlib_tlb::ZoomOnFlyEnum(0xfffffcc4 | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyIncludeSelectedItems | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyBarsOnly | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFly | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyCtrl | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyShift);
	var_Chart->GridLineStyle = G2antt1->GridLineStyle;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(1);
		var_Level->DrawGridLines = true;
		var_Level->GridLineColor = G2antt1->GridLineColor;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant(""));
	var_Items->AddItem(TVariant(""));
	var_Items->AddItem(TVariant(""));
G2antt1->EndUpdate();

2284
Create a new bar should start at 1 day (after moving some pixel to the right 1 days is showing) and new days should been showing as soon as you hit the next day. How can I do that (create bar automatically)

G2antt1->BeginUpdate();
G2antt1->OnResizeControl = Exg2anttlib_tlb::OnResizeControlEnum::exResizeChart;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->Columns->Add(L"Index")->FormatColumn = L"1 index ``";
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
G2antt1->GridLineColor = RGB(224,224,224);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,64);
	var_Chart->NonworkingDays = 0;
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAutoEndInclusive;
	var_Chart->AllowZoomOnFly = Exg2anttlib_tlb::ZoomOnFlyEnum(0xfffffcc4 | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyIncludeSelectedItems | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyBarsOnly | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFly | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyCtrl | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyShift);
	var_Chart->GridLineStyle = G2antt1->GridLineStyle;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(1);
		var_Level->DrawGridLines = true;
		var_Level->GridLineColor = G2antt1->GridLineColor;
G2antt1->EndUpdate();

2283
How can I display the "<%ddd%> <%d%> <%mmm%>" format followed by number of working-days when using the DateTickerLabel property (method 4, locale)

G2antt1->BeginUpdate();
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelVAlign] = RGB(1,0,0);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->Bars->Add(L"Task:Split")->Shortcut = L"Task";
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKeepWorkingCount,TVariant(true));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = L"<%=value format `ddd dd`%><fgcolor 808080><%=(value=end?` (` + (wcount) + `wd)`:``)%>";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,28).operator double()),TVariant(TDateTime(2005,7,1).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2282
How can I display the "<%ddd%> <%d%> <%mmm%>" format followed by number of days when using the DateTickerLabel property (method 4, locale)

G2antt1->BeginUpdate();
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelVAlign] = RGB(1,0,0);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = L"<%=value format `ddd dd`%><fgcolor 808080><%=(value=end?` (` + (end-start) + `d)`:``)%>";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,28).operator double()),TVariant(TDateTime(2005,7,1).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2281
How can I display the "<%ddd%> <%d%> <%mmm%>" format followed by number of days when using the DateTickerLabel property (method 3, english locale)

G2antt1->BeginUpdate();
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelVAlign] = RGB(1,0,0);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = TVariant(String("<%=(0 array (0:=(longdate(date(value)) split `,`)) left 3) + ` ` +  ((2 array ((1 array =:0) split ` `)) lpad `00`) + (value=en") +
"d?` (` + (end-start) + `d)`:``)%>");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,28).operator double()),TVariant(TDateTime(2005,7,1).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2280
How can I display the "<%ddd%> <%d%> <%mmm%>" format for start and end margins, but end margin should display one day before followed by the number of days

G2antt1->BeginUpdate();
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelVAlign] = RGB(1,0,0);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = TVariant(String("<%=(weekday(0:=(value-(value=end?1:0))) array 'Sun Mon Tue Wed Thu Fri Sat' split ' ') + ` ` + day(=:0) + ` ` + ((month(=:0) - ") +
"1) array 'Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec' split ' ') + (value=end?` (` + (end-start) + `d)`:``)%>");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,28).operator double()),TVariant(TDateTime(2005,7,1).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2279
How can I display the "<%ddd%> <%d%> <%mmm%>" format followed by number of days when using the DateTickerLabel property (method 2)

G2antt1->BeginUpdate();
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelVAlign] = RGB(1,0,0);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = L"<%ddd%> <%d%> <%mmm%><%=(value=end?` (` + (end-start) + `d)`:``)%>";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,28).operator double()),TVariant(TDateTime(2005,7,1).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2278
How can I display the "<%ddd%> <%d%> <%mmm%>" format followed by number of days when using the DateTickerLabel property (method 1)

G2antt1->BeginUpdate();
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelVAlign] = RGB(1,0,0);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = TVariant(String("<%=(weekday(value) array 'Sun Mon Tue Wed Thu Fri Sat' split ' ') + ` ` + day(value) + ` ` + ((month(value) - 1) array 'Jan Feb") +
" Mar Apr May Jun Jul Aug Sep Oct Nov Dec' split ' ') + (value=end?` (` + (end-start) + `d)`:``)%>");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,28).operator double()),TVariant(TDateTime(2005,7,1).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2277
How can I display just the end-margin when user resizes the bar

G2antt1->BeginUpdate();
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelVAlign] = RGB(1,0,0);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = L"<%=value=start?``:value%>";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,23).operator double()),TVariant(TDateTime(2005,7,3).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2276
Is it possible to include the number of days (duration in days, hours, minutes) within the date-label

G2antt1->BeginUpdate();
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelVAlign] = RGB(1,0,0);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = TVariant(String("<%=date(value=end?value-1:value)%><fgcolor 666666><off -4><%=value=end?` ` + ((1:=int(0:= end - start)) != 0 ? (=:1 + ' day(s)'") +
") : '') + (=:1 ? ' ' : '' ) + ((1:=int(0:=((=:0 - =:1 + 1/24/60/60/2)*24))) != 0 ? =:1 + ' hour(s) ' : '' ) + ((1:=round((=:0 - " +
"=:1)*60)) != 0 ? =:1 + ' min(s)' : ''):``%>");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,23).operator double()),TVariant(TDateTime(2005,7,3).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2275
Is it possible to include the number of days within the date-label

G2antt1->BeginUpdate();
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelVAlign] = RGB(1,0,0);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = L"<%mmm%> <%d%><fgcolor 808080><%=value=end?` (`+(end - start) + ` days)`:``%>";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,23).operator double()),TVariant(TDateTime(2005,7,3).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2274
Is it possible to show the date-label with the bar being created, moved or resized instead below the header-bar

G2antt1->BeginUpdate();
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelVAlign] = RGB(1,0,0);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = L"<%mmm%> <%d%>";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,23).operator double()),TVariant(TDateTime(2005,7,3).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2273
Date-label customization

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(1,TVariant(String("gBFLBCJwBAEHhEJAAEhABT0GACAADACAxRDAMgBQKAAzAJBIYhiGgcYCgMZBSDeCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADCOIwAFBIZhrE4ZRwGCQRRgyI43RhHUBzV") +
"IUBxDEaTZLlGY4NjSIYHThPMzyDRlEyBBqVKKoWLZMjiIY2RhJM7SBR0OROGQaRJrewZHDUMJiQjZVoVNTkNyxH6uYzoKSqVACLowTJNFZXDDkeR5JqcKBqChIEpKO5w" +
"RriAABVZoAA3Rq+AAuPBJIwYAAyXTIdTwThkBz3R6tchgOw7LxeZJpWbZOo0TgGFwTLDQNCifI7Vi6NJ1DdcKLNNx3tDBdpGXZ4JznGa8a7jN57dr+JQ7U6degACytKx" +
"LBeOprHMcA+GafxaAiBIUA0JgziGVJkGUGJIFyUYiBEN5VBsGxCEUEIcn0cAxBgWBijmM4Ekec57n0RwJBgBgCgCEZCC4BoBmAdBwgSApgkgMQcB8YQIEYERHAceBWBa" +
"BYRkGQgagaYY0HAaYHmICIBBwGJiEiFglEcBYYiYKoKhGQRCC6C5inQcBNgyYxIlIMoNGMWI2DCDAigiLgrgiYhohoHoIGIGBmByBwhEgXgXgOYQoEoCoDGCWAWAiAgg" +
"AgDgDEcH5pGUHAoCWSR2F0cxOjSHQJEAQCAg="));
	var_Appearance->Add(2,TVariant("CP:1 -2 -2 4 4"));
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelBack] = 0x2000000;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelFore] = RGB(255,255,255);
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelHAlign] = RGB(1,0,0);
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelVAlign] = RGB(1,0,0);
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelHMargin] = RGB(4,0,0);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = L"<%mmm%><br><%d%>";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,23).operator double()),TVariant(TDateTime(2005,7,3).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2272
How can I change the visual appearance for the date-label (EBN)

G2antt1->BeginUpdate();
G2antt1->VisualAppearance->Add(1,TVariant(String("gBFLBCJwBAEHhEJAAEhABaICg6AADACAxRDAMgBQKAAzAJBIYhiGgcYCgMZBSDeCYXABCEYRXBIZQ7BKNIxjSJwFiCCQwSDKEjyCKcGRHF6MI6gOYpCgOIYjRJNIASV") +
"AceAAGaUZrjSgobjmOYhAJCL70WAFFr/DCgZThGgJHomMIhAhHAJwTQ8EytJqmKajCaRSDUJZkWZOIyjBd6a5tVbXEaVTAccxhOKeahvGo5Fred40TRINCWHI1d4NH69" +
"JbwMLbSgMIKFABXdhWFC+Ex9Kiea7kOqIJwyA5bY5kGRWDRkLzROAALJ1Cz7KqydpDYyAGbABagAYfPy8JzxHKNarfA5GZzuG4zdi8U41WCBdpnHQNS4KL6ndBbWrdFo" +
"iC8X4QnAOQ8B4dp6BONQoBoTBnEOKZIkoMYQi2JZECIb4mDYNoEgoIQ8k2PIIDEGBAEuO4UmcF5xHufgqiACAGAKAJfmKdJogGWRAACbYCk0KA0mCA5OFgRgSgSYRIDy" +
"YAymGCAsm0QhNAgdJmgeX5DgiYYImISIWCaCBhCMUgqEITJIjSZ4Lk4OJGDKDJjEiVgvDmYpTDILILGAc4gmSD5kAkBhChCY5YmYOwzA6GQmBSEpkkgShJDoZBkA4OQ6" +
"iUSB+FaFZlgkZJmhUDopEQAIOE6OYGDeGJmEmFg3hgTo5HoYIYGOWY2G6G9cCIaoLE6SZWE+HZngmZhPh1YJMkyBolkoBoCiCZbBn4O4ogmIoKiKaJJiKCA7ieY4+hKH" +
"wpEoVoW3MI4+H4PApkgaoeieagIGqHF3jocoPimaoKiaD4omeY5Gi6JhrAqRoyiYapjkYfg8iuCoOjqLprkqDo4DzcROkKLRsEsFpG4+I5OH4PQskqfpOjObQKn6TA9X" +
"EVpWjIbYLGaWoyG0Y5WlWNYtDuBpijibQ7HYfg9i6Cx2mqOpuksdpoD3cRenKO5vEuVp26wI5eH4PgvkuZp+j+cALmafA+XEZwGkCcIMCcCpAnAY5mH4PoxAwNwSkScR" +
"MDcEA+jCfBfBqRpxkwdwYgsZBzm8IpInITIXCaSdxHMKpKnKTI3C6S4lmgNJSkCT5slcNpNnODJnAMNZzkQJpvDYdAMDUTpQnQRQ7A2UANhuPRKFKZJ4iiVIOHUDRGDm" +
"U4higJJrGuQAEAQgI"));
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelBack] = 0x1000000;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelFore] = RGB(10,10,10);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = L" <%mmm%> <%d%>";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,23).operator double()),TVariant(TDateTime(2005,7,3).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2271
How can I change the visual appearance for the date-label (solid colors)

G2antt1->BeginUpdate();
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVertical;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelBack] = RGB(1,0,0);
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exDateTickerLabelFore] = RGB(255,255,255);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->DrawDateTicker = true;
	var_Chart->DateTickerLabel = L"<%mmm%> <%d%>";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2005,6,21).operator double()),TVariant(TDateTime(2005,6,28).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2005,6,23).operator double()),TVariant(TDateTime(2005,7,3).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2270
Expandable-caption

// AnchorClick event - Occurs when an anchor element is clicked.
void __fastcall TForm1::G2antt1AnchorClick(TObject *Sender,BSTR   AnchorID,BSTR   Options)
{
	OutputDebugString( L"AnchorID" );
}

G2antt1->BeginUpdate();
G2antt1->ColumnAutoResize = true;
G2antt1->TreeColumnIndex = -1;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->BackColorAlternate = RGB(240,240,240);
G2antt1->ShowFocusRect = false;
G2antt1->Columns->Add(L"Default");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("before item"));
	long h = var_Items->AddItem(TVariant(String("<solidline> <c><b>Bank Account 1</b></solidline><br>+ owner: String <r><a 1;e64=gA8ABzABvABsABpABkg8JABuABlAA+AAgAECMcTi4AMwAM4") +
"AjMGhEGOUVAA4AAwk8plcqihwAElg0wiUlOkOiUEgQvgcFhsKhkIhUQiUUnccj0gn0jmMagUlowAMNOpEfkMNkkmlEqrctjQmAAjAA5AA2sssHcbnkdq1Ln1QtVSjQAA" +
"EBA==>▲</a><br><solidline>+ balance: Currency = 0</solidline><br>+ deposit(amount: Currency)<r><a 2;e64=gA8ABjAA+AECMwAM8D" +
"ABvABshoAOQAEAAHAAGEWjEajMGNoAMoAOgANERMgAOcHAAvAEJhcEh0Qh0Tg0CmkqMMFlUuhkxiMTisXjNCjk6EwAEYAHIAG1MjY7lUsnkwh8/nUClk5gwAAEBA==>&" +
"#9650;</a><br>+ withdraw(amount: Currency)"));
	var_Items->set_CellValueFormat(TVariant(h),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_CellSingleLine(TVariant(h),TVariant(0),Exg2anttlib_tlb::CellSingleLineEnum::exCaptionWordWrap);
	h = var_Items->AddItem(TVariant(String("<solidline> <c><b>Bank Account 2</b><br> <c><fgcolor 808080>properties</solidline><a 1;e64=gArAAgABvAB3ABuABlAByAA6gYAKYAOkNABp") +
"hIAM8RHgAMMRGIAHcLAA2AA0AA9jQAIIAHEsABCAB6mEyO01ABznBwnBrlcvJU4Os4NkwlsClstjctIoAIYAJoAMYAKkXk8wqMIltRlEtNVQABHABoAFNsRPABVABWo1" +
"XpMHAE+l88otTONWslasoAosbGFwjFqoton1owN7jZRAE3jdTI1jnIAJeQnxJyFqxWHtUKqdTr9/jcKv9fNtgj8bwUFuFbABOAFonlNM1xsGun0+0tFpt3h1TitfxWlt" +
"9ft41toyyM6nRIqQAMUZnxkAF3kJMjMhxUVtkT4FtpsylsqlQ+AEdh3kEwAEYAHMlAHGv8jjovjwA8kd5/n8uRg1FjDpP8jKGPIgSCOej6io+ziSIgginqGhyHIZBY8o" +
"ilSCL++b+L4q0AKshUBgBESAgA==><r>▼</a></fgcolor><br><c><fgcolor 808080>methods</fgcolor><r><a 2;e64=gArAAgABkABlABwABvABzAB" +
"pAB0AAoABhABthYAOoAN0RAA6gYAIcaAByksHjgAMYAPIAFIAHkVkIyAA7lA2AA0AA9ABnABBAA4n4AIQANVDoECoBFkQAJoAO9Dp9CIlDop2q0NABojNAJ4AKNDplAo" +
"BIpAAI4AphXo1qmVHp9pJ1dp10r8+oFzphSut4AFfldmsgArFLABKrcqt1cGFgxONKk9AGNkcYNYAON1p5GABsABVklcy54h91yMQhxYttzkdHy84plRwxZodmJNDtIx" +
"utH2g3zufrUdy9RrlCF8p0Ejz2XGuS2ViolDnk8H0wk/VEwAEYAHIAnHNxs2mPHi3VmJi64AgUEqMQiVcg0mi1RikWjEMjcdiUggkjjaTJMhCOpWlqXgAACAg><fgcol" +
"or 808080>▼</fgcolor></a>"));
	var_Items->set_CellValueFormat(TVariant(h),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_CellSingleLine(TVariant(h),TVariant(0),Exg2anttlib_tlb::CellSingleLineEnum::exCaptionWordWrap);
	var_Items->AddItem(TVariant("after item"));
G2antt1->EndUpdate();

2269
Expandable-caption

G2antt1->BeginUpdate();
G2antt1->ColumnAutoResize = true;
G2antt1->TreeColumnIndex = -1;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->BackColorAlternate = RGB(240,240,240);
G2antt1->ShowFocusRect = false;
G2antt1->Columns->Add(L"Default");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("before item"));
	long h = var_Items->AddItem(TVariant("<solidline><b>Header</b></solidline><br>Line1<r><a ;exp=show lines>+</a><br>Line2<br>Line3"));
	var_Items->set_CellValueFormat(TVariant(h),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_CellSingleLine(TVariant(h),TVariant(0),Exg2anttlib_tlb::CellSingleLineEnum::exCaptionWordWrap);
	var_Items->AddItem(TVariant("after item"));
G2antt1->EndUpdate();

2268
Can I change the pattern for a specific bar only
G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2009,12,31).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,96);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->StartColor = RGB(255,255,255);
		var_Bar->EndColor = var_Bar->Color;
G2antt1->Columns->Add(L"Types");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Original")),TVariant("Task"),TVariant(TDateTime(2010,1,4).operator double()),TVariant(TDateTime(2010,1,9).operator double()),TVariant(""),TNoParam());
	long h = var_Items->AddItem(TVariant("W/h Pattern"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,4).operator double()),TVariant(TDateTime(2010,1,9).operator double()),TVariant(""),TNoParam());
	var_Items->set_ItemBar(h,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarPattern,TVariant(6));
	var_Items->AddBar(var_Items->AddItem(TVariant("Original")),TVariant("Task"),TVariant(TDateTime(2010,1,4).operator double()),TVariant(TDateTime(2010,1,9).operator double()),TVariant(""),TNoParam());
G2antt1->EndUpdate();

2267
Force hover-all feature
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exScrollHoverAll] = -1;

2266
Disable hover-all feature (Windows 11 or greater)
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exScrollHoverAll] = RGB(1,0,0);

2265
I'm using the Milestone bar type, but find it to small and want to enlarge it. I can change the bar height, but then the shape gets a bit distorted (e.g. it doesn't scale properly)

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(1,TVariant(String("gBFLBCJwBAEHhEJAAEhABJYCg6AADACAxRDgMQBQKAAzQFAYZhmGSGAAGIZhXgmFgAQhFcZQSKUOQTDKMIRfeQwAiNf4hQKBMIjKKAShaHCVIDlSThYAKCQxDZNUCQX") +
"DcdRRDaBR7hGgoaj6JolSRFUgSABEEigNIxToOU4jFgeCR2C7AZBEbTENBtBIUKDsKA4IBiFxAVjQFpSNZlWzdN64LhuK47UrWbYiXZeN5XXblaTxPrAMBwKzrLwPBqH" +
"XrfeIYXhlDzVC7GchxTCsSxXCaPY7lWZZPRGN49ODMNBibL9EwSA6laToWpRVpGSYpVrGdT2KgNQxbL61YLse5ZTrGF5vXrONz4LBeAwHP7FXLwfJaVxFeaPZq7eT6LR" +
"fEKa5PmgdJ7DuLotkeL5Am0eA4F2ToOHeK5hnOco8HIfQ/GOUZumWeY9h2fx/lOJ5Im8bY+j+LpWnecYxH6YAHgWMB/hgeAGAYe4aheSZ5gGYJICGG4BByaA2BIfRgjY" +
"RgTgWihaAobhhggdgBG+IY1nYHoImCRgaBAeQiEiJgHHGIgVnoKoLmEOBFmUchjAiVgYF4XZoloOoImKaJNGyDpkAiJZdggZAZBYLxphmWQaEqDRYmkLhOhEZJZD4UoM" +
"FSGJ6FOFZhheEhDhYJZHGYW4PGWWYFlSDQjmkbhi0WBZaCcepmgmBgygsJtLHCCYnBkBh0hkWAJlYMIICeBgKHqBxhimdh3h+ZYWEoa4MigR4hh6IZnhoJheGuIpYD6D" +
"humAOhFh+JJaCedoWgIaYGg2RYjCgahNnGIIbgmaZqigKI5jmaoVGqOIiEuKxjnobZjhGKwJCKNRoCSSpejaLorggeo8i8a51koVIwFaeoijOIRsEsApJhgIArC4ZIzi" +
"aKg+lCM5tDsRoUjUXRqkqWIrhuSxulmKQtmkIYsjgY4LGqZIum4e4UAAOpRBQJQBICA=="));
	var_Appearance->Add(2,TVariant("CP:1 1 1 11 -2"));
G2antt1->DefaultItemHeight = 32;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	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("Milestone"));
		var_Bar->Height = 24;
		var_Bar->Color = 0x2000000;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Milestone"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,2).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2264
I'm using the Milestone bar type, but find it to small and want to enlarge it. I can change the bar height, but then the shape gets a bit distorted (e.g. it doesn't scale properly)

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(1,TVariant(String("gBFLBCJwBAEHhEJAAEhABXYCg6AADACAxRDgMQBQKAAzQFAYZhmGSGAAGIZhXgmFgAQhFcZQSKUOQTDKMIRfeQwAiNf4hQKBMIjKKAShaHCVIDlSThYAKCQxDZNUCDN") +
"DYAR1FCeQACCCaDgOII/SZJMiRNIEQARBIoDRMM5DVLIZYHQjCcBkERtNQvHiBRQoSw6GAAGIaRDQMZSNZlWxMfx9XyeBoVeapFhbO4mZavEyCeTgfS3MBwLA3XZxTTx" +
"KIaD6KASbepEKh6VDNF52bYrA6XWy/T6PW7GDLmUY1H5UQpnfR4Uj/JyUT7KIS7bpMNTOWYfZ7XcxibKaZw2LDvIoxWL6UosH7UEpXfR/RLGcIVL7KKTLbpQNp8GwYXJ" +
"WAMBJ+mubB3gaV5qhyNp/FIFhfmoLgPg+RZkmCeA7gWN46iSXJ4G2Mh6m+ax7nGdJ4G6MxegoXpaiSPJ/CmRZTnyJR3iAOAKASAZgGOfImBcD5iigXx7B6ZhVHAPhPHM" +
"WJDD0CohkSfQrEYE58ioGAPnKJBfggYg4goJIJmIaImCOA8gjQYg9kqMZAngNQMAOSIrByT5CmAcA/ksMYon8K4GEOfIsBjLQuESEYkFkHhKhIZJJCCLQYk+YpEGZNhB" +
"kSbgrkeM7viIT5zBCAA/kucZsn8LxHHOfI4BwT5ylQbU9kGLJ/CyBoJj4cYcCcKZUjYGwPkMDDlkqcZhgUMwPBKaIID8DQSReMoIVYRQgmiIgIn8MJlnMCB+VKaYUjpO" +
"xylgboaEbQQ3BuD5TBgfg8kuAgMncbobgOYJjDWTwCmCB1oGIVJ/DQCQDnyTAjCsYgujkP5MjqaJKhcDIaCSRwg3eMIGDyCxyAieA3k0FxRG8dgOCMVJxC8CJTnCVwmg" +
"+cxchgP5NCIUpcjeLZbHyfw1gkexYhteZSDjkQNAeSYDGyT5LCyUQ8EvL58DeSkrFwJ+ZmSG4/G+cxsh0PxNkKDJ0C+CQGkWOBthadpQniNBtDIMJ8DiSlWGMKYPnOCI" +
"mD8TgiiidI6GyO41huQwdGcYorj1g5smIKZPkOBweC+SQjmCYA0i6bIRjYbgYFMNJvC0CBLCCCA9k2Iwik6SQOjWJQDEAQCAg"));
	var_Appearance->Add(2,TVariant("CP:1 -6 0 20 0"));
G2antt1->DefaultItemHeight = 32;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	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("Milestone"));
		var_Bar->Height = 28;
		var_Bar->Color = 0x2000000;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Milestone"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,2).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2263
I'm using the Milestone bar type, but find it to small and want to enlarge it. I can change the bar height, but then the shape gets a bit distorted (e.g. it doesn't scale properly)

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 32;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Milestone"))->Height = 28;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Milestone"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,2).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2262
Display the bar's tooltip at runtime

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->ShowToolTip(G2antt1->Chart->get_BarFromPoint(-1,-1),TNoParam(),TNoParam(),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("..."));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,5).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant("B"),TVariant("B"));
G2antt1->EndUpdate();

2261
Includes the cell's state and user-data to bar's tooltip

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Def")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,96);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<%=%C0%><br>Start: <%=%1%><br>End: <%=%2%><br>State: <b><%=%CS0%></b><br>UserData: <b><%=%CD0%></b>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Machine 1"));
	var_Items->set_CellState(TVariant(h),TVariant(0),1);
	var_Items->set_CellData(TVariant(h),TVariant(0),TVariant("just some data"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	h = var_Items->AddItem(TVariant("Machine 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("B"),TVariant("B"));
	var_Items->set_CellData(TVariant(h),TVariant(0),TVariant("just nother data"));
G2antt1->EndUpdate();

2260
Shows the tooltip of the object moved relative to its default position

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->ShowToolTip(L"<null>",TVariant("<null>"),TNoParam(),TVariant("+8"),TVariant("+8"));
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<b><%=%C0 + ` ` + %9%></b><br>Start: <b><%=%1%></b><br>End: <b><%=%2%></b>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,5).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant("B"),TVariant("B"));
G2antt1->EndUpdate();

2259
Adds, changes or replaces the title of the object's tooltip

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->ShowToolTip(L"<null>",G2antt1->Chart->get_BarFromPoint(-1,-1),TNoParam(),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<b><%=%C0 + ` ` + %9%></b><br>Start: <b><%=%1%></b><br>End: <b><%=%2%></b>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,5).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant("B"),TVariant("B"));
G2antt1->EndUpdate();

2258
Adds, changes or replaces the object's tooltip

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->ShowToolTip(G2antt1->Chart->get_BarFromPoint(-1,-1),TNoParam(),TNoParam(),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<b><%=%C0 + ` ` + %9%></b><br>Start: <b><%=%1%></b><br>End: <b><%=%2%></b>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,5).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant("B"),TVariant("B"));
G2antt1->EndUpdate();

2257
Shows a new tooltip and title at current position

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->ShowToolTip(L"new content",TVariant("new title"),TNoParam(),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<b><%=%C0 + ` ` + %9%></b><br>Start: <b><%=%1%></b><br>End: <b><%=%2%></b>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,5).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant("B"),TVariant("B"));
G2antt1->EndUpdate();

2256
Shows a new tooltip and title moved relative to the current position

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->ShowToolTip(L"new content",TVariant("new title"),TNoParam(),TVariant("+8"),TVariant("+8"));
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<b><%=%C0 + ` ` + %9%></b><br>Start: <b><%=%1%></b><br>End: <b><%=%2%></b>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,5).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant("B"),TVariant("B"));
G2antt1->EndUpdate();

2255
Displays a different tooltip at a fixed position
// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->ShowToolTip(L"new content",TVariant(""),TNoParam(),TVariant(128),TVariant(128));
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<b><%=%C0 + ` ` + %9%></b><br>Start: <b><%=%1%></b><br>End: <b><%=%2%></b>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,5).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant("B"),TVariant("B"));
G2antt1->EndUpdate();

2254
Hide the tooltip

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->ShowToolTip(L"",TVariant(""),TNoParam(),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<b><%=%C0 + ` ` + %9%></b><br>Start: <b><%=%1%></b><br>End: <b><%=%2%></b>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,5).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant("B"),TVariant("B"));
G2antt1->EndUpdate();

2253
I need 2 bars that are linked together and cannot be moved/splitted alone (moving one should move the two bars, like a « Group » of bars). How can I achieve that

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->LevelCount = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TNoParam());
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,5,12,00,00,0).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("T1"),TNoParam());
	var_Items->set_ItemBar(h1,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,4,12,00,00,0).operator double()),TVariant("T2"),TNoParam());
	var_Items->set_ItemBar(h1,TVariant("T2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));
	var_Items->GroupBars(h1,TVariant("T1"),true,h1,TVariant("T2"),true,TVariant(27),TVariant(0));
	var_Items->AddItem(TNoParam());
G2antt1->EndUpdate();

2252
How can I show the tooltip programmatically ( I want to be able to set the tooltip content dynamically just before the tooltip start to appear, not using the exBarTooltip )
// ToolTip event - Fired when the control prepares the object's tooltip.
void __fastcall TForm1::G2antt1ToolTip(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,long   ColIndex,VARIANT_BOOL *   Visible,long *   X,long *   Y,long   CX,long   CY)
{
	G2antt1->ShowToolTip(G2antt1->Chart->get_BarFromPoint(-1,-1),TNoParam(),TNoParam(),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("..."));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,2).operator double()),TVariant(TDateTime(2010,1,5).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,5).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant("B"),TVariant("B"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2010,1,8).operator double()),TVariant(TDateTime(2010,1,11).operator double()),TVariant("C"),TVariant("C"));
	var_Items->GroupBars(h,TVariant("A"),false,h,TVariant("B"),true,TVariant(39),TNoParam());
	var_Items->GroupBars(h,TVariant("B"),false,h,TVariant("C"),true,TVariant(39),TNoParam());
G2antt1->EndUpdate();

2251
I'd like to move itembars from one item to another, using .Chart.Bars("Task").Def(exBarCanMoveToAnother) = True this works for any new bar. The question is how can I specify this feature for bars already created

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 32;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
	var_Chart->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->set_PaneWidth(false,48);
	var_Chart->AllowLinkBars = false;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsCascade;
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("only horizontal"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaptionVOffset,TVariant(18));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCanMoveToAnother,TVariant(true));
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,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("A"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 2")),TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("B"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 3")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("C"),TNoParam());
	var_Items->set_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCanMoveToAnother,TVariant(false));
G2antt1->EndUpdate();

2250
I'd like to move itembars from one item to another, using .Chart.Bars("Task").Def(exBarCanMoveToAnother) = True this works for any new bar. The question is can I disable this for particular item-bars

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 32;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
	var_Chart->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->set_PaneWidth(false,48);
	var_Chart->AllowLinkBars = false;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsCascade;
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("anywhere"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaptionVOffset,TVariant(18));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCanMoveToAnother,TVariant(true));
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,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("A"),TNoParam());
	long h = var_Items->AddItem(TVariant("Item 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("B"),TVariant("only horiontal"));
	var_Items->set_ItemBar(h,TVariant("B"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCanMoveToAnother,TVariant(false));
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 3")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("C"),TNoParam());
G2antt1->EndUpdate();

2249
I need the top row to display months, while the second to show units in weeks, but can 10 by 10 days days. Is it possible

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exVLines;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->UnitWidth = 30;
	var_Chart->LevelCount = 2;
	var_Chart->get_Level(0)->Unit = Exg2anttlib_tlb::UnitEnum::exMonth;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(1);
		var_Level->Unit = Exg2anttlib_tlb::UnitEnum::exDay;
		var_Level->Count = 10;
G2antt1->EndUpdate();

2248
Limit the chart's margins when using the CopyTo method

G2antt1->BeginUpdate();
G2antt1->MarkSearchColumn = false;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Tasks");
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Start");
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
		var_Column->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"End");
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(2));
		var_Column1->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,196);
	var_Chart->LevelCount = 2;
	var_Chart->ShowEmptyBars = 1;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2009,1,1).operator double()));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2009,1,2).operator double()),TVariant(TDateTime(2009,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2009,1,4).operator double()),TVariant(TDateTime(2009,1,9).operator double()),TNoParam(),TNoParam());
Exg2anttlib_tlb::IChartPtr var_Chart1 = G2antt1->Chart;
	var_Chart1->set_StartPrintDate(TVariant(TDateTime(2009,1,4).operator double()));
	var_Chart1->set_EndPrintDate(TVariant(TDateTime(2009,1,5).operator double()));
TVariant var_CopyTo = TVariant(G2antt1->CopyTo[L"c:/temp/xtest.pdf"]);
OutputDebugString( L"Look for C:\\Temp\\xtest.pdf file." );
G2antt1->EndUpdate();

2247
I want to always keep the bottom item stationary. It can always display even when scrolling vertically. The bar placed at the bottom item is must be movable to other items

String color = 15790320;
G2antt1->BeginUpdate();
G2antt1->Debug = true;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->ShowLockedItems = true;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2015,12,31).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCanMoveToAnother,TVariant(true));
G2antt1->Columns->Add(L"Column");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_LockedItemCount(Exg2anttlib_tlb::VAlignmentEnum::exTop,3);
	long h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exTop,0);
	var_Items->set_ItemBackColor(h,color);
	G2antt1->Chart->set_ItemBackColor(h,color);
	var_Items->set_CellValue(TVariant(h),TVariant(0),TVariant("locked-top 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2016,1,4).operator double()),TVariant(TDateTime(2016,1,8).operator double()),TVariant("T1"),TNoParam());
	h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exTop,1);
	var_Items->set_ItemBackColor(h,color);
	G2antt1->Chart->set_ItemBackColor(h,color);
	var_Items->set_CellValue(TVariant(h),TVariant(0),TVariant("locked-top 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2016,1,5).operator double()),TVariant(TDateTime(2016,1,9).operator double()),TVariant("T2"),TNoParam());
	h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exTop,2);
	var_Items->set_SelectItem(h,false);
	var_Items->set_ItemDivider(h,0);
	var_Items->set_ItemHeight(h,2);
	var_Items->AddBar(var_Items->AddItem(TVariant("un-locked item 1")),TVariant("Task"),TVariant(TDateTime(2016,1,4).operator double()),TVariant(TDateTime(2016,1,8).operator double()),TVariant("T3"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("un-locked item 2")),TVariant("Task"),TVariant(TDateTime(2016,1,5).operator double()),TVariant(TDateTime(2016,1,9).operator double()),TVariant("T4"),TNoParam());
	var_Items->set_LockedItemCount(Exg2anttlib_tlb::VAlignmentEnum::exMiddle,3);
	h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exMiddle,0);
	var_Items->set_SelectItem(h,false);
	var_Items->set_ItemDivider(h,0);
	var_Items->set_ItemHeight(h,2);
	h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exMiddle,1);
	var_Items->set_ItemBackColor(h,color);
	G2antt1->Chart->set_ItemBackColor(h,color);
	var_Items->set_CellValue(TVariant(h),TVariant(0),TVariant("locked-bottom 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2016,1,4).operator double()),TVariant(TDateTime(2016,1,8).operator double()),TVariant("T5"),TNoParam());
	h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exMiddle,2);
	var_Items->set_ItemBackColor(h,color);
	G2antt1->Chart->set_ItemBackColor(h,color);
	var_Items->set_CellValue(TVariant(h),TVariant(0),TVariant("locked-bottom 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2016,1,5).operator double()),TVariant(TDateTime(2016,1,9).operator double()),TVariant("T6"),TNoParam());
G2antt1->EndUpdate();

2246
How can I get a cell that shows the sum of a column of minutes in hours + minutes format

G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Minutes");
	var_Column->SortType = Exg2anttlib_tlb::SortTypeEnum::SortNumeric;
	Exg2anttlib_tlb::IEditorPtr var_Editor = var_Column->Editor;
		var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
		var_Editor->Numeric = Exg2anttlib_tlb::NumericEnum::exInteger;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant(10));
	var_Items->AddItem(TVariant(20));
	var_Items->AddItem(TVariant(30));
	var_Items->AddItem(TVariant(40));
	var_Items->AddItem(TVariant(50));
	long h = var_Items->AddItem(TVariant("sum(all,dir,dbl(%0))"));
	var_Items->set_SelectableItem(h,false);
	var_Items->set_SortableItem(h,false);
	var_Items->set_CellValueFormat(TVariant(h),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exTotalField | Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_CellHAlignment(TVariant(h),TVariant(0),Exg2anttlib_tlb::AlignmentEnum::RightAlignment);
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"'<b>HH:NN</b>: '+ (int(value/60) lpad '00') + ':' + ((value mod 60) lpad '00')");
G2antt1->EndUpdate();

2245
Ensure that a bar fits the chart's visible area (unique keys)

G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2023,3,26).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task A")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("T1"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task B")),TVariant("Task"),TVariant(TDateTime(2001,1,20).operator double()),TVariant(TDateTime(2001,1,31).operator double()),TVariant("T2"),TNoParam());
	var_Items->EnsureVisibleBar(0,TVariant("T1"));
G2antt1->EndUpdate();

2244
Ensure that a bar fits the chart's visible area

G2antt1->BeginUpdate();
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2023,3,26).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task A"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("T1"),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task B"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,20).operator double()),TVariant(TDateTime(2001,1,31).operator double()),TVariant("T2"),TNoParam());
	var_Items->EnsureVisibleBar(h1,TVariant("T1"));
G2antt1->EndUpdate();

2243
Is it possible to change the visual appearance for the frame to create newly bar by drag and drop

G2antt1->BeginUpdate();
G2antt1->VisualAppearance->Add(1,TVariant("c:\\exontrol\\images\\normal.ebn"));
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exChartCreateBar] = 0x1000000;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exCreateBarHeight] = RGB(15,0,0);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->LevelCount = 2;
	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->Color = 0x1000000;
		var_Bar->Height = 15;
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,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 2")),TVariant("Task"),TVariant(TDateTime(2001,1,6).operator double()),TVariant(TDateTime(2001,1,14).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

2242
Highlight the match once the filter is applied

// FilterChange event - Occurs when the filter was changed.
void __fastcall TForm1::G2antt1FilterChange(TObject *Sender)
{
	TVariant format = TVariant(G2antt1->FormatABC(L"`lower(value) replace lower('` + value + `') with '<bgcolor 000000><fgcolor FFFFFF>` + value  + `</fgcolor></bgcolor>'`",TVariant(G2antt1->FilterBarPromptPattern),TNoParam(),TNoParam()));
	G2antt1->Columns->get_Item(TVariant(0))->FormatColumn = L"format";
	G2antt1->Columns->get_Item(TVariant(1))->FormatColumn = L"format";
	G2antt1->Columns->get_Item(TVariant(2))->FormatColumn = L"format";
}

G2antt1->BeginUpdate();
G2antt1->SelBackColor = G2antt1->BackColor;
G2antt1->SelForeColor = G2antt1->ForeColor;
G2antt1->ColumnAutoResize = true;
G2antt1->ContinueColumnScroll = false;
G2antt1->MarkSearchColumn = false;
G2antt1->SearchColumnIndex = 1;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 23;
G2antt1->BackColorLevelHeader = G2antt1->BackColor;
G2antt1->FilterBarCaption = L"`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? abs(matchitemcount + 1) + ` result(s)` : ``)";
G2antt1->FilterBarPromptVisible = Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarCompact | Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarCaptionVisible | Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarVisible | Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarPromptVisible;
G2antt1->FilterBarBackColor = G2antt1->BackColor;
G2antt1->FilterBarPromptPattern = L"and";
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Name");
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueFormat,TVariant(1));
		var_Column->FormatColumn = L"lower(value)";
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"Title");
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueFormat,TVariant(1));
		var_Column1->FormatColumn = L"lower(value)";
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"City");
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueFormat,TVariant(1));
		var_Column2->FormatColumn = L"lower(value)";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h0 = var_Items->AddItem(TVariant("Nancy Davolio"));
	var_Items->set_CellValue(TVariant(h0),TVariant(1),TVariant("Sales Representative"));
	var_Items->set_CellValue(TVariant(h0),TVariant(2),TVariant("Seattle"));
	h0 = var_Items->AddItem(TVariant("Andrew Fuller"));
	var_Items->set_CellValue(TVariant(h0),TVariant(1),TVariant("Vice President, Sales"));
	var_Items->set_CellValue(TVariant(h0),TVariant(2),TVariant("Tacoma"));
	var_Items->set_SelectItem(h0,true);
	h0 = var_Items->AddItem(TVariant("Janet Leverling"));
	var_Items->set_CellValue(TVariant(h0),TVariant(1),TVariant("Sales Representative"));
	var_Items->set_CellValue(TVariant(h0),TVariant(2),TVariant("Kirkland"));
	h0 = var_Items->AddItem(TVariant("Margaret Peacock"));
	var_Items->set_CellValue(TVariant(h0),TVariant(1),TVariant("Sales Representative"));
	var_Items->set_CellValue(TVariant(h0),TVariant(2),TVariant("Redmond"));
	h0 = var_Items->AddItem(TVariant("Steven Buchanan"));
	var_Items->set_CellValue(TVariant(h0),TVariant(1),TVariant("Sales Manager"));
	var_Items->set_CellValue(TVariant(h0),TVariant(2),TVariant("London"));
	h0 = var_Items->AddItem(TVariant("Michael Suyama"));
	var_Items->set_CellValue(TVariant(h0),TVariant(1),TVariant("Sales Representative"));
	var_Items->set_CellValue(TVariant(h0),TVariant(2),TVariant("London"));
	h0 = var_Items->AddItem(TVariant("Robert King"));
	var_Items->set_CellValue(TVariant(h0),TVariant(1),TVariant("Sales Representative"));
	var_Items->set_CellValue(TVariant(h0),TVariant(2),TVariant("London"));
	h0 = var_Items->AddItem(TVariant("Laura Callahan"));
	var_Items->set_CellValue(TVariant(h0),TVariant(1),TVariant("Inside Sales Coordinator"));
	var_Items->set_CellValue(TVariant(h0),TVariant(2),TVariant("Seattle"));
	h0 = var_Items->AddItem(TVariant("Anne Dodsworth"));
	var_Items->set_CellValue(TVariant(h0),TVariant(1),TVariant("Sales Representative"));
	var_Items->set_CellValue(TVariant(h0),TVariant(2),TVariant("London"));
G2antt1->EndUpdate();

2241
The count of filtered items includes the group-parents. How can I exclude them from count

G2antt1->BeginUpdate();
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exVLines;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Flat;
G2antt1->HeaderHeight = 24;
G2antt1->SortBarHeight = 28;
G2antt1->SortBarVisible = true;
G2antt1->AllowGroupBy = true;
G2antt1->Columns->Add(L"Col 1");
G2antt1->Columns->Add(L"Col 2");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant("219 Smith"))),TVariant(1),TVariant("Ignacio 1234"));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant("1666 County Road 309A"))),TVariant(1),TVariant("897 Manassa"));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant("38 Lone Pine"))),TVariant(1),TVariant("Durango 11"));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant("612 Jachim Street"))),TVariant(1),TVariant("Lamar 222"));
G2antt1->Layout = L"MultipleSort=\"C1:1\"";
G2antt1->FilterBarCaption = L"`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? leafitemcount + ` result(s)` : ``)";
G2antt1->FilterBarPromptVisible = Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarCompact | Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarCaptionVisible | Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarVisible | Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarPromptVisible;
G2antt1->FilterBarPromptType = Exg2anttlib_tlb::FilterPromptEnum::exFilterPromptCaseSensitive | Exg2anttlib_tlb::FilterPromptEnum::exFilterPromptContainsAll;
G2antt1->FilterBarPromptPattern = L"12";
G2antt1->FilterBarBackColor = G2antt1->BackColor;
G2antt1->EndUpdate();

2240
Is it possible to display the count of filtered items

G2antt1->BeginUpdate();
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exVLines;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->Columns->Add(L"Col 1");
G2antt1->Columns->Add(L"Col 2");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant("219 Smith"))),TVariant(1),TVariant("Ignacio 1234"));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant("1666 County Road 309A"))),TVariant(1),TVariant("897 Manassa"));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant("38 Lone Pine"))),TVariant(1),TVariant("Durango 11"));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant("612 Jachim Street"))),TVariant(1),TVariant("Lamar 222"));
G2antt1->FilterBarCaption = L"`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? abs(matchitemcount + 1) + ` result(s)` : ``)";
G2antt1->FilterBarPromptVisible = Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarCompact | Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarCaptionVisible | Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarVisible | Exg2anttlib_tlb::FilterBarVisibleEnum::exFilterBarPromptVisible;
G2antt1->FilterBarPromptType = Exg2anttlib_tlb::FilterPromptEnum::exFilterPromptCaseSensitive | Exg2anttlib_tlb::FilterPromptEnum::exFilterPromptContainsAll;
G2antt1->FilterBarPromptPattern = L"12";
G2antt1->FilterBarBackColor = G2antt1->BackColor;
G2antt1->EndUpdate();

2239
ADOR, MDB (JET)
// 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->AddBar(Item,TVariant("Task"),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(2))),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(4))),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
G2antt1->ColumnAutoResize = false;
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADOR.Recordset");
	rs->Open(TVariant("Orders"),TVariant("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.mdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->DataSource = (IDispatch*)rs;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(1994,8,4).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,256);
G2antt1->Items->AllowCellValueToItemBar = true;
G2antt1->Columns->get_Item(TVariant(2))->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
G2antt1->Columns->get_Item(TVariant(4))->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(2));
G2antt1->EndUpdate();

2238
exOverlaidBarsOffset + exOverlaidBarTransparent + exBarCanMoveToAnother
G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 22;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
	var_Chart->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->set_PaneWidth(false,48);
	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->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsTransparent | Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsOffset;
		var_Bar->set_Overlaid(Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsTransparent,TVariant(70));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCanMoveToAnother,TVariant(true));
G2antt1->ItemsAllowSizing = Exg2anttlib_tlb::ItemsAllowSizingEnum::exResizeItem;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_SelectableItem(var_Items->AddItem(TNoParam()),false);
	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("A1"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("A2"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("A3"),TNoParam());
	var_Items->set_ItemHeight(h,64);
	h = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,7).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("A4"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("A5"),TNoParam());
	var_Items->set_SelectableItem(var_Items->AddItem(TNoParam()),false);
G2antt1->EndUpdate();

2237
Editors (ImageSize = 32)

G2antt1->BeginUpdate();
G2antt1->ImageSize = 32;
G2antt1->DefaultItemHeight = 36;
G2antt1->HeaderHeight = G2antt1->DefaultItemHeight;
G2antt1->SortBarHeight = G2antt1->DefaultItemHeight;
G2antt1->Font->Size = TVariant(long(16));
G2antt1->FilterBarFont->Size = TVariant(G2antt1->Font->Size);
G2antt1->ToolTipFont->Size = TVariant(G2antt1->Font->Size);
G2antt1->Indent = 26;
G2antt1->Images(TVariant(String("gBJJgBAIDAAEg4AEEKAD/hz/EMNh8TIRNGwAjEZAEXjAojKAjMLjABhkaABAk0plUrlktl0vmExmUzmk1m03nE5nU7nk9miAoE+oVDolFo1HpFJpU5h8Sf9OqFNqUOq") +
"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"));
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(1,TVariant(String("gBFLBCJwBAEHhEJAAEhABfICg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj") +
"6CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7E" +
"MRwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsOatVqjG5sYjcGC3La9cz3Pq/bpuDCbMxuaK1TrYXr1TTrcofBDldAxXRKDx" +
"RDWVhLnYOw9i6XxzjuXprCaOoKB6EwbiCZZCGOdZYlcT4xHmbhMnwNxtn+G5bmqdZ7n4Pw/i+X5zm+dQ9g4CAFjsfAJheOI8HsDoWDWTB/lwSAQkmA5PEgRYoDyDwYFY" +
"FoFmGCBmBqBphDgRJ0gOTIYBGRB/lyRh0iSCZbjYWJzgWDwIjYLoLmMCJGDKDJjBgWgqG6YhyhGHRzA2aJ1mCABOAiOJvhCZBJBYRoRmSCQmEqEQimkAZgg8TZnDCV4U" +
"kmCUmBKZYJGYWoWCUUhiFMNZckNUh2GENoaGaGZmgmJhqhqZpGGIEx2GYIxSGGGJdggWJth2Z4JmYeoemeSZ2H6H4hGmQhihyTRHGYLg7CiCgmgqIpokoNoOiOaJ4jqA" +
"ochqaZGgaCxpAoZoaiaaJqEmWIcGgShcnCJwqEqFoR3YOoFlgchflqNouiuawHmWSYqGkWZQhcatzmaOoumuSp2j6L5bBaKo0GQKRnGGCxqiyCwmkqMpsksNpOGUGI7A" +
"0ew1G0Rxlg0PptgsZuDG2Sx2l6N5tnYNZZjUDRXDCVo5l2FoymqOpukuNpujubwLjmWY5k0ZwxkaFxYlWdp6j6b5Lnafo/nABQdg2FxcUsY5BkmXAkmeQpckwNRrkKTh" +
"8CSHZBk4NwyC4KxxgMDwakOMZDn8GgwnGAo2C4cwthMcwmCcMoHBMHRehwTIghySYNksZwcH4HBMEsHx5hyPItiweYxnwSZEH4Mozn0fR+DMAo7EYJ50gkdZelKdNql2" +
"UgJn0GIukwH4HicQRai2GI4mSVpNl0dZGledgNgcYpYDWUx3FsOQi5YV5anaTY3G6W53A2RxylydxFjiaxEFCCgBBAQ=="));
	var_Appearance->Add(2,TVariant(String("gBFLBCJwBAEHhEJAAEhABcoFg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj") +
"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" +
"gRBCCQAgQEA=="));
	var_Appearance->Add(3,TVariant(String("gBFLBCJwBAEHhEJAAEhABQ4Fg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj") +
"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"));
	var_Appearance->Add(4,TVariant(String("gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjH") +
"LUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKB" +
"UrGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo" +
"3NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDs" +
"YYDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoV" +
"mWCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoV" +
"oWiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZi" +
"Se41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbh" +
"FCcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA=="));
G2antt1->BackColorHeader = 0x4c6c6c6;
G2antt1->SelBackColor = 0x4000000;
G2antt1->SelForeColor = RGB(0,0,1);
G2antt1->ShowFocusRect = false;
G2antt1->CheckImage[Exg2anttlib_tlb::CheckStateEnum::Unchecked] = 16777216;
G2antt1->CheckImage[Exg2anttlib_tlb::CheckStateEnum::Checked] = 33554432;
G2antt1->CheckImage[Exg2anttlib_tlb::CheckStateEnum::PartialChecked] = 50331648;
G2antt1->Columns->Add(L"Editors")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueFormat,TVariant(1));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(ReadOnly)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::ReadOnly;
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(EditType)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
	long h = var_Items->AddItem(TVariant("Value 1"));
	Exg2anttlib_tlb::IEditorPtr var_Editor = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownType;
		var_Editor->AddItem(1,L"Value 1",TVariant(1));
		var_Editor->AddItem(2,L"Value 2",TVariant(2));
		var_Editor->AddItem(3,L"Value 3",TVariant(3));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (DropDownType)'");
	h = var_Items->AddItem(TVariant(1));
	Exg2anttlib_tlb::IEditorPtr var_Editor1 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor1->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
		var_Editor1->DropDownAutoWidth = Exg2anttlib_tlb::DropDownWidthType::exDropDownEditorWidth;
		var_Editor1->AddItem(1,L"Nancy Davolio",TVariant(1));
		var_Editor1->AddItem(2,L"Andrew Fuller",TVariant(2));
		var_Editor1->AddItem(3,L"Janet Leverling",TVariant(3));
		var_Editor1->AddItem(4,L"Peacock Margaret",TVariant(3));
		var_Editor1->AddItem(5,L"Steven Buchanan",TVariant(2));
		var_Editor1->AddItem(6,L"Michael Suyama",TVariant(1));
		var_Editor1->AddItem(7,L"Robert King",TVariant(2));
		var_Editor1->AddItem(8,L"Laura Callahan",TVariant(3));
		var_Editor1->AddItem(9,L"Anne Dodsworth",TVariant(2));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (DropDownList - single column list)'");
	h = var_Items->AddItem(TVariant(1));
	Exg2anttlib_tlb::IEditorPtr var_Editor2 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor2->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
		var_Editor2->DropDownAutoWidth = Exg2anttlib_tlb::DropDownWidthType::exDropDownEditorWidth;
		var_Editor2->AddItem(1,L"Nancy Davolio",TVariant(1));
		var_Editor2->AddItem(2,L"Andrew Fuller",TVariant(2));
		var_Editor2->InsertItem(3,L"Janet Leverling",TVariant(3),TVariant(2));
		var_Editor2->InsertItem(4,L"Peacock Margaret",TVariant(3),TVariant(2));
		var_Editor2->InsertItem(5,L"Steven Buchanan",TVariant(2),TVariant(2));
		var_Editor2->InsertItem(6,L"Michael Suyama",TVariant(1),TVariant(5));
		var_Editor2->InsertItem(7,L"Robert King",TVariant(2),TVariant(2));
		var_Editor2->InsertItem(8,L"Laura Callahan",TVariant(3),TVariant(2));
		var_Editor2->InsertItem(9,L"Anne Dodsworth",TVariant(2),TVariant(5));
		var_Editor2->ExpandAll();
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (DropDownList - single column tree)'");
	h = var_Items->AddItem(TVariant(1));
	Exg2anttlib_tlb::IEditorPtr var_Editor3 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor3->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
		var_Editor3->DropDownAutoWidth = Exg2anttlib_tlb::DropDownWidthType::exDropDownEditorWidth;
		var_Editor3->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exDropDownColumnCaption,TVariant("Name¦Title¦City¦Phone"));
		var_Editor3->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exDropDownColumnWidth,TVariant("312¦¦¦96"));
		var_Editor3->AddItem(1,L"Nancy Davolio¦Sales Representative¦Seattle¦(206) 555-9857",TVariant(1));
		var_Editor3->AddItem(2,L"Andrew Fuller¦<b>Vice President</b>, Sales¦Tacoma¦(206) 555-9482",TVariant(2));
		var_Editor3->AddItem(3,L"Janet Leverling¦Sales Representative¦Kirkland¦(206) 555-3412",TVariant(3));
		var_Editor3->AddItem(4,L"Peacock Margaret¦Sales Representative¦Redmond¦(206) 555-8122",TVariant(3));
		var_Editor3->AddItem(5,L"Steven Buchanan¦Sales Manager¦London¦(71) 555-4848",TVariant(2));
		var_Editor3->AddItem(6,L"Michael Suyama¦Sales Representative¦London¦(71) 555-7773",TVariant(1));
		var_Editor3->AddItem(7,L"Robert King¦Sales Representative¦Kirkland¦(71) 555-5598",TVariant(2));
		var_Editor3->AddItem(8,L"Laura Callahan¦Inside Sales Coordinator¦Seattle¦(206) 555-1189",TVariant(3));
		var_Editor3->AddItem(9,L"Anne Dodsworth¦Sales Representative¦London¦(71) 555-4444",TVariant(2));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (DropDownList - multiple columns list)'");
	h = var_Items->AddItem(TVariant(1));
	Exg2anttlib_tlb::IEditorPtr var_Editor4 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor4->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
		var_Editor4->DropDownAutoWidth = Exg2anttlib_tlb::DropDownWidthType::exDropDownEditorWidth;
		var_Editor4->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exDropDownColumnCaption,TVariant("Name¦Title¦City¦Phone"));
		var_Editor4->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exDropDownColumnWidth,TVariant("312¦¦¦96"));
		var_Editor4->AddItem(1,L"Nancy Davolio¦Sales Representative¦Seattle¦(206) 555-9857",TVariant(1));
		var_Editor4->AddItem(2,L"Andrew Fuller¦<b>Vice President</b>, Sales¦Tacoma¦(206) 555-9482",TVariant(2));
		var_Editor4->InsertItem(3,L"Janet Leverling¦Sales Representative¦Kirkland¦(206) 555-3412",TVariant(3),TVariant(2));
		var_Editor4->InsertItem(4,L"Peacock Margaret¦Sales Representative¦Redmond¦(206) 555-8122",TVariant(3),TVariant(2));
		var_Editor4->InsertItem(5,L"Steven Buchanan¦Sales Manager¦London¦(71) 555-4848",TVariant(2),TVariant(2));
		var_Editor4->InsertItem(6,L"Michael Suyama¦Sales Representative¦London¦(71) 555-7773",TVariant(1),TVariant(5));
		var_Editor4->InsertItem(7,L"Robert King¦Sales Representative¦Kirkland¦(71) 555-5598",TVariant(2),TVariant(2));
		var_Editor4->InsertItem(8,L"Laura Callahan¦Inside Sales Coordinator¦Seattle¦(206) 555-1189",TVariant(3),TVariant(2));
		var_Editor4->InsertItem(9,L"Anne Dodsworth¦Sales Representative¦London¦(71) 555-4444",TVariant(2),TVariant(5));
		var_Editor4->ExpandAll();
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (DropDownList - multiple columns tree)'");
	h = var_Items->AddItem(TVariant(100));
	var_Items->get_CellEditor(TVariant(h),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (SpinType)'");
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(MemoType)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::MemoType;
	h = var_Items->AddItem(TVariant(3));
	Exg2anttlib_tlb::IEditorPtr var_Editor5 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor5->EditType = Exg2anttlib_tlb::EditTypeEnum::CheckListType;
		var_Editor5->AddItem(1,L"Border",TVariant(1));
		var_Editor5->AddItem(2,L"Single",TVariant(2));
		var_Editor5->AddItem(4,L"Frame",TVariant(3));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (CheckListType)'");
	h = var_Items->AddItem(TVariant("193.226.40.161"));
	Exg2anttlib_tlb::IEditorPtr var_Editor6 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor6->Mask = L"{0,255}.{0,255}.{0,255}.{0,255}";
		var_Editor6->EditType = Exg2anttlib_tlb::EditTypeEnum::MaskType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (MaskType)'");
	h = var_Items->AddItem(TVariant(65280));
	Exg2anttlib_tlb::IEditorPtr var_Editor7 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor7->EditType = Exg2anttlib_tlb::EditTypeEnum::ColorType;
		var_Editor7->Mask = L"`RGB(`{0,255}\\,{0,255}\\,{0,255}`)`;;0";
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (ColorType)'");
	h = var_Items->AddItem(TVariant("Tahoma"));
	var_Items->get_CellEditor(TVariant(h),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::FontType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (FontType)'");
	h = var_Items->AddItem(TVariant(String("gBHJJGHA5MIwAEIe4AAAFhwbiAliQwig7ixFjBQjRbjhljxwkB7kSFkiQkyblCllSwli7lzFmDQmTbmjlmzwnD7nQBnk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTq") +
"lVq1XrFZrVbrldr1YhgAEL5AgBhj/AAssMJthABFof4JDhIWCgYKDBATFT8M6hUIFAQAEQCCDwYF/QoWDZCRBgOKgIYHCQXMisKBAEQAAgOBZaSgQhjERANKQiZhIWam" +
"YyIBQ6FzcNKxQLJT4ADA4RjwObAAidBYdHwABQgUxMQYZEI0cD4OgnYKaKyzIRFNQx2YCKoFHScYD0ADXQwUAgwLoLQDqaCWBJoNQ9NBxFJTVQORgiarqSABbamGwtDA" +
"wBUWhQmqYALnOFQvGYPA4m6AwKhkZxKj2PBWC0SZCgmVY6CwIJgieBAniubRKHgaYgiwQwGiCfxGDWbBRmGZYIi2VwGnAexxGUSwUFiaR+hQPbBgOCoLCIHh4DAARCmQ" +
"G4AlgNxuhwWgpFAEQUhuOxOk0NrhAaQoBmgPYdFSIZPjYGYbn+HhgEoAA7HMBIOjUM51AoPojHkEwVlET5slgWZtAEUBdjeSoeF6X5/rQRRSi+QB6GychsEAfZshKYAB" +
"GQZorlAOgMBqEgAjYHB2jqSoigmYBLk+QZnBqGhggAEwImgbojgoIwSE+MxUHiS4REQCQWluD48B+JJoL+YQikuaI9AALgLmsJQfnSdAvDkCJEhIIIBgOegLEiPBqCyC" +
"AAjcCwgAAIJBhQBQkHGL4gDaNBokkZQMiwUAuioJQiCAQYsHMcwwEIeoigAYIogsGIwFKIYICIWguEoPgQhsawBASGgwCuJwLH8K4LigAIaDwbxMAOKxbisPwfASQATF" +
"ASoagIEYwgcSoKGiAA/mEdIuiGPxCmObIlhMIJNHONxFH8EpPCGeB+noEpBBSSRjCsPZEiyKhgjAH5whSdLEjwDxjC8TxVEMFRzFWJJZBUSI0gQEQLBOM4VHkIg1D0CA" +
"JDQNg/p4AAdoC"));
	var_Items->get_CellEditor(TVariant(h),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::PictureType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (PictureType)'");
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(ButtonType)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::ButtonType;
	h = var_Items->AddItem(TVariant(25));
	var_Items->get_CellEditor(TVariant(h),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::ProgressBarType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (ProgressBarType)'");
	h = var_Items->AddItem(TVariant("Value 1"));
	Exg2anttlib_tlb::IEditorPtr var_Editor8 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor8->EditType = Exg2anttlib_tlb::EditTypeEnum::PickEditType;
		var_Editor8->AddItem(1,L"Value 1",TVariant(1));
		var_Editor8->AddItem(2,L"Value 2",TVariant(2));
		var_Editor8->AddItem(3,L"Value 3",TVariant(3));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (PickEditType)'");
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(LinkEditType)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::LinkEditType;
	Exg2anttlib_tlb::IEditorPtr var_Editor9 = var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(UserEditorType)"))),TVariant(0));
		var_Editor9->EditType = Exg2anttlib_tlb::EditTypeEnum::UserEditorType;
		var_Editor9->UserEditor(L"Exontrol.ComboBox",L"");
		/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		ExComboBox 1.0 Control Library

	TypeLib: ExComboBox.dll

	to define the namespace: Excomboboxlib_tlb
*/
//#include "EXCOMBOBOXLIB_TLB.h"
		Excomboboxlib_tlb::IComboBoxPtr var_ComboBox = (IDispatch*)var_Editor9->UserEditorObject;
			var_ComboBox->BeginUpdate();
			var_ComboBox->LabelHeight = G2antt1->DefaultItemHeight;
			var_ComboBox->Style = Excomboboxlib_tlb::StyleEnum::DropDownList;
			var_ComboBox->ColumnAutoResize = false;
			/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
			Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADOR.Recordset");
				rs->Open(TVariant("Orders"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.accdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
			var_ComboBox->DataSource = (IDispatch*)rs;
			var_ComboBox->MinHeightList = 128;
			var_ComboBox->SearchColumnIndex = 0;
			var_ComboBox->UseTabKey = false;
			var_ComboBox->EndUpdate();
	h = var_Items->AddItem(TVariant(255));
	Exg2anttlib_tlb::IEditorPtr var_Editor10 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor10->EditType = Exg2anttlib_tlb::EditTypeEnum::ColorListType;
		var_Editor10->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exColorListShowName,TVariant(true));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (ColorListType)'");
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant(65280))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::ColorListType;
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(MemoDropDownType)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::MemoDropDownType;
	Exg2anttlib_tlb::IEditorPtr var_Editor11 = var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant(-1))),TVariant(0));
		var_Editor11->EditType = Exg2anttlib_tlb::EditTypeEnum::CheckValueType;
		var_Editor11->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exCheckValue2,TVariant(1));
	h = var_Items->AddItem(TVariant(50));
	Exg2anttlib_tlb::IEditorPtr var_Editor12 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor12->EditType = Exg2anttlib_tlb::EditTypeEnum::SliderType;
		var_Editor12->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exSliderWidth,TVariant(-60));
		var_Editor12->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exSliderTickFrequency,TVariant(10));
		var_Editor12->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exSliderTickStyle,TVariant(2));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (SliderType)'");
	h = var_Items->AddItem(TVariant(100));
	var_Items->get_CellEditor(TVariant(h),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::CalculatorType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (CalculatorType)'");
	var_Items->EnsureVisibleItem(h);
G2antt1->EndUpdate();

2236
Editors (ImageSize = 16, default)

G2antt1->BeginUpdate();
G2antt1->ImageSize = 16;
G2antt1->Images(TVariant(String("gBJJgBAIDAAEg4ACEKAD/hz/EMNh8TIRNGwAjEZAEXjAojJAjMLjABAAgjUYkUnlUrlktl0vmExmUzmk1m03nE5nU7nkrQCAntBoVDolFo1HoM/ADAplLptImdMYFOq") +
"dSqlXq1QrVbrlGpVWsFNrNdnNjsk7pQAtNroFnt0sh8Yr9iulTuNxs1Eu8OiT/vsnsNVutXlk/oGGtVKxGLxWNtsZtN8iUYuNvy0Zvd+xNYwdwvl4p870GCqc8vOeuVt" +
"tmp1knyOayWVy+WzN/ze1wOElenm+12WUz/Bv2/3UyyWrzeutux2GSyGP2dQ33C1ur3GD3M4zUNzHdlWjq/E3nGzVpjWv4HA7fRy/Tv2IrN8rPW6nZ3ve7mUlfu20Z8a" +
"cvQyb+vY9jasYoDwMm+LytVBDqKG3z8O3Cb8P+mkAuY9cCQ2uL4KaxDKvkp8RNLEjqugnrwQo/UWPzFyeQw5sNLZFENrI4kOqU66pw8uzmOKvTqNqjULJvGL1JO48GtT" +
"GsbLdEL3scxLlyiw8dQeoUVxdLTtyKmUjwGlslRPJsnK1HbAKbKCrsQo8uQk/CeP44iaR/ATnTNPLvyxPU+z9P9AUDQVBowiofJXQ6Oo+kKMpIkjztE4TKn4P6JowfgP" +
"nwD5/nAjB8AOeAPo0eAA1IAFH07UhAIMpYAVIYFHqBUhwVjV1S1EtQAHxW65V0AZwAeuQAnwB5gAPYViEDVhwAHTQBkCjB4gOhwDmCyhH0sACAg=="));
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(4,TVariant(String("gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjH") +
"LUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKB" +
"UrGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo" +
"3NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDs" +
"YYDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoV" +
"mWCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoV" +
"oWiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZi" +
"Se41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbh" +
"FCcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA=="));
G2antt1->Columns->Add(L"Editors")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueFormat,TVariant(1));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(ReadOnly)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::ReadOnly;
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(EditType)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
	long h = var_Items->AddItem(TVariant("Value 1"));
	Exg2anttlib_tlb::IEditorPtr var_Editor = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownType;
		var_Editor->AddItem(1,L"Value 1",TVariant(1));
		var_Editor->AddItem(2,L"Value 2",TVariant(2));
		var_Editor->AddItem(3,L"Value 3",TVariant(3));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (DropDownType)'");
	h = var_Items->AddItem(TVariant(1));
	Exg2anttlib_tlb::IEditorPtr var_Editor1 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor1->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
		var_Editor1->DropDownAutoWidth = Exg2anttlib_tlb::DropDownWidthType::exDropDownEditorWidth;
		var_Editor1->AddItem(1,L"Nancy Davolio",TVariant(1));
		var_Editor1->AddItem(2,L"Andrew Fuller",TVariant(2));
		var_Editor1->AddItem(3,L"Janet Leverling",TVariant(3));
		var_Editor1->AddItem(4,L"Peacock Margaret",TVariant(3));
		var_Editor1->AddItem(5,L"Steven Buchanan",TVariant(2));
		var_Editor1->AddItem(6,L"Michael Suyama",TVariant(1));
		var_Editor1->AddItem(7,L"Robert King",TVariant(2));
		var_Editor1->AddItem(8,L"Laura Callahan",TVariant(3));
		var_Editor1->AddItem(9,L"Anne Dodsworth",TVariant(2));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (DropDownList - single column list)'");
	h = var_Items->AddItem(TVariant(1));
	Exg2anttlib_tlb::IEditorPtr var_Editor2 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor2->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
		var_Editor2->DropDownAutoWidth = Exg2anttlib_tlb::DropDownWidthType::exDropDownEditorWidth;
		var_Editor2->AddItem(1,L"Nancy Davolio",TVariant(1));
		var_Editor2->AddItem(2,L"Andrew Fuller",TVariant(2));
		var_Editor2->InsertItem(3,L"Janet Leverling",TVariant(3),TVariant(2));
		var_Editor2->InsertItem(4,L"Peacock Margaret",TVariant(3),TVariant(2));
		var_Editor2->InsertItem(5,L"Steven Buchanan",TVariant(2),TVariant(2));
		var_Editor2->InsertItem(6,L"Michael Suyama",TVariant(1),TVariant(5));
		var_Editor2->InsertItem(7,L"Robert King",TVariant(2),TVariant(2));
		var_Editor2->InsertItem(8,L"Laura Callahan",TVariant(3),TVariant(2));
		var_Editor2->InsertItem(9,L"Anne Dodsworth",TVariant(2),TVariant(5));
		var_Editor2->ExpandAll();
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (DropDownList - single column tree)'");
	h = var_Items->AddItem(TVariant(1));
	Exg2anttlib_tlb::IEditorPtr var_Editor3 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor3->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
		var_Editor3->DropDownAutoWidth = Exg2anttlib_tlb::DropDownWidthType::exDropDownEditorWidth;
		var_Editor3->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exDropDownColumnCaption,TVariant("Name¦Title¦City¦Phone"));
		var_Editor3->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exDropDownColumnWidth,TVariant("312¦¦¦96"));
		var_Editor3->AddItem(1,L"Nancy Davolio¦Sales Representative¦Seattle¦(206) 555-9857",TVariant(1));
		var_Editor3->AddItem(2,L"Andrew Fuller¦<b>Vice President</b>, Sales¦Tacoma¦(206) 555-9482",TVariant(2));
		var_Editor3->AddItem(3,L"Janet Leverling¦Sales Representative¦Kirkland¦(206) 555-3412",TVariant(3));
		var_Editor3->AddItem(4,L"Peacock Margaret¦Sales Representative¦Redmond¦(206) 555-8122",TVariant(3));
		var_Editor3->AddItem(5,L"Steven Buchanan¦Sales Manager¦London¦(71) 555-4848",TVariant(2));
		var_Editor3->AddItem(6,L"Michael Suyama¦Sales Representative¦London¦(71) 555-7773",TVariant(1));
		var_Editor3->AddItem(7,L"Robert King¦Sales Representative¦Kirkland¦(71) 555-5598",TVariant(2));
		var_Editor3->AddItem(8,L"Laura Callahan¦Inside Sales Coordinator¦Seattle¦(206) 555-1189",TVariant(3));
		var_Editor3->AddItem(9,L"Anne Dodsworth¦Sales Representative¦London¦(71) 555-4444",TVariant(2));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (DropDownList - multiple columns list)'");
	h = var_Items->AddItem(TVariant(1));
	Exg2anttlib_tlb::IEditorPtr var_Editor4 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor4->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
		var_Editor4->DropDownAutoWidth = Exg2anttlib_tlb::DropDownWidthType::exDropDownEditorWidth;
		var_Editor4->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exDropDownColumnCaption,TVariant("Name¦Title¦City¦Phone"));
		var_Editor4->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exDropDownColumnWidth,TVariant("312¦¦¦96"));
		var_Editor4->AddItem(1,L"Nancy Davolio¦Sales Representative¦Seattle¦(206) 555-9857",TVariant(1));
		var_Editor4->AddItem(2,L"Andrew Fuller¦<b>Vice President</b>, Sales¦Tacoma¦(206) 555-9482",TVariant(2));
		var_Editor4->InsertItem(3,L"Janet Leverling¦Sales Representative¦Kirkland¦(206) 555-3412",TVariant(3),TVariant(2));
		var_Editor4->InsertItem(4,L"Peacock Margaret¦Sales Representative¦Redmond¦(206) 555-8122",TVariant(3),TVariant(2));
		var_Editor4->InsertItem(5,L"Steven Buchanan¦Sales Manager¦London¦(71) 555-4848",TVariant(2),TVariant(2));
		var_Editor4->InsertItem(6,L"Michael Suyama¦Sales Representative¦London¦(71) 555-7773",TVariant(1),TVariant(5));
		var_Editor4->InsertItem(7,L"Robert King¦Sales Representative¦Kirkland¦(71) 555-5598",TVariant(2),TVariant(2));
		var_Editor4->InsertItem(8,L"Laura Callahan¦Inside Sales Coordinator¦Seattle¦(206) 555-1189",TVariant(3),TVariant(2));
		var_Editor4->InsertItem(9,L"Anne Dodsworth¦Sales Representative¦London¦(71) 555-4444",TVariant(2),TVariant(5));
		var_Editor4->ExpandAll();
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (DropDownList - multiple columns tree)'");
	h = var_Items->AddItem(TVariant(100));
	var_Items->get_CellEditor(TVariant(h),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::SpinType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (SpinType)'");
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(MemoType)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::MemoType;
	h = var_Items->AddItem(TVariant(3));
	Exg2anttlib_tlb::IEditorPtr var_Editor5 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor5->EditType = Exg2anttlib_tlb::EditTypeEnum::CheckListType;
		var_Editor5->AddItem(1,L"Border",TVariant(1));
		var_Editor5->AddItem(2,L"Single",TVariant(2));
		var_Editor5->AddItem(4,L"Frame",TVariant(3));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (CheckListType)'");
	h = var_Items->AddItem(TVariant("193.226.40.161"));
	Exg2anttlib_tlb::IEditorPtr var_Editor6 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor6->Mask = L"{0,255}.{0,255}.{0,255}.{0,255}";
		var_Editor6->EditType = Exg2anttlib_tlb::EditTypeEnum::MaskType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (MaskType)'");
	h = var_Items->AddItem(TVariant(65280));
	Exg2anttlib_tlb::IEditorPtr var_Editor7 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor7->EditType = Exg2anttlib_tlb::EditTypeEnum::ColorType;
		var_Editor7->Mask = L"`RGB(`{0,255}\\,{0,255}\\,{0,255}`)`;;0";
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (ColorType)'");
	h = var_Items->AddItem(TVariant("Tahoma"));
	var_Items->get_CellEditor(TVariant(h),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::FontType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (FontType)'");
	h = var_Items->AddItem(TVariant(String("gBHJJGHA5MIwAEIe4AAAFhwbiAliQwig7ixFjBQjRbjhljxwkB7kSFkiQkyblCllSwli7lzFmDQmTbmjlmzwnD7nQBnk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTq") +
"lVq1XrFZrVbrldr1YhgAEL5AgBhj/AAssMJthABFof4JDhIWCgYKDBATFT8M6hUIFAQAEQCCDwYF/QoWDZCRBgOKgIYHCQXMisKBAEQAAgOBZaSgQhjERANKQiZhIWam" +
"YyIBQ6FzcNKxQLJT4ADA4RjwObAAidBYdHwABQgUxMQYZEI0cD4OgnYKaKyzIRFNQx2YCKoFHScYD0ADXQwUAgwLoLQDqaCWBJoNQ9NBxFJTVQORgiarqSABbamGwtDA" +
"wBUWhQmqYALnOFQvGYPA4m6AwKhkZxKj2PBWC0SZCgmVY6CwIJgieBAniubRKHgaYgiwQwGiCfxGDWbBRmGZYIi2VwGnAexxGUSwUFiaR+hQPbBgOCoLCIHh4DAARCmQ" +
"G4AlgNxuhwWgpFAEQUhuOxOk0NrhAaQoBmgPYdFSIZPjYGYbn+HhgEoAA7HMBIOjUM51AoPojHkEwVlET5slgWZtAEUBdjeSoeF6X5/rQRRSi+QB6GychsEAfZshKYAB" +
"GQZorlAOgMBqEgAjYHB2jqSoigmYBLk+QZnBqGhggAEwImgbojgoIwSE+MxUHiS4REQCQWluD48B+JJoL+YQikuaI9AALgLmsJQfnSdAvDkCJEhIIIBgOegLEiPBqCyC" +
"AAjcCwgAAIJBhQBQkHGL4gDaNBokkZQMiwUAuioJQiCAQYsHMcwwEIeoigAYIogsGIwFKIYICIWguEoPgQhsawBASGgwCuJwLH8K4LigAIaDwbxMAOKxbisPwfASQATF" +
"ASoagIEYwgcSoKGiAA/mEdIuiGPxCmObIlhMIJNHONxFH8EpPCGeB+noEpBBSSRjCsPZEiyKhgjAH5whSdLEjwDxjC8TxVEMFRzFWJJZBUSI0gQEQLBOM4VHkIg1D0CA" +
"JDQNg/p4AAdoC"));
	var_Items->get_CellEditor(TVariant(h),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::PictureType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (PictureType)'");
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(ButtonType)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::ButtonType;
	h = var_Items->AddItem(TVariant(25));
	var_Items->get_CellEditor(TVariant(h),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::ProgressBarType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (ProgressBarType)'");
	h = var_Items->AddItem(TVariant("Value 1"));
	Exg2anttlib_tlb::IEditorPtr var_Editor8 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor8->EditType = Exg2anttlib_tlb::EditTypeEnum::PickEditType;
		var_Editor8->AddItem(1,L"Value 1",TVariant(1));
		var_Editor8->AddItem(2,L"Value 2",TVariant(2));
		var_Editor8->AddItem(3,L"Value 3",TVariant(3));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (PickEditType)'");
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(LinkEditType)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::LinkEditType;
	Exg2anttlib_tlb::IEditorPtr var_Editor9 = var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(UserEditorType)"))),TVariant(0));
		var_Editor9->EditType = Exg2anttlib_tlb::EditTypeEnum::UserEditorType;
		var_Editor9->UserEditor(L"Exontrol.ComboBox",L"");
		/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		ExComboBox 1.0 Control Library

	TypeLib: ExComboBox.dll

	to define the namespace: Excomboboxlib_tlb
*/
//#include "EXCOMBOBOXLIB_TLB.h"
		Excomboboxlib_tlb::IComboBoxPtr var_ComboBox = (IDispatch*)var_Editor9->UserEditorObject;
			var_ComboBox->BeginUpdate();
			var_ComboBox->LabelHeight = G2antt1->DefaultItemHeight;
			var_ComboBox->Style = Excomboboxlib_tlb::StyleEnum::DropDownList;
			var_ComboBox->ColumnAutoResize = false;
			/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
			Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADOR.Recordset");
				rs->Open(TVariant("Orders"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.accdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
			var_ComboBox->DataSource = (IDispatch*)rs;
			var_ComboBox->MinHeightList = 128;
			var_ComboBox->SearchColumnIndex = 0;
			var_ComboBox->UseTabKey = false;
			var_ComboBox->EndUpdate();
	h = var_Items->AddItem(TVariant(255));
	Exg2anttlib_tlb::IEditorPtr var_Editor10 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor10->EditType = Exg2anttlib_tlb::EditTypeEnum::ColorListType;
		var_Editor10->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exColorListShowName,TVariant(true));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (ColorListType)'");
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant(65280))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::ColorListType;
	var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant("(MemoDropDownType)"))),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::MemoDropDownType;
	Exg2anttlib_tlb::IEditorPtr var_Editor11 = var_Items->get_CellEditor(TVariant(var_Items->AddItem(TVariant(-1))),TVariant(0));
		var_Editor11->EditType = Exg2anttlib_tlb::EditTypeEnum::CheckValueType;
		var_Editor11->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exCheckValue2,TVariant(1));
	h = var_Items->AddItem(TVariant(50));
	Exg2anttlib_tlb::IEditorPtr var_Editor12 = var_Items->get_CellEditor(TVariant(h),TVariant(0));
		var_Editor12->EditType = Exg2anttlib_tlb::EditTypeEnum::SliderType;
		var_Editor12->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exSliderWidth,TVariant(-60));
		var_Editor12->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exSliderTickFrequency,TVariant(10));
		var_Editor12->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exSliderTickStyle,TVariant(2));
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (SliderType)'");
	h = var_Items->AddItem(TVariant(100));
	var_Items->get_CellEditor(TVariant(h),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::CalculatorType;
	var_Items->set_FormatCell(TVariant(h),TVariant(0),L"value + ' (CalculatorType)'");
	var_Items->EnsureVisibleItem(h);
G2antt1->EndUpdate();

2235
Is it possible to limit the overlaid to two rows only

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->NonworkingDays = 0;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,17).operator double()));
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->Bars->get_Item(TVariant("Task"))->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsCascade;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,26).operator double()),TVariant(TDateTime(2006,10,6).operator double()),TVariant("K1"),TVariant("K1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,10,5).operator double()),TVariant(TDateTime(2006,10,10).operator double()),TVariant("K3"),TVariant("K2"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,27).operator double()),TVariant("T1"),TVariant("T"));
	var_Items->set_ItemBar(0,TVariant("<T*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(65280));
	var_Items->set_ItemBar(0,TVariant("<K*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOverlaidKey,TVariant("Level0"));
	var_Items->set_ItemBar(0,TVariant("<T*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOverlaidKey,TVariant("Level1"));
	var_Items->set_ItemMaxHeight(h1,26);
G2antt1->EndUpdate();

2234
Is it possible to sort the bars

G2antt1->BeginUpdate();
G2antt1->AntiAliasing = true;
G2antt1->Columns->Add(L"Task")->AllowSort = false;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Name");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(0));
	var_Column->SortType = Exg2anttlib_tlb::SortTypeEnum::SortString;
	var_Column->Visible = false;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,31).operator double()));
	var_Chart->set_PaneWidth(false,48);
	var_Chart->LevelCount = 2;
	var_Chart->Bars->get_Item(TVariant("Task"))->Pattern = Exg2anttlib_tlb::PatternEnum::exPatternSolid;
	var_Chart->Bars->Copy(L"Task",L"Red")->Color = RGB(255,0,0);
	var_Chart->NonworkingDaysPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->NonworkingDaysColor = RGB(224,224,224);
	var_Chart->LinksStyle = Exg2anttlib_tlb::LinkStyleEnum::exLinkSolid;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Red"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TNoParam(),TNoParam());
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TNoParam(),TNoParam());
	long h4 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h4,TVariant("Red"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TNoParam(),TNoParam());
	long h5 = var_Items->AddItem(TVariant("Task 5"));
	var_Items->AddBar(h5,TVariant("Red"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant(""),h3,TVariant(""));
	var_Items->AddLink(TVariant("L2"),h2,TVariant(""),h4,TVariant(""));
	var_Items->AddLink(TVariant("L3"),h3,TVariant(""),h4,TVariant(""));
	var_Items->AddLink(TVariant("L4"),h4,TVariant(""),h5,TVariant(""));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->Chart->ShowLinks = Exg2anttlib_tlb::ShowExtendedLinksEnum::exShowExtendedLinks;
G2antt1->Columns->get_Item(TVariant("Name"))->SortOrder = Exg2anttlib_tlb::SortOrderEnum::SortAscending;
G2antt1->EndUpdate();

2233
Re-order the cell's caption, icons and images/pictures

G2antt1->BeginUpdate();
G2antt1->Images(TVariant(String("gBJJgBAICAADAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEahkZAIAEEbjMjlErlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTq") +
"lVq1XrFZrVbrlTiFdib/sNjr9gs1nldlrlqtFtt0stlguNvulyh91ud1vVVvNuvt7wFHr9/vl3luEwOJouIq+Dw2KyGRyWTymVy2XzGZzUuiw+lmej0gkUaksljaAnmD" +
"cD/cEbf7w1+ufD/fEbeB028bYAO3enB6AB++4EoA4A4sb4vHjXJ4nG5vKAHA4ca6XBjTAD/Y2x/eB/jcB"));
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"ToLeft");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
Exg2anttlib_tlb::IColumnPtr var_Column1 = G2antt1->Columns->Add(L"ToRight");
	var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellDrawPartsOrder,TVariant("caption,picture,icons,icon,check"));
G2antt1->DefaultItemHeight = 32;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exVLines;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Caption"));
	var_Items->set_CellImage(TVariant(h),TVariant(0),2);
	var_Items->set_CellImages(TVariant(h),TVariant(0),TVariant("1,2"));
	var_Items->set_CellPicture(TVariant(h),TVariant(0),G2antt1->ExecuteTemplate(TVariant(String("loadpicture(`gCJKBOI4NBQaBQAhQNJJIIhShQAEEREAIA0ROZ6PT0hQKYZpIZDKBJkIgKByN5mNJsMsKPABVqXBI4KjrD7HL6GWKPJKiCIhMiySidKxbOzZZJWMLs") +
"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`)")));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(var_Items->get_CellValue(TVariant(h),TVariant(0))));
	var_Items->set_CellHAlignment(TVariant(h),TVariant(1),Exg2anttlib_tlb::AlignmentEnum::RightAlignment);
	var_Items->set_CellImage(TVariant(h),TVariant(1),var_Items->get_CellImage(TVariant(h),TVariant(0)));
	var_Items->set_CellImages(TVariant(h),TVariant(1),TVariant("2,1"));
	var_Items->set_CellPicture(TVariant(h),TVariant(1),var_Items->get_CellPicture(TVariant(h),TVariant(0)));
	h = var_Items->AddItem(TVariant("<b>HTML</b> <off 4>Caption"));
	var_Items->set_CellValueFormat(TVariant(h),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_CellImage(TVariant(h),TVariant(0),2);
	var_Items->set_CellImages(TVariant(h),TVariant(0),TVariant("1,2"));
	var_Items->set_CellPicture(TVariant(h),TVariant(0),G2antt1->ExecuteTemplate(TVariant(String("loadpicture(`gCJKBOI4NBQaBQAhQNJJIIhShQAEEREAIA0ROZ6PT0hQKYZpIZDKBJkIgKByN5mNJsMsKPABVqXBI4KjrD7HL6GWKPJKiCIhMiySidKxbOzZZJWMLs") +
"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`)")));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant(var_Items->get_CellValue(TVariant(h),TVariant(0))));
	var_Items->set_CellValueFormat(TVariant(h),TVariant(1),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_CellHAlignment(TVariant(h),TVariant(1),Exg2anttlib_tlb::AlignmentEnum::RightAlignment);
	var_Items->set_CellImage(TVariant(h),TVariant(1),var_Items->get_CellImage(TVariant(h),TVariant(0)));
	var_Items->set_CellImages(TVariant(h),TVariant(1),TVariant("2,1"));
	var_Items->set_CellPicture(TVariant(h),TVariant(1),var_Items->get_CellPicture(TVariant(h),TVariant(0)));
G2antt1->EndUpdate();

2232
ImageSize property on 32 (specifies the size of control' icons/images/check-boxes/radio-buttons)

// AddColumn event - Fired after a new column has been added.
void __fastcall TForm1::G2antt1AddColumn(TObject *Sender,Exg2anttlib_tlb::IColumn   *Column)
{
	// Column.Def(48) = 2
	// Column.Def(49) = 2
}

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void __fastcall TForm1::G2antt1AddItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item)
{
	G2antt1->Items->AddBar(Item,TVariant("Task"),TVariant(TDateTime(2022,1,2).operator double()),TVariant(TDateTime(2022,1,8).operator double()),TNoParam(),TVariant("<img>1</img>"));
}

G2antt1->BeginUpdate();
G2antt1->ImageSize = 32;
G2antt1->DefaultItemHeight = 36;
G2antt1->HeaderHeight = G2antt1->DefaultItemHeight;
G2antt1->SortBarHeight = G2antt1->DefaultItemHeight;
G2antt1->Font->Size = TVariant(long(16));
G2antt1->FilterBarFont->Size = TVariant(G2antt1->Font->Size);
G2antt1->ToolTipFont->Size = TVariant(G2antt1->Font->Size);
G2antt1->Indent = 26;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2022,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->Height = 22;
G2antt1->Images(TVariant(String("gBJJgBAIDAAEg4AEEKAD/hz/EMNh8TIRNGwAjEZAEXjAojKAjMLjABhkaABAk0plUrlktl0vmExmUzmk1m03nE5nU7nk9miAoE+oVDolFo1HpFJpU5h8Sf9OqFNqUOq") +
"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"));
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(1,TVariant(String("gBFLBCJwBAEHhEJAAEhABfICg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj") +
"6CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7E" +
"MRwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsOatVqjG5sYjcGC3La9cz3Pq/bpuDCbMxuaK1TrYXr1TTrcofBDldAxXRKDx" +
"RDWVhLnYOw9i6XxzjuXprCaOoKB6EwbiCZZCGOdZYlcT4xHmbhMnwNxtn+G5bmqdZ7n4Pw/i+X5zm+dQ9g4CAFjsfAJheOI8HsDoWDWTB/lwSAQkmA5PEgRYoDyDwYFY" +
"FoFmGCBmBqBphDgRJ0gOTIYBGRB/lyRh0iSCZbjYWJzgWDwIjYLoLmMCJGDKDJjBgWgqG6YhyhGHRzA2aJ1mCABOAiOJvhCZBJBYRoRmSCQmEqEQimkAZgg8TZnDCV4U" +
"kmCUmBKZYJGYWoWCUUhiFMNZckNUh2GENoaGaGZmgmJhqhqZpGGIEx2GYIxSGGGJdggWJth2Z4JmYeoemeSZ2H6H4hGmQhihyTRHGYLg7CiCgmgqIpokoNoOiOaJ4jqA" +
"ochqaZGgaCxpAoZoaiaaJqEmWIcGgShcnCJwqEqFoR3YOoFlgchflqNouiuawHmWSYqGkWZQhcatzmaOoumuSp2j6L5bBaKo0GQKRnGGCxqiyCwmkqMpsksNpOGUGI7A" +
"0ew1G0Rxlg0PptgsZuDG2Sx2l6N5tnYNZZjUDRXDCVo5l2FoymqOpukuNpujubwLjmWY5k0ZwxkaFxYlWdp6j6b5Lnafo/nABQdg2FxcUsY5BkmXAkmeQpckwNRrkKTh" +
"8CSHZBk4NwyC4KxxgMDwakOMZDn8GgwnGAo2C4cwthMcwmCcMoHBMHRehwTIghySYNksZwcH4HBMEsHx5hyPItiweYxnwSZEH4Mozn0fR+DMAo7EYJ50gkdZelKdNql2" +
"UgJn0GIukwH4HicQRai2GI4mSVpNl0dZGledgNgcYpYDWUx3FsOQi5YV5anaTY3G6W53A2RxylydxFjiaxEFCCgBBAQ=="));
	var_Appearance->Add(2,TVariant(String("gBFLBCJwBAEHhEJAAEhABcoFg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj") +
"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" +
"gRBCCQAgQEA=="));
	var_Appearance->Add(3,TVariant(String("gBFLBCJwBAEHhEJAAEhABQ4Fg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj") +
"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"));
	var_Appearance->Add(4,TVariant(String("gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjH") +
"LUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKB" +
"UrGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo" +
"3NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDs" +
"YYDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoV" +
"mWCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoV" +
"oWiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZi" +
"Se41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbh" +
"FCcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA=="));
G2antt1->BackColorHeader = 0x4c6c6c6;
G2antt1->SelBackColor = 0x4000000;
G2antt1->SelForeColor = RGB(0,0,1);
G2antt1->CheckImage[Exg2anttlib_tlb::CheckStateEnum::Unchecked] = 16777216;
G2antt1->CheckImage[Exg2anttlib_tlb::CheckStateEnum::Checked] = 33554432;
G2antt1->CheckImage[Exg2anttlib_tlb::CheckStateEnum::PartialChecked] = 50331648;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exSelBackColorFilter] = G2antt1->SelBackColor;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exSelForeColorFilter] = G2antt1->SelForeColor;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exBackColorFilter] = G2antt1->BackColor;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exForeColorFilter] = G2antt1->ForeColor;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exCursorHoverColumn] = -1;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exHeaderFilterBarButton] = 0x4000000;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exHeaderFilterBarActive] = 0x4010101;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exFooterFilterBarButton] = 0x40000ff;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->ShowFocusRect = false;
G2antt1->SortBarVisible = true;
G2antt1->AllowGroupBy = true;
G2antt1->BackColorSortBar = G2antt1->BackColor;
G2antt1->BackColorLevelHeader = G2antt1->BackColor;
G2antt1->FilterBarDropDownHeight = 1;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Check");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
	var_Column->Width = 128;
	var_Column->DisplayFilterButton = true;
	var_Column->FilterList = Exg2anttlib_tlb::FilterListEnum::exShowCheckBox;
Exg2anttlib_tlb::IColumnPtr var_Column1 = G2antt1->Columns->Add(L"Pos");
	var_Column1->FormatColumn = L"1 pos ``";
	var_Column1->AllowSort = false;
	var_Column1->Width = 48;
	var_Column1->AllowSizing = false;
	var_Column1->Alignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Column1->HeaderAlignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
Exg2anttlib_tlb::IColumnPtr var_Column2 = G2antt1->Columns->Add(L"Image");
	var_Column2->DisplayFilterButton = true;
	var_Column2->FilterList = Exg2anttlib_tlb::FilterListEnum::exShowExclude | Exg2anttlib_tlb::FilterListEnum::exShowCheckBox | Exg2anttlib_tlb::FilterListEnum::exSortItemsAsc;
	var_Column2->FilterType = Exg2anttlib_tlb::FilterTypeEnum::exImage;
	var_Column2->DisplayExpandButton = true;
	var_Column2->ExpandColumns = L"1,2,3";
	var_Column2->Width = 128;
	var_Column2->HeaderImage = 1;
Exg2anttlib_tlb::IColumnPtr var_Column3 = G2antt1->Columns->Add(L"Images");
	var_Column3->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column3->Width = 196;
	var_Column3->HTMLCaption = L"<img>1</img><img>2</img><img>3</img> Images";
G2antt1->Columns->get_Item(TVariant("Pos"))->Position = 3;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long hR = var_Items->AddItem(TVariant("Root"));
	var_Items->set_ItemDivider(hR,0);
	var_Items->set_ItemDividerLine(hR,Exg2anttlib_tlb::DividerLineEnum::EmptyLine);
	long h = var_Items->InsertItem(hR,TNoParam(),TVariant("Child A"));
	var_Items->set_CellImage(TVariant(h),TVariant(2),1);
	var_Items->set_CellImages(TVariant(h),TVariant(3),TVariant("1,2,3"));
	var_Items->set_CellValue(TVariant(h),TVariant(3),TVariant("123"));
	h = var_Items->InsertItem(hR,TNoParam(),TVariant("Child B"));
	var_Items->set_CellState(TVariant(h),TVariant(0),1);
	var_Items->set_CellImage(TVariant(h),TVariant(2),3);
	var_Items->set_CellImages(TVariant(h),TVariant(3),TVariant("2,3,1"));
	var_Items->set_CellValue(TVariant(h),TVariant(3),TVariant("231"));
	var_Items->set_SelectItem(h,true);
	h = var_Items->InsertItem(hR,TNoParam(),TVariant("Child C"));
	var_Items->set_CellImage(TVariant(h),TVariant(2),2);
	var_Items->set_CellState(TVariant(h),TVariant(3),1);
	var_Items->set_CellValue(TVariant(h),TVariant(3),TVariant("312"));
	var_Items->set_CellImages(TVariant(h),TVariant(3),TVariant("3,1,2"));
	var_Items->set_ExpandItem(hR,true);
G2antt1->EndUpdate();

2231
ImageSize property on 16 (default) (specifies the size of control' icons/images/check-boxes/radio-buttons)

// AddColumn event - Fired after a new column has been added.
void __fastcall TForm1::G2antt1AddColumn(TObject *Sender,Exg2anttlib_tlb::IColumn   *Column)
{
	// Column.Def(48) = 2
	// Column.Def(49) = 2
}

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void __fastcall TForm1::G2antt1AddItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item)
{
	G2antt1->Items->AddBar(Item,TVariant("Task"),TVariant(TDateTime(2022,1,2).operator double()),TVariant(TDateTime(2022,1,8).operator double()),TNoParam(),TVariant("<img>1</img>"));
}

G2antt1->BeginUpdate();
G2antt1->Chart->set_FirstVisibleDate(TVariant(TDateTime(2022,1,1).operator double()));
G2antt1->ImageSize = 16;
G2antt1->Images(TVariant(String("gBJJgBAIDAAEg4ACEKAD/hz/EMNh8TIRNGwAjEZAEXjAojJAjMLjABAAgjUYkUnlUrlktl0vmExmUzmk1m03nE5nU7nkrQCAntBoVDolFo1HoM/ADAplLptImdMYFOq") +
"dSqlXq1QrVbrlGpVWsFNrNdnNjsk7pQAtNroFnt0sh8Yr9iulTuNxs1Eu8OiT/vsnsNVutXlk/oGGtVKxGLxWNtsZtN8iUYuNvy0Zvd+xNYwdwvl4p870GCqc8vOeuVt" +
"tmp1knyOayWVy+WzN/ze1wOElenm+12WUz/Bv2/3UyyWrzeutux2GSyGP2dQ33C1ur3GD3M4zUNzHdlWjq/E3nGzVpjWv4HA7fRy/Tv2IrN8rPW6nZ3ve7mUlfu20Z8a" +
"cvQyb+vY9jasYoDwMm+LytVBDqKG3z8O3Cb8P+mkAuY9cCQ2uL4KaxDKvkp8RNLEjqugnrwQo/UWPzFyeQw5sNLZFENrI4kOqU66pw8uzmOKvTqNqjULJvGL1JO48GtT" +
"GsbLdEL3scxLlyiw8dQeoUVxdLTtyKmUjwGlslRPJsnK1HbAKbKCrsQo8uQk/CeP44iaR/ATnTNPLvyxPU+z9P9AUDQVBowiofJXQ6Oo+kKMpIkjztE4TKn4P6JowfgP" +
"nwD5/nAjB8AOeAPo0eAA1IAFH07UhAIMpYAVIYFHqBUhwVjV1S1EtQAHxW65V0AZwAeuQAnwB5gAPYViEDVhwAHTQBkCjB4gOhwDmCyhH0sACAg=="));
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(4,TVariant(String("gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjH") +
"LUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKB" +
"UrGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo" +
"3NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDs" +
"YYDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoV" +
"mWCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoV" +
"oWiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZi" +
"Se41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbh" +
"FCcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA=="));
G2antt1->BackColorHeader = 0x4c6c6c6;
G2antt1->SelBackColor = 0x4000000;
G2antt1->SelForeColor = RGB(0,0,1);
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exSelBackColorFilter] = G2antt1->SelBackColor;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exSelForeColorFilter] = G2antt1->SelForeColor;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exBackColorFilter] = G2antt1->BackColor;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exForeColorFilter] = G2antt1->ForeColor;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exCursorHoverColumn] = -1;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exHeaderFilterBarButton] = 0x4000000;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exHeaderFilterBarActive] = 0x4010101;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exFooterFilterBarButton] = 0x40000ff;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->ShowFocusRect = false;
G2antt1->SortBarVisible = true;
G2antt1->AllowGroupBy = true;
G2antt1->BackColorSortBar = G2antt1->BackColor;
G2antt1->BackColorLevelHeader = G2antt1->BackColor;
G2antt1->FilterBarDropDownHeight = 1;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Check");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
	var_Column->Width = 128;
	var_Column->DisplayFilterButton = true;
	var_Column->FilterList = Exg2anttlib_tlb::FilterListEnum::exShowCheckBox;
Exg2anttlib_tlb::IColumnPtr var_Column1 = G2antt1->Columns->Add(L"Pos");
	var_Column1->FormatColumn = L"1 pos ``";
	var_Column1->AllowSort = false;
	var_Column1->Width = 48;
	var_Column1->AllowSizing = false;
	var_Column1->Alignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Column1->HeaderAlignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
Exg2anttlib_tlb::IColumnPtr var_Column2 = G2antt1->Columns->Add(L"Image");
	var_Column2->DisplayFilterButton = true;
	var_Column2->FilterList = Exg2anttlib_tlb::FilterListEnum::exShowExclude | Exg2anttlib_tlb::FilterListEnum::exShowCheckBox | Exg2anttlib_tlb::FilterListEnum::exSortItemsAsc;
	var_Column2->FilterType = Exg2anttlib_tlb::FilterTypeEnum::exImage;
	var_Column2->DisplayExpandButton = true;
	var_Column2->ExpandColumns = L"1,2,3";
	var_Column2->Width = 128;
	var_Column2->HeaderImage = 1;
Exg2anttlib_tlb::IColumnPtr var_Column3 = G2antt1->Columns->Add(L"Images");
	var_Column3->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column3->Width = 196;
	var_Column3->HTMLCaption = L"<img>1</img><img>2</img><img>3</img> Images";
G2antt1->Columns->get_Item(TVariant("Pos"))->Position = 3;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long hR = var_Items->AddItem(TVariant("Root"));
	var_Items->set_ItemDivider(hR,0);
	var_Items->set_ItemDividerLine(hR,Exg2anttlib_tlb::DividerLineEnum::EmptyLine);
	long h = var_Items->InsertItem(hR,TNoParam(),TVariant("Child A"));
	var_Items->set_CellImage(TVariant(h),TVariant(2),1);
	var_Items->set_CellImages(TVariant(h),TVariant(3),TVariant("1,2,3"));
	var_Items->set_CellValue(TVariant(h),TVariant(3),TVariant("123"));
	h = var_Items->InsertItem(hR,TNoParam(),TVariant("Child B"));
	var_Items->set_CellState(TVariant(h),TVariant(0),1);
	var_Items->set_CellImage(TVariant(h),TVariant(2),3);
	var_Items->set_CellImages(TVariant(h),TVariant(3),TVariant("2,3,1"));
	var_Items->set_CellValue(TVariant(h),TVariant(3),TVariant("231"));
	var_Items->set_SelectItem(h,true);
	h = var_Items->InsertItem(hR,TNoParam(),TVariant("Child C"));
	var_Items->set_CellImage(TVariant(h),TVariant(2),2);
	var_Items->set_CellState(TVariant(h),TVariant(3),1);
	var_Items->set_CellValue(TVariant(h),TVariant(3),TVariant("312"));
	var_Items->set_CellImages(TVariant(h),TVariant(3),TVariant("3,1,2"));
	var_Items->set_ExpandItem(hR,true);
G2antt1->EndUpdate();

2230
How do I clip/hide/align the bar's caption/text based on the bar's size/width/length

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Clip");
G2antt1->ScrollBySingleLine = true;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,23).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,216);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->Pattern = Exg2anttlib_tlb::PatternEnum::exPatternBox;
		var_Bar->Color = RGB(164,164,164);
		var_Bar->StartColor = RGB(240,240,240);
		var_Bar->EndColor = var_Bar->StartColor;
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsIncludeCaption | Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStackAutoArrange | Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
		var_Bar->Height = 15;
	var_Chart->MinUnitWidth = var_Chart->UnitWidth;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("no clip, (0-2)"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("no clip, right(<b>2</b>)"));
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(2));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K2"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("no clip, center(<b>1</b>)"));
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(1));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K3"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("no clip, left(<b>0</b>)"));
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(0));
	h = var_Items->AddItem(TVariant("clip, inside (3-5)"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,28).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K1"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("clip, inside, right(<b>5</b>)"));
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(5));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,28).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K2"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("clip, inside, center(<b>4</b>)"));
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(4));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,28).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K3"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("clip, inside, left(<b>3</b>)"));
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(3));
	h = var_Items->AddItem(TVariant("hide on min width, clip if not fit, inside (6-8)"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,26).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K1"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("hide on min width, clip if not fit, inside, right(<b>8</b>)"));
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(8));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,26).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K2"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("hide on min width, clip if not fit, inside, center(<b>7</b>)"));
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(7));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,26).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K3"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("hide on min width, clip if not fit, inside, left(<b>6</b>)"));
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(6));
	h = var_Items->AddItem(TVariant("hide if not fit, no clip, inside (9-11)"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,28).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K1"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("hide if not fit, no clip, inside, right(<b>11</b>)"));
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(11));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,28).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K2"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("hide if not fit, no clip, center(<b>10</b>)"));
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(10));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,28).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K3"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("hide if not fit, no clip, inside, left(<b>9</b>)"));
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(9));
	h = var_Items->AddItem(TVariant("no clip, inside, outside (12-14)"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,28).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K1"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("no clip, inside, outside, right(<b>14</b>)"));
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(14));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,28).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K2"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("no clip, inside, outside, center(<b>13</b>)"));
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(13));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,28).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K3"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("no clip, inside, outside, left(<b>12</b>)"));
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(12));
	h = var_Items->AddItem(TVariant("no clip, outside (16-18)"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,30).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("K1"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("no clip, outside, right(<b>18</b>)"));
	var_Items->set_ItemBar(h,TVariant("K1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(18));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,30).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("K2"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("no clip, outside, center(<b>17</b>)"));
	var_Items->set_ItemBar(h,TVariant("K2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(17));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2000,12,30).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("K3"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaption,TVariant("no clip, outside, left(<b>16</b>)"));
	var_Items->set_ItemBar(h,TVariant("K3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarExtraCaptionHAlign,TVariant(16));
G2antt1->EndUpdate();

2229
The user clicks the drop-down filter, select a value and the control's list filters for the selected item(s). Is there a way for when the user then goes to the next column to add another filter and the drop down arrow is clicked for the list of values they can filter by to be limited to what is being displayed in the list due to the first filter they set

// AddColumn event - Fired after a new column has been added.
void __fastcall TForm1::G2antt1AddColumn(TObject *Sender,Exg2anttlib_tlb::IColumn   *Column)
{
}

// 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->AddBar(Item,TVariant("Task"),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(2))),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(4))),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
G2antt1->ColumnAutoResize = false;
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADOR.Recordset");
	rs->Open(TVariant("Orders"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.accdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->DataSource = (IDispatch*)rs;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(1994,8,4).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,290);
G2antt1->Items->AllowCellValueToItemBar = true;
G2antt1->Columns->get_Item(TVariant(2))->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
G2antt1->Columns->get_Item(TVariant(4))->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(2));
G2antt1->Columns->get_Item(TVariant("ShipVia"))->Position = 2;
G2antt1->EndUpdate();

2228
Does the control display images from database (DAO)

G2antt1->BeginUpdate();
G2antt1->ColumnAutoResize = false;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->DefaultItemHeight = 48;
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft DAO 3.6 Object Library

	TypeLib: dao360.dll

	to define the namespace: Dao_tlb
*/
//#include "DAO_TLB.h"
Dao_tlb::_DBEnginePtr var_PrivDBEngine = Variant::CreateObject(L"DAO.DBEngine.36");
	Dao_tlb::RecordsetPtr rs = var_PrivDBEngine->OpenDatabase(L"C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.mdb",TNoParam(),TNoParam(),TNoParam())->OpenRecordset(L"Employees",TNoParam(),TNoParam(),TNoParam());
G2antt1->DataSource = (IDispatch*)rs;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->get_Item(TVariant("Photo"));
	var_Column->Position = 1;
	var_Column->Width = 128;
G2antt1->EndUpdate();

2227
Does the control display images from database (ADO)

G2antt1->BeginUpdate();
G2antt1->ColumnAutoResize = false;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
G2antt1->GridLineStyle = Exg2anttlib_tlb::GridLinesStyleEnum::exGridLinesGeometric;
G2antt1->DefaultItemHeight = 48;
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADODB.Recordset");
	rs->Open(TVariant("Employees"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.accdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->DataSource = (IDispatch*)rs;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->get_Item(TVariant("Photo"));
	var_Column->Position = 1;
	var_Column->Width = 128;
G2antt1->EndUpdate();

2226
Is it possible to set from code, a column sort without being inserted in the sortbar

G2antt1->BeginUpdate();
G2antt1->ColumnAutoResize = false;
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADOR.Recordset");
	rs->Open(TVariant("Orders"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.accdb"),Adodb_tlb::CursorTypeEnum::adOpenKeyset,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->DataSource = (IDispatch*)rs;
G2antt1->SortBarVisible = true;
G2antt1->Layout = L"singlesort=\"C1:1\"";
G2antt1->EndUpdate();

2225
Is it possible to view all events the control fires
// BeforeExpandItem event - Fired before an item is about to be expanded (collapsed).
void __fastcall TForm1::G2antt1BeforeExpandItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,Variant *   Cancel)
{
	G2antt1->Refresh();
}

// Event event - Notifies the application once the control fires an event.
void __fastcall TForm1::G2antt1Event(TObject *Sender,long   EventID)
{
	OutputDebugString( PChar(G2antt1->EventParam[-2]) );
}

G2antt1->BeginUpdate();
G2antt1->Indent = 16;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
G2antt1->HasLines = Exg2anttlib_tlb::HierarchyLineEnum::exSolidLine;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,20).operator double()));
	var_Chart->ShowCollapsedBars = true;
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
		var_Bar->Color = RGB(0,0,0);
		var_Bar->StartColor = RGB(196,196,196);
		var_Bar->EndColor = RGB(196,196,196);
		var_Bar->Pattern = Exg2anttlib_tlb::PatternEnum::exPatternBox;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Project 1"));
	long h1 = var_Items->InsertItem(h,TNoParam(),TVariant("Resources"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TVariant("A"),TNoParam());
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,24).operator double()),TVariant(TDateTime(2006,9,28).operator double()),TVariant("B"),TNoParam());
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,27).operator double()),TVariant(TDateTime(2006,9,29).operator double()),TVariant("C"),TNoParam());
	h = var_Items->AddItem(TVariant("Project 2"));
	h1 = var_Items->InsertItem(h,TNoParam(),TVariant("Resources"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TVariant("A"),TNoParam());
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,24).operator double()),TVariant(TDateTime(2006,9,28).operator double()),TVariant("B"),TNoParam());
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,27).operator double()),TVariant(TDateTime(2006,9,29).operator double()),TVariant("C"),TNoParam());
	var_Items->set_ExpandItem(h,true);
G2antt1->EndUpdate();

2224
How can I find all occurences of the giving value, within a column
G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Default");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Pos");
	var_Column->FormatColumn = L"1 pos 'A-Z'";
	var_Column->Position = 0;
	var_Column->AllowSizing = false;
	var_Column->Width = 32;
	var_Column->Enabled = false;
Exg2anttlib_tlb::IColumnPtr var_Column1 = G2antt1->Columns->Add(L"Index");
	var_Column1->FormatColumn = L"0 index ''";
	var_Column1->AllowSizing = false;
	var_Column1->Width = 32;
	var_Column1->Enabled = false;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("A"));
	var_Items->AddItem(TVariant("A"));
	var_Items->AddItem(TVariant("A"));
	OutputDebugString( var_Items->get_CellCaption(TVariant(var_Items->get_FindItem(TVariant("A"),TVariant(0),TVariant(0))),TVariant(1)) );
	OutputDebugString( var_Items->get_CellCaption(TVariant(var_Items->get_FindItem(TVariant("A"),TVariant(0),TVariant(1))),TVariant(1)) );
	OutputDebugString( var_Items->get_CellCaption(TVariant(var_Items->get_FindItem(TVariant("A"),TVariant(0),TVariant(2))),TVariant(1)) );
G2antt1->EndUpdate();

2223
How can I specify the bar's legend within the control's histogram (sample 2, expression)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Machines");
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->Pattern = Exg2anttlib_tlb::PatternEnum::exPatternSolid;
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsCascade;
		var_Bar->HistogramPattern = var_Bar->Pattern;
		var_Bar->HistogramType = Exg2anttlib_tlb::HistogramTypeEnum::exHistCumulative;
		var_Bar->HistogramCumulativeOriginalColorBars = Exg2anttlib_tlb::HistogramCumulativeOriginalColorBarsEnum::exKeepOriginalColor;
		var_Bar->HistogramItems = -4;
		var_Bar->HistogramRulerLinesColor = RGB(102,102,102);
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarToolTip,TVariant("<%=%3%> <fgcolor 666666><font ;6><off 4><%=%C0%>"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHistLegend,TVariant("<fgcolor=666666><%=lower(%3)%>"));
	var_Chart->HistogramHeight = 64;
	var_Chart->HistogramVisible = true;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Machine 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,9).operator double()),TVariant(1),TVariant("Bill"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant(2),TVariant("Laura"));
	var_Items->set_ItemBar(h,TVariant(2),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(16776960));
	h = var_Items->AddItem(TVariant("Machine 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,12).operator double()),TVariant(TDateTime(2001,1,19).operator double()),TVariant(3),TVariant("Bill"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,10).operator double()),TVariant(TDateTime(2001,1,13).operator double()),TVariant(4),TVariant("Laura"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,10).operator double()),TVariant(TDateTime(2001,1,14).operator double()),TVariant(5),TVariant("Bill"));
	var_Items->set_ItemBar(h,TVariant(4),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(16776960));
	var_Items->AddBar(var_Items->AddItem(TVariant("Machine 3")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,9).operator double()),TVariant(6),TVariant("Bill"));
G2antt1->EndUpdate();

2222
How can I specify the bar's legend within the control's histogram (sample 1)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Machines");
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderVisible = Exg2anttlib_tlb::HeaderVisibleEnum::exHeaderVisibleExtendLevels;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->Pattern = Exg2anttlib_tlb::PatternEnum::exPatternSolid;
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsCascade;
		var_Bar->HistogramPattern = var_Bar->Pattern;
		var_Bar->HistogramType = Exg2anttlib_tlb::HistogramTypeEnum::exHistCumulative;
		var_Bar->HistogramCumulativeOriginalColorBars = Exg2anttlib_tlb::HistogramCumulativeOriginalColorBarsEnum::exKeepOriginalColor;
		var_Bar->HistogramItems = -4;
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("Bill"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHistLegend,TVariant("B(ill)"));
	var_Chart->HistogramHeight = 64;
	var_Chart->HistogramVisible = true;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Machine 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,9).operator double()),TVariant(1),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant(2),TVariant("Laura"));
	var_Items->set_ItemBar(h,TVariant(2),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(16776960));
	var_Items->set_ItemBar(h,TVariant(2),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHistLegend,TVariant("L(aura)"));
	h = var_Items->AddItem(TVariant("Machine 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,12).operator double()),TVariant(TDateTime(2001,1,19).operator double()),TVariant(3),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,10).operator double()),TVariant(TDateTime(2001,1,13).operator double()),TVariant(4),TVariant("Laura"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,10).operator double()),TVariant(TDateTime(2001,1,14).operator double()),TVariant(5),TNoParam());
	var_Items->set_ItemBar(h,TVariant(4),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(16776960));
	var_Items->set_ItemBar(h,TVariant(4),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHistLegend,TVariant("L(aura)"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Machine 3")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,9).operator double()),TVariant(6),TNoParam());
G2antt1->EndUpdate();

2221
When I drag a bar and I drag it over other items, but just release it on one of the items (last item), the BarParentChange event is triggered for every item. I need it just when I drop it (release left mouse). How can I do this
// BarParentChange event - Occurs just before moving a bar from current item to another item.
void __fastcall TForm1::G2antt1BarParentChange(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,Variant   Key,Exg2anttlib_tlb::HITEM   NewItem,VARIANT_BOOL *   Cancel)
{
	OutputDebugString( L"Hover Over Item: " );
	OutputDebugString( G2antt1->Items->get_CellCaption(TVariant(NewItem),TVariant(0)) );
	Cancel = TVariant(G2antt1->Items->get_ItemData(NewItem));
}

// ChartEndChanging event - Occurs after the chart has been changed.
void __fastcall TForm1::G2antt1ChartEndChanging(TObject *Sender,Exg2anttlib_tlb::BarOperationEnum   Operation)
{
	OutputDebugString( L"ChartEndChanging " );
	OutputDebugString( L"Operation" );
}

// ChartStartChanging event - Occurs when the chart is about to be changed.
void __fastcall TForm1::G2antt1ChartStartChanging(TObject *Sender,Exg2anttlib_tlb::BarOperationEnum   Operation)
{
	OutputDebugString( L"ChartStartChanging " );
	OutputDebugString( L"Operation" );
}

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->set_PaneWidth(false,48);
	var_Chart->AllowLinkBars = false;
	var_Chart->Bars->get_Item(TVariant("Task"))->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsTransparent | Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsOffset;
G2antt1->Columns->Add(L"Column");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Item 1"));
	var_Items->set_EnableItem(h,false);
	var_Items->set_ItemData(h,TVariant(-1));
	h = var_Items->AddItem(TVariant("Item 2"));
	var_Items->set_ItemData(h,TVariant(0));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("B"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("B"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCanMoveToAnother,TVariant(true));
	var_Items->set_ItemData(var_Items->AddItem(TVariant("Item 3")),TVariant(0));
	var_Items->set_ItemData(var_Items->AddItem(TVariant("Item 4")),TVariant(0));
G2antt1->EndUpdate();

2220
Hide non-working days, Hide non-working hours

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2022,7,29).operator double()));
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exHour,TVariant(String("<font ;6><%h%><|><font ;6><%hh%><|><%h%> <%AM/PM%><|><%d3%>, <%m3%> <%d%>, '<%yy%> <%h%> <%AM/PM%><|><%dddd%>, <%mmmm%> <%d%>, ") +
"<%yyyy%> <%h%> <%AM/PM%><||><||>65536"));
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->UnitWidth = 12;
	var_Chart->NonworkingDaysColor = RGB(51,51,51);
	var_Chart->NonworkingDaysPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->NonworkingHoursColor = RGB(187,187,187);
	var_Chart->NonworkingHoursPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum::exAllowChangeUnitScale | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(0);
		var_Level->set_Label(TVariant("<%dddd%>"));
		var_Level->Alignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Chart->get_Level(1)->set_Label(TVariant(65536));
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->NonworkingHours = 16773375;
	var_Chart->ShowNonworkingUnits = false;
	var_Chart->ShowNonworkingDates = false;
	var_Chart->ShowNonworkingHours = false;
G2antt1->EndUpdate();

2219
Show non-working days pattern, Hide non-working hours

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2022,7,29).operator double()));
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exHour,TVariant(String("<font ;6><%h%><|><font ;6><%hh%><|><%h%> <%AM/PM%><|><%d3%>, <%m3%> <%d%>, '<%yy%> <%h%> <%AM/PM%><|><%dddd%>, <%mmmm%> <%d%>, ") +
"<%yyyy%> <%h%> <%AM/PM%><||><||>65536"));
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->UnitWidth = 12;
	var_Chart->NonworkingDaysColor = RGB(51,51,51);
	var_Chart->NonworkingDaysPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->NonworkingHoursColor = RGB(187,187,187);
	var_Chart->NonworkingHoursPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum::exAllowChangeUnitScale | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(0);
		var_Level->set_Label(TVariant("<%dddd%>"));
		var_Level->Alignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Chart->get_Level(1)->set_Label(TVariant(65536));
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->NonworkingHours = 16773375;
	var_Chart->ShowNonworkingUnits = false;
	var_Chart->ShowNonworkingDates = true;
	var_Chart->ShowNonworkingHours = false;
G2antt1->EndUpdate();

2218
Hide non-working days, Show non-working hours pattern

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2022,7,29).operator double()));
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exHour,TVariant(String("<font ;6><%h%><|><font ;6><%hh%><|><%h%> <%AM/PM%><|><%d3%>, <%m3%> <%d%>, '<%yy%> <%h%> <%AM/PM%><|><%dddd%>, <%mmmm%> <%d%>, ") +
"<%yyyy%> <%h%> <%AM/PM%><||><||>65536"));
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->UnitWidth = 12;
	var_Chart->NonworkingDaysColor = RGB(51,51,51);
	var_Chart->NonworkingDaysPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->NonworkingHoursColor = RGB(187,187,187);
	var_Chart->NonworkingHoursPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum::exAllowChangeUnitScale | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(0);
		var_Level->set_Label(TVariant("<%dddd%>"));
		var_Level->Alignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Chart->get_Level(1)->set_Label(TVariant(65536));
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->NonworkingHours = 16773375;
	var_Chart->ShowNonworkingUnits = false;
	var_Chart->ShowNonworkingDates = false;
	var_Chart->ShowNonworkingHours = true;
G2antt1->EndUpdate();

2217
Hide non-working days pattern, Show non-working hours pattern

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2022,7,29).operator double()));
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exHour,TVariant(String("<font ;6><%h%><|><font ;6><%hh%><|><%h%> <%AM/PM%><|><%d3%>, <%m3%> <%d%>, '<%yy%> <%h%> <%AM/PM%><|><%dddd%>, <%mmmm%> <%d%>, ") +
"<%yyyy%> <%h%> <%AM/PM%><||><||>65536"));
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->UnitWidth = 12;
	var_Chart->NonworkingDaysColor = RGB(51,51,51);
	var_Chart->NonworkingDaysPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->NonworkingHoursColor = RGB(187,187,187);
	var_Chart->NonworkingHoursPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum::exAllowChangeUnitScale | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(0);
		var_Level->set_Label(TVariant("<%dddd%>"));
		var_Level->Alignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Chart->get_Level(1)->set_Label(TVariant(65536));
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->NonworkingHours = 16773375;
	var_Chart->ShowNonworkingUnits = true;
	var_Chart->ShowNonworkingDates = false;
	var_Chart->ShowNonworkingHours = true;
G2antt1->EndUpdate();

2216
Hide non-working days pattern, Hide non-working hours pattern

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2022,7,29).operator double()));
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exHour,TVariant(String("<font ;6><%h%><|><font ;6><%hh%><|><%h%> <%AM/PM%><|><%d3%>, <%m3%> <%d%>, '<%yy%> <%h%> <%AM/PM%><|><%dddd%>, <%mmmm%> <%d%>, ") +
"<%yyyy%> <%h%> <%AM/PM%><||><||>65536"));
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->UnitWidth = 12;
	var_Chart->NonworkingDaysColor = RGB(51,51,51);
	var_Chart->NonworkingDaysPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->NonworkingHoursColor = RGB(187,187,187);
	var_Chart->NonworkingHoursPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum::exAllowChangeUnitScale | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(0);
		var_Level->set_Label(TVariant("<%dddd%>"));
		var_Level->Alignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Chart->get_Level(1)->set_Label(TVariant(65536));
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->NonworkingHours = 16773375;
	var_Chart->ShowNonworkingUnits = true;
	var_Chart->ShowNonworkingDates = false;
	var_Chart->ShowNonworkingHours = false;
G2antt1->EndUpdate();

2215
Show non-working days pattern, Hide non-working hours pattern

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2022,7,29).operator double()));
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exHour,TVariant(String("<font ;6><%h%><|><font ;6><%hh%><|><%h%> <%AM/PM%><|><%d3%>, <%m3%> <%d%>, '<%yy%> <%h%> <%AM/PM%><|><%dddd%>, <%mmmm%> <%d%>, ") +
"<%yyyy%> <%h%> <%AM/PM%><||><||>65536"));
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->UnitWidth = 12;
	var_Chart->NonworkingDaysColor = RGB(51,51,51);
	var_Chart->NonworkingDaysPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->NonworkingHoursColor = RGB(187,187,187);
	var_Chart->NonworkingHoursPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum::exAllowChangeUnitScale | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(0);
		var_Level->set_Label(TVariant("<%dddd%>"));
		var_Level->Alignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Chart->get_Level(1)->set_Label(TVariant(65536));
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->NonworkingHours = 16773375;
	var_Chart->ShowNonworkingUnits = true;
	var_Chart->ShowNonworkingDates = true;
	var_Chart->ShowNonworkingHours = false;
G2antt1->EndUpdate();

2214
Show non-working days pattern, Show non-working hours pattern

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2022,7,29).operator double()));
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exHour,TVariant(String("<font ;6><%h%><|><font ;6><%hh%><|><%h%> <%AM/PM%><|><%d3%>, <%m3%> <%d%>, '<%yy%> <%h%> <%AM/PM%><|><%dddd%>, <%mmmm%> <%d%>, ") +
"<%yyyy%> <%h%> <%AM/PM%><||><||>65536"));
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->UnitWidth = 12;
	var_Chart->NonworkingDaysColor = RGB(51,51,51);
	var_Chart->NonworkingDaysPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->NonworkingHoursColor = RGB(187,187,187);
	var_Chart->NonworkingHoursPattern = Exg2anttlib_tlb::PatternEnum::exPatternBDiagonal;
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum::exAllowChangeUnitScale | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(0);
		var_Level->set_Label(TVariant("<%dddd%>"));
		var_Level->Alignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Chart->get_Level(1)->set_Label(TVariant(65536));
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->NonworkingHours = 16773375;
	var_Chart->ShowNonworkingUnits = true;
	var_Chart->ShowNonworkingDates = true;
	var_Chart->ShowNonworkingHours = true;
G2antt1->EndUpdate();

2213
The chart display no labels (empty header) when the unit's width is too small. What can I do to change this behavior

Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exDay,TVariant(String("<font ;6><%d1%><|><%d1%><|><%d2%><|><%d3%><|><%dddd%><|><%d3%>, <%m3%> <%d%>, '<%yy%><|><%dddd%>, <%mmmm%> <%d%>, <%yyyy%><||><") +
"||>4096"));
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum::exAllowChangeUnitScale | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader;
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->MarkTodayColor = var_Chart->BackColor;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exDay;
	var_Chart->UnitWidth = 12;

2212
How do I get the height of the bar from the cursor

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	TVariant b = TVariant(G2antt1->Chart->get_BarFromPoint(-1,-1));
	long i = G2antt1->ItemFromPoint[-1,-1,c,hit];
	TVariant n = TVariant(G2antt1->Items->get_ItemBar(i,TVariant(b),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarName));
	OutputDebugString( L"Height" );
	OutputDebugString( PChar(G2antt1->Chart->Bars->get_Item(TVariant(n))->Height) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
G2antt1->DefaultItemHeight = 52;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,10,10).operator double()));
	var_Chart->set_PaneWidth(false,0);
	var_Chart->NonworkingDays = 0;
	var_Chart->MarkTodayColor = var_Chart->BackColor;
	var_Chart->Bars->get_Item(TVariant("Task"))->Pattern = Exg2anttlib_tlb::PatternEnum::exPatternSolid;
	var_Chart->Bars->Copy(L"Task",L"T1")->Color = RGB(255,0,0);
	var_Chart->Bars->Copy(L"Task",L"T2")->Height = 25;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h1,TVariant("T1"),TVariant(TDateTime(2017,10,15).operator double()),TVariant(TDateTime(2017,10,25).operator double()),TVariant("2"),TNoParam());
	var_Items->AddBar(h1,TVariant("T2"),TVariant(TDateTime(2017,10,18).operator double()),TVariant(TDateTime(2017,10,22).operator double()),TVariant("1"),TNoParam());
	h1 = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h1,TVariant("T1"),TVariant(TDateTime(2017,10,15).operator double()),TVariant(TDateTime(2017,10,25).operator double()),TVariant("1"),TNoParam());
	var_Items->AddBar(h1,TVariant("T2"),TVariant(TDateTime(2017,10,18).operator double()),TVariant(TDateTime(2017,10,22).operator double()),TVariant("2"),TNoParam());
G2antt1->EndUpdate();

2211
The zone shows truncated if I use BackColorAlternate. Is there anything I can do so it shows as solid instead

G2antt1->BeginUpdate();
G2antt1->BackColorAlternate = RGB(240,240,240);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,1,1).operator double()));
	var_Chart->MarkTimeZone(TVariant("Z1"),TVariant(TDateTime(2010,1,4).operator double()),TVariant(TDateTime(2010,1,4).operator double()),TVariant(16744544),TVariant("1:3;;solid-zone"));
	var_Chart->MarkTimeZone(TVariant("Z2"),TVariant(TDateTime(2010,1,8).operator double()),TVariant(TDateTime(2010,1,8).operator double()),TVariant(16744544),TVariant("0:3;;truncated-zone"));
G2antt1->EndUpdate();

2210
How can I prevent expanding/collapsing the child items

// BeforeExpandItem event - Fired before an item is about to be expanded (collapsed).
void __fastcall TForm1::G2antt1BeforeExpandItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,Variant *   Cancel)
{
	Cancel = G2antt1->Items->get_ItemParent(Item);
}

G2antt1->BeginUpdate();
G2antt1->SingleSel = false;
G2antt1->Columns->Add(L"Default");
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Root 1"));
	var_Items->InsertItem(var_Items->InsertItem(h,TNoParam(),TVariant("Child 1.1")),TNoParam(),TVariant("Child"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 1.2"));
	var_Items->set_ExpandItem(h,true);
	h = var_Items->AddItem(TVariant("Root 2"));
	var_Items->InsertItem(var_Items->InsertItem(h,TNoParam(),TVariant("Child 2.1")),TNoParam(),TVariant("Child"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 2.2"));
	var_Items->set_ExpandItem(h,true);
G2antt1->EndUpdate();

2209
How can I display the EBN bigger or smaller (thumb)

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(1,TVariant("c:\\exontrol\\images\\normal.ebn"));
	var_Appearance->Add(10,TVariant("CP:1 0 3 0 -3"));
	var_Appearance->Add(17,TVariant("CP:1 3 0 -3 0"));
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exHSThumb] = 0xa000000;
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exVSThumb] = 0x11000000;
G2antt1->ScrollBars = Exg2anttlib_tlb::ScrollBarsEnum::exVScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exHScrollEmptySpace | Exg2anttlib_tlb::ScrollBarsEnum::exVScrollOnThumbRelease | Exg2anttlib_tlb::ScrollBarsEnum::exHScrollOnThumbRelease | Exg2anttlib_tlb::ScrollBarsEnum::exDisableBoth;
G2antt1->ScrollBySingleLine = true;
G2antt1->Columns->Add(L"Def");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant(1));
	var_Items->AddItem(TVariant(2));
	var_Items->AddItem(TVariant(3));
G2antt1->EndUpdate();

2208
I am using GroupBy feature to create a tree, but the top rows are aligned with the children, not indented. What could be wrong

// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
void __fastcall TForm1::G2antt1AddGroupItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item)
{
	String color = 14474460;
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->set_ItemDivider(Item,-1);
		var_Items->set_CellValue(TVariant(Item),TVariant(1),TVariant(var_Items->get_CellCaption(TVariant(Item),TVariant(var_Items->get_GroupItem(Item)))));
		var_Items->AddBar(Item,TVariant("Progress"),TVariant(TDateTime(2017,12,2).operator double()),TVariant(TDateTime(2017,12,2).operator double()),TNoParam(),TNoParam());
		var_Items->DefineSummaryBars(Item,TVariant(""),-3,TVariant(""));
		var_Items->set_ItemBold(Item,true);
		var_Items->set_ItemBackColor(Item,color);
	G2antt1->Chart->set_ItemBackColor(Item,color);
}

// 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->AddBar(Item,TVariant("Task"),TVariant(TDateTime(2017,12,4).operator double()),TVariant(TDateTime(2017,12,10).operator double()),TNoParam(),TNoParam());
		var_Items->set_ItemBar(Item,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarMove,TVariant(var_Items->get_ItemToIndex(Item)));
}

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,12,2).operator double()));
	var_Chart->set_PaneWidth(false,128);
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"C1");
	var_Columns->Add(L"C2");
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
G2antt1->SortBarVisible = true;
G2antt1->SortBarCaption = L"Drag a <b>column</b> header here to group by that column.";
G2antt1->AllowGroupBy = true;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Item A"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem A.1"));
	h = var_Items->AddItem(TVariant("Item A"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem A.1"));
	h = var_Items->AddItem(TVariant("Item A"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem A.1"));
	h = var_Items->AddItem(TVariant("Item A"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem A.1"));
	h = var_Items->AddItem(TVariant("Item B"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem B.1"));
	h = var_Items->AddItem(TVariant("Item B"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem B.1"));
G2antt1->Columns->get_Item(TVariant(0))->SortOrder = Exg2anttlib_tlb::SortOrderEnum::SortAscending;
G2antt1->EndUpdate();

2207
How can I change the names from English to my locale (localization)
G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowResizeChart = Exg2anttlib_tlb::ResizeChartEnum::exAllowChangeUnitScale | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartMiddle | Exg2anttlib_tlb::ResizeChartEnum::exAllowResizeChartHeader;
	var_Chart->MonthNames = var_Chart->LocMonthNames;
	var_Chart->WeekDays = var_Chart->LocWeekDays;
	var_Chart->AMPM = var_Chart->LocAMPM;
	var_Chart->FirstWeekDay = var_Chart->LocFirstWeekDay;
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exMonth,L"<|><%loc_m1%><|><%loc_m2%><|><%loc_m3%><|><%loc_mmmm%><|><%loc_m3%> '<%yy%><|><%loc_mmmm%> <%yyyy%>");
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exWeek,L"<|>KW<%ww%><|><%d%>. <%loc_m3%>, '<%yy%><r>KW<%ww%><|><%d%>. <%loc_mmmm%>, <%yyyy%><r>KW<%ww%><||><||>256");
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exDay,TVariant(String("<|><%loc_d1%><|><%loc_d2%><|><%loc_d3%><|><%loc_dddd%><|><%loc_d3%>, <%d%>. <%loc_m3%>, '<%yy%><|><%loc_dddd%>, <%d%>. <%loc_mm") +
"mm%>, <%yyyy%><||><||>4096"));
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exHour,TVariant(String("<|><%hh%><|><%hh%><|><%loc_d3%>, <%d%>. <%loc_m3%>, '<%yy%> <%hh%><|><%loc_dddd%>, <%d%>. <%loc_mmmm%>, <%yyyy%> <%hh%><||><||>") +
"65536"));
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exMinute,TVariant(String("<|><%nn%><|><%hh%>:<%nn%><|><%loc_d3%>, <%d%>. <%loc_m3%>, '<%yy%> <%hh%>:<%nn%><|><%loc_dddd%>, <%d%>. <%loc_mmmm%>, <%yyyy%> ") +
"<%hh%>:<%nn%>"));
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exSecond,TVariant(String("<|><%ss%><|><%nn%>:<%ss%><|><%hh%>:<%nn%>:<%ss%><|><%loc_d3%>, <%d%>. <%loc_m3%>, '<%yy%> <%hh%>:<%nn%>:<%ss%><|><%loc_dddd%>, ") +
"<%d%>. <%loc_mmmm%>, <%yyyy%> <%hh%>:<%nn%>:<%ss%>"));
	var_Chart->set_LabelToolTip(Exg2anttlib_tlb::UnitEnum::exMonth,L"<%loc_mmmm%>/<%yyyy%>");
	var_Chart->set_LabelToolTip(Exg2anttlib_tlb::UnitEnum::exWeek,L"<%d%>. <%loc_mmmm%>, <%yyyy%> KW<%ww%>");
	var_Chart->set_LabelToolTip(Exg2anttlib_tlb::UnitEnum::exDay,L"<%loc_dddd%>, <%d%>. <%loc_mmmm%> , <%yyyy%>");
	var_Chart->set_LabelToolTip(Exg2anttlib_tlb::UnitEnum::exHour,L"<%loc_dddd%>, <%d%>. <%loc_mmmm%>, <%yyyy%> <%hh%>");
	var_Chart->set_LabelToolTip(Exg2anttlib_tlb::UnitEnum::exMinute,L"<%loc_dddd%>, <%d%>. <%loc_mmmm%>, <%yyyy%> <%hh%>:<%nn%>");
	var_Chart->set_LabelToolTip(Exg2anttlib_tlb::UnitEnum::exSecond,L"<%loc_dddd%>, <%d%>. <%loc_mmmm%>  <%yyyy%> <%hh%>:<%nn%>:<%ss%>");
	var_Chart->ToolTip = L"<%ddd%> <%d%>. <%loc_mmmm%> <%yyyy%>";
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exDay;
	var_Chart->UnitWidth = 24;
G2antt1->EndUpdate();

2206
Is it possible to change the pattern for selection within the control's overview part (I would prefer a semi-transparent or solid color instead)

G2antt1->BeginUpdate();
G2antt1->VisualAppearance->Add(2,TVariant(String("gBFLBCJwBAEHhEJAAEhABMsGACAADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYJAKCQ5DBJUBjTBcEwKGCQBwASQpUhqHYDTbIMByB") +
"IUIxUACUJAgeCRYiAMo8RrSEZARBNGR3GqaJ7oGTpRoaP4iSBTUThBRsPyhHqOBpEWIRSqKEQ1DBYcI2RZUaxBJQAAbrWr5VpKKYnSzBA4TBQkSTpGicZxteoJeiefIE" +
"VTHFwRNaFNS1Linb7ia5qCwmOJXUjcYAYfBOIR1SSBbIsawbNACbJnWjENYVdAdNTlAbPNAyPBqSDaMYRDCOND1BhuNATWSNLq2XZ5OzrGIaVjmWbbfwELZFUqydJ0ex" +
"eiYNw/kGZBuDCHR/DeEYaCgGhMGcQ4pkiSxDgGXhIESW5MFgbQJBQZx+DScJEGsVZdnufggG+f5fnPFB/ooBZ/EaIAoBYBoBmASAeAqApfjgJgMgOYAoDoEIEl+WBKBS" +
"BQhGgXgQgYYYoDIHIHGCKB+CCAYiCiDgREWYhoG4KIKGGaIuCyCBfhiRQJDqXxgAEASAg"));
G2antt1->SelBackMode = Exg2anttlib_tlb::BackModeEnum::exTransparent;
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->OverviewVisible = Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowAll;
	var_Chart->OverviewHeight = 64;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2018,7,30).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,128);
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelBarColor = RGB(128,128,128);
	var_Chart->OverviewSelBackColor = 0x200ff00;
	var_Chart->set_OverviewSelTransparent(true,50);
G2antt1->SelBackColor = G2antt1->BackColor;
G2antt1->SelForeColor = G2antt1->ForeColor;
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,8).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2018,8,3).operator double()),TVariant(TDateTime(2018,8,10).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2019,8,4).operator double()),TVariant(TDateTime(2019,8,12).operator double()),TNoParam(),TNoParam());
	var_Items->set_SelectItem(var_Items->get_ItemByIndex(1),true);
G2antt1->EndUpdate();

2205
How can I display an item of picture type

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
G2antt1->ScrollBySingleLine = false;
G2antt1->HeaderAppearance = Exg2anttlib_tlb::AppearanceEnum::Etched;
G2antt1->HeaderHeight = 24;
G2antt1->Columns->Add(L"Artikel")->HTMLCaption = L"<u>Artikel";
G2antt1->Columns->Add(L"Waarde")->HTMLCaption = L"<u>Waarde";
G2antt1->HTMLPicture[L"T22128"] = TVariant("c:\\exontrol\\images\\zipdisk.gif");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("T22128-28)2D"));
	long h1 = var_Items->InsertItem(h,TNoParam(),TVariant("<img>T22128:128</img>"));
	var_Items->set_CellValueFormat(TVariant(h1),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_ItemHeight(h1,128);
	h1 = var_Items->InsertItem(h,TNoParam(),TVariant("werkvoorbereiding"));
	var_Items->set_CellValue(TVariant(h1),TVariant(1),TVariant("5.80"));
	var_Items->set_CellBold(TVariant(h1),TVariant(1),true);
	var_Items->set_CellValue(TVariant(var_Items->InsertItem(h1,TNoParam(),TVariant("Type"))),TVariant(1),TVariant("Eenvoudig"));
	var_Items->set_CellValue(TVariant(var_Items->InsertItem(h1,TNoParam(),TVariant("Prijs p/uur"))),TVariant(1),TVariant("60,00"));
	var_Items->set_CellValue(TVariant(var_Items->InsertItem(h1,TNoParam(),TVariant("Marhe"))),TVariant(1),TVariant("15,00%"));
	var_Items->set_CellValue(TVariant(var_Items->InsertItem(h1,TNoParam(),TVariant("Insteltijd min."))),TVariant(1),TVariant("5,00"));
	var_Items->set_CellValue(TVariant(var_Items->InsertItem(h1,TNoParam(),TVariant("Aantal"))),TVariant(1),TVariant(1));
	var_Items->set_CellValue(TVariant(var_Items->InsertItem(h1,TNoParam(),TVariant("Kostprije"))),TVariant(1),TVariant("5,00"));
	var_Items->set_ExpandItem(h1,true);
	h1 = var_Items->InsertItem(h,TNoParam(),TVariant("materiall"));
	var_Items->set_CellValue(TVariant(h1),TVariant(1),TVariant("14.82"));
	var_Items->set_CellBold(TVariant(h1),TVariant(1),true);
	var_Items->set_ItemHasChildren(h1,true);
	h1 = var_Items->InsertItem(h,TNoParam(),TVariant("snijden"));
	var_Items->set_CellValue(TVariant(h1),TVariant(1),TVariant("3.13"));
	var_Items->set_CellBold(TVariant(h1),TVariant(1),true);
	var_Items->set_ItemHasChildren(h1,true);
	var_Items->set_ExpandItem(h,true);
G2antt1->EndUpdate();

2204
How can I bold the root group-items

// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
void __fastcall TForm1::G2antt1AddGroupItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->AddBar(Item,TVariant("Progress"),TVariant(TDateTime(2017,12,2).operator double()),TVariant(TDateTime(2017,12,2).operator double()),TNoParam(),TNoParam());
		var_Items->DefineSummaryBars(Item,TVariant(""),-3,TVariant(""));
		var_Items->set_ItemBold(Item,true);
}

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void __fastcall TForm1::G2antt1AddItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item)
{
	G2antt1->Items->AddBar(Item,TVariant("Task"),TVariant(TDateTime(2017,12,4).operator double()),TVariant(TDateTime(2017,12,10).operator double()),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2017,12,2).operator double()));
	var_Chart->set_PaneWidth(false,342);
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"C1");
		var_Column->GroupByFormatCell = L"'<caption> (' + value + ')'";
	var_Columns->Add(L"C2");
	var_Columns->Add(L"C3");
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"Pos");
		var_Column1->FormatColumn = L"1 pos ``";
		var_Column1->AllowGroupBy = false;
		var_Column1->Position = 0;
		var_Column1->Width = 48;
		var_Column1->AllowSizing = false;
G2antt1->SortBarVisible = true;
G2antt1->SortBarCaption = L"Drag a <b>column</b> header here to group by that column.";
G2antt1->AllowGroupBy = true;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Item A"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem A.1"));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant("SubItem A.2"));
	h = var_Items->AddItem(TVariant("Item A"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem A.1"));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant("SubItem A.2"));
	h = var_Items->AddItem(TVariant("Item A"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem A.1"));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant("SubItem A.2"));
	h = var_Items->AddItem(TVariant("Item A"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem A.1"));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant("SubItem A.2"));
	h = var_Items->AddItem(TVariant("Item B"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem B.1"));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant("SubItem B.2"));
	h = var_Items->AddItem(TVariant("Item B"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem B.1"));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant("SubItem B.2"));
G2antt1->Columns->get_Item(TVariant(0))->SortOrder = Exg2anttlib_tlb::SortOrderEnum::SortAscending;
G2antt1->EndUpdate();

2203
The exBarTransparent does not work for overlaid-bars

G2antt1->BeginUpdate();
G2antt1->BackColorAlternate = RGB(240,240,240);
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->AllowLinkBars = false;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStackAutoArrange | Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
		var_Bar->Pattern = Exg2anttlib_tlb::PatternEnum::exPatternSolid;
		var_Bar->set_Overlaid(Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsTransparent,TVariant(0));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%9%>"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
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("A1"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("A2"),TNoParam());
	h = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,7).operator double()),TVariant(TDateTime(2001,1,11).operator double()),TVariant("B1"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("B2"),TNoParam());
	var_Items->set_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarTransparent,TVariant(75));
G2antt1->EndUpdate();

2202
We’re adding tasks on the chart which have a caption that is not clipped (and left aligned). When we add another task right after the first one, then the caption from that first bar is “stuck” behind the second bar. The bar's z-order is determined by the bar's key.

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
G2antt1->DefaultItemHeight = 24;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->NonworkingDays = 0;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,17).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->Add(L"Green");
		var_Bar->Color = RGB(0,255,0);
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOffset,TVariant(-2));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%9%>"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
	Exg2anttlib_tlb::IBarPtr var_Bar1 = var_Chart->Bars->Add(L"Red");
		var_Bar1->Color = RGB(255,0,0);
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOffset,TVariant(2));
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%9%>"));
		var_Bar1->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(18));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Red / Green"));
	var_Items->AddBar(h1,TVariant("Green"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,27).operator double()),TVariant("K1"),TNoParam());
	var_Items->AddBar(h1,TVariant("Red"),TVariant(TDateTime(2006,9,23).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TVariant("K2"),TNoParam());
	h1 = var_Items->AddItem(TVariant("Green / Red"));
	var_Items->AddBar(h1,TVariant("Green"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,27).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddBar(h1,TVariant("Red"),TVariant(TDateTime(2006,9,23).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TVariant("K1"),TNoParam());
G2antt1->EndUpdate();

2201
The caption/text of the link is overwritten by its line. What can be done

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2005,6,21).operator double()));
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->UnitWidth = 48;
	var_Chart->get_Level(0)->set_Label(TVariant("<b><%mmm%></b> <%dd%>"));
	var_Chart->LinksWidth = 3;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Root"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2005,6,22).operator double()),TVariant(TDateTime(2005,6,23).operator double()),TNoParam(),TNoParam());
	long h1 = var_Items->InsertItem(h,TNoParam(),TVariant("Child"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2005,6,24,8,00,00,0).operator double()),TVariant(TDateTime(2005,6,24,16,00,00,0).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("Link1"),h,TVariant(""),h1,TVariant(""));
	var_Items->set_Link(TVariant("Link1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("<bgcolor=FFFFFF> link </bgcolor>"));
	var_Items->set_ExpandItem(h,true);
G2antt1->EndUpdate();