IDE: fixed menu item 64bit

git-svn-id: trunk@27684 -
This commit is contained in:
mattias 2010-10-13 19:01:58 +00:00
parent 59710747e4
commit 78d480b9e1
4 changed files with 50 additions and 9 deletions

View File

@ -4490,6 +4490,7 @@ begin
Result := i - index > 0;
if Result then begin
Val(Copy(s, Index, i - Index), Num, err);
if err=0 then ;
index := i;
end;
end;

View File

@ -4449,13 +4449,13 @@ procedure TMainIDE.DoProjectOptionsBeforeRead(Sender: TObject);
var
ActiveSrcEdit: TSourceEditor;
ActiveUnitInfo: TUnitInfo;
AProject: TProject;
begin
BeginCodeTool(ActiveSrcEdit, ActiveUnitInfo, []);
with Sender as TProject do
begin
UpdateExecutableType;
CompilerOptions.UseAsDefault := False;
end;
AProject:=TProject(Sender);
AProject.UpdateExecutableType;
AProject.CompilerOptions.UseAsDefault := False;
AProject.BuildModesBackup.Assign(AProject.BuildModes);
end;
procedure TMainIDE.DoProjectOptionsAfterWrite(Sender: TObject; Restore: boolean

View File

@ -217,11 +217,13 @@ begin
end;
procedure TMainIDEBase.mnuWindowSourceItemClick(Sender: TObject);
var page: longint;
var
i: LongInt;
begin
if SourceEditorManager = nil then exit;
page := (sender as TIDEMenuCommand).tag;
SourceEditorManager.ActiveEditor := TSourceEditor(PtrInt(page));
i:=(sender as TIDEMenuCommand).tag;
if (i<0) or (i>=SourceEditorManager.SourceEditorCount) then exit;
SourceEditorManager.ActiveEditor := SourceEditorManager.SourceEditors[i];
SourceEditorManager.ShowActiveWindowOnTop(True);
end;
@ -1093,7 +1095,7 @@ begin
CurMenuItem.Caption := SourceEditorManager.SourceEditors[i].PageName;
CurMenuItem.MenuItem.Checked := SourceEditorManager.ActiveEditor = SourceEditorManager.SourceEditors[i] ;
CurMenuItem.OnClick := @mnuWindowSourceItemClick;
CurMenuItem.Tag := Integer(Pointer(SourceEditorManager.SourceEditors[i]));
CurMenuItem.Tag := i;
inc(ItemCount);
end;
end;

View File

@ -692,6 +692,8 @@ type
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Clear;
function IsEqual(OtherModes: TProjectBuildModes): boolean;
procedure Assign(Source: TPersistent); override;
procedure Delete(Index: integer);
function IndexOf(Identifier: string): integer;
function Find(Identifier: string): TProjectBuildMode;
@ -725,6 +727,7 @@ type
FActiveBuildMode: TProjectBuildMode;
FActiveWindowIndexAtStart: integer;
FBuildModes: TProjectBuildModes;
FBuildModesBackup: TProjectBuildModes;
FEditorInfoList: TUnitEditorInfoList;
FAutoCreateForms: boolean;
FEnableI18NForLFM: boolean;
@ -1011,6 +1014,7 @@ type
write SetAutoOpenDesignerFormsDisabled;
property Bookmarks: TProjectBookmarkList read FBookmarks write FBookmarks;
property BuildModes: TProjectBuildModes read FBuildModes write SetBuildModes;
property BuildModesBackup: TProjectBuildModes read FBuildModesBackup;
property SkipCheckLCLInterfaces: boolean read FSkipCheckLCLInterfaces
write SetSkipCheckLCLInterfaces;
property CompilerOptions: TProjectCompilerOptions read FCompilerOptions;
@ -2528,9 +2532,13 @@ begin
FAutoCreateForms := true;
FEditorInfoList := TUnitEditorInfoList.Create(nil);
FBookmarks := TProjectBookmarkList.Create;
FBuildModes:=TProjectBuildModes.Create(nil);
FBuildModes.LazProject:=Self;
FBuildModesBackup:=TProjectBuildModes.Create(nil);
FBuildModesBackup.LazProject:=Self;
ActiveBuildMode:=FBuildModes.Add('Default');
FDefineTemplates:=TProjectDefineTemplates.Create(Self);
FFlags:=DefaultProjectFlags;
FJumpHistory:=TProjectJumpHistory.Create;
@ -2561,6 +2569,7 @@ begin
FDestroying := True;
ActiveBuildMode:=nil;
Clear;
FreeAndNil(FBuildModesBackup);
FreeAndNil(FBuildModes);
FreeAndNil(FEditorInfoList);
FreeThenNil(FResources);
@ -6794,6 +6803,35 @@ begin
while Count>0 do Delete(Count-1);
end;
function TProjectBuildModes.IsEqual(OtherModes: TProjectBuildModes): boolean;
var
i: Integer;
begin
Result:=true;
if OtherModes.Count<>Count then exit;
for i:=0 to Count-1 do
if not Items[i].Equals(OtherModes[i]) then exit;
Result:=false;
end;
procedure TProjectBuildModes.Assign(Source: TPersistent);
var
OtherModes: TProjectBuildModes;
i: Integer;
CurMode: TProjectBuildMode;
begin
if Source is TProjectBuildModes then begin
OtherModes:=TProjectBuildModes(Source);
Clear;
for i:=0 to OtherModes.Count-1 do
begin
CurMode:=Add(OtherModes[i].Identifier);
CurMode.Assign(OtherModes[i]);
end;
end else
inherited Assign(Source);
end;
procedure TProjectBuildModes.Delete(Index: integer);
var
Item: TProjectBuildMode;