Files
lazarus-ccr/components/everettrandom/latest_stable/demo/umainform.pas
gbamber 78ad20a286 Everett Random component V0.1.3.0
Initial commit

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7144 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-08-22 08:28:56 +00:00

93 lines
2.1 KiB
ObjectPascal

unit umainform;
{$mode objfpc}{$H+}
interface
uses
SysUtils, Forms, Controls, Graphics, Dialogs, ExtCtrls, Buttons, StdCtrls,
Spin, ueverettrandom;
type
{ Tmainform }
Tmainform = class(TForm)
cmdSplit: TBitBtn;
cmdClose: TBitBtn;
grpNumElements: TGroupBox;
grp_HexSize: TGroupBox;
grpResults: TGroupBox;
lstResults: TListBox;
pnlMain: TPanel;
rgSingleElement: TRadioGroup;
spArrayNumber: TSpinEdit;
spHexSize: TSpinEdit;
procedure cmdSplitClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormResize(Sender: TObject);
private
myEverett: TEverett;
public
end;
var
mainform: Tmainform;
implementation
{$R *.lfm}
{ Tmainform }
procedure Tmainform.FormCreate(Sender: TObject);
begin
Caption:=Application.Name;
Icon:=Application.Icon;
myEverett := TEverett.Create(Self);
// Set up dialog
// MyEverett.WaitDialogCaption:='Please wait. contacting server';
MyEverett.ShowWaitDialog:=TRUE;
end;
procedure Tmainform.FormResize(Sender: TObject);
begin
// Set minimum size
if Width < 300 then
Width := 300;
if Height < 500 then
Height := 500;
end;
procedure Tmainform.cmdSplitClick(Sender: TObject);
var
s: string;
ct:Integer;
begin
lstResults.Clear;
MyEverett.ArraySize:=spArrayNumber.Value;
MyEverett.HexSize:=spHexSize.Value;
case rgSingleElement.ItemIndex of
0:begin
MyEverett.GetInteger8BitArray;
for ct:=0 to Pred(MyEverett.ArraySize) do
lstResults.Items.Add(InttoStr(MyEverett.IntegerArray[ct]));
end;
1:begin
MyEverett.GetInteger16BitArray;
for ct:=0 to Pred(MyEverett.ArraySize) do
lstResults.Items.Add(InttoStr(MyEverett.IntegerArray[ct]));
end;
2:begin
MyEverett.GetHexArray;
for ct:=0 to Pred(MyEverett.ArraySize) do
lstResults.Items.Add(MyEverett.HexArray[ct]);
end;
end;
s := 'Universe sucessfully split' + LineEnding;
ShowMessageFmt('%s%d times!',[s,spArrayNumber.Value]);
end;
end.