mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-18 07:19:22 +02:00
Examples: TestAll: refactor some dialog tests.
git-svn-id: trunk@51833 -
This commit is contained in:
parent
bd5c917340
commit
0520897120
@ -795,6 +795,39 @@ begin
|
|||||||
end;
|
end;
|
||||||
{---------------- End of TValuelisteditor; ---------}
|
{---------------- End of TValuelisteditor; ---------}
|
||||||
|
|
||||||
|
{--------------------------- End of Components -------------------------}
|
||||||
|
|
||||||
|
|
||||||
|
{--------------------------- Start of Dialogs ---------------------------}
|
||||||
|
|
||||||
|
const
|
||||||
|
MsgDlgBtnStr: array[TMsgDlgBtn] of String = (
|
||||||
|
'mbYes', 'mbNo', 'mbOK', 'mbCancel', 'mbAbort', 'mbRetry', 'mbIgnore',
|
||||||
|
'mbAll', 'mbNoToAll', 'mbYesToAll', 'mbHelp', 'mbClose'
|
||||||
|
);
|
||||||
|
MsgDlgTypeStr: array[TMsgDlgType] of String = (
|
||||||
|
'mtWarning', 'mtError', 'mtInformation',
|
||||||
|
'mtConfirmation', 'mtCustom'
|
||||||
|
);
|
||||||
|
|
||||||
|
function ModalResultToStr(Mr: TModalResult): String;
|
||||||
|
begin
|
||||||
|
case Mr of
|
||||||
|
mrNone: Result := 'mrNone';
|
||||||
|
mrOK: Result := 'mrOK';
|
||||||
|
mrCancel: Result := 'mrCancel';
|
||||||
|
mrAbort: Result := 'mrAbort';
|
||||||
|
mrRetry: Result := 'mrRetry';
|
||||||
|
mrIgnore: Result := 'mrInore';
|
||||||
|
mrYes: Result := 'mrYes';
|
||||||
|
mrNo: Result := 'mrNo';
|
||||||
|
mrAll: Result := 'mrAll';
|
||||||
|
mrNoToAll: Result := 'mrNoToAll';
|
||||||
|
mrYesToAll: Result := 'mrYesToAll';
|
||||||
|
mrClose: Result := 'mrClose';
|
||||||
|
else Result := IntToStr(Mr);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
{---------------- MessageDialog; ----------------}
|
{---------------- MessageDialog; ----------------}
|
||||||
|
|
||||||
@ -805,6 +838,7 @@ type
|
|||||||
cg: TCheckGroup;
|
cg: TCheckGroup;
|
||||||
rg: TRadioGroup;
|
rg: TRadioGroup;
|
||||||
btn: TButton;
|
btn: TButton;
|
||||||
|
lbl: TLabel;
|
||||||
procedure OnBtnClick(Sender: TObject);
|
procedure OnBtnClick(Sender: TObject);
|
||||||
end;
|
end;
|
||||||
{ TMsgDlgDummmy }
|
{ TMsgDlgDummmy }
|
||||||
@ -814,6 +848,7 @@ var
|
|||||||
Btns: TMsgDlgButtons;
|
Btns: TMsgDlgButtons;
|
||||||
i: Integer;
|
i: Integer;
|
||||||
aMsg: TCaption;
|
aMsg: TCaption;
|
||||||
|
Res: TModalResult;
|
||||||
begin
|
begin
|
||||||
DT := TMsgDlgType(rg.ItemIndex);
|
DT := TMsgDlgType(rg.ItemIndex);
|
||||||
aMsg := ed.Text;
|
aMsg := ed.Text;
|
||||||
@ -827,7 +862,8 @@ begin
|
|||||||
end;
|
end;
|
||||||
if (Btns = []) then
|
if (Btns = []) then
|
||||||
Btns := [mbOk];
|
Btns := [mbOk];
|
||||||
MessageDlg('MessageDlg test', aMsg, DT, Btns, 0);
|
Res := MessageDlg('MessageDlg test', aMsg, DT, Btns, 0);
|
||||||
|
lbl.Caption := 'Dialog result = ' + ModalResultToStr(Res);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TForm1.TestMessageDialog;
|
procedure TForm1.TestMessageDialog;
|
||||||
@ -836,33 +872,42 @@ var
|
|||||||
cg: TCheckGroup;
|
cg: TCheckGroup;
|
||||||
rg: TRadioGroup;
|
rg: TRadioGroup;
|
||||||
dummy: TMsgDlgDummmy;
|
dummy: TMsgDlgDummmy;
|
||||||
|
lbl: TLabel;
|
||||||
btn: TButton;
|
btn: TButton;
|
||||||
|
mdbtn: TMsgDlgBtn;
|
||||||
|
mdt: TMsgDlgType;
|
||||||
begin
|
begin
|
||||||
Clear;
|
Clear;
|
||||||
ed := TEdit.Create(nil);
|
ed := TEdit.Create(nil);
|
||||||
cg := TCheckGroup.Create(nil);
|
cg := TCheckGroup.Create(nil);
|
||||||
rg := TRadioGroup.Create(nil);
|
rg := TRadioGroup.Create(nil);
|
||||||
btn := TButton.Create(nil);
|
btn := TButton.Create(nil);
|
||||||
|
lbl := TLabel.Create(nil);
|
||||||
dummy := TMsgDlgDummmy.Create;
|
dummy := TMsgDlgDummmy.Create;
|
||||||
FObjList.Add(ed);
|
FObjList.Add(ed);
|
||||||
FObjList.Add(cg);
|
FObjList.Add(cg);
|
||||||
FObjList.Add(rg);
|
FObjList.Add(rg);
|
||||||
FObjList.Add(btn);
|
FObjList.Add(btn);
|
||||||
|
FObjList.Add(lbl);
|
||||||
FObjList.Add(dummy);
|
FObjList.Add(dummy);
|
||||||
dummy.ed := ed;
|
dummy.ed := ed;
|
||||||
dummy.cg := cg;
|
dummy.cg := cg;
|
||||||
dummy.rg := rg;
|
dummy.rg := rg;
|
||||||
|
dummy.lbl := lbl;
|
||||||
btn.OnClick := @dummy.OnBtnClick;
|
btn.OnClick := @dummy.OnBtnClick;
|
||||||
|
|
||||||
ed.TextHint := 'Type your message here';
|
ed.TextHint := 'Type your message here';
|
||||||
ed.Parent := TestPnl;
|
ed.Parent := TestPnl;
|
||||||
cg.Items.AddStrings(['mbYes', 'mbNo', 'mbOK', 'mbCancel', 'mbAbort', 'mbRetry', 'mbIgnore',
|
|
||||||
'mbAll', 'mbNoToAll', 'mbYesToAll', 'mbHelp', 'mbClose']);
|
|
||||||
cg.Caption := 'Buttons';
|
cg.Caption := 'Buttons';
|
||||||
|
for mdbtn := Low(TMsgDlgBtn) to High(TMsgDlgBtn) do
|
||||||
|
cg.Items.Add(MsgDlgBtnStr[mdbtn]);
|
||||||
cg.AutoSize := True;
|
cg.AutoSize := True;
|
||||||
rg.Items.AddStrings(['mtWarning', 'mtError', 'mtInformation', 'mtConfirmation',
|
|
||||||
'mtCustom']);
|
|
||||||
cg.Parent := TestPnl;
|
cg.Parent := TestPnl;
|
||||||
|
|
||||||
rg.Caption := 'DialogType';
|
rg.Caption := 'DialogType';
|
||||||
|
for mdt := Low(TMsgDlgType) to high(TMsgDlgType) do
|
||||||
|
rg.items.Add(MsgDlgTypeStr[mdt]);
|
||||||
rg.AutoSize := True;
|
rg.AutoSize := True;
|
||||||
rg.ItemIndex := Ord(mtInformation);
|
rg.ItemIndex := Ord(mtInformation);
|
||||||
ed.Left := 5;
|
ed.Left := 5;
|
||||||
@ -873,11 +918,17 @@ begin
|
|||||||
rg.Left := cg.Left + cg.Width + 20;
|
rg.Left := cg.Left + cg.Width + 20;
|
||||||
rg.Top := cg.Top;
|
rg.Top := cg.Top;
|
||||||
rg.Parent := TestPnl;
|
rg.Parent := TestPnl;
|
||||||
|
|
||||||
btn.Caption := 'Show dialog';
|
btn.Caption := 'Show dialog';
|
||||||
btn.AutoSize := True;
|
btn.AutoSize := True;
|
||||||
btn.Top := rg.Top + rg.Height + 20;
|
btn.Top := rg.Top + rg.Height + 20;
|
||||||
btn.Left := rg.Left;
|
btn.Left := rg.Left;
|
||||||
btn.Parent := TestPnl;
|
btn.Parent := TestPnl;
|
||||||
|
|
||||||
|
lbl.Caption := '';
|
||||||
|
lbl.Top := btn.Top + btn.Height + 20;
|
||||||
|
lbl.Left := btn.Left;
|
||||||
|
lbl.Parent := TestPnl;
|
||||||
end;
|
end;
|
||||||
{---------------- End of MessageDialog; ---------}
|
{---------------- End of MessageDialog; ---------}
|
||||||
|
|
||||||
@ -979,6 +1030,7 @@ type
|
|||||||
cg : TCheckGroup;
|
cg : TCheckGroup;
|
||||||
btn: TButton;
|
btn: TButton;
|
||||||
ed: TEdit;
|
ed: TEdit;
|
||||||
|
lbl: TLabel;
|
||||||
Sdd: TSelectDirectoryDialog;
|
Sdd: TSelectDirectoryDialog;
|
||||||
Procedure OnBtnClick(sender:TObject);
|
Procedure OnBtnClick(sender:TObject);
|
||||||
end;
|
end;
|
||||||
@ -996,7 +1048,9 @@ begin
|
|||||||
Opts := sdd.Options;
|
Opts := sdd.Options;
|
||||||
sdd.Options:=Opts;
|
sdd.Options:=Opts;
|
||||||
if sdd.Execute then
|
if sdd.Execute then
|
||||||
ShowMessage('You selected "'+sdd.FileName+'"' );
|
lbl.Caption := 'Selected: ' + {ExtractFileDir}(sdd.FileName)
|
||||||
|
else
|
||||||
|
lbl.Caption := 'Dialog was canceled';
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -1006,6 +1060,7 @@ var
|
|||||||
cg : TCheckGroup;
|
cg : TCheckGroup;
|
||||||
btn: TButton;
|
btn: TButton;
|
||||||
ed: TEdit;
|
ed: TEdit;
|
||||||
|
lbl:TLabel;
|
||||||
Sdd: TSelectDirectoryDialog;
|
Sdd: TSelectDirectoryDialog;
|
||||||
i: Integer;
|
i: Integer;
|
||||||
opt: TOpenOption;
|
opt: TOpenOption;
|
||||||
@ -1015,16 +1070,19 @@ begin
|
|||||||
sdd := TSelectDirectoryDialog.Create(nil);
|
sdd := TSelectDirectoryDialog.Create(nil);
|
||||||
btn := TButton.Create(nil);
|
btn := TButton.Create(nil);
|
||||||
cg := TCheckGroup.Create(nil);
|
cg := TCheckGroup.Create(nil);
|
||||||
|
lbl := TLabel.Create(nil);
|
||||||
FObjList.Add(ed);
|
FObjList.Add(ed);
|
||||||
FObjList.Add(sdd);
|
FObjList.Add(sdd);
|
||||||
FObjList.Add(btn);
|
FObjList.Add(btn);
|
||||||
FObjList.Add(cg);
|
FObjList.Add(cg);
|
||||||
|
FObjList.Add(lbl);
|
||||||
dummy := TSelDirDlgDummy.Create;
|
dummy := TSelDirDlgDummy.Create;
|
||||||
FObjList.Add(dummy);
|
FObjList.Add(dummy);
|
||||||
dummy.ed := ed;
|
dummy.ed := ed;
|
||||||
dummy.Sdd := Sdd;
|
dummy.Sdd := Sdd;
|
||||||
dummy.btn := btn;
|
dummy.btn := btn;
|
||||||
dummy.cg :=cg;
|
dummy.cg :=cg;
|
||||||
|
dummy.lbl := lbl;
|
||||||
|
|
||||||
ed.TextHint := 'Enter a Start-Directory here';
|
ed.TextHint := 'Enter a Start-Directory here';
|
||||||
ed.Parent := TestPnl;
|
ed.Parent := TestPnl;
|
||||||
@ -1040,6 +1098,7 @@ begin
|
|||||||
btn.parent := TestPnl;
|
btn.parent := TestPnl;
|
||||||
btn.onclick := @dummy.OnBtnClick;
|
btn.onclick := @dummy.OnBtnClick;
|
||||||
btn.Anchors:=ed.Anchors + [akRight]-[akLeft];
|
btn.Anchors:=ed.Anchors + [akRight]-[akLeft];
|
||||||
|
|
||||||
for opt := Low(TOpenOption) to High(TOpenOption) do
|
for opt := Low(TOpenOption) to High(TOpenOption) do
|
||||||
cg.Items.Add(DbgS(opt));
|
cg.Items.Add(DbgS(opt));
|
||||||
cg.Caption := 'OpenOptions';
|
cg.Caption := 'OpenOptions';
|
||||||
@ -1047,12 +1106,16 @@ begin
|
|||||||
cg.Columns:=2;
|
cg.Columns:=2;
|
||||||
cg.Parent := TestPnl;
|
cg.Parent := TestPnl;
|
||||||
cg.Left := 5;
|
cg.Left := 5;
|
||||||
|
cg.AutoSize := True;
|
||||||
cg.Top := btn.Top + btn.Height + 10;
|
cg.Top := btn.Top + btn.Height + 10;
|
||||||
cg.Width:= TestPnl.Width -cg.Left-5;
|
|
||||||
cg.Height := TestPnl.Height - cg.Top -5;
|
|
||||||
cg.Anchors:=cg.Anchors + [akRight,akBottom];
|
cg.Anchors:=cg.Anchors + [akRight,akBottom];
|
||||||
for i := 0 to cg.Items.Count - 1 do
|
for i := 0 to cg.Items.Count - 1 do
|
||||||
cg.Checked[i]:= TOpenOption(i) in sdd.Options;
|
cg.Checked[i]:= TOpenOption(i) in sdd.Options;
|
||||||
|
|
||||||
|
lbl.Top := cg.Top + cg.Height + 10;
|
||||||
|
lbl.Left := cg.Left;
|
||||||
|
lbl.Caption := '';
|
||||||
|
lbl.Parent := TestPnl;
|
||||||
end;
|
end;
|
||||||
{---------------- End of SelectdirectoryDialog; ---------}
|
{---------------- End of SelectdirectoryDialog; ---------}
|
||||||
|
|
||||||
@ -1067,6 +1130,7 @@ type
|
|||||||
cg: TCheckGroup;
|
cg: TCheckGroup;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
btn: TButton;
|
btn: TButton;
|
||||||
|
lbl: TLabel;
|
||||||
procedure OnBtnClick(Sender: TObject);
|
procedure OnBtnClick(Sender: TObject);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1078,6 +1142,7 @@ var
|
|||||||
i: Integer;
|
i: Integer;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
aMsg: TCaption;
|
aMsg: TCaption;
|
||||||
|
Res: TModalResult;
|
||||||
begin
|
begin
|
||||||
DT := TMsgDlgType(rg.ItemIndex);
|
DT := TMsgDlgType(rg.ItemIndex);
|
||||||
aMsg := ed.Text;
|
aMsg := ed.Text;
|
||||||
@ -1099,12 +1164,8 @@ begin
|
|||||||
Btns[high(Btns)] := mbOK;
|
Btns[high(Btns)] := mbOK;
|
||||||
end;
|
end;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
case QuestionDlg('QuestionDlg test', aMsg, DT, [mrYes,'&Yes','isDefault',mrNo, '&No'], 0) of
|
Res := QuestionDlg('QuestionDlg test', aMsg, DT, [mrYes,'&Yes','isDefault',mrNo, '&No'], 0);
|
||||||
mrYes: ShowMessage('You selected Yes !');
|
lbl.Caption := 'Dialog result = ' + ModalResultToStr(Res);
|
||||||
mrNo: ShowMessage('You selected No !')
|
|
||||||
else;
|
|
||||||
ShowMessage('Canceled the Question')
|
|
||||||
end;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -1114,22 +1175,28 @@ var
|
|||||||
ed: TEdit;
|
ed: TEdit;
|
||||||
btn: TButton;
|
btn: TButton;
|
||||||
rg: TRadioGroup;
|
rg: TRadioGroup;
|
||||||
|
mdt: TMsgDlgType;
|
||||||
|
lbl: TLabel;
|
||||||
{$IFDEF QDDynSelectBtn}
|
{$IFDEF QDDynSelectBtn}
|
||||||
cg: TCheckGroup;
|
cg: TCheckGroup;
|
||||||
|
mdbtn: TMsgDlgBtn;
|
||||||
{$ENDIF QDDynSelectBtn}
|
{$ENDIF QDDynSelectBtn}
|
||||||
begin
|
begin
|
||||||
Clear;
|
Clear;
|
||||||
ed := TEdit.Create(nil);
|
ed := TEdit.Create(nil);
|
||||||
rg := TRadioGroup.Create(nil);
|
rg := TRadioGroup.Create(nil);
|
||||||
btn := TButton.Create(nil);
|
btn := TButton.Create(nil);
|
||||||
|
lbl := TLabel.Create(nil);
|
||||||
FObjList.Add(btn);
|
FObjList.Add(btn);
|
||||||
FObjList.Add(ed);
|
FObjList.Add(ed);
|
||||||
FObjList.Add(rg);
|
FObjList.Add(rg);
|
||||||
|
FObjList.Add(lbl);
|
||||||
dummy := TQuesionDlgDummmy.Create;
|
dummy := TQuesionDlgDummmy.Create;
|
||||||
FObjList.Add(dummy);
|
FObjList.Add(dummy);
|
||||||
dummy.ed := ed;
|
dummy.ed := ed;
|
||||||
dummy.btn := btn;
|
dummy.btn := btn;
|
||||||
dummy.rg := rg;
|
dummy.rg := rg;
|
||||||
|
dummy.lbl := lbl;
|
||||||
{$IFDEF QDDynSelectBtn}
|
{$IFDEF QDDynSelectBtn}
|
||||||
cg := TCheckGroup.Create(nil);
|
cg := TCheckGroup.Create(nil);
|
||||||
FObjList.Add(cg);
|
FObjList.Add(cg);
|
||||||
@ -1143,17 +1210,17 @@ begin
|
|||||||
|
|
||||||
{$IFDEF QDDynSelectBtn}
|
{$IFDEF QDDynSelectBtn}
|
||||||
cg := TCheckGroup.Create(nil);
|
cg := TCheckGroup.Create(nil);
|
||||||
cg.Items.AddStrings(['mbYes', 'mbNo', 'mbOK', 'mbCancel', 'mbAbort', 'mbRetry', 'mbIgnore',
|
for mdbtn := Low(TMsgDlgBtn) to High(TMsgDlgBtn) do
|
||||||
'mbAll', 'mbNoToAll', 'mbYesToAll', 'mbHelp', 'mbClose']);
|
cg.Items.Add(MsgDlgBtnStr[mdbtn]);
|
||||||
cg.Caption := 'Buttons';
|
cg.Caption := 'Buttons';
|
||||||
cg.AutoSize := True;
|
cg.AutoSize := True;
|
||||||
cg.Parent := TestPnl;
|
cg.Parent := TestPnl;
|
||||||
cg.Left := 5;
|
cg.Left := 5;
|
||||||
cg.Top := ed.Top + ed.Height + 10;
|
cg.Top := ed.Top + ed.Height + 10;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
rg.Items.AddStrings(['mtWarning', 'mtError', 'mtInformation', 'mtConfirmation',
|
|
||||||
'mtCustom']);
|
|
||||||
rg.Caption := 'DialogType';
|
rg.Caption := 'DialogType';
|
||||||
|
for mdt := Low(TMsgDlgType) to high(TMsgDlgType) do
|
||||||
|
rg.items.Add(MsgDlgTypeStr[mdt]);
|
||||||
rg.AutoSize := True;
|
rg.AutoSize := True;
|
||||||
rg.ItemIndex := Ord(mtInformation);
|
rg.ItemIndex := Ord(mtInformation);
|
||||||
{$IFDEF QDDynSelectBtn}
|
{$IFDEF QDDynSelectBtn}
|
||||||
@ -1171,6 +1238,11 @@ begin
|
|||||||
btn.Top := rg.Top + rg.Height + 20;
|
btn.Top := rg.Top + rg.Height + 20;
|
||||||
btn.Left := rg.Left;
|
btn.Left := rg.Left;
|
||||||
btn.Parent := TestPnl;
|
btn.Parent := TestPnl;
|
||||||
|
|
||||||
|
lbl.Top := Btn.Top + Btn.Height + 10;
|
||||||
|
lbl.Left := Btn.Left;
|
||||||
|
lbl.Caption := '';
|
||||||
|
lbl.Parent := TestPnl;
|
||||||
end;
|
end;
|
||||||
{---------------- End of QuesionDialog; ---------}
|
{---------------- End of QuesionDialog; ---------}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user