562
ADOR, MDB (JET)

with List1 do
begin
	BeginUpdate();
	ColumnAutoResize := False;
	rs := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('ADOR.Recordset'))) as ADODB_TLB.Recordset);
	with rs do
	begin
		Open('Orders','Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExList\Sample\Access\sample.mdb',3,3,Null);
	end;
	DataSource := (IUnknown(rs) as ADODB_TLB.Recordset);
	EndUpdate();
end
561
Highlight the match once the filter is applied
// FilterChange event - Occurs when filter was changed.
procedure TForm1.List1FilterChange(ASender: TObject; );
begin
	with List1 do
	begin
		format := FormatABC('`lower(value) replace lower(''` + value + `'') with ''<bgcolor 000000><fgcolor FFFFFF>` + value  + `</fgcolor></bgcolor>''`',OleVariant(FilterBarPromptPattern),Null,Null);
		Columns.Item[OleVariant(0)].FormatColumn := format;
		Columns.Item[OleVariant(1)].FormatColumn := format;
		Columns.Item[OleVariant(2)].FormatColumn := format;
	end
end;

with List1 do
begin
	BeginUpdate();
	SelBackColor := BackColor;
	SelForeColor := ForeColor;
	ColumnAutoResize := True;
	ContinueColumnScroll := False;
	MarkSearchColumn := False;
	SearchColumnIndex := 1;
	HeaderAppearance := EXLISTLib_TLB.Etched;
	HeaderHeight := 23;
	BackColorLevelHeader := BackColor;
	FilterBarCaption := '`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? abs(matchitemcount + 1) + ` result(s)` : ``)';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCompact) Or Integer(EXLISTLib_TLB.exFilterBarCaptionVisible) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	FilterBarBackColor := BackColor;
	FilterBarPromptPattern := 'and';
	with Columns do
	begin
		with (IUnknown(Add('Name')) as EXLISTLib_TLB.Column) do
		begin
			Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
			FormatColumn := 'lower(value)';
		end;
		with (IUnknown(Add('Title')) as EXLISTLib_TLB.Column) do
		begin
			Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
			FormatColumn := 'lower(value)';
		end;
		with (IUnknown(Add('City')) as EXLISTLib_TLB.Column) do
		begin
			Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
			FormatColumn := 'lower(value)';
		end;
	end;
	with Items do
	begin
		h0 := Add('Nancy Davolio');
		Caption[h0,OleVariant(1)] := 'Sales Representative';
		Caption[h0,OleVariant(2)] := 'Seattle';
		h0 := Add('Andrew Fuller');
		Caption[h0,OleVariant(1)] := 'Vice President, Sales';
		Caption[h0,OleVariant(2)] := 'Tacoma';
		SelectItem[h0] := True;
		h0 := Add('Janet Leverling');
		Caption[h0,OleVariant(1)] := 'Sales Representative';
		Caption[h0,OleVariant(2)] := 'Kirkland';
		h0 := Add('Margaret Peacock');
		Caption[h0,OleVariant(1)] := 'Sales Representative';
		Caption[h0,OleVariant(2)] := 'Redmond';
		h0 := Add('Steven Buchanan');
		Caption[h0,OleVariant(1)] := 'Sales Manager';
		Caption[h0,OleVariant(2)] := 'London';
		h0 := Add('Michael Suyama');
		Caption[h0,OleVariant(1)] := 'Sales Representative';
		Caption[h0,OleVariant(2)] := 'London';
		h0 := Add('Robert King');
		Caption[h0,OleVariant(1)] := 'Sales Representative';
		Caption[h0,OleVariant(2)] := 'London';
		h0 := Add('Laura Callahan');
		Caption[h0,OleVariant(1)] := 'Inside Sales Coordinator';
		Caption[h0,OleVariant(2)] := 'Seattle';
		h0 := Add('Anne Dodsworth');
		Caption[h0,OleVariant(1)] := 'Sales Representative';
		Caption[h0,OleVariant(2)] := 'London';
	end;
	EndUpdate();
end
560
Re-order the cell's caption, icons and images/pictures

with List1 do
begin
	BeginUpdate();
	ColumnAutoResize := True;
	Images('gBJJgBAICAADAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEahkZAIAEEbjMjlErlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrlTiFdib/sNjr9gs1nldlrlqtFtt0stlguNvulyh91ud1vVVvNuvt7wFHr9/vl3luEwOJouIq+Dw2KyGRyWTymVy2XzGZzUuiw+lmej0gkUaksljaAnmDc' + 
	'D/cEbf7w1+ufD/fEbeB028bYAO3enB6AB++4EoA4A4sb4vHjXJ4nG5vKAHA4ca6XBjTAD/Y2x/eB/jcB');
	with (IUnknown(Columns.Add('ToLeft')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
	end;
	with (IUnknown(Columns.Add('ToRight')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		Def[EXLISTLib_TLB.exCellDrawPartsOrder] := 'caption,picture,icons,icon,check';
	end;
	DefaultItemHeight := 32;
	DrawGridLines := EXLISTLib_TLB.exVLines;
	HeaderAppearance := EXLISTLib_TLB.Etched;
	with Items do
	begin
		h := Add('Caption');
		CellImage[h,OleVariant(0)] := 2;
		CellImages[h,OleVariant(0)] := '1,2';
		CellPicture[h,OleVariant(0)] := (IUnknown(List1.ExecuteTemplate('loadpicture(`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' + 
	'Gw+wbHkkTpEw7gpFgIAA2sABJEUThEK4QhgIJAQ==`)')) as _TLB.Object);
		Caption[h,OleVariant(1)] := Caption[h,OleVariant(0)];
		CellHAlignment[h,OleVariant(1)] := EXLISTLib_TLB.RightAlignment;
		CellImage[h,OleVariant(1)] := CellImage[h,OleVariant(0)];
		CellImages[h,OleVariant(1)] := '2,1';
		CellPicture[h,OleVariant(1)] := (IUnknown(CellPicture[h,OleVariant(0)]) as _TLB.Object);
		h := Add('<b>HTML</b> <off 4>Caption');
		CaptionFormat[h,OleVariant(0)] := EXLISTLib_TLB.exHTML;
		CellImage[h,OleVariant(0)] := 2;
		CellImages[h,OleVariant(0)] := '1,2';
		CellPicture[h,OleVariant(0)] := (IUnknown(List1.ExecuteTemplate('loadpicture(`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' + 
	'Gw+wbHkkTpEw7gpFgIAA2sABJEUThEK4QhgIJAQ==`)')) as _TLB.Object);
		Caption[h,OleVariant(1)] := Caption[h,OleVariant(0)];
		CaptionFormat[h,OleVariant(1)] := EXLISTLib_TLB.exHTML;
		CellHAlignment[h,OleVariant(1)] := EXLISTLib_TLB.RightAlignment;
		CellImage[h,OleVariant(1)] := CellImage[h,OleVariant(0)];
		CellImages[h,OleVariant(1)] := '2,1';
		CellPicture[h,OleVariant(1)] := (IUnknown(CellPicture[h,OleVariant(0)]) as _TLB.Object);
	end;
	EndUpdate();
end
559
ImageSize property on 32 (specifies the size of control' icons/images/check-boxes/radio-buttons)

// AddColumn event - Fired after a new column is added.
procedure TForm1.List1AddColumn(ASender: TObject; Column : IColumn);
begin
	// Column.Def(48) = 2
	// Column.Def(49) = 2
end;

with List1 do
begin
	BeginUpdate();
	ImageSize := 32;
	DefaultItemHeight := 36;
	HeaderHeight := DefaultItemHeight;
	SortBarHeight := DefaultItemHeight;
	Font.Size := 16;
	FilterBarFont.Size := List1.Font.Size;
	ToolTipFont.Size := List1.Font.Size;
	Images('gBJJgBAIDAAEg4AEEKAD/hz/EMNh8TIRNGwAjEZAEXjAojKAjMLjABhkaABAk0plUrlktl0vmExmUzmk1m03nE5nU7nk9miAoE+oVDolFo1HpFJpU5h8Sf9OqFNqUOqN' + 
	'UqdPq9VrFWrlbr1QpdhAFAkFis1ntFptVrtkrpszrNvmVxqk3uVtm1kmF3sdBvF/wGBmV+j9BYGHwWJulfxdax2NyFdx2JlV6l9Nw7AAGZymdz2Cy2GxErvWcz9ivlwy' + 
	'V21cuxugwktzGIzmvwtl0+53U5y0a0Wazmmyu/3dCyOMyXHx/J5nIr9q3uyqnBxFN3G46ma4vb7mD2Ng4nZze00fDkHC7t7us2rOX5tguetpHRlmz4HVqnXk1PjHO+CM' + 
	'Po9MBMC+j2vC8j7wS8cFNI4kBo05UIvfCT/NsnsApU+0Fqg/T+oy/kPxC0sEQfErKQK96+w28UWRI8UGvO8sTLS9r2PWmsMJTDTask3CsIbIEQRA3shOXEEAO/GclJ9F' + 
	'EKrrA8FRbKMXRIlb0JxCkjS1LMswhCcvuel0cv26cSMa8Ufx+2sQwhEUoSXOCjSbLcnxjKc7sdKUVyq28NtVI71P9P7JxtQEapjQ6fzfM8zPfNE2PhIsLL63E40slk5y' + 
	'7N89LcyU9SvMb3SdUc6VJLj5VLVLfO/PS9KzNFHUa/0XyBD0dxlS9cxhMlTRSoNXypPErWDPyfNS+MwprRNO0FD8wVVZ1AI08URwVRjtJ1WCn21QkkUrXVLVPQS/XIkF' + 
	'gTxT9iONZ9xVTdq+L1eKg3kkF6Upe68XtfV51/MtrVjBlwYFL1ev8y1/P6/lyzzYl02wntj0RVFmS1Qa+M5as93QxEUW9e993rfmQ2+vy65M/mL1lhl/2bj2ByVduMtN' + 
	'hCJT9hdz41nN14Ld12Z9UjfI/oUAaGseiw6+uFLLhcVabJOS5RqOE0BHlZ5VnEr5fOMs3st+aa/bbRzrJGV51Y0b0DbqaWXZD90hIsPbjWu52+6Wyadpe66hhO+P/Xio' + 
	'W5rD8ZbrUZuVg6n1dsE/cXmewu1m9PVwnd35/nueXho/NaJzmjc61W76esuT77eG8pTquy9TwWH8LEzG8RDfFalx3Gcfvna9rvG/cptGLd9tuI6TZOP5Fiqi99vea+X4' + 
	'VRcBq/JZZtVQ9cwSs5lsXE372+a9z7PbfB3VVqHyvMctLto8uob6eV0m/cD6MN2v+T33t6sBut42vdv2bJ8a997x2maFJfK+qArbGJPEKE+1qTflMsIdW/GCJX17KcT6' + 
	'/czr/X+u1g29B7j/4BQfWkkx4zIHisjhPCmE0K4SwtXM+d4BvHRwNZOoBph9IJvPek9d40FoMJxf691jj2ywQQcHEWET4XJwkTszlVqm2GokewxtBT1DpQjRxDN0rUVD' + 
	'NKdC3lb6tzNOwh6upMSSYfv4YBCl/bsn9PxiFCEo7SI6Obc9HeOrnY8x4jtHtdpN4GRbaorhsbu18Pph5CiHymI0RpSXGJ/z2oUOxYxG858AyiI+bfJtuTcG5yelBJyT' + 
	'8okhqFd4a5yxL0rvulYtKCsZiWxWkc1s1cRoxxwhA31DLE0mR9l9HqX8fJgTDmFMVH0MIsRzVYnwnMi1dyzmhLt2kS2pxIiU62Wj5ptQGlSYFakLonTUJNLKaM5Wzlff' + 
	'EkuFkk5wTrhVO2eE7G6lJhxFFYUZ55zmn0WuBCD4pzhirFCKkbomsOoIYmZx5p90LoYWGPdD5g0QmJRKYxbZ6zYoVQ2jVGylSak7KSkFH6RSjpHKFuU+YMyNo5SulkC6' + 
	'I0vonTCitMXPoEpVS2H5FQfEqp2R1opIgAEkJISYARTCukOhmPNI5Ex/wzGHUsicMwA1LHgQ90Y/KpoQHAD+pB/R4NzIaMAB9Xaw1gqaAOsh/A/ptIkWUfhGK1kZH8Rg' + 
	'H5GqvgArqRmt4AAPrTroRofBGADkqr6Rmu4D7CEaHARiwpJrEEZsXXwlVjyMWRsaRqwdkLGNBABZmytmyMnaINZqyVpLR2ftKAAAdd6h2osbaskdiq4EZtgSmyNcbVWR' + 
	'JNXe3AA7REar3b0stlAAXBtoRmvJGLjEYAHUWsFcwCD/rnaop9aEICMAPdK5hT6xpeuzdOtAgKuJeGfdq6ggEbkTvAP+p9UCHXrvKkcgIA==');
	with VisualAppearance do
	begin
		Add(1,'gBFLBCJwBAEHhEJAAEhABfICg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj6' + 
	'CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7EM' + 
	'RwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsOatVqjG5sYjcGC3La9cz3Pq/bpuDCbMxuaK1TrYXr1TTrcofBDldAxXRKDxR' + 
	'DWVhLnYOw9i6XxzjuXprCaOoKB6EwbiCZZCGOdZYlcT4xHmbhMnwNxtn+G5bmqdZ7n4Pw/i+X5zm+dQ9g4CAFjsfAJheOI8HsDoWDWTB/lwSAQkmA5PEgRYoDyDwYFYF' + 
	'oFmGCBmBqBphDgRJ0gOTIYBGRB/lyRh0iSCZbjYWJzgWDwIjYLoLmMCJGDKDJjBgWgqG6YhyhGHRzA2aJ1mCABOAiOJvhCZBJBYRoRmSCQmEqEQimkAZgg8TZnDCV4Uk' + 
	'mCUmBKZYJGYWoWCUUhiFMNZckNUh2GENoaGaGZmgmJhqhqZpGGIEx2GYIxSGGGJdggWJth2Z4JmYeoemeSZ2H6H4hGmQhihyTRHGYLg7CiCgmgqIpokoNoOiOaJ4jqAo' + 
	'chqaZGgaCxpAoZoaiaaJqEmWIcGgShcnCJwqEqFoR3YOoFlgchflqNouiuawHmWSYqGkWZQhcatzmaOoumuSp2j6L5bBaKo0GQKRnGGCxqiyCwmkqMpsksNpOGUGI7A0' + 
	'ew1G0Rxlg0PptgsZuDG2Sx2l6N5tnYNZZjUDRXDCVo5l2FoymqOpukuNpujubwLjmWY5k0ZwxkaFxYlWdp6j6b5Lnafo/nABQdg2FxcUsY5BkmXAkmeQpckwNRrkKTh8' + 
	'CSHZBk4NwyC4KxxgMDwakOMZDn8GgwnGAo2C4cwthMcwmCcMoHBMHRehwTIghySYNksZwcH4HBMEsHx5hyPItiweYxnwSZEH4Mozn0fR+DMAo7EYJ50gkdZelKdNql2U' + 
	'gJn0GIukwH4HicQRai2GI4mSVpNl0dZGledgNgcYpYDWUx3FsOQi5YV5anaTY3G6W53A2RxylydxFjiaxEFCCgBBAQ==');
		Add(2,'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' + 
	'RBCCQAgQEA==');
		Add(3,'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');
		Add(4,'gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHL' + 
	'UXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKBU' + 
	'rGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo3' + 
	'NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDsY' + 
	'YDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoVm' + 
	'WCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoVo' + 
	'WiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZiS' + 
	'e41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbhF' + 
	'CcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA==');
	end;
	BackColorHeader := $4c6c6c6;
	SelBackColor := $4000000;
	SelForeColor := RGB(0,0,1);
	CheckImage[EXLISTLib_TLB.Unchecked] := 16777216;
	CheckImage[EXLISTLib_TLB.Checked] := 33554432;
	CheckImage[EXLISTLib_TLB.PartialChecked] := 50331648;
	Background[EXLISTLib_TLB.exSelBackColorFilter] := SelBackColor;
	Background[EXLISTLib_TLB.exSelForeColorFilter] := SelForeColor;
	Background[EXLISTLib_TLB.exBackColorFilter] := BackColor;
	Background[EXLISTLib_TLB.exForeColorFilter] := ForeColor;
	Background[EXLISTLib_TLB.exCursorHoverColumn] := $ffffffff;
	Background[EXLISTLib_TLB.exHeaderFilterBarButton] := $4000000;
	Background[EXLISTLib_TLB.exHeaderFilterBarActive] := $4010101;
	Background[EXLISTLib_TLB.exFooterFilterBarButton] := $40000ff;
	HeaderAppearance := EXLISTLib_TLB.Etched;
	ShowFocusRect := False;
	SortBarVisible := True;
	BackColorSortBar := BackColor;
	BackColorLevelHeader := BackColor;
	FilterBarDropDownHeight := 1;
	with (IUnknown(Columns.Add('Check')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		Width := 128;
		DisplayFilterButton := True;
		FilterList := EXLISTLib_TLB.exShowCheckBox;
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		FormatColumn := '1 pos ``';
		AllowSort := False;
		Width := 48;
		AllowSizing := False;
		Alignment := EXLISTLib_TLB.CenterAlignment;
		HeaderAlignment := EXLISTLib_TLB.CenterAlignment;
	end;
	with (IUnknown(Columns.Add('Image')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
		FilterType := EXLISTLib_TLB.exImage;
		Width := 128;
		HeaderImage := 1;
	end;
	with (IUnknown(Columns.Add('Images')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		Width := 196;
		HTMLCaption := '<img>1</img><img>2</img><img>3</img> Images';
	end;
	Columns.Item['Pos'].Position := 3;
	with Items do
	begin
		h := Add('Child A');
		CellImage[h,OleVariant(2)] := 1;
		CellImages[h,OleVariant(3)] := '1,2,3';
		Caption[h,OleVariant(3)] := '123';
		h := Add('Child B');
		CellState[h,OleVariant(0)] := 1;
		CellImage[h,OleVariant(2)] := 3;
		CellImages[h,OleVariant(3)] := '2,3,1';
		Caption[h,OleVariant(3)] := '231';
		SelectItem[h] := True;
		h := Add('Child C');
		CellImage[h,OleVariant(2)] := 2;
		CellState[h,OleVariant(3)] := 1;
		Caption[h,OleVariant(3)] := '312';
		CellImages[h,OleVariant(3)] := '3,1,2';
	end;
	EndUpdate();
end
558
ImageSize property on 16 (default) (specifies the size of control' icons/images/check-boxes/radio-buttons)

// AddColumn event - Fired after a new column is added.
procedure TForm1.List1AddColumn(ASender: TObject; Column : IColumn);
begin
	// Column.Def(48) = 2
	// Column.Def(49) = 2
end;

with List1 do
begin
	BeginUpdate();
	ImageSize := 16;
	Images('gBJJgBAIDAAEg4ACEKAD/hz/EMNh8TIRNGwAjEZAEXjAojJAjMLjABAAgjUYkUnlUrlktl0vmExmUzmk1m03nE5nU7nkrQCAntBoVDolFo1HoM/ADAplLptImdMYFOqd' + 
	'SqlXq1QrVbrlGpVWsFNrNdnNjsk7pQAtNroFnt0sh8Yr9iulTuNxs1Eu8OiT/vsnsNVutXlk/oGGtVKxGLxWNtsZtN8iUYuNvy0Zvd+xNYwdwvl4p870GCqc8vOeuVtt' + 
	'mp1knyOayWVy+WzN/ze1wOElenm+12WUz/Bv2/3UyyWrzeutux2GSyGP2dQ33C1ur3GD3M4zUNzHdlWjq/E3nGzVpjWv4HA7fRy/Tv2IrN8rPW6nZ3ve7mUlfu20Z8ac' + 
	'vQyb+vY9jasYoDwMm+LytVBDqKG3z8O3Cb8P+mkAuY9cCQ2uL4KaxDKvkp8RNLEjqugnrwQo/UWPzFyeQw5sNLZFENrI4kOqU66pw8uzmOKvTqNqjULJvGL1JO48GtTG' + 
	'sbLdEL3scxLlyiw8dQeoUVxdLTtyKmUjwGlslRPJsnK1HbAKbKCrsQo8uQk/CeP44iaR/ATnTNPLvyxPU+z9P9AUDQVBowiofJXQ6Oo+kKMpIkjztE4TKn4P6JowfgPn' + 
	'wD5/nAjB8AOeAPo0eAA1IAFH07UhAIMpYAVIYFHqBUhwVjV1S1EtQAHxW65V0AZwAeuQAnwB5gAPYViEDVhwAHTQBkCjB4gOhwDmCyhH0sACAg==');
	with VisualAppearance do
	begin
		Add(4,'gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHL' + 
	'UXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKBU' + 
	'rGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo3' + 
	'NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDsY' + 
	'YDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoVm' + 
	'WCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoVo' + 
	'WiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZiS' + 
	'e41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbhF' + 
	'CcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA==');
	end;
	BackColorHeader := $4c6c6c6;
	SelBackColor := $4000000;
	SelForeColor := RGB(0,0,1);
	Background[EXLISTLib_TLB.exSelBackColorFilter] := SelBackColor;
	Background[EXLISTLib_TLB.exSelForeColorFilter] := SelForeColor;
	Background[EXLISTLib_TLB.exBackColorFilter] := BackColor;
	Background[EXLISTLib_TLB.exForeColorFilter] := ForeColor;
	Background[EXLISTLib_TLB.exCursorHoverColumn] := $ffffffff;
	Background[EXLISTLib_TLB.exHeaderFilterBarButton] := $4000000;
	Background[EXLISTLib_TLB.exHeaderFilterBarActive] := $4010101;
	Background[EXLISTLib_TLB.exFooterFilterBarButton] := $40000ff;
	HeaderAppearance := EXLISTLib_TLB.Etched;
	ShowFocusRect := False;
	SortBarVisible := True;
	BackColorSortBar := BackColor;
	BackColorLevelHeader := BackColor;
	FilterBarDropDownHeight := 1;
	with (IUnknown(Columns.Add('Check')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		Width := 128;
		DisplayFilterButton := True;
		FilterList := EXLISTLib_TLB.exShowCheckBox;
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		FormatColumn := '1 pos ``';
		AllowSort := False;
		Width := 48;
		AllowSizing := False;
		Alignment := EXLISTLib_TLB.CenterAlignment;
		HeaderAlignment := EXLISTLib_TLB.CenterAlignment;
	end;
	with (IUnknown(Columns.Add('Image')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
		FilterType := EXLISTLib_TLB.exImage;
		Width := 128;
		HeaderImage := 1;
	end;
	with (IUnknown(Columns.Add('Images')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		Width := 196;
		HTMLCaption := '<img>1</img><img>2</img><img>3</img> Images';
	end;
	Columns.Item['Pos'].Position := 3;
	with Items do
	begin
		h := Add('Child A');
		CellImage[h,OleVariant(2)] := 1;
		CellImages[h,OleVariant(3)] := '1,2,3';
		Caption[h,OleVariant(3)] := '123';
		h := Add('Child B');
		CellState[h,OleVariant(0)] := 1;
		CellImage[h,OleVariant(2)] := 3;
		CellImages[h,OleVariant(3)] := '2,3,1';
		Caption[h,OleVariant(3)] := '231';
		SelectItem[h] := True;
		h := Add('Child C');
		CellImage[h,OleVariant(2)] := 2;
		CellState[h,OleVariant(3)] := 1;
		Caption[h,OleVariant(3)] := '312';
		CellImages[h,OleVariant(3)] := '3,1,2';
	end;
	EndUpdate();
end
557
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 is added.
procedure TForm1.List1AddColumn(ASender: TObject; Column : IColumn);
begin
	with List1 do
	begin
		with Column do
		begin
		end;
	end
end;

with List1 do
begin
	BeginUpdate();
	ColumnAutoResize := False;
	rs := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('ADOR.Recordset'))) as ADODB_TLB.Recordset);
	with rs do
	begin
		Open('Orders','Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExList\Sample\Access\sample.accdb',3,3,Null);
	end;
	DataSource := (IUnknown(rs) as ADODB_TLB.Recordset);
	Columns.Item['ShipVia'].Position := 2;
	EndUpdate();
end
556
Is it possible to set from code, a column sort without being inserted in the sortbar

with List1 do
begin
	BeginUpdate();
	ColumnAutoResize := False;
	rs := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('ADOR.Recordset'))) as ADODB_TLB.Recordset);
	with rs do
	begin
		Open('Orders','Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExList\Sample\Access\SAMPLE.ACCDB',3,3,Null);
	end;
	DataSource := (IUnknown(rs) as ADODB_TLB.Recordset);
	SortBarVisible := True;
	Layout := 'singlesort="C1:1"';
	EndUpdate();
end
555
Is it possible to highligth the match while a filter is applied

// AddColumn event - Fired after a new column is added.
procedure TForm1.List1AddColumn(ASender: TObject; Column : IColumn);
begin
	// Column.Def(17) = 1
end;

// FilterChange event - Occurs when filter was changed.
procedure TForm1.List1FilterChange(ASender: TObject; );
begin
	with List1 do
	begin
		format := FormatABC('`value replace ''` + value + `'' with ''<bgcolor 000000><fgcolor FFFFFF>` + value  + `</fgcolor></bgcolor>''`',OleVariant(FilterBarPromptPattern),Null,Null);
		Columns.Item[OleVariant(0)].FormatColumn := format;
		Columns.Item[OleVariant(1)].FormatColumn := format;
	end
end;

with List1 do
begin
	BeginUpdate();
	DrawGridLines := EXLISTLib_TLB.exVLines;
	HeaderAppearance := EXLISTLib_TLB.Etched;
	Columns.Add('Col 1');
	Columns.Add('Col 2');
	with Items do
	begin
		Caption[Add('219 Smith'),OleVariant(1)] := 'Ignacio 1234';
		Caption[Add('1666 County Road 309A'),OleVariant(1)] := '897 Manassa';
		Caption[Add('38 Lone Pine'),OleVariant(1)] := 'Durango 11';
		Caption[Add('612 Jachim Street'),OleVariant(1)] := 'Lamar 222';
	end;
	FilterBarPromptPattern := '1';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCompact) Or Integer(EXLISTLib_TLB.exFilterBarSingleLine) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	FilterBarPromptType := Integer(EXLISTLib_TLB.exFilterPromptCaseSensitive) Or Integer(EXLISTLib_TLB.exFilterPromptContainsAll);
	EndUpdate();
end
554
Is it possible to highlight the column's header once a filter is applied

with List1 do
begin
	BeginUpdate();
	with VisualAppearance do
	begin
		Add(2,'gBFLBCJwBAEHhEJAAEhABX8GACAADACAxSDEMQBQKAAzQFAYbhgHCGAAGQaBUgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwYgmNYiTLAcgANJ' + 
	'0WBaGIZJ4gOT5fDKMoEDRRYADFCscwxJybQAqGQKKb+VgAVY/cTyBIAEQSKA0TDOQ5TSKWB4JPZQRBEbZMNBtBIUJquKaqShdQJCU5FdY3Xblez9P7AMBwLFEC4NQ8YN' + 
	'YuPhjR4dRTIMhvVAsUArFh8Zg9GZZFjmDIDT4ydBLTQwcyVIKnP5qOa6XbmPoCQDYKxZHYxPzVDa3axuL76dqCAT7XrXNy1TbNRrzQKfcJqfCbdw2YaDZLOOT3fjuI4h' + 
	'hKaRzFAHJ+jYQ4xHuY4gHuGIXGeExqC8Tp6C+PoEm+G5ImycRgh0XwvDGa5rgOeoejyXwnFeQp2mkf5ClgBB9gCWIYAwfYAEKV58mkdwOggNArgOXY2EWLoDkKOA0mgb' + 
	'hOGgZApgaSBIHWSYHSmbApgYThmESZYJkIeIkgeCpfliLIHgpMIcmUYYYmODAlg2SI4mWfRfGOEguDcCRjFYAJihCQhJBSDoRmONgKEcI4kFCEJhhOVYTmYnAlEAQhWB' + 
	'MJYJGYWoWmWSR2F6F5lnkWAQhUAgpEieRWEuSYkjWGpmkmNhuhuZwJkYcocmaaYkjyEhngnUA6lEFAlAEgI=');
		Add(1,'CP:2 -8 -4 2 4');
	end;
	Background[EXLISTLib_TLB.exHeaderFilterBarButton] := $1fefefe;
	Background[EXLISTLib_TLB.exHeaderFilterBarActive] := $1010101;
	Background[EXLISTLib_TLB.exCursorHoverColumn] := $ffffffff;
	HeaderHeight := 28;
	BackColorHeader := RGB(255,255,255);
	DrawGridLines := EXLISTLib_TLB.exAllLines;
	HeaderVisible := True;
	with Columns do
	begin
		(IUnknown(Add('C1')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
		with (IUnknown(Add('C2')) as EXLISTLib_TLB.Column) do
		begin
			DisplayFilterButton := True;
			Filter := 'Item 2';
			FilterType := EXLISTLib_TLB.exFilter;
		end;
		(IUnknown(Add('C3')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	end;
	with Items do
	begin
		h := Add('Item 1');
		Caption[h,OleVariant(1)] := 'Item 2';
		Caption[h,OleVariant(2)] := 'Item 3';
		h := Add('Item 4');
		Caption[h,OleVariant(1)] := 'Item 5';
		Caption[h,OleVariant(2)] := 'Item 6';
	end;
	ApplyFilter();
	EndUpdate();
end
553
Is it possible to show the filterbar on top of the rows

with List1 do
begin
	BeginUpdate();
	FilterBarPromptVisible := EXLISTLib_TLB.exFilterBarTop;
	HeaderHeight := 24;
	FilterBarHeight := HeaderHeight;
	HeaderAppearance := EXLISTLib_TLB.Flat;
	DrawGridLines := EXLISTLib_TLB.exAllLines;
	GridLineStyle := EXLISTLib_TLB.exGridLinesGeometric;
	with (IUnknown(Columns.Add('Column')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterType := EXLISTLib_TLB.exPattern;
		Filter := 'B*';
	end;
	with (IUnknown(Columns.Add('Index')) as EXLISTLib_TLB.Column) do
	begin
		FormatColumn := '1 index ``';
		Position := 0;
		Width := 48;
		AllowSizing := False;
		SortType := EXLISTLib_TLB.SortNumeric;
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
	end;
	with Items do
	begin
		Add('A.1');
		Add('A.2');
		Add('B.1');
		Add('B.2');
		Add('B.3');
		Add('C');
	end;
	ApplyFilter();
	EndUpdate();
end
552
Is there anyway to stop the header changing colour when the mouse hovers/moves across the column header (non-clickable)

with List1 do
begin
	BeginUpdate();
	HeaderAppearance := EXLISTLib_TLB.Etched;
	with Columns do
	begin
		Add('Item');
		with (IUnknown(Add('Pos')) as EXLISTLib_TLB.Column) do
		begin
			Position := 0;
			Width := 32;
			AllowSizing := False;
			FormatColumn := '1 index ``';
			AllowSort := False;
			AllowDragging := False;
		end;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	EndUpdate();
end
551
Is there anyway to stop the header changing colour when the mouse hovers/moves across the column header

with List1 do
begin
	BeginUpdate();
	HeaderAppearance := EXLISTLib_TLB.Etched;
	Background[EXLISTLib_TLB.exCursorHoverColumn] := $ffffffff;
	with Columns do
	begin
		Add('Item');
		with (IUnknown(Add('Pos')) as EXLISTLib_TLB.Column) do
		begin
			Position := 0;
			Width := 32;
			AllowSizing := False;
			FormatColumn := '1 index ``';
			AllowSort := False;
			AllowDragging := False;
		end;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	EndUpdate();
end
550
How do I get notified once the user clicks the cell's button

// CellButtonClick event - Fired after the user clicks the cell's button.
procedure TForm1.List1CellButtonClick(ASender: TObject; ItemIndex : Integer;ColIndex : Integer);
begin
	with List1 do
	begin
		with Items do
		begin
			OutputDebugString( Caption[ItemIndex,OleVariant(0)] );
		end;
	end
end;

with List1 do
begin
	BeginUpdate();
	Columns.Add('Item');
	with (IUnknown(Columns.Add('...')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasButton] := OleVariant(True);
		Alignment := EXLISTLib_TLB.CenterAlignment;
		HeaderAlignment := EXLISTLib_TLB.CenterAlignment;
		FormatColumn := '` ... `';
		Width := 32;
		AllowSizing := False;
		Position := 0;
	end;
	SelBackMode := EXLISTLib_TLB.exTransparent;
	with Items do
	begin
		Add('Item 1');
		Add('Item 2');
		Add('Item 3');
	end;
	EndUpdate();
end
549
How do I set an extra data for each item
// MouseMove event - Occurs when the user moves the mouse.
procedure TForm1.List1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer);
begin
	with List1 do
	begin
		i := ItemFromPoint[-1,-1,c,hit];
		OutputDebugString( i );
		OutputDebugString( Items.ItemData[i] );
	end
end;

with List1 do
begin
	BeginUpdate();
	ColumnAutoResize := True;
	Columns.Add('Default');
	with Items do
	begin
		ItemData[Add('method')] := 'your extra data of method';
	end;
	EndUpdate();
end
548
I do not like to specify the item padding for every column I add. The question is how can I do it automatically

with List1 do
begin
	BeginUpdate();
	AttachTemplate('handle AddColumn(Column){Column{Def(48)=8;Def(49)=8;AllowDragging=False;AllowSizing = True}}');
	HeaderAppearance := EXLISTLib_TLB.Etched;
	DrawGridLines := EXLISTLib_TLB.exAllLines;
	GridLineStyle := EXLISTLib_TLB.exGridLinesVSolid;
	with Columns do
	begin
		Add('Item');
		with (IUnknown(Add('Pos')) as EXLISTLib_TLB.Column) do
		begin
			Position := 0;
			Width := 32;
			AllowSizing := False;
			FormatColumn := '1 index ``';
		end;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	EndUpdate();
end
547
Can I sort the column by check-state

with List1 do
begin
	BeginUpdate();
	with (IUnknown(Columns.Add('Check')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		SortType := EXLISTLib_TLB.exSortByState;
	end;
	with Items do
	begin
		Add(Null);
		CellState[Add(Null),OleVariant(0)] := 1;
		CellState[Add(Null),OleVariant(0)] := 1;
		Add(Null);
	end;
	Columns.Item[OleVariant(0)].SortOrder := EXLISTLib_TLB.SortAscending;
	EndUpdate();
end
546
Can I sort the column by image

with List1 do
begin
	BeginUpdate();
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	with (IUnknown(Columns.Add('Image')) as EXLISTLib_TLB.Column) do
	begin
		SortType := EXLISTLib_TLB.exSortByImage;
	end;
	with Items do
	begin
		CellImage[Add(Null),OleVariant(0)] := 3;
		Add(Null);
		CellImage[Add(Null),OleVariant(0)] := 1;
		CellImage[Add(Null),OleVariant(0)] := 2;
	end;
	Columns.Item[OleVariant(0)].SortOrder := EXLISTLib_TLB.SortAscending;
	EndUpdate();
end
545
How can I display UNICODE characters

with List1 do
begin
	BeginUpdate();
	with Font do
	begin
		Name := 'Arial Unicode';
		Size := 22;
	end;
	HeaderVisible := False;
	DefaultItemHeight := 48;
	(IUnknown(Columns.Add('')) as EXLISTLib_TLB.Column).Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
	with Items do
	begin
		Add('Ӓӓ');
		Add('ᦜᦝ;ᦞ');
		Add('ɮɭ;ɯ');
		Add('勳勴勵勶');
		FormatCell[Add(OleVariant(List1.Version)),OleVariant(0)] := '(value lfind `UNICODE`) < 0 ? `<fgcolor=FF0000><b>!UNICODE!</b> version</fgcolor> required: ` + value : `` ';
	end;
	EndUpdate();
end
544
How do I display the position of the item with 0-padding

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Items')) as EXLISTLib_TLB.Column).FormatColumn := '((1 apos ``) lpad `00`) + `. `  + value';
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
		Add('Item D');
	end;
	EndUpdate();
end
543
I am skinning the control's header-bar, but the background of the header-bar is shown on each item in the filter-bar drop down panel. What can I do

with List1 do
begin
	BeginUpdate();
	with VisualAppearance do
	begin
		Add(1,'gBFLBCJwBAEHhEJAAEhABFgDg6AADACAxRDgMQBQKAAzQFAYcBqGqGAAGQZxYgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHL' + 
	'UXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQGhsCYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU8lORLUi+M4zSBPcZVTRtGShPDBK' + 
	'TjMKKYgkG4lVpRNa0PC1GTzQ6mazkKQLRADDIDVbAeL3LiMBy9LyLLItQALByua5mWhbcZyBCOPgBTrRb5zO58FjuTK7YLjMB7NrUNYtFaUMy2OpOCADIaecTNcaWLxP' + 
	'F2MY1HWYxVj2Jw3DuRJonKYBgggSRAlIYw6B0ThGFgPAkFUDAhBMfZRiGNAkFECZnm4YQdneJwqnsSQrGAAhWAIJBJBIQgFCQIBiEIAglgqYo0i4V4MEgRI9gSToYFSb' + 
	'4Fk6Y4+BmBZhFOJgTC8TBogQAArgqco4muCZOkOMJtgmYpIjYKg7GKE4uCUK4AAKKg2DwI4DiCZw5k6KJ2D6D4OHiag4DwIxiiQAArAqMosnEPBPAOIhOg+DozjIJ4PG' + 
	'SY4iEwPAkhKLhHUUSQsnKFCnkYU9MjORhcCsAAIACLQ8iaSJ6FKC5jJoaobA8KYoACCRKnmMJzhuDpZnSboMCKGJ4nMPIPDmYAACwKIDk6CoLCeU40m6I5oliMoKDyaI' + 
	'CokLIpgoThviOKJoGYf4KmUKhMjMLJLCAAojCyaYoiYGoGmqM46CkOwPEoKonAACxKlSdItmiWBeBeDgrioNo3D0KxSlAAAtgsUpYnUPRPEoco8hCa+T40SxbBRj5tEs' + 
	'HJ1i6JhbGYS4ug8awelQLZAAKZI5C4DxrhYQ9ehmUppWiA48nAPRuFKYpiAAC47laZQ9iuKZSgOPotkuFI7C6C4gACPJAm8eQOhOQZoikDp3kCS5AACPoEk8fBGnqQgp' + 
	'DOSppD2TxjlyPZD6CfwekQTx5lKP5ImseZTCAL5MAMAAAkoTADmMLpIjISp+HSS4PgyMAADBzAHDSIoPCOUpWjObIKE8NJOHKIwPEaTprBsHpdjWLB9AieQ+DQYwQAAM' + 
	'R1EOZxWi+bx7HcWQ8msfRYnnDhQACRwxgwc5rGaMZPE0ZxqjWNZtgyRwAAyTZEnuXJzEyAx2kQcxNkye5cEy3cYAcANrGAIH4OAhx3gNGGPAfgIR8jBA4McBMARViHH4' + 
	'HQOYmxuCpF2MsecEQVBvGQCcIQvA6i2CAAIARAQ=');
		Add(2,'gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzQFAYcBqGqGAAGQZxYgmFgAQhFcZQSKUOQTDKMIziYBYJhEMwwDhEIwjHCEEhsGIbJAGQBJCjWGodQLOEgzNC' + 
	'0IxNFCQILhEZJADKII8TTOU5UPRESwTE4cKBmKhQCo2NpKR7VUTxCKQahLLivoCjBT8EzHMqtIzrCA6MpaP4pQjKcqwHJ8YyHEi0ZrjazKaj6T5AXDUcaWbbNVx3PK3a' + 
	'ioOpLZrqOZZYzYFoABTuJzPMSyIhxXD8cweaZvSpLExVYK9BY3PbKMgxC77QgTIpDaQMNS6PjtF43PAALLFUaNYzoOKzABMHATBIXAYJCwIIR5G7ID4BbQcCQAHL9DBa' + 
	'EEIAEEISgGhMGZQmocgymmIRQkIEQ2BcGgbEIRQci8XaMBqTRVgSAZHG+S5pnOep+D6f4vjec5zn0fpfmgBgAH6TRoBYBoAh+eAmAiAgPFgNArgOQpIESdoEmCOAOAqB' + 
	'YfFGAgaEaBgYHYFYFmIB5UiGCJUgKCgmgeYoHk4BgCmKRQiCwApgHgYgyH8B54lQU4NkMeJlBoDgjkiXBTg0R54iYIR+koeQVBoKpkgkChKhEJBkF4SFEjkDgJhFQoeE' + 
	'mDJlBeehUhWJQJGIXoICWOQ6FeFIlhkfhlDsSJpiQVoamaSY2G6G5nAmRhpCOH5pkwVYdmeCZmHqHpnkmdhzhmaAIFiax8AABAEICA==');
	end;
	BackColorHeader := $1000000;
	ForeColorHeader := RGB(128,128,128);
	Background[EXLISTLib_TLB.exHeaderFilterBarButton] := $2000000;
	Background[EXLISTLib_TLB.exBackColorFilter] := $ffffff;
	Background[EXLISTLib_TLB.exForeColorFilter] := $10000;
	Background[EXLISTLib_TLB.exSelBackColorFilter] := $1ff8000;
	Background[EXLISTLib_TLB.exSelForeColorFilter] := $f0f0f0;
	Background[EXLISTLib_TLB.exCursorHoverColumn] := $ffffffff;
	HeaderHeight := 24;
	BackColorLevelHeader := BackColor;
	with (IUnknown(Columns.Add('Filter')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		DisplayFilterPattern := False;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
		Def[EXLISTLib_TLB.exHeaderPaddingLeft] := OleVariant(2);
		Def[EXLISTLib_TLB.exHeaderPaddingRight] := OleVariant(2);
	end;
	with Items do
	begin
		Add('A');
		Add('B');
		Add('C');
		Add('D');
	end;
	EndUpdate();
end
542
Type of wraps the cell's caption support (Sample 2)

with List1 do
begin
	BeginUpdate();
	HeaderSingleLine := False;
	HeaderHeight := 36;
	DrawGridLines := EXLISTLib_TLB.exAllLines;
	ColumnAutoResize := False;
	ScrollBySingleLine := True;
	with Columns do
	begin
		with (IUnknown(Add('Single-Line (exCaptionSingleLine)')) as EXLISTLib_TLB.Column) do
		begin
			Width := 96;
			Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
			Def[EXLISTLib_TLB.exCellSingleLine] := OleVariant(-1);
		end;
		with (IUnknown(Add('Word-Wrap (exCaptionWordWrap)')) as EXLISTLib_TLB.Column) do
		begin
			Width := 96;
			Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
			Def[EXLISTLib_TLB.exCellSingleLine] := OleVariant(0);
			FormatColumn := '%0';
		end;
		with (IUnknown(Add('Break-Wrap (exCaptionBreakWrap)')) as EXLISTLib_TLB.Column) do
		begin
			Width := 96;
			Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
			Def[EXLISTLib_TLB.exCellSingleLine] := OleVariant(1);
			FormatColumn := '%0';
		end;
	end;
	with Items do
	begin
		Add('This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.');
		Add('This is the <b>first</b> line.\r\nThis is the <b>second</b> line.\r\nThis is the <b>third</b> line.');
	end;
	EndUpdate();
end
541
Type of wraps the cell's caption support (Sample 1)

with List1 do
begin
	BeginUpdate();
	DrawGridLines := EXLISTLib_TLB.exAllLines;
	ColumnAutoResize := False;
	ScrollBySingleLine := True;
	(IUnknown(Columns.Add('Default')) as EXLISTLib_TLB.Column).Width := 128;
	with Items do
	begin
		h := Add('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
		h := Add('This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.');
		CaptionFormat[h,OleVariant(0)] := EXLISTLib_TLB.exHTML;
		h := Add('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
		CellSingleLine[h,OleVariant(0)] := EXLISTLib_TLB.exCaptionWordWrap;
		h := Add('This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.');
		CaptionFormat[h,OleVariant(0)] := EXLISTLib_TLB.exHTML;
		CellSingleLine[h,OleVariant(0)] := EXLISTLib_TLB.exCaptionWordWrap;
		h := Add('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
		CellSingleLine[h,OleVariant(0)] := EXLISTLib_TLB.exCaptionBreakWrap;
		h := Add('This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.');
		CaptionFormat[h,OleVariant(0)] := EXLISTLib_TLB.exHTML;
		CellSingleLine[h,OleVariant(0)] := EXLISTLib_TLB.exCaptionBreakWrap;
	end;
	EndUpdate();
end
540
Can I break the cell's caption using the line break <br> or \r\n (Sample 2)

with List1 do
begin
	BeginUpdate();
	DrawGridLines := EXLISTLib_TLB.exAllLines;
	ColumnAutoResize := False;
	ScrollBySingleLine := True;
	(IUnknown(Columns.Add('Default')) as EXLISTLib_TLB.Column).Width := 128;
	with Items do
	begin
		CellSingleLine[Add('This is the first line.\r\nThis is the second line.\r\nThis is the third line.'),OleVariant(0)] := EXLISTLib_TLB.exCaptionBreakWrap;
		Add('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
	end;
	EndUpdate();
end
539
Can I break the cell's caption using the line break <br> or \r\n (Sample 1)

with List1 do
begin
	BeginUpdate();
	DrawGridLines := EXLISTLib_TLB.exAllLines;
	ColumnAutoResize := False;
	ScrollBySingleLine := True;
	with (IUnknown(Columns.Add('Default')) as EXLISTLib_TLB.Column) do
	begin
		Width := 128;
		Def[EXLISTLib_TLB.exCellSingleLine] := OleVariant(1);
	end;
	with Items do
	begin
		Add('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
		Add('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
	end;
	EndUpdate();
end
538
How can I change the visual appearance/color of the Filter For ... field

with List1 do
begin
	BeginUpdate();
	BackColorHeader := RGB(1,0,0);
	ForeColorHeader := RGB(255,255,255);
	Background[EXLISTLib_TLB.exBackColorFilter] := BackColorHeader;
	Background[EXLISTLib_TLB.exForeColorFilter] := ForeColorHeader;
	Background[EXLISTLib_TLB.exHeaderFilterBarButton] := $f0f0f0;
	Background[EXLISTLib_TLB.exCursorHoverColumn] := $ffffffff;
	HeaderAppearance := EXLISTLib_TLB.Bump;
	with (IUnknown(Columns.Add('Items')) as EXLISTLib_TLB.Column) do
	begin
		FilterOnType := True;
		DisplayFilterButton := True;
		FilterList := EXLISTLib_TLB.exNoItems;
	end;
	with Items do
	begin
		Add('Item 1');
		Add('Item 2');
		Add('Item 3');
	end;
	EndUpdate();
end
537
How can I display the cell's caption without spaces on both sides

with List1 do
begin
	BeginUpdate();
	ColumnAutoResize := True;
	with (IUnknown(Columns.Add('Default')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
		FormatColumn := '((trim(value) replace `   ` with ` `) replace `  ` with ` `) replace ` ` with `<bgcolor=FF0000> </bgcolor>`';
	end;
	with Items do
	begin
		Add('');
		Add('Item A');
		Add('    Item B');
		Add('        Item   C    ');
	end;
	EndUpdate();
end
536
How can I highlight the spaces within the column (sample 2)

with List1 do
begin
	BeginUpdate();
	ColumnAutoResize := True;
	with (IUnknown(Columns.Add('Default')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
		FormatColumn := '`''` + ( value replace ` ` with `_` ) + `''`';
	end;
	with Items do
	begin
		Add('');
		Add('Item A');
		Add('    Item B');
		Add('        Item   C    ');
	end;
	EndUpdate();
end
535
How can I highlight the spaces within the column (sample 1)

with List1 do
begin
	BeginUpdate();
	ColumnAutoResize := True;
	with (IUnknown(Columns.Add('Default')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
		FormatColumn := 'len(value) = 0 ? `<bgcolor=FF0000> </bgcolor>` : ( value replace ` ` with `<bgcolor=FF0000> </bgcolor>` )';
	end;
	with Items do
	begin
		Add('');
		Add('Item A');
		Add('    Item B');
		Add('        Item   C    ');
	end;
	EndUpdate();
end
534
How can I change the visual aspect of the drop down filter-calendar

with List1 do
begin
	BeginUpdate();
	Background[EXLISTLib_TLB.exBackColorFilter] := $10000;
	Background[EXLISTLib_TLB.exForeColorFilter] := $ffffff;
	Background[EXLISTLib_TLB.exDateScrollRange] := $ffffff;
	Background[EXLISTLib_TLB.exDateHeader] := Background[EXLISTLib_TLB.exBackColorFilter];
	Background[EXLISTLib_TLB.exDateScrollThumb] := $808080;
	with (IUnknown(Columns.Add('Date')) as EXLISTLib_TLB.Column) do
	begin
		FilterType := EXLISTLib_TLB.exDate;
		DisplayFilterButton := True;
		DisplayFilterDate := True;
		DisplayFilterPattern := False;
	end;
	EndUpdate();
end
533
Export Data in HTML format

with List1 do
begin
	BeginUpdate();
	BackColorAlternate := RGB(240,240,240);
	DrawGridLines := EXLISTLib_TLB.exAllLines;
	HeaderAppearance := EXLISTLib_TLB.Etched;
	Description[EXLISTLib_TLB.exFilterBarAnd] := FormatABC('`<fgcolor=808080> ` + value + ` </fgcolor>`',OleVariant(Description[EXLISTLib_TLB.exFilterBarAnd]),Null,Null);
	FilterBarCaption := '(( ( value replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `' + 
	'[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( match' + 
	'itemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcoun' + 
	't + ` item(s)`) )))';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCompact) Or Integer(EXLISTLib_TLB.exFilterBarShowCloseIfRequired) Or Integer(EXLISTLib_TLB.exFilterBarSingleLine) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	FilterBarPromptType := EXLISTLib_TLB.exFilterPromptContainsAny;
	with ConditionalFormats do
	begin
		Add('%0 like `*AA*`','aa').BackColor := $c0c0c0;
		with Add('%0 like `*D*`','d') do
		begin
			ForeColor := $8080ff;
			ApplyTo := EXLISTLib_TLB.exFormatToColumns;
		end;
		with Add('%0 like `*b*`','b') do
		begin
			ForeColor := $ff0000;
			Bold := True;
			Italic := True;
			ApplyTo := EXLISTLib_TLB.exFormatToColumns;
		end;
	end;
	with Columns do
	begin
		with (IUnknown(Add('Value')) as EXLISTLib_TLB.Column) do
		begin
			Width := 128;
			HTMLCaption := '<b>VA</b><r>sko';
		end;
		with (IUnknown(Add('APos')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 apos ``';
			AllowSort := False;
			Def[EXLISTLib_TLB.exCellBackColor] := OleVariant(15790320);
			Def[EXLISTLib_TLB.exCellForeColor] := OleVariant(8421504);
			Def[EXLISTLib_TLB.exHeaderForeColor] := Def[EXLISTLib_TLB.exCellForeColor];
			Position := 0;
		end;
		with (IUnknown(Add('RPos')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 rpos ``';
			AllowSort := False;
			Position := 1;
		end;
		with (IUnknown(Add('Index')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 index ``';
			DisplayFilterButton := True;
			FilterList := EXLISTLib_TLB.exShowCheckBox;
			Position := 2;
		end;
		with (IUnknown(Add('Data 1')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 index `A-Z`';
			Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		end;
		with (IUnknown(Add('Data 2')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 index `AB` replace `A` with `<off -4>A</off>`';
			Def[EXLISTLib_TLB.exCellSingleLine] := OleVariant(False);
			Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
			Def[EXLISTLib_TLB.exCellHasRadioButton] := OleVariant(True);
		end;
		with (IUnknown(Add('Data 3')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 index `CDC` replace `D` with `<b>D</b>`';
			Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
		end;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
		CellState[2,OleVariant(4)] := 1;
		Add('Item AA');
		Add('Item BB');
		Add('Item CC');
		CellState[5,OleVariant(5)] := 1;
		Add('Item D');
		Add('Item EE');
		Add('Item FFF');
	end;
	EndUpdate();
	sFile := 'c:/temp/export.html';
	Export(OleVariant(sFile),'vis');
	with (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('InternetExplorer.Application'))) as SHDocVw_TLB.ShellBrowserWindow) do
	begin
		Navigate2(sFile,Null,Null,Null,Null);
	end;
end
532
Export Data in CSV format

with List1 do
begin
	BeginUpdate();
	BackColorAlternate := RGB(240,240,240);
	DrawGridLines := EXLISTLib_TLB.exAllLines;
	HeaderAppearance := EXLISTLib_TLB.Etched;
	Description[EXLISTLib_TLB.exFilterBarAnd] := FormatABC('`<fgcolor=808080> ` + value + ` </fgcolor>`',OleVariant(Description[EXLISTLib_TLB.exFilterBarAnd]),Null,Null);
	FilterBarCaption := '(( ( value replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `' + 
	'[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( match' + 
	'itemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcoun' + 
	't + ` item(s)`) )))';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCompact) Or Integer(EXLISTLib_TLB.exFilterBarShowCloseIfRequired) Or Integer(EXLISTLib_TLB.exFilterBarSingleLine) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	FilterBarPromptType := EXLISTLib_TLB.exFilterPromptContainsAny;
	with ConditionalFormats do
	begin
		Add('%0 like `*AA*`','aa').BackColor := $c0c0c0;
		with Add('%0 like `*D*`','d') do
		begin
			ForeColor := $8080ff;
			ApplyTo := EXLISTLib_TLB.exFormatToColumns;
		end;
		with Add('%0 like `*b*`','b') do
		begin
			ForeColor := $ff0000;
			Bold := True;
			Italic := True;
			ApplyTo := EXLISTLib_TLB.exFormatToColumns;
		end;
	end;
	with Columns do
	begin
		with (IUnknown(Add('Value')) as EXLISTLib_TLB.Column) do
		begin
			Width := 128;
			HTMLCaption := '<b>VA</b><r>sko';
		end;
		with (IUnknown(Add('APos')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 apos ``';
			AllowSort := False;
			Def[EXLISTLib_TLB.exCellBackColor] := OleVariant(15790320);
			Def[EXLISTLib_TLB.exCellForeColor] := OleVariant(8421504);
			Def[EXLISTLib_TLB.exHeaderForeColor] := Def[EXLISTLib_TLB.exCellForeColor];
			Position := 0;
		end;
		with (IUnknown(Add('RPos')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 rpos ``';
			AllowSort := False;
			Position := 1;
		end;
		with (IUnknown(Add('Index')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 index ``';
			DisplayFilterButton := True;
			FilterList := EXLISTLib_TLB.exShowCheckBox;
			Position := 2;
		end;
		with (IUnknown(Add('Data 1')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 index `A-Z`';
			Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		end;
		with (IUnknown(Add('Data 2')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 index `AB` replace `A` with `<off -4>A</off>`';
			Def[EXLISTLib_TLB.exCellSingleLine] := OleVariant(False);
			Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
			Def[EXLISTLib_TLB.exCellHasRadioButton] := OleVariant(True);
		end;
		with (IUnknown(Add('Data 3')) as EXLISTLib_TLB.Column) do
		begin
			FormatColumn := '0 index `CDC` replace `D` with `<b>D</b>`';
			Def[EXLISTLib_TLB.exCaptionFormat] := OleVariant(1);
		end;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
		CellState[2,OleVariant(4)] := 1;
		Add('Item AA');
		Add('Item BB');
		Add('Item CC');
		CellState[5,OleVariant(5)] := 1;
		Add('Item D');
		Add('Item EE');
		Add('Item FFF');
	end;
	EndUpdate();
	OutputDebugString( Export('','vis') );
end
531
How can I get the icon from the cell when using the Items.CellImages property (icon index)

// MouseMove event - Occurs when the user moves the mouse.
procedure TForm1.List1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer);
begin
	with List1 do
	begin
		i := ItemFromPoint[-1,-1,c,hit];
		OutputDebugString( FormatABC('( 0x44 = ( value bitand 0x44 ) ) ? ( ( (value bitand 0xFFFF0000) bitshift 16 ) array B split `,` )  : `no image`',OleVariant(hit),Items.CellImages[i,OleVariant(c)],Null) );
	end
end;

with List1 do
begin
	BeginUpdate();
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	Columns.Add('Default');
	with Items do
	begin
		CellImages[Add('Item 1'),OleVariant(0)] := '3,2,1';
		CellImages[Add('Item 2'),OleVariant(0)] := '2,3';
		CellImages[Add('Item 3'),OleVariant(0)] := '2,';
	end;
	EndUpdate();
end
530
How can I get the icon from the cell when using the Items.CellImages property (icon position within the cell)

// MouseMove event - Occurs when the user moves the mouse.
procedure TForm1.List1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer);
begin
	with List1 do
	begin
		i := ItemFromPoint[-1,-1,c,hit];
		OutputDebugString( FormatABC('( 0x44 = ( value bitand 0x44 ) ) ? 1 + ( (value bitand 0xFFFF0000) bitshift 16 ) : `no image`',OleVariant(hit),Null,Null) );
	end
end;

with List1 do
begin
	BeginUpdate();
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	Columns.Add('Default');
	with Items do
	begin
		CellImages[Add('Item 1'),OleVariant(0)] := '3,2,1';
		CellImages[Add('Item 2'),OleVariant(0)] := '2,3';
		CellImages[Add('Item 3'),OleVariant(0)] := '2';
	end;
	EndUpdate();
end
529
How can I get the index of icon from the cell, if using the CellImages property
// MouseMove event - Occurs when the user moves the mouse.
procedure TForm1.List1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer);
begin
	with List1 do
	begin
		i := ItemFromPoint[-1,-1,c,hit];
		OutputDebugString( FormatABC('( 0x44 = ( value bitand 0x44 ) ) ? 1 + ( (value bitand 0xFFFF0000) bitshift 16 ) : `no image`',OleVariant(hit),Null,Null) );
	end
end;

with List1 do
begin
	BeginUpdate();
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	Columns.Add('Default');
	with Items do
	begin
		CellImages[Add('Item 1'),OleVariant(0)] := '1,2,3';
		CellImages[Add('Item 2'),OleVariant(0)] := '2,3,1';
		CellImages[Add('Item 3'),OleVariant(0)] := '3,2,1';
	end;
	EndUpdate();
end
528
Is it possible to change the visual appearance of the position signs when user changes the column's position by drag and drop

with List1 do
begin
	BeginUpdate();
	HeaderAppearance := EXLISTLib_TLB.Etched;
	with Columns do
	begin
		Add('Column 1');
		Add('Column 2');
		Add('Column 3');
	end;
	with VisualAppearance do
	begin
		Add(1,'gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADKMA4SOKIZhrE4bBhGaQRUgyI43RhHUBzVI' + 
	'UcQvE6TZRHCQYHgkNIhDJIM7TPLkeSVJaTIRoKhJUogApQThTMgVRDEThkGoSa6soSoYTDBKybLrSLKagOT5YUDKUqSdKEZRpEq1YztWbaQoCUoqVRRVIWfbNd4JJa4a' + 
	'DhWpYdpeeY5R7bWLgBYVVABL7LLRsSxpHxPF6RXxaeI3GKsaS8G6ic6nPQMHj7I4NS5pUa6Rh2VYNSa8AAtETRYznOw4bTMXAjNIea5bAYIIR5HIoDzVbQcCQAHL9DBe' + 
	'EMIQEEISgGhMGZQmocgymoYRRCIEQ0G2HYBnEIBig4V4zCQGINnmagCECY43medZ6H2Pw/g+X5fnueh/h+R5+AKABfkMWgGgGYA4AICoCGCE5WA4CphACMgSD2IRIDIB' + 
	'ICmEd5YGCBpRjGBgegWIYIgWdgoGIRQsiKCZiAiJZ0gGQI4jUS4LECOAiBmDJflGfg2BSY4Al4OhGkOCJ2DgFJjGGfgqgiH5Ch4RhGkqOQmEOEpkFkHQYhJRYyESAokG' + 
	'KHhIhKIxJEmf4VGUeRGFmF5iBkchPhYJQ5GoYIZg6Ug6GoFYmkmNhuhulRGHKGoImefh0BUZ4JmYeoemeSZ2H6HQmgoBgXDqXwUAQgI=');
		Add(2,'CP:1 0 -36 0 0');
	end;
	Background[EXLISTLib_TLB.exColumnsPositionSign] := $2000000;
	EndUpdate();
end
527
A black portion is shown while I am using the BackColorAlternate with EBN colors. What can I do
with List1 do
begin
	BeginUpdate();
	ColumnAutoResize := True;
	DefaultItemHeight := 20;
	VisualAppearance.Add(1,'gBFLBCJwBAEHhEJAAEhIDhAxHAxg0HG0Mg4xGI3HMOig3GcJiYAf8jAEhhUnAAyhEqg8hk0oAsIjgAiAwmYxGA4mYzGwwkI0i0ooUnB0IBMIl1Dg8zmYyGolptPkI1mY' + 
	'1GAll9KoUslNIrVCqNQldShFUstXAVfrVcrlZtVhuFnsUHq1zoczoQGhFBkNpg6zbDykUkhsPHE2h85nc9n8xtVDtlex9Msd2p1YstVq9ux8HyMtzuFz1PsNTzQlv2hh' + 
	'WfkuqpeVuN0q+nvEooN5veSAGpkb/ACcZrvhU3w83nM/poxGuchGpoVBvWgg+8knA4WimnFxI45Er5XOlHMg/Q3XU33W4ew9Wyu11mchDagcO7zus8VDoNBBEIKBpMY6' + 
	'DqOQyokhA/IQIQmwMk4bIQFDcoO6LWgwhQkNcABwEyAB5GwWbet6cRQg3DENQ5D8QxADZvEkAB8nabsURGeBpFM3pwE2AEZRpDx/neZpOR3Dz9oO/r/wCMoZNTBQAQRJ' + 
	'SEwYg8HPGhEIoNCaEwq10gQ2WcRt7LcRxRFpuxUAEURQ3sczBEMgTTG8gN7HpOSEAEiQBAQZpmQ0DibPUFwbKcHwkhQoQtNQNzNEMbABOKDy/DMYQzHLeoPL0OTJSUd0' + 
	'pHcxTewk5zrIygIRPslz4lEngBKIAQivgASs/kLSBTlO00f8t0vGcgUbDlDRjXLCUNRERRvRgAHW2oAICA==');
	(IUnknown(Columns.Add('Default')) as EXLISTLib_TLB.Column).Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
	with (IUnknown(Columns.Add('Position')) as EXLISTLib_TLB.Column) do
	begin
		FormatColumn := '1 rindex ``';
		Visible := False;
	end;
	with ConditionalFormats.Add('%C1 mod 2',Null) do
	begin
		BackColor := $1000000;
	end;
	with Items do
	begin
		Add('Item 1');
		Add('Item 2');
		Add('Item 3');
		Add('Item 4');
	end;
	EndUpdate();
end
526
Is it possible to change the caption from a column without to remove the column and add it with the new caption
with List1 do
begin
	(IUnknown(Columns.Add('ColumnName')) as EXLISTLib_TLB.Column).Caption := 'NewName';
	(IUnknown(Columns.Add('ColumnName')) as EXLISTLib_TLB.Column).HTMLCaption := '<b>New</b>Name';
end
525
FilterBarCaption ALL Keyword ( sample 2, result )

// AddItem event - Occurs after a new Item is inserted to Items collection.
procedure TForm1.List1AddItem(ASender: TObject; Item : Integer);
begin
	// i = FormatABC("value + 1", Items.ItemToIndex(Item))
	with List1 do
	begin
		Items.CellImage[Item,OleVariant(3)] := i;
	end
end;

with List1 do
begin
	BeginUpdate();
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	with (IUnknown(Columns.Add('Col-1')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Col-2')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Check')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		DisplayFilterButton := True;
		DisplayFilterPattern := False;
		FilterType := EXLISTLib_TLB.exCheck;
	end;
	with (IUnknown(Columns.Add('Image')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterType := EXLISTLib_TLB.exImage;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox);
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Caption[Add('Item A'),OleVariant(1)] := 'Sub-Item A';
		h := Add('Item B');
		Caption[h,OleVariant(1)] := 'Sub-Item B';
		CellState[h,OleVariant(2)] := 1;
		Caption[Add('Item C'),OleVariant(1)] := 'Sub-Item C';
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	Description[EXLISTLib_TLB.exFilterBarAnd] := FormatABC('`<fgcolor=808080> ` + value + ` </fgcolor>`',OleVariant(Description[EXLISTLib_TLB.exFilterBarAnd]),Null,Null);
	FilterBarCaption := '(( ( all replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `[<' + 
	's>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( matchit' + 
	'emcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount ' + 
	'+ ` item(s)`) )))';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	Columns.Item[OleVariant(2)].Filter := 1;
	ApplyFilter();
	EndUpdate();
end
524
FilterBarCaption ALL Keyword ( sample 1 )

// AddItem event - Occurs after a new Item is inserted to Items collection.
procedure TForm1.List1AddItem(ASender: TObject; Item : Integer);
begin
	// i = FormatABC("value + 1", Items.ItemToIndex(Item))
	with List1 do
	begin
		Items.CellImage[Item,OleVariant(3)] := i;
	end
end;

with List1 do
begin
	BeginUpdate();
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	with (IUnknown(Columns.Add('Col-1')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Col-2')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Check')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		DisplayFilterButton := True;
		DisplayFilterPattern := False;
		FilterType := EXLISTLib_TLB.exCheck;
	end;
	with (IUnknown(Columns.Add('Image')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterType := EXLISTLib_TLB.exImage;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox);
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Caption[Add('Item A'),OleVariant(1)] := 'Sub-Item A';
		h := Add('Item B');
		Caption[h,OleVariant(1)] := 'Sub-Item B';
		CellState[h,OleVariant(2)] := 1;
		Caption[Add('Item C'),OleVariant(1)] := 'Sub-Item C';
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	Description[EXLISTLib_TLB.exFilterBarAnd] := FormatABC('`<fgcolor=808080> ` + value + ` </fgcolor>`',OleVariant(Description[EXLISTLib_TLB.exFilterBarAnd]),Null,Null);
	FilterBarCaption := 'all';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	Columns.Item[OleVariant(2)].Filter := 1;
	ApplyFilter();
	EndUpdate();
end
523
FilterBarCaption ALLUI Keyword ( sample 2, result )

// AddItem event - Occurs after a new Item is inserted to Items collection.
procedure TForm1.List1AddItem(ASender: TObject; Item : Integer);
begin
	// i = FormatABC("value + 1", Items.ItemToIndex(Item))
	with List1 do
	begin
		Items.CellImage[Item,OleVariant(3)] := i;
	end
end;

with List1 do
begin
	BeginUpdate();
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	with (IUnknown(Columns.Add('Col-1')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Col-2')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Check')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		DisplayFilterButton := True;
		DisplayFilterPattern := False;
		FilterType := EXLISTLib_TLB.exCheck;
	end;
	with (IUnknown(Columns.Add('Image')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterType := EXLISTLib_TLB.exImage;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox);
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Caption[Add('Item A'),OleVariant(1)] := 'Sub-Item A';
		h := Add('Item B');
		Caption[h,OleVariant(1)] := 'Sub-Item B';
		CellState[h,OleVariant(2)] := 1;
		Caption[Add('Item C'),OleVariant(1)] := 'Sub-Item C';
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	Description[EXLISTLib_TLB.exFilterBarAnd] := FormatABC('`<fgcolor=808080> ` + value + ` </fgcolor>`',OleVariant(Description[EXLISTLib_TLB.exFilterBarAnd]),Null,Null);
	FilterBarCaption := '(( ( allui replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `' + 
	'[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` )  + `<r><fgcolor=808080>` + ( match' + 
	'itemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcoun' + 
	't + ` item(s)`) )))';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	Columns.Item[OleVariant(2)].Filter := 1;
	ApplyFilter();
	EndUpdate();
end
522
FilterBarCaption ALLUI Keyword ( sample 1 )
// AddItem event - Occurs after a new Item is inserted to Items collection.
procedure TForm1.List1AddItem(ASender: TObject; Item : Integer);
begin
	// i = FormatABC("value + 1", Items.ItemToIndex(Item))
	with List1 do
	begin
		Items.CellImage[Item,OleVariant(3)] := i;
	end
end;

with List1 do
begin
	BeginUpdate();
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	with (IUnknown(Columns.Add('Col-1')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Col-2')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Check')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		DisplayFilterButton := True;
		DisplayFilterPattern := False;
		FilterType := EXLISTLib_TLB.exCheck;
	end;
	with (IUnknown(Columns.Add('Image')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterType := EXLISTLib_TLB.exImage;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox);
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Caption[Add('Item A'),OleVariant(1)] := 'Sub-Item A';
		h := Add('Item B');
		Caption[h,OleVariant(1)] := 'Sub-Item B';
		CellState[h,OleVariant(2)] := 1;
		Caption[Add('Item C'),OleVariant(1)] := 'Sub-Item C';
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	Description[EXLISTLib_TLB.exFilterBarAnd] := FormatABC('`<fgcolor=808080> ` + value + ` </fgcolor>`',OleVariant(Description[EXLISTLib_TLB.exFilterBarAnd]),Null,Null);
	FilterBarCaption := 'allui';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	Columns.Item[OleVariant(2)].Filter := 1;
	ApplyFilter();
	EndUpdate();
end
521
FilterBarCaption AVAILABLE Keyword ( sample 2, result )

// AddItem event - Occurs after a new Item is inserted to Items collection.
procedure TForm1.List1AddItem(ASender: TObject; Item : Integer);
begin
	// i = FormatABC("value + 1", Items.ItemToIndex(Item))
	with List1 do
	begin
		Items.CellImage[Item,OleVariant(3)] := i;
	end
end;

with List1 do
begin
	BeginUpdate();
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	with (IUnknown(Columns.Add('Col-1')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Col-2')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Check')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		DisplayFilterButton := True;
		DisplayFilterPattern := False;
		FilterType := EXLISTLib_TLB.exCheck;
	end;
	with (IUnknown(Columns.Add('Image')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterType := EXLISTLib_TLB.exImage;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox);
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Caption[Add('Item A'),OleVariant(1)] := 'Sub-Item A';
		h := Add('Item B');
		Caption[h,OleVariant(1)] := 'Sub-Item B';
		CellState[h,OleVariant(2)] := 1;
		Caption[Add('Item C'),OleVariant(1)] := 'Sub-Item C';
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	Description[EXLISTLib_TLB.exFilterBarAnd] := FormatABC('`<fgcolor=808080> ` + value + ` </fgcolor>`',OleVariant(Description[EXLISTLib_TLB.exFilterBarAnd]),Null,Null);
	FilterBarCaption := '(( ( value replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>` ) + ` ` + ( avai' + 
	'lable replace `[` with `<bgcolor=C0C0C0><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>` replace `<s>` with ``' + 
	' replace `</s>` with `` ) + `<fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount ' + 
	'+ 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount + ` item(s)`) )))';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	Columns.Item[OleVariant(2)].Filter := 1;
	ApplyFilter();
	EndUpdate();
end
520
FilterBarCaption AVAILABLE Keyword ( sample 1 )

// AddItem event - Occurs after a new Item is inserted to Items collection.
procedure TForm1.List1AddItem(ASender: TObject; Item : Integer);
begin
	// i = FormatABC("value + 1", Items.ItemToIndex(Item))
	with List1 do
	begin
		Items.CellImage[Item,OleVariant(3)] := i;
	end
end;

with List1 do
begin
	BeginUpdate();
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	with (IUnknown(Columns.Add('Col-1')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Col-2')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Check')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		DisplayFilterButton := True;
		DisplayFilterPattern := False;
		FilterType := EXLISTLib_TLB.exCheck;
	end;
	with (IUnknown(Columns.Add('Image')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterType := EXLISTLib_TLB.exImage;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox);
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Caption[Add('Item A'),OleVariant(1)] := 'Sub-Item A';
		h := Add('Item B');
		Caption[h,OleVariant(1)] := 'Sub-Item B';
		CellState[h,OleVariant(2)] := 1;
		Caption[Add('Item C'),OleVariant(1)] := 'Sub-Item C';
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	Description[EXLISTLib_TLB.exFilterBarAnd] := FormatABC('`<fgcolor=808080> ` + value + ` </fgcolor>`',OleVariant(Description[EXLISTLib_TLB.exFilterBarAnd]),Null,Null);
	FilterBarCaption := 'value + ` ` + available';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	Columns.Item[OleVariant(2)].Filter := 1;
	ApplyFilter();
	EndUpdate();
end
519
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 3, results )

with List1 do
begin
	BeginUpdate();
	with (IUnknown(Columns.Add('Col-1')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Col-2')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Caption[Add('Item A'),OleVariant(1)] := 'Sub-Item A';
		Caption[Add('Item B'),OleVariant(1)] := 'Sub-Item B';
		Caption[Add('Item C'),OleVariant(1)] := 'Sub-Item C';
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	Description[EXLISTLib_TLB.exFilterBarAnd] := FormatABC('`<fgcolor=808080>` + value + `</fgcolor>`',OleVariant(Description[EXLISTLib_TLB.exFilterBarAnd]),Null,Null);
	FilterBarCaption := '(`<b>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ' + 
	'` result(s)` ) : (`<fgcolor=808080>`+ itemcount + ` item(s)`) )) replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace' + 
	' `]` with ` </b></bgcolor></fgcolor>`';
	FilterBarPromptVisible := EXLISTLib_TLB.exFilterBarToggle;
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	with Columns.Item[OleVariant(1)] do
	begin
		FilterType := EXLISTLib_TLB.exPattern;
		Filter := '*B';
	end;
	ApplyFilter();
	EndUpdate();
end
518
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 2 )

with List1 do
begin
	BeginUpdate();
	with (IUnknown(Columns.Add('Col-1')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Col-2')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Caption[Add('Item A'),OleVariant(1)] := 'Sub-Item A';
		Caption[Add('Item B'),OleVariant(1)] := 'Sub-Item B';
		Caption[Add('Item C'),OleVariant(1)] := 'Sub-Item C';
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	Description[EXLISTLib_TLB.exFilterBarAnd] := FormatABC('`<fgcolor=808080>` + value + `</fgcolor>`',OleVariant(Description[EXLISTLib_TLB.exFilterBarAnd]),Null,Null);
	FilterBarCaption := 'value replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>`';
	FilterBarPromptVisible := EXLISTLib_TLB.exFilterBarToggle;
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	with Columns.Item[OleVariant(1)] do
	begin
		FilterType := EXLISTLib_TLB.exPattern;
		Filter := '*B';
	end;
	ApplyFilter();
	EndUpdate();
end
517
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 1 )

with List1 do
begin
	BeginUpdate();
	with (IUnknown(Columns.Add('Col-1')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Col-2')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Caption[Add('Item A'),OleVariant(1)] := 'Sub-Item A';
		Caption[Add('Item B'),OleVariant(1)] := 'Sub-Item B';
		Caption[Add('Item C'),OleVariant(1)] := 'Sub-Item C';
	end;
	Description[EXLISTLib_TLB.exFilterBarAnd] := FormatABC('`<fgcolor=808080>` + value + `</fgcolor>`',OleVariant(Description[EXLISTLib_TLB.exFilterBarAnd]),Null,Null);
	FilterBarCaption := 'value replace `[` with `<fgcolor=808080>[` replace `]` with `]</fgcolor>`';
	FilterBarPromptVisible := EXLISTLib_TLB.exFilterBarToggle;
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	with Columns.Item[OleVariant(1)] do
	begin
		FilterType := EXLISTLib_TLB.exPattern;
		Filter := '*B';
	end;
	ApplyFilter();
	EndUpdate();
end
516
Is it possible to automatically displays the control's filter label to the right

with List1 do
begin
	BeginUpdate();
	with (IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarCaption := '`<r>` + value';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarShowCloseOnRight) Or Integer(EXLISTLib_TLB.exFilterBarToggle);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item B';
	end;
	ApplyFilter();
	EndUpdate();
end
515
How can I get the number of results/items being shown in the control's filter bar (sample 4)

with List1 do
begin
	BeginUpdate();
	with (IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column) do
	begin
		DisplayFilterButton := True;
		FilterList := Integer(EXLISTLib_TLB.exShowExclude) Or Integer(EXLISTLib_TLB.exShowFocusItem) Or Integer(EXLISTLib_TLB.exShowCheckBox) Or Integer(EXLISTLib_TLB.exSortItemsAsc);
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	FilterBarPrompt := FormatABC('`<b>` + value',OleVariant(FilterBarPrompt),Null,Null);
	FilterBarCaption := '`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount +' + 
	' 1) + ` result(s)` ) : (`<fgcolor=808080>`+ itemcount + ` item(s)`) )';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCompact) Or Integer(EXLISTLib_TLB.exFilterBarShowCloseOnRight) Or Integer(EXLISTLib_TLB.exFilterBarShowCloseIfRequired) Or Integer(EXLISTLib_TLB.exFilterBarCaptionVisible) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	EndUpdate();
end
514
How can I get the number of results being shown in the control's filter bar (sample 3)

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	FilterBarCaption := '`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount +' + 
	' 1) + ` result(s)` ) : ``)';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCompact) Or Integer(EXLISTLib_TLB.exFilterBarCaptionVisible) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	ApplyFilter();
	EndUpdate();
end
513
How can I get the number of results being shown in the control's filter bar (sample 2, compact)

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	FilterBarCaption := '`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? `<off -4> ` + abs(matchitemcount + 1) + ` result(s)` : ``)';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCompact) Or Integer(EXLISTLib_TLB.exFilterBarSingleLine) Or Integer(EXLISTLib_TLB.exFilterBarCaptionVisible) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	ApplyFilter();
	EndUpdate();
end
512
How can I get the number of results being shown in the control's filter bar (sample 1)

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	FilterBarCaption := '`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? abs(matchitemcount + 1) + ` result(s)` : ``)';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCaptionVisible) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	ApplyFilter();
	EndUpdate();
end
511
FilterBarCaption Predefined Keywords

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Check')) as EXLISTLib_TLB.Column) do
	begin
		Def[EXLISTLib_TLB.exCellHasCheckBox] := OleVariant(True);
		DisplayFilterButton := True;
		DisplayFilterPattern := False;
		FilterType := EXLISTLib_TLB.exCheck;
	end;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	FilterBarCaption := '`<fgcolor=0000FF><i>value/current</i></fgcolor>: <fgcolor=808080>` + value + `</fgcolor>` + `<br><fgcolor=0000FF><i>available</i' + 
	'></fgcolor>: ` + available + `<br><fgcolor=0000FF><i>allui</i></fgcolor>: ` + allui + `<br><fgcolor=0000FF><i>all</i></fgcolor>:' + 
	' ` + all + `<br><fgcolor=0000FF><i>itemcount</i></fgcolor>: <fgcolor=808080>` + itemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><' + 
	'i>visibleitemcount</i></fgcolor>: <fgcolor=808080>` + visibleitemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><i>matchitemcount</i' + 
	'></fgcolor>: <fgcolor=808080>` + matchitemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><i>promptpattern</i></fgcolor>: <fgcolor=80' + 
	'8080>` + promptpattern + `</fgcolor>`';
	FilterBarPromptPattern := 'B';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCaptionVisible) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	ApplyFilter();
	EndUpdate();
end
510
I am using filter prompt feature, and also column's filter, just wondering if possible to compact displaying the filter bar so it won't show on multiple lines

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarFont := (IUnknown(Font) as stdole_TLB.StdFont);
	FilterBarCaption := '`<r><i><fgcolor=808080><upline><solidline><sha ;;0>` + value';
	FilterBarPromptPattern := 'B';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCompact) Or Integer(EXLISTLib_TLB.exFilterBarSingleLine) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	ApplyFilter();
	EndUpdate();
end
509
Just wondering if it is possible to show the filter bar's close button on the right ( sample 2 )

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarShowCloseOnRight) Or Integer(EXLISTLib_TLB.exFilterBarToggle) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	FilterBarPrompt := FormatABC('`<r>` + value',OleVariant(FilterBarPrompt),Null,Null);
	EndUpdate();
end
508
Just wondering if it is possible to show the filter bar's close button on the right ( sample 1 )

with List1 do
begin
	BeginUpdate();
	RightToLeft := True;
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarToggle) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	EndUpdate();
end
507
How can I change the visual appearance of the filter bar's close button (EBN)

with List1 do
begin
	BeginUpdate();
	with VisualAppearance do
	begin
		Add(1,'gBFLBCJwBAEHhEJAAEhABHQDg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLOg7IJj' + 
	'yI4/SJAYCydKAWhxIaZKJHCZoEDaTAADCNVAQp6MEIJVbVEI0e79OgBLp/Z7kECIJJAaRjHQdJxGLA8EhtCQhCZteK6SgMKJYXhWQYRXI1JwvMBrWrdQjiOYELQtMKmS' + 
	'ZNLYGG4dR5SVJbcYhSYsRRFMoyDIOXYDLKsdYqSpXIThObEGgaPqJYjsUjCMKnR7HVIURrBPC9TBPE69ZgmC6ucKPX51ShKFaBWDZcwFAS+UBuYCAILiEAQGZ1XT8ORO' + 
	'icbgJgSTJRlCaZeDsHY7QGR4xkSYp3CaExZAQMgalQYAwjCAAfBANxcA2TgKAUOpDCGFhKg0RpXCwCwDHQHQHEyAIkCkOhbFOGA8A8DohBgRg9AccZcn8EpEjMLI2C2D' + 
	'YxAgQgvAIUIVkoAAPBQDJlECTZ3CCYwDACQwUA8A5MCAWAWDiQi4l8aQOEgLJuBgBgDmYFAzEoIoIl0WALgKYJbBABADAAHgHg8VAMmqCQQDMXABAATYwTmNwBDATJXA' + 
	'iAgjHmNQ5lgQ5QEQEQMmcWg/GwD5ylyNw2gMcJcjsBgBgOQQDDhRpVAMMwnDBFw1B0Ax8D0DxOmmJJIGQTY5hGMAwkwM4CAYLZAmAOJnAqAojiIGg6iieYkmeAYOHaKJ' + 
	'DCyCwjH6AoggsQpQliAJLhgaJ0CESBTnyDwjk+cg4g4P5IHIHJ+BWRRzlYWAxiOUxihsY4KjKLJRGqC44FCegkkkM58iAKAPnIWIWD8SRSFSfQnkmewUhYP4GiGKJ7G0' + 
	'TIbCSUoggqUo0lAQ4LnEcBcD8Coiiif4nE+eAAn2HpOkcFJqi4T5SkyMw/kqQown8IBIBOdA+A+DJrBqVxXEqYo4lCApLhGHBnD8S4ymyfxmg+cwQkQP5egOUZIWoEAk' + 
	'jIeIPBMBJBD+TBjBifwvkuc58hQJQPmFrYykkchclSApKjGOBuD+TRDFCfw3mmIxNi8FxFlOXhVC4aYDFyPgvg2YBcBcLZGCGCJ0DSLRzGSWQ/lmY5+mEP5gmMDBZRSM' + 
	'RsFsOxMhMJJ/DsTpTnwaQaE+N5ojuNhdEYNI5C4TZJO1GRDmCaxnA2Yx4n8IpIjOTBQBQC5TgyYw7gUYRYikC0BYRwsDQBoB8eA6Q2hsE0BUXgywZtYCyHMKwnxSAhAQ' + 
	'HkIQhRrBaDsCwA4ERiB2EWAIYIXhhiVEgAEUYwwYjyASLge4FhHgRDkM8OQih0jWPkGgBBAQ');
	end;
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarToggle) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	Background[EXLISTLib_TLB.exFooterFilterBarButton] := $1000000;
	EndUpdate();
end
506
How can I change the visual appearance of the filter bar's close button (solid)

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarPromptVisible := EXLISTLib_TLB.exFilterBarPromptVisible;
	Background[EXLISTLib_TLB.exFooterFilterBarButton] := $ff;
	EndUpdate();
end
505
Is it possible to prevent definitely showing the filter bar's close button

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarPromptVisible := EXLISTLib_TLB.exFilterBarPromptVisible;
	Background[EXLISTLib_TLB.exFooterFilterBarButton] := $ffffffff;
	EndUpdate();
end
504
Is it possible to show the close button only if there is a filter applied

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarShowCloseIfRequired) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	EndUpdate();
end
503
The control's filter bar is not closed once I click the close button (toggle)

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarCaption := '`<r><fgcolor=808080>` + value';
	FilterBarPromptPattern := 'B';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCompact) Or Integer(EXLISTLib_TLB.exFilterBarToggle) Or Integer(EXLISTLib_TLB.exFilterBarSingleLine) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item B';
	end;
	ApplyFilter();
	EndUpdate();
end
502
How can I display the control's filter on a single line

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarCaption := 'len(value) ? `filter for: <fgcolor 808080>` + value  : `<fgcolor 808080>no filter`';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarSingleLine) Or Integer(EXLISTLib_TLB.exFilterBarVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	ApplyFilter();
	EndUpdate();
end
501
How can I display the control's filter on a single line (prompt-combined)

with List1 do
begin
	BeginUpdate();
	(IUnknown(Columns.Add('Item')) as EXLISTLib_TLB.Column).DisplayFilterButton := True;
	with (IUnknown(Columns.Add('Pos')) as EXLISTLib_TLB.Column) do
	begin
		AllowSizing := False;
		AllowSort := False;
		Width := 32;
		FormatColumn := '1 apos ``';
		Position := 0;
	end;
	with Items do
	begin
		Add('Item A');
		Add('Item B');
		Add('Item C');
	end;
	FilterBarCaption := '`<r>` + value';
	FilterBarPromptVisible := Integer(EXLISTLib_TLB.exFilterBarCompact) Or Integer(EXLISTLib_TLB.exFilterBarSingleLine) Or Integer(EXLISTLib_TLB.exFilterBarVisible) Or Integer(EXLISTLib_TLB.exFilterBarPromptVisible);
	with Columns.Item[OleVariant(0)] do
	begin
		FilterType := EXLISTLib_TLB.exFilter;
		Filter := 'Item A|Item B';
	end;
	ApplyFilter();
	EndUpdate();
end