tvplanit: Minor refactoring of unit VpEdElem.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@8509 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
wp_xxyyzz
2022-10-03 17:18:42 +00:00
parent b2991baa90
commit be8de46cce
10 changed files with 77 additions and 53 deletions

View File

@ -381,6 +381,7 @@ resourcestring
RSSaveFileBtn = 'Save file...';
RSNoPrintFormatName = 'Please supply a format name';
RSNoDayIncrement = 'Day increment unit not specified.';
RSPleaseEnterFloat = 'Please enter a valid floating point value.';
RSReportSetup = 'Report setup';

View File

@ -134,7 +134,10 @@ function EvalFmt(Val : Extended) : string;
begin
Result := FormatFloat('0.00', Val);
end;
{=====}
{******************************************************************************}
{* TfrmEditElement *}
{******************************************************************************}
procedure TfrmEditElement.FormCreate(Sender: TObject);
var
i: Integer;
@ -156,24 +159,24 @@ begin
SetCaptions;
end;
{=====}
procedure TfrmEditElement.FormShow(Sender: TObject);
begin
PositionControls;
edName.SetFocus;
end;
{=====}
procedure TfrmEditElement.btnCaptionFontClick(Sender: TObject);
begin
if FontDialog1.Execute then
TheCaption.Font := FontDialog1.Font;
end;
{=====}
procedure TfrmEditElement.btnCancelClick(Sender: TObject);
begin
ModalResult := mrCancel;
end;
{=====}
procedure TfrmEditElement.btnOkClick(Sender: TObject);
begin
if Validate then
@ -184,7 +187,7 @@ begin
Exit;
end;
end;
{=====}
procedure TfrmEditElement.btnShapeClick(Sender: TObject);
var
frmEditShape: TfrmEditShape;
@ -193,12 +196,12 @@ begin
frmEditShape.Execute(TheShape);
frmEditShape.Free;
end;
{=====}
procedure TfrmEditElement.edCaptionTextChange(Sender: TObject);
begin
TheCaption.Caption := edCaptionText.Text;
end;
{=====}
function TfrmEditElement.Execute(AnElement : TVpPrintFormatElementItem) : Boolean;
begin
SetData(AnElement);
@ -206,45 +209,44 @@ begin
if Result then
SaveData(AnElement);
end;
{=====}
procedure TfrmEditElement.PosEditEnter(Sender: TObject);
begin
CurEdit := (Sender as TEdit);
end;
{=====}
procedure TfrmEditElement.PosEditExit(Sender: TObject);
var
ed : TEdit;
Val : Extended;
ed: TEdit;
Val: Extended;
begin
ed := (Sender as TEdit);
try
Val := StrToFloat(ed.Text);
if TryStrToFloat(ed.Text, Val) then
begin
if Val > MaxSpin then begin
ed.Text := EvalFmt(MaxSpin);
end else
if Val < 0.0 then begin
ed.Text := EvalFmt(0);
end;
except
on EConvertError do begin
ShowMessage('Please Enter a Floating Point Value');
ed.SetFocus;
end;
end else
begin
ed.SetFocus;
MessageDlg(RSPleaseEnterFloat, mtError, [mbOK], 0);
end;
end;
{=====}
procedure TfrmEditElement.rgItemTypeClick(Sender: TObject);
begin
SetItemType(rgItemType.ItemIndex);
end;
{=====}
procedure TfrmEditElement.rgMeasurementClick(Sender: TObject);
begin
SetMaxSpin(rgMeasurement.ItemIndex);
end;
{=====}
procedure TfrmEditElement.SaveData(AnElement : TVpPrintFormatElementItem);
procedure TfrmEditElement.SaveData(AnElement: TVpPrintFormatElementItem);
begin
AnElement.ElementName := edName.Text;
@ -350,25 +352,19 @@ begin
chkVisible.Checked := AnElement.Visible;
end;
{=====}
procedure TfrmEditElement.SetItemType(Index : Integer);
begin
rgItemType.ItemIndex := Index;
gbCaption.Enabled := False;
edCaptionText.Enabled := False;
lblCaptionText.Enabled := False;
btnCaptionFont.Enabled := False;
btnShape.Enabled := TVpItemType(Index) = itShape;
btnShape.Enabled := Index = 4;
if Index = 5 then begin
gbCaption.Enabled := True;
edCaptionText.Enabled := True;
lblCaptionText.Enabled := True;
btnCaptionFont.Enabled := True;
end;
gbCaption.Enabled := TVpItemType(Index) = itCaption;
edCaptionText.Enabled := gbCaption.Enabled;
lblCaptionText.Enabled := gbCaption.Enabled;
btnCaptionFont.Enabled := gbCaption.Enabled;
end;
{=====}
procedure TfrmEditElement.SetMaxSpin(Spin : Integer);
begin
case Spin of
@ -381,26 +377,23 @@ begin
udTop.Max := MaxSpin;
udHeight.Max := MaxSpin;
udWidth.Max := MaxSpin;
end;
{=====}
procedure TfrmEditElement.UpDownClick(Sender: TObject; Button: TUDBtnType);
var
Val, Inc : Extended;
begin
if Sender = udLeft then CurEdit := edLeft ;
if Sender = udTop then CurEdit := edTop ;
if Sender = udLeft then CurEdit := edLeft;
if Sender = udTop then CurEdit := edTop;
if Sender = udHeight then CurEdit := edHeight;
if Sender = udWidth then CurEdit := edWidth ;
if Sender = udWidth then CurEdit := edWidth;
Val := 0.0;
try
Val := StrToFloat(CurEdit.Text);
except
on EConvertError do begin
ShowMessage('Please Enter a Floating Point Value');
CurEdit.SetFocus;
end;
if not TryStrToFloat(CurEdit.Text, Val) then
begin
Val := 0.0;
CurEdit.SetFocus;
MessageDlg(RSPleaseEnterFloat, mtError, [mbOK], 0);
end;
Inc := udLeft.Increment / 100;
@ -417,12 +410,11 @@ begin
end;
end;
end;
{=====}
function TfrmEditElement.Validate : Boolean;
function TfrmEditElement.Validate: Boolean;
begin
Result := edName.Text <> '';
end;
{=====}
end.