mirror of
http://gitlab.expertsoft.com.ua/git/expertcad
synced 2026-01-11 22:45:39 +02:00
157 lines
4.0 KiB
ObjectPascal
157 lines
4.0 KiB
ObjectPascal
unit U_ArchNicheParams;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, StdCtrls,
|
||
U_BaseCommon, U_BaseConstants, U_ArchCommon, RzButton, ExtCtrls, RzPanel,
|
||
siComp, siLngLnk, Mask, RzEdit;
|
||
|
||
type
|
||
TF_ArchNicheParams = class(TForm)
|
||
pnOkCancel: TRzPanel;
|
||
btOk: TRzBitBtn;
|
||
btCancel: TRzBitBtn;
|
||
lng_Forms: TsiLangLinked;
|
||
RzPanel1: TRzPanel;
|
||
lbCoordz: TLabel;
|
||
lbWidth: TLabel;
|
||
lbHeight: TLabel;
|
||
fCoordz: TRzNumericEdit;
|
||
fWidth: TRzNumericEdit;
|
||
fHeight: TRzNumericEdit;
|
||
lbDepth: TLabel;
|
||
fDepth: TRzNumericEdit;
|
||
procedure FormCreate(Sender: TObject);
|
||
procedure FormDestroy(Sender: TObject);
|
||
procedure pnOkCancelResize(Sender: TObject);
|
||
|
||
private
|
||
GForm: TForm;
|
||
FPropsUOM: TStringList;
|
||
FType: Integer;
|
||
|
||
procedure SetCaptions;
|
||
procedure SetControls;
|
||
public
|
||
Constructor Create(AOwner: TComponent; AForm: TForm);
|
||
Destructor Destroy; override;
|
||
|
||
function Execute(AType: Integer; AArchWndInfo: TComponent): TArchNicheInfo;
|
||
published
|
||
property PropMainForm: TForm read GForm;
|
||
property PropsUOM: TStringList read FPropsUOM;
|
||
end;
|
||
|
||
function ShowArchNicheParams(AType: Integer; AArchWndInfo: TComponent): TArchNicheInfo;
|
||
|
||
var
|
||
F_ArchNicheParams: TF_ArchNicheParams;
|
||
|
||
implementation
|
||
Uses U_Main;
|
||
|
||
{$R *.dfm}
|
||
|
||
constructor TF_ArchNicheParams.Create(AOwner: TComponent; AForm: TForm);
|
||
begin
|
||
GForm := AForm;
|
||
inherited Create(AOwner);
|
||
end;
|
||
|
||
destructor TF_ArchNicheParams.Destroy;
|
||
begin
|
||
inherited;
|
||
end;
|
||
|
||
function TF_ArchNicheParams.Execute(AType: Integer; AArchWndInfo: TComponent): TArchNicheInfo;
|
||
var
|
||
NicheInfo: TArchNicheInfo;
|
||
begin
|
||
Result := nil;
|
||
FType := AType;
|
||
|
||
SetCaptions;
|
||
SetControls;
|
||
|
||
NicheInfo := TArchNicheInfo.Create(nil);
|
||
if AArchWndInfo <> nil then
|
||
NicheInfo.Assign(AArchWndInfo)
|
||
else
|
||
begin
|
||
if LoadArchObjDefaultParams(NicheInfo, AType) = nil then
|
||
begin
|
||
NicheInfo.Height := 2.0;
|
||
NicheInfo.Width := 1;
|
||
NicheInfo.Depth := 0.1;
|
||
end;
|
||
end;
|
||
|
||
ObjectPropsToForm(NicheInfo, Self);
|
||
NicheInfo.Free;
|
||
|
||
if ShowModal = mrOk then
|
||
begin
|
||
Result := TArchNicheInfo.Create(nil);
|
||
ObjectPropsFromForm(Result, Self);
|
||
|
||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
SetArchObjToDefaultParams(Result, AType);
|
||
end;
|
||
end;
|
||
|
||
procedure TF_ArchNicheParams.SetCaptions;
|
||
begin
|
||
if FType = ctArhNiche then
|
||
Caption := cArchNicheParams_Msg01
|
||
else if FType = ctArhArc then
|
||
Caption := cArchNicheParams_Msg02;
|
||
|
||
//lbWidth.Caption := cArchParams_Msg02 +', '+ GetNameUOM(TF_Main(GForm).FUOM, true);
|
||
//lbHeight.Caption := cArchParams_Msg06 +', '+ GetNameUOM(TF_Main(GForm).FUOM, true);
|
||
//lbCoordz.Caption := cArchParams_Msg05 +', '+ GetNameUOM(TF_Main(GForm).FUOM, true);
|
||
//lbDepth.Caption := cArchParams_Msg07 +', '+ GetNameUOM(TF_Main(GForm).FUOM, true);
|
||
//lbLength.Caption := cArchParams_Msg10 +', '+ GetNameUOM(TF_Main(GForm).FUOM, true);
|
||
SetLableCaptions(Self, TF_Main(GForm).FUOM);
|
||
end;
|
||
|
||
procedure TF_ArchNicheParams.SetControls;
|
||
begin
|
||
lbCoordz.Visible := FType = ctArhNiche;
|
||
fCoordz.Visible := lbCoordz.Visible;
|
||
end;
|
||
|
||
procedure TF_ArchNicheParams.FormCreate(Sender: TObject);
|
||
begin
|
||
pnOkCancelResize(pnOkCancel);
|
||
|
||
FPropsUOM := TStringList.Create;
|
||
SetFormControlDisplayFormat(Self);
|
||
end;
|
||
|
||
procedure TF_ArchNicheParams.FormDestroy(Sender: TObject);
|
||
begin
|
||
FPropsUOM.Free;
|
||
end;
|
||
|
||
|
||
function ShowArchNicheParams(AType: Integer; AArchWndInfo: TComponent): TArchNicheInfo;
|
||
begin
|
||
Result := nil;
|
||
try
|
||
if F_ArchNicheParams = nil then
|
||
F_ArchNicheParams := TF_ArchNicheParams.Create(F_ProjMan, F_ProjMan);
|
||
|
||
Result := F_ArchNicheParams.Execute(AType, AArchWndInfo);
|
||
except
|
||
on E: Exception do AddExceptionToLogEx('ShowArchNicheParams', E.Message);
|
||
end;
|
||
end;
|
||
|
||
procedure TF_ArchNicheParams.pnOkCancelResize(Sender: TObject);
|
||
begin
|
||
SetMiddleControlChilds(TControl(Sender), TControl(Self));
|
||
end;
|
||
|
||
end. |