Предложения в Fr5
Очередной раз предлагаю облегчить нам (пользователям) жизнь: добавить в дизайнер 2 кнопки -
расположить выделенные объекты один рядом с другим и сделать объект по ширине как остальные выделенные. При каждом новом релизе приходится вносить измнения.
расположить выделенные объекты один рядом с другим и сделать объект по ширине как остальные выделенные. При каждом новом релизе приходится вносить измнения.
function TfrxDesignerForm.FindMinLeft(var aMv:array of TfrxView;tNo:TfrxComponent):TfrxView;
var i:integer;
lf:double;
t: TfrxView;
function FindInaMv(aMv:array of TfrxView;n:TfrxView):boolean;
var i:integer;
begin
Result:=false;
for i:=0 to High(aMv) do
if aMv[i]=n then
begin
Result:=true;
EXIT;
end;
end;
begin
Result:=NIL;
lf:=9999999;
for i := 0 to FSelectedObjects.Count - 1 do
begin
t := FSelectedObjects[i];
if not (rfDontMove in t.Restrictions)and (t<>tNo) and
(lf>TMfrxView(t).left) and not FindInaMv(aMv,t) then
begin
Result:=t;
lf:=TMfrxView(t).left;
end;
end;
end;
procedure TfrxDesignerForm.acSidebySideExecute(Sender: TObject); // рядом друг с другом
var w:double;
aMv:array of TfrxView;
t: TfrxView;
begin
if (FSelectedObjects.Count < 2) then Exit;
// BeforeChange;
w:=0;
SetLength(aMv,0);
t:=TfrxView(55);
while (t<>NIL) do
begin
t:=FindMinLeft(aMv,nil);
if (t<>NIL) then
with TMfrxView(t) do
begin
left:=w;
w:=w+TMfrxView(t).width;
SetLength(aMv,High(aMv)+2);
aMv[High(aMv)]:=t;
end;
end;
Modified := True;
end;
procedure TfrxDesignerForm.acW_WWExecute(Sender: TObject); // ширина последнего выделенного= сумма других выделенных
var
i: Integer;
c0: TfrxComponent;
x:Double;
aMv:array of TfrxView;
begin
if FSelectedObjects.Count < 2 then Exit;
c0 := FSelectedObjects[FSelectedObjects.Count-1];
if (rfDontSize in c0.Restrictions) then exit;
x:=0;
for i := 0 to FSelectedObjects.Count - 2 do
x:=x+TfrxComponent(FSelectedObjects[i]).width;
c0.width:=x;
c0.left:=TfrxComponent(FindMinLeft(amv,c0)).left ;
Modified := True;
end;
Комментарии
Пожалуйста, сделайте функции чтобы можно было сжимать несколько файлов в один ZIP файл и чтобы потом этот файл успешно открывался в WinRar! (а также декомпресионную функцию таких файлов).
Кстати может стоит перейти на GZip 1.2.4?