1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
unit KASStatusBar;
{$mode delphi}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ComCtrls;
type
{ TKASStatusBar }
TKASStatusBar = class(TStatusBar)
public
procedure InvalidatePanel(PanelIndex: Integer; PanelParts: TPanelParts); override;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('KASComponents', [TKASStatusBar]);
end;
{ TKASStatusBar }
procedure TKASStatusBar.InvalidatePanel(PanelIndex: Integer; PanelParts: TPanelParts);
begin
if (PanelIndex >= 0) and (ppText in PanelParts) then
begin
if Length(Panels[PanelIndex].Text) > 0 then
Panels[PanelIndex].Width:= Canvas.TextWidth('WW' + Panels[PanelIndex].Text);
end;
inherited InvalidatePanel(PanelIndex, PanelParts);
end;
end.
|