unit NISetup;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TNetworkSetupDlg = class(TForm)
    Button1: TButton;
    GroupBox1: TGroupBox;
    ComboBox1: TComboBox;
    GroupBox2: TGroupBox;
    Button2: TButton;
  private
    { Private declarations }
  public
    Function Execute: Boolean;
    Procedure LoadNIfList;
    Procedure RestoreDefaults;
  end;

var
  NetworkSetupDlg: TNetworkSetupDlg;

implementation

{$R *.dfm}

{ TNetworkSetupDlg }

function TNetworkSetupDlg.Execute: Boolean;
begin
 LoadNIfList;
 Result := Showmodal = mrOk;
 If Result then begin
  // Save your settings here
 end;
end;

procedure TNetworkSetupDlg.LoadNIfList;
begin
 // Load your NIf List here, alternately you could also parse it to the "Execute" function as a Tstringlist
end;

procedure TNetworkSetupDlg.RestoreDefaults;
begin
 // Restore default values in this procedure
end;

end.
