Added: support for "for...in" enumerators

This commit is contained in:
Mark van Renswoude 2009-08-06 08:44:12 +00:00
parent 79f30dfe52
commit fe5574b9e9
6 changed files with 535 additions and 2 deletions

100
Packages/D7/X2CLGL.dproj Normal file
View File

@ -0,0 +1,100 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{a9bc9ffc-0787-41fb-9118-a3ef4766b6fc}</ProjectGuid>
<MainSource>X2CLGL.dpk</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\..\..\bin\D2007\X2CLGL.bpl</DCC_DependencyCheckOutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_WriteableConstants>True</DCC_WriteableConstants>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_RangeChecking>True</DCC_RangeChecking>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_MapFile>3</DCC_MapFile>
<DCC_DcuOutput>$(DELPHILIB)</DCC_DcuOutput>
<DCC_ObjOutput>$(DELPHILIB)</DCC_ObjOutput>
<DCC_HppOutput>$(DELPHILIB)</DCC_HppOutput>
<DCC_BplOutput>$(DELPHIBIN)</DCC_BplOutput>
<DCC_DcpOutput>$(DELPHIBIN)</DCC_DcpOutput>
<DCC_Define>RELEASE</DCC_Define>
<DCC_UNSAFE_TYPE>True</DCC_UNSAFE_TYPE>
<DCC_UNSAFE_CODE>True</DCC_UNSAFE_CODE>
<DCC_UNSAFE_CAST>True</DCC_UNSAFE_CAST>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_WriteableConstants>True</DCC_WriteableConstants>
<DCC_RangeChecking>True</DCC_RangeChecking>
<DCC_MapFile>3</DCC_MapFile>
<DCC_DcuOutput>$(DELPHILIB)</DCC_DcuOutput>
<DCC_ObjOutput>$(DELPHILIB)</DCC_ObjOutput>
<DCC_HppOutput>$(DELPHILIB)</DCC_HppOutput>
<DCC_BplOutput>$(DELPHIBIN)</DCC_BplOutput>
<DCC_DcpOutput>$(DELPHIBIN)</DCC_DcpOutput>
<DCC_UNSAFE_TYPE>True</DCC_UNSAFE_TYPE>
<DCC_UNSAFE_CODE>True</DCC_UNSAFE_CODE>
<DCC_UNSAFE_CAST>True</DCC_UNSAFE_CAST>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject xmlns=""> <Delphi.Personality> <Parameters>
<Parameters Name="RunParams">ip-to-country.csv countries.csv geo.db</Parameters>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<Package_Options>
<Package_Options Name="PackageDescription">X²CL GraphicList</Package_Options>
<Package_Options Name="ImplicitBuild">True</Package_Options>
<Package_Options Name="DesigntimeOnly">False</Package_Options>
<Package_Options Name="RuntimeOnly">True</Package_Options>
</Package_Options>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo>
<VersionInfo Name="Release">0</VersionInfo>
<VersionInfo Name="Build">0</VersionInfo>
<VersionInfo Name="Debug">False</VersionInfo>
<VersionInfo Name="PreRelease">False</VersionInfo>
<VersionInfo Name="Special">False</VersionInfo>
<VersionInfo Name="Private">False</VersionInfo>
<VersionInfo Name="DLL">False</VersionInfo>
<VersionInfo Name="Locale">1043</VersionInfo>
<VersionInfo Name="CodePage">1252</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
<Source>
<Source Name="MainSource">X2CLGL.dpk</Source>
</Source>
</Delphi.Personality> </BorlandProject></BorlandProject>
</ProjectExtensions>
<ItemGroup />
<ItemGroup>
<DelphiCompile Include="X2CLGL.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\Source\X2CLGraphicList.pas" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\rtl.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\vcl.dcp" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
</Project>

104
Packages/D7/X2CLGLD.dproj Normal file
View File

@ -0,0 +1,104 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{97ec2b0b-f415-40d5-ae50-d6331b95a0a3}</ProjectGuid>
<MainSource>X2CLGLD.dpk</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\..\..\bin\D2007\X2CLGLD.bpl</DCC_DependencyCheckOutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_WriteableConstants>True</DCC_WriteableConstants>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_RangeChecking>True</DCC_RangeChecking>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_MapFile>3</DCC_MapFile>
<DCC_DcuOutput>$(DELPHILIB)</DCC_DcuOutput>
<DCC_ObjOutput>$(DELPHILIB)</DCC_ObjOutput>
<DCC_HppOutput>$(DELPHILIB)</DCC_HppOutput>
<DCC_BplOutput>$(DELPHIBIN)</DCC_BplOutput>
<DCC_DcpOutput>$(DELPHIBIN)</DCC_DcpOutput>
<DCC_Define>RELEASE</DCC_Define>
<DCC_UNSAFE_TYPE>True</DCC_UNSAFE_TYPE>
<DCC_UNSAFE_CODE>True</DCC_UNSAFE_CODE>
<DCC_UNSAFE_CAST>True</DCC_UNSAFE_CAST>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_WriteableConstants>True</DCC_WriteableConstants>
<DCC_RangeChecking>True</DCC_RangeChecking>
<DCC_MapFile>3</DCC_MapFile>
<DCC_DcuOutput>$(DELPHILIB)</DCC_DcuOutput>
<DCC_ObjOutput>$(DELPHILIB)</DCC_ObjOutput>
<DCC_HppOutput>$(DELPHILIB)</DCC_HppOutput>
<DCC_BplOutput>$(DELPHIBIN)</DCC_BplOutput>
<DCC_DcpOutput>$(DELPHIBIN)</DCC_DcpOutput>
<DCC_UNSAFE_TYPE>True</DCC_UNSAFE_TYPE>
<DCC_UNSAFE_CODE>True</DCC_UNSAFE_CODE>
<DCC_UNSAFE_CAST>True</DCC_UNSAFE_CAST>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject xmlns=""> <Delphi.Personality> <Parameters>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<Package_Options>
<Package_Options Name="PackageDescription">X²CL GraphicList (Designtime)</Package_Options>
<Package_Options Name="ImplicitBuild">True</Package_Options>
<Package_Options Name="DesigntimeOnly">True</Package_Options>
<Package_Options Name="RuntimeOnly">False</Package_Options>
</Package_Options>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo>
<VersionInfo Name="Release">0</VersionInfo>
<VersionInfo Name="Build">0</VersionInfo>
<VersionInfo Name="Debug">False</VersionInfo>
<VersionInfo Name="PreRelease">False</VersionInfo>
<VersionInfo Name="Special">False</VersionInfo>
<VersionInfo Name="Private">False</VersionInfo>
<VersionInfo Name="DLL">False</VersionInfo>
<VersionInfo Name="Locale">1043</VersionInfo>
<VersionInfo Name="CodePage">1252</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
<Source>
<Source Name="MainSource">X2CLGLD.dpk</Source>
</Source>
</Delphi.Personality> </BorlandProject></BorlandProject>
</ProjectExtensions>
<ItemGroup />
<ItemGroup>
<DelphiCompile Include="X2CLGLD.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\X2CLGLEditors.pas" />
<DCCReference Include="..\X2CLGLReg.pas" />
<DCCReference Include="..\X2CLGraphicsEditor.pas">
<Form>GraphicsEditorForm</Form>
</DCCReference>
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\designide.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\rtl.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\X2CLGL.dcp" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
</Project>

95
Packages/D7/X2CLMB.dproj Normal file
View File

@ -0,0 +1,95 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{6c6302d6-b6c5-4139-a95d-f401031a295b}</ProjectGuid>
<MainSource>X2CLMB.dpk</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\..\..\bin\D2007\X2CLMB.bpl</DCC_DependencyCheckOutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_DcuOutput>$(DELPHILIB)</DCC_DcuOutput>
<DCC_ObjOutput>$(DELPHILIB)</DCC_ObjOutput>
<DCC_HppOutput>$(DELPHILIB)</DCC_HppOutput>
<DCC_BplOutput>$(DELPHIBIN)</DCC_BplOutput>
<DCC_DcpOutput>$(DELPHILIB)</DCC_DcpOutput>
<DCC_Define>RELEASE</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_DcuOutput>$(DELPHILIB)</DCC_DcuOutput>
<DCC_ObjOutput>$(DELPHILIB)</DCC_ObjOutput>
<DCC_HppOutput>$(DELPHILIB)</DCC_HppOutput>
<DCC_BplOutput>$(DELPHIBIN)</DCC_BplOutput>
<DCC_DcpOutput>$(DELPHILIB)</DCC_DcpOutput>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject xmlns=""> <Delphi.Personality> <Parameters>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<Package_Options>
<Package_Options Name="PackageDescription">X²CL MenuBar</Package_Options>
<Package_Options Name="ImplicitBuild">False</Package_Options>
<Package_Options Name="DesigntimeOnly">False</Package_Options>
<Package_Options Name="RuntimeOnly">True</Package_Options>
</Package_Options>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo>
<VersionInfo Name="Release">0</VersionInfo>
<VersionInfo Name="Build">0</VersionInfo>
<VersionInfo Name="Debug">False</VersionInfo>
<VersionInfo Name="PreRelease">False</VersionInfo>
<VersionInfo Name="Special">False</VersionInfo>
<VersionInfo Name="Private">False</VersionInfo>
<VersionInfo Name="DLL">False</VersionInfo>
<VersionInfo Name="Locale">1043</VersionInfo>
<VersionInfo Name="CodePage">1252</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
<Source>
<Source Name="MainSource">X2CLMB.dpk</Source>
</Source>
</Delphi.Personality> </BorlandProject></BorlandProject>
</ProjectExtensions>
<ItemGroup />
<ItemGroup>
<DelphiCompile Include="X2CLMB.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\Source\X2CLGraphics.pas" />
<DCCReference Include="..\..\Source\X2CLMenuBar.pas" />
<DCCReference Include="..\..\Source\X2CLMenuBarActions.pas" />
<DCCReference Include="..\..\Source\X2CLMenuBarAnimators.pas" />
<DCCReference Include="..\..\Source\X2CLmusikCubeMenuBarPainter.pas" />
<DCCReference Include="..\..\Source\X2CLunaMenuBarPainter.pas" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\designide.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\rtl.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\vcl.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\vclactnband.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\vclx.dcp" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
</Project>

95
Packages/D7/X2CLMBD.dproj Normal file
View File

@ -0,0 +1,95 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{3c83cecf-b9d9-484e-93ce-d9c34cdc7b05}</ProjectGuid>
<MainSource>X2CLMBD.dpk</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\..\..\bin\D2007\X2CLMBD.bpl</DCC_DependencyCheckOutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_DcuOutput>$(DELPHILIB)</DCC_DcuOutput>
<DCC_ObjOutput>$(DELPHILIB)</DCC_ObjOutput>
<DCC_HppOutput>$(DELPHILIB)</DCC_HppOutput>
<DCC_BplOutput>$(DELPHIBIN)</DCC_BplOutput>
<DCC_DcpOutput>$(DELPHILIB)</DCC_DcpOutput>
<DCC_Define>RELEASE</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_DcuOutput>$(DELPHILIB)</DCC_DcuOutput>
<DCC_ObjOutput>$(DELPHILIB)</DCC_ObjOutput>
<DCC_HppOutput>$(DELPHILIB)</DCC_HppOutput>
<DCC_BplOutput>$(DELPHIBIN)</DCC_BplOutput>
<DCC_DcpOutput>$(DELPHILIB)</DCC_DcpOutput>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject xmlns=""> <Delphi.Personality> <Parameters>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<Package_Options>
<Package_Options Name="PackageDescription">X²CL MenuBar (Designtime)</Package_Options>
<Package_Options Name="ImplicitBuild">False</Package_Options>
<Package_Options Name="DesigntimeOnly">True</Package_Options>
<Package_Options Name="RuntimeOnly">False</Package_Options>
</Package_Options>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo>
<VersionInfo Name="Release">0</VersionInfo>
<VersionInfo Name="Build">0</VersionInfo>
<VersionInfo Name="Debug">False</VersionInfo>
<VersionInfo Name="PreRelease">False</VersionInfo>
<VersionInfo Name="Special">False</VersionInfo>
<VersionInfo Name="Private">False</VersionInfo>
<VersionInfo Name="DLL">False</VersionInfo>
<VersionInfo Name="Locale">1043</VersionInfo>
<VersionInfo Name="CodePage">1252</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
<Source>
<Source Name="MainSource">X2CLMBD.dpk</Source>
</Source>
</Delphi.Personality> </BorlandProject></BorlandProject>
</ProjectExtensions>
<ItemGroup />
<ItemGroup>
<DelphiCompile Include="X2CLMBD.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\X2CLMBEditors.pas" />
<DCCReference Include="..\X2CLMBReg.pas" />
<DCCReference Include="..\X2CLMenuBarEditor.pas">
<Form>frmMenuBarEditor</Form>
</DCCReference>
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\designide.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\rtl.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\vcl.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\vclactnband.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\vclx.dcp" />
<DCCReference Include="C:\Users\mark\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\Development\X2CLMB.dcp" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
</Project>

View File

@ -11,6 +11,12 @@
}
unit X2CLMenuBar;
{$IFDEF VER180}
{$DEFINE D2006}
{$ENDIF}
interface
uses
ActnList,
@ -53,6 +59,10 @@ type
TX2CustomMenuBar = class;
TX2MenuBarItemsEnumerator = class;
TX2MenuBarGroupsEnumerator = class;
IX2MenuBarDesigner = interface
['{F648CFD2-771D-4531-84D0-621FD7597E48}']
procedure ItemAdded(AItem: TX2CustomMenuBarItem);
@ -290,7 +300,6 @@ type
TX2ComponentNotification = class(TComponent)
private
FOnNotification: TX2ComponentNotificationEvent;
published
protected
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
published
@ -388,6 +397,8 @@ type
public
constructor Create(AOwner: TPersistent);
function GetEnumerator: TX2MenuBarItemsEnumerator;
function Add(const ACaption: TCaption = ''): TX2MenuBarItem;
property Items[Index: Integer]: TX2MenuBarItem read GetItem write SetItem; default;
@ -417,6 +428,8 @@ type
constructor Create(Collection: TCollection); override;
destructor Destroy; override;
function GetEnumerator: TX2MenuBarItemsEnumerator;
procedure Assign(Source: TPersistent); override;
property SelectedItem: Integer read GetSelectedItem write FSelectedItem;
@ -436,6 +449,8 @@ type
public
constructor Create(AOwner: TPersistent);
function GetEnumerator: TX2MenuBarGroupsEnumerator;
function Add(const ACaption: TCaption = ''): TX2MenuBarGroup;
property Items[Index: Integer]: TX2MenuBarGroup read GetItem write SetItem; default;
@ -594,6 +609,8 @@ type
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
function GetEnumerator: TX2MenuBarGroupsEnumerator;
function HitTest(const APoint: TPoint): TX2MenuBarHitTest; overload;
function HitTest(AX, AY: Integer): TX2MenuBarHitTest; overload;
@ -659,7 +676,7 @@ type
property OnExpanding;
property OnSelectedChanged;
property OnSelectedChanging;
{$IFDEF VER180}
{$IFDEF D2006}
property OnMouseActivate;
property OnMouseEnter;
property OnMouseLeave;
@ -673,6 +690,26 @@ type
end;
{
:$ For iterators support for D2006+
}
TX2MenuBarItemsEnumerator = class(TCollectionEnumerator)
private
function GetCurrent: TX2MenuBarItem;
public
property Current: TX2MenuBarItem read GetCurrent;
end;
TX2MenuBarGroupsEnumerator = class(TCollectionEnumerator)
private
function GetCurrent: TX2MenuBarGroup;
public
property Current: TX2MenuBarGroup read GetCurrent;
end;
const
{ HitTest Codes }
htUnknown = 0;
@ -1331,6 +1368,12 @@ begin
end;
function TX2MenuBarItems.GetEnumerator: TX2MenuBarItemsEnumerator;
begin
Result := TX2MenuBarItemsEnumerator.Create(Self);
end;
function TX2MenuBarItems.Add(const ACaption: TCaption): TX2MenuBarItem;
begin
Result := TX2MenuBarItem(inherited Add);
@ -1377,6 +1420,12 @@ begin
end;
function TX2MenuBarGroup.GetEnumerator: TX2MenuBarItemsEnumerator;
begin
Result := TX2MenuBarItemsEnumerator.Create(Items);
end;
procedure TX2MenuBarGroup.Assign(Source: TPersistent);
begin
if Source is TX2MenuBarGroup then
@ -1479,6 +1528,12 @@ begin
end;
function TX2MenuBarGroups.GetEnumerator: TX2MenuBarGroupsEnumerator;
begin
Result := TX2MenuBarGroupsEnumerator.Create(Self);
end;
function TX2MenuBarGroups.Add(const ACaption: TCaption): TX2MenuBarGroup;
begin
Result := TX2MenuBarGroup(inherited Add);
@ -1568,6 +1623,12 @@ begin
end;
function TX2CustomMenuBar.GetEnumerator: TX2MenuBarGroupsEnumerator;
begin
Result := TX2MenuBarGroupsEnumerator.Create(Groups);
end;
procedure TX2CustomMenuBar.WMEraseBkgnd(var Msg: TWMEraseBkgnd);
begin
Msg.Result := 0;
@ -3203,4 +3264,18 @@ end;
//// MessageBox(0, 'I gots a mousewheel', '', 0);
//end;
{ TX2MenuBarItemsEnumerator }
function TX2MenuBarItemsEnumerator.GetCurrent: TX2MenuBarItem;
begin
Result := TX2MenuBarItem(inherited GetCurrent);
end;
{ TX2MenuBarGroupsEnumerator }
function TX2MenuBarGroupsEnumerator.GetCurrent: TX2MenuBarGroup;
begin
Result := TX2MenuBarGroup(inherited GetCurrent);
end;
end.

64
X2CL.groupproj Normal file
View File

@ -0,0 +1,64 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{3a4e1d27-aacb-4d4d-8812-c03e8125faf1}</ProjectGuid>
</PropertyGroup>
<ItemGroup />
<ItemGroup>
<Projects Include="Packages\D7\X2CLGL.dproj" />
<Projects Include="Packages\D7\X2CLGLD.dproj" />
<Projects Include="Packages\D7\X2CLMB.dproj" />
<Projects Include="Packages\D7\X2CLMBD.dproj" />
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Default.Personality</Borland.Personality>
<Borland.ProjectType />
<BorlandProject>
<BorlandProject xmlns=""> <Default.Personality> </Default.Personality> </BorlandProject></BorlandProject>
</ProjectExtensions>
<Target Name="X2CLGL">
<MSBuild Projects="Packages\D7\X2CLGL.dproj" Targets="" />
</Target>
<Target Name="X2CLGL:Clean">
<MSBuild Projects="Packages\D7\X2CLGL.dproj" Targets="Clean" />
</Target>
<Target Name="X2CLGL:Make">
<MSBuild Projects="Packages\D7\X2CLGL.dproj" Targets="Make" />
</Target>
<Target Name="X2CLGLD">
<MSBuild Projects="Packages\D7\X2CLGLD.dproj" Targets="" />
</Target>
<Target Name="X2CLGLD:Clean">
<MSBuild Projects="Packages\D7\X2CLGLD.dproj" Targets="Clean" />
</Target>
<Target Name="X2CLGLD:Make">
<MSBuild Projects="Packages\D7\X2CLGLD.dproj" Targets="Make" />
</Target>
<Target Name="X2CLMB">
<MSBuild Projects="Packages\D7\X2CLMB.dproj" Targets="" />
</Target>
<Target Name="X2CLMB:Clean">
<MSBuild Projects="Packages\D7\X2CLMB.dproj" Targets="Clean" />
</Target>
<Target Name="X2CLMB:Make">
<MSBuild Projects="Packages\D7\X2CLMB.dproj" Targets="Make" />
</Target>
<Target Name="X2CLMBD">
<MSBuild Projects="Packages\D7\X2CLMBD.dproj" Targets="" />
</Target>
<Target Name="X2CLMBD:Clean">
<MSBuild Projects="Packages\D7\X2CLMBD.dproj" Targets="Clean" />
</Target>
<Target Name="X2CLMBD:Make">
<MSBuild Projects="Packages\D7\X2CLMBD.dproj" Targets="Make" />
</Target>
<Target Name="Build">
<CallTarget Targets="X2CLGL;X2CLGLD;X2CLMB;X2CLMBD" />
</Target>
<Target Name="Clean">
<CallTarget Targets="X2CLGL:Clean;X2CLGLD:Clean;X2CLMB:Clean;X2CLMBD:Clean" />
</Target>
<Target Name="Make">
<CallTarget Targets="X2CLGL:Make;X2CLGLD:Make;X2CLMB:Make;X2CLMBD:Make" />
</Target>
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
</Project>