Move creation of CopyTableForm from application startup to a place where it's done on demand.

This commit is contained in:
Ansgar Becker
2007-07-03 19:35:09 +00:00
parent bf73dadbd3
commit 6de920d8ec
6 changed files with 19 additions and 6 deletions

View File

@ -45,7 +45,6 @@ begin
Application.Title := APPNAME;
Application.CreateForm(TMainForm, MainForm); debug('perf: Main created.');
Application.CreateForm(TCopyTableForm, CopyTableForm); debug('perf: CopyTable created.');
Application.CreateForm(TFormEditUser, FormEditUser); debug('perf: EditUser created.');
Application.CreateForm(TfrmSQLhelp, frmSQLhelp); debug('perf: frmSQLhelp created.');

View File

@ -45,7 +45,6 @@ begin
Application.CreateForm(TMainForm, MainForm);
debug('perf: Main created.');
Application.CreateForm(TCopyTableForm, CopyTableForm); debug('perf: CopyTable created.');
Application.CreateForm(TFormEditUser, FormEditUser); debug('perf: EditUser created.');
Application.CreateForm(TfrmSQLhelp, frmSQLhelp); debug('perf: frmSQLhelp created.');

View File

@ -36,7 +36,6 @@ begin
Application.CreateForm(Tconnform, connform);
Application.CreateForm(TFieldEditForm, FieldEditForm);
Application.CreateForm(TUserManagerForm, UserManagerForm);
Application.CreateForm(TCopyTableForm, CopyTableForm);
Application.CreateForm(TFormEditUser, FormEditUser);
Application.Run;
end.

View File

@ -92,6 +92,7 @@ object CopyTableForm: TCopyTableForm
Anchors = [akRight, akBottom]
Cancel = True
Caption = 'Cancel'
ModalResult = 2
TabOrder = 5
OnClick = ButtonCancelClick
end
@ -123,6 +124,7 @@ object CopyTableForm: TCopyTableForm
Anchors = [akRight, akBottom]
Caption = 'OK'
Default = True
ModalResult = 1
TabOrder = 8
OnClick = ButtonOKClick
end

View File

@ -39,8 +39,7 @@ type
{ Public declarations }
end;
var
CopyTableForm: TCopyTableForm;
function CopyTableWindow(AOwner: TComponent): Boolean;
const
OPTION_UNDEFINED = 255;
@ -56,6 +55,21 @@ uses helpers, main, childwin, db;
{$R *.DFM}
{**
Create form on demand
@param TComponent Owner of form (should be calling form)
@return Boolean Form closed using modalresult mrOK
}
function CopyTableWindow(AOwner: TComponent): Boolean;
var
f : TCopyTableForm;
begin
f := TCopyTableForm.Create(AOwner);
Result := (f.ShowModal=mrOK);
FreeAndNil(f);
end;
procedure TCopyTableForm.radioStructureClick(Sender: TObject);
begin
radioStructureAndData.Checked := not radioStructure.Checked;

View File

@ -796,7 +796,7 @@ end;
procedure TMainForm.CopyTableExecute(Sender: TObject);
begin
// copy table
CopyTableForm.ShowModal;
CopyTableWindow(self);
end;