Hi Yogi
// Draw a box around all selected layers
// Note: To prevent the default selection box being drawn, create an empty OnDrawLayerBox event
procedure Tfmain.ImageEnView1DrawBackBuffer(Sender: TObject);
var
cab: TRect;
i, minX, minY, maxX, maxY : Integer;
begin
minX := MAXINT;
minY := MAXINT;
maxX := 0;
maxY := 0;
for I := 0 to ImageEnView1.LayersCount - 1 do
if ImageEnView1.Layers[ i ].Selected then
begin
cab := ImageEnView1.Layers[i].ClientAreaBox;
minX := imin( minX, cab.Left );
minY := imin( minY, cab.Top );
maxX := imax( maxX, cab.Right );
maxY := imax( maxY, cab.Bottom );
end;
// a green line
if minX < MAXINT then
with ImageEnView1.BackBuffer.Canvas do
begin
Pen.Style := psSolid;
Pen.Width := 2;
Pen.mode := pmCopy;
Pen.Color := clGreen;
Brush.Style := bsClear;
Rectangle( minX - 1, minY - 1, maxX + 1, maxY + 1 );
end;
end;
Nigel
Xequte Software
www.imageen.com