IDE: fixed Disable/EnableAutosizing restoring package editors

git-svn-id: trunk@50178 -
This commit is contained in:
mattias 2015-10-26 22:09:12 +00:00
parent 2c929b55db
commit caff01e9f6
3 changed files with 38 additions and 20 deletions

View File

@ -1804,7 +1804,6 @@ function TConvertDelphiPackage.CreateInstance: TModalResult;
// open new package. If .lpk does not exist, create it // open new package. If .lpk does not exist, create it
var var
PkgName: String; PkgName: String;
CurEditor: TPackageEditorForm;
begin begin
fProjPack:=nil; fProjPack:=nil;
if FileExistsUTF8(fLazPMainFilename) then begin if FileExistsUTF8(fLazPMainFilename) then begin
@ -1836,8 +1835,7 @@ begin
LazPackage.Filename:=fLazPMainFilename; LazPackage.Filename:=fLazPMainFilename;
fProjPack.BaseCompilerOptions.SyntaxMode:='delphi'; fProjPack.BaseCompilerOptions.SyntaxMode:='delphi';
// open a package editor // open a package editor
CurEditor:=PackageEditors.OpenEditor(LazPackage); PackageEditors.OpenEditor(LazPackage,true);
CurEditor.Show;
// save .lpk file // save .lpk file
PackageEditors.SavePackage(LazPackage,false); PackageEditors.SavePackage(LazPackage,false);
Result:=mrOK; Result:=mrOK;

View File

@ -438,7 +438,8 @@ type
function IndexOfPackage(const PkgName: string): integer; function IndexOfPackage(const PkgName: string): integer;
function FindEditor(Pkg: TLazPackage): TPackageEditorForm; overload; function FindEditor(Pkg: TLazPackage): TPackageEditorForm; overload;
function FindEditor(const PkgName: string): TPackageEditorForm; overload; function FindEditor(const PkgName: string): TPackageEditorForm; overload;
function OpenEditor(Pkg: TLazPackage): TPackageEditorForm; function CreateEditor(Pkg: TLazPackage; DoDisableAutoSizing: boolean): TPackageEditorForm;
function OpenEditor(Pkg: TLazPackage; BringToFront: boolean): TPackageEditorForm;
function OpenFile(Sender: TObject; const Filename: string): TModalResult; function OpenFile(Sender: TObject; const Filename: string): TModalResult;
function OpenPkgFile(Sender: TObject; PkgFile: TPkgFile): TModalResult; function OpenPkgFile(Sender: TObject; PkgFile: TPkgFile): TModalResult;
function OpenDependency(Sender: TObject; function OpenDependency(Sender: TObject;
@ -3381,13 +3382,39 @@ begin
Result:=nil; Result:=nil;
end; end;
function TPackageEditors.OpenEditor(Pkg: TLazPackage): TPackageEditorForm; function TPackageEditors.CreateEditor(Pkg: TLazPackage;
DoDisableAutoSizing: boolean): TPackageEditorForm;
begin begin
Result:=FindEditor(Pkg); Result:=FindEditor(Pkg);
if Result=nil then begin if Result<>nil then begin
Result:=TPackageEditorForm.Create(LazarusIDE.OwningComponent); if DoDisableAutoSizing then
Result.EnableAutoSizing{$IFDEF DebugDisableAutoSizing}('TAnchorDockMaster Delayed'){$ENDIF};
end else begin
Result:=TPackageEditorForm(TPackageEditorForm.NewInstance);
{$IFDEF DebugDisableAutoSizing}
if DoDisableAutoSizing then
Result.DisableAutoSizing('TAnchorDockMaster Delayed')
else
Result.DisableAutoSizing('TPackageEditors.OpenEditor');
{$ELSE}
Result.DisableAutoSizing;
{$ENDIF}
Result.Create(LazarusIDE.OwningComponent);
Result.LazPackage:=Pkg; Result.LazPackage:=Pkg;
FItems.Add(Result); FItems.Add(Result);
if not DoDisableAutoSizing then
Result.EnableAutoSizing{$IFDEF DebugDisableAutoSizing}('TPackageEditors.OpenEditor'){$ENDIF};
end;
end;
function TPackageEditors.OpenEditor(Pkg: TLazPackage; BringToFront: boolean
): TPackageEditorForm;
begin
Result:=CreateEditor(Pkg,true);
try
IDEWindowCreators.ShowForm(Result, BringToFront);
finally
Result.EnableAutoSizing{$IFDEF DebugDisableAutoSizing}('TAnchorDockMaster Delayed'){$ENDIF};
end; end;
end; end;

View File

@ -644,7 +644,7 @@ begin
end; end;
APackage:=PackageGraph.FindPackageWithName(APackageName,nil); APackage:=PackageGraph.FindPackageWithName(APackageName,nil);
if APackage=nil then exit; if APackage=nil then exit;
AForm:=PackageEditors.OpenEditor(APackage); AForm:=PackageEditors.OpenEditor(APackage,DoDisableAutoSizing);
end; end;
end; end;
@ -3485,7 +3485,6 @@ end;
function TPkgManager.DoNewPackage: TModalResult; function TPkgManager.DoNewPackage: TModalResult;
var var
NewPackage: TLazPackage; NewPackage: TLazPackage;
CurEditor: TPackageEditorForm;
begin begin
Result:=mrCancel; Result:=mrCancel;
// create a new package with standard dependencies // create a new package with standard dependencies
@ -3495,8 +3494,7 @@ begin
NewPackage.Modified:=false; NewPackage.Modified:=false;
// open a package editor // open a package editor
CurEditor:=PackageEditors.OpenEditor(NewPackage); PackageEditors.OpenEditor(NewPackage,true);
IDEWindowCreators.ShowForm(CurEditor,true);
Result:=DoSavePackage(NewPackage,[psfSaveAs]); Result:=DoSavePackage(NewPackage,[psfSaveAs]);
end; end;
@ -3513,7 +3511,6 @@ end;
function TPkgManager.DoOpenPackage(APackage: TLazPackage; function TPkgManager.DoOpenPackage(APackage: TLazPackage;
Flags: TPkgOpenFlags; ShowAbort: boolean): TModalResult; Flags: TPkgOpenFlags; ShowAbort: boolean): TModalResult;
var var
CurEditor: TPackageEditorForm;
AFilename: String; AFilename: String;
begin begin
AFilename:=APackage.Filename; AFilename:=APackage.Filename;
@ -3526,8 +3523,7 @@ begin
end; end;
// open a package editor // open a package editor
CurEditor:=PackageEditors.OpenEditor(APackage); PackageEditors.OpenEditor(APackage,true);
IDEWindowCreators.ShowForm(CurEditor,true);
// add to recent packages // add to recent packages
if (pofAddToRecent in Flags) then begin if (pofAddToRecent in Flags) then begin
@ -3698,14 +3694,12 @@ procedure TPkgManager.OpenHiddenModifiedPackages;
var var
i: Integer; i: Integer;
APackage: TLazPackage; APackage: TLazPackage;
Editor: TPackageEditorForm;
begin begin
for i:=0 to PackageGraph.Count-1 do begin for i:=0 to PackageGraph.Count-1 do begin
APackage:=PackageGraph.Packages[i]; APackage:=PackageGraph.Packages[i];
if (APackage.Editor=nil) and APackage.Modified if (APackage.Editor=nil) and APackage.Modified
and (APackage.UserIgnoreChangeStamp<>APackage.ChangeStamp) then begin and (APackage.UserIgnoreChangeStamp<>APackage.ChangeStamp) then begin
Editor:=PackageEditors.OpenEditor(APackage); PackageEditors.OpenEditor(APackage,false);
IDEWindowCreators.ShowForm(Editor,false);
end; end;
end; end;
end; end;
@ -5091,9 +5085,9 @@ end;
function TPkgManager.DoNewPackageComponent: TModalResult; function TPkgManager.DoNewPackageComponent: TModalResult;
var var
APackage: TLazPackage; APackage: TLazPackage;
CurEditor: TPackageEditorForm;
SaveFlags: TPkgSaveFlags; SaveFlags: TPkgSaveFlags;
Page: TAddToPkgType; Page: TAddToPkgType;
CurEditor: TPackageEditorForm;
begin begin
Result:=ShowNewPkgComponentDialog(APackage); Result:=ShowNewPkgComponentDialog(APackage);
if Result<>mrOk then exit; if Result<>mrOk then exit;
@ -5108,8 +5102,7 @@ begin
Include(SaveFlags,psfSaveAs); Include(SaveFlags,psfSaveAs);
end; end;
// open a package editor // open a package editor
CurEditor:=PackageEditors.OpenEditor(APackage); CurEditor:=PackageEditors.OpenEditor(APackage,true);
IDEWindowCreators.ShowForm(CurEditor,true);
// save // save
Result:=DoSavePackage(APackage,SaveFlags); Result:=DoSavePackage(APackage,SaveFlags);
if Result<>mrOk then exit; if Result<>mrOk then exit;