IDE: diff dlg for build modes, bug #17781

git-svn-id: trunk@28039 -
This commit is contained in:
mattias 2010-11-02 13:51:24 +00:00
parent b9f5c98980
commit 2bf1c89884
2 changed files with 29 additions and 13 deletions

View File

@ -11,8 +11,8 @@ object BuildModeDiffDialog: TBuildModeDiffDialog
LCLVersion = '0.9.29' LCLVersion = '0.9.29'
object ButtonPanel1: TButtonPanel object ButtonPanel1: TButtonPanel
Left = 6 Left = 6
Height = 30 Height = 40
Top = 280 Top = 270
Width = 481 Width = 481
OKButton.Name = 'OKButton' OKButton.Name = 'OKButton'
OKButton.Caption = '&OK' OKButton.Caption = '&OK'
@ -33,9 +33,9 @@ object BuildModeDiffDialog: TBuildModeDiffDialog
AnchorSideTop.Control = ModeComboBox AnchorSideTop.Control = ModeComboBox
AnchorSideTop.Side = asrCenter AnchorSideTop.Side = asrCenter
Left = 10 Left = 10
Height = 17 Height = 18
Top = 12 Top = 14
Width = 69 Width = 78
BorderSpacing.Left = 10 BorderSpacing.Left = 10
Caption = 'ModeLabel' Caption = 'ModeLabel'
ParentColor = False ParentColor = False
@ -46,13 +46,14 @@ object BuildModeDiffDialog: TBuildModeDiffDialog
AnchorSideTop.Control = Owner AnchorSideTop.Control = Owner
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 89 Left = 98
Height = 21 Height = 27
Top = 10 Top = 10
Width = 394 Width = 385
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 10 BorderSpacing.Around = 10
ItemHeight = 0 ItemHeight = 0
OnChange = ModeComboBoxChange
TabOrder = 1 TabOrder = 1
Text = 'ModeComboBox' Text = 'ModeComboBox'
end end
@ -60,8 +61,8 @@ object BuildModeDiffDialog: TBuildModeDiffDialog
AnchorSideTop.Control = ModeComboBox AnchorSideTop.Control = ModeComboBox
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
Left = 10 Left = 10
Height = 233 Height = 217
Top = 41 Top = 47
Width = 473 Width = 473
Align = alBottom Align = alBottom
Anchors = [akTop, akLeft, akRight, akBottom] Anchors = [akTop, akLeft, akRight, akBottom]
@ -69,16 +70,16 @@ object BuildModeDiffDialog: TBuildModeDiffDialog
BorderSpacing.Right = 4 BorderSpacing.Right = 4
BorderSpacing.Around = 6 BorderSpacing.Around = 6
Caption = 'DiffsGroupBox' Caption = 'DiffsGroupBox'
ClientHeight = 211 ClientHeight = 196
ClientWidth = 465 ClientWidth = 465
TabOrder = 2 TabOrder = 2
object DiffTreeView: TTreeView object DiffTreeView: TTreeView
Left = 0 Left = 0
Height = 211 Height = 196
Top = 0 Top = 0
Width = 465 Width = 465
Align = alClient Align = alClient
DefaultItemHeight = 18 DefaultItemHeight = 19
TabOrder = 0 TabOrder = 0
end end
end end

View File

@ -44,6 +44,7 @@ type
ModeComboBox: TComboBox; ModeComboBox: TComboBox;
ModeLabel: TLabel; ModeLabel: TLabel;
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
procedure ModeComboBoxChange(Sender: TObject);
private private
FBaseMode: TProjectBuildMode; FBaseMode: TProjectBuildMode;
fProject: TProject; fProject: TProject;
@ -86,6 +87,20 @@ begin
DiffsGroupBox.Caption:='Differences to other build modes'; DiffsGroupBox.Caption:='Differences to other build modes';
end; end;
procedure TBuildModeDiffDialog.ModeComboBoxChange(Sender: TObject);
var
i: Integer;
begin
if fProject<>nil then
for i:=0 to fProject.BuildModes.Count-1 do
if SysUtils.AnsiCompareText(fProject.BuildModes[i].GetCaption,ModeComboBox.Text)=0
then begin
fBaseMode:=fProject.BuildModes[i];
FillDiffTreeView;
break;
end;
end;
procedure TBuildModeDiffDialog.FillModeComboBox; procedure TBuildModeDiffDialog.FillModeComboBox;
var var
sl: TStringList; sl: TStringList;