Wp,
Thank you so much for your package! I’m looking forward to leveraging these well-thought-out controls in my apps! Allowing the image list to create grayed versions of the glyph and even recoloring them, now that’s nifty! The ability of the message boxes to center over the app’s main form resolves a minor (yet pesky) pain point I was having with MessageDlg. Granted, I was being lazy, not searching for the solution, but your controls take care of it. The progress and status bars are beautifully designed, too. Overall, a great addition!
One very minor issue with the ButtonsEx project: The compiler expected a resource file that was not found. The problem might be on my end, but I thought I'd mention it.
Concerning TCheckComboBoxEx, I did a drop-in replacement with TCheckComboBox without a hitch. Here are the two methods I used to load and retrieve values from TCheckComboBox, which worked as-is with TCheckComboBoxEx. The only change I introduced was switching the formal param to TCheckComboBoxEx.
I would second the opinions expressed here to include TCheckComboBoxEx into the standard distro. To allay concerns over breaking code, perhaps it would make sense to add it to the Additional Palette and flag TCheckComboBox as deprecated for a few releases before retiring it completely?
In all cases, thank you for your great package! It's what I was looking for.
procedure TFilterEditor.DoLoadCheckComboBox(const ccb: TCheckComboBoxEx; const values: TStringList);
var i: integer;
anItem : String;
b : Boolean;
begin
with ccb do
If Values.Count = 0
then CheckAll(cbUnchecked,{AAllowGrayed =} False, {AAllowDisabled=}False)
else for i := 0 to Items.Count -1 do
begin
anItem := Items[i];
b := Values.IndexOf(anItem) > -1;
Checked[i] := b;
end;
end;
procedure TFilterEditor.DoSaveCheckComboBox(const ccb: TCheckComboBoxEx; const Values: TStringList);
var i: integer;
anItem : String;
b : Boolean;
begin
Values.Clear;
with ccb do
for i := 0 to Items.Count -1 do
begin
b := Checked[i];
If b
then begin
anItem := Items[i];
Values.Add(anItem);
end;
end;
end;