You can subscribe to this list here.
| 2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(13) |
Sep
(25) |
Oct
(10) |
Nov
(19) |
Dec
(20) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2005 |
Jan
|
Feb
(206) |
Mar
(43) |
Apr
(25) |
May
(20) |
Jun
(69) |
Jul
(121) |
Aug
(95) |
Sep
(122) |
Oct
(213) |
Nov
(46) |
Dec
(39) |
| 2006 |
Jan
(28) |
Feb
(57) |
Mar
(21) |
Apr
(7) |
May
(11) |
Jun
(2) |
Jul
(8) |
Aug
(13) |
Sep
(2) |
Oct
(2) |
Nov
(20) |
Dec
(16) |
| 2007 |
Jan
(9) |
Feb
(15) |
Mar
|
Apr
(4) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2008 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(3) |
Aug
(1) |
Sep
(9) |
Oct
|
Nov
(1) |
Dec
|
| 2009 |
Jan
|
Feb
|
Mar
(8) |
Apr
(1) |
May
|
Jun
|
Jul
(11) |
Aug
(57) |
Sep
(2) |
Oct
(6) |
Nov
|
Dec
(7) |
| 2010 |
Jan
(11) |
Feb
(1) |
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
(1) |
Aug
(2) |
Sep
(27) |
Oct
(3) |
Nov
(7) |
Dec
(1) |
| 2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(10) |
Oct
|
Nov
|
Dec
|
| 2012 |
Jan
(8) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(3) |
Nov
(1) |
Dec
(1) |
| 2013 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
(4) |
Dec
|
| 2015 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
(1) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2017 |
Jan
|
Feb
|
Mar
(1) |
Apr
(4) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
(3) |
Oct
|
Nov
(4) |
Dec
|
| 2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
|
From: <na...@us...> - 2009-08-28 07:36:41
|
Revision: 868
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=868&view=rev
Author: nandod
Date: 2009-08-28 07:36:34 +0000 (Fri, 28 Aug 2009)
Log Message:
-----------
* Made it easier to plug a custom content editor in TInstantExplorer.
Modified Paths:
--------------
trunk/Source/Core/InstantExplorer.pas
Modified: trunk/Source/Core/InstantExplorer.pas
===================================================================
--- trunk/Source/Core/InstantExplorer.pas 2009-08-28 07:34:57 UTC (rev 867)
+++ trunk/Source/Core/InstantExplorer.pas 2009-08-28 07:36:34 UTC (rev 868)
@@ -112,10 +112,12 @@
TInstantExplorerContentEditor = class(TPanel)
private
- FGrid: TInstantExplorerDBGrid;
- function GetDataSource: TDataSource;
- procedure SetDataSource(const AValue: TDataSource);
+ FGrid: TDBGrid;
function GetGrid: TDBGrid;
+ protected
+ function GetDataSource: TDataSource; virtual;
+ procedure SetDataSource(const AValue: TDataSource); virtual;
+ function CreateGrid: TDBGrid; virtual;
public
constructor Create(AOwner: TComponent); override;
property Grid: TDBGrid read GetGrid;
@@ -1320,11 +1322,16 @@
BevelInner := bvNone;
BevelOuter := bvNone;
- FGrid := TInstantExplorerDBGrid.Create(Self);
+ FGrid := CreateGrid;
FGrid.Parent := Self;
FGrid.Align := alClient;
end;
+function TInstantExplorerContentEditor.CreateGrid: TDBGrid;
+begin
+ Result := TInstantExplorerDBGrid.Create(Self);
+end;
+
function TInstantExplorerContentEditor.GetDataSource: TDataSource;
begin
Result := FGrid.DataSource;
|
|
From: <na...@us...> - 2009-08-28 07:35:05
|
Revision: 867
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=867&view=rev
Author: nandod
Date: 2009-08-28 07:34:57 +0000 (Fri, 28 Aug 2009)
Log Message:
-----------
* Fixed: ORDER BY was only working correctly under the default connector in XML broker. Test case added.
* Fixed: XML broker didn't catch up totally with new XML pretty formatting.
Modified Paths:
--------------
trunk/Source/Brokers/XML/InstantXML.pas
trunk/Tests/TestXMLBroker.pas
Modified: trunk/Source/Brokers/XML/InstantXML.pas
===================================================================
--- trunk/Source/Brokers/XML/InstantXML.pas 2009-08-26 15:45:12 UTC (rev 866)
+++ trunk/Source/Brokers/XML/InstantXML.pas 2009-08-28 07:34:57 UTC (rev 867)
@@ -325,8 +325,8 @@
implementation
uses
- SysUtils, InstantConsts, InstantClasses, TypInfo, InstantXMLCatalog,
- InstantXMLConnectionDefEdit, InstantUtils,
+ SysUtils, InstantConsts, InstantClasses,
+ TypInfo, InstantXMLCatalog, InstantXMLConnectionDefEdit, InstantUtils,
{$IFDEF MSWINDOWS}
{$IFNDEF D6+}
FileCtrl,
@@ -421,6 +421,14 @@
Result := StrToIntDef(S, 0);
end;
+function GetXMLLineBreak: string;
+begin
+ if InstantXMLIndentationSize > 0 then
+ Result := sLineBreak
+ else
+ Result := '';
+end;
+
{ TInstantXMLConnectionDef }
class function TInstantXMLConnectionDef.ConnectionTypeName: string;
@@ -1055,12 +1063,12 @@
P := (L + R) shr 1;
repeat
while Compare(nil,
- TInstantObjectReference(List[I]).Dereference,
- TInstantObjectReference(List[P]).Dereference) < 0 do
+ TInstantObjectReference(List[I]).Dereference(Connector),
+ TInstantObjectReference(List[P]).Dereference(Connector)) < 0 do
Inc(I);
while Compare(nil,
- TInstantObjectReference(List[J]).Dereference,
- TInstantObjectReference(List[P]).Dereference) > 0 do
+ TInstantObjectReference(List[J]).Dereference(Connector),
+ TInstantObjectReference(List[P]).Dereference(Connector)) > 0 do
Dec(J);
if I <= J then
begin
@@ -1140,7 +1148,7 @@
strstream := TStringStream.Create('', TEncoding.UTF8);
try
InstantWriteObject(strStream, sfXML, AObject);
- DataStr := XML_UTF8_HEADER + UTF8String(strStream.DataString);
+ DataStr := XML_UTF8_HEADER + UTF8String(GetXMLLineBreak) + UTF8String(strStream.DataString);
finally
strStream.Free;
end;
@@ -1164,9 +1172,9 @@
InstantWriteObject(strStream, sfXML, AObject);
{$IFDEF D6+}
if FXMLFileFormat = xffUtf8 then
- DataStr := AnsiToUtf8(XML_UTF8_HEADER + strStream.DataString)
+ DataStr := AnsiToUtf8(XML_UTF8_HEADER + GetXMLLineBreak + strStream.DataString)
else
- DataStr := XML_ISO_HEADER + strStream.DataString;
+ DataStr := XML_ISO_HEADER + GetXMLLineBreak + strStream.DataString;
{$ELSE}
DataStr := strStream.DataString;
{$ENDIF}
Modified: trunk/Tests/TestXMLBroker.pas
===================================================================
--- trunk/Tests/TestXMLBroker.pas 2009-08-26 15:45:12 UTC (rev 866)
+++ trunk/Tests/TestXMLBroker.pas 2009-08-28 07:34:57 UTC (rev 867)
@@ -45,19 +45,21 @@
procedure TearDown; override;
published
procedure TestStoreAndRetrieveContact;
+ procedure TestOrderBy;
end;
implementation
uses
- SysUtils, InstantPersistence, TestModel;
+ SysUtils, ShellAPI, InstantPersistence, TestModel;
{ TTestXMLBroker }
procedure TTestXMLBroker.SetUp;
begin
FAcc := TXMLFilesAccessor.Create(nil);
- FAcc.RootFolder := ExtractFilePath(ParamStr(0));
+ FAcc.RootFolder := ExtractFilePath(ParamStr(0)) + 'XMLDB';
+ ForceDirectories(FAcc.RootFolder);
FConn := TInstantXMLConnector.Create(nil);
FConn.Connection := FAcc;
@@ -67,13 +69,99 @@
end;
procedure TTestXMLBroker.TearDown;
+
+ function DelTree(DirName: string): Boolean;
+ var
+ SHFileOpStruct : TSHFileOpStruct;
+ begin
+ try
+ Fillchar(SHFileOpStruct,Sizeof(SHFileOpStruct),0) ;
+ with SHFileOpStruct do begin
+ Wnd := 0;
+ pFrom := PChar(ExcludeTrailingPathDelimiter(DirName) + #0);
+ wFunc := FO_DELETE;
+ fFlags := FOF_ALLOWUNDO;
+ fFlags := fFlags or FOF_NOCONFIRMATION;
+ fFlags := fFlags or FOF_SILENT;
+ end;
+ Result := (SHFileOperation(SHFileOpStruct) = 0) ;
+ except
+ Result := False;
+ end;
+ end;
+
begin
inherited;
InstantModel.ClassMetadatas.Clear;
FreeAndNil(FConn);
+ DelTree(FAcc.RootFolder);
FreeAndNil(FAcc);
end;
+procedure TTestXMLBroker.TestOrderBy;
+var
+ c1, c2: TContact;
+ t: TPhone;
+ LQuery: TInstantQuery;
+begin
+ FConn.IsDefault := True;
+
+ c1 := TContact.Create;
+ try
+ c1.Name := 'ZZTop';
+ c1.Address.City := 'Dallas';
+ t := TPhone.Create;
+ t.Name := 'Home';
+ t.Number := '012 12345678';
+ c1.AddPhone(t);
+ AssertEquals(1, c1.PhoneCount);
+ t := TPhone.Create;
+ t.Name := 'Office';
+ t.Number := '012 23456781';
+ c1.AddPhone(t);
+ AssertEquals(2, c1.PhoneCount);
+ c1.Store;
+ finally
+ FreeAndNil(c1);
+ end;
+
+ c2 := TContact.Create;
+ try
+ c2.Name := 'Aaronson';
+ c2.Address.City := 'Las Vegas';
+ t := TPhone.Create;
+ t.Name := 'Home';
+ t.Number := '012 12345678';
+ c2.AddPhone(t);
+ AssertEquals(1, c2.PhoneCount);
+ t := TPhone.Create;
+ t.Name := 'Office';
+ t.Number := '012 23456781';
+ c2.AddPhone(t);
+ AssertEquals(2, c2.PhoneCount);
+ c2.Store;
+ finally
+ FreeAndNil(c2);
+ end;
+
+ LQuery := InstantDefaultConnector.CreateQuery;
+ try
+ LQuery.Command := 'select * from TContact order by Name';
+ LQuery.Open;
+ AssertEquals(LQuery.ObjectCount, 2);
+ AssertEquals((LQuery.Objects[0] as TContact).Name, 'Aaronson');
+ LQuery.Close;
+
+ LQuery.Command := 'select * from TContact order by Name desc';
+ LQuery.Open;
+ AssertEquals(LQuery.ObjectCount, 2);
+ AssertEquals((LQuery.Objects[0] as TContact).Name, 'ZZTop');
+ LQuery.Close;
+ finally
+ FreeAndNil(LQuery);
+ end;
+end;
+
procedure TTestXMLBroker.TestStoreAndRetrieveContact;
const
DEF_NAME = 'Mike Art\xF9';
|
|
From: <na...@us...> - 2009-08-26 15:45:44
|
Revision: 866
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=866&view=rev
Author: nandod
Date: 2009-08-26 15:45:12 +0000 (Wed, 26 Aug 2009)
Log Message:
-----------
+ Package groups for D2010.
- Removed TestIO_D2010 as the format of TestIO_D2009 is compatible with D2010.
* svn:ignore set.
Modified Paths:
--------------
trunk/Source/Brokers/ADO/D2010/DclIOADO.dproj
trunk/Source/Brokers/BDE/D2010/DclIOBDE.dproj
trunk/Source/Brokers/DBX/D2010/DclIODBX.dproj
trunk/Source/Brokers/IBX/D2010/DclIOIBX.dproj
trunk/Source/Brokers/XML/D2010/DclIOXML.dproj
trunk/Source/Design/D2010/DclIOCore.dproj
Added Paths:
-----------
trunk/Source/PackageGroups/D2010/
trunk/Source/PackageGroups/D2010/DesignTimePackages.groupproj
trunk/Source/PackageGroups/D2010/RunTimePackages.groupproj
Removed Paths:
-------------
trunk/Tests/TestIO_D2010.dpr
trunk/Tests/TestIO_D2010.dproj
trunk/Tests/TestIO_D2010.res
Property Changed:
----------------
trunk/Source/Brokers/ADO/D2010/
trunk/Source/Brokers/BDE/D2010/
trunk/Source/Brokers/DBX/D2010/
trunk/Source/Brokers/IBX/D2010/
trunk/Source/Brokers/XML/D2010/
trunk/Source/Catalogs/IBFb/D2010/
trunk/Source/Catalogs/MSSql/D2010/
trunk/Source/Catalogs/MySQL/D2010/
trunk/Source/Core/D2010/
trunk/Source/Design/D2010/
Property changes on: trunk/Source/Brokers/ADO/D2010
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Modified: trunk/Source/Brokers/ADO/D2010/DclIOADO.dproj
===================================================================
--- trunk/Source/Brokers/ADO/D2010/DclIOADO.dproj 2009-08-26 15:33:19 UTC (rev 865)
+++ trunk/Source/Brokers/ADO/D2010/DclIOADO.dproj 2009-08-26 15:45:12 UTC (rev 866)
@@ -24,7 +24,7 @@
<DCC_ImageBase>00400000</DCC_ImageBase>
<DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
<DllSuffix>_D14</DllSuffix>
- <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\DclIOADO_D14.bpl</DCC_DependencyCheckOutputName>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\7.0\Bpl\DclIOADO_D14.bpl</DCC_DependencyCheckOutputName>
<DCC_RangeChecking>true</DCC_RangeChecking>
<DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;$(DCC_UnitAlias)</DCC_UnitAlias>
<DCC_Description>InstantObjects ADO Design-Time Support (Delphi 2010)</DCC_Description>
Property changes on: trunk/Source/Brokers/BDE/D2010
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Modified: trunk/Source/Brokers/BDE/D2010/DclIOBDE.dproj
===================================================================
--- trunk/Source/Brokers/BDE/D2010/DclIOBDE.dproj 2009-08-26 15:33:19 UTC (rev 865)
+++ trunk/Source/Brokers/BDE/D2010/DclIOBDE.dproj 2009-08-26 15:45:12 UTC (rev 866)
@@ -20,7 +20,7 @@
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
- <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\DclIOBDE_D14.bpl</DCC_DependencyCheckOutputName>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\7.0\Bpl\DclIOBDE_D14.bpl</DCC_DependencyCheckOutputName>
<DesignOnlyPackage>true</DesignOnlyPackage>
<DCC_Description>InstantObjects BDE Design-Time Support (Delphi 2010)</DCC_Description>
<DCC_TypedAtParameter>true</DCC_TypedAtParameter>
Property changes on: trunk/Source/Brokers/DBX/D2010
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Modified: trunk/Source/Brokers/DBX/D2010/DclIODBX.dproj
===================================================================
--- trunk/Source/Brokers/DBX/D2010/DclIODBX.dproj 2009-08-26 15:33:19 UTC (rev 865)
+++ trunk/Source/Brokers/DBX/D2010/DclIODBX.dproj 2009-08-26 15:45:12 UTC (rev 866)
@@ -20,7 +20,7 @@
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
- <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\DclIODBX_D14.bpl</DCC_DependencyCheckOutputName>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\7.0\Bpl\DclIODBX_D14.bpl</DCC_DependencyCheckOutputName>
<DesignOnlyPackage>true</DesignOnlyPackage>
<DCC_Description>InstantObjects dbExpress Design-Time Support (Delphi 2010)</DCC_Description>
<DCC_TypedAtParameter>true</DCC_TypedAtParameter>
Property changes on: trunk/Source/Brokers/IBX/D2010
___________________________________________________________________
Added: svn:ignore
+ *.local
*.dcu
Modified: trunk/Source/Brokers/IBX/D2010/DclIOIBX.dproj
===================================================================
--- trunk/Source/Brokers/IBX/D2010/DclIOIBX.dproj 2009-08-26 15:33:19 UTC (rev 865)
+++ trunk/Source/Brokers/IBX/D2010/DclIOIBX.dproj 2009-08-26 15:45:12 UTC (rev 866)
@@ -20,7 +20,7 @@
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
- <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\DclIOIBX_D14.bpl</DCC_DependencyCheckOutputName>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\7.0\Bpl\DclIOIBX_D14.bpl</DCC_DependencyCheckOutputName>
<DesignOnlyPackage>true</DesignOnlyPackage>
<DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;$(DCC_UnitAlias)</DCC_UnitAlias>
<DCC_Description>InstantObjects IBX Design-Time Support (Delphi 2010)</DCC_Description>
Property changes on: trunk/Source/Brokers/XML/D2010
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Modified: trunk/Source/Brokers/XML/D2010/DclIOXML.dproj
===================================================================
--- trunk/Source/Brokers/XML/D2010/DclIOXML.dproj 2009-08-26 15:33:19 UTC (rev 865)
+++ trunk/Source/Brokers/XML/D2010/DclIOXML.dproj 2009-08-26 15:45:12 UTC (rev 866)
@@ -20,7 +20,7 @@
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
- <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\DclIOXML_D14.bpl</DCC_DependencyCheckOutputName>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\7.0\Bpl\DclIOXML_D14.bpl</DCC_DependencyCheckOutputName>
<DesignOnlyPackage>true</DesignOnlyPackage>
<DCC_Description>InstantObjects XML Design-Time Support (Delphi 2010)</DCC_Description>
<DCC_TypedAtParameter>true</DCC_TypedAtParameter>
Property changes on: trunk/Source/Catalogs/IBFb/D2010
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Property changes on: trunk/Source/Catalogs/MSSql/D2010
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Property changes on: trunk/Source/Catalogs/MySQL/D2010
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Property changes on: trunk/Source/Core/D2010
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
*.identcache
Property changes on: trunk/Source/Design/D2010
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Modified: trunk/Source/Design/D2010/DclIOCore.dproj
===================================================================
--- trunk/Source/Design/D2010/DclIOCore.dproj 2009-08-26 15:33:19 UTC (rev 865)
+++ trunk/Source/Design/D2010/DclIOCore.dproj 2009-08-26 15:45:12 UTC (rev 866)
@@ -20,7 +20,7 @@
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
- <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\DclIOCore_D14.bpl</DCC_DependencyCheckOutputName>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\7.0\Bpl\DclIOCore_D14.bpl</DCC_DependencyCheckOutputName>
<DesignOnlyPackage>true</DesignOnlyPackage>
<DCC_Description>InstantObjects Design-Time Package (Delphi 2010)</DCC_Description>
<DCC_TypedAtParameter>true</DCC_TypedAtParameter>
Property changes on: trunk/Source/PackageGroups/D2010
___________________________________________________________________
Added: svn:ignore
+ *.local
Added: trunk/Source/PackageGroups/D2010/DesignTimePackages.groupproj
===================================================================
--- trunk/Source/PackageGroups/D2010/DesignTimePackages.groupproj (rev 0)
+++ trunk/Source/PackageGroups/D2010/DesignTimePackages.groupproj 2009-08-26 15:45:12 UTC (rev 866)
@@ -0,0 +1,98 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{b0beaee6-5b6a-420d-a1e5-7be9568cd5a2}</ProjectGuid>
+ </PropertyGroup>
+ <ItemGroup>
+ <Projects Include="..\..\Design\D2010\DclIOCore.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Brokers\ADO\D2010\DclIOADO.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Brokers\BDE\D2010\DclIOBDE.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Brokers\DBX\D2010\DclIODBX.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Brokers\IBX\D2010\DclIOIBX.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Brokers\XML\D2010\DclIOXML.dproj">
+ <Dependencies/>
+ </Projects>
+ </ItemGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Default.Personality.12</Borland.Personality>
+ <Borland.ProjectType/>
+ <BorlandProject>
+ <BorlandProject>
+ <Default.Personality/>
+ </BorlandProject>
+ </BorlandProject>
+ </ProjectExtensions>
+ <Target Name="DclIOCore">
+ <MSBuild Projects="..\..\Design\D2010\DclIOCore.dproj"/>
+ </Target>
+ <Target Name="DclIOCore:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Design\D2010\DclIOCore.dproj"/>
+ </Target>
+ <Target Name="DclIOCore:Make">
+ <MSBuild Targets="Make" Projects="..\..\Design\D2010\DclIOCore.dproj"/>
+ </Target>
+ <Target Name="DclIOADO">
+ <MSBuild Projects="..\..\Brokers\ADO\D2010\DclIOADO.dproj"/>
+ </Target>
+ <Target Name="DclIOADO:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\ADO\D2010\DclIOADO.dproj"/>
+ </Target>
+ <Target Name="DclIOADO:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\ADO\D2010\DclIOADO.dproj"/>
+ </Target>
+ <Target Name="DclIOBDE">
+ <MSBuild Projects="..\..\Brokers\BDE\D2010\DclIOBDE.dproj"/>
+ </Target>
+ <Target Name="DclIOBDE:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\BDE\D2010\DclIOBDE.dproj"/>
+ </Target>
+ <Target Name="DclIOBDE:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\BDE\D2010\DclIOBDE.dproj"/>
+ </Target>
+ <Target Name="DclIODBX">
+ <MSBuild Projects="..\..\Brokers\DBX\D2010\DclIODBX.dproj"/>
+ </Target>
+ <Target Name="DclIODBX:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\DBX\D2010\DclIODBX.dproj"/>
+ </Target>
+ <Target Name="DclIODBX:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\DBX\D2010\DclIODBX.dproj"/>
+ </Target>
+ <Target Name="DclIOIBX">
+ <MSBuild Projects="..\..\Brokers\IBX\D2010\DclIOIBX.dproj"/>
+ </Target>
+ <Target Name="DclIOIBX:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\IBX\D2010\DclIOIBX.dproj"/>
+ </Target>
+ <Target Name="DclIOIBX:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\IBX\D2010\DclIOIBX.dproj"/>
+ </Target>
+ <Target Name="DclIOXML">
+ <MSBuild Projects="..\..\Brokers\XML\D2010\DclIOXML.dproj"/>
+ </Target>
+ <Target Name="DclIOXML:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\XML\D2010\DclIOXML.dproj"/>
+ </Target>
+ <Target Name="DclIOXML:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\XML\D2010\DclIOXML.dproj"/>
+ </Target>
+ <Target Name="Build">
+ <CallTarget Targets="DclIOCore;DclIOADO;DclIOBDE;DclIODBX;DclIOIBX;DclIOXML"/>
+ </Target>
+ <Target Name="Clean">
+ <CallTarget Targets="DclIOCore:Clean;DclIOADO:Clean;DclIOBDE:Clean;DclIODBX:Clean;DclIOIBX:Clean;DclIOXML:Clean"/>
+ </Target>
+ <Target Name="Make">
+ <CallTarget Targets="DclIOCore:Make;DclIOADO:Make;DclIOBDE:Make;DclIODBX:Make;DclIOIBX:Make;DclIOXML:Make"/>
+ </Target>
+ <Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
+ </Project>
Property changes on: trunk/Source/PackageGroups/D2010/DesignTimePackages.groupproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/PackageGroups/D2010/RunTimePackages.groupproj
===================================================================
--- trunk/Source/PackageGroups/D2010/RunTimePackages.groupproj (rev 0)
+++ trunk/Source/PackageGroups/D2010/RunTimePackages.groupproj 2009-08-26 15:45:12 UTC (rev 866)
@@ -0,0 +1,134 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{aa24332a-6806-448c-ab3d-ab0790ceec13}</ProjectGuid>
+ </PropertyGroup>
+ <ItemGroup>
+ <Projects Include="..\..\Core\D2010\IOCore.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Catalogs\IBFb\D2010\IOIBFbCatalog.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Catalogs\MSSql\D2010\IOMSSqlCatalog.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Catalogs\MySQL\D2010\IOMySQLCatalog.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Brokers\ADO\D2010\IOADO.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Brokers\BDE\D2010\IOBDE.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Brokers\DBX\D2010\IODBX.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Brokers\IBX\D2010\IOIBX.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Brokers\XML\D2010\IOXML.dproj">
+ <Dependencies/>
+ </Projects>
+ </ItemGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Default.Personality.12</Borland.Personality>
+ <Borland.ProjectType/>
+ <BorlandProject>
+ <BorlandProject>
+ <Default.Personality/>
+ </BorlandProject>
+ </BorlandProject>
+ </ProjectExtensions>
+ <Target Name="IOCore">
+ <MSBuild Projects="..\..\Core\D2010\IOCore.dproj"/>
+ </Target>
+ <Target Name="IOCore:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Core\D2010\IOCore.dproj"/>
+ </Target>
+ <Target Name="IOCore:Make">
+ <MSBuild Targets="Make" Projects="..\..\Core\D2010\IOCore.dproj"/>
+ </Target>
+ <Target Name="IOIBFbCatalog">
+ <MSBuild Projects="..\..\Catalogs\IBFb\D2010\IOIBFbCatalog.dproj"/>
+ </Target>
+ <Target Name="IOIBFbCatalog:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Catalogs\IBFb\D2010\IOIBFbCatalog.dproj"/>
+ </Target>
+ <Target Name="IOIBFbCatalog:Make">
+ <MSBuild Targets="Make" Projects="..\..\Catalogs\IBFb\D2010\IOIBFbCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMSSqlCatalog">
+ <MSBuild Projects="..\..\Catalogs\MSSql\D2010\IOMSSqlCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMSSqlCatalog:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Catalogs\MSSql\D2010\IOMSSqlCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMSSqlCatalog:Make">
+ <MSBuild Targets="Make" Projects="..\..\Catalogs\MSSql\D2010\IOMSSqlCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMySQLCatalog">
+ <MSBuild Projects="..\..\Catalogs\MySQL\D2010\IOMySQLCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMySQLCatalog:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Catalogs\MySQL\D2010\IOMySQLCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMySQLCatalog:Make">
+ <MSBuild Targets="Make" Projects="..\..\Catalogs\MySQL\D2010\IOMySQLCatalog.dproj"/>
+ </Target>
+ <Target Name="IOADO">
+ <MSBuild Projects="..\..\Brokers\ADO\D2010\IOADO.dproj"/>
+ </Target>
+ <Target Name="IOADO:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\ADO\D2010\IOADO.dproj"/>
+ </Target>
+ <Target Name="IOADO:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\ADO\D2010\IOADO.dproj"/>
+ </Target>
+ <Target Name="IOBDE">
+ <MSBuild Projects="..\..\Brokers\BDE\D2010\IOBDE.dproj"/>
+ </Target>
+ <Target Name="IOBDE:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\BDE\D2010\IOBDE.dproj"/>
+ </Target>
+ <Target Name="IOBDE:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\BDE\D2010\IOBDE.dproj"/>
+ </Target>
+ <Target Name="IODBX">
+ <MSBuild Projects="..\..\Brokers\DBX\D2010\IODBX.dproj"/>
+ </Target>
+ <Target Name="IODBX:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\DBX\D2010\IODBX.dproj"/>
+ </Target>
+ <Target Name="IODBX:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\DBX\D2010\IODBX.dproj"/>
+ </Target>
+ <Target Name="IOIBX">
+ <MSBuild Projects="..\..\Brokers\IBX\D2010\IOIBX.dproj"/>
+ </Target>
+ <Target Name="IOIBX:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\IBX\D2010\IOIBX.dproj"/>
+ </Target>
+ <Target Name="IOIBX:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\IBX\D2010\IOIBX.dproj"/>
+ </Target>
+ <Target Name="IOXML">
+ <MSBuild Projects="..\..\Brokers\XML\D2010\IOXML.dproj"/>
+ </Target>
+ <Target Name="IOXML:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\XML\D2010\IOXML.dproj"/>
+ </Target>
+ <Target Name="IOXML:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\XML\D2010\IOXML.dproj"/>
+ </Target>
+ <Target Name="Build">
+ <CallTarget Targets="IOCore;IOIBFbCatalog;IOMSSqlCatalog;IOMySQLCatalog;IOADO;IOBDE;IODBX;IOIBX;IOXML"/>
+ </Target>
+ <Target Name="Clean">
+ <CallTarget Targets="IOCore:Clean;IOIBFbCatalog:Clean;IOMSSqlCatalog:Clean;IOMySQLCatalog:Clean;IOADO:Clean;IOBDE:Clean;IODBX:Clean;IOIBX:Clean;IOXML:Clean"/>
+ </Target>
+ <Target Name="Make">
+ <CallTarget Targets="IOCore:Make;IOIBFbCatalog:Make;IOMSSqlCatalog:Make;IOMySQLCatalog:Make;IOADO:Make;IOBDE:Make;IODBX:Make;IOIBX:Make;IOXML:Make"/>
+ </Target>
+ <Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
+ </Project>
Property changes on: trunk/Source/PackageGroups/D2010/RunTimePackages.groupproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Deleted: trunk/Tests/TestIO_D2010.dpr
===================================================================
--- trunk/Tests/TestIO_D2010.dpr 2009-08-26 15:33:19 UTC (rev 865)
+++ trunk/Tests/TestIO_D2010.dpr 2009-08-26 15:45:12 UTC (rev 866)
@@ -1,68 +0,0 @@
-program TestIO_D2009;
-
-{$I '..\Source\InstantDefines.inc'}
-
-{$IFDEF FPC}
-{$mode objfpc}{$H+}
-{$ENDIF}
-
-uses
- Forms,
- guitestrunner,
- fpcunit,
- testregistry,
- testutils,
- testreport,
- InstantPersistence,
- InstantMock in 'InstantMock.pas',
- TestMockConnector in 'TestMockConnector.pas',
- TestMockBroker in 'TestMockBroker.pas',
- TestModel in 'TestModel.pas',
- TestInstantMetadata in 'TestInstantMetadata.pas',
- TestInstantFieldMetadata in 'TestInstantFieldMetadata.pas',
- TestInstantClassMetadata in 'TestInstantClassMetadata.pas',
- TestInstantAttributeMetadata in 'TestInstantAttributeMetadata.pas',
- TestInstantIndexMetadata in 'TestInstantIndexMetadata.pas',
- TestInstantTableMetadata in 'TestInstantTableMetadata.pas',
- TestInstantScheme in 'TestInstantScheme.pas',
- TestInstantClasses in 'TestInstantClasses.pas',
- TestInstantRtti in 'TestInstantRtti.pas',
- TestMinimalModel in 'TestMinimalModel.pas',
- TestInstantAttributeMap in 'TestInstantAttributeMap.pas',
- TestInstantAttribute in 'TestInstantAttribute.pas',
- TestInstantNumeric in 'TestInstantNumeric.pas',
- TestInstantInteger in 'TestInstantInteger.pas',
- TestInstantString in 'TestInstantString.pas',
- TestInstantDateTime in 'TestInstantDateTime.pas',
- TestInstantDate in 'TestInstantDate.pas',
- TestInstantTime in 'TestInstantTime.pas',
- TestInstantBoolean in 'TestInstantBoolean.pas',
- TestInstantFloat in 'TestInstantFloat.pas',
- TestInstantCurrency in 'TestInstantCurrency.pas',
- TestInstantBlob in 'TestInstantBlob.pas',
- TestInstantComplex in 'TestInstantComplex.pas',
- TestInstantPart in 'TestInstantPart.pas',
- TestInstantReference in 'TestInstantReference.pas',
- TestInstantObject in 'TestInstantObject.pas',
- TestInstantObjectState in 'TestInstantObjectState.pas',
- TestInstantCache in 'TestInstantCache.pas',
- TestInstantObjectStore in 'TestInstantObjectStore.pas',
- TestInstantParts in 'TestInstantParts.pas',
- TestInstantReferences in 'TestInstantReferences.pas',
- TestInstantCircularReferences in 'TestInstantCircularReferences.pas',
- TestInstantObjectReference in 'TestInstantObjectReference.pas',
- MinimalModel in 'MinimalModel.pas',
- TestXMLBroker in 'TestXMLBroker.pas',
- TestInstantCode in 'TestInstantCode.pas';
-
-{$R *.res}
-{$R *.mdr} {TestModel}
-
-begin
- Application.Initialize;
- InstantModel.ClassMetadatas.Clear;
- Application.CreateForm(TGUITestRunner, TestRunner);
- //Application.CreateForm(TTestRunner, TestRunner);
- Application.Run;
-end.
-
Deleted: trunk/Tests/TestIO_D2010.dproj
===================================================================
--- trunk/Tests/TestIO_D2010.dproj 2009-08-26 15:33:19 UTC (rev 865)
+++ trunk/Tests/TestIO_D2010.dproj 2009-08-26 15:45:12 UTC (rev 866)
@@ -1,159 +0,0 @@
- <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <ProjectGuid>{015d41df-eb42-4172-b75c-3e0f464f00cc}</ProjectGuid>
- <MainSource>TestIO_D2009.dpr</MainSource>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
- <DCC_DependencyCheckOutputName>TestIO_D2009.exe</DCC_DependencyCheckOutputName>
- <ProjectVersion>12.0</ProjectVersion>
- <Config Condition="'$(Config)'==''">Debug</Config>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
- <Base>true</Base>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
- <Cfg_1>true</Cfg_1>
- <CfgParent>Base</CfgParent>
- <Base>true</Base>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
- <Cfg_2>true</Cfg_2>
- <CfgParent>Base</CfgParent>
- <Base>true</Base>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Base)'!=''">
- <DCC_UnitSearchPath>..\Source\Core;..\Source\Brokers\XML;.\ubmock\src;.\DUnit\src;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
- <DCC_DebugDCUs>true</DCC_DebugDCUs>
- <DCC_DependencyCheckOutputName>TestIO_D2009.exe</DCC_DependencyCheckOutputName>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Cfg_1)'!=''">
- <Version>7.0</Version>
- <DCC_DebugInformation>False</DCC_DebugInformation>
- <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
- <DCC_Optimize>False</DCC_Optimize>
- <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
- <DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
- <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
- <DCC_ResourcePath>..\Source\Core;.\ubmock\src;$(DCC_ResourcePath)</DCC_ResourcePath>
- <DCC_ObjPath>..\Source\Core;.\ubmock\src;$(DCC_ObjPath)</DCC_ObjPath>
- <DCC_IncludePath>..\Source\Core;.\ubmock\src;$(DCC_IncludePath)</DCC_IncludePath>
- <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Cfg_2)'!=''">
- <Version>7.0</Version>
- <DCC_Optimize>False</DCC_Optimize>
- <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
- <DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
- <DCC_ResourcePath>..\Source\Core;.\ubmock\src;$(DCC_ResourcePath)</DCC_ResourcePath>
- <DCC_ObjPath>..\Source\Core;.\ubmock\src;$(DCC_ObjPath)</DCC_ObjPath>
- <DCC_IncludePath>..\Source\Core;.\ubmock\src;$(DCC_IncludePath)</DCC_IncludePath>
- <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
- </PropertyGroup>
- <ItemGroup>
- <DelphiCompile Include="TestIO_D2009.dpr">
- <MainSource>MainSource</MainSource>
- </DelphiCompile>
- <DCCReference Include="InstantMock.pas"/>
- <DCCReference Include="TestMockConnector.pas"/>
- <DCCReference Include="TestMockBroker.pas"/>
- <DCCReference Include="TestModel.pas"/>
- <DCCReference Include="TestInstantMetadata.pas"/>
- <DCCReference Include="TestInstantFieldMetadata.pas"/>
- <DCCReference Include="TestInstantClassMetadata.pas"/>
- <DCCReference Include="TestInstantAttributeMetadata.pas"/>
- <DCCReference Include="TestInstantIndexMetadata.pas"/>
- <DCCReference Include="TestInstantTableMetadata.pas"/>
- <DCCReference Include="TestInstantScheme.pas"/>
- <DCCReference Include="TestInstantClasses.pas"/>
- <DCCReference Include="TestInstantRtti.pas"/>
- <DCCReference Include="TestMinimalModel.pas"/>
- <DCCReference Include="TestInstantAttributeMap.pas"/>
- <DCCReference Include="TestInstantAttribute.pas"/>
- <DCCReference Include="TestInstantNumeric.pas"/>
- <DCCReference Include="TestInstantInteger.pas"/>
- <DCCReference Include="TestInstantString.pas"/>
- <DCCReference Include="TestInstantDateTime.pas"/>
- <DCCReference Include="TestInstantDate.pas"/>
- <DCCReference Include="TestInstantTime.pas"/>
- <DCCReference Include="TestInstantBoolean.pas"/>
- <DCCReference Include="TestInstantFloat.pas"/>
- <DCCReference Include="TestInstantCurrency.pas"/>
- <DCCReference Include="TestInstantBlob.pas"/>
- <DCCReference Include="TestInstantComplex.pas"/>
- <DCCReference Include="TestInstantPart.pas"/>
- <DCCReference Include="TestInstantReference.pas"/>
- <DCCReference Include="TestInstantObject.pas"/>
- <DCCReference Include="TestInstantObjectState.pas"/>
- <DCCReference Include="TestInstantCache.pas"/>
- <DCCReference Include="TestInstantObjectStore.pas"/>
- <DCCReference Include="TestInstantParts.pas"/>
- <DCCReference Include="TestInstantReferences.pas"/>
- <DCCReference Include="TestInstantCircularReferences.pas"/>
- <DCCReference Include="TestInstantObjectReference.pas"/>
- <DCCReference Include="MinimalModel.pas"/>
- <DCCReference Include="TestXMLBroker.pas"/>
- <DCCReference Include="TestInstantCode.pas"/>
- <BuildConfiguration Include="Base">
- <Key>Base</Key>
- </BuildConfiguration>
- <BuildConfiguration Include="Debug">
- <Key>Cfg_2</Key>
- <CfgParent>Base</CfgParent>
- </BuildConfiguration>
- <BuildConfiguration Include="Release">
- <Key>Cfg_1</Key>
- <CfgParent>Base</CfgParent>
- </BuildConfiguration>
- </ItemGroup>
- <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
- <ProjectExtensions>
- <Borland.Personality>Delphi.Personality.12</Borland.Personality>
- <Borland.ProjectType>VCLApplication</Borland.ProjectType>
- <BorlandProject>
- <Delphi.Personality>
- <Compiler>
- <Compiler Name="UsePackages">False</Compiler>
- <Compiler Name="Packages">vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;adortl;vclactnband;vclshlctrls;CS30Logging70;Rz30Ctls70;Rz30DBCtls70;ip4000v7;Rave60VCL;Rave60CLX;madBasic_;madDisAsm_;CLXIB;ibxpress;VCLIB;IOCore;IOIBX</Compiler>
- </Compiler>
- <Parameters>
- <Parameters Name="DebugSourceDirs">..\Source\Core</Parameters>
- <Parameters Name="UseLauncher">False</Parameters>
- <Parameters Name="LoadAllSymbols">True</Parameters>
- <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
- </Parameters>
- <VersionInfo>
- <VersionInfo Name="IncludeVerInfo">False</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">3081</VersionInfo>
- <VersionInfo Name="CodePage">1252</VersionInfo>
- </VersionInfo>
- <VersionInfoKeys>
- <VersionInfoKeys Name="CompanyName"/>
- <VersionInfoKeys Name="FileDescription"/>
- <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
- <VersionInfoKeys Name="InternalName"/>
- <VersionInfoKeys Name="LegalCopyright"/>
- <VersionInfoKeys Name="LegalTrademarks"/>
- <VersionInfoKeys Name="OriginalFilename"/>
- <VersionInfoKeys Name="ProductName"/>
- <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
- <VersionInfoKeys Name="Comments"/>
- </VersionInfoKeys>
- <Source>
- <Source Name="MainSource">TestIO_D2009.dpr</Source>
- </Source>
- </Delphi.Personality>
- </BorlandProject>
- <ProjectFileVersion>12</ProjectFileVersion>
- </ProjectExtensions>
- </Project>
Deleted: trunk/Tests/TestIO_D2010.res
===================================================================
(Binary files differ)
|
|
From: <na...@us...> - 2009-08-26 15:33:37
|
Revision: 865
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=865&view=rev
Author: nandod
Date: 2009-08-26 15:33:19 +0000 (Wed, 26 Aug 2009)
Log Message:
-----------
* Better fix for rev. 859. Previous version caused unwarranted exceptions with IQL statements set at design time.
Modified Paths:
--------------
trunk/Source/Core/InstantCommand.pas
Modified: trunk/Source/Core/InstantCommand.pas
===================================================================
--- trunk/Source/Core/InstantCommand.pas 2009-08-26 01:03:07 UTC (rev 864)
+++ trunk/Source/Core/InstantCommand.pas 2009-08-26 15:33:19 UTC (rev 865)
@@ -1499,17 +1499,20 @@
procedure TInstantIQLClassRef.ReadObject(Reader: TInstantIQLReader);
var
Token: string;
+ LClass: TPersistentClass;
begin
inherited;
Token := Reader.ReadToken;
FAny := SameText(Token, 'ANY');
if FAny then
Token := Reader.ReadToken;
- // This call has the double effect of checking that the class exists early
- // during statement parsing, and correcting the class name if it's written
- // with wrong capitalization (something that would create problems with
- // case-sensitive databases).
- FObjectClassName := FindClass(Token).ClassName;
+ // Fix the class name in case it's written with wrong capitalization
+ // (something that would create problems with case-sensitive databases).
+ LClass := GetClass(Token);
+ if Assigned(LClass) then
+ FObjectClassName := LClass.ClassName
+ else
+ FObjectClassName := Token;
end;
procedure TInstantIQLClassRef.WriteObject(Writer: TInstantIQLWriter);
|
|
From: <dav...@us...> - 2009-08-26 01:03:16
|
Revision: 864
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=864&view=rev
Author: davidvtaylor
Date: 2009-08-26 01:03:07 +0000 (Wed, 26 Aug 2009)
Log Message:
-----------
Initial port to Delphi 2010 - all unit tests pass!
+ Add packages for Core, Design, Catalogs and standard Brokers
+ Add packages for AnyDAC broker (not fully tested - waiting for RemObjects Aug 2009 release)
+ Add Classes to uses of validation units to suppress method inlining warning
+ Port unit test project to D2010
Modified Paths:
--------------
trunk/Source/Core/InstantStandardValidators.pas
trunk/Source/Core/InstantValidation.pas
Added Paths:
-----------
trunk/Source/Brokers/ADO/D2010/
trunk/Source/Brokers/ADO/D2010/DclIOADO.dpk
trunk/Source/Brokers/ADO/D2010/DclIOADO.dproj
trunk/Source/Brokers/ADO/D2010/DclIOADO.res
trunk/Source/Brokers/ADO/D2010/IOADO.dpk
trunk/Source/Brokers/ADO/D2010/IOADO.dproj
trunk/Source/Brokers/ADO/D2010/IOADO.res
trunk/Source/Brokers/AnyDAC/D2010/
trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.dpk
trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.dproj
trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.res
trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.dpk
trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.dproj
trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.res
trunk/Source/Brokers/BDE/D2010/
trunk/Source/Brokers/BDE/D2010/DclIOBDE.dpk
trunk/Source/Brokers/BDE/D2010/DclIOBDE.dproj
trunk/Source/Brokers/BDE/D2010/DclIOBDE.res
trunk/Source/Brokers/BDE/D2010/IOBDE.dpk
trunk/Source/Brokers/BDE/D2010/IOBDE.dproj
trunk/Source/Brokers/BDE/D2010/IOBDE.res
trunk/Source/Brokers/DBX/D2010/
trunk/Source/Brokers/DBX/D2010/DclIODBX.dpk
trunk/Source/Brokers/DBX/D2010/DclIODBX.dproj
trunk/Source/Brokers/DBX/D2010/DclIODBX.res
trunk/Source/Brokers/DBX/D2010/IODBX.dpk
trunk/Source/Brokers/DBX/D2010/IODBX.dproj
trunk/Source/Brokers/DBX/D2010/IODBX.res
trunk/Source/Brokers/IBX/D2010/
trunk/Source/Brokers/IBX/D2010/DclIOIBX.dpk
trunk/Source/Brokers/IBX/D2010/DclIOIBX.dproj
trunk/Source/Brokers/IBX/D2010/DclIOIBX.res
trunk/Source/Brokers/IBX/D2010/IOIBX.dpk
trunk/Source/Brokers/IBX/D2010/IOIBX.dproj
trunk/Source/Brokers/IBX/D2010/IOIBX.res
trunk/Source/Brokers/XML/D2010/
trunk/Source/Brokers/XML/D2010/DclIOXML.dpk
trunk/Source/Brokers/XML/D2010/DclIOXML.dproj
trunk/Source/Brokers/XML/D2010/DclIOXML.res
trunk/Source/Brokers/XML/D2010/IOXML.dpk
trunk/Source/Brokers/XML/D2010/IOXML.dproj
trunk/Source/Brokers/XML/D2010/IOXML.res
trunk/Source/Catalogs/IBFb/D2010/
trunk/Source/Catalogs/IBFb/D2010/IOIBFbCatalog.dpk
trunk/Source/Catalogs/IBFb/D2010/IOIBFbCatalog.dproj
trunk/Source/Catalogs/IBFb/D2010/IOIBFbCatalog.res
trunk/Source/Catalogs/MSSql/D2010/
trunk/Source/Catalogs/MSSql/D2010/IOMSSqlCatalog.dpk
trunk/Source/Catalogs/MSSql/D2010/IOMSSqlCatalog.dproj
trunk/Source/Catalogs/MSSql/D2010/IOMSSqlCatalog.res
trunk/Source/Catalogs/MySQL/D2010/
trunk/Source/Catalogs/MySQL/D2010/IOMySQLCatalog.dpk
trunk/Source/Catalogs/MySQL/D2010/IOMySQLCatalog.dproj
trunk/Source/Catalogs/MySQL/D2010/IOMySQLCatalog.res
trunk/Source/Core/D2010/
trunk/Source/Core/D2010/IOCore.dpk
trunk/Source/Core/D2010/IOCore.dproj
trunk/Source/Core/D2010/IOCore.res
trunk/Source/Design/D2010/
trunk/Source/Design/D2010/DclIOCore.dpk
trunk/Source/Design/D2010/DclIOCore.dproj
trunk/Source/Design/D2010/DclIOCore.res
trunk/Tests/TestIO_D2010.dpr
trunk/Tests/TestIO_D2010.dproj
trunk/Tests/TestIO_D2010.res
Added: trunk/Source/Brokers/ADO/D2010/DclIOADO.dpk
===================================================================
--- trunk/Source/Brokers/ADO/D2010/DclIOADO.dpk (rev 0)
+++ trunk/Source/Brokers/ADO/D2010/DclIOADO.dpk 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,38 @@
+package DclIOADO;
+
+{$R *.res}
+{$R '..\InstantADO.dcr'}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS ON}
+{$RANGECHECKS ON}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DESCRIPTION 'InstantObjects ADO Design-Time Support (Delphi 2010)'}
+{$LIBSUFFIX '_D14'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ IOADO;
+
+contains
+ InstantADOReg in '..\InstantADOReg.pas';
+
+end.
Property changes on: trunk/Source/Brokers/ADO/D2010/DclIOADO.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/ADO/D2010/DclIOADO.dproj
===================================================================
--- trunk/Source/Brokers/ADO/D2010/DclIOADO.dproj (rev 0)
+++ trunk/Source/Brokers/ADO/D2010/DclIOADO.dproj 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,116 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{E0EE3CA6-D975-4E62-B964-C20686397283}</ProjectGuid>
+ <MainSource>DclIOADO.dpk</MainSource>
+ <Config Condition="'$(Config)'==''">Debug</Config>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <ProjectVersion>12.0</ProjectVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
+ <Cfg_1>true</Cfg_1>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
+ <Cfg_2>true</Cfg_2>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Base)'!=''">
+ <DesignOnlyPackage>true</DesignOnlyPackage>
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ <DllSuffix>_D14</DllSuffix>
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\DclIOADO_D14.bpl</DCC_DependencyCheckOutputName>
+ <DCC_RangeChecking>true</DCC_RangeChecking>
+ <DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;$(DCC_UnitAlias)</DCC_UnitAlias>
+ <DCC_Description>InstantObjects ADO Design-Time Support (Delphi 2010)</DCC_Description>
+ <DCC_Platform>x86</DCC_Platform>
+ <DCC_S>false</DCC_S>
+ <DCC_N>false</DCC_N>
+ <GenDll>true</GenDll>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <DCC_K>false</DCC_K>
+ <DCC_IntegerOverflowCheck>true</DCC_IntegerOverflowCheck>
+ <GenPackage>true</GenPackage>
+ <DCC_F>false</DCC_F>
+ <DCC_E>false</DCC_E>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_DebugInformation>false</DCC_DebugInformation>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <ItemGroup>
+ <DelphiCompile Include="DclIOADO.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="..\InstantADO.dcr"/>
+ <DCCReference Include="rtl.dcp"/>
+ <DCCReference Include="IOADO.dcp"/>
+ <DCCReference Include="..\InstantADOReg.pas"/>
+ <BuildConfiguration Include="Base">
+ <Key>Base</Key>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Debug">
+ <Key>Cfg_2</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Release">
+ <Key>Cfg_1</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ </ItemGroup>
+ <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Source>
+ <Source Name="MainSource">DclIOADO.dpk</Source>
+ </Source>
+ <Parameters>
+ <Parameters Name="UseLauncher">False</Parameters>
+ <Parameters Name="LoadAllSymbols">True</Parameters>
+ <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
+ </Parameters>
+ <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">1033</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName"/>
+ <VersionInfoKeys Name="FileDescription"/>
+ <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName"/>
+ <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ </Project>
Property changes on: trunk/Source/Brokers/ADO/D2010/DclIOADO.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/ADO/D2010/DclIOADO.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/ADO/D2010/DclIOADO.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/ADO/D2010/IOADO.dpk
===================================================================
--- trunk/Source/Brokers/ADO/D2010/IOADO.dpk (rev 0)
+++ trunk/Source/Brokers/ADO/D2010/IOADO.dpk 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,44 @@
+package IOADO;
+
+{$R *.res}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST ON}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DESCRIPTION 'InstantObjects ADO Run-Time Support (Delphi 2010)'}
+{$LIBSUFFIX '_D14'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ vcldb,
+ adortl,
+ IOCore,
+ IOMSSqlCatalog;
+
+contains
+ InstantADOX in '..\InstantADOX.pas',
+ InstantADOJRO in '..\InstantADOJRO.pas',
+ InstantADOTools in '..\InstantADOTools.pas',
+ InstantADOConnectionDefEdit in '..\InstantADOConnectionDefEdit.pas' {InstantADOConnectionDefEditForm},
+ InstantADO in '..\InstantADO.pas';
+
+end.
Property changes on: trunk/Source/Brokers/ADO/D2010/IOADO.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/ADO/D2010/IOADO.dproj
===================================================================
--- trunk/Source/Brokers/ADO/D2010/IOADO.dproj (rev 0)
+++ trunk/Source/Brokers/ADO/D2010/IOADO.dproj 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,123 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{BF5FCE65-8CE6-49DA-80A0-E55081BF9F72}</ProjectGuid>
+ <MainSource>IOADO.dpk</MainSource>
+ <Config Condition="'$(Config)'==''">Debug</Config>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <ProjectVersion>12.0</ProjectVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
+ <Cfg_1>true</Cfg_1>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
+ <Cfg_2>true</Cfg_2>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Base)'!=''">
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\IOADO_D14.bpl</DCC_DependencyCheckOutputName>
+ <DllSuffix>_D14</DllSuffix>
+ <DCC_WriteableConstants>true</DCC_WriteableConstants>
+ <DCC_Platform>x86</DCC_Platform>
+ <DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;$(DCC_UnitAlias)</DCC_UnitAlias>
+ <RuntimeOnlyPackage>true</RuntimeOnlyPackage>
+ <DCC_Description>InstantObjects ADO Run-Time Support (Delphi 2010)</DCC_Description>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ <DCC_S>false</DCC_S>
+ <DCC_N>false</DCC_N>
+ <GenDll>true</GenDll>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <DCC_E>false</DCC_E>
+ <GenPackage>true</GenPackage>
+ <DCC_K>false</DCC_K>
+ <DCC_F>false</DCC_F>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_DebugInformation>false</DCC_DebugInformation>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <ItemGroup>
+ <DelphiCompile Include="IOADO.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="vcl.dcp"/>
+ <DCCReference Include="vcldb.dcp"/>
+ <DCCReference Include="adortl.dcp"/>
+ <DCCReference Include="IOCore.dcp"/>
+ <DCCReference Include="IOMSSqlCatalog.dcp"/>
+ <DCCReference Include="..\InstantADOX.pas"/>
+ <DCCReference Include="..\InstantADOJRO.pas"/>
+ <DCCReference Include="..\InstantADOTools.pas"/>
+ <DCCReference Include="..\InstantADOConnectionDefEdit.pas">
+ <Form>InstantADOConnectionDefEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantADO.pas"/>
+ <BuildConfiguration Include="Base">
+ <Key>Base</Key>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Debug">
+ <Key>Cfg_2</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Release">
+ <Key>Cfg_1</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ </ItemGroup>
+ <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Source>
+ <Source Name="MainSource">IOADO.dpk</Source>
+ </Source>
+ <Parameters>
+ <Parameters Name="UseLauncher">False</Parameters>
+ <Parameters Name="LoadAllSymbols">True</Parameters>
+ <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
+ </Parameters>
+ <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">1033</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName"/>
+ <VersionInfoKeys Name="FileDescription"/>
+ <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName"/>
+ <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ </Project>
Property changes on: trunk/Source/Brokers/ADO/D2010/IOADO.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/ADO/D2010/IOADO.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/ADO/D2010/IOADO.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.dpk
===================================================================
--- trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.dpk (rev 0)
+++ trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.dpk 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,39 @@
+package DclIOAnyDAC;
+
+{$R *.res}
+{$R '..\InstantAnyDAC.dcr'}
+
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS ON}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DESCRIPTION 'InstantObjects AnyDAC Design-Time Support (Delphi 2010)'}
+{$LIBSUFFIX '_D14'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ IOAnyDAC;
+
+contains
+ InstantAnyDACReg in '..\InstantAnyDACReg.pas';
+
+end.
+
Property changes on: trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.dproj
===================================================================
--- trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.dproj (rev 0)
+++ trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.dproj 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,115 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{A2BC22CD-E13F-451F-B150-873A254827A7}</ProjectGuid>
+ <MainSource>DclIOAnyDAC.dpk</MainSource>
+ <Config Condition="'$(Config)'==''">Debug</Config>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <ProjectVersion>12.0</ProjectVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
+ <Cfg_1>true</Cfg_1>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
+ <Cfg_2>true</Cfg_2>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Base)'!=''">
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\DclIOAnyDAC_D14.bpl</DCC_DependencyCheckOutputName>
+ <DesignOnlyPackage>true</DesignOnlyPackage>
+ <DCC_Description>InstantObjects AnyDAC Design-Time Support (Delphi 2010)</DCC_Description>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;$(DCC_UnitAlias)</DCC_UnitAlias>
+ <GenPackage>true</GenPackage>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <DllSuffix>_D14</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <DCC_Platform>x86</DCC_Platform>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_DebugInformation>false</DCC_DebugInformation>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <ItemGroup>
+ <DelphiCompile Include="DclIOAnyDAC.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="..\InstantAnyDAC.dcr"/>
+ <DCCReference Include="IOAnyDAC.dcp"/>
+ <DCCReference Include="..\InstantAnyDACReg.pas"/>
+ <BuildConfiguration Include="Base">
+ <Key>Base</Key>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Debug">
+ <Key>Cfg_2</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Release">
+ <Key>Cfg_1</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ </ItemGroup>
+ <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Source>
+ <Source Name="MainSource">DclIOAnyDAC.dpk</Source>
+ </Source>
+ <Parameters>
+ <Parameters Name="UseLauncher">False</Parameters>
+ <Parameters Name="LoadAllSymbols">True</Parameters>
+ <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
+ </Parameters>
+ <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">1033</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName"/>
+ <VersionInfoKeys Name="FileDescription"/>
+ <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName"/>
+ <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcboffice2k140.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcbofficexp140.bpl">Embarcadero C++Builder Office XP Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dcloffice2k140.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dclofficexp140.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
+ </Excluded_Packages>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ </Project>
Property changes on: trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/AnyDAC/D2010/DclIOAnyDAC.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.dpk
===================================================================
--- trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.dpk (rev 0)
+++ trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.dpk 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,42 @@
+package IOAnyDAC;
+
+{$R *.res}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS ON}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DESCRIPTION 'InstantObjects AnyDAC Run-Time Support (Delphi 2010)'}
+{$LIBSUFFIX '_D14'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ IOCore,
+ xmlrtl,
+ AnyDAC_Phys,
+ AnyDAC_ComI,
+ AnyDAC_Comp;
+
+contains
+ InstantAnyDAC in '..\InstantAnyDAC.pas',
+ InstantAnyDACCatalog in '..\InstantAnyDACCatalog.pas',
+ InstantAnyDACConnectionDefEdit in '..\InstantAnyDACConnectionDefEdit.pas' {InstantAnyDACConnectionDefEditForm};
+
+end.
Property changes on: trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.dproj
===================================================================
--- trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.dproj (rev 0)
+++ trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.dproj 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,122 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{B2FCAE40-1DA4-401B-878A-1D0C9AB45191}</ProjectGuid>
+ <MainSource>IOAnyDAC.dpk</MainSource>
+ <Config Condition="'$(Config)'==''">Debug</Config>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <ProjectVersion>12.0</ProjectVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
+ <Cfg_1>true</Cfg_1>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
+ <Cfg_2>true</Cfg_2>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Base)'!=''">
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\IOAnyDAC_D14.bpl</DCC_DependencyCheckOutputName>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <RuntimeOnlyPackage>true</RuntimeOnlyPackage>
+ <DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;$(DCC_UnitAlias)</DCC_UnitAlias>
+ <DCC_Description>InstantObjects AnyDAC Run-Time Support (Delphi 2010)</DCC_Description>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D14</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <DCC_Platform>x86</DCC_Platform>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_DebugInformation>false</DCC_DebugInformation>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <ItemGroup>
+ <DelphiCompile Include="IOAnyDAC.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="IOCore.dcp"/>
+ <DCCReference Include="xmlrtl.dcp"/>
+ <DCCReference Include="AnyDAC_Phys.dcp"/>
+ <DCCReference Include="AnyDAC_ComI.dcp"/>
+ <DCCReference Include="AnyDAC_Comp.dcp"/>
+ <DCCReference Include="..\InstantAnyDAC.pas"/>
+ <DCCReference Include="..\InstantAnyDACCatalog.pas"/>
+ <DCCReference Include="..\InstantAnyDACConnectionDefEdit.pas">
+ <Form>InstantAnyDACConnectionDefEditForm</Form>
+ </DCCReference>
+ <BuildConfiguration Include="Base">
+ <Key>Base</Key>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Debug">
+ <Key>Cfg_2</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Release">
+ <Key>Cfg_1</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ </ItemGroup>
+ <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Source>
+ <Source Name="MainSource">IOAnyDAC.dpk</Source>
+ </Source>
+ <Parameters>
+ <Parameters Name="UseLauncher">False</Parameters>
+ <Parameters Name="LoadAllSymbols">True</Parameters>
+ <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
+ </Parameters>
+ <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">1033</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName"/>
+ <VersionInfoKeys Name="FileDescription"/>
+ <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName"/>
+ <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcboffice2k140.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcbofficexp140.bpl">Embarcadero C++Builder Office XP Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dcloffice2k140.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dclofficexp140.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
+ </Excluded_Packages>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ </Project>
Property changes on: trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/AnyDAC/D2010/IOAnyDAC.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/BDE/D2010/DclIOBDE.dpk
===================================================================
--- trunk/Source/Brokers/BDE/D2010/DclIOBDE.dpk (rev 0)
+++ trunk/Source/Brokers/BDE/D2010/DclIOBDE.dpk 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,41 @@
+package DclIOBDE;
+
+{$R *.res}
+{$R '..\InstantBDE.dcr'}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS ON}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DESCRIPTION 'InstantObjects BDE Design-Time Support (Delphi 2010)'}
+{$LIBSUFFIX '_D14'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ vcldb,
+ bdertl,
+ IOCore,
+ IOBDE;
+
+contains
+ InstantBDEReg in '..\InstantBDEReg.pas';
+
+end.
Property changes on: trunk/Source/Brokers/BDE/D2010/DclIOBDE.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/BDE/D2010/DclIOBDE.dproj
===================================================================
--- trunk/Source/Brokers/BDE/D2010/DclIOBDE.dproj (rev 0)
+++ trunk/Source/Brokers/BDE/D2010/DclIOBDE.dproj 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,119 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{BDFB4250-0540-424D-93CE-7A9771B6CA22}</ProjectGuid>
+ <MainSource>DclIOBDE.dpk</MainSource>
+ <Config Condition="'$(Config)'==''">Debug</Config>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <ProjectVersion>12.0</ProjectVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
+ <Cfg_1>true</Cfg_1>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
+ <Cfg_2>true</Cfg_2>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Base)'!=''">
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\DclIOBDE_D14.bpl</DCC_DependencyCheckOutputName>
+ <DesignOnlyPackage>true</DesignOnlyPackage>
+ <DCC_Description>InstantObjects BDE Design-Time Support (Delphi 2010)</DCC_Description>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;$(DCC_UnitAlias)</DCC_UnitAlias>
+ <GenPackage>true</GenPackage>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <DllSuffix>_D14</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <DCC_Platform>x86</DCC_Platform>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_DebugInformation>false</DCC_DebugInformation>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <ItemGroup>
+ <DelphiCompile Include="DclIOBDE.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="..\InstantBDE.dcr"/>
+ <DCCReference Include="vcl.dcp"/>
+ <DCCReference Include="vcldb.dcp"/>
+ <DCCReference Include="bdertl.dcp"/>
+ <DCCReference Include="IOCore.dcp"/>
+ <DCCReference Include="IOBDE.dcp"/>
+ <DCCReference Include="..\InstantBDEReg.pas"/>
+ <BuildConfiguration Include="Base">
+ <Key>Base</Key>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Debug">
+ <Key>Cfg_2</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Release">
+ <Key>Cfg_1</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ </ItemGroup>
+ <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Source>
+ <Source Name="MainSource">DclIOBDE.dpk</Source>
+ </Source>
+ <Parameters>
+ <Parameters Name="UseLauncher">False</Parameters>
+ <Parameters Name="LoadAllSymbols">True</Parameters>
+ <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
+ </Parameters>
+ <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">1033</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName"/>
+ <VersionInfoKeys Name="FileDescription"/>
+ <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName"/>
+ <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcboffice2k140.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcbofficexp140.bpl">Embarcadero C++Builder Office XP Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dcloffice2k140.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dclofficexp140.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
+ </Excluded_Packages>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ </Project>
Property changes on: trunk/Source/Brokers/BDE/D2010/DclIOBDE.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/BDE/D2010/DclIOBDE.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/BDE/D2010/DclIOBDE.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/BDE/D2010/IOBDE.dpk
===================================================================
--- trunk/Source/Brokers/BDE/D2010/IOBDE.dpk (rev 0)
+++ trunk/Source/Brokers/BDE/D2010/IOBDE.dpk 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,41 @@
+package IOBDE;
+
+{$R *.res}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS ON}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DESCRIPTION 'InstantObjects BDE Run-Time Support (Delphi 2010)'}
+{$LIBSUFFIX '_D14'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ vcldb,
+ bdertl,
+ IOCore;
+
+contains
+ InstantBDECatalog in '..\InstantBDECatalog.pas',
+ InstantBDEConnectionDefEdit in '..\InstantBDEConnectionDefEdit.pas' {InstantBDEConnectionDefEditForm},
+ InstantBDE in '..\InstantBDE.pas';
+
+end.
Property changes on: trunk/Source/Brokers/BDE/D2010/IOBDE.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/BDE/D2010/IOBDE.dproj
===================================================================
--- trunk/Source/Brokers/BDE/D2010/IOBDE.dproj (rev 0)
+++ trunk/Source/Brokers/BDE/D2010/IOBDE.dproj 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,121 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{51CF2FF0-F06C-405A-BECE-640C3FD6027E}</ProjectGuid>
+ <MainSource>IOBDE.dpk</MainSource>
+ <Config Condition="'$(Config)'==''">Debug</Config>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <ProjectVersion>12.0</ProjectVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
+ <Cfg_1>true</Cfg_1>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
+ <Cfg_2>true</Cfg_2>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Base)'!=''">
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\IOBDE_D14.bpl</DCC_DependencyCheckOutputName>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <RuntimeOnlyPackage>true</RuntimeOnlyPackage>
+ <DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;$(DCC_UnitAlias)</DCC_UnitAlias>
+ <DCC_Description>InstantObjects BDE Run-Time Support (Delphi 2010)</DCC_Description>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D14</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <DCC_Platform>x86</DCC_Platform>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_DebugInformation>false</DCC_DebugInformation>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <ItemGroup>
+ <DelphiCompile Include="IOBDE.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="vcl.dcp"/>
+ <DCCReference Include="vcldb.dcp"/>
+ <DCCReference Include="bdertl.dcp"/>
+ <DCCReference Include="IOCore.dcp"/>
+ <DCCReference Include="..\InstantBDECatalog.pas"/>
+ <DCCReference Include="..\InstantBDEConnectionDefEdit.pas">
+ <Form>InstantBDEConnectionDefEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantBDE.pas"/>
+ <BuildConfiguration Include="Base">
+ <Key>Base</Key>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Debug">
+ <Key>Cfg_2</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Release">
+ <Key>Cfg_1</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ </ItemGroup>
+ <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Source>
+ <Source Name="MainSource">IOBDE.dpk</Source>
+ </Source>
+ <Parameters>
+ <Parameters Name="UseLauncher">False</Parameters>
+ <Parameters Name="LoadAllSymbols">True</Parameters>
+ <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
+ </Parameters>
+ <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">1033</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName"/>
+ <VersionInfoKeys Name="FileDescription"/>
+ <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName"/>
+ <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcboffice2k140.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcbofficexp140.bpl">Embarcadero C++Builder Office XP Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dcloffice2k140.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dclofficexp140.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
+ </Excluded_Packages>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ </Project>
Property changes on: trunk/Source/Brokers/BDE/D2010/IOBDE.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/BDE/D2010/IOBDE.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/BDE/D2010/IOBDE.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/DBX/D2010/DclIODBX.dpk
===================================================================
--- trunk/Source/Brokers/DBX/D2010/DclIODBX.dpk (rev 0)
+++ trunk/Source/Brokers/DBX/D2010/DclIODBX.dpk 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,42 @@
+package DclIODBX;
+
+{$R *.res}
+{$R '..\InstantDBX.dcr'}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS ON}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DESCRIPTION 'InstantObjects dbExpress Design-Time Support (Delphi 2010)'}
+{$LIBSUFFIX '_D14'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ vcl,
+ dbrtl,
+ dbexpress,
+ IOCore,
+ IODBX;
+
+contains
+ InstantDBXReg in '..\InstantDBXReg.pas';
+
+end.
Property changes on: trunk/Source/Brokers/DBX/D2010/DclIODBX.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/DBX/D2010/DclIODBX.dproj
===================================================================
--- trunk/Source/Brokers/DBX/D2010/DclIODBX.dproj (rev 0)
+++ trunk/Source/Brokers/DBX/D2010/DclIODBX.dproj 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,120 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{37A94EA0-7FE9-4F18-B639-D0056DB88697}</ProjectGuid>
+ <MainSource>DclIODBX.dpk</MainSource>
+ <Config Condition="'$(Config)'==''">Debug</Config>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <ProjectVersion>12.0</ProjectVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
+ <Cfg_1>true</Cfg_1>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
+ <Cfg_2>true</Cfg_2>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Base)'!=''">
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\DclIODBX_D14.bpl</DCC_DependencyCheckOutputName>
+ <DesignOnlyPackage>true</DesignOnlyPackage>
+ <DCC_Description>InstantObjects dbExpress Design-Time Support (Delphi 2010)</DCC_Description>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;$(DCC_UnitAlias)</DCC_UnitAlias>
+ <GenPackage>true</GenPackage>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <DllSuffix>_D14</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <DCC_Platform>x86</DCC_Platform>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_DebugInformation>false</DCC_DebugInformation>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <ItemGroup>
+ <DelphiCompile Include="DclIODBX.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="..\InstantDBX.dcr"/>
+ <DCCReference Include="rtl.dcp"/>
+ <DCCReference Include="vcl.dcp"/>
+ <DCCReference Include="dbrtl.dcp"/>
+ <DCCReference Include="dbexpress.dcp"/>
+ <DCCReference Include="IOCore.dcp"/>
+ <DCCReference Include="IODBX.dcp"/>
+ <DCCReference Include="..\InstantDBXReg.pas"/>
+ <BuildConfiguration Include="Base">
+ <Key>Base</Key>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Debug">
+ <Key>Cfg_2</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ <BuildConfiguration Include="Release">
+ <Key>Cfg_1</Key>
+ <CfgParent>Base</CfgParent>
+ </BuildConfiguration>
+ </ItemGroup>
+ <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Source>
+ <Source Name="MainSource">DclIODBX.dpk</Source>
+ </Source>
+ <Parameters>
+ <Parameters Name="UseLauncher">False</Parameters>
+ <Parameters Name="LoadAllSymbols">True</Parameters>
+ <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
+ </Parameters>
+ <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">1033</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName"/>
+ <VersionInfoKeys Name="FileDescription"/>
+ <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName"/>
+ <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcboffice2k140.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcbofficexp140.bpl">Embarcadero C++Builder Office XP Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dcloffice2k140.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dclofficexp140.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
+ </Excluded_Packages>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ </Project>
Property changes on: trunk/Source/Brokers/DBX/D2010/DclIODBX.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/DBX/D2010/DclIODBX.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/DBX/D2010/DclIODBX.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/DBX/D2010/IODBX.dpk
===================================================================
--- trunk/Source/Brokers/DBX/D2010/IODBX.dpk (rev 0)
+++ trunk/Source/Brokers/DBX/D2010/IODBX.dpk 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,44 @@
+package IODBX;
+
+{$R *.res}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DESCRIPTION 'InstantObjects dbExpress Run-Time Support (Delphi 2010)'}
+{$LIBSUFFIX '_D14'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ vcl,
+ dbrtl,
+ dbexpress,
+ IOCore,
+ IOIBFbCatalog,
+ IOMSSqlCatalog,
+ IOMySQLCatalog;
+
+contains
+ InstantDBXConnectionDefEdit in '..\InstantDBXConnectionDefEdit.pas' {InstantDBXConnectionDefEditForm},
+ InstantDBX in '..\InstantDBX.pas';
+
+end.
Property changes on: trunk/Source/Brokers/DBX/D2010/IODBX.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/DBX/D2010/IODBX.dproj
===================================================================
--- trunk/Source/Brokers/DBX/D2010/IODBX.dproj (rev 0)
+++ trunk/Source/Brokers/DBX/D2010/IODBX.dproj 2009-08-26 01:03:07 UTC (rev 864)
@@ -0,0 +1,123 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{99DAEA57-EA95-4709-A5EE-36855F676EB5}</ProjectGuid>
+ <MainSource>IODBX.dpk</MainSource>
+ <Config Condition="'$(Config)'==''">Debug</Config>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <ProjectVersion>12.0</ProjectVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
+ <Cfg_1>true</Cfg_1>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
+ <Cfg_2>true</Cfg_2>
+ <CfgParent>Base</CfgParent>
+ <Base>true</Base>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Base)'!=''">
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Bpl\IODBX_D14.bpl</DCC_DependencyCheckOutputName>
+ <DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;$(DCC_UnitAlias)</DCC_UnitAlias>
+ <DCC_Description>InstantObjects dbExpress Run-Time Support (Delphi 2010)</DCC_Description>
+ <RuntimeOnlyPackage>true</RuntimeOnlyPackage>
+ <DllSuffix>_D14</DllSuffix>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ <GenPackage>true</GenPackage>
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <DCC_Platform>x86</DCC_Platform>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_DebugInformation>false</DCC_DebugInformation>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <ItemGroup>
+ <DelphiCompile Include="IODBX.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="rtl.dcp"/>
+ <DCCReference Include="vcl.dcp"/>
+ <DCCReference Include="dbrtl.dcp"/>
+ <DCCReference Include="dbexpress.dcp"/>
+ <DCCR...
[truncated message content] |
|
From: <dav...@us...> - 2009-08-25 20:03:10
|
Revision: 863
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=863&view=rev
Author: davidvtaylor
Date: 2009-08-25 20:03:04 +0000 (Tue, 25 Aug 2009)
Log Message:
-----------
Add Delphi 2007 packages for ZeosDBO broker
Added Paths:
-----------
trunk/Source/Brokers/ZeosDBO/D2007/
trunk/Source/Brokers/ZeosDBO/D2007/DclIOZeosDBO.dpk
trunk/Source/Brokers/ZeosDBO/D2007/DclIOZeosDBO.res
trunk/Source/Brokers/ZeosDBO/D2007/IOZeosDBO.dpk
trunk/Source/Brokers/ZeosDBO/D2007/IOZeosDBO.res
Added: trunk/Source/Brokers/ZeosDBO/D2007/DclIOZeosDBO.dpk
===================================================================
--- trunk/Source/Brokers/ZeosDBO/D2007/DclIOZeosDBO.dpk (rev 0)
+++ trunk/Source/Brokers/ZeosDBO/D2007/DclIOZeosDBO.dpk 2009-08-25 20:03:04 UTC (rev 863)
@@ -0,0 +1,39 @@
+package DclIOZeosDBO;
+
+{$R *.res}
+{$R '..\InstantZeosDBO.dcr'}
+
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS ON}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DESCRIPTION 'InstantObjects ZeosDBO Design-Time Support (Delphi 2007)'}
+{$LIBSUFFIX '_D11'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ IOZeosDBO;
+
+contains
+ InstantZeosDBOReg in '..\InstantZeosDBOReg.pas';
+
+end.
+
Property changes on: trunk/Source/Brokers/ZeosDBO/D2007/DclIOZeosDBO.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/ZeosDBO/D2007/DclIOZeosDBO.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/ZeosDBO/D2007/DclIOZeosDBO.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/ZeosDBO/D2007/IOZeosDBO.dpk
===================================================================
--- trunk/Source/Brokers/ZeosDBO/D2007/IOZeosDBO.dpk (rev 0)
+++ trunk/Source/Brokers/ZeosDBO/D2007/IOZeosDBO.dpk 2009-08-25 20:03:04 UTC (rev 863)
@@ -0,0 +1,40 @@
+package IOZeosDBO;
+
+{$R *.res}
+
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS ON}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DESCRIPTION 'InstantObjects ZeosDBO Run-Time Support (Delphi 2007)'}
+{$LIBSUFFIX '_D11'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ IOCore,
+ ZComponent;
+
+contains
+ InstantZeosDBO in '..\InstantZeosDBO.pas',
+ InstantZeosDBOCatalog in '..\InstantZeosDBOCatalog.pas',
+ InstantZeosDBOConnectionDefEdit in '..\InstantZeosDBOConnectionDefEdit.pas' {InstantZeosDBOConnectionDefEditForm};
+
+end.
Property changes on: trunk/Source/Brokers/ZeosDBO/D2007/IOZeosDBO.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/ZeosDBO/D2007/IOZeosDBO.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/ZeosDBO/D2007/IOZeosDBO.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
|
|
From: <dav...@us...> - 2009-08-25 19:58:29
|
Revision: 862
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=862&view=rev
Author: davidvtaylor
Date: 2009-08-25 19:58:23 +0000 (Tue, 25 Aug 2009)
Log Message:
-----------
Update ZeosDBO broker to fix breakage caused by new Enum type support
Modified Paths:
--------------
trunk/Source/Brokers/ZeosDBO/InstantZeosDBO.pas
Modified: trunk/Source/Brokers/ZeosDBO/InstantZeosDBO.pas
===================================================================
--- trunk/Source/Brokers/ZeosDBO/InstantZeosDBO.pas 2009-08-25 19:49:09 UTC (rev 861)
+++ trunk/Source/Brokers/ZeosDBO/InstantZeosDBO.pas 2009-08-25 19:58:23 UTC (rev 862)
@@ -911,7 +911,8 @@
'DATETIME',
'IMAGE',
'DATETIME',
- 'DATETIME');
+ 'DATETIME',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -938,7 +939,8 @@
'DATETIME',
'IMAGE',
'DATETIME',
- 'DATETIME');
+ 'DATETIME',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -990,7 +992,8 @@
'TIMESTAMP',
'BLOB',
'TIMESTAMP',
- 'TIMESTAMP');
+ 'TIMESTAMP',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -1022,7 +1025,8 @@
'DATE',
'BLOB',
'DATE',
- 'DATE');
+ 'DATE',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -1049,7 +1053,8 @@
'TIMESTAMP',
'BYTEA',
'TIMESTAMP',
- 'TIMESTAMP');
+ 'TIMESTAMP',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -1119,7 +1124,8 @@
'DATETIME',
'BLOB',
'DATE',
- 'TIME');
+ 'TIME',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -1358,7 +1364,8 @@
'TIMESTAMP',
'BLOB',
'TIMESTAMP',
- 'TIMESTAMP');
+ 'TIMESTAMP',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
|
|
From: <dav...@us...> - 2009-08-25 19:49:21
|
Revision: 861
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=861&view=rev
Author: davidvtaylor
Date: 2009-08-25 19:49:09 +0000 (Tue, 25 Aug 2009)
Log Message:
-----------
Update AnyDAC broker to fix breakage caused by new Enum type support
Modified Paths:
--------------
trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas
Modified: trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas
===================================================================
--- trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas 2009-08-25 19:25:51 UTC (rev 860)
+++ trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas 2009-08-25 19:49:09 UTC (rev 861)
@@ -900,7 +900,8 @@
'DATETIME',
'IMAGE',
'DATETIME',
- 'DATETIME');
+ 'DATETIME',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -927,7 +928,8 @@
'DATETIME',
'IMAGE',
'DATETIME',
- 'DATETIME');
+ 'DATETIME',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -1000,7 +1002,8 @@
'TIMESTAMP',
'BLOB',
'TIMESTAMP',
- 'TIMESTAMP');
+ 'TIMESTAMP',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -1032,7 +1035,8 @@
'DATE',
'BLOB',
'DATE',
- 'DATE');
+ 'DATE',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -1058,7 +1062,8 @@
'TIMESTAMP',
'BYTEA',
'TIMESTAMP',
- 'TIMESTAMP');
+ 'TIMESTAMP',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -1355,7 +1360,8 @@
'TIMESTAMP',
'BLOB',
'TIMESTAMP',
- 'TIMESTAMP');
+ 'TIMESTAMP',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
|
|
From: <dav...@us...> - 2009-08-25 19:25:59
|
Revision: 860
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=860&view=rev
Author: davidvtaylor
Date: 2009-08-25 19:25:51 +0000 (Tue, 25 Aug 2009)
Log Message:
-----------
Compiler version defines for Delphi 2010
Modified Paths:
--------------
trunk/Source/InstantDefines.inc
Modified: trunk/Source/InstantDefines.inc
===================================================================
--- trunk/Source/InstantDefines.inc 2009-08-25 15:04:20 UTC (rev 859)
+++ trunk/Source/InstantDefines.inc 2009-08-25 19:25:51 UTC (rev 860)
@@ -56,6 +56,20 @@
{$DEFINE D12+}
{$ENDIF}
+{$IFDEF VER210}
+ {$DEFINE D5+}
+ {$DEFINE D6+}
+ {$DEFINE D7+}
+ {$DEFINE D9+}
+ {$DEFINE D10+}
+ {$DEFINE D11}
+ {$DEFINE D11+}
+ {$DEFINE D12}
+ {$DEFINE D12+}
+ {$DEFINE D14}
+ {$DEFINE D14+}
+{$ENDIF}
+
{$IFDEF FPC}
{$DEFINE D5+}
{$DEFINE D6+}
|
|
From: <na...@us...> - 2009-08-25 15:04:37
|
Revision: 859
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=859&view=rev
Author: nandod
Date: 2009-08-25 15:04:20 +0000 (Tue, 25 Aug 2009)
Log Message:
-----------
* Fixed: writing a class name with wrong capitalization in an IQL query would prevent objects from being retrieved on case-sensitive databases. The fix also does the class existence check earlier than before. A test was added to TestIO.
Modified Paths:
--------------
trunk/Source/Core/InstantCommand.pas
trunk/Tests/TestMockBroker.pas
Modified: trunk/Source/Core/InstantCommand.pas
===================================================================
--- trunk/Source/Core/InstantCommand.pas 2009-08-25 14:35:18 UTC (rev 858)
+++ trunk/Source/Core/InstantCommand.pas 2009-08-25 15:04:20 UTC (rev 859)
@@ -1505,7 +1505,11 @@
FAny := SameText(Token, 'ANY');
if FAny then
Token := Reader.ReadToken;
- FObjectClassName := Token;
+ // This call has the double effect of checking that the class exists early
+ // during statement parsing, and correcting the class name if it's written
+ // with wrong capitalization (something that would create problems with
+ // case-sensitive databases).
+ FObjectClassName := FindClass(Token).ClassName;
end;
procedure TInstantIQLClassRef.WriteObject(Writer: TInstantIQLWriter);
Modified: trunk/Tests/TestMockBroker.pas
===================================================================
--- trunk/Tests/TestMockBroker.pas 2009-08-25 14:35:18 UTC (rev 858)
+++ trunk/Tests/TestMockBroker.pas 2009-08-25 15:04:20 UTC (rev 859)
@@ -38,7 +38,6 @@
type
TTestMockBroker = class(TTestCase)
- private
protected
FConn: TInstantMockConnector;
procedure SetUp; override;
@@ -53,7 +52,6 @@
end;
TTestMockRelationalBroker = class(TTestCase)
- private
protected
FConn: TInstantMockConnector;
procedure SetUp; override;
@@ -64,6 +62,15 @@
procedure TestStoreAndRetrieveContact;
end;
+ TTestMockSQLbroker = class(TTestCase)
+ protected
+ FConn: TInstantMockConnector;
+ procedure SetUp; override;
+ procedure TearDown; override;
+ published
+ procedure TestQuery;
+ end;
+
implementation
uses InstantMetadata;
@@ -285,8 +292,40 @@
brok.MockManager.Verify;
end;
+{ TTestMockSQLbroker }
+
+procedure TTestMockSQLbroker.SetUp;
+begin
+ FConn := TInstantMockConnector.Create(nil);
+ FConn.BrokerClass := TInstantMockSQLBroker;
+
+ if InstantModel.ClassMetadatas.Count > 0 then
+ InstantModel.ClassMetadatas.Clear;
+ InstantModel.LoadFromResFile(ChangeFileExt(ParamStr(0), '.mdr'));
+end;
+
+procedure TTestMockSQLbroker.TearDown;
+begin
+ InstantModel.ClassMetadatas.Clear;
+ FreeAndNil(FConn);
+end;
+
+procedure TTestMockSQLbroker.TestQuery;
+var
+ LQuery: TInstantQuery;
+begin
+ LQuery := FConn.CreateQuery;
+ try
+ LQuery.Command := 'select * from tcountry';
+ AssertTrue(LQuery.ObjectClass = TCountry);
+ AssertTrue(LQuery.ObjectClassName = 'TCountry');
+ finally
+ LQuery.Free;
+ end;
+end;
+
initialization
{$IFNDEF CURR_TESTS}
- RegisterTests([TTestMockBroker, TTestMockRelationalBroker]);
+ RegisterTests([TTestMockBroker, TTestMockRelationalBroker, TTestMockSQLbroker]);
{$ENDIF}
end.
\ No newline at end of file
|
|
From: <na...@us...> - 2009-08-25 14:35:26
|
Revision: 858
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=858&view=rev
Author: nandod
Date: 2009-08-25 14:35:18 +0000 (Tue, 25 Aug 2009)
Log Message:
-----------
* Fixed: content editor was sometimes visible in TInstantExplorer at the wrong time.
Modified Paths:
--------------
trunk/Source/Core/InstantExplorer.pas
Modified: trunk/Source/Core/InstantExplorer.pas
===================================================================
--- trunk/Source/Core/InstantExplorer.pas 2009-08-20 14:17:50 UTC (rev 857)
+++ trunk/Source/Core/InstantExplorer.pas 2009-08-25 14:35:18 UTC (rev 858)
@@ -540,6 +540,7 @@
begin
FContentView := CreatePanel(Self);
FContentView.Parent := DetailPanel;
+ FContentView.Visible := False;
FContentEditor := CreateContentEditor(FContentView, ObjectSource);
if Assigned(FContentEditor) then
with FContentEditor do
@@ -778,6 +779,7 @@
begin
FObjectView := CreatePanel(Self);
FObjectView.Parent := DetailPanel;
+ FObjectView.Visible := False;
end;
function TInstantExplorer.CreatePanel(AOwner: TComponent): TPanel;
|
|
From: <wp...@us...> - 2009-08-20 14:17:56
|
Revision: 857
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=857&view=rev
Author: wp2udk
Date: 2009-08-20 14:17:50 +0000 (Thu, 20 Aug 2009)
Log Message:
-----------
If you are abstracting properties (using the Template Design Pattern) to the base class the attribute editor cannot locate the visibility of the "missing" properties". In the code example below the Items part attribute is a member of the TBranch class, but the Items properties are introduced on the base class TLeaf.
TLeaf = class(TInstantObject)
{IOMETADATA stored; }
protected
function GetItemCount: Integer; virtual;
function GetItems(Index: Integer): TLeaf; virtual;
procedure SetItems(Index: Integer; Value: TLeaf); virtual;
public
property ItemCount: Integer read GetItemCount; virtual;
property Items[Index: Integer]: TLeaf read GetItems write SetItems;
end;
TBranch = class(TLeaf)
{IOMETADATA stored;
Items: Parts(TLeaf) external 'Branch_Items'; }
_Items: TInstantParts;
protected
function GetItemCount: Integer; override;
function GetItems(Index: Integer): TLeaf; override;
procedure SetItems(Index: Integer; Value: TLeaf); override;
// These properties are removed from this class and they are introduced
// manually on the base class. The Attribute Editor cannot find the
// visibility of the "missing properties".
//
// property ItemCount: Integer read GetItemCount;
// property Items[Index: Integer]: TLeaf read GetItems write SetItems;
end;
/Brian
Modified Paths:
--------------
trunk/Source/Design/InstantAttributeEditor.pas
Modified: trunk/Source/Design/InstantAttributeEditor.pas
===================================================================
--- trunk/Source/Design/InstantAttributeEditor.pas 2009-08-20 12:06:18 UTC (rev 856)
+++ trunk/Source/Design/InstantAttributeEditor.pas 2009-08-20 14:17:50 UTC (rev 857)
@@ -1,4 +1,4 @@
-(*
+ (*
* InstantObjects
* Attribute Editor
*)
@@ -376,6 +376,20 @@
end;
procedure TInstantAttributeEditorForm.LoadVisibilities;
+
+ function FindVisibility(ACodeClass: TInstantCodeClass;
+ AValuePropName: string): TInstantCodeProperty;
+ begin
+ if ACodeClass <> nil then
+ begin
+ Result := ACodeClass.FindProperty(AValuePropName);
+
+ if Result = nil then
+ Result := FindVisibility(ACodeClass.BaseClass, AValuePropName);
+ end else
+ Result := nil;
+ end;
+
var
I: Integer;
S: String;
@@ -397,7 +411,7 @@
if Limited then
begin
- CodeProperty := Subject.FindValueProp;
+ CodeProperty := FindVisibility(Subject.HostClass, Subject.ValuePropName);
if CodeProperty <> nil then
begin
S := GetEnumName(TypeInfo(TInstantCodeVisibility),
|
|
From: <bvs...@us...> - 2009-08-20 12:06:25
|
Revision: 856
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=856&view=rev
Author: bvsimmons
Date: 2009-08-20 12:06:18 +0000 (Thu, 20 Aug 2009)
Log Message:
-----------
Minor updates for D7 and D2007 and others
D2007 - removed references to Zeos Broker from RunTime Packages
D7 - Added missing path to ..\Source\Catalogs for PrimerCross to PrimerCross.
- Added missing .res file for MySQL Catalog
Tests - Added path to ..\Source\Brokers\XML
Modified Paths:
--------------
trunk/Demos/PrimerCross/PrimerExternal.dof
trunk/Demos/PrimerCross/PrimerExternal.xml
trunk/Source/PackageGroups/D2007/RunTimePackages.groupproj
trunk/Tests/TestIO.cfg
trunk/Tests/TestIO.dof
Added Paths:
-----------
trunk/Source/Catalogs/MySQL/D7/IOMySQLCatalog.res
Modified: trunk/Demos/PrimerCross/PrimerExternal.dof
===================================================================
--- trunk/Demos/PrimerCross/PrimerExternal.dof 2009-08-20 09:27:11 UTC (rev 855)
+++ trunk/Demos/PrimerCross/PrimerExternal.dof 2009-08-20 12:06:18 UTC (rev 856)
@@ -94,7 +94,7 @@
UnitOutputDir=
PackageDLLOutputDir=
PackageDCPOutputDir=
-SearchPath=$(DELPHI)\Lib\Debug;..\..\Source\Core;..\..\Source\Brokers\DBX;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Brokers\UIB;..\..\Source\Brokers\ZeosDBO;..\..\Source\Catalogs\BDE;..\..\Source\Catalogs\MsSql;..\..\Source\Catalogs\IbFb;..\..\Source\Catalogs\XML
+SearchPath=$(DELPHI)\Lib\Debug;..\..\Source\Core;..\..\Source\Brokers\DBX;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Brokers\UIB;..\..\Source\Brokers\ZeosDBO;..\..\Source\Catalogs\BDE;..\..\Source\Catalogs\MsSql;..\..\Source\Catalogs\IbFb;..\..\Source\Catalogs\MySQL;..\..\Source\Catalogs\XML
Packages=
Conditionals=
DebugSourceDirs=
Modified: trunk/Demos/PrimerCross/PrimerExternal.xml
===================================================================
--- trunk/Demos/PrimerCross/PrimerExternal.xml 2009-08-20 09:27:11 UTC (rev 855)
+++ trunk/Demos/PrimerCross/PrimerExternal.xml 2009-08-20 12:06:18 UTC (rev 856)
@@ -1,2 +1,2 @@
<TInstantConnectionDefs><TInstantIBXConnectionDef><Name>FirebirdDBExternal</Name><IsBuilt>TRUE</IsBuilt><LoginPrompt>FALSE</LoginPrompt><ConnectionString>.\FirebirdDB\PRIMERDB.FDB</ConnectionString><Options>ibxUseDelimitedIdents</Options><Params>User_Name=SYSDBA
-Password=masterkey</Params></TInstantIBXConnectionDef><TInstantXMLConnectionDef><Name>XMLDB</Name><IsBuilt>TRUE</IsBuilt><RootFolder>W:\Projects\instantobjects\Demos\PrimerCross\XMLDB</RootFolder></TInstantXMLConnectionDef></TInstantConnectionDefs>
\ No newline at end of file
+Password=masterkey</Params></TInstantIBXConnectionDef><TInstantXMLConnectionDef><Name>XMLDB</Name><IsBuilt>TRUE</IsBuilt><RootFolder>.\XMLDB\</RootFolder></TInstantXMLConnectionDef></TInstantConnectionDefs>
\ No newline at end of file
Added: trunk/Source/Catalogs/MySQL/D7/IOMySQLCatalog.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Catalogs/MySQL/D7/IOMySQLCatalog.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/Source/PackageGroups/D2007/RunTimePackages.groupproj
===================================================================
--- trunk/Source/PackageGroups/D2007/RunTimePackages.groupproj 2009-08-20 09:27:11 UTC (rev 855)
+++ trunk/Source/PackageGroups/D2007/RunTimePackages.groupproj 2009-08-20 12:06:18 UTC (rev 856)
@@ -91,22 +91,13 @@
<Target Name="IOXML:Make">
<MSBuild Projects="..\..\Brokers\XML\D2007\IOXML.dproj" Targets="Make" />
</Target>
- <Target Name="IOZeosDBO">
- <MSBuild Projects="..\..\Brokers\ZeosDBO\D2007\IOZeosDBO.dproj" Targets="" />
- </Target>
- <Target Name="IOZeosDBO:Clean">
- <MSBuild Projects="..\..\Brokers\ZeosDBO\D2007\IOZeosDBO.dproj" Targets="Clean" />
- </Target>
- <Target Name="IOZeosDBO:Make">
- <MSBuild Projects="..\..\Brokers\ZeosDBO\D2007\IOZeosDBO.dproj" Targets="Make" />
- </Target>
<Target Name="Build">
- <CallTarget Targets="IOCore;IOIBFbCatalog;IOMSSqlCatalog;IOMySQLCatalog;IOADO;IOBDE;IODBX;IOIBX;IOXML;IOZeosDBO" />
+ <CallTarget Targets="IOCore;IOIBFbCatalog;IOMSSqlCatalog;IOMySQLCatalog;IOADO;IOBDE;IODBX;IOIBX;IOXML" />
</Target>
<Target Name="Clean">
- <CallTarget Targets="IOCore:Clean;IOIBFbCatalog:Clean;IOMSSqlCatalog:Clean;IOMySQLCatalog:Clean;IOADO:Clean;IOBDE:Clean;IODBX:Clean;IOIBX:Clean;IOXML:Clean;IOZeosDBO:Clean" />
+ <CallTarget Targets="IOCore:Clean;IOIBFbCatalog:Clean;IOMSSqlCatalog:Clean;IOMySQLCatalog:Clean;IOADO:Clean;IOBDE:Clean;IODBX:Clean;IOIBX:Clean;IOXML:Clean" />
</Target>
<Target Name="Make">
- <CallTarget Targets="IOCore:Make;IOIBFbCatalog:Make;IOMSSqlCatalog:Make;IOMySQLCatalog:Make;IOADO:Make;IOBDE:Make;IODBX:Make;IOIBX:Make;IOXML:Make;IOZeosDBO:Make" />
+ <CallTarget Targets="IOCore:Make;IOIBFbCatalog:Make;IOMSSqlCatalog:Make;IOMySQLCatalog:Make;IOADO:Make;IOBDE:Make;IODBX:Make;IOIBX:Make;IOXML:Make" />
</Target>
</Project>
\ No newline at end of file
Modified: trunk/Tests/TestIO.cfg
===================================================================
--- trunk/Tests/TestIO.cfg 2009-08-20 09:27:11 UTC (rev 855)
+++ trunk/Tests/TestIO.cfg 2009-08-20 12:06:18 UTC (rev 856)
@@ -33,10 +33,10 @@
-K$00400000
-LE"c:\program files\borland\delphi7\Projects\Bpl"
-LN"c:\program files\borland\delphi7\Projects\Bpl"
--U"..\Source\core;.\ubmock\src"
--O"..\Source\core;.\ubmock\src"
--I"..\Source\core;.\ubmock\src"
--R"..\Source\core;.\ubmock\src"
+-U"..\Source\core;.\ubmock\src;..\Source\Brokers\XML"
+-O"..\Source\core;.\ubmock\src;..\Source\Brokers\XML"
+-I"..\Source\core;.\ubmock\src;..\Source\Brokers\XML"
+-R"..\Source\core;.\ubmock\src;..\Source\Brokers\XML"
-w-UNSAFE_TYPE
-w-UNSAFE_CODE
-w-UNSAFE_CAST
Modified: trunk/Tests/TestIO.dof
===================================================================
--- trunk/Tests/TestIO.dof 2009-08-20 09:27:11 UTC (rev 855)
+++ trunk/Tests/TestIO.dof 2009-08-20 12:06:18 UTC (rev 856)
@@ -94,7 +94,7 @@
UnitOutputDir=
PackageDLLOutputDir=
PackageDCPOutputDir=
-SearchPath=..\Source\core;.\ubmock\src
+SearchPath=..\Source\core;.\ubmock\src;..\Source\Brokers\XML
Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;adortl;vclactnband;vclshlctrls;CS30Logging70;Rz30Ctls70;Rz30DBCtls70;ip4000v7;Rave60VCL;Rave60CLX;madBasic_;madDisAsm_;CLXIB;ibxpress;VCLIB;IOCore;IOIBX
Conditionals=
DebugSourceDirs=..\core
|
|
From: <na...@us...> - 2009-08-20 09:27:21
|
Revision: 855
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=855&view=rev
Author: nandod
Date: 2009-08-20 09:27:11 +0000 (Thu, 20 Aug 2009)
Log Message:
-----------
* InstantExplorer enhancements:
* use checkboxes for boolean fields
* use comboboxes for string fields if an event handler provides a picklist.
* ability to order fields and hide specific fields in the object editor through an event.
* Automatic labels from CamelCaps property names.
Modified Paths:
--------------
trunk/Source/Core/InstantExplorer.pas
Modified: trunk/Source/Core/InstantExplorer.pas
===================================================================
--- trunk/Source/Core/InstantExplorer.pas 2009-08-20 09:23:30 UTC (rev 854)
+++ trunk/Source/Core/InstantExplorer.pas 2009-08-20 09:27:11 UTC (rev 855)
@@ -46,7 +46,7 @@
{$IFDEF LINUX}
QControls, QForms, QComCtrls, QExtCtrls, QDBGrids, QImgList,
{$ENDIF}
- Classes, Db, InstantPersistence, InstantPresentation;
+ Classes, DB, TypInfo, InstantPersistence, InstantPresentation, DbCtrls;
type
TInstantExplorer = class;
@@ -87,13 +87,45 @@
const Value: string; var NodeData: TInstantExplorerNodeData) of object;
TInstantExplorerGetNodeTextEvent = procedure(Sender: TInstantExplorer;
NodeData: TInstantExplorerNodeData; var Text: string) of object;
-
+ TInstantExplorerGetAllowedValuesEvent = procedure (Sender: TInstantExplorer;
+ const AObject: TObject; const APropName: string;
+ const AAllowedValues: TStrings) of object;
+ TInstantExplorerGetFieldNamesEvent = procedure (Sender: TInstantExplorer;
+ const AObject: TObject; const AFieldNames: TStrings) of object;
+
TInstantExplorerLayout = (loTreeOnly, loDetailOnly, loVertical, loHorizontal);
+ TInstantExplorerDBComboBox = class(TDBComboBox)
+ private
+ procedure ApplyToRecord;
+ protected
+ procedure Change; override;
+ procedure Click; override;
+ end;
+
+ TInstantExplorerDBGrid = class(TDBGrid)
+ private
+ procedure UpdateLastColumnWidth;
+ protected
+ procedure Resize; override;
+ end;
+
+ TInstantExplorerContentEditor = class(TPanel)
+ private
+ FGrid: TInstantExplorerDBGrid;
+ function GetDataSource: TDataSource;
+ procedure SetDataSource(const AValue: TDataSource);
+ function GetGrid: TDBGrid;
+ public
+ constructor Create(AOwner: TComponent); override;
+ property Grid: TDBGrid read GetGrid;
+ property DataSource: TDataSource read GetDataSource write SetDataSource;
+ end;
+
TInstantExplorer = class(TCustomControl)
private
FAutoAdjust: Boolean;
- FContentEditor: TDBGrid;
+ FContentEditor: TInstantExplorerContentEditor;
FContentView: TPanel;
FDetailPanel: TPanel;
FDetailView: TPanel;
@@ -115,6 +147,8 @@
FOnGetImageIndex: TInstantExplorerNodeEvent;
FOnGetNodeText: TInstantExplorerGetNodeTextEvent;
FOnIncludeNode: TInstantExplorerIncludeNodeEvent;
+ FOnGetAllowedValues: TInstantExplorerGetAllowedValuesEvent;
+ FOnGetFieldNames: TInstantExplorerGetFieldNamesEvent;
function AddNode(NodeType: TInstantExplorerNodeType; Parent: TTreeNode;
Name: string; AObject: TObject; Value: string = ''): TTreeNode;
procedure ArrangeControls;
@@ -130,12 +164,15 @@
procedure DestroyObjectEditor;
procedure ExpandNode(Node: TTreeNode);
function GetCurrentObject: TObject;
+ procedure GetAllowedValues(const AObject: TObject;
+ const APropName: string; const AAllowedValues: TStrings);
function GetImages: TCustomImageList;
procedure LoadContainerNode(Node: TTreeNode; Container: TInstantContainer);
procedure LoadNode(Node: TTreeNode; LoadChildren: Boolean);
procedure LoadObjectNode(Node: TTreeNode; Instance: TObject;
var ChildCount: Integer; LoadChildren: Boolean);
function NodeIsLoaded(Node: TTreeNode): Boolean;
+ procedure ObjectExposerAfterDelete(Sender: TDataSet);
procedure ObjectExposerAfterPost(Sender: TDataSet);
procedure ResizeControls;
procedure SetAutoAdjust(const Value: Boolean);
@@ -146,10 +183,13 @@
var AllowExpansion: Boolean);
procedure TreeViewGetImageIndex(Sender: TObject; Node: TTreeNode);
procedure TreeViewNodeDeletion(Sender: TObject; Node: TTreeNode);
+ procedure SetCurrentObject(const AValue: TObject);
+ function GetContentEditor: TWinControl;
+ function CreateFieldList: TStrings;
protected
procedure ChangeNode(Node: TTreeNode); virtual;
function CreateContentEditor(AOwner: TComponent;
- DataSource: TDataSource): TDBGrid; virtual;
+ DataSource: TDataSource): TInstantExplorerContentEditor; virtual;
function CreateExposer: TInstantExposer; virtual;
function CreateNode(Nodes: TTreeNodes; Parent: TTreeNode;
NodeData: TInstantExplorerNodeData): TTreeNode; virtual;
@@ -170,13 +210,15 @@
procedure SetRootObject(const Value: TObject); virtual;
procedure UpdateDetails;
public
+ procedure SetupContentEditor;
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Clear;
procedure Refresh;
procedure RefreshNode(Node: TTreeNode);
+ property ContentEditor: TWinControl read GetContentEditor;
property ContentView: TPanel read FContentView;
- property CurrentObject: TObject read GetCurrentObject;
+ property CurrentObject: TObject read GetCurrentObject write SetCurrentObject;
property DetailPanel: TPanel read FDetailPanel;
property DetailView: TPanel read FDetailView write SetDetailView;
property ObjectExposer: TInstantExposer read FObjectExposer;
@@ -206,6 +248,10 @@
property OnCreateNodeData: TInstantExplorerCreateNodeDataEvent read FOnCreateNodeData write FOnCreateNodeData;
property OnClick;
property OnDblClick;
+ property OnGetAllowedValues: TInstantExplorerGetAllowedValuesEvent
+ read FOnGetAllowedValues write FOnGetAllowedValues;
+ property OnGetFieldNames: TInstantExplorerGetFieldNamesEvent
+ read FOnGetFieldNames write FOnGetFieldNames;
property OnGetImageIndex: TInstantExplorerNodeEvent read FOnGetImageIndex write FOnGetImageIndex;
property OnGetNodeText: TInstantExplorerGetNodeTextEvent read FOnGetNodeText write FOnGetNodeText;
property OnIncludeNode: TInstantExplorerIncludeNodeEvent read FOnIncludeNode write FOnIncludeNode;
@@ -220,10 +266,10 @@
implementation
uses
- SysUtils, InstantClasses, InstantRtti, TypInfo, InstantMetadata,
+ SysUtils, Math, InstantClasses, InstantRtti, InstantMetadata,
InstantTypes,
{$IFDEF MSWINDOWS}
- Graphics, StdCtrls, DbCtrls, Windows;
+ Graphics, StdCtrls, Windows;
{$ENDIF}
{$IFDEF LINUX}
QGraphics, QStdCtrls, QDbCtrls;
@@ -232,6 +278,8 @@
const
NotLoaded = Pointer(-1);
+ MAX_DROPDOWN_ITEMS = 10;
+
procedure InstantExploreObject(AObject: TObject);
var
Form: TForm;
@@ -261,6 +309,28 @@
end;
end;
+// Converts CamelCaps to words with spaces among them.
+function Beautify(const APropName: string): string;
+var
+ LCharIndex: Integer;
+ LLastWasSpace: Boolean;
+begin
+ Result := '';
+ LLastWasSpace := False;
+ for LCharIndex := 1 to Length(APropName) do
+ begin
+ if (APropName[LCharIndex] = AnsiUpperCase(APropName[LCharIndex])[1]) and not LLastWasSpace then
+ begin
+ Result := Result + ' ';
+ LLastWasSpace := True;
+ end
+ else
+ LLastWasSpace := False;
+ Result := Result + APropName[LCharIndex];
+ end;
+end;
+
+
{ TInstantExplorerNodeData }
constructor TInstantExplorerNodeData.Create(ANodeType: TInstantExplorerNodeType;
@@ -394,21 +464,19 @@
procedure TInstantExplorer.AssignRootObject(Value: TObject);
var
Node: TTreeNode;
- ItemIndex: Integer;
+ LCurrentObject: TObject;
SaveOnChange: TTVChangedEvent;
ChildCount: Integer;
-
begin
- ItemIndex := 0;
+ LCurrentObject := nil;
with TreeView do
begin
SaveOnChange := OnChange;
OnChange := nil;
Items.BeginUpdate;
try
-
if Assigned(Selected) then
- ItemIndex := Selected.AbsoluteIndex;
+ LCurrentObject := TinstantExplorerNodeData(Selected.Data).Instance;
Items.Clear;
FRootObject := Value;
if Assigned(FRootObject) then
@@ -427,12 +495,8 @@
finally
Items.EndUpdate;
OnChange := SaveOnChange;
- if Items.Count > ItemIndex then
- Selected := Items[ItemIndex]
- else begin
- Selected := nil;
- TreeViewChange(TreeView, nil);
- end;
+ CurrentObject := LCurrentObject;
+ TreeView.FullExpand;
end;
end;
end;
@@ -466,26 +530,22 @@
end;
function TInstantExplorer.CreateContentEditor(AOwner: TComponent;
- DataSource: TDataSource): TDBGrid;
-var
- Grid: TDBGrid;
+ DataSource: TDataSource): TInstantExplorerContentEditor;
begin
- Grid := TDBGrid.Create(AOwner);
- Grid.DataSource := DataSource;
- Grid.BorderStyle := bsNone;
- Result := Grid;
+ Result := TInstantExplorerContentEditor.Create(AOwner);
+ Result.DataSource := DataSource;
end;
procedure TInstantExplorer.CreateContentView;
begin
FContentView := CreatePanel(Self);
+ FContentView.Parent := DetailPanel;
FContentEditor := CreateContentEditor(FContentView, ObjectSource);
if Assigned(FContentEditor) then
with FContentEditor do
begin
Align := alClient;
Parent := FContentView;
- Show;
end;
end;
@@ -494,6 +554,7 @@
FDetailPanel := CreatePanel(Self);
with FDetailPanel do
begin
+ Parent := Self;
BorderStyle := bsSingle;
Height := Self.Height div 2;
Align := alClient;
@@ -545,74 +606,170 @@
function TInstantExplorer.CreateObjectEditor(AOwner: TComponent;
DataSource: TDataSource): TControl;
+const
+ LABEL_WIDTH = 132;
+ LABEL_LEFT = 8;
+ VERT_SPACING = 4;
+ MIN_CONTROL_WIDTH = 24;
procedure CreateEditControl(AParent: TWinControl; var ATop: Integer;
PropInfo: PPropInfo; ADataSource: TDataSource);
var
- Edit: TDBEdit;
+ LControl: TWinControl;
+ LAllowedValues: TStrings;
begin
- Edit := TDBEdit.Create(AParent);
- with Edit do
- begin
- Left := 108;
- Top := ATop;
- Anchors := [akLeft, akTop, akRight];
- Constraints.MinWidth := 8;
- Width := AParent.Width - Left - 8;
- Anchors := [akLeft, akTop, akRight];
- Parent := AParent;
- DataField := InstantGetPropName(PropInfo);
- DataSource := ADataSource;
- if not Assigned(PropInfo.SetProc) then
+ case DataSource.DataSet.FieldByName(InstantGetPropName(PropInfo)).DataType of
+ ftMemo:
begin
- ReadOnly := True;
- Color := clBtnFace;
+ LControl := TDBMemo.Create(AParent);
+ with TDBMemo(LControl) do
+ begin
+ Left := LABEL_LEFT + LABEL_WIDTH;
+ Top := ATop;
+ Anchors := [akLeft, akTop, akRight];
+ Constraints.MinWidth := MIN_CONTROL_WIDTH;
+ Parent := AParent;
+ Anchors := [akLeft, akTop, akRight];
+ Width := Parent.Width - Left - 8;
+ DataField := InstantGetPropName(PropInfo);
+ DataSource := ADataSource;
+ if not Assigned(PropInfo.SetProc) then
+ begin
+ ReadOnly := True;
+ Color := clBtnFace;
+ end;
+ end;
end;
+ ftBoolean:
+ begin
+ LControl := TDBCheckBox.Create(AParent);
+ with TDBCheckBox(LControl) do
+ begin
+ Left := LABEL_LEFT + LABEL_WIDTH;
+ Top := ATop;
+ Width := 16;
+ Parent := AParent;
+ DataField := InstantGetPropName(PropInfo);
+ DataSource := ADataSource;
+ if not Assigned(PropInfo.SetProc) then
+ begin
+ ReadOnly := True;
+ Color := clBtnFace;
+ end;
+ end;
+ end
+ else
+ begin
+ LAllowedValues := TStringList.Create;
+ try
+ GetAllowedValues(ObjectExposer.CurrentObject, InstantGetPropName(PropInfo), LAllowedValues);
+ if LAllowedValues.Count > 0 then
+ begin
+ LControl := TInstantExplorerDBComboBox.Create(AParent);
+ with TInstantExplorerDBComboBox(LControl) do
+ begin
+ Left := LABEL_LEFT + LABEL_WIDTH;
+ Top := ATop;
+ Anchors := [akLeft, akTop, akRight];
+ Constraints.MinWidth := MIN_CONTROL_WIDTH;
+ Width := AParent.Width - Left - 8;
+ Anchors := [akLeft, akTop, akRight];
+ Parent := AParent;
+ Items := LAllowedValues;
+ Style := csDropDownList;
+ DataField := InstantGetPropName(PropInfo);
+ DataSource := ADataSource;
+ if not Assigned(PropInfo.SetProc) then
+ begin
+ ReadOnly := True;
+ Color := clBtnFace;
+ end;
+ end;
+ end
+ else
+ begin
+ LControl := TDBEdit.Create(AParent);
+ with TDBEdit(LControl) do
+ begin
+ Left := LABEL_LEFT + LABEL_WIDTH;
+ Top := ATop;
+ Anchors := [akLeft, akTop, akRight];
+ Constraints.MinWidth := MIN_CONTROL_WIDTH;
+ Width := AParent.Width - Left - 8;
+ Anchors := [akLeft, akTop, akRight];
+ Parent := AParent;
+ DataField := InstantGetPropName(PropInfo);
+ DataSource := ADataSource;
+ if not Assigned(PropInfo.SetProc) then
+ begin
+ ReadOnly := True;
+ Color := clBtnFace;
+ end;
+ end;
+ end;
+ finally
+ FreeAndNil(LAllowedValues);
+ end;
+ end;
end;
+
with TLabel.Create(AParent) do
begin
- Left := 8;
+ Left := LABEL_LEFT;
Top := ATop + 3;
Parent := AParent;
- Caption := InstantGetPropName(PropInfo);
- FocusControl := Edit;
+ Caption := Beautify(InstantGetPropName(PropInfo));
+ FocusControl := LControl;
end;
- Inc(ATop, Edit.Height);
+ Inc(ATop, LControl.Height);
end;
var
I, Top: Integer;
AObject: TObject;
Editor: TScrollBox;
+ LProperties: TInstantProperties;
+ LFieldNames: TStrings;
+ LFieldIndex: Integer;
begin
Editor := TScrollBox.Create(AOwner);
with Editor do
begin
BorderStyle := bsNone;
Align := alClient;
+ Parent := ObjectView;
end;
AObject := ObjectExposer.CurrentObject;
- Top := 4;
- with TInstantProperties.Create(AObject) do
+ Top := VERT_SPACING;
+ LProperties := TInstantProperties.Create(AObject);
try
- for I := 0 to Pred(Count) do
- if Types[I] <> tkClass then
+ LFieldNames := CreateFieldList;
+ try
+ for LFieldIndex := 0 to LFieldNames.Count - 1 do
begin
- Inc(Top, 4);
- CreateEditControl(Editor, Top, PropInfos[I], DataSource);
+ for I := 0 to Pred(LProperties.Count) do
+ begin
+ if (LProperties.Types[I] <> tkClass) and (LProperties.Names[I] = LFieldNames[LFieldIndex]) then
+ begin
+ Inc(Top, VERT_SPACING);
+ CreateEditControl(Editor, Top, LProperties.PropInfos[I], DataSource);
+ end;
+ end;
end;
+ finally
+ LFieldNames.Free;
+ end;
finally
- Free;
+ LProperties.Free;
end;
- Editor.Parent := ObjectView;
Result := Editor;
end;
procedure TInstantExplorer.CreateObjectExposer;
begin
FObjectExposer := CreateExposer;
- if Assigned(FObjectExposer) then
- FObjectExposer.AfterPost := ObjectExposerAfterPost;
+ FObjectExposer.AfterPost := ObjectExposerAfterPost;
+ FObjectExposer.AfterDelete := ObjectExposerAfterDelete;
FObjectSource := TDataSource.Create(Self);
FObjectSource.DataSet := FObjectExposer;
end;
@@ -620,6 +777,7 @@
procedure TInstantExplorer.CreateObjectView;
begin
FObjectView := CreatePanel(Self);
+ FObjectView.Parent := DetailPanel;
end;
function TInstantExplorer.CreatePanel(AOwner: TComponent): TPanel;
@@ -634,6 +792,9 @@
FSplitter := TSplitter.Create(Self);
with FSplitter do
begin
+ Parent := Self;
+ AutoSnap := False;
+ MinSize := 30;
Top := FTreePanel.Top + FTreePanel.Height + 1;
Align := alTop;
end;
@@ -644,6 +805,7 @@
FTreePanel := CreatePanel(Self);
with FTreePanel do
begin
+ Parent := Self;
Align := alTop;
FTreeView := CreateTreeView(FTreePanel);
with FTreeView do
@@ -689,6 +851,18 @@
LoadNode(Node, True);
end;
+procedure TInstantExplorer.GetAllowedValues(const AObject: TObject;
+ const APropName: string; const AAllowedValues: TStrings);
+begin
+ if Assigned(FOnGetAllowedValues) then
+ FOnGetAllowedValues(Self, AObject, APropName, AAllowedValues);
+end;
+
+function TInstantExplorer.GetContentEditor: TWinControl;
+begin
+ Result := FContentEditor;
+end;
+
function TInstantExplorer.GetCurrentObject: TObject;
begin
with TreeView do
@@ -855,9 +1029,14 @@
procedure TInstantExplorer.ObjectExposerAfterPost(Sender: TDataSet);
begin
- RefreshNode(TreeView.Selected);
+ Refresh;
end;
+procedure TInstantExplorer.ObjectExposerAfterDelete(Sender: TDataSet);
+begin
+ Refresh;
+end;
+
procedure TInstantExplorer.Refresh;
begin
AssignRootObject(FRootObject);
@@ -902,21 +1081,32 @@
end;
end;
+procedure TInstantExplorer.SetCurrentObject(const AValue: TObject);
+var
+ LNodeIndex: Integer;
+begin
+ for LNodeIndex := 0 to TreeView.Items.Count - 1 do
+ begin
+ if Integer(TreeView.Items[LNodeIndex].Data) > 0 then
+ if TInstantExplorerNodeData(TreeView.Items[LNodeIndex].Data).Instance = AValue then
+ begin
+ TreeView.Selected := TreeView.Items[LNodeIndex];
+ Break;
+ end;
+ end;
+end;
+
procedure TInstantExplorer.SetDetailView(const Value: TPanel);
begin
if Value <> FDetailView then
begin
if Assigned(FDetailView) then
- begin
- FDetailView.Hide;
- FDetailView.Parent := nil;
- end;
+ FDetailView.Visible := False;
FDetailView := Value;
if Assigned(FDetailView) then
begin
FDetailView.Align := alClient;
- FDetailView.Parent := DetailPanel;
- FDetailView.Show;
+ FDetailView.Visible := True;
end;
end;
end;
@@ -1007,7 +1197,9 @@
ObjectExposer.ContainerName := Container.Name;
ObjectExposer.Subject := Container.Owner;
DetailView := ContentView;
- end else if Assigned(AObject) then
+ SetupContentEditor;
+ end
+ else if Assigned(AObject) then
begin
if AObject.ClassType <> ObjectExposer.ObjectClass then
DestroyObjectEditor;
@@ -1023,6 +1215,156 @@
ObjectExposer.Subject := nil;
DetailView := nil;
end;
+ // Reduces a treeview painting problem in D2007 with runtime themes enabled
+ // and checkboxes in the object editor.
+ Update;
end;
+procedure TInstantExplorer.SetupContentEditor;
+var
+ LColumnIndex: Integer;
+ LField: TField;
+ LFieldNames: TStrings;
+ LFieldIndex: Integer;
+
+begin
+ // Arrange columns.
+ LFieldNames := CreateFieldList;
+ try
+ FContentEditor.Grid.Columns.Clear;
+ for LFieldIndex := 0 to LFieldNames.Count - 1 do
+ with FContentEditor.Grid.Columns.Add do
+ begin
+ FieldName := LFieldNames[LFieldIndex];
+ Width := DefaultWidth;
+ end;
+ finally
+ LFieldNames.Free;
+ end;
+
+ for LColumnIndex := 0 to FContentEditor.Grid.Columns.Count - 1 do
+ begin
+ LField := FContentEditor.Grid.Columns[LColumnIndex].Field;
+ // Beautify caption.
+ FContentEditor.Grid.Columns[LColumnIndex].Title.Caption := Beautify(LField.DisplayLabel);
+ // Add combo box for boolean fields.
+ if LField.DataType = ftBoolean then
+ begin
+ FContentEditor.Grid.Columns[LColumnIndex].PickList.Clear;
+ FContentEditor.Grid.Columns[LColumnIndex].PickList.Add(BoolToStr(True, True));
+ FContentEditor.Grid.Columns[LColumnIndex].PickList.Add(BoolToStr(False, True));
+ end
+ else
+ // Add picklist for all columns.
+ begin
+ FContentEditor.Grid.Columns[LColumnIndex].PickList.Clear;
+ GetAllowedValues(ObjectExposer.CurrentObject,
+ FContentEditor.Grid.Columns[LColumnIndex].FieldName,
+ FContentEditor.Grid.Columns[LColumnIndex].PickList);
+ end;
+ FContentEditor.Grid.Columns[LColumnIndex].DropDownRows :=
+ Min(MAX_DROPDOWN_ITEMS, FContentEditor.Grid.Columns[LColumnIndex].PickList.Count);
+ // Hide detail and memo columns, useless in standard grids.
+ if LField.DataType in [ftBlob, ftMemo, ftDataSet] then
+ FContentEditor.Grid.Columns[LColumnIndex].Visible := False;
+ end;
+end;
+
+function TInstantExplorer.CreateFieldList: TStrings;
+var
+ LFieldIndex: Integer;
+begin
+ Result := TStringList.Create;
+ try
+ for LFieldIndex := 0 to FObjectExposer.FieldCount - 1 do
+ Result.Add(FObjectExposer.Fields[LFieldIndex].FieldName);
+ if Assigned(FOnGetFieldNames) then
+ FOnGetFieldNames(Self, ObjectExposer.CurrentObject, Result);
+ except
+ Result.Free;
+ raise;
+ end;
+end;
+
+{ TInstantExplorerDBGrid }
+
+procedure TInstantExplorerDBGrid.Resize;
+begin
+ inherited;
+ UpdateLastColumnWidth;
+end;
+
+procedure TInstantExplorerDBGrid.UpdateLastColumnWidth;
+
+ function GetAllColumnsWidth(const AMinus: Integer): Integer;
+ var
+ LColumnIndex: Integer;
+ begin
+ Result := 0;
+ for LColumnIndex := 0 to Columns.Count - 1 - AMinus do
+ Inc(Result, Columns[LColumnIndex].Width);
+ end;
+
+begin
+ if Columns.Count >= 1 then
+ Columns[Columns.Count - 1].Width := ClientWidth - GetAllColumnsWidth(1);
+end;
+
+{ TInstantExplorerContentEditor }
+
+constructor TInstantExplorerContentEditor.Create(AOwner: TComponent);
+begin
+ inherited;
+ BevelInner := bvNone;
+ BevelOuter := bvNone;
+
+ FGrid := TInstantExplorerDBGrid.Create(Self);
+ FGrid.Parent := Self;
+ FGrid.Align := alClient;
+end;
+
+function TInstantExplorerContentEditor.GetDataSource: TDataSource;
+begin
+ Result := FGrid.DataSource;
+end;
+
+function TInstantExplorerContentEditor.GetGrid: TDBGrid;
+begin
+ Result := FGrid;
+end;
+
+procedure TInstantExplorerContentEditor.SetDataSource(const AValue: TDataSource);
+begin
+ FGrid.DataSource := AValue;
+end;
+
+{ TInstantExplorerDBComboBox }
+
+procedure TInstantExplorerDBComboBox.ApplyToRecord;
+var
+ LDataLink: TDataLink;
+begin
+ // Provides the auto-apply feature.
+ LDataLink := TDataLink(Perform(CM_GETDATALINK, 0, 0));
+ try
+ LDataLink.UpdateRecord;
+ except
+ SelectAll;
+ SetFocus;
+ raise;
+ end;
+end;
+
+procedure TInstantExplorerDBComboBox.Change;
+begin
+ inherited;
+ ApplyToRecord;
+end;
+
+procedure TInstantExplorerDBComboBox.Click;
+begin
+ inherited;
+ ApplyToRecord;
+end;
+
end.
|
|
From: <na...@us...> - 2009-08-20 09:23:43
|
Revision: 854
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=854&view=rev
Author: nandod
Date: 2009-08-20 09:23:30 +0000 (Thu, 20 Aug 2009)
Log Message:
-----------
* Changes needed to build ADO, DBX and IBX brokers with new enum support.
Modified Paths:
--------------
trunk/Source/Brokers/ADO/InstantADO.pas
trunk/Source/Brokers/DBX/InstantDBX.pas
trunk/Source/Brokers/IBX/InstantIBX.pas
Modified: trunk/Source/Brokers/ADO/InstantADO.pas
===================================================================
--- trunk/Source/Brokers/ADO/InstantADO.pas 2009-08-19 20:54:06 UTC (rev 853)
+++ trunk/Source/Brokers/ADO/InstantADO.pas 2009-08-20 09:23:30 UTC (rev 854)
@@ -343,16 +343,17 @@
const
ColumnTypes: array[TInstantDataType, TInstantADOProviderType] of Integer = (
{Unknown, Jet, SQL, Oracle MySQL DB2}
- (adInteger, adInteger, adInteger, adNumeric, adInteger, adInteger), // dtInteger
- (adDouble, adDouble, adDouble, adDouble, adDouble, adDouble), // dtFloat
- (adCurrency, adCurrency, adCurrency, adCurrency, adCurrency, adCurrency), // dtCurrency
- (adBoolean, adBoolean, adBoolean, adChar, adBoolean, adBoolean), // dtBoolean
- (adVarChar, adVarWChar, adVarChar, adVarChar, adVarChar, adVarChar), // dtString
- (adLongVarChar, adLongVarWChar, adLongVarChar, adVarBinary, adLongVarChar, adLongVarChar), // dtMemo
- (adDate, adDate, adDBTimeStamp, adDBTimeStamp, adDate, adDate), // dtDateTime
+ (adInteger, adInteger, adInteger, adNumeric, adInteger, adInteger), // dtInteger
+ (adDouble, adDouble, adDouble, adDouble, adDouble, adDouble), // dtFloat
+ (adCurrency, adCurrency, adCurrency, adCurrency, adCurrency, adCurrency), // dtCurrency
+ (adBoolean, adBoolean, adBoolean, adChar, adBoolean, adBoolean), // dtBoolean
+ (adVarChar, adVarWChar, adVarChar, adVarChar, adVarChar, adVarChar), // dtString
+ (adLongVarChar, adLongVarWChar, adLongVarChar, adVarBinary, adLongVarChar, adLongVarChar), // dtMemo
+ (adDate, adDate, adDBTimeStamp, adDBTimeStamp, adDate, adDate), // dtDateTime
(adLongVarBinary, adLongVarBinary, adLongVarBinary, adVarBinary, adLongVarBinary, adLongVarBinary), // dtBlob
- (adDate, adDate, adDBTimeStamp, adDBTimeStamp, adDate, adDate), // dtDate
- (adDate, adDate, adDBTimeStamp, adDBTimeStamp, adDate, adDate) // dtTime
+ (adDate, adDate, adDBTimeStamp, adDBTimeStamp, adDate, adDate), // dtDate
+ (adDate, adDate, adDBTimeStamp, adDBTimeStamp, adDate, adDate), // dtTime
+ (adInteger, adInteger, adInteger, adNumeric, adInteger, adInteger) // dtEnum
);
var
Column: _Column;
@@ -470,7 +471,8 @@
'DATETIME',
'BLOB',
'DATE',
- 'TIME'
+ 'TIME',
+ 'INTEGER'
);
begin
Result := Types[DataType];
@@ -1139,7 +1141,8 @@
'DATETIME',
'IMAGE',
'DATETIME',
- 'DATETIME');
+ 'DATETIME',
+ 'INTEGER');
begin
Result := Types[DataType];
if (DataType = dtString) and (Size > 0) then
Modified: trunk/Source/Brokers/DBX/InstantDBX.pas
===================================================================
--- trunk/Source/Brokers/DBX/InstantDBX.pas 2009-08-19 20:54:06 UTC (rev 853)
+++ trunk/Source/Brokers/DBX/InstantDBX.pas 2009-08-20 09:23:30 UTC (rev 854)
@@ -619,7 +619,9 @@
'TIMESTAMP',
'BLOB',
'TIMESTAMP',
- 'TIMESTAMP');
+ 'TIMESTAMP',
+ 'INTEGER'
+ );
begin
Result := Types[DataType];
end;
@@ -663,7 +665,8 @@
'DATETIME',
'IMAGE',
'DATETIME',
- 'DATETIME');
+ 'DATETIME',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -771,7 +774,8 @@
'DATE',
'BLOB',
'DATE',
- 'DATE');
+ 'DATE',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -801,7 +805,8 @@
'TIMESTAMP',
'BLOB (1000 K)',
'TIMESTAMP',
- 'TIMESTAMP');
+ 'TIMESTAMP',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
@@ -844,7 +849,8 @@
'DATETIME',
'BLOB',
'DATE',
- 'TIME');
+ 'TIME',
+ 'INTEGER');
begin
Result := Types[DataType];
end;
Modified: trunk/Source/Brokers/IBX/InstantIBX.pas
===================================================================
--- trunk/Source/Brokers/IBX/InstantIBX.pas 2009-08-19 20:54:06 UTC (rev 853)
+++ trunk/Source/Brokers/IBX/InstantIBX.pas 2009-08-20 09:23:30 UTC (rev 854)
@@ -428,7 +428,8 @@
'TIMESTAMP',
'BLOB',
'DATE',
- 'TIME');
+ 'TIME',
+ 'INTEGER');
begin
Result := Types[DataType];
if (DataType = dtString) and (Size > 0) then
|
|
From: <wp...@us...> - 2009-08-19 20:54:17
|
Revision: 853
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=853&view=rev
Author: wp2udk
Date: 2009-08-19 20:54:06 +0000 (Wed, 19 Aug 2009)
Log Message:
-----------
Modified Paths:
--------------
trunk/Source/Brokers/BDE/InstantBDE.pas
trunk/Source/Core/InstantCode.pas
trunk/Source/Core/InstantMetadata.pas
trunk/Source/Core/InstantPersistence.pas
trunk/Source/Core/InstantPresentation.pas
trunk/Source/Core/InstantTypes.pas
trunk/Source/Design/InstantAttributeEditor.dfm
trunk/Source/Design/InstantAttributeEditor.pas
trunk/Source/Design/InstantClassEditor.dfm
trunk/Source/Design/InstantClassEditor.pas
trunk/Source/Design/InstantModelExplorer.pas
Modified: trunk/Source/Brokers/BDE/InstantBDE.pas
===================================================================
--- trunk/Source/Brokers/BDE/InstantBDE.pas 2009-08-19 20:25:12 UTC (rev 852)
+++ trunk/Source/Brokers/BDE/InstantBDE.pas 2009-08-19 20:54:06 UTC (rev 853)
@@ -24,7 +24,7 @@
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
- * Carlo Barazzetta, Nando Dessena, Steven Mitchell
+ * Carlo Barazzetta, Nando Dessena, Steven Mitchell, Brian Andersen
*
* ***** END LICENSE BLOCK ***** *)
@@ -405,7 +405,7 @@
procedure CreateTable(TableMetadata: TInstantTableMetadata);
const
FieldTypes: array[TInstantDataType] of TFieldType =
- (ftInteger, ftFloat, ftBCD, ftBoolean, ftString, ftMemo, ftDateTime, ftBlob, ftDate, ftTime);
+ (ftInteger, ftFloat, ftBCD, ftBoolean, ftString, ftMemo, ftDateTime, ftBlob, ftDate, ftTime, ftInteger);
var
I: Integer;
Table: TTable;
@@ -758,7 +758,7 @@
procedure TInstantDBBuildBDEAddTableCommand.InternalExecute;
const
FieldTypes: array[TInstantDataType] of TFieldType =
- (ftInteger, ftFloat, ftCurrency, ftBoolean, ftString, ftMemo, ftDateTime, ftBlob, ftDate, ftTime);
+ (ftInteger, ftFloat, ftCurrency, ftBoolean, ftString, ftMemo, ftDateTime, ftBlob, ftDate, ftTime, ftInteger);
var
I: Integer;
Table: TTable;
Modified: trunk/Source/Core/InstantCode.pas
===================================================================
--- trunk/Source/Core/InstantCode.pas 2009-08-19 20:25:12 UTC (rev 852)
+++ trunk/Source/Core/InstantCode.pas 2009-08-19 20:54:06 UTC (rev 853)
@@ -589,6 +589,7 @@
function GetIncludeRemoveMethod: Boolean;
function GetIsComplex: Boolean;
function GetIsContainer: Boolean;
+ function GetIsEnum: Boolean;
function GetIsIndexed: Boolean;
function GetIsRequired: Boolean;
function GetMetadata: TInstantAttributeMetadata;
@@ -669,6 +670,7 @@
property Owner: TInstantCodeMetadataInfo read GetOwner;
property IsComplex: Boolean read GetIsComplex;
property IsContainer: Boolean read GetIsContainer;
+ property IsEnum: Boolean read GetIsEnum;
property PropTypeName: string read GetPropTypeName write SetPropTypeName;
property ValueGetterCode: string read GetValueGetterCode;
property ValuePropName: string read GetValuePropName;
@@ -1554,6 +1556,12 @@
procedure InternalRead; override;
end;
+ TEnumTypeProcessor = class(TSimpleTypeProcessor)
+ protected
+ procedure InternalRead; override;
+ procedure HandleArgument(Index: Integer; const Argument: string); override;
+ end;
+
const
{$IFDEF MSWINDOWS}
CRLF = #13#10;
@@ -1616,15 +1624,16 @@
'Boolean',
'string',
'TDateTime',
- '', // atBlob
- '', // atMemo
- '', // atGraphic
- '', // atPart
- '', // atReference
- '', // atParts,
+ '', // atBlob
+ '', // atMemo
+ '', // atGraphic
+ '', // atPart
+ '', // atReference
+ '', // atParts,
'', // atReferences
'TDate',
- 'TTime');
+ 'TTime',
+ ''); // atEnum
begin
for Result := Low(Result) to High(Result) do
if SameText(PropType, TypeNames[Result]) then
@@ -1652,6 +1661,7 @@
AddObject('Reference', TObjectTypeProcessor.Create);
AddObject('Parts', TContainerTypeProcessor.Create);
AddObject('References', TContainerTypeProcessor.Create);
+ AddObject('Enum', TEnumTypeProcessor.Create);
end;
end;
@@ -3582,15 +3592,24 @@
function TInstantCodeAttributeTailor.GetValueGetterCode: string;
begin
- Result := 'Result := ' + FieldValueName;
- if Attribute.IsComplex then
- Result := Result + ' as ' + Attribute.PropTypeName;
+ Result := 'Result := ';
+ if not Attribute.IsEnum then
+ begin
+ Result := Result + FieldValueName;
+ if Attribute.IsComplex then
+ Result := Result + ' as ' + Attribute.PropTypeName;
+ end else
+ Result := Result + Attribute.Metadata.EnumName + '(' + FieldValueName + ')';
+
Result := Result + ';';
end;
function TInstantCodeAttributeTailor.GetValueSetterCode: string;
+const
+ SetterText: array[Boolean] of string =
+ ('Value;', 'Ord(Value)');
begin
- Result := FieldValueName + ' := Value;';
+ Result := FieldValueName + ' := ' + SetterText[Attribute.IsEnum] + ';';
end;
procedure TInstantCodeAttributeTailor.SetIsArray(Value: Boolean);
@@ -3757,6 +3776,8 @@
Params := ObjectClassName
else if (AttributeType in [atString, atMemo]) and (Size > 0) then
Params := IntToStr(Size)
+ else if AttributeType = atEnum then
+ Params := EnumName
else
Exit;
Result := Result + '(' + Params + ')';
@@ -3828,6 +3849,12 @@
Metadata.AttributeClass.InheritsFrom(TInstantContainer);
end;
+function TInstantCodeAttribute.GetIsEnum: Boolean;
+begin
+ Result := Assigned(Metadata.AttributeClass) and
+ Metadata.AttributeClass.InheritsFrom(TInstantEnum);
+end;
+
function TInstantCodeAttribute.GetIsDefault: Boolean;
begin
Result := Metadata.IsDefault;
@@ -3907,9 +3934,13 @@
Result := InstantAttributeTypeToPropertyType(AttributeType);
if Result = '' then
with Metadata do
- if Assigned(AttributeClass) and
- AttributeClass.InheritsFrom(TInstantComplex) then
- Result := ObjectClassName;
+ if Assigned(AttributeClass) then
+ begin
+ if AttributeClass.InheritsFrom(TInstantComplex) then
+ Result := ObjectClassName else
+ if AttributeClass.InheritsFrom(TInstantEnum) then
+ Result := EnumName;
+ end;
end;
function TInstantCodeAttribute.GetReadOnly: Boolean;
@@ -8952,6 +8983,48 @@
end;
end;
+{ TEnumTypeProcessor }
+
+procedure TEnumTypeProcessor.HandleArgument(Index: Integer;
+ const Argument: string);
+//var
+// CodeObject: TInstantCodeObject;
+begin
+ case Index of
+ 1:
+ if IsValidIdent(Argument) then
+ begin
+// Code disabled: This checks if the Enumerated type exists. But it
+// only works if the type exists in the same unit as the
+// model.
+// Assert(FModule = nil, 'xxx');
+// if FModule <> nil then
+// begin
+// CodeObject := FModule.InterfaceSection.FindTypes.Find(Argument);
+// CodeObject := FModule.FindType(Argument);
+
+// if not Assigned(CodeObject) then
+// Error(Format('Identifier not found: %s', [Argument])) else
+// if CodeObject is TInstantCodeEnum then
+// begin
+ FMetadata.EnumName := Argument;
+// FMetadata.EnumValues := (CodeObject as TInstantCodeEnum).FItems;
+// end else
+// Error(Format('Enumerated type expected: %s', [Argument]));
+// end else
+// Error(Format('Invalid identifier name: %s', [Argument]));
+ end
+ else
+ inherited;
+ end;
+end;
+
+procedure TEnumTypeProcessor.InternalRead;
+begin
+ inherited;
+
+end;
+
initialization
CreateTypeProcessors;
Modified: trunk/Source/Core/InstantMetadata.pas
===================================================================
--- trunk/Source/Core/InstantMetadata.pas 2009-08-19 20:25:12 UTC (rev 852)
+++ trunk/Source/Core/InstantMetadata.pas 2009-08-19 20:54:06 UTC (rev 853)
@@ -474,6 +474,7 @@
FStorageKind: TInstantStorageKind;
FExternalStorageName: string;
FValidator: TInstantValidator;
+ FEnumName: string;
function GetAttributeClass: TInstantAbstractAttributeClass;
function GetAttributeClassName: string;
function GetAttributeTypeName: string;
@@ -550,6 +551,7 @@
property StorageName: string read FStorageName write FStorageName;
property ValidCharsString: string read GetValidCharsString
write SetValidCharsString;
+ property EnumName: string read FEnumName write FEnumName;
end;
TInstantAttributeMetadatas = class(TInstantMetadatas)
@@ -579,8 +581,8 @@
AttributeClasses: array[TInstantAttributeType] of TInstantAttributeClass = (
nil, TInstantInteger, TInstantFloat, TInstantCurrency, TInstantBoolean,
TInstantString, TInstantDateTime, TInstantBlob, TInstantMemo,
- TInstantGraphic, TInstantPart, TInstantReference, TInstantParts,
- TInstantReferences, TInstantDate, TInstantTime);
+ TInstantGraphic, TInstantPart, TInstantReference, TInstantParts,
+ TInstantReferences, TInstantDate, TInstantTime, TInstantEnum);
{ TInstantMetadata }
@@ -1695,6 +1697,7 @@
Self.FStorageKind := FStorageKind;
Self.FExternalStorageName := FExternalStorageName;
Self.FValidCharsString := FValidCharsString;
+ Self.FEnumName := FEnumName;
end;
end;
Modified: trunk/Source/Core/InstantPersistence.pas
===================================================================
--- trunk/Source/Core/InstantPersistence.pas 2009-08-19 20:25:12 UTC (rev 852)
+++ trunk/Source/Core/InstantPersistence.pas 2009-08-19 20:54:06 UTC (rev 853)
@@ -743,6 +743,9 @@
property RefItems[Index: Integer]: TInstantObjectReference read GetRefItems;
end;
+ TInstantEnum = class(TInstantInteger)
+ end;
+
TInstantObjectState = class(TPersistent)
private
FIsChanged: Boolean;
@@ -1578,7 +1581,8 @@
const
InstantDataTypeStrings: array[TInstantDataType] of string =
- ('Integer', 'Float', 'Currency', 'Boolean', 'String', 'Memo', 'DateTime', 'Blob', 'Date', 'Time');
+ ('Integer', 'Float', 'Currency', 'Boolean', 'String', 'Memo', 'DateTime',
+ 'Blob', 'Date', 'Time', 'Integer');
procedure AssignInstantDataTypeStrings(Strings: TStrings);
@@ -1662,7 +1666,8 @@
dtBlob, //atParts
dtBlob, //atReferences
dtDate, //atDate
- dtTime); //atTime
+ dtTime, //atTime
+ dtEnum); //atEnum
DataTypesXML: array[TInstantAttributeType] of TInstantDataType = (
dtString, //atUnknown
@@ -1680,7 +1685,8 @@
dtMemo, //atParts
dtMemo, //atReferences
dtDate, //atDate
- dtTime); //atTime
+ dtTime, //atTime
+ dtEnum); //atEnum
begin
if BlobStreamFormat = sfBinary then
Result := DataTypesBinary[AttributeType]
Modified: trunk/Source/Core/InstantPresentation.pas
===================================================================
--- trunk/Source/Core/InstantPresentation.pas 2009-08-19 20:25:12 UTC (rev 852)
+++ trunk/Source/Core/InstantPresentation.pas 2009-08-19 20:54:06 UTC (rev 853)
@@ -816,7 +816,7 @@
FieldTypes: array[TInstantAttributeType] of TFieldType = (
ftUnknown, ftInteger, ftFloat, ftBCD, ftBoolean, ftString, ftDateTime,
ftBlob, ftMemo, ftBlob, ftInteger, ftInteger, ftDataSet, ftDataSet,
- ftDate, ftTime);
+ ftDate, ftTime, ftInteger);
begin
Result := FieldTypes[AttributeType];
end;
Modified: trunk/Source/Core/InstantTypes.pas
===================================================================
--- trunk/Source/Core/InstantTypes.pas 2009-08-19 20:25:12 UTC (rev 852)
+++ trunk/Source/Core/InstantTypes.pas 2009-08-19 20:54:06 UTC (rev 853)
@@ -26,7 +26,7 @@
* Contributor(s):
* Carlo Barazzetta, Andrea Petrelli, Nando Dessena, Steven Mitchell,
* Joao Morais, Cesar Coll, Uberto Barbini, David Taylor, Hanedi Salas,
- * Riceball Lee, David Moorhouse
+ * Riceball Lee, David Moorhouse, Brian Andersen
*
* ***** END LICENSE BLOCK ***** *)
@@ -49,7 +49,7 @@
TInstantStorageKind = (skEmbedded, skExternal);
TInstantAttributeType = (atUnknown, atInteger, atFloat, atCurrency, atBoolean,
atString, atDateTime, atBlob, atMemo, atGraphic,
- atPart, atReference, atParts, atReferences, atDate, atTime);
+ atPart, atReference, atParts, atReferences, atDate, atTime, atEnum);
TInstantAttributeCategory = (acUnknown, acSimple, acElement, acContainer);
TInstantGraphicFileFormat = (gffUnknown, gffBmp, gffTiff, gffJpeg, gffPng,
@@ -58,7 +58,7 @@
TInstantPersistence = (peEmbedded, peStored);
TInstantDataType = (dtInteger, dtFloat, dtCurrency, dtBoolean, dtString,
- dtMemo, dtDateTime, dtBlob, dtDate, dtTime);
+ dtMemo, dtDateTime, dtBlob, dtDate, dtTime, dtEnum);
TInstantDataTypes = set of TInstantDataType;
TInstantFieldOption = (foRequired, foIndexed);
TInstantFieldOptions = set of TInstantFieldOption;
Modified: trunk/Source/Design/InstantAttributeEditor.dfm
===================================================================
--- trunk/Source/Design/InstantAttributeEditor.dfm 2009-08-19 20:25:12 UTC (rev 852)
+++ trunk/Source/Design/InstantAttributeEditor.dfm 2009-08-19 20:54:06 UTC (rev 853)
@@ -1,9 +1,9 @@
inherited InstantAttributeEditorForm: TInstantAttributeEditorForm
Left = 78
Top = 485
- Width = 249
- Height = 358
Caption = 'Attribute Editor'
+ ClientHeight = 371
+ ClientWidth = 241
ParentFont = True
OldCreateOrder = True
OnCreate = FormCreate
@@ -11,12 +11,12 @@
TextHeight = 13
inherited EditPanel: TPanel
Width = 241
- Height = 293
+ Height = 340
object PageControl: TPageControl
Left = 4
Top = 4
Width = 233
- Height = 285
+ Height = 332
ActivePage = DefinitionSheet
Align = alClient
TabOrder = 0
@@ -25,7 +25,7 @@
object NameLabel: TLabel
Left = 8
Top = 8
- Width = 28
+ Width = 27
Height = 13
Caption = '&Name'
FocusControl = NameEdit
@@ -41,14 +41,14 @@
object ObjectClassLabel: TLabel
Left = 8
Top = 88
- Width = 59
+ Width = 60
Height = 13
Caption = 'Object &Class'
FocusControl = ObjectClassEdit
end
object StorageNameLabel: TLabel
Left = 8
- Top = 128
+ Top = 176
Width = 68
Height = 13
Caption = '&Storage Name'
@@ -57,27 +57,35 @@
object SizeLabel: TLabel
Left = 160
Top = 48
- Width = 20
+ Width = 19
Height = 13
Caption = 'Si&ze'
FocusControl = SizeEdit
end
object ExternalStorageNameLabel: TLabel
Left = 8
- Top = 214
- Width = 109
+ Top = 262
+ Width = 111
Height = 13
Caption = '&External Storage Name'
FocusControl = ExternalStorageNameEdit
end
object StorageKindLabel: TLabel
Left = 8
- Top = 168
+ Top = 216
Width = 61
Height = 13
Caption = 'Storage &Kind'
FocusControl = StorageKindEdit
end
+ object EnumeratedTypeLabel: TLabel
+ Left = 7
+ Top = 132
+ Width = 83
+ Height = 13
+ Caption = '&Enumerated type'
+ FocusControl = EnumeratedTypeEdit
+ end
object NameEdit: TDBEdit
Left = 7
Top = 24
@@ -117,7 +125,7 @@
end
object StorageNameEdit: TDBEdit
Left = 7
- Top = 144
+ Top = 192
Width = 210
Height = 21
DataField = 'StorageName'
@@ -136,7 +144,7 @@
end
object ExternalStorageNameEdit: TDBEdit
Left = 7
- Top = 231
+ Top = 279
Width = 210
Height = 21
DataField = 'ExternalStorageName'
@@ -146,7 +154,7 @@
end
object StorageKindEdit: TDBComboBox
Left = 7
- Top = 184
+ Top = 232
Width = 210
Height = 21
Style = csDropDownList
@@ -159,7 +167,7 @@
end
object AutoExternalStorageNameCheckBox: TCheckBox
Left = 172
- Top = 212
+ Top = 260
Width = 45
Height = 17
Alignment = taLeftJustify
@@ -167,6 +175,18 @@
TabOrder = 7
OnClick = AutoExternalStorageNameCheckBoxClick
end
+ object EnumeratedTypeEdit: TDBComboBox
+ Left = 7
+ Top = 149
+ Width = 210
+ Height = 21
+ DataField = 'Metadata.EnumName'
+ DataSource = SubjectSource
+ ItemHeight = 13
+ TabOrder = 8
+ OnChange = EnumeratedTypeEditChange
+ OnEnter = EnumeratedTypeEditEnter
+ end
end
object AccessSheet: TTabSheet
Caption = 'Access'
@@ -174,7 +194,7 @@
object VisibilityLabel: TLabel
Left = 8
Top = 8
- Width = 36
+ Width = 37
Height = 13
Caption = '&Visibility'
FocusControl = VisibilityEdit
@@ -182,7 +202,7 @@
object SingularNameLabel: TLabel
Left = 120
Top = 8
- Width = 69
+ Width = 68
Height = 13
Caption = '&Singular Name'
FocusControl = SingularNameEdit
@@ -195,7 +215,7 @@
Style = csDropDownList
DataField = 'Visibility'
DataSource = SubjectSource
- ItemHeight = 13
+ ItemHeight = 0
TabOrder = 0
end
object MethodsGroupBox: TGroupBox
@@ -318,7 +338,7 @@
object EdtMaskLabel: TLabel
Left = 8
Top = 8
- Width = 47
+ Width = 45
Height = 13
Caption = 'Edit &Mask'
FocusControl = EditMaskEdit
@@ -334,7 +354,7 @@
object ValidCharsLabel: TLabel
Left = 8
Top = 48
- Width = 77
+ Width = 78
Height = 13
Caption = '&Valid Characters'
FocusControl = ValidCharsEdit
@@ -387,7 +407,7 @@
end
end
inherited BottomPanel: TPanel
- Top = 293
+ Top = 340
Width = 241
inherited ButtonPanel: TPanel
Left = 81
Modified: trunk/Source/Design/InstantAttributeEditor.pas
===================================================================
--- trunk/Source/Design/InstantAttributeEditor.pas 2009-08-19 20:25:12 UTC (rev 852)
+++ trunk/Source/Design/InstantAttributeEditor.pas 2009-08-19 20:54:06 UTC (rev 853)
@@ -24,7 +24,8 @@
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
- * Carlo Barazzetta, Adrea Petrelli, Nando Dessena, Steven Mitchell, David Moorhouse
+ * Carlo Barazzetta, Adrea Petrelli, Nando Dessena, Steven Mitchell,
+ * David Moorhouse, Brian Andersen
*
* ***** END LICENSE BLOCK ***** *)
@@ -116,6 +117,8 @@
StorageKindLabel: TLabel;
AutoExternalStorageNameCheckBox: TCheckBox;
OptionUseNullCheckBox: TCheckBox;
+ EnumeratedTypeLabel: TLabel;
+ EnumeratedTypeEdit: TDBComboBox;
procedure NameEditKeyPress(Sender: TObject; var Key: Char);
procedure FormCreate(Sender: TObject);
procedure NameEditChange(Sender: TObject);
@@ -132,6 +135,8 @@
procedure ExternalStorageNameEditChange(Sender: TObject);
procedure AutoExternalStorageNameCheckBoxClick(Sender: TObject);
procedure StorageNameEditChange(Sender: TObject);
+ procedure EnumeratedTypeEditChange(Sender: TObject);
+ procedure EnumeratedTypeEditEnter(Sender: TObject);
private
FBaseClassStorageName: string;
FLimited: Boolean;
@@ -148,8 +153,10 @@
protected
procedure LoadClasses;
procedure LoadData; override;
- procedure LoadEnums(TypeInfo: PTypeInfo; Items: TStrings;
- Values: Pointer);
+// Do not delete
+// procedure LoadEnums(TypeInfo: PTypeInfo; Items: TStrings;
+// Values: Pointer);
+ procedure LoadEnum;
procedure LoadTypes;
procedure LoadVisibilities;
procedure LoadStorageKind;
@@ -268,9 +275,10 @@
LoadOptions;
LoadMethods;
end;
+ LoadEnum;
end;
-procedure TInstantAttributeEditorForm.LoadEnums(TypeInfo: PTypeInfo;
+{procedure TInstantAttributeEditorForm.LoadEnums(TypeInfo: PTypeInfo;
Items: TStrings; Values: Pointer);
type
PByteSet = ^TByteSet;
@@ -302,7 +310,7 @@
finally
Names.Free;
end;
-end;
+end; }
procedure TInstantAttributeEditorForm.LoadStorageKind;
begin
@@ -310,6 +318,31 @@
SubjectExposer.GetFieldStrings(StorageKindEdit.Field, StorageKindEdit.Items);
end;
+procedure TInstantAttributeEditorForm.LoadEnum;
+var
+ I: Integer;
+ CodeType: TInstantCodeType;
+begin
+ EnumeratedTypeEdit.Items.BeginUpdate;
+ try
+ EnumeratedTypeEdit.Clear;
+ if Assigned(FModel) then
+ begin
+ for I := 0 to Pred(FModel.TypeCount) do
+ begin
+ CodeType := FModel.Types[I];
+ if CodeType is TInstantCodeEnum then
+ EnumeratedTypeEdit.Items.AddObject(CodeType.Name, CodeType);
+ end;
+ end;
+
+ EnumeratedTypeEdit.ItemIndex :=
+ EnumeratedTypeEdit.Items.IndexOf(SubjectExposer.FieldByName('Metadata.EnumName').AsString);
+ finally
+ EnumeratedTypeEdit.Items.EndUpdate;
+ end;
+end;
+
procedure TInstantAttributeEditorForm.LoadTypes;
procedure RestrictForComplexAttr;
@@ -547,6 +580,7 @@
LoadTypes;
LoadVisibilities;
LoadStorageKind;
+ LoadEnum;
UpdateControls;
ComputeExternalStorageName;
end;
@@ -631,7 +665,7 @@
end;
var
- HasName, HasClass, IsComplex, IsContainer, CanBeExternal,
+ HasName, HasClass, HasEnum, IsComplex, IsContainer, IsEnum, CanBeExternal,
CanHaveStorageName, IsMaskable, IsString, IsValid: Boolean;
begin
CanBeExternal := False;
@@ -640,6 +674,7 @@
IsMaskable := False;
IsContainer := False;
IsString := False;
+ IsEnum := False;
if Assigned(Subject) then
begin
@@ -654,12 +689,14 @@
IsContainer := Subject.IsContainer;
CanHaveStorageName := Subject.CanHaveStorageName;
IsString := Subject.AttributeType in [atString, atMemo];
+ IsEnum := Subject.IsEnum;
end;
HasName := NameEdit.Text <> '';
HasClass := ObjectClassEdit.Text <> '';
+ HasEnum := EnumeratedTypeEdit.Text <> '';
- IsValid := HasName and (not IsComplex or HasClass);
+ IsValid := HasName and ((not IsComplex or HasClass)) or ((IsEnum) and (HasEnum));
DisableSubControls(DefinitionSheet, Limited);
DisableSubControls(AccessSheet, Limited);
@@ -681,6 +718,8 @@
EnableCtrl(StorageKindEdit, CanBeExternal and IsObjectClassPersistent);
EnableCtrl(StorageKindLabel, CanBeExternal and IsObjectClassPersistent);
+ EnableCtrl(EnumeratedTypeLabel, IsEnum);
+ EnableCtrl(EnumeratedTypeEdit, IsEnum);
end;
EnableCtrl(StorageNameLabel, CanHaveStorageName);
EnableCtrl(StorageNameEdit, CanHaveStorageName);
@@ -711,6 +750,18 @@
ComputeExternalStorageName;
end;
+procedure TInstantAttributeEditorForm.EnumeratedTypeEditChange(Sender: TObject);
+begin
+ inherited;
+ UpdateControls;
+end;
+
+procedure TInstantAttributeEditorForm.EnumeratedTypeEditEnter(Sender: TObject);
+begin
+ inherited;
+ LoadEnum;
+end;
+
procedure TInstantAttributeEditorForm.ExternalStorageNameEditChange(Sender:
TObject);
begin
Modified: trunk/Source/Design/InstantClassEditor.dfm
===================================================================
--- trunk/Source/Design/InstantClassEditor.dfm 2009-08-19 20:25:12 UTC (rev 852)
+++ trunk/Source/Design/InstantClassEditor.dfm 2009-08-19 20:54:06 UTC (rev 853)
@@ -139,6 +139,11 @@
Height = 170
end
end
+ inherited AttributesMenu: TPopupMenu
+ inherited AttributeNewItem: TMenuItem
+ OnClick = nil
+ end
+ end
end
end
end
Modified: trunk/Source/Design/InstantClassEditor.pas
===================================================================
--- trunk/Source/Design/InstantClassEditor.pas 2009-08-19 20:25:12 UTC (rev 852)
+++ trunk/Source/Design/InstantClassEditor.pas 2009-08-19 20:54:06 UTC (rev 853)
@@ -281,6 +281,7 @@
if Value <> FModel then
begin
FModel := Value;
+ InstantAttributeViewFrame.Model := Value;
PopulateBaseClasses;
PopulateUnits;
end;
Modified: trunk/Source/Design/InstantModelExplorer.pas
===================================================================
--- trunk/Source/Design/InstantModelExplorer.pas 2009-08-19 20:25:12 UTC (rev 852)
+++ trunk/Source/Design/InstantModelExplorer.pas 2009-08-19 20:54:06 UTC (rev 853)
@@ -608,6 +608,7 @@
NewModel.AssignComponents(FModel);
FModel.Free;
FModel := NewModel;
+ InstantAttributeViewFrame.Model := FModel;
except
on E: Exception do
begin
|
|
From: <dav...@us...> - 2009-08-19 20:25:22
|
Revision: 852
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=852&view=rev
Author: davidvtaylor
Date: 2009-08-19 20:25:12 +0000 (Wed, 19 Aug 2009)
Log Message:
-----------
Fix for update problem with the attribute view feature on Model Explorer
- Added checks for null Subject to avoid AV when switching projects
- Reworked and simplified attribute view refresh logic
- Remove ExplictXXX properties for forms for older Delphi versions
Modified Paths:
--------------
trunk/Source/Design/InstantAttributeEditor.pas
trunk/Source/Design/InstantAttributeView.pas
trunk/Source/Design/InstantClassEditor.dfm
trunk/Source/Design/InstantModelExplorer.dfm
trunk/Source/Design/InstantModelExplorer.pas
Modified: trunk/Source/Design/InstantAttributeEditor.pas
===================================================================
--- trunk/Source/Design/InstantAttributeEditor.pas 2009-08-19 18:07:37 UTC (rev 851)
+++ trunk/Source/Design/InstantAttributeEditor.pas 2009-08-19 20:25:12 UTC (rev 852)
@@ -263,8 +263,11 @@
begin
inherited;
- LoadOptions;
- LoadMethods;
+ if (assigned(Subject)) then
+ begin
+ LoadOptions;
+ LoadMethods;
+ end;
end;
procedure TInstantAttributeEditorForm.LoadEnums(TypeInfo: PTypeInfo;
Modified: trunk/Source/Design/InstantAttributeView.pas
===================================================================
--- trunk/Source/Design/InstantAttributeView.pas 2009-08-19 18:07:37 UTC (rev 851)
+++ trunk/Source/Design/InstantAttributeView.pas 2009-08-19 20:25:12 UTC (rev 852)
@@ -447,12 +447,14 @@
procedure TInstantAttributeViewFrame.PopulateInheritedAttributes;
begin
- LoadAttributeView(InheritedAttributesView, Subject.BaseClass, True);
+ if (assigned(Subject)) then
+ LoadAttributeView(InheritedAttributesView, Subject.BaseClass, True);
end;
procedure TInstantAttributeViewFrame.PopulateIntroducedAttributes;
begin
- LoadAttributeView(IntroducedAttributesView, Subject, False);
+ if (assigned(Subject)) then
+ LoadAttributeView(IntroducedAttributesView, Subject, False);
end;
procedure TInstantAttributeViewFrame.RestoreLayout;
Modified: trunk/Source/Design/InstantClassEditor.dfm
===================================================================
--- trunk/Source/Design/InstantClassEditor.dfm 2009-08-19 18:07:37 UTC (rev 851)
+++ trunk/Source/Design/InstantClassEditor.dfm 2009-08-19 20:25:12 UTC (rev 852)
@@ -6,15 +6,11 @@
ClientWidth = 400
OldCreateOrder = True
OnCreate = FormCreate
- ExplicitWidth = 408
- ExplicitHeight = 399
PixelsPerInch = 96
TextHeight = 13
inherited EditPanel: TPanel
Width = 400
Height = 334
- ExplicitWidth = 400
- ExplicitHeight = 334
object PageControl: TPageControl
Left = 4
Top = 4
@@ -131,21 +127,16 @@
Height = 290
Align = alClient
TabOrder = 0
- ExplicitHeight = 290
inherited AttributesSplitter: TSplitter
Top = 186
- ExplicitTop = 186
end
inherited InheritedAttributesPanel: TPanel
Top = 190
- ExplicitTop = 190
end
inherited IntroducedAttributesPanel: TPanel
Height = 186
- ExplicitHeight = 186
inherited IntroducedAttributesView: TListView
Height = 170
- ExplicitHeight = 170
end
end
end
@@ -155,16 +146,11 @@
inherited BottomPanel: TPanel
Top = 334
Width = 400
- ExplicitTop = 334
- ExplicitWidth = 400
inherited ButtonPanel: TPanel
Left = 240
- ExplicitLeft = 240
inherited OkButton: TButton
Left = 1
Top = 6
- ExplicitLeft = 1
- ExplicitTop = 6
end
end
end
Modified: trunk/Source/Design/InstantModelExplorer.dfm
===================================================================
--- trunk/Source/Design/InstantModelExplorer.dfm 2009-08-19 18:07:37 UTC (rev 851)
+++ trunk/Source/Design/InstantModelExplorer.dfm 2009-08-19 20:25:12 UTC (rev 852)
@@ -127,44 +127,30 @@
Height = 218
Align = alClient
TabOrder = 1
- ExplicitTop = 25
- ExplicitWidth = 410
- ExplicitHeight = 218
inherited AttributesSplitter: TSplitter
Top = 114
Width = 410
- ExplicitTop = 114
- ExplicitWidth = 410
end
inherited InheritedAttributesPanel: TPanel
Top = 118
Width = 410
- ExplicitTop = 118
- ExplicitWidth = 410
inherited InheritedAttributesLabel: TLabel
Width = 410
- ExplicitWidth = 410
end
inherited InheritedAttributesView: TListView
Width = 410
Font.Pitch = fpVariable
- ExplicitWidth = 410
end
end
inherited IntroducedAttributesPanel: TPanel
Width = 410
Height = 114
- ExplicitWidth = 410
- ExplicitHeight = 114
inherited IntroducedAttributesLabel: TLabel
Width = 410
- ExplicitWidth = 410
end
inherited IntroducedAttributesView: TListView
Width = 410
Height = 98
- ExplicitWidth = 410
- ExplicitHeight = 98
end
end
inherited Actions: TActionList
Modified: trunk/Source/Design/InstantModelExplorer.pas
===================================================================
--- trunk/Source/Design/InstantModelExplorer.pas 2009-08-19 18:07:37 UTC (rev 851)
+++ trunk/Source/Design/InstantModelExplorer.pas 2009-08-19 20:25:12 UTC (rev 852)
@@ -168,7 +168,6 @@
FOnApplyClass: TInstantCodeClassApplyEvent;
FOnGotoSource: TInstantGotoSourceEvent;
FOnLoadModel: TInstantCodeModelEvent;
- FViewUpdateDisableCount: Integer;
function GetFocusedClass: TInstantCodeClass;
function GetSelectedNode: TTreeNode;
procedure SetError(E: Exception);
@@ -185,14 +184,12 @@
function ClassFromNode(Node: TTreeNode): TInstantCodeClass;
procedure DoApplyClass(AClass: TInstantCodeClass;
ChangeInfo: TInstantCodeClassChangeInfo);
- procedure DisableViewUpdate;
- procedure EnableViewUpdate;
- function ViewUpdateEnabled: boolean;
function EditClass(AClass: TInstantCodeClass; New: Boolean): Boolean;
procedure GotoNodeSource(Node: TTreeNode);
procedure GotoSource(const FileName: string; Pos: TInstantCodePos);
procedure LoadModel;
procedure UpdateActions; override;
+ procedure RefreshAttributeView;
property SelectedNode: TTreeNode read GetSelectedNode;
public
constructor Create(AOwner: TComponent); override;
@@ -397,22 +394,6 @@
FOnApplyClass(Self, AClass, ChangeInfo);
end;
-procedure TInstantModelExplorerForm.DisableViewUpdate;
- begin
- inc(FViewUpdateDisableCount);
- end;
-
-procedure TInstantModelExplorerForm.EnableViewUpdate;
- begin
- if (FViewUpdateDisableCount > 0) then
- dec(FViewUpdateDisableCount);
- end;
-
-function TInstantModelExplorerForm.ViewUpdateEnabled: boolean;
- begin
- Result := (FViewUpdateDisableCount = 0);
- end;
-
function TInstantModelExplorerForm.EditClass(AClass: TInstantCodeClass;
New: Boolean): Boolean;
const
@@ -640,8 +621,7 @@
Node: TTreeNode);
begin
FSelectedNode := nil;
- if (ViewUpdateEnabled) then
- ViewClassAttributes(FocusedClass);
+ RefreshAttributeView;
end;
procedure TInstantModelExplorerForm.ModelViewGetImageIndex(Sender: TObject;
@@ -738,6 +718,7 @@
AttributePanel.Visible := Visible;
AttributeSplitter.Visible := Visible;
ViewAttributeButton.Down := Visible;
+ RefreshAttributeView;
end;
procedure TInstantModelExplorerForm.SetError(E: Exception);
@@ -791,6 +772,12 @@
CollapseAllAction.Enabled := AtClass;
end;
+procedure TInstantModelExplorerForm.RefreshAttributeView;
+ begin
+ if (AttributePanel.Visible) then
+ ViewClassAttributes(FocusedClass);
+ end;
+
procedure TInstantModelExplorerForm.UpdateModel;
function FindClassNode(Parent: TTreeNode;
@@ -901,49 +888,44 @@
//FAttributeFrame.Clear;
InstantAttributeViewFrame.Clear;
- DisableViewUpdate;
-
+ Level := 0;
+ FSelectedNode := nil;
+ ModelView.Items.BeginUpdate;
try
- Level := 0;
- FSelectedNode := nil;
- ModelView.Items.BeginUpdate;
- try
- if Assigned(FError) then
- begin
- ModelView.Items.Clear;
- {$IFDEF MSWINDOWS}
- ModelView.ShowRoot := False;
- {$ENDIF}
- ModelView.Items.AddObject(nil, FError.Text, FError)
- end else
- begin
- Nodes := TList.Create;
- try
- {$IFDEF MSWINDOWS}
- ModelView.ShowRoot := True;
- {$ENDIF}
- for I := 0 to Pred(Model.ClassCount) do
- begin
- AClass := Model.Classes[I];
- if (Style = msRelations) or not Assigned(AClass.BaseClass) then
- Nodes.Add(AddClass(nil, AClass, '', Level));
- end;
- ModelView.AlphaSort;
- RemoveInvalidNodes(nil, Nodes);
- FirstNode := ModelView.Items.GetFirstNode;
- if Assigned(FirstNode) and (FirstNode.GetNextSibling = nil) then
- FirstNode.Expand(False);
- finally
- Nodes.Free;
+ if Assigned(FError) then
+ begin
+ ModelView.Items.Clear;
+{$IFDEF MSWINDOWS}
+ ModelView.ShowRoot := False;
+{$ENDIF}
+ ModelView.Items.AddObject(nil, FError.Text, FError)
+ end else
+ begin
+ Nodes := TList.Create;
+ try
+{$IFDEF MSWINDOWS}
+ ModelView.ShowRoot := True;
+{$ENDIF}
+ for I := 0 to Pred(Model.ClassCount) do
+ begin
+ AClass := Model.Classes[I];
+ if (Style = msRelations) or not Assigned(AClass.BaseClass) then
+ Nodes.Add(AddClass(nil, AClass, '', Level));
end;
+ ModelView.AlphaSort;
+ RemoveInvalidNodes(nil, Nodes);
+ FirstNode := ModelView.Items.GetFirstNode;
+ if Assigned(FirstNode) and (FirstNode.GetNextSibling = nil) then
+ FirstNode.Expand(False);
+ finally
+ Nodes.Free;
end;
- finally;
- ModelView.Items.EndUpdate;
- ModelView.Repaint;
end;
- finally
- EnableViewUpdate;
+ finally;
+ ModelView.Items.EndUpdate;
+ ModelView.Repaint;
end;
+ RefreshAttributeView;
end;
procedure TInstantModelExplorerForm.ViewInheritanceActionExecute(
|
|
From: <wp...@us...> - 2009-08-19 18:07:45
|
Revision: 851
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=851&view=rev
Author: wp2udk
Date: 2009-08-19 18:07:37 +0000 (Wed, 19 Aug 2009)
Log Message:
-----------
Enhancements to the ModelExplorer and the introduction of the TInstantAttributeViewFrame as published in the Newsgroup Repository 11-10-2007 (ddmmyyy) didn't allow the user to create new attributes and there was too much copy/paste in the code. The TInstantClassEditorForm and TInstantModelExplorerForm is rewritten to use the TInstantAttributeViewFrame. It now shared the exact same code.
Modified Paths:
--------------
trunk/Source/Design/InstantAttributeView.pas
trunk/Source/Design/InstantClassEditor.dfm
trunk/Source/Design/InstantClassEditor.pas
trunk/Source/Design/InstantModelExplorer.dfm
trunk/Source/Design/InstantModelExplorer.pas
Modified: trunk/Source/Design/InstantAttributeView.pas
===================================================================
--- trunk/Source/Design/InstantAttributeView.pas 2009-08-19 16:06:24 UTC (rev 850)
+++ trunk/Source/Design/InstantAttributeView.pas 2009-08-19 18:07:37 UTC (rev 851)
@@ -25,7 +25,7 @@
*
* Contributor(s):
* David Moorhouse, Carlo Barazzetta, Adrea Petrelli, Steven Mitchell,
- * Nando Dessena, David Taylor
+ * Nando Dessena, David Taylor, Brian Andersen
*
* ***** END LICENSE BLOCK ***** *)
@@ -88,6 +88,8 @@
FNewAttributes: TList;
FModel: TInstantCodeModel;
FNameAttribute: TInstantCodeAttribute;
+ FWasAccepted: Boolean;
+ FOldSubjectName: string;
procedure DeleteAttribute(Attribute: TInstantCodeAttribute);
procedure FitColumns(View: TListView);
function GetNameAttribute: TInstantCodeAttribute;
@@ -97,26 +99,30 @@
procedure SetSubject(const Value: TInstantCodeClass);
function GetFocusedAttribute: TInstantCodeAttribute;
protected
+ property FocusedAttribute: TInstantCodeAttribute read GetFocusedAttribute;
+ property NameAttribute: TInstantCodeAttribute read GetNameAttribute;
function AddAttributeToView(View: TListView;
Attribute: TInstantCodeAttribute): TListItem;
function EditAttribute(Attribute: TInstantCodeAttribute;
Exists: Boolean; const Title: string = ''): Boolean;
- procedure PopulateInheritedAttributes;
- procedure PopulateIntroducedAttributes;
- property NameAttribute: TInstantCodeAttribute read GetNameAttribute;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Clear;
+ procedure PopulateInheritedAttributes;
+ procedure PopulateIntroducedAttributes;
procedure RestoreAttributes;
- procedure UpdateActions;
+ procedure UpdateActions;
procedure RestoreLayout;
procedure StoreLayout;
+ property BackupAttributes: TObjectList read FBackupAttributes;
property ChangedAttributes: TStringList read FChangedAttributes;
- property FocusedAttribute: TInstantCodeAttribute read GetFocusedAttribute;
property Model: TInstantCodeModel read FModel write SetModel;
property NewAttributes: TList read FNewAttributes;
property Subject: TInstantCodeClass read FSubject write SetSubject;
+
+ property WasAccepted: Boolean read FWasAccepted;
+ property OldSubjectName: string read FOldSubjectName;
end;
implementation
@@ -169,12 +175,18 @@
var
Attribute: TInstantCodeAttribute;
begin
+ FWasAccepted := False;
+ FOldSubjectName := Subject.Name;
+
with IntroducedAttributesView do
if Assigned(ItemFocused) then
begin
Attribute := ItemFocused.Data;
if not Confirm(Format(SConfirmDeleteAttribute, [Attribute.Name])) then
Exit;
+
+ FWasAccepted := True;
+
DeleteAttribute(Attribute);
ItemFocused.Delete;
if Assigned(ItemFocused) then
@@ -183,13 +195,15 @@
end;
end;
-procedure TInstantAttributeViewFrame.AttributeEditActionExecute(
- Sender: TObject);
+procedure TInstantAttributeViewFrame.AttributeEditActionExecute(Sender: TObject);
var
OldName: string;
Attribute: TInstantCodeAttribute;
Exists: Boolean;
begin
+ FWasAccepted := False;
+ FOldSubjectName := Subject.Name;
+
Attribute := FocusedAttribute;
if not Assigned(Attribute) then
Exit;
@@ -199,6 +213,8 @@
Attribute.DetectMethodTypes;
if EditAttribute(Attribute, Exists) then
begin
+ FWasAccepted := True;
+
if Exists and (FChangedAttributes.IndexOfObject(Attribute) = -1) then
FChangedAttributes.AddObject(OldName, Attribute);
PopulateIntroducedAttributes;
@@ -210,10 +226,15 @@
Attribute: TInstantCodeAttribute;
NewItem: TListItem;
begin
+ FWasAccepted := False;
+ FOldSubjectName := Subject.Name;
+
Attribute := Subject.AddAttribute;
if not EditAttribute(Attribute, False, 'New Attribute') then
Attribute.Free
else begin
+ FWasAccepted := True;
+
FNewAttributes.Add(Attribute);
with IntroducedAttributesView do
begin
@@ -239,6 +260,8 @@
begin
InheritedAttributesView.Clear;
IntroducedAttributesView.Clear;
+ FChangedAttributes.Clear;
+ FNewAttributes.Clear;
end;
constructor TInstantAttributeViewFrame.Create(AOwner: TComponent);
Modified: trunk/Source/Design/InstantClassEditor.dfm
===================================================================
--- trunk/Source/Design/InstantClassEditor.dfm 2009-08-19 16:06:24 UTC (rev 850)
+++ trunk/Source/Design/InstantClassEditor.dfm 2009-08-19 18:07:37 UTC (rev 851)
@@ -1,21 +1,25 @@
inherited InstantClassEditorForm: TInstantClassEditorForm
Left = 319
Top = 196
- Width = 408
- Height = 399
Caption = 'Class Editor'
+ ClientHeight = 365
+ ClientWidth = 400
OldCreateOrder = True
OnCreate = FormCreate
+ ExplicitWidth = 408
+ ExplicitHeight = 399
PixelsPerInch = 96
TextHeight = 13
inherited EditPanel: TPanel
Width = 400
- Height = 341
+ Height = 334
+ ExplicitWidth = 400
+ ExplicitHeight = 334
object PageControl: TPageControl
Left = 4
Top = 4
Width = 392
- Height = 333
+ Height = 326
ActivePage = ClassSheet
Align = alClient
TabOrder = 0
@@ -120,108 +124,48 @@
BorderWidth = 4
Caption = 'Attributes'
ImageIndex = 1
- object AttributesSplitter: TSplitter
+ inline InstantAttributeViewFrame: TInstantAttributeViewFrame
Left = 0
- Top = 165
- Width = 376
- Height = 3
- Cursor = crVSplit
- Align = alBottom
- end
- object InheritedAttributesPanel: TPanel
- Left = 0
- Top = 168
- Width = 376
- Height = 129
- Align = alBottom
- BevelOuter = bvNone
- TabOrder = 1
- object InheritedAttributesLabel: TLabel
- Left = 0
- Top = 0
- Width = 376
- Height = 16
- Align = alTop
- AutoSize = False
- Caption = 'Inherited'
- end
- object InheritedAttributesView: TListView
- Left = 0
- Top = 16
- Width = 376
- Height = 113
- Align = alClient
- Columns = <
- item
- Caption = 'Name'
- Width = 124
- end
- item
- Caption = 'Type'
- Width = 124
- end
- item
- Caption = 'Storage Name'
- Width = 124
- end>
- ReadOnly = True
- TabOrder = 0
- ViewStyle = vsReport
- OnEdited = IntroducedAttributesViewEdited
- end
- end
- object IntroducedAttributesPanel: TPanel
- Left = 0
Top = 0
Width = 376
- Height = 165
+ Height = 290
Align = alClient
- BevelOuter = bvNone
TabOrder = 0
- object IntroducedAttributesLabel: TLabel
- Left = 0
- Top = 0
- Width = 376
- Height = 16
- Align = alTop
- AutoSize = False
- Caption = 'Introduced'
+ ExplicitHeight = 290
+ inherited AttributesSplitter: TSplitter
+ Top = 186
+ ExplicitTop = 186
end
- object IntroducedAttributesView: TListView
- Left = 0
- Top = 16
- Width = 376
- Height = 149
- Align = alClient
- Columns = <
- item
- Caption = 'Name'
- Width = 124
- end
- item
- Caption = 'Type'
- Width = 124
- end
- item
- Caption = 'Storage Name'
- Width = 124
- end>
- ReadOnly = True
- PopupMenu = AttributesMenu
- TabOrder = 0
- ViewStyle = vsReport
- OnDblClick = IntroducedAttributesViewDblClick
- OnEdited = IntroducedAttributesViewEdited
+ inherited InheritedAttributesPanel: TPanel
+ Top = 190
+ ExplicitTop = 190
end
+ inherited IntroducedAttributesPanel: TPanel
+ Height = 186
+ ExplicitHeight = 186
+ inherited IntroducedAttributesView: TListView
+ Height = 170
+ ExplicitHeight = 170
+ end
+ end
end
end
end
end
inherited BottomPanel: TPanel
- Top = 341
+ Top = 334
Width = 400
+ ExplicitTop = 334
+ ExplicitWidth = 400
inherited ButtonPanel: TPanel
Left = 240
+ ExplicitLeft = 240
+ inherited OkButton: TButton
+ Left = 1
+ Top = 6
+ ExplicitLeft = 1
+ ExplicitTop = 6
+ end
end
end
inherited SubjectExposer: TInstantExposer
@@ -232,57 +176,4 @@
inherited SubjectSource: TDataSource
Top = 268
end
- object AttributeImages: TImageList
- Left = 68
- Top = 268
- end
- object StateImages: TImageList
- Left = 100
- Top = 268
- end
- object AttributesMenu: TPopupMenu
- Images = ActionImages
- OnPopup = AttributesMenuPopup
- Left = 164
- Top = 268
- object AttributeNewItem: TMenuItem
- Action = AttributeNewAction
- ShortCut = 45
- end
- object AttributeDeleteItem: TMenuItem
- Action = AttributeDeleteAction
- ShortCut = 46
- end
- object AttributeEditItem: TMenuItem
- Action = AttributeEditAction
- ShortCut = 32781
- end
- end
- object Actions: TActionList
- Images = ActionImages
- Left = 196
- Top = 268
- object AttributeNewAction: TAction
- Caption = '&New'
- Hint = 'New Attribute'
- ImageIndex = 0
- OnExecute = AttributeNewActionExecute
- end
- object AttributeDeleteAction: TAction
- Caption = '&Delete'
- Hint = 'Delete'
- ImageIndex = 1
- OnExecute = AttributeDeleteActionExecute
- end
- object AttributeEditAction: TAction
- Caption = '&Edit'
- Hint = 'Edit'
- ImageIndex = 2
- OnExecute = AttributeEditActionExecute
- end
- end
- object ActionImages: TImageList
- Left = 132
- Top = 268
- end
end
Modified: trunk/Source/Design/InstantClassEditor.pas
===================================================================
--- trunk/Source/Design/InstantClassEditor.pas 2009-08-19 16:06:24 UTC (rev 850)
+++ trunk/Source/Design/InstantClassEditor.pas 2009-08-19 18:07:37 UTC (rev 851)
@@ -24,7 +24,8 @@
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
- * Carlo Barazzetta, Adrea Petrelli, Steven Mitchell, Nando Dessena
+ * Carlo Barazzetta, Adrea Petrelli, Steven Mitchell, Nando Dessena,
+ * Brian Andersen
*
* ***** END LICENSE BLOCK ***** *)
@@ -44,7 +45,7 @@
{$IFDEF MSWINDOWS}
Windows, Messages, Graphics, Controls, Forms, Dialogs,
StdCtrls, ComCtrls, ExtCtrls, Mask, DBCtrls,
- ImgList, ActnList, Menus;
+ ImgList, ActnList, Menus, InstantAttributeView;
{$ENDIF}
{$IFDEF LINUX}
QActnList, QMenus, QTypes, QImgList, QComCtrls, QControls, QExtCtrls,
@@ -53,17 +54,6 @@
type
TInstantClassEditorForm = class(TInstantEditForm)
- AttributeImages: TImageList;
- StateImages: TImageList;
- AttributesMenu: TPopupMenu;
- Actions: TActionList;
- ActionImages: TImageList;
- AttributeNewAction: TAction;
- AttributeDeleteAction: TAction;
- AttributeNewItem: TMenuItem;
- AttributeDeleteItem: TMenuItem;
- AttributeEditAction: TAction;
- AttributeEditItem: TMenuItem;
PageControl: TPageControl;
ClassSheet: TTabSheet;
ClassNameLabel: TLabel;
@@ -74,23 +64,11 @@
UnitEdit: TDBComboBox;
StorageEdit: TDBEdit;
AttributeSheet: TTabSheet;
- AttributesSplitter: TSplitter;
- InheritedAttributesPanel: TPanel;
- InheritedAttributesLabel: TLabel;
- InheritedAttributesView: TListView;
- IntroducedAttributesPanel: TPanel;
- IntroducedAttributesView: TListView;
- IntroducedAttributesLabel: TLabel;
StorageLabel: TLabel;
PersistenceComboBox: TDBComboBox;
PersistenceLabel: TLabel;
- procedure AttributeNewActionExecute(Sender: TObject);
- procedure AttributeDeleteActionExecute(Sender: TObject);
- procedure AttributeEditActionExecute(Sender: TObject);
+ InstantAttributeViewFrame: TInstantAttributeViewFrame;
procedure FormCreate(Sender: TObject);
- procedure IntroducedAttributesViewDblClick(Sender: TObject);
- procedure IntroducedAttributesViewEdited(Sender: TObject; Item: TListItem;
- var S: String);
procedure ClassNameEditChange(Sender: TObject);
procedure SubjectExposerAfterPostField(Sender: TObject; Field: TField);
procedure PersistenceComboBoxChange(Sender: TObject);
@@ -98,47 +76,32 @@
var Value: Variant; Write: Boolean);
procedure OkButtonClick(Sender: TObject);
procedure CancelButtonClick(Sender: TObject);
- procedure AttributesMenuPopup(Sender: TObject);
procedure ClassSheetResize(Sender: TObject);
private
- FBackupAttributes: TObjectList;
- FChangedAttributes: TStringList;
- FNewAttributes: TList;
FModel: TInstantCodeModel;
- FNameAttribute: TInstantCodeAttribute;
FTitle: string;
FIsNew: Boolean;
- procedure DeleteAttribute(Attribute: TInstantCodeAttribute);
- procedure FitColumns(View: TListView);
- function GetNameAttribute: TInstantCodeAttribute;
function GetSubject: TInstantCodeClass;
- procedure LoadAttributeView(View: TListView; AClass: TInstantCodeClass;
- Recursive: Boolean);
procedure SetModel(const Value: TInstantCodeModel);
procedure SetSubject(const Value: TInstantCodeClass);
- function GetFocusedAttribute: TInstantCodeAttribute;
procedure SetIsNew(const Value: Boolean);
+ function GetChangedAttributes: TStringList;
+ function GetNewAttributes: TList;
protected
- function AddAttributeToView(View: TListView;
- Attribute: TInstantCodeAttribute): TListItem;
function EditAttribute(Attribute: TInstantCodeAttribute;
Exists: Boolean; const Title: string = ''): Boolean;
- procedure PopulateInheritedAttributes;
- procedure PopulateIntroducedAttributes;
procedure PopulateBaseClasses;
procedure PopulateUnits;
procedure UpdateActions; override;
procedure UpdateCaption;
procedure UpdateControls;
- property NameAttribute: TInstantCodeAttribute read GetNameAttribute;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
- property ChangedAttributes: TStringList read FChangedAttributes;
- property FocusedAttribute: TInstantCodeAttribute read GetFocusedAttribute;
+ property ChangedAttributes: TStringList read GetChangedAttributes;
property IsNew: Boolean read FIsNew write SetIsNew;
property Model: TInstantCodeModel read FModel write SetModel;
- property NewAttributes: TList read FNewAttributes;
+ property NewAttributes: TList read GetNewAttributes;
property Subject: TInstantCodeClass read GetSubject write SetSubject;
end;
@@ -155,112 +118,10 @@
{ TInstantClassDesigner }
-function TInstantClassEditorForm.AddAttributeToView(
- View: TListView; Attribute: TInstantCodeAttribute): TListItem;
-begin
- Result := View.Items.Add;
- with Result do
- begin
- with Attribute do
- if (HostClass = Subject) or not Assigned(HostClass) then
- Caption := Name else
- Caption := HostClass.Name + '.' + Name;
- Data := Attribute;
- //Add Attribute Type
- SubItems.Add(Attribute.AttributeTypeText);
- //Add StorageName or ExternalStorageName
- if Attribute.CanBeExternal and not Attribute.CanHaveStorageName then
- SubItems.Add(Attribute.ExternalStorageName)
- else
- SubItems.Add(Attribute.StorageName);
- case Attribute.AttributeType of
- atReference: ImageIndex := 1;
- atPart: ImageIndex := 2;
- atReferences: ImageIndex := 3;
- atParts: ImageIndex := 4;
- else
- ImageIndex := 0;
- end;
- if Attribute.HostClass <> Subject then
- ImageIndex := ImageIndex + 5;
- end;
- FitColumns(View);
-end;
-
-procedure TInstantClassEditorForm.AttributeDeleteActionExecute(Sender: TObject);
-var
- Attribute: TInstantCodeAttribute;
-begin
- with IntroducedAttributesView do
- if Assigned(ItemFocused) then
- begin
- Attribute := ItemFocused.Data;
- if not Confirm(Format(SConfirmDeleteAttribute, [Attribute.Name])) then
- Exit;
- DeleteAttribute(Attribute);
- ItemFocused.Delete;
- if Assigned(ItemFocused) then
- ItemFocused.Selected := True;
- FitColumns(IntroducedAttributesView);
- end;
-end;
-
-procedure TInstantClassEditorForm.AttributeEditActionExecute(Sender: TObject);
-var
- OldName: string;
- Attribute: TInstantCodeAttribute;
- Exists: Boolean;
-begin
- Attribute := FocusedAttribute;
- if not Assigned(Attribute) then
- Exit;
- OldName := Attribute.Name;
- Exists := FNewAttributes.IndexOf(Attribute) = -1;
- if Exists then
- Attribute.DetectMethodTypes;
- if EditAttribute(Attribute, Exists) then
- begin
- if Exists and (FChangedAttributes.IndexOfObject(Attribute) = -1) then
- FChangedAttributes.AddObject(OldName, Attribute);
- PopulateIntroducedAttributes;
- end;
-end;
-
-procedure TInstantClassEditorForm.AttributeNewActionExecute(
- Sender: TObject);
-var
- Attribute: TInstantCodeAttribute;
- NewItem: TListItem;
-begin
- Attribute := Subject.AddAttribute;
- if not EditAttribute(Attribute, False, 'New Attribute') then
- Attribute.Free
- else begin
- FNewAttributes.Add(Attribute);
- with IntroducedAttributesView do
- begin
- Items.BeginUpdate;
- try
- NewItem := AddAttributeToView(IntroducedAttributesView, Attribute);
- NewItem.Focused := True;
- Selected := NewItem;
- finally
- Items.EndUpdate;
- end;
- NewItem.MakeVisible{$IFDEF MSWINDOWS}(False){$ENDIF};
- end;
- end;
-end;
-
-procedure TInstantClassEditorForm.AttributesMenuPopup(Sender: TObject);
-begin
- UpdateActions;
-end;
-
procedure TInstantClassEditorForm.CancelButtonClick(Sender: TObject);
begin
inherited;
- Subject.AssignAttributes(FBackupAttributes);
+ Subject.AssignAttributes(InstantAttributeViewFrame.BackupAttributes);
end;
procedure TInstantClassEditorForm.ClassNameEditChange(Sender: TObject);
@@ -274,30 +135,11 @@
constructor TInstantClassEditorForm.Create(AOwner: TComponent);
begin
inherited;
- FBackupAttributes := TObjectList.Create;
- FChangedAttributes := TStringList.Create;
- FNewAttributes := TList.Create;
+ InstantAttributeViewFrame.Subject := Subject;
end;
-procedure TInstantClassEditorForm.DeleteAttribute(
- Attribute: TInstantCodeAttribute);
-var
- Index: Integer;
-begin
- Index := FChangedAttributes.IndexOfObject(Attribute);
- if Index <> -1 then
- FChangedAttributes.Delete(Index);
- FNewAttributes.Remove(Attribute);
- Attribute.Delete;
- Attribute.Free;
-end;
-
destructor TInstantClassEditorForm.Destroy;
begin
- FNewAttributes.Free;
- FChangedAttributes.Free;
- FBackupAttributes.Free;
- FNameAttribute.Free;
inherited;
end;
@@ -331,125 +173,21 @@
end;
end;
-procedure TInstantClassEditorForm.FitColumns(View: TListView);
-var
- i : integer;
+function TInstantClassEditorForm.GetChangedAttributes: TStringList;
begin
- //adjust Columns size to window width
- for i := View.Columns.Count-1 downto 0 do
- begin
-{$IFDEF MSWINDOWS}
- View.Columns[i].AutoSize := True;
-{$ENDIF}
-{$IFDEF LINUX}
- View.Columns[i].Width := View.Width div View.Columns.Count;
-{$ENDIF}
- end;
+ Result := InstantAttributeViewFrame.ChangedAttributes;
end;
-function TInstantClassEditorForm.GetFocusedAttribute: TInstantCodeAttribute;
+function TInstantClassEditorForm.GetNewAttributes: TList;
begin
- with IntroducedAttributesView do
- if Assigned(ItemFocused) then
- Result := ItemFocused.Data
- else
- Result := nil;
+ Result := InstantAttributeViewFrame.NewAttributes;
end;
-function TInstantClassEditorForm.GetNameAttribute: TInstantCodeAttribute;
-begin
- if not Assigned(FNameAttribute) and
- Subject.DerivesFrom(TInstantObject.ClassName) then
- begin
- FNameAttribute := TInstantCodeAttribute.Create(nil);
- FNameAttribute.Name := TInstantObject.ClassName + '.' +
- InstantIdFieldName;
- FNameAttribute.AttributeTypeName := 'String';
- end;
- Result := FNameAttribute;
-end;
-
function TInstantClassEditorForm.GetSubject: TInstantCodeClass;
begin
Result := inherited Subject as TInstantCodeClass;
end;
-procedure TInstantClassEditorForm.IntroducedAttributesViewDblClick(
- Sender: TObject);
-begin
- AttributeEditAction.Execute;
-end;
-
-procedure TInstantClassEditorForm.IntroducedAttributesViewEdited(
- Sender: TObject; Item: TListItem; var S: String);
-var
- Attribute: TInstantCodeAttribute;
-begin
- Attribute := TInstantCodeAttribute(Item.Data);
- if Assigned(Attribute) then
- begin
- Attribute.Name := S;
- S := Attribute.Name;
- end;
-end;
-
-procedure TInstantClassEditorForm.LoadAttributeView(View: TListView;
- AClass: TInstantCodeClass; Recursive: Boolean);
-var
- FocusedData: Pointer;
-
- procedure LoadClass(AClass: TInstantCodeClass);
- var
- I: Integer;
- NewItem: TListItem;
- FocusItem: TListItem;
- begin
- FocusItem := nil;
- if Assigned(AClass) then
- with AClass do
- begin
- for I := 0 to Pred(AttributeCount) do
- begin
- NewItem := AddAttributeToView(View, Attributes[I]);
- if NewItem.Data = FocusedData then
- FocusItem := NewItem;
- end;
- if Recursive then
- LoadClass(BaseClass)
- else begin
- if not Assigned(FocusedData) and (View.Items.Count > 0) then
- FocusItem := View.Items[0];
- if Assigned(FocusItem) then
- begin
- FocusItem.Focused := True;
- View.Selected := FocusItem;
- end;
- end;
- end;
- end;
-
-begin
- with View do
- begin
- if Assigned(ItemFocused) then
- FocusedData := ItemFocused.Data else
- FocusedData := nil;
- with Items do
- begin
- BeginUpdate;
- try
- Clear;
- if Recursive and Assigned(NameAttribute) then
- AddAttributeToView(View, NameAttribute);
- LoadClass(AClass);
- finally
- EndUpdate;
- FitColumns(View);
- end;
- end;
- end;
-end;
-
procedure TInstantClassEditorForm.OkButtonClick(Sender: TObject);
var
I: Integer;
@@ -511,16 +249,6 @@
end;
end;
-procedure TInstantClassEditorForm.PopulateInheritedAttributes;
-begin
- LoadAttributeView(InheritedAttributesView, Subject.BaseClass, True);
-end;
-
-procedure TInstantClassEditorForm.PopulateIntroducedAttributes;
-begin
- LoadAttributeView(IntroducedAttributesView, Subject, False);
-end;
-
procedure TInstantClassEditorForm.PopulateUnits;
var
I: Integer;
@@ -563,12 +291,12 @@
if Value <> Subject then
begin
inherited Subject := Value;
- Subject.CloneAttributes(FBackupAttributes);
+ InstantAttributeViewFrame.Subject := Subject;
+// Subject.CloneAttributes(FBackupAttributes);
+ Subject.CloneAttributes(InstantAttributeViewFrame.BackupAttributes);
with PersistenceComboBox do
ItemIndex := SubjectExposer.GetFieldStrings(Field, Items);
PopulateBaseClasses;
- PopulateIntroducedAttributes;
- PopulateInheritedAttributes;
UpdateCaption;
UpdateControls;
end;
@@ -579,8 +307,8 @@
begin
if Field.FieldName = 'BaseClassName' then
begin
- FreeAndNil(FNameAttribute);
- PopulateInheritedAttributes;
+// FreeAndNil(FNameAttribute);
+ InstantAttributeViewFrame.PopulateInheritedAttributes;
end;
end;
@@ -600,13 +328,8 @@
end;
procedure TInstantClassEditorForm.UpdateActions;
-var
- Attribute: TInstantCodeAttribute;
begin
inherited;
- Attribute := FocusedAttribute;
- AttributeEditAction.Enabled := Assigned(Attribute);
- AttributeDeleteAction.Enabled := Assigned(Attribute);
end;
procedure TInstantClassEditorForm.UpdateCaption;
@@ -630,19 +353,6 @@
procedure TInstantClassEditorForm.FormCreate(Sender: TObject);
begin
- LoadMultipleImages(AttributeImages, 'IO_CLASSEDITORATTRIBUTEIMAGES', HInstance);
- LoadMultipleImages(StateImages, 'IO_CLASSEDITORSTATEIMAGES', HInstance);
- LoadMultipleImages(ActionImages, 'IO_CLASSEDITORACTIONIMAGES', HInstance);
-{$IFDEF MSWINDOWS}
- BorderStyle := bsSizeable;
- IntroducedAttributesView.SmallImages := AttributeImages;
- InheritedAttributesView.SmallImages := AttributeImages;
-{$ENDIF}
-{$IFDEF LINUX}
- BorderStyle := fbsSizeable;
- IntroducedAttributesView.Images := AttributeImages;
- InheritedAttributesView.Images := AttributeImages;
-{$ENDIF}
FTitle := Caption;
PageControl.ActivePage := ClassSheet;
ActiveControl := ClassNameEdit;
Modified: trunk/Source/Design/InstantModelExplorer.dfm
===================================================================
--- trunk/Source/Design/InstantModelExplorer.dfm 2009-08-19 16:06:24 UTC (rev 850)
+++ trunk/Source/Design/InstantModelExplorer.dfm 2009-08-19 18:07:37 UTC (rev 851)
@@ -30,9 +30,9 @@
end
object ModelPanel: TPanel
Left = 0
- Top = 27
+ Top = 29
Width = 410
- Height = 228
+ Height = 226
Align = alClient
BevelOuter = bvNone
Constraints.MinHeight = 20
@@ -45,7 +45,6 @@
Height = 29
BorderWidth = 1
ButtonHeight = 23
- Flat = True
Images = ActionImages
ParentShowHint = False
ShowHint = True
@@ -121,6 +120,65 @@
ParentFont = False
end
end
+ inline InstantAttributeViewFrame: TInstantAttributeViewFrame
+ Left = 0
+ Top = 25
+ Width = 410
+ Height = 218
+ Align = alClient
+ TabOrder = 1
+ ExplicitTop = 25
+ ExplicitWidth = 410
+ ExplicitHeight = 218
+ inherited AttributesSplitter: TSplitter
+ Top = 114
+ Width = 410
+ ExplicitTop = 114
+ ExplicitWidth = 410
+ end
+ inherited InheritedAttributesPanel: TPanel
+ Top = 118
+ Width = 410
+ ExplicitTop = 118
+ ExplicitWidth = 410
+ inherited InheritedAttributesLabel: TLabel
+ Width = 410
+ ExplicitWidth = 410
+ end
+ inherited InheritedAttributesView: TListView
+ Width = 410
+ Font.Pitch = fpVariable
+ ExplicitWidth = 410
+ end
+ end
+ inherited IntroducedAttributesPanel: TPanel
+ Width = 410
+ Height = 114
+ ExplicitWidth = 410
+ ExplicitHeight = 114
+ inherited IntroducedAttributesLabel: TLabel
+ Width = 410
+ ExplicitWidth = 410
+ end
+ inherited IntroducedAttributesView: TListView
+ Width = 410
+ Height = 98
+ ExplicitWidth = 410
+ ExplicitHeight = 98
+ end
+ end
+ inherited Actions: TActionList
+ inherited AttributeNewAction: TAction
+ OnExecute = InstantAttributeViewFrameAttributeNewActionExecute
+ end
+ inherited AttributeDeleteAction: TAction
+ OnExecute = InstantAttributeViewFrameAttributeDeleteActionExecute
+ end
+ inherited AttributeEditAction: TAction
+ OnExecute = InstantAttributeViewFrameAttributeEditActionExecute
+ end
+ end
+ end
end
object ModelImages: TImageList
Left = 104
Modified: trunk/Source/Design/InstantModelExplorer.pas
===================================================================
--- trunk/Source/Design/InstantModelExplorer.pas 2009-08-19 16:06:24 UTC (rev 850)
+++ trunk/Source/Design/InstantModelExplorer.pas 2009-08-19 18:07:37 UTC (rev 851)
@@ -131,6 +131,7 @@
ViewAttributeButton: TToolButton;
ViewAttributesAction: TAction;
ViewAttributes: TMenuItem;
+ InstantAttributeViewFrame: TInstantAttributeViewFrame;
procedure AboutActionExecute(Sender: TObject);
procedure BuildDatabaseActionExecute(Sender: TObject);
procedure CollapseAllActionExecute(Sender: TObject);
@@ -151,11 +152,17 @@
procedure ViewRelationsActionExecute(Sender: TObject);
procedure ViewSourceActionExecute(Sender: TObject);
procedure ImportModelActionExecute(Sender: TObject);
+ procedure InstantAttributeViewFrameAttributeNewActionExecute(
+ Sender: TObject);
+ procedure InstantAttributeViewFrameAttributeDeleteActionExecute(
+ Sender: TObject);
+ procedure InstantAttributeViewFrameAttributeEditActionExecute(
+ Sender: TObject);
private
FError: TInstantModelError;
FModel: TInstantCodeModel;
FModelView: TModelTreeView;
- FAttributeFrame: TInstantAttributeViewFrame;
+// FAttributeFrame: TInstantAttributeViewFrame;
FSelectedNode: TTreeNode;
FStyle: TInstantModelStyle;
FOnApplyClass: TInstantCodeClassApplyEvent;
@@ -174,6 +181,7 @@
procedure ApplyClass(AClass: TInstantCodeClass;
ChangeType: TInstantCodeChangeType; OldName: string = '';
ChangedAttributes: TStringList = nil; NewAttributes: TList = nil);
+ procedure ApplyClassFromView(AView: TInstantAttributeViewFrame);
function ClassFromNode(Node: TTreeNode): TInstantCodeClass;
procedure DoApplyClass(AClass: TInstantCodeClass;
ChangeInfo: TInstantCodeClassChangeInfo);
@@ -272,6 +280,15 @@
end;
end;
+procedure TInstantModelExplorerForm.ApplyClassFromView(
+ AView: TInstantAttributeViewFrame);
+begin
+ if InstantAttributeViewFrame.WasAccepted then
+ ApplyClass(FocusedClass, ctEdit, InstantAttributeViewFrame.OldSubjectName,
+ InstantAttributeViewFrame.ChangedAttributes,
+ InstantAttributeViewFrame.NewAttributes);
+end;
+
procedure TInstantModelExplorerForm.BuildDatabaseActionExecute(
Sender: TObject);
begin
@@ -332,12 +349,12 @@
OnGetImageIndex := ModelViewGetImageIndex;
end;
- FAttributeFrame := TInstantAttributeViewFrame.Create(Self);
- with FAttributeFrame do
- begin
- Parent := AttributePanel;
- Align := alClient;
- end;
+// FAttributeFrame := TInstantAttributeViewFrame.Create(Self);
+// with FAttributeFrame do
+// begin
+// Parent := AttributePanel;
+// Align := alClient;
+// end;
FModel := TInstantCodeModel.Create;
DesignModel := @FModel;
@@ -402,20 +419,23 @@
ChangeTypes: array[Boolean] of TInstantCodeChangeType = (ctEdit, ctNew);
var
OldName: string;
+ EditorForm: TInstantClassEditorForm;
begin
OldName := AClass.Name;
- with TInstantClassEditorForm.Create(nil) do
+ EditorForm := TInstantClassEditorForm.Create(nil);
try
- IsNew := New;
- Model := Self.Model;
- Subject := AClass;
- Result := ShowModal = mrOk;
+ EditorForm.IsNew := New;
+ EditorForm.Model := Self.Model;
+ EditorForm.Subject := AClass;
+ Result := EditorForm.ShowModal = mrOk;
if Result then
ApplyClass(AClass, ChangeTypes[New], OldName,
- FAttributeFrame.ChangedAttributes,
- FAttributeFrame.NewAttributes);
+// FAttributeFrame.ChangedAttributes,
+// FAttributeFrame.NewAttributes);
+ EditorForm.ChangedAttributes,
+ EditorForm.NewAttributes);
finally
- Free;
+ EditorForm.Free;
end;
end;
@@ -519,6 +539,31 @@
Refresh;
end;
+procedure TInstantModelExplorerForm.InstantAttributeViewFrameAttributeDeleteActionExecute(
+ Sender: TObject);
+begin
+ InstantAttributeViewFrame.AttributeDeleteActionExecute(Sender);
+ ApplyClassFromView(InstantAttributeViewFrame);
+end;
+
+procedure TInstantModelExplorerForm.InstantAttributeViewFrameAttributeEditActionExecute(
+ Sender: TObject);
+begin
+ InstantAttributeViewFrame.AttributeEditActionExecute(Sender);
+ ApplyClassFromView(InstantAttributeViewFrame);
+end;
+
+procedure TInstantModelExplorerForm.InstantAttributeViewFrameAttributeNewActionExecute(
+ Sender: TObject);
+//var
+// AClass: TInstantCodeClass;
+// OldName: string;
+begin
+// OldName := AClass.Name;
+ InstantAttributeViewFrame.AttributeNewActionExecute(Sender);
+ ApplyClassFromView(InstantAttributeViewFrame);
+end;
+
procedure TInstantModelExplorerForm.ExportModelActionExecute(
Sender: TObject);
begin
@@ -853,7 +898,8 @@
I: Integer;
Level: Integer;
begin
- FAttributeFrame.Clear;
+ //FAttributeFrame.Clear;
+ InstantAttributeViewFrame.Clear;
DisableViewUpdate;
@@ -927,7 +973,8 @@
procedure TInstantModelExplorerForm.ViewClassAttributes(AClass: TInstantCodeClass);
begin
- FAttributeFrame.Subject := AClass;
+// FAttributeFrame.Subject := AClass;
+ InstantAttributeViewFrame.Subject := AClass;
end;
procedure TInstantModelExplorerForm.RestoreLayout;
@@ -938,7 +985,8 @@
if OpenKey('Software\InstantObjects.org\Layout\ClassAttributes', False) then begin
SetAttributePanelVisible(ReadBool('ShowAttributes'));
AttributePanel.Height := ReadInteger('AttributePanelHeight');
- FAttributeFrame.InheritedAttributesPanel.Height := ReadInteger('InheritedAttributeHeight');
+// FAttributeFrame.InheritedAttributesPanel.Height := ReadInteger('InheritedAttributeHeight');
+ InstantAttributeViewFrame.InheritedAttributesPanel.Height := ReadInteger('InheritedAttributeHeight');
end;
finally
Free;
@@ -955,7 +1003,8 @@
if OpenKey('Software\InstantObjects.org\Layout\ClassAttributes', True) then begin
WriteBool('ShowAttributes', ViewAttributeButton.Down);
WriteInteger('AttributePanelHeight', AttributePanel.Height);
- WriteInteger('InheritedAttributeHeight', FAttributeFrame.InheritedAttributesPanel.Height);
+// WriteInteger('InheritedAttributeHeight', FAttributeFrame.InheritedAttributesPanel.Height);
+ WriteInteger('InheritedAttributeHeight', InstantAttributeViewFrame.InheritedAttributesPanel.Height);
end;
finally
Free;
|
|
From: <wp...@us...> - 2009-08-19 16:06:33
|
Revision: 850
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=850&view=rev
Author: wp2udk
Date: 2009-08-19 16:06:24 +0000 (Wed, 19 Aug 2009)
Log Message:
-----------
Fix for Access Violation when trying to edit an attribute when not Published Section/Visibility is present in the class.
Modified Paths:
--------------
trunk/Source/Design/InstantAttributeEditor.pas
Modified: trunk/Source/Design/InstantAttributeEditor.pas
===================================================================
--- trunk/Source/Design/InstantAttributeEditor.pas 2009-08-19 06:04:32 UTC (rev 849)
+++ trunk/Source/Design/InstantAttributeEditor.pas 2009-08-19 16:06:24 UTC (rev 850)
@@ -343,6 +343,7 @@
var
I: Integer;
S: String;
+ CodeProperty: TInstantCodeProperty;
begin
VisibilityEdit.Items.BeginUpdate;
try
@@ -360,10 +361,15 @@
if Limited then
begin
- S := GetEnumName(TypeInfo(TInstantCodeVisibility),
- Ord(Subject.FindValueProp.Visibility));
- VisibilityEdit.ItemIndex :=
- VisibilityEdit.Items.IndexOf(Copy(S, 3, length(S)));
+ CodeProperty := Subject.FindValueProp;
+ if CodeProperty <> nil then
+ begin
+ S := GetEnumName(TypeInfo(TInstantCodeVisibility),
+ Ord(CodeProperty.Visibility));
+ VisibilityEdit.ItemIndex :=
+ VisibilityEdit.Items.IndexOf(Copy(S, 3, length(S)));
+ end else
+ VisibilityEdit.ItemIndex := -1;
end
else if Assigned(VisibilityEdit.Field) then
VisibilityEdit.ItemIndex :=
|
|
From: <dav...@us...> - 2009-08-19 06:04:38
|
Revision: 849
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=849&view=rev
Author: davidvtaylor
Date: 2009-08-19 06:04:32 +0000 (Wed, 19 Aug 2009)
Log Message:
-----------
Fix problem with AnyDAC broker uses list under Delphi 7
Modified Paths:
--------------
trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas
Modified: trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas
===================================================================
--- trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas 2009-08-19 05:57:21 UTC (rev 848)
+++ trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas 2009-08-19 06:04:32 UTC (rev 849)
@@ -50,8 +50,8 @@
uses
Classes, Db, InstantPersistence, InstantCommand, InstantDBBuild,
InstantBrokers, InstantMetadata, InstantTypes, uADCompClient,
- uADStanOption, uADStanParam, uADStanIntf, uADStanConst,
- {$IFDEF D10+}DBCommonTypes{$ENDIF};
+ uADStanOption, uADStanParam, uADStanIntf, uADStanConst
+ {$IFDEF D10+}, DBCommonTypes{$ENDIF};
type
TInstantAnyDACConnectionDef = class(TInstantRelationalConnectionDef)
|
|
From: <dav...@us...> - 2009-08-19 05:57:32
|
Revision: 848
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=848&view=rev
Author: davidvtaylor
Date: 2009-08-19 05:57:21 +0000 (Wed, 19 Aug 2009)
Log Message:
-----------
Remove junk someone accidentally committed
Removed Paths:
-------------
trunk/Source/Catalogs/MSSql/D2006/__history/
|
|
From: <dav...@us...> - 2009-08-19 05:55:58
|
Revision: 847
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=847&view=rev
Author: davidvtaylor
Date: 2009-08-19 05:55:45 +0000 (Wed, 19 Aug 2009)
Log Message:
-----------
Fixes to restore compatibility with the Delphi 7 compiler
- Remove unsupported DFM properties: Padding and ExplicitTop, ExplicitWidth etc.
- Fix some minor Model Explorer screen layout issues
- Add conditionals around "inline" directive (D2006+ only)
- Add missing validation units to IOCore package
- Fix incomplete changes to DBX3 broker (transaction logic was broken)
Modified Paths:
--------------
trunk/Source/Brokers/DBX/InstantDBX.pas
trunk/Source/Core/D7/IOCore.dpk
trunk/Source/Core/InstantClasses.pas
trunk/Source/Core/InstantRtti.pas
trunk/Source/Design/InstantModelExplorer.dfm
trunk/Source/Design/InstantModelImport.dfm
Modified: trunk/Source/Brokers/DBX/InstantDBX.pas
===================================================================
--- trunk/Source/Brokers/DBX/InstantDBX.pas 2009-08-18 20:52:36 UTC (rev 846)
+++ trunk/Source/Brokers/DBX/InstantDBX.pas 2009-08-19 05:55:45 UTC (rev 847)
@@ -912,12 +912,11 @@
procedure TInstantDBX3Transaction.Start;
begin
- if FTransactionDesc.TransactionID = MAXLONG then
+ if FTransactionDesc.TransactionID = high(FTransactionDesc.TransactionID) then
FTransactionDesc.TransactionID := 1
else
FTransactionDesc.TransactionID := FTransactionDesc.TransactionID + 1;
- FTransactionDesc.IsolationLevel :=
- TransIsolationLevelMap[Database.TransIsolation];
+ FTransactionDesc.IsolationLevel := xilREADCOMMITTED;
Connector.Connection.StartTransaction(FTransactionDesc);
end;
{$ENDIF}
Modified: trunk/Source/Core/D7/IOCore.dpk
===================================================================
--- trunk/Source/Core/D7/IOCore.dpk 2009-08-18 20:52:36 UTC (rev 846)
+++ trunk/Source/Core/D7/IOCore.dpk 2009-08-19 05:55:45 UTC (rev 847)
@@ -58,6 +58,8 @@
InstantDBBuilderFormUnit in '..\InstantDBBuilderFormUnit.pas' {InstantDBBuilderForm},
InstantTypes in '..\InstantTypes.pas',
InstantBrokers in '..\InstantBrokers.pas',
- InstantMetadata in '..\InstantMetadata.pas';
+ InstantMetadata in '..\InstantMetadata.pas',
+ InstantValidation in '..\InstantValidation.pas',
+ InstantStandardValidators in '..\InstantStandardValidators.pas';
end.
Modified: trunk/Source/Core/InstantClasses.pas
===================================================================
--- trunk/Source/Core/InstantClasses.pas 2009-08-18 20:52:36 UTC (rev 846)
+++ trunk/Source/Core/InstantClasses.pas 2009-08-19 05:55:45 UTC (rev 847)
@@ -194,7 +194,7 @@
procedure WriteProperties(AObject: TPersistent);
{$IFNDEF UNICODE}
procedure WriteString(const Value: string);
- procedure WriteUTF8Str(const Value: string); inline;
+ procedure WriteUTF8Str(const Value: string); {$IFDEF D10+}inline;{$ENDIF}
{$ENDIF}
procedure WriteValue(Value: TValueType);
property Stream: TStream read FStream;
Modified: trunk/Source/Core/InstantRtti.pas
===================================================================
--- trunk/Source/Core/InstantRtti.pas 2009-08-18 20:52:36 UTC (rev 846)
+++ trunk/Source/Core/InstantRtti.pas 2009-08-19 05:55:45 UTC (rev 847)
@@ -78,7 +78,7 @@
procedure InstantSetProperty(AObject: TObject; PropPath: string; Value: Variant);
function InstantIsDefaultPropertyValue(Instance: TObject;
PropInfo: PPropInfo): Boolean;
-function InstantGetPropName(PropInfo: PPropInfo): string; {$IFNDEF D12+}inline;{$ENDIF}
+function InstantGetPropName(PropInfo: PPropInfo): string; {$IFDEF D10+}{$IFNDEF D12+}inline;{$ENDIF}{$ENDIF}
implementation
Modified: trunk/Source/Design/InstantModelExplorer.dfm
===================================================================
--- trunk/Source/Design/InstantModelExplorer.dfm 2009-08-18 20:52:36 UTC (rev 846)
+++ trunk/Source/Design/InstantModelExplorer.dfm 2009-08-19 05:55:45 UTC (rev 847)
@@ -42,9 +42,10 @@
Left = 0
Top = 0
Width = 410
- Height = 27
+ Height = 29
BorderWidth = 1
ButtonHeight = 23
+ Flat = True
Images = ActionImages
ParentShowHint = False
ShowHint = True
@@ -95,15 +96,12 @@
Align = alBottom
BevelOuter = bvNone
Constraints.MinHeight = 45
- Padding.Left = 3
- Padding.Right = 3
- Padding.Bottom = 3
TabOrder = 2
Visible = False
object AttributeCaptionPanel: TPanel
- Left = 3
+ Left = 0
Top = 0
- Width = 404
+ Width = 410
Height = 25
Align = alTop
BevelOuter = bvLowered
Modified: trunk/Source/Design/InstantModelImport.dfm
===================================================================
--- trunk/Source/Design/InstantModelImport.dfm 2009-08-18 20:52:36 UTC (rev 846)
+++ trunk/Source/Design/InstantModelImport.dfm 2009-08-19 05:55:45 UTC (rev 847)
@@ -1,9 +1,7 @@
inherited InstantModelImportForm: TInstantModelImportForm
+ Width = 424
+ Height = 154
Caption = 'Import Model'
- ClientHeight = 120
- ClientWidth = 416
- ExplicitWidth = 424
- ExplicitHeight = 154
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel [0]
@@ -23,11 +21,8 @@
inherited ButtonPanel: TPanel
Top = 79
Width = 416
- ExplicitTop = 79
- ExplicitWidth = 416
inherited ButtonBevel: TBevel
Width = 416
- ExplicitWidth = 416
end
object ImportButton: TButton
Left = 246
|
|
From: <na...@us...> - 2009-08-18 20:52:43
|
Revision: 846
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=846&view=rev
Author: nandod
Date: 2009-08-18 20:52:36 +0000 (Tue, 18 Aug 2009)
Log Message:
-----------
* DBX broker: added missing support for IsNull in boolean, currency, datetime attributes.
* DBX broker: fixed param assignment for Oracle.
Modified Paths:
--------------
trunk/Source/Brokers/DBX/InstantDBX.pas
trunk/Source/PackageGroups/D2009/CorePackages.groupproj
Modified: trunk/Source/Brokers/DBX/InstantDBX.pas
===================================================================
--- trunk/Source/Brokers/DBX/InstantDBX.pas 2009-08-18 08:09:33 UTC (rev 845)
+++ trunk/Source/Brokers/DBX/InstantDBX.pas 2009-08-18 20:52:36 UTC (rev 846)
@@ -192,6 +192,7 @@
end;
TInstantDBXMSSQLQuery = class(TInstantSQLQuery)
+ class function TranslatorClass: TInstantRelationalTranslatorClass; override;
end;
{ Oracle }
@@ -448,16 +449,27 @@
begin
case SourceParam.DataType of
ftBoolean:
- TargetParam.AsInteger := Integer(SourceParam.AsBoolean);
+ begin
+ if SourceParam.IsNull then
+ TargetParam.Clear
+ else
+ TargetParam.AsInteger := Integer(SourceParam.AsBoolean);
+ end;
ftDateTime:
begin
TargetParam.DataType := ftTimeStamp;
- TargetParam.Value := SourceParam.AsDateTime;
+ if SourceParam.IsNull then
+ TargetParam.Clear
+ else
+ TargetParam.Value := SourceParam.AsDateTime;
end;
ftCurrency:
begin
TargetParam.DataType := ftBCD;
- TargetParam.Value := SourceParam.AsCurrency;
+ if SourceParam.IsNull then
+ TargetParam.Clear
+ else
+ TargetParam.Value := SourceParam.AsCurrency;
end;
else
TargetParam.Assign(SourceParam);
@@ -721,19 +733,26 @@
EmbraceIndex(Metadata.Name)]);
end;
+{ TInstantDBXMSSQLQuery }
+
+class function TInstantDBXMSSQLQuery.TranslatorClass: TInstantRelationalTranslatorClass;
+begin
+ Result := TInstantDBXTranslator;
+end;
+
{ TInstantDBXOracleBroker }
procedure TInstantDBXOracleBroker.AssignParam(SourceParam, TargetParam: TParam);
begin
case SourceParam.DataType of
ftBoolean:
- TargetParam.AsString := IntToStr(Integer(SourceParam.AsBoolean));
+ TargetParam.AsInteger := Integer(SourceParam.AsBoolean);
ftInteger:
- TargetParam.AsString := IntToStr(SourceParam.AsInteger);
+ TargetParam.AsFloat := SourceParam.AsInteger;
ftCurrency:
- TargetParam.AsString := CurrToStr(SourceParam.AsCurrency);
+ TargetParam.AsCurrency := SourceParam.AsCurrency;
ftFloat:
- TargetParam.AsString := CurrToStr(SourceParam.AsFloat);
+ TargetParam.AsFloat := SourceParam.AsFloat;
else
inherited;
end;
Modified: trunk/Source/PackageGroups/D2009/CorePackages.groupproj
===================================================================
--- trunk/Source/PackageGroups/D2009/CorePackages.groupproj 2009-08-18 08:09:33 UTC (rev 845)
+++ trunk/Source/PackageGroups/D2009/CorePackages.groupproj 2009-08-18 20:52:36 UTC (rev 846)
@@ -9,9 +9,21 @@
<Projects Include="..\..\Design\D2009\DclIOCore.dproj">
<Dependencies/>
</Projects>
+ <Projects Include="..\..\Catalogs\IBFb\D2009\IOIBFbCatalog.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Catalogs\MySQL\D2009\IOMySQLCatalog.dproj">
+ <Dependencies/>
+ </Projects>
<Projects Include="..\..\Brokers\BDE\D2009\IOBDE.dproj">
<Dependencies/>
</Projects>
+ <Projects Include="..\..\Brokers\IBX\D2009\IOIBX.dproj">
+ <Dependencies/>
+ </Projects>
<Projects Include="..\..\Brokers\BDE\D2009\DclIOBDE.dproj">
<Dependencies/>
</Projects>
@@ -21,9 +33,15 @@
<Projects Include="..\..\Brokers\XML\D2009\DclIOXML.dproj">
<Dependencies/>
</Projects>
- <Projects Include="..\..\..\Tests\TestIO_D2009.dproj">
+ <Projects Include="..\..\Brokers\DBX\D2009\IODBX.dproj">
<Dependencies/>
</Projects>
+ <Projects Include="..\..\Brokers\DBX\D2009\DclIODBX.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="..\..\Brokers\IBX\D2009\DclIOIBX.dproj">
+ <Dependencies/>
+ </Projects>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Default.Personality.12</Borland.Personality>
@@ -50,6 +68,33 @@
<Target Name="DclIOCore:Make">
<MSBuild Targets="Make" Projects="..\..\Design\D2009\DclIOCore.dproj"/>
</Target>
+ <Target Name="IOIBFbCatalog">
+ <MSBuild Projects="..\..\Catalogs\IBFb\D2009\IOIBFbCatalog.dproj"/>
+ </Target>
+ <Target Name="IOIBFbCatalog:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Catalogs\IBFb\D2009\IOIBFbCatalog.dproj"/>
+ </Target>
+ <Target Name="IOIBFbCatalog:Make">
+ <MSBuild Targets="Make" Projects="..\..\Catalogs\IBFb\D2009\IOIBFbCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMSSqlCatalog">
+ <MSBuild Projects="..\..\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMSSqlCatalog:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMSSqlCatalog:Make">
+ <MSBuild Targets="Make" Projects="..\..\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMySQLCatalog">
+ <MSBuild Projects="..\..\Catalogs\MySQL\D2009\IOMySQLCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMySQLCatalog:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Catalogs\MySQL\D2009\IOMySQLCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMySQLCatalog:Make">
+ <MSBuild Targets="Make" Projects="..\..\Catalogs\MySQL\D2009\IOMySQLCatalog.dproj"/>
+ </Target>
<Target Name="IOBDE">
<MSBuild Projects="..\..\Brokers\BDE\D2009\IOBDE.dproj"/>
</Target>
@@ -59,6 +104,15 @@
<Target Name="IOBDE:Make">
<MSBuild Targets="Make" Projects="..\..\Brokers\BDE\D2009\IOBDE.dproj"/>
</Target>
+ <Target Name="IOIBX">
+ <MSBuild Projects="..\..\Brokers\IBX\D2009\IOIBX.dproj"/>
+ </Target>
+ <Target Name="IOIBX:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\IBX\D2009\IOIBX.dproj"/>
+ </Target>
+ <Target Name="IOIBX:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\IBX\D2009\IOIBX.dproj"/>
+ </Target>
<Target Name="DclIOBDE">
<MSBuild Projects="..\..\Brokers\BDE\D2009\DclIOBDE.dproj"/>
</Target>
@@ -86,23 +140,41 @@
<Target Name="DclIOXML:Make">
<MSBuild Targets="Make" Projects="..\..\Brokers\XML\D2009\DclIOXML.dproj"/>
</Target>
- <Target Name="TestIO_D2009">
- <MSBuild Projects="..\..\..\Tests\TestIO_D2009.dproj"/>
+ <Target Name="IODBX">
+ <MSBuild Projects="..\..\Brokers\DBX\D2009\IODBX.dproj"/>
</Target>
- <Target Name="TestIO_D2009:Clean">
- <MSBuild Targets="Clean" Projects="..\..\..\Tests\TestIO_D2009.dproj"/>
+ <Target Name="IODBX:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\DBX\D2009\IODBX.dproj"/>
</Target>
- <Target Name="TestIO_D2009:Make">
- <MSBuild Targets="Make" Projects="..\..\..\Tests\TestIO_D2009.dproj"/>
+ <Target Name="IODBX:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\DBX\D2009\IODBX.dproj"/>
</Target>
+ <Target Name="DclIODBX">
+ <MSBuild Projects="..\..\Brokers\DBX\D2009\DclIODBX.dproj"/>
+ </Target>
+ <Target Name="DclIODBX:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\DBX\D2009\DclIODBX.dproj"/>
+ </Target>
+ <Target Name="DclIODBX:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\DBX\D2009\DclIODBX.dproj"/>
+ </Target>
+ <Target Name="DclIOIBX">
+ <MSBuild Projects="..\..\Brokers\IBX\D2009\DclIOIBX.dproj"/>
+ </Target>
+ <Target Name="DclIOIBX:Clean">
+ <MSBuild Targets="Clean" Projects="..\..\Brokers\IBX\D2009\DclIOIBX.dproj"/>
+ </Target>
+ <Target Name="DclIOIBX:Make">
+ <MSBuild Targets="Make" Projects="..\..\Brokers\IBX\D2009\DclIOIBX.dproj"/>
+ </Target>
<Target Name="Build">
- <CallTarget Targets="IOCore;DclIOCore;IOBDE;DclIOBDE;IOXML;DclIOXML;TestIO_D2009"/>
+ <CallTarget Targets="IOCore;DclIOCore;IOIBFbCatalog;IOMSSqlCatalog;IOMySQLCatalog;IOBDE;IOIBX;DclIOBDE;IOXML;DclIOXML;IODBX;DclIODBX;DclIOIBX"/>
</Target>
<Target Name="Clean">
- <CallTarget Targets="IOCore:Clean;DclIOCore:Clean;IOBDE:Clean;DclIOBDE:Clean;IOXML:Clean;DclIOXML:Clean;TestIO_D2009:Clean"/>
+ <CallTarget Targets="IOCore:Clean;DclIOCore:Clean;IOIBFbCatalog:Clean;IOMSSqlCatalog:Clean;IOMySQLCatalog:Clean;IOBDE:Clean;IOIBX:Clean;DclIOBDE:Clean;IOXML:Clean;DclIOXML:Clean;IODBX:Clean;DclIODBX:Clean;DclIOIBX:Clean"/>
</Target>
<Target Name="Make">
- <CallTarget Targets="IOCore:Make;DclIOCore:Make;IOBDE:Make;DclIOBDE:Make;IOXML:Make;DclIOXML:Make;TestIO_D2009:Make"/>
+ <CallTarget Targets="IOCore:Make;DclIOCore:Make;IOIBFbCatalog:Make;IOMSSqlCatalog:Make;IOMySQLCatalog:Make;IOBDE:Make;IOIBX:Make;DclIOBDE:Make;IOXML:Make;DclIOXML:Make;IODBX:Make;DclIODBX:Make;DclIOIBX:Make"/>
</Target>
<Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
</Project>
|
|
From: <dav...@us...> - 2009-08-18 08:09:44
|
Revision: 845
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=845&view=rev
Author: davidvtaylor
Date: 2009-08-18 08:09:33 +0000 (Tue, 18 Aug 2009)
Log Message:
-----------
AnyDAC broker enhancements
- Add support for UseNull feature
- Finalize Firebird database creation logic (tested embedded DB only)
- Add support for setting PageSize for Firebird database creation
- Changed default Firebird CharacterSet from ISO8859_1 to UTF8
Modified Paths:
--------------
trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas
Modified: trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas
===================================================================
--- trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas 2009-08-18 08:03:27 UTC (rev 844)
+++ trunk/Source/Brokers/AnyDAC/InstantAnyDAC.pas 2009-08-18 08:09:33 UTC (rev 845)
@@ -35,7 +35,7 @@
{$I '..\..\InstantDefines.inc'}
{$ENDIF}
-// Supported databases (only MSSQL has been tested as of 3/21/2009)
+// Supported databases (only MSSQL and Firebird have been tested as of 8/18/2009)
{$DEFINE SYBASE_SUPPORT}
{$DEFINE MSSQL_SUPPORT}
@@ -50,8 +50,8 @@
uses
Classes, Db, InstantPersistence, InstantCommand, InstantDBBuild,
InstantBrokers, InstantMetadata, InstantTypes, uADCompClient,
- uADStanOption, uADStanParam, uADStanIntf, uADStanConst
- {$IFDEF D10+}, DBCommonTypes{$ENDIF};
+ uADStanOption, uADStanParam, uADStanIntf, uADStanConst,
+ {$IFDEF D10+}DBCommonTypes{$ENDIF};
type
TInstantAnyDACConnectionDef = class(TInstantRelationalConnectionDef)
@@ -307,6 +307,9 @@
InstantConsts, InstantClasses, InstantAnyDACConnectionDefEdit,
InstantAnyDACCatalog, InstantUtils;
+resourcestring
+ SInvalidDatabasePageSize = 'Invalid database PageSize value: "%s"';
+
{$IFDEF SQLITE_SUPPORT}
const
STmpTableSuffix = '_IOTmp_';
@@ -698,6 +701,12 @@
else
TargetParam.Assign(SourceParam);
end;
+
+ if (SourceParam.IsNull) then
+ begin
+ TargetParam.Clear;
+ TargetParam.Bound := true;
+ end;
end;
function TInstantAnyDACBroker.CreateCatalog(const AScheme: TInstantScheme): TInstantCatalog;
@@ -936,8 +945,11 @@
var
OldProperties : string;
CharacterSet : string;
+ PageSizeStr : string;
+ PageSize : integer;
+const
+ DEFAULT_DB_PAGESIZE = 8192;
begin
- // TODO Quick first pass at using built-in AnyDAC database creation logic (not tested)
// do not call inherited
with Connector do
begin
@@ -945,13 +957,29 @@
try
CharacterSet := trim(Connection.Params.Values['CharacterSet']);
+ PageSizeStr := trim(Connection.Params.Values['PageSize']);
if (CharacterSet = '') then
- CharacterSet := 'ISO8859_1';
+ CharacterSet := 'UTF8';
+ if (PageSizeStr <> '') then
+ begin
+ PageSize := StrToIntDef(PageSizeStr,-1);
+ if (PageSize <> 1024) and // Deprecated for FB 2.1+
+ (PageSize <> 2048) and // Deprecated for FB 2.1+
+ (PageSize <> 4096) and
+ (PageSize <> 8192) and
+ (PageSize <> 16384) then // Available FB 2.0 and later
+ raise EInstantError.CreateFmt(SInvalidDatabasePageSize, [PageSizeStr]);
+ end else
+ begin
+ PageSize := DEFAULT_DB_PAGESIZE;
+ end;
+
Connection.Params.Values['CharacterSet'] := CharacterSet;
Connection.Params.Values['CreateDatabase'] := 'Yes';
- Connection.Params.Values['PageSize'] := '4096';
+ Connection.Params.Values['SQLDialect'] := '3';
+ Connection.Params.Values['PageSize'] := IntToStr(PageSize);
Connect;
Disconnect;
finally
|
|
From: <dav...@us...> - 2009-08-18 08:03:38
|
Revision: 844
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=844&view=rev
Author: davidvtaylor
Date: 2009-08-18 08:03:27 +0000 (Tue, 18 Aug 2009)
Log Message:
-----------
Fix for bug in new UseNull attribute option. UseNull setting was not being saved to the Metadata
Modified Paths:
--------------
trunk/Source/Core/InstantMetadata.pas
Modified: trunk/Source/Core/InstantMetadata.pas
===================================================================
--- trunk/Source/Core/InstantMetadata.pas 2009-08-18 05:27:40 UTC (rev 843)
+++ trunk/Source/Core/InstantMetadata.pas 2009-08-18 08:03:27 UTC (rev 844)
@@ -1688,6 +1688,7 @@
Self.FEditMask := FEditMask;
Self.FIsIndexed := FIsIndexed;
Self.FIsRequired := FIsRequired;
+ Self.FUseNull := FUseNull;
Self.FObjectClassName := FObjectClassName;
Self.FSize := FSize;
Self.FStorageName := FStorageName;
|