Añadida una comprobación (Assigned) en uCustomEditor.pas en el procedimiento TraverseClients para evitar posibles violaciones de acceso aleatorias al abrir y cerrar editores.

git-svn-id: https://192.168.0.254/svn/Componentes.Internos.GUISDK/trunk@14 e3f7d858-3362-1a4e-b49c-1b1bd96e4488
This commit is contained in:
David Arranz 2008-04-17 11:10:43 +00:00
parent e9adcfb501
commit 34508423e3
17 changed files with 158 additions and 6 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

146
Packages/GUISDK_D10.dproj Normal file
View File

@ -0,0 +1,146 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{957a24e2-b568-44eb-9e8b-639f1a9628ab}</ProjectGuid>
<MainSource>GUISDK_D10.dpk</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\Lib\D10\GUISDK_D10.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_MapFile>3</DCC_MapFile>
<DCC_DcuOutput>..\Lib\D10</DCC_DcuOutput>
<DCC_ObjOutput>..\Lib\D10</DCC_ObjOutput>
<DCC_HppOutput>..\Lib\D10</DCC_HppOutput>
<DCC_BplOutput>..\Lib\D10</DCC_BplOutput>
<DCC_DcpOutput>..\Lib\D10</DCC_DcpOutput>
<DCC_UnitSearchPath>..\Lib\D10;..\Source</DCC_UnitSearchPath>
<DCC_ResourcePath>..\Lib\D10;..\Source</DCC_ResourcePath>
<DCC_ObjPath>..\Lib\D10;..\Source</DCC_ObjPath>
<DCC_IncludePath>..\Lib\D10;..\Source</DCC_IncludePath>
<DCC_Define>RELEASE</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_MapFile>3</DCC_MapFile>
<DCC_DcuOutput>..\Lib\D10</DCC_DcuOutput>
<DCC_ObjOutput>..\Lib\D10</DCC_ObjOutput>
<DCC_HppOutput>..\Lib\D10</DCC_HppOutput>
<DCC_BplOutput>..\Lib\D10</DCC_BplOutput>
<DCC_DcpOutput>..\Lib\D10</DCC_DcpOutput>
<DCC_UnitSearchPath>..\Lib\D10;..\Source</DCC_UnitSearchPath>
<DCC_ResourcePath>..\Lib\D10;..\Source</DCC_ResourcePath>
<DCC_ObjPath>..\Lib\D10;..\Source</DCC_ObjPath>
<DCC_IncludePath>..\Lib\D10;..\Source</DCC_IncludePath>
<DCC_Define>DEBUG</DCC_Define>
</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">GUI SDK para Delphi 10</Package_Options>
<Package_Options Name="ImplicitBuild">False</Package_Options>
<Package_Options Name="DesigntimeOnly">False</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">3082</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>
<Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\Developer Express Inc\Lib\D10\dxBarD10.bpl">ExpressBars by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\Developer Express Inc\Lib\D10\dxComnD10.bpl">ExpressCommonLibrary by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\Developer Express Inc\Lib\D10\dxBarDBNavD10.bpl">ExpressBars DBNavigator by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\Developer Express Inc\Lib\D10\dxBarExtDBItemsD10.bpl">ExpressBars extended DB items by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\Developer Express Inc\Lib\D10\dxBarExtItemsD10.bpl">ExpressBars extended items by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\Developer Express Inc\Lib\D10\dxDockingD10.bpl">ExpressDocking Library by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\Developer Express Inc\Lib\D10\dxLayoutControlD10.bpl">ExpressLayout Control by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\Developer Express Inc\Lib\D10\dxNavBarD10.bpl">ExpressNavBar by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\Developer Express Inc\Lib\D10\dxGDIPlusD10.bpl">ExpressGDI+ Library by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\Developer Express Inc\Lib\D10\dxPSCoreD10.bpl">ExpressPrinting System by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\Developer Express Inc\Lib\D10\dxsbD10.bpl">ExpressSideBar by Developer Express Inc.</Excluded_Packages>
</Excluded_Packages>
<Source>
<Source Name="MainSource">GUISDK_D10.dpk</Source>
</Source>
</Delphi.Personality> </BorlandProject></BorlandProject>
</ProjectExtensions>
<ItemGroup />
<ItemGroup>
<DelphiCompile Include="GUISDK_D10.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\Source\uCustomEditor.pas">
<Form>CustomEditor</Form>
</DCCReference>
<DCCReference Include="..\Source\uCustomView.pas">
<Form>CustomView</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="..\Source\uGUIBase.pas" />
<DCCReference Include="..\Source\uGUIUtils.pas" />
<DCCReference Include="ccpack10.dcp" />
<DCCReference Include="cfpack_d10.dcp" />
<DCCReference Include="designide.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="vcl.dcp" />
<DCCReference Include="vclactnband.dcp" />
<DCCReference Include="vclx.dcp" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
</Project>

View File

@ -1,5 +1,5 @@
/* VER180
Generated by the Borland Delphi Pascal Compiler
/* VER185
Generated by the CodeGear Delphi Pascal Compiler
because -GD or --drc was supplied to the compiler.
This file contains compiler-generated resources that
@ -12,3 +12,6 @@ STRINGTABLE
BEGIN
END
/* C:\CustomEditors\Source\uCustomView.dfm */
/* C:\CustomEditors\Packages\GUISDK_D10.res */
/* C:\CustomEditors\Packages\GUISDK_D10.drf */

View File

@ -295,11 +295,14 @@ var
for I := 0 to Container.ControlCount - 1 do
begin
Control := Container.Controls[I];
if (csActionClient in Control.ControlStyle) and Control.Visible then
Control.InitiateAction;
if Assigned(Control) then
begin
if (csActionClient in Control.ControlStyle) and Control.Visible then
Control.InitiateAction;
if Control is TWinControl then
TraverseClients(TWinControl(Control));
if Control is TWinControl then
TraverseClients(TWinControl(Control));
end;
end;
end;