library Blank;

{ If you are using more than one Delphi DLL, and they are exchanging
  allocated memory (especialy strings), then ShareMem must be the
  first unit in each library's (DLL's) USES clause.

  If your only interface is to Paradox, then SHAREMEM is not necessary.
}
uses
  SysUtils,
  Classes,
  PdxAddin,
  AddForm in 'AddForm.pas' {ParadoxAddinForm};

begin
{ This DLL can be registered as a Paradox Addin (compile this DLL,
  then go into Paradox, and select Tools|Register Addins|Add).

  However, it won't actually do anything unless you write the code:

  1) Create any forms you want to use, they must descend from
     TParadoxForm (or TParadoxAddinForm) or they won't work right.

  2) Use the PdxDeskW form in this unit to add any menu items you
     want (or place Paradox.RegisterMenu calls below).
     To use your forms from your menu items, create them normally:

        Procedure Tf_ParadoxDesktop.MyMenu1Click(Sender:TObject);
        Begin
          MyForm := TMyForm.Create(Application);
          MyForm.ShowModal;  // Waits for user
          MyForm.Free;
        End;

     or:

        Procedure Tf_ParadoxDesktop.MyMenu1Click(Sender:TObject);
        Begin
          MyForm := TMyForm.Create(Application);
          MyForm.Show;  // Doesn't wait
        End;

  3) If you want to use your forms from ObjectPAL, you need to register
     them, by adding the following code below (just before the "end.",
     replacing the "Blank Form" declaration):

       Paradox.RegisterFormClass('My Form', TMyForm);

     or

       Paradox.RegisterForm('My Form', TMyForm, MyForm);

     The first version means that everytime ObjectPAL Opens "My Form",
     it will get a new copy of the form (multi-instance).

     The second version means that everytime ObjectPAL Opens "My Form",
     it will get the same copy of the form (single-instance), and that
     the instancing variable (MyForm) can be used to communicate with
     other routines.
}

  Paradox.RegisterFormClass('Blank Form', TParadoxAddinForm);
end.
