76 lines
2.2 KiB
Plaintext
76 lines
2.2 KiB
Plaintext
|
||
{ Turbo Generator }
|
||
{ Copyright (c) 1989 by Borland International, Inc. }
|
||
|
||
program CardGen;
|
||
{ Turbo Pascal 5.5 object-oriented example.
|
||
Generates example OOP databases for CARDFILE.PAS.
|
||
Refer to OOPDEMOS.DOC for an overview of this program.
|
||
}
|
||
|
||
{$S-}
|
||
{$M 8192, 16384, 16384}
|
||
|
||
uses Crt, Objects, Forms, Sliders, Cards;
|
||
|
||
const
|
||
Signature: Longint = $44524143; { unique signature for file }
|
||
|
||
var
|
||
F: Form;
|
||
C: CardList;
|
||
S: FStream;
|
||
|
||
procedure PeopleForm;
|
||
{ Create an example form in memory with "People" info }
|
||
begin
|
||
F.Init(10, 5, 54, 16);
|
||
F.Add(New(FStrPtr, Init(3, 2, ' Firstname ', 30)));
|
||
F.Add(New(FStrPtr, Init(3, 3, ' Lastname ', 30)));
|
||
F.Add(New(FStrPtr, Init(3, 5, ' Address ', 32)));
|
||
F.Add(New(FStrPtr, Init(3, 6, ' City ', 16)));
|
||
F.Add(New(FStrPtr, Init(25, 6, ' State ', 2)));
|
||
F.Add(New(FZipPtr, Init(34, 6, ' Zip ')));
|
||
F.Add(New(FIntPtr, Init(3, 8, ' Counter 1 ', 0, 99999999)));
|
||
F.Add(New(FIntPtr, Init(22, 8, ' 2 ', 0, 99999999)));
|
||
F.Add(New(FIntPtr, Init(33, 8, ' 3 ', 0, 99999999)));
|
||
F.Add(New(FSliderPtr, Init(3, 10, ' Slider One ', 0, 100, 5)));
|
||
F.Add(New(FSliderPtr, Init(3, 11, ' Slider Two ', 0, 100, 5)));
|
||
end;
|
||
|
||
procedure PartsForm;
|
||
{ Create an example form in memory with "Parts" info }
|
||
begin
|
||
F.Init(12, 7, 68, 14);
|
||
F.Add(New(FStrPtr, Init(3, 2, ' Part Code ', 10)));
|
||
F.Add(New(FRealPtr, Init(24, 2, ' Cost ', 9, 2)));
|
||
F.Add(New(FRealPtr, Init(39, 2, ' Retail ', 9, 2)));
|
||
F.Add(New(FStrPtr, Init(3, 4, ' Description ', 40)));
|
||
F.Add(New(FStrPtr, Init(3, 5, ' Description ', 40)));
|
||
F.Add(New(FIntPtr, Init(3, 7, ' Units On Hand ', 0, 999999)));
|
||
F.Add(New(FIntPtr, Init(24, 7, ' Backorder ', 0, 999999)));
|
||
F.Add(New(FIntPtr, Init(41, 7, ' Shipped ', 0, 999999)));
|
||
end;
|
||
|
||
procedure MakeFile(FileName: FNameStr);
|
||
{ Use a stream to create a cardfile with a form and no data }
|
||
begin
|
||
C.Init(F.Size);
|
||
S.Init(FileName, SCreate, 1024);
|
||
S.Write(Signature, SizeOf(Longint));
|
||
F.Store(S);
|
||
C.Store(S);
|
||
S.Flush;
|
||
if S.Status <> 0 then WriteLn('Error creating file ', FileName);
|
||
S.Done;
|
||
C.Done;
|
||
F.Done;
|
||
end;
|
||
|
||
begin
|
||
PeopleForm;
|
||
MakeFile('PEOPLE.DTA');
|
||
PartsForm;
|
||
MakeFile('PARTS.DTA');
|
||
end.
|
||
|