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-06 20:58:34
|
Revision: 818
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=818&view=rev
Author: nandod
Date: 2009-08-06 20:58:27 +0000 (Thu, 06 Aug 2009)
Log Message:
-----------
* D2009: Fixed problem with I/O of memo fields in InstantPresentation. TInstantBlob and TInstantMemo are now explicitly Ansi. TInstantWideMemo (and TInstantWideString) should be added for handling of unicode text.
+ PrimerExternal_D2009.dproj.
+ A test for TInstantCodeModel.
Modified Paths:
--------------
trunk/Source/Core/InstantPersistence.pas
trunk/Tests/TestIO.dpr
trunk/Tests/TestIO.dproj
trunk/Tests/TestIO_D2009.dpr
trunk/Tests/TestIO_D2009.dproj
Added Paths:
-----------
trunk/Demos/PrimerCross/PrimerExternal_D2009.dpr
trunk/Demos/PrimerCross/PrimerExternal_D2009.dproj
trunk/Demos/PrimerCross/PrimerExternal_D2009.mdr
trunk/Demos/PrimerCross/PrimerExternal_D2009.res
trunk/Tests/TestInstantCode.pas
Added: trunk/Demos/PrimerCross/PrimerExternal_D2009.dpr
===================================================================
--- trunk/Demos/PrimerCross/PrimerExternal_D2009.dpr (rev 0)
+++ trunk/Demos/PrimerCross/PrimerExternal_D2009.dpr 2009-08-06 20:58:27 UTC (rev 818)
@@ -0,0 +1,79 @@
+(*
+ * InstantObjects
+ * Primer Demo - with "external storage" of Part and Parts
+ * Model.pas unit is located in ModelExternal folder
+ *)
+
+(* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is: Seleqt InstantObjects
+ *
+ * The Initial Developer of the Original Code is: Seleqt
+ *
+ * Portions created by the Initial Developer are Copyright (C) 2001-2003
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Carlo Barazzetta, Nando Dessena
+ *
+ * ***** END LICENSE BLOCK ***** *)
+
+program PrimerExternal_D2009;
+
+{$IFDEF LINUX}
+{$I '../../Source/InstantDefines.inc'}
+{$ELSE}
+{$I '..\..\Source\InstantDefines.inc'}
+{$ENDIF}
+
+
+uses
+ Forms,
+ Main in 'Main.pas' {MainForm},
+ Model in 'ModelExternal\Model.pas',
+ ContactView in 'ContactView.pas' {ContactViewForm: TFrame},
+ BasicView in 'BasicView.pas' {BasicViewForm: TFrame},
+ BasicEdit in 'BasicEdit.pas' {BasicEditForm},
+ ContactEdit in 'ContactEdit.pas' {ContactEditForm},
+ PersonEdit in 'PersonEdit.pas' {PersonEditForm},
+ CompanyEdit in 'CompanyEdit.pas' {CompanyEditForm},
+ DemoData in 'DemoData.pas',
+ ContactFilterEdit in 'ContactFilterEdit.pas' {ContactFilterEditForm},
+ MainData in 'MainData.pas' {MainDataModule: TDataModule},
+ ContactBrowse in 'ContactBrowse.pas' {ContactBrowseForm},
+ CompanyBrowse in 'CompanyBrowse.pas' {CompanyBrowseForm},
+ PerformanceView in 'PerformanceView.pas' {PerformanceViewForm: TFrame},
+ Welcome in 'Welcome.pas' {WelcomeForm},
+ PersonBrowse in 'PersonBrowse.pas' {PersonBrowseForm},
+ BasicBrowse in 'BasicBrowse.pas' {BasicBrowseForm},
+ CountryBrowse in 'CountryBrowse.pas' {CountryBrowseForm},
+ DemoDataRequest in 'DemoDataRequest.pas' {DemoDataRequestForm},
+ ContactSort in 'ContactSort.pas' {ContactSortForm},
+ CategoryBrowse in 'CategoryBrowse.pas' {CategoryBrowseForm},
+ HelpView in 'HelpView.pas' {HelpViewForm: TFrame},
+ RandomData in 'RandomData.pas',
+ Stopwatch in 'Stopwatch.pas',
+ Utility in 'Utility.pas',
+ QueryView in 'QueryView.pas' {QueryViewForm: TFrame};
+
+{$R *.res}
+{$R *.mdr} {Model}
+
+begin
+ Application.Initialize;
+ Application.Title := 'InstantObjects Primer Demo with "external storage" of Part and Parts';
+ Application.CreateForm(TMainForm, MainForm);
+ Application.CreateForm(TMainDataModule, MainDataModule);
+ Application.Run;
+end.
Property changes on: trunk/Demos/PrimerCross/PrimerExternal_D2009.dpr
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Demos/PrimerCross/PrimerExternal_D2009.dproj
===================================================================
--- trunk/Demos/PrimerCross/PrimerExternal_D2009.dproj (rev 0)
+++ trunk/Demos/PrimerCross/PrimerExternal_D2009.dproj 2009-08-06 20:58:27 UTC (rev 818)
@@ -0,0 +1,187 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{0d607f9b-9c2b-445d-84fd-7072bc53deff}</ProjectGuid>
+ <MainSource>PrimerExternal_D2009.dpr</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>PrimerExternal.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_DependencyCheckOutputName>PrimerExternal_D2009.exe</DCC_DependencyCheckOutputName>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;IO_STATEMENT_LOGGING;$(DCC_Define)</DCC_Define>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ResourcePath)</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ObjPath)</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_IncludePath)</DCC_IncludePath>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_DebugDCUs>true</DCC_DebugDCUs>
+ <Version>7.0</Version>
+ <DCC_Define>DEBUG;IO_STATEMENT_LOGGING;$(DCC_Define)</DCC_Define>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ResourcePath)</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ObjPath)</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_IncludePath)</DCC_IncludePath>
+ </PropertyGroup>
+ <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"/>
+ </Compiler>
+ <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">2</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">1030</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">InstantObjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">Primer Demo</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright">MPL public license</VersionInfoKeys>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName"/>
+ <VersionInfoKeys Name="ProductVersion">2.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">PrimerExternal_D2009.dpr</Source>
+ </Source>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <ItemGroup>
+ <DelphiCompile Include="PrimerExternal_D2009.dpr">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="Main.pas">
+ <Form>MainForm</Form>
+ </DCCReference>
+ <DCCReference Include="ModelExternal\Model.pas"/>
+ <DCCReference Include="ContactView.pas">
+ <Form>ContactViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="BasicView.pas">
+ <Form>BasicViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="BasicEdit.pas">
+ <Form>BasicEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactEdit.pas">
+ <Form>ContactEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="PersonEdit.pas">
+ <Form>PersonEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="CompanyEdit.pas">
+ <Form>CompanyEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="DemoData.pas"/>
+ <DCCReference Include="ContactFilterEdit.pas">
+ <Form>ContactFilterEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="MainData.pas">
+ <Form>MainDataModule</Form>
+ <DesignClass>TDataModule</DesignClass>
+ </DCCReference>
+ <DCCReference Include="ContactBrowse.pas">
+ <Form>ContactBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="CompanyBrowse.pas">
+ <Form>CompanyBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="PerformanceView.pas">
+ <Form>PerformanceViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="Welcome.pas">
+ <Form>WelcomeForm</Form>
+ </DCCReference>
+ <DCCReference Include="PersonBrowse.pas">
+ <Form>PersonBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="BasicBrowse.pas">
+ <Form>BasicBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="CountryBrowse.pas">
+ <Form>CountryBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="DemoDataRequest.pas">
+ <Form>DemoDataRequestForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactSort.pas">
+ <Form>ContactSortForm</Form>
+ </DCCReference>
+ <DCCReference Include="CategoryBrowse.pas">
+ <Form>CategoryBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="HelpView.pas">
+ <Form>HelpViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="RandomData.pas"/>
+ <DCCReference Include="Stopwatch.pas"/>
+ <DCCReference Include="Utility.pas"/>
+ <DCCReference Include="QueryView.pas">
+ <Form>QueryViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </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')"/>
+ </Project>
Property changes on: trunk/Demos/PrimerCross/PrimerExternal_D2009.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Demos/PrimerCross/PrimerExternal_D2009.mdr
===================================================================
(Binary files differ)
Property changes on: trunk/Demos/PrimerCross/PrimerExternal_D2009.mdr
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Demos/PrimerCross/PrimerExternal_D2009.res
===================================================================
(Binary files differ)
Property changes on: trunk/Demos/PrimerCross/PrimerExternal_D2009.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/Source/Core/InstantPersistence.pas
===================================================================
--- trunk/Source/Core/InstantPersistence.pas 2009-08-06 17:14:40 UTC (rev 817)
+++ trunk/Source/Core/InstantPersistence.pas 2009-08-06 20:58:27 UTC (rev 818)
@@ -444,10 +444,10 @@
FStream: TMemoryStream;
function GetSize: Integer;
function GetStream: TMemoryStream;
- function GetValue: string;
- procedure SetValue(const AValue: string);
property Stream: TMemoryStream read GetStream;
protected
+ function GetValue: AnsiString; virtual;
+ procedure SetValue(const AValue: AnsiString); virtual;
class function AttributeType: TInstantAttributeType; override;
function GetAsString: string; override;
function GetAsVariant: Variant; override;
@@ -472,7 +472,7 @@
function WriteBuffer(const Buffer; Position, Count: Integer): Integer;
property Size: Integer read GetSize;
published
- property Value: string read GetValue write SetValue;
+ property Value: AnsiString read GetValue write SetValue;
end;
TInstantMemo = class(TInstantBlob)
@@ -3485,13 +3485,14 @@
Result := FStream;
end;
-function TInstantBlob.GetValue: string;
+function TInstantBlob.GetValue: AnsiString;
begin
if Size > 0 then
begin
- SetLength(Result, Size div SizeOf(Char));
+ SetLength(Result, Size div SizeOf(AnsiChar));
Read(Result[1], 0, Size);
- end else
+ end
+ else
Result := '';
end;
@@ -3567,17 +3568,18 @@
end;
end;
-procedure TInstantBlob.SetValue(const AValue: string);
+procedure TInstantBlob.SetValue(const AValue: AnsiString);
var
L: Integer;
begin
- L := Length(AValue) * SizeOf(Char);
+ L := Length(AValue) * SizeOf(AnsiChar);
if L > 0 then
begin
Stream.Clear;
WriteBuffer(AValue[1], 0, L);
Stream.Size := L;
- end else
+ end
+ else
Clear;
end;
Modified: trunk/Tests/TestIO.dpr
===================================================================
--- trunk/Tests/TestIO.dpr 2009-08-06 17:14:40 UTC (rev 817)
+++ trunk/Tests/TestIO.dpr 2009-08-06 20:58:27 UTC (rev 818)
@@ -58,7 +58,8 @@
TestInstantCircularReferences in 'TestInstantCircularReferences.pas',
TestInstantObjectReference in 'TestInstantObjectReference.pas',
MinimalModel in 'MinimalModel.pas',
- TestXMLBroker in 'TestXMLBroker.pas';
+ TestXMLBroker in 'TestXMLBroker.pas',
+ TestInstantCode in 'TestInstantCode.pas';
{$R *.res}
{$R *.mdr} {TestModel}
Modified: trunk/Tests/TestIO.dproj
===================================================================
--- trunk/Tests/TestIO.dproj 2009-08-06 17:14:40 UTC (rev 817)
+++ trunk/Tests/TestIO.dproj 2009-08-06 20:58:27 UTC (rev 818)
@@ -55,6 +55,7 @@
<DCCReference Include="TestInstantCircularReferences.pas" />
<DCCReference Include="TestInstantClasses.pas" />
<DCCReference Include="TestInstantClassMetadata.pas" />
+ <DCCReference Include="TestInstantCode.pas" />
<DCCReference Include="TestInstantComplex.pas" />
<DCCReference Include="TestInstantCurrency.pas" />
<DCCReference Include="TestInstantDate.pas" />
Modified: trunk/Tests/TestIO_D2009.dpr
===================================================================
--- trunk/Tests/TestIO_D2009.dpr 2009-08-06 17:14:40 UTC (rev 817)
+++ trunk/Tests/TestIO_D2009.dpr 2009-08-06 20:58:27 UTC (rev 818)
@@ -52,7 +52,8 @@
TestInstantCircularReferences in 'TestInstantCircularReferences.pas',
TestInstantObjectReference in 'TestInstantObjectReference.pas',
MinimalModel in 'MinimalModel.pas',
- TestXMLBroker in 'TestXMLBroker.pas';
+ TestXMLBroker in 'TestXMLBroker.pas',
+ TestInstantCode in 'TestInstantCode.pas';
{$R *.res}
{$R *.mdr} {TestModel}
Modified: trunk/Tests/TestIO_D2009.dproj
===================================================================
--- trunk/Tests/TestIO_D2009.dproj 2009-08-06 17:14:40 UTC (rev 817)
+++ trunk/Tests/TestIO_D2009.dproj 2009-08-06 20:58:27 UTC (rev 818)
@@ -93,6 +93,7 @@
<DCCReference Include="TestInstantObjectReference.pas"/>
<DCCReference Include="MinimalModel.pas"/>
<DCCReference Include="TestXMLBroker.pas"/>
+ <DCCReference Include="TestInstantCode.pas"/>
<BuildConfiguration Include="Base">
<Key>Base</Key>
</BuildConfiguration>
Added: trunk/Tests/TestInstantCode.pas
===================================================================
--- trunk/Tests/TestInstantCode.pas (rev 0)
+++ trunk/Tests/TestInstantCode.pas 2009-08-06 20:58:27 UTC (rev 818)
@@ -0,0 +1,128 @@
+(*
+ * InstantObjects Test Suite
+ * TestMockBroker
+ *)
+
+(* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is: InstantObjects Test Suite/TestMockBroker
+ *
+ * The Initial Developer of the Original Code is: Uberto Barbini
+ *
+ * Portions created by the Initial Developer are Copyright (C) 2005
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Nando Dessena
+ *
+ * ***** END LICENSE BLOCK ***** *)
+
+unit TestInstantCode;
+
+{$IFDEF LINUX}
+{$I '../InstantDefines.inc'}
+{$ELSE}
+{$I '..\InstantDefines.inc'}
+{$ENDIF}
+
+interface
+
+uses
+ InstantCode, fpcunit, InstantMock, TestModel;
+
+type
+ TTestInstantCodeModel = class(TTestCase)
+ published
+ {
+ This test uses TInstantCodeModel to: read the actual TestModel.pas unit
+ from disk; parse it; rename class TCategory to TCategory2, and checks
+ that the rename succeeded. The modified source code is not saved back to
+ disk.
+ }
+ procedure TestRenameModelClass;
+ end;
+
+implementation
+
+uses
+ SysUtils, Classes, testregistry;
+
+{ TTestInstantCodeModel }
+
+procedure TTestInstantCodeModel.TestRenameModelClass;
+var
+ LCodeModel: TInstantCodeModel;
+ LFile: TStream;
+ LSource: TStringStream;
+ LClass: TInstantCodeClass;
+ LChangeInfo: TInstantCodeClassChangeInfo;
+ LSourceCode: string;
+ LChangedAttrs: TStringList;
+ LNewAttrs: TList;
+begin
+ LCodeModel := TInstantCodeModel.Create;
+ try
+ LFile := TFileStream.Create(ExtractFilePath(ParamStr(0)) + 'TestModel.pas', fmOpenRead);
+ try
+ LSource := TStringStream.Create('');
+ try
+ LSource.CopyFrom(LFile, LFile.Size);
+ LCodeModel.LoadModule(LSource.DataString);
+
+ AssertNotNull(LCodeModel.FindModule('TestModel'));
+ AssertNotNull(LCodeModel.FindClass('TCategory'));
+
+ LClass := LCodeModel.FindClass('TCategory');
+
+ LChangedAttrs := TStringList.Create;
+ try
+ LNewAttrs := TList.Create;
+ try
+ LClass.Name := 'TCategory2';
+ LChangeInfo := TInstantCodeClassChangeInfo.Create(LClass, ctEdit,
+ 'TCategory', LChangedAttrs, LNewAttrs);
+ try
+ LSourceCode := LSource.DataString;
+ LClass.ApplyToSource(LSourceCode, LChangeInfo);
+
+ LCodeModel.Clear;
+ LCodeModel.LoadModule(LSourceCode);
+
+ AssertNotNull('Renamed class not found', LCodeModel.FindClass('TCategory2'));
+ AssertNull('Old class is still there', LCodeModel.FindClass('TCategory'));
+ finally
+ LChangeInfo.Free;
+ end;
+ finally
+ LNewAttrs.Free;
+ end;
+ finally
+ LChangedAttrs.Free;
+ end;
+ finally
+ LSource.Free;
+ end;
+ finally
+ LFile.Free;
+ end;
+ finally
+ LCodeModel.Free;
+ end;
+end;
+
+initialization
+{$IFNDEF CURR_TESTS}
+ RegisterTests([TTestInstantCodeModel]);
+{$ENDIF}
+end.
Property changes on: trunk/Tests/TestInstantCode.pas
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
|
|
From: <na...@us...> - 2009-08-06 17:14:48
|
Revision: 817
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=817&view=rev
Author: nandod
Date: 2009-08-06 17:14:40 +0000 (Thu, 06 Aug 2009)
Log Message:
-----------
* Allow navigational brokers in D2009 to read embedded attributes written by previous versions (ansi-only).
* Damaged Primer.dproj for D2007 restored.
Modified Paths:
--------------
trunk/Demos/PrimerCross/Primer.dproj
trunk/Demos/PrimerCross/Primer.mdr
trunk/Source/Core/InstantBrokers.pas
trunk/Source/Core/InstantClasses.pas
trunk/Source/Core/InstantConsts.pas
trunk/Source/Core/InstantPersistence.pas
Modified: trunk/Demos/PrimerCross/Primer.dproj
===================================================================
--- trunk/Demos/PrimerCross/Primer.dproj 2009-08-06 15:27:10 UTC (rev 816)
+++ trunk/Demos/PrimerCross/Primer.dproj 2009-08-06 17:14:40 UTC (rev 817)
@@ -1,183 +1,151 @@
- <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <ProjectGuid>{d197a2d4-31b9-43b1-8070-3f804d86e53f}</ProjectGuid>
- <MainSource>Primer.dpr</MainSource>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
- <DCC_DependencyCheckOutputName>Primer.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_DependencyCheckOutputName>Primer.exe</DCC_DependencyCheckOutputName>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Cfg_1)'!=''">
- <Version>7.0</Version>
- <DCC_DebugInformation>False</DCC_DebugInformation>
- <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
- <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
- <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
- <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
- <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ResourcePath)</DCC_ResourcePath>
- <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ObjPath)</DCC_ObjPath>
- <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_IncludePath)</DCC_IncludePath>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Cfg_2)'!=''">
- <Version>7.0</Version>
- <DCC_Define>DEBUG;IO_STATEMENT_LOGGING;$(DCC_Define)</DCC_Define>
- <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
- <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ResourcePath)</DCC_ResourcePath>
- <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ObjPath)</DCC_ObjPath>
- <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_IncludePath)</DCC_IncludePath>
- </PropertyGroup>
- <ProjectExtensions>
- <Borland.Personality>Delphi.Personality.12</Borland.Personality>
- <Borland.ProjectType>VCLApplication</Borland.ProjectType>
- <BorlandProject>
- <Delphi.Personality>
- <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">2</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">1030</VersionInfo>
- <VersionInfo Name="CodePage">1252</VersionInfo>
- </VersionInfo>
- <VersionInfoKeys>
- <VersionInfoKeys Name="CompanyName">InstantObjects.org</VersionInfoKeys>
- <VersionInfoKeys Name="FileDescription">Primer Demo</VersionInfoKeys>
- <VersionInfoKeys Name="FileVersion">2.0.0.0</VersionInfoKeys>
- <VersionInfoKeys Name="InternalName"/>
- <VersionInfoKeys Name="LegalCopyright">MPL public license</VersionInfoKeys>
- <VersionInfoKeys Name="LegalTrademarks"/>
- <VersionInfoKeys Name="OriginalFilename"/>
- <VersionInfoKeys Name="ProductName"/>
- <VersionInfoKeys Name="ProductVersion">2.0</VersionInfoKeys>
- <VersionInfoKeys Name="Comments"/>
- </VersionInfoKeys>
- <Source>
- <Source Name="MainSource">Primer.dpr</Source>
- </Source>
- </Delphi.Personality>
- <ModelSupport>False</ModelSupport>
- </BorlandProject>
- <ProjectFileVersion>12</ProjectFileVersion>
- </ProjectExtensions>
- <ItemGroup>
- <DelphiCompile Include="Primer.dpr">
- <MainSource>MainSource</MainSource>
- </DelphiCompile>
- <DCCReference Include="Main.pas">
- <Form>MainForm</Form>
- </DCCReference>
- <DCCReference Include="Model\Model.pas"/>
- <DCCReference Include="ContactView.pas">
- <Form>ContactViewForm</Form>
- <DesignClass>TFrame</DesignClass>
- </DCCReference>
- <DCCReference Include="BasicView.pas">
- <Form>BasicViewForm</Form>
- <DesignClass>TFrame</DesignClass>
- </DCCReference>
- <DCCReference Include="BasicEdit.pas">
- <Form>BasicEditForm</Form>
- </DCCReference>
- <DCCReference Include="ContactEdit.pas">
- <Form>ContactEditForm</Form>
- </DCCReference>
- <DCCReference Include="PersonEdit.pas">
- <Form>PersonEditForm</Form>
- </DCCReference>
- <DCCReference Include="CompanyEdit.pas">
- <Form>CompanyEditForm</Form>
- </DCCReference>
- <DCCReference Include="DemoData.pas"/>
- <DCCReference Include="ContactFilterEdit.pas">
- <Form>ContactFilterEditForm</Form>
- </DCCReference>
- <DCCReference Include="MainData.pas">
- <Form>MainDataModule</Form>
- <DesignClass>TDataModule</DesignClass>
- </DCCReference>
- <DCCReference Include="ContactBrowse.pas">
- <Form>ContactBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="CompanyBrowse.pas">
- <Form>CompanyBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="PerformanceView.pas">
- <Form>PerformanceViewForm</Form>
- <DesignClass>TFrame</DesignClass>
- </DCCReference>
- <DCCReference Include="Welcome.pas">
- <Form>WelcomeForm</Form>
- </DCCReference>
- <DCCReference Include="PersonBrowse.pas">
- <Form>PersonBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="BasicBrowse.pas">
- <Form>BasicBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="CountryBrowse.pas">
- <Form>CountryBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="DemoDataRequest.pas">
- <Form>DemoDataRequestForm</Form>
- </DCCReference>
- <DCCReference Include="ContactSort.pas">
- <Form>ContactSortForm</Form>
- </DCCReference>
- <DCCReference Include="CategoryBrowse.pas">
- <Form>CategoryBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="HelpView.pas">
- <Form>HelpViewForm</Form>
- <DesignClass>TFrame</DesignClass>
- </DCCReference>
- <DCCReference Include="QueryView.pas">
- <Form>QueryViewForm</Form>
- <DesignClass>TFrame</DesignClass>
- </DCCReference>
- <DCCReference Include="RandomData.pas"/>
- <DCCReference Include="Stopwatch.pas"/>
- <DCCReference Include="Utility.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')"/>
- </Project>
+<?xml version="1.0" encoding="utf-8"?>
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{6ddf3705-1ec1-4b67-8127-f887a4deb03e}</ProjectGuid>
+ <MainSource>Primer.dpr</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>Primer.exe</DCC_DependencyCheckOutputName>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;IO_STATEMENT_LOGGING</DCC_Define>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_IncludePath>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_Define>DEBUG;IO_STATEMENT_LOGGING</DCC_Define>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_IncludePath>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality</Borland.Personality>
+ <Borland.ProjectType>VCLApplication</Borland.ProjectType>
+ <BorlandProject>
+<BorlandProject> <Delphi.Personality> <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">2</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">1030</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">InstantObjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">Primer Demo</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"></VersionInfoKeys>
+ <VersionInfoKeys Name="LegalCopyright">MPL public license</VersionInfoKeys>
+ <VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
+ <VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
+ <VersionInfoKeys Name="ProductName"></VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"></VersionInfoKeys>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">Primer.dpr</Source>
+ </Source>
+ </Delphi.Personality> </BorlandProject></BorlandProject>
+ </ProjectExtensions>
+ <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
+ <ItemGroup>
+ <DelphiCompile Include="Primer.dpr">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="BasicBrowse.pas">
+ <Form>BasicBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="BasicEdit.pas">
+ <Form>BasicEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="BasicView.pas">
+ <Form>BasicViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="CategoryBrowse.pas">
+ <Form>CategoryBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="CompanyBrowse.pas">
+ <Form>CompanyBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="CompanyEdit.pas">
+ <Form>CompanyEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactBrowse.pas">
+ <Form>ContactBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactEdit.pas">
+ <Form>ContactEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactFilterEdit.pas">
+ <Form>ContactFilterEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactSort.pas">
+ <Form>ContactSortForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactView.pas">
+ <Form>ContactViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="CountryBrowse.pas">
+ <Form>CountryBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="DemoData.pas" />
+ <DCCReference Include="DemoDataRequest.pas">
+ <Form>DemoDataRequestForm</Form>
+ </DCCReference>
+ <DCCReference Include="HelpView.pas">
+ <Form>HelpViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="Main.pas">
+ <Form>MainForm</Form>
+ </DCCReference>
+ <DCCReference Include="MainData.pas">
+ <Form>MainDataModule</Form>
+ <DesignClass>TDataModule</DesignClass>
+ </DCCReference>
+ <DCCReference Include="Model\Model.pas" />
+ <DCCReference Include="PerformanceView.pas">
+ <Form>PerformanceViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="PersonBrowse.pas">
+ <Form>PersonBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="PersonEdit.pas">
+ <Form>PersonEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="QueryView.pas">
+ <Form>QueryViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="RandomData.pas" />
+ <DCCReference Include="Stopwatch.pas" />
+ <DCCReference Include="Utility.pas" />
+ <DCCReference Include="Welcome.pas">
+ <Form>WelcomeForm</Form>
+ </DCCReference>
+ </ItemGroup>
+</Project>
\ No newline at end of file
Modified: trunk/Demos/PrimerCross/Primer.mdr
===================================================================
(Binary files differ)
Modified: trunk/Source/Core/InstantBrokers.pas
===================================================================
--- trunk/Source/Core/InstantBrokers.pas 2009-08-06 15:27:10 UTC (rev 816)
+++ trunk/Source/Core/InstantBrokers.pas 2009-08-06 17:14:40 UTC (rev 817)
@@ -2329,7 +2329,7 @@
procedure TInstantNavigationalResolver.ReadPart(Attribute: TInstantPart);
var
Field: TField;
- Stream: TStringStream;
+ Stream: TInstantStringStream;
PartClassName: string;
ObjID: string;
begin
@@ -2356,7 +2356,7 @@
Field := FieldByName(Metadata.FieldName);
if not FieldHasObjects(Field) then
Exit;
- Stream := TStringStream.Create(Field.AsString);
+ Stream := TInstantStringStream.Create(Field.AsString);
try
LoadObjectFromStream(Stream);
finally
@@ -2369,7 +2369,7 @@
procedure TInstantNavigationalResolver.ReadParts(Attribute: TInstantParts);
var
Field: TField;
- Stream: TStringStream;
+ Stream: TInstantStringStream;
LinkDatasetResolver: TInstantNavigationalLinkResolver;
begin
with Attribute do
@@ -2386,7 +2386,7 @@
Field := FieldByName(Metadata.FieldName);
if not FieldHasObjects(Field) then
Exit;
- Stream := TStringStream.Create(Field.AsString);
+ Stream := TInstantStringStream.Create(Field.AsString);
try
LoadObjectsFromStream(Stream);
finally
@@ -2413,7 +2413,7 @@
Attribute: TInstantReferences);
var
Field: TField;
- Stream: TStringStream;
+ Stream: TInstantStringStream;
LinkDatasetResolver: TInstantNavigationalLinkResolver;
begin
with Attribute do
@@ -2430,7 +2430,7 @@
Field := FieldByName(Metadata.FieldName);
if not FieldHasObjects(Field) then
Exit;
- Stream := TStringStream.Create(Field.AsString);
+ Stream := TInstantStringStream.Create(Field.AsString);
try
LoadReferencesFromStream(Stream);
finally
@@ -3557,7 +3557,7 @@
procedure ReadPartAttribute;
var
- Stream: TStringStream;
+ Stream: TInstantStringStream;
LPartClassName: string;
LPartId: string;
begin
@@ -3583,7 +3583,7 @@
end
else
begin
- Stream := TStringStream.Create(ReadBlobField(DataSet,
+ Stream := TInstantStringStream.Create(ReadBlobField(DataSet,
AFieldName));
try
if Stream.Size = 0 then
@@ -3598,7 +3598,7 @@
procedure ReadPartsAttribute;
var
- Stream: TStringStream;
+ Stream: TInstantStringStream;
LinkResolver: TInstantSQLLinkResolver;
begin
if AttributeMetadata.StorageKind = skExternal then
@@ -3618,7 +3618,7 @@
end
else
begin
- Stream := TStringStream.Create(ReadBlobField(DataSet, AFieldName));
+ Stream := TInstantStringStream.Create(ReadBlobField(DataSet, AFieldName));
try
if Stream.Size = 0 then
(Attribute as TInstantParts).Reset
@@ -3639,7 +3639,7 @@
procedure ReadReferencesAttribute;
var
- Stream: TStringStream;
+ Stream: TInstantStringStream;
LinkResolver: TInstantSQLLinkResolver;
begin
if AttributeMetadata.StorageKind = skExternal then
@@ -3659,7 +3659,7 @@
end
else
begin
- Stream := TStringStream.Create(ReadBlobField(DataSet, AFieldName));
+ Stream := TInstantStringStream.Create(ReadBlobField(DataSet, AFieldName));
try
if Stream.Size = 0 then
(Attribute as TInstantReferences).Reset
Modified: trunk/Source/Core/InstantClasses.pas
===================================================================
--- trunk/Source/Core/InstantClasses.pas 2009-08-06 15:27:10 UTC (rev 816)
+++ trunk/Source/Core/InstantClasses.pas 2009-08-06 17:14:40 UTC (rev 817)
@@ -1786,10 +1786,8 @@
Producer.WriteData(CurrToStr(Reader.ReadCurrency));
vaDate:
Producer.WriteData(InstantDateTimeToStr(Reader.ReadDate));
- vaString, vaLString:
+ vaString, vaLString, vaUTF8String, vaWString:
Producer.WriteEscapedData(Reader.ReadString);
- vaUTF8String:
- Producer.WriteEscapedData(Reader.ReadString);
vaSet:
begin
Reader.ReadValue;
Modified: trunk/Source/Core/InstantConsts.pas
===================================================================
--- trunk/Source/Core/InstantConsts.pas 2009-08-06 15:27:10 UTC (rev 816)
+++ trunk/Source/Core/InstantConsts.pas 2009-08-06 17:14:40 UTC (rev 817)
@@ -139,7 +139,7 @@
SInvalidOperator = 'Invalid operator: %s';
SInvalidPropertyValue = 'Invalid property value';
SInvalidToken = 'Invalid token ''%s''';
- SInvalidValueType = 'Invalid value type';
+ SInvalidValueType = 'Invalid value type ''%s''';
SKeyViolation = 'Key violation for object %s(''%s'')';
SLoginPromptFailure = 'Couldn''t find login dialog. Please use unit DBLogDlg or set LoginPrompt to False';
SMetadataMismatch = 'Metadata mismatch for attribute %s(''%s'')';
Modified: trunk/Source/Core/InstantPersistence.pas
===================================================================
--- trunk/Source/Core/InstantPersistence.pas 2009-08-06 15:27:10 UTC (rev 816)
+++ trunk/Source/Core/InstantPersistence.pas 2009-08-06 17:14:40 UTC (rev 817)
@@ -5620,20 +5620,20 @@
var
Count: Integer;
Bin, Hex: string;
+ LNextValueType: TValueType;
begin
with Converter do
begin
- case Reader.NextValue of
+ LNextValueType := Reader.NextValue;
+ case LNextValueType of
vaInt8, vaInt16, vaInt32:
Producer.WriteData(IntToStr(Reader.ReadInteger));
vaExtended:
Producer.WriteData(FloatToStr(Reader.ReadFloat));
vaDate:
Producer.WriteData(InstantDateTimeToStr(Reader.ReadDate));
- vaString, vaLString:
+ vaString, vaLString, vaUTF8String, vaWString:
Producer.WriteEscapedData(Reader.ReadString);
- vaUTF8String:
- Producer.WriteEscapedData(Reader.ReadString);
vaCurrency:
Producer.WriteEscapedData(CurrToStr(Reader.ReadCurrency));
vaIdent:
@@ -5669,7 +5669,8 @@
Reader.ReadListEnd;
end;
else
- raise EInstantStreamError.Create(SInvalidValueType);
+ raise EInstantStreamError.CreateFmt(SInvalidValueType,
+ [GetEnumName(TypeInfo(TValueType), Ord(LNextValueType))]);
end;
end;
end;
|
|
From: <na...@us...> - 2009-08-06 15:27:27
|
Revision: 816
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=816&view=rev
Author: nandod
Date: 2009-08-06 15:27:10 +0000 (Thu, 06 Aug 2009)
Log Message:
-----------
* Fixed two regressions.
Modified Paths:
--------------
trunk/Demos/PrimerCross/Main.dfm
trunk/Demos/PrimerCross/Main.pas
trunk/Demos/PrimerCross/Model/Model.pas
trunk/Source/Core/InstantTextFiler.pas
Modified: trunk/Demos/PrimerCross/Main.dfm
===================================================================
--- trunk/Demos/PrimerCross/Main.dfm 2009-08-05 17:15:33 UTC (rev 815)
+++ trunk/Demos/PrimerCross/Main.dfm 2009-08-06 15:27:10 UTC (rev 816)
@@ -10,21 +10,21 @@
Font.Style = []
Menu = MainMenu
OldCreateOrder = False
+ OnActivate = FormActivate
OnClose = FormClose
OnCreate = FormCreate
- OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object SideBarSplitter: TSplitter
Left = 88
Top = 26
- Height = 458
+ Height = 139
ResizeStyle = rsLine
end
object ToolBar: TToolBar
Left = 0
Top = 0
- Width = 624
+ Width = 304
Height = 26
AutoSize = True
BorderWidth = 1
@@ -45,8 +45,8 @@
end
object StatusBar: TStatusBar
Left = 0
- Top = 484
- Width = 624
+ Top = 165
+ Width = 304
Height = 19
Panels = <
item
@@ -61,7 +61,7 @@
Left = 0
Top = 26
Width = 88
- Height = 458
+ Height = 139
Align = alLeft
BevelOuter = bvNone
BorderStyle = bsSingle
@@ -79,7 +79,7 @@
Left = 0
Top = 8
Width = 84
- Height = 446
+ Height = 127
Align = alClient
BorderStyle = bsNone
Color = clAppWorkSpace
@@ -89,6 +89,7 @@
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
+ IconOptions.AutoArrange = True
ReadOnly = True
ParentFont = False
TabOrder = 0
@@ -98,15 +99,15 @@
object WorkPanel: TPanel
Left = 91
Top = 26
- Width = 533
- Height = 458
+ Width = 213
+ Height = 139
Align = alClient
BevelOuter = bvNone
TabOrder = 3
object WorkTitleSpacer: TBevel
Left = 0
Top = 27
- Width = 533
+ Width = 213
Height = 4
Align = alTop
Shape = bsSpacer
@@ -114,7 +115,7 @@
object WorkTitlePanel: TPanel
Left = 0
Top = 0
- Width = 533
+ Width = 213
Height = 27
Align = alTop
BevelInner = bvLowered
@@ -137,8 +138,8 @@
object WorkClientPanel: TPanel
Left = 0
Top = 31
- Width = 533
- Height = 427
+ Width = 213
+ Height = 108
Align = alClient
BevelOuter = bvNone
TabOrder = 1
Modified: trunk/Demos/PrimerCross/Main.pas
===================================================================
--- trunk/Demos/PrimerCross/Main.pas 2009-08-05 17:15:33 UTC (rev 815)
+++ trunk/Demos/PrimerCross/Main.pas 2009-08-06 15:27:10 UTC (rev 816)
@@ -75,7 +75,7 @@
procedure ExportItemClick(Sender: TObject);
procedure ImportItemClick(Sender: TObject);
procedure ExportModelItemClick(Sender: TObject);
- procedure FormShow(Sender: TObject);
+ procedure FormActivate(Sender: TObject);
private
FActiveSubView: TBasicViewForm;
FConnectionDef: TInstantConnectionDef;
@@ -501,6 +501,11 @@
end;
end;
+procedure TMainForm.FormActivate(Sender: TObject);
+begin
+ WindowState := wsMaximized;
+end;
+
procedure TMainForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Disconnect;
@@ -519,7 +524,6 @@
BorderWidth := 4;
HoverTime := 0;
HotTrackStyles := [htHandPoint];
- IconOptions.Arrangement := iaLeft;
LargeImages := SideBarImages;
end;
{$ENDIF}
@@ -537,16 +541,10 @@
// ConnectionManager.FileFormat := sfBinary;
// ConnectionManager.FileName := ChangeFileExt(Application.ExeName, '.con');
-
CreateSubViews;
UpdateStatus;
end;
-procedure TMainForm.FormShow(Sender: TObject);
-begin
- WindowState := wsMaximized;
-end;
-
function TMainForm.GetConnectionName: string;
begin
if Assigned(FConnectionDef) then
Modified: trunk/Demos/PrimerCross/Model/Model.pas
===================================================================
--- trunk/Demos/PrimerCross/Model/Model.pas 2009-08-05 17:15:33 UTC (rev 815)
+++ trunk/Demos/PrimerCross/Model/Model.pas 2009-08-06 15:27:10 UTC (rev 816)
@@ -23,7 +23,7 @@
TAddress = class(TInstantObject)
- {IOMETADATA City: String(30) index;
+ {IOMETADATA City: String(30) index;
Country: Reference(TCountry);
State: String(4);
Street: Memo;
@@ -53,7 +53,7 @@
end;
TCountry = class(TInstantObject)
- {IOMETADATA stored;
+ {IOMETADATA stored;
Name: String(30); }
_Name: TInstantString;
private
@@ -68,7 +68,7 @@
end;
TPhone = class(TInstantObject)
- {IOMETADATA Name: String(20);
+ {IOMETADATA Name: String(20);
Number: String(20) mask '(000) 000-0000;0;_'; }
_Name: TInstantString;
_Number: TInstantString;
@@ -83,7 +83,7 @@
end;
TEmail = class(TInstantObject)
- {IOMETADATA Address: String(100); }
+ {IOMETADATA Address: String(100); }
_Address: TInstantString;
private
function GetAddress: string;
@@ -93,7 +93,7 @@
end;
TCategory = class(TInstantObject)
- {IOMETADATA stored;
+ {IOMETADATA stored;
Name: String(30); }
_Name: TInstantString;
private
@@ -106,7 +106,7 @@
end;
TContact = class(TInstantObject)
- {IOMETADATA stored;
+ {IOMETADATA stored;
Address: Part(TAddress);
Category: Reference(TCategory);
City: String(30) index;
@@ -153,6 +153,7 @@
end;
TContactFilter = class(TContact)
+ {IOMETADATA embedded; }
private
FIsDynamic: Boolean;
function GetIsEmpty: Boolean;
@@ -164,7 +165,7 @@
end;
TPerson = class(TContact)
- {IOMETADATA stored;
+ {IOMETADATA stored;
Emails: Parts(TEmail);
Employer: Reference(TCompany);
Picture: Graphic;
@@ -214,7 +215,7 @@
end;
TCompany = class(TContact)
- {IOMETADATA stored;
+ {IOMETADATA stored;
Employees: References(TPerson); }
_Employees: TInstantReferences;
private
Modified: trunk/Source/Core/InstantTextFiler.pas
===================================================================
--- trunk/Source/Core/InstantTextFiler.pas 2009-08-05 17:15:33 UTC (rev 815)
+++ trunk/Source/Core/InstantTextFiler.pas 2009-08-06 15:27:10 UTC (rev 816)
@@ -194,7 +194,7 @@
constructor TInstantTextFiler.Create(AText: string);
begin
- Create(TStringStream.Create(AText), True);
+ Create(TInstantStringStream.Create(AText), True);
end;
procedure TInstantTextFiler.DescendPosition(Ch: Char);
|
|
From: <na...@us...> - 2009-08-05 17:15:48
|
Revision: 815
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=815&view=rev
Author: nandod
Date: 2009-08-05 17:15:33 +0000 (Wed, 05 Aug 2009)
Log Message:
-----------
* Fixed error "implementation expected" when editing a class in the model expert at design time in D2009.
* svn:ignore set.
Modified Paths:
--------------
trunk/Demos/PrimerCross/ModelExternal/Model.pas
trunk/Source/Core/InstantCode.pas
trunk/Source/Core/InstantTextFiler.pas
trunk/Source/Design/D2009/DclIOCore.dproj
trunk/Source/PackageGroups/D2009/CorePackages.groupproj
trunk/Tests/TestModel.pas
Property Changed:
----------------
trunk/Demos/PrimerCross/ModelExternal/
trunk/Source/Brokers/ADO/D2009/
trunk/Source/Brokers/BDE/D2009/
trunk/Source/Brokers/DBX/D2009/
trunk/Source/Brokers/IBX/D2009/
trunk/Source/Catalogs/IBFb/D2009/
trunk/Source/Catalogs/MSSql/D2009/
trunk/Source/Catalogs/MySQL/D2009/
trunk/Source/Core/D2009/
trunk/Source/Design/D2009/
Property changes on: trunk/Demos/PrimerCross/ModelExternal
___________________________________________________________________
Modified: svn:ignore
- *.dcu
*.~pas
+ *.dcu
*.~pas
__history
Modified: trunk/Demos/PrimerCross/ModelExternal/Model.pas
===================================================================
--- trunk/Demos/PrimerCross/ModelExternal/Model.pas 2009-08-05 11:44:58 UTC (rev 814)
+++ trunk/Demos/PrimerCross/ModelExternal/Model.pas 2009-08-05 17:15:33 UTC (rev 815)
@@ -22,7 +22,7 @@
TPhone = class;
TAddress = class(TInstantObject)
- {IOMETADATA stored;
+ {IOMETADATA stored;
City: String(30) index;
Country: Reference(TCountry);
State: String(4);
@@ -95,7 +95,7 @@
end;
TCategory = class(TInstantObject)
- {IOMETADATA stored;
+ {IOMETADATA stored;
Name: String(30); }
_Name: TInstantString;
private
@@ -236,7 +236,7 @@
implementation
uses
- SysUtils, InstantUtils;
+ SysUtils, InstantUtils, InstantMetadata;
{ TAddress }
Property changes on: trunk/Source/Brokers/ADO/D2009
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Property changes on: trunk/Source/Brokers/BDE/D2009
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Property changes on: trunk/Source/Brokers/DBX/D2009
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Property changes on: trunk/Source/Brokers/IBX/D2009
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Property changes on: trunk/Source/Catalogs/IBFb/D2009
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Property changes on: trunk/Source/Catalogs/MSSql/D2009
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Property changes on: trunk/Source/Catalogs/MySQL/D2009
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
Property changes on: trunk/Source/Core/D2009
___________________________________________________________________
Added: svn:ignore
+ *.dcu
*.local
*.identcache
Modified: trunk/Source/Core/InstantCode.pas
===================================================================
--- trunk/Source/Core/InstantCode.pas 2009-08-05 11:44:58 UTC (rev 814)
+++ trunk/Source/Core/InstantCode.pas 2009-08-05 17:15:33 UTC (rev 815)
@@ -8628,23 +8628,25 @@
if not Assigned(AObject) then
Exit;
Stream := TInstantStringStream.Create('');
- Writer := TInstantCodeWriter.Create(Stream);
try
- Writer.Origin := CursorPos;
- while IndentLevel > 0 do
- begin
- Writer.Indent;
- Dec(IndentLevel);
- end;
- AObject.Write(Writer);
- AObject.Lock;
+ Writer := TInstantCodeWriter.Create(Stream);
try
- InsertText(Stream.DataString);
+ while IndentLevel > 0 do
+ begin
+ Writer.Indent;
+ Dec(IndentLevel);
+ end;
+ AObject.Write(Writer);
+ AObject.Lock;
+ try
+ InsertText(Stream.DataString);
+ finally
+ AObject.Unlock;
+ end;
finally
- AObject.Unlock;
+ Writer.Free;
end;
finally
- Writer.Free;
Stream.Free;
end;
end;
Modified: trunk/Source/Core/InstantTextFiler.pas
===================================================================
--- trunk/Source/Core/InstantTextFiler.pas 2009-08-05 11:44:58 UTC (rev 814)
+++ trunk/Source/Core/InstantTextFiler.pas 2009-08-05 17:15:33 UTC (rev 815)
@@ -45,7 +45,7 @@
PInstantTextPos = ^TInstantTextPos;
TInstantTextPos = record
Column, Line: Integer;
- Offset: Int64;
+ Offset: Int64; // In characters, not bytes.
end;
EInstantTextPosError = class(EInstantError)
@@ -143,7 +143,7 @@
else
Inc(Pos.Column);
end;
- Inc(Pos.Offset, SizeOf(Char));
+ Inc(Pos.Offset);
end;
procedure DescendTextPos(var Pos: TInstantTextPos; Ch: Char);
@@ -163,7 +163,7 @@
else
Dec(Pos.Column);
end;
- Dec(Pos.Offset, SizeOf(Char));
+ Dec(Pos.Offset);
end;
{ EInstantTextPosError }
@@ -194,7 +194,7 @@
constructor TInstantTextFiler.Create(AText: string);
begin
- Create(TInstantStringStream.Create(AText), True);
+ Create(TStringStream.Create(AText), True);
end;
procedure TInstantTextFiler.DescendPosition(Ch: Char);
@@ -221,7 +221,7 @@
function TInstantTextFiler.GetPosition: TInstantTextPos;
begin
- FPosition.Offset := StreamPos;
+ FPosition.Offset := StreamPos div SizeOf(Char);
Result := FPosition;
end;
@@ -261,7 +261,7 @@
procedure TInstantTextFiler.SetPosition(const Value: TInstantTextPos);
begin
FPosition := Value;
- StreamPos := FPosition.Offset;
+ StreamPos := FPosition.Offset * SizeOf(Char);
end;
procedure TInstantTextFiler.SetStreamPos(Value: Int64);
Property changes on: trunk/Source/Design/D2009
___________________________________________________________________
Added: svn:ignore
+ __history
*.dcu
*.local
*.identcache
Modified: trunk/Source/Design/D2009/DclIOCore.dproj
===================================================================
--- trunk/Source/Design/D2009/DclIOCore.dproj 2009-08-05 11:44:58 UTC (rev 814)
+++ trunk/Source/Design/D2009/DclIOCore.dproj 2009-08-05 17:15:33 UTC (rev 815)
@@ -136,8 +136,8 @@
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
<Parameters Name="HostApplication">C:\Program Files\CodeGear\RAD Studio\6.0\bin\bds.exe</Parameters>
- <Parameters Name="DebugSourceDirs">S:\InstantObjectsUnicode\Source\Core\</Parameters>
- <Parameters Name="RunParams">S:\InstantObjectsUnicode\Tests\TestIO.dproj</Parameters>
+ <Parameters Name="DebugSourceDirs">W:\projects\instantobjects\Source\Core\</Parameters>
+ <Parameters Name="RunParams">"C:\Users\nandod\Documents\RAD Studio\Projects\TestInstantCode\TestInstantCode.dproj"</Parameters>
</Parameters>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
Modified: trunk/Source/PackageGroups/D2009/CorePackages.groupproj
===================================================================
--- trunk/Source/PackageGroups/D2009/CorePackages.groupproj 2009-08-05 11:44:58 UTC (rev 814)
+++ trunk/Source/PackageGroups/D2009/CorePackages.groupproj 2009-08-05 17:15:33 UTC (rev 815)
@@ -24,15 +24,6 @@
<Projects Include="..\..\..\Tests\TestIO_D2009.dproj">
<Dependencies/>
</Projects>
- <Projects Include="S:\InstantObjectsUnicode\Source\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj">
- <Dependencies/>
- </Projects>
- <Projects Include="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\IOADO.dproj">
- <Dependencies/>
- </Projects>
- <Projects Include="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\DclIOADO.dproj">
- <Dependencies/>
- </Projects>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Default.Personality.12</Borland.Personality>
@@ -104,41 +95,14 @@
<Target Name="TestIO_D2009:Make">
<MSBuild Targets="Make" Projects="..\..\..\Tests\TestIO_D2009.dproj"/>
</Target>
- <Target Name="IOMSSqlCatalog">
- <MSBuild Projects="S:\InstantObjectsUnicode\Source\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj"/>
- </Target>
- <Target Name="IOMSSqlCatalog:Clean">
- <MSBuild Targets="Clean" Projects="S:\InstantObjectsUnicode\Source\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj"/>
- </Target>
- <Target Name="IOMSSqlCatalog:Make">
- <MSBuild Targets="Make" Projects="S:\InstantObjectsUnicode\Source\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj"/>
- </Target>
- <Target Name="IOADO">
- <MSBuild Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\IOADO.dproj"/>
- </Target>
- <Target Name="IOADO:Clean">
- <MSBuild Targets="Clean" Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\IOADO.dproj"/>
- </Target>
- <Target Name="IOADO:Make">
- <MSBuild Targets="Make" Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\IOADO.dproj"/>
- </Target>
- <Target Name="DclIOADO">
- <MSBuild Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\DclIOADO.dproj"/>
- </Target>
- <Target Name="DclIOADO:Clean">
- <MSBuild Targets="Clean" Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\DclIOADO.dproj"/>
- </Target>
- <Target Name="DclIOADO:Make">
- <MSBuild Targets="Make" Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\DclIOADO.dproj"/>
- </Target>
<Target Name="Build">
- <CallTarget Targets="IOCore;DclIOCore;IOBDE;DclIOBDE;IOXML;DclIOXML;TestIO_D2009;IOMSSqlCatalog;IOADO;DclIOADO"/>
+ <CallTarget Targets="IOCore;DclIOCore;IOBDE;DclIOBDE;IOXML;DclIOXML;TestIO_D2009"/>
</Target>
<Target Name="Clean">
- <CallTarget Targets="IOCore:Clean;DclIOCore:Clean;IOBDE:Clean;DclIOBDE:Clean;IOXML:Clean;DclIOXML:Clean;TestIO_D2009:Clean;IOMSSqlCatalog:Clean;IOADO:Clean;DclIOADO:Clean"/>
+ <CallTarget Targets="IOCore:Clean;DclIOCore:Clean;IOBDE:Clean;DclIOBDE:Clean;IOXML:Clean;DclIOXML:Clean;TestIO_D2009:Clean"/>
</Target>
<Target Name="Make">
- <CallTarget Targets="IOCore:Make;DclIOCore:Make;IOBDE:Make;DclIOBDE:Make;IOXML:Make;DclIOXML:Make;TestIO_D2009:Make;IOMSSqlCatalog:Make;IOADO:Make;DclIOADO:Make"/>
+ <CallTarget Targets="IOCore:Make;DclIOCore:Make;IOBDE:Make;DclIOBDE:Make;IOXML:Make;DclIOXML:Make;TestIO_D2009:Make"/>
</Target>
<Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
</Project>
Modified: trunk/Tests/TestModel.pas
===================================================================
--- trunk/Tests/TestModel.pas 2009-08-05 11:44:58 UTC (rev 814)
+++ trunk/Tests/TestModel.pas 2009-08-05 17:15:33 UTC (rev 815)
@@ -124,7 +124,7 @@
end;
TCategory = class(TInstantObject)
- {IOMETADATA stored 'Categories';
+ {IOMETADATA stored 'Categories';
Name: String(30); }
_Name: TInstantString;
private
@@ -137,7 +137,7 @@
end;
TContact = class(TInstantObject)
- {IOMETADATA stored;
+ {IOMETADATA stored;
Address: Part(TAddress);
Category: Reference(TCategory);
City: String(30) index;
|
|
From: <na...@us...> - 2009-08-05 11:45:04
|
Revision: 814
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=814&view=rev
Author: nandod
Date: 2009-08-05 11:44:58 +0000 (Wed, 05 Aug 2009)
Log Message:
-----------
- unused routine.
Modified Paths:
--------------
trunk/Source/Brokers/XML/InstantXML.pas
Modified: trunk/Source/Brokers/XML/InstantXML.pas
===================================================================
--- trunk/Source/Brokers/XML/InstantXML.pas 2009-08-05 10:57:00 UTC (rev 813)
+++ trunk/Source/Brokers/XML/InstantXML.pas 2009-08-05 11:44:58 UTC (rev 814)
@@ -1182,17 +1182,6 @@
end;
{$ENDIF}
-function RemoveXmlDeclaration(const xmlString: string): string;
-var
- nPos: Integer;
-begin
- nPos := Pos('<?xml', xmlString);
- if nPos > 0 then
- Result := Copy(xmlString, Pos('?>', xmlString) + 2, maxint)
- else
- Result := xmlString;
-end;
-
{$IFDEF UNICODE}
function TXMLFilesAccessor.LoadInstantObjectFromXmlFile(
const AObject: TInstantObject; const AObjectId, AFileName: string): Boolean;
|
|
From: <na...@us...> - 2009-08-05 10:57:20
|
Revision: 813
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=813&view=rev
Author: nandod
Date: 2009-08-05 10:57:00 +0000 (Wed, 05 Aug 2009)
Log Message:
-----------
* Unicode support in XML broker and other XML-related areas rewritten. Demos and Tests updated accordingly.
+ As a bonus, XML broker now supports ORDER BY in IQL queries.
* Removed useless code from InstantADO that was causing problems in D2009.
Modified Paths:
--------------
trunk/Demos/Intro/Intro.mdr
trunk/Demos/Intro/Intro_D2009.dproj
trunk/Demos/PrimerCross/Main.dfm
trunk/Demos/PrimerCross/Main.pas
trunk/Demos/PrimerCross/Primer.dproj
trunk/Demos/PrimerCross/PrimerExternal.xml
trunk/Source/Brokers/ADO/InstantADO.pas
trunk/Source/Brokers/XML/InstantXML.pas
trunk/Source/Core/InstantClasses.pas
trunk/Source/Core/InstantConsts.pas
trunk/Source/Core/InstantPersistence.pas
trunk/Source/Core/InstantUtils.pas
trunk/Source/Design/D2007/DclIOCore.dpk
trunk/Source/Design/D2007/DclIOCore.dproj
trunk/Source/Design/D7/DclIOCore.dpk
trunk/Source/Design/InstantAbout.pas
trunk/Source/PackageGroups/D2007/DesignTimePackages.groupproj
trunk/Tests/TestIO.dpr
trunk/Tests/TestIO.dproj
trunk/Tests/TestIO.mdr
trunk/Tests/TestIO.mdrt
trunk/Tests/TestIO.mdx
trunk/Tests/TestIO.mdxt
trunk/Tests/TestIO_D2009.dproj
Added Paths:
-----------
trunk/Demos/Intro/Intro_D2009.dpr
trunk/Demos/PrimerCross/Primer_D2009.dpr
trunk/Demos/PrimerCross/Primer_D2009.dproj
trunk/Demos/PrimerCross/Primer_D2009.mdr
trunk/Demos/PrimerCross/Primer_D2009.res
trunk/Demos/PrimerCross/Primer_D2009.xml
trunk/Source/PackageGroups/D2009/DesignTimePackages.groupproj
trunk/Source/PackageGroups/D2009/RunTimePackages.groupproj
trunk/Tests/TestIO_D2009.dpr
trunk/Tests/TestIO_D2009.mdrt
trunk/Tests/TestIO_D2009.mdx
trunk/Tests/TestIO_D2009.mdxt
trunk/Tests/TestIO_D2009.res
trunk/Tests/TestXMLBroker.pas
Removed Paths:
-------------
trunk/Tests/TestIO_D2007.dproj
trunk/Tests/TestIO_D2007.mdr
Property Changed:
----------------
trunk/Demos/PrimerCross/
trunk/Tests/
Modified: trunk/Demos/Intro/Intro.mdr
===================================================================
(Binary files differ)
Added: trunk/Demos/Intro/Intro_D2009.dpr
===================================================================
--- trunk/Demos/Intro/Intro_D2009.dpr (rev 0)
+++ trunk/Demos/Intro/Intro_D2009.dpr 2009-08-05 10:57:00 UTC (rev 813)
@@ -0,0 +1,21 @@
+program Intro_D2009;
+
+uses
+ Forms,
+ Model in 'Model.pas',
+ Main in 'Main.pas' {MainForm},
+ ContactEdit in 'ContactEdit.pas' {ContactEditForm},
+ PersonEdit in 'PersonEdit.pas' {PersonEditForm},
+ CompanyEdit in 'CompanyEdit.pas' {CompanyEditForm};
+
+{$R *.RES}
+{$R *.MDR} {Model}
+
+begin
+ Application.Initialize;
+ Application.CreateForm(TMainForm, MainForm);
+ Application.CreateForm(TContactEditForm, ContactEditForm);
+ Application.CreateForm(TPersonEditForm, PersonEditForm);
+ Application.CreateForm(TCompanyEditForm, CompanyEditForm);
+ Application.Run;
+end.
Property changes on: trunk/Demos/Intro/Intro_D2009.dpr
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Modified: trunk/Demos/Intro/Intro_D2009.dproj
===================================================================
--- trunk/Demos/Intro/Intro_D2009.dproj 2009-07-27 13:24:38 UTC (rev 812)
+++ trunk/Demos/Intro/Intro_D2009.dproj 2009-08-05 10:57:00 UTC (rev 813)
@@ -1,7 +1,7 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{5e7fed32-48a7-4d66-a1ed-fbf2fb9c43c1}</ProjectGuid>
- <MainSource>Intro.dpr</MainSource>
+ <MainSource>Intro_D2009.dpr</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
@@ -24,7 +24,7 @@
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<DCC_UsePackage>vclx;vcl;dbrtl;Rave76VCL;bdertl;rtl;vclactnband;vcldb;vcldbx;dsnap;dsnapcon;TeeUI;TeeDB;Tee;adortl;vclib;ibxpress;IndyCore;IndySystem;IndyProtocols;xmlrtl;inet;intrawebdb_100_120;Intraweb_100_120;VclSmp;vclie;websnap;webdsnap;inetdbbde;inetdbxpress;soaprtl;vclribbon;dbexpress;DbxCommonDriver;DataSnapIndy10ServerTransport;DataSnapProviderClient;DataSnapServer;DbxClientDriver;DBXInterBaseDriver;DBXMySQLDriver;dbxcds;DBXSybaseASEDriver;DBXSybaseASADriver;DBXOracleDriver;DBXMSSQLDriver;DBXInformixDriver;DBXDb2Driver;IWEliteSuite_100_Delphi2009;InstantBDExpress;IOCore;IOBDE</DCC_UsePackage>
- <DCC_DependencyCheckOutputName>Intro.exe</DCC_DependencyCheckOutputName>
+ <DCC_DependencyCheckOutputName>Intro_D2009.exe</DCC_DependencyCheckOutputName>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''">
<Version>7.0</Version>
@@ -97,7 +97,7 @@
<VersionInfoKeys Name="Comments"/>
</VersionInfoKeys>
<Source>
- <Source Name="MainSource">Intro.dpr</Source>
+ <Source Name="MainSource">Intro_D2009.dpr</Source>
</Source>
<Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k120.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
@@ -108,7 +108,7 @@
<ProjectFileVersion>12</ProjectFileVersion>
</ProjectExtensions>
<ItemGroup>
- <DelphiCompile Include="Intro.dpr">
+ <DelphiCompile Include="Intro_D2009.dpr">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="Model.pas"/>
Property changes on: trunk/Demos/PrimerCross
___________________________________________________________________
Modified: svn:ignore
- *.dcu
*.~*
*.ddp
*.exe
__history
*.identcache
*.local
*.dsk
*.MB
+ *.dcu
*.~*
*.ddp
*.exe
__history
*.identcache
*.local
*.dsk
*.MB
XMLDB
Modified: trunk/Demos/PrimerCross/Main.dfm
===================================================================
--- trunk/Demos/PrimerCross/Main.dfm 2009-07-27 13:24:38 UTC (rev 812)
+++ trunk/Demos/PrimerCross/Main.dfm 2009-08-05 10:57:00 UTC (rev 813)
@@ -1,8 +1,6 @@
object MainForm: TMainForm
Left = 254
Top = 225
- Width = 521
- Height = 372
Caption = 'InstantObjects Primer'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
@@ -12,25 +10,24 @@
Font.Style = []
Menu = MainMenu
OldCreateOrder = False
- WindowState = wsMaximized
OnClose = FormClose
OnCreate = FormCreate
+ OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object SideBarSplitter: TSplitter
Left = 88
- Top = 28
- Height = 271
+ Top = 26
+ Height = 458
ResizeStyle = rsLine
end
object ToolBar: TToolBar
Left = 0
Top = 0
- Width = 513
- Height = 28
+ Width = 624
+ Height = 26
AutoSize = True
BorderWidth = 1
- Flat = True
Images = ActionImages
ParentShowHint = False
ShowHint = True
@@ -48,8 +45,8 @@
end
object StatusBar: TStatusBar
Left = 0
- Top = 299
- Width = 513
+ Top = 484
+ Width = 624
Height = 19
Panels = <
item
@@ -62,9 +59,9 @@
end
object SideBarPanel: TPanel
Left = 0
- Top = 28
+ Top = 26
Width = 88
- Height = 271
+ Height = 458
Align = alLeft
BevelOuter = bvNone
BorderStyle = bsSingle
@@ -82,7 +79,7 @@
Left = 0
Top = 8
Width = 84
- Height = 259
+ Height = 446
Align = alClient
BorderStyle = bsNone
Color = clAppWorkSpace
@@ -100,16 +97,16 @@
end
object WorkPanel: TPanel
Left = 91
- Top = 28
- Width = 422
- Height = 271
+ Top = 26
+ Width = 533
+ Height = 458
Align = alClient
BevelOuter = bvNone
TabOrder = 3
object WorkTitleSpacer: TBevel
Left = 0
Top = 27
- Width = 422
+ Width = 533
Height = 4
Align = alTop
Shape = bsSpacer
@@ -117,7 +114,7 @@
object WorkTitlePanel: TPanel
Left = 0
Top = 0
- Width = 422
+ Width = 533
Height = 27
Align = alTop
BevelInner = bvLowered
@@ -140,8 +137,8 @@
object WorkClientPanel: TPanel
Left = 0
Top = 31
- Width = 422
- Height = 240
+ Width = 533
+ Height = 427
Align = alClient
BevelOuter = bvNone
TabOrder = 1
Modified: trunk/Demos/PrimerCross/Main.pas
===================================================================
--- trunk/Demos/PrimerCross/Main.pas 2009-07-27 13:24:38 UTC (rev 812)
+++ trunk/Demos/PrimerCross/Main.pas 2009-08-05 10:57:00 UTC (rev 813)
@@ -75,6 +75,7 @@
procedure ExportItemClick(Sender: TObject);
procedure ImportItemClick(Sender: TObject);
procedure ExportModelItemClick(Sender: TObject);
+ procedure FormShow(Sender: TObject);
private
FActiveSubView: TBasicViewForm;
FConnectionDef: TInstantConnectionDef;
@@ -541,6 +542,11 @@
UpdateStatus;
end;
+procedure TMainForm.FormShow(Sender: TObject);
+begin
+ WindowState := wsMaximized;
+end;
+
function TMainForm.GetConnectionName: string;
begin
if Assigned(FConnectionDef) then
Modified: trunk/Demos/PrimerCross/Primer.dproj
===================================================================
--- trunk/Demos/PrimerCross/Primer.dproj 2009-07-27 13:24:38 UTC (rev 812)
+++ trunk/Demos/PrimerCross/Primer.dproj 2009-08-05 10:57:00 UTC (rev 813)
@@ -1,117 +1,183 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <ProjectGuid>{d197a2d4-31b9-43b1-8070-3f804d86e53f}</ProjectGuid>
- <MainSource>Primer.dpr</MainSource>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
- <DCC_DependencyCheckOutputName>Primer.exe</DCC_DependencyCheckOutputName>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <Version>7.0</Version>
- <DCC_DebugInformation>False</DCC_DebugInformation>
- <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
- <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
- <DCC_Define>RELEASE</DCC_Define>
- <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_UnitSearchPath>
- <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_ResourcePath>
- <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_ObjPath>
- <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_IncludePath>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <Version>7.0</Version>
- <DCC_Define>DEBUG;IO_STATEMENT_LOGGING</DCC_Define>
- <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_UnitSearchPath>
- <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_ResourcePath>
- <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_ObjPath>
- <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql</DCC_IncludePath>
- </PropertyGroup>
- <ProjectExtensions>
- <Borland.Personality>Delphi.Personality</Borland.Personality>
- <Borland.ProjectType>VCLApplication</Borland.ProjectType>
- <BorlandProject>
-<BorlandProject><Delphi.Personality><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">2</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">1030</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">InstantObjects.org</VersionInfoKeys><VersionInfoKeys Name="FileDescription">Primer Demo</VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright">MPL public license</VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">2.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">Primer.dpr</Source></Source></Delphi.Personality> <ModelSupport>False</ModelSupport>
-</BorlandProject></BorlandProject>
- </ProjectExtensions>
- <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
- <ItemGroup>
- <DelphiCompile Include="Primer.dpr">
- <MainSource>MainSource</MainSource>
- </DelphiCompile>
- <DCCReference Include="BasicBrowse.pas">
- <Form>BasicBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="BasicEdit.pas">
- <Form>BasicEditForm</Form>
- </DCCReference>
- <DCCReference Include="BasicView.pas">
- <Form>BasicViewForm</Form>
- <DesignClass>TFrame</DesignClass>
- </DCCReference>
- <DCCReference Include="CategoryBrowse.pas">
- <Form>CategoryBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="CompanyBrowse.pas">
- <Form>CompanyBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="CompanyEdit.pas">
- <Form>CompanyEditForm</Form>
- </DCCReference>
- <DCCReference Include="ContactBrowse.pas">
- <Form>ContactBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="ContactEdit.pas">
- <Form>ContactEditForm</Form>
- </DCCReference>
- <DCCReference Include="ContactFilterEdit.pas">
- <Form>ContactFilterEditForm</Form>
- </DCCReference>
- <DCCReference Include="ContactSort.pas">
- <Form>ContactSortForm</Form>
- </DCCReference>
- <DCCReference Include="ContactView.pas">
- <Form>ContactViewForm</Form>
- <DesignClass>TFrame</DesignClass>
- </DCCReference>
- <DCCReference Include="CountryBrowse.pas">
- <Form>CountryBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="DemoData.pas" />
- <DCCReference Include="DemoDataRequest.pas">
- <Form>DemoDataRequestForm</Form>
- </DCCReference>
- <DCCReference Include="HelpView.pas">
- <Form>HelpViewForm</Form>
- <DesignClass>TFrame</DesignClass>
- </DCCReference>
- <DCCReference Include="Main.pas">
- <Form>MainForm</Form>
- </DCCReference>
- <DCCReference Include="MainData.pas">
- <Form>MainDataModule</Form>
- <DesignClass>TDataModule</DesignClass>
- </DCCReference>
- <DCCReference Include="Model\Model.pas" />
- <DCCReference Include="PerformanceView.pas">
- <Form>PerformanceViewForm</Form>
- <DesignClass>TFrame</DesignClass>
- </DCCReference>
- <DCCReference Include="PersonBrowse.pas">
- <Form>PersonBrowseForm</Form>
- </DCCReference>
- <DCCReference Include="PersonEdit.pas">
- <Form>PersonEditForm</Form>
- </DCCReference>
- <DCCReference Include="QueryView.pas">
- <Form>QueryViewForm</Form>
- <DesignClass>TFrame</DesignClass>
- </DCCReference>
- <DCCReference Include="RandomData.pas" />
- <DCCReference Include="Stopwatch.pas" />
- <DCCReference Include="Utility.pas" />
- <DCCReference Include="Welcome.pas">
- <Form>WelcomeForm</Form>
- </DCCReference>
- </ItemGroup>
-</Project>
\ No newline at end of file
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{d197a2d4-31b9-43b1-8070-3f804d86e53f}</ProjectGuid>
+ <MainSource>Primer.dpr</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>Primer.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_DependencyCheckOutputName>Primer.exe</DCC_DependencyCheckOutputName>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ResourcePath)</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ObjPath)</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_IncludePath)</DCC_IncludePath>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ <DCC_Define>DEBUG;IO_STATEMENT_LOGGING;$(DCC_Define)</DCC_Define>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ResourcePath)</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ObjPath)</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_IncludePath)</DCC_IncludePath>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>VCLApplication</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <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">2</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">1030</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">InstantObjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">Primer Demo</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright">MPL public license</VersionInfoKeys>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName"/>
+ <VersionInfoKeys Name="ProductVersion">2.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">Primer.dpr</Source>
+ </Source>
+ </Delphi.Personality>
+ <ModelSupport>False</ModelSupport>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <ItemGroup>
+ <DelphiCompile Include="Primer.dpr">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="Main.pas">
+ <Form>MainForm</Form>
+ </DCCReference>
+ <DCCReference Include="Model\Model.pas"/>
+ <DCCReference Include="ContactView.pas">
+ <Form>ContactViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="BasicView.pas">
+ <Form>BasicViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="BasicEdit.pas">
+ <Form>BasicEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactEdit.pas">
+ <Form>ContactEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="PersonEdit.pas">
+ <Form>PersonEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="CompanyEdit.pas">
+ <Form>CompanyEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="DemoData.pas"/>
+ <DCCReference Include="ContactFilterEdit.pas">
+ <Form>ContactFilterEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="MainData.pas">
+ <Form>MainDataModule</Form>
+ <DesignClass>TDataModule</DesignClass>
+ </DCCReference>
+ <DCCReference Include="ContactBrowse.pas">
+ <Form>ContactBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="CompanyBrowse.pas">
+ <Form>CompanyBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="PerformanceView.pas">
+ <Form>PerformanceViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="Welcome.pas">
+ <Form>WelcomeForm</Form>
+ </DCCReference>
+ <DCCReference Include="PersonBrowse.pas">
+ <Form>PersonBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="BasicBrowse.pas">
+ <Form>BasicBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="CountryBrowse.pas">
+ <Form>CountryBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="DemoDataRequest.pas">
+ <Form>DemoDataRequestForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactSort.pas">
+ <Form>ContactSortForm</Form>
+ </DCCReference>
+ <DCCReference Include="CategoryBrowse.pas">
+ <Form>CategoryBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="HelpView.pas">
+ <Form>HelpViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="QueryView.pas">
+ <Form>QueryViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="RandomData.pas"/>
+ <DCCReference Include="Stopwatch.pas"/>
+ <DCCReference Include="Utility.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')"/>
+ </Project>
Modified: trunk/Demos/PrimerCross/PrimerExternal.xml
===================================================================
--- trunk/Demos/PrimerCross/PrimerExternal.xml 2009-07-27 13:24:38 UTC (rev 812)
+++ trunk/Demos/PrimerCross/PrimerExternal.xml 2009-08-05 10:57:00 UTC (rev 813)
@@ -1,11 +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>
-</TInstantConnectionDefs>
\ No newline at end of file
+<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
Added: trunk/Demos/PrimerCross/Primer_D2009.dpr
===================================================================
--- trunk/Demos/PrimerCross/Primer_D2009.dpr (rev 0)
+++ trunk/Demos/PrimerCross/Primer_D2009.dpr 2009-08-05 10:57:00 UTC (rev 813)
@@ -0,0 +1,80 @@
+(*
+ * InstantObjects
+ * Primer Demo - with "internal storage" of Part and Parts
+ * Model.pas unit is located in Model folder
+ *
+ *)
+
+(* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is: Seleqt InstantObjects
+ *
+ * The Initial Developer of the Original Code is: Seleqt
+ *
+ * Portions created by the Initial Developer are Copyright (C) 2001-2003
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Carlo Barazzetta, Nando Dessena
+ *
+ * ***** END LICENSE BLOCK ***** *)
+
+program Primer_D2009;
+
+{$IFDEF LINUX}
+{$I '../../Source/InstantDefines.inc'}
+{$ELSE}
+{$I '..\..\Source\InstantDefines.inc'}
+{$ENDIF}
+
+
+uses
+ Forms,
+ Main in 'Main.pas' {MainForm},
+ Model in 'Model\Model.pas',
+ ContactView in 'ContactView.pas' {ContactViewForm: TFrame},
+ BasicView in 'BasicView.pas' {BasicViewForm: TFrame},
+ BasicEdit in 'BasicEdit.pas' {BasicEditForm},
+ ContactEdit in 'ContactEdit.pas' {ContactEditForm},
+ PersonEdit in 'PersonEdit.pas' {PersonEditForm},
+ CompanyEdit in 'CompanyEdit.pas' {CompanyEditForm},
+ DemoData in 'DemoData.pas',
+ ContactFilterEdit in 'ContactFilterEdit.pas' {ContactFilterEditForm},
+ MainData in 'MainData.pas' {MainDataModule: TDataModule},
+ ContactBrowse in 'ContactBrowse.pas' {ContactBrowseForm},
+ CompanyBrowse in 'CompanyBrowse.pas' {CompanyBrowseForm},
+ PerformanceView in 'PerformanceView.pas' {PerformanceViewForm: TFrame},
+ Welcome in 'Welcome.pas' {WelcomeForm},
+ PersonBrowse in 'PersonBrowse.pas' {PersonBrowseForm},
+ BasicBrowse in 'BasicBrowse.pas' {BasicBrowseForm},
+ CountryBrowse in 'CountryBrowse.pas' {CountryBrowseForm},
+ DemoDataRequest in 'DemoDataRequest.pas' {DemoDataRequestForm},
+ ContactSort in 'ContactSort.pas' {ContactSortForm},
+ CategoryBrowse in 'CategoryBrowse.pas' {CategoryBrowseForm},
+ HelpView in 'HelpView.pas' {HelpViewForm: TFrame},
+ QueryView in 'QueryView.pas' {QueryViewForm: TFrame},
+ RandomData in 'RandomData.pas',
+ Stopwatch in 'Stopwatch.pas',
+ Utility in 'Utility.pas';
+
+{$R *.res}
+{$R *.mdr} {Model}
+
+begin
+ Application.Initialize;
+ Application.Title := 'InstantObjects Primer Demo (Delphi 2009 version)';
+ Application.CreateForm(TMainForm, MainForm);
+ Application.CreateForm(TMainDataModule, MainDataModule);
+ Application.Run;
+end.
Property changes on: trunk/Demos/PrimerCross/Primer_D2009.dpr
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Demos/PrimerCross/Primer_D2009.dproj
===================================================================
--- trunk/Demos/PrimerCross/Primer_D2009.dproj (rev 0)
+++ trunk/Demos/PrimerCross/Primer_D2009.dproj 2009-08-05 10:57:00 UTC (rev 813)
@@ -0,0 +1,184 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{d197a2d4-31b9-43b1-8070-3f804d86e53f}</ProjectGuid>
+ <MainSource>Primer_D2009.dpr</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>Primer.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_DependencyCheckOutputName>Primer_D2009.exe</DCC_DependencyCheckOutputName>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ResourcePath)</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ObjPath)</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_IncludePath)</DCC_IncludePath>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_DebugDCUs>true</DCC_DebugDCUs>
+ <Version>7.0</Version>
+ <DCC_Define>DEBUG;IO_STATEMENT_LOGGING;$(DCC_Define)</DCC_Define>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ResourcePath)</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_ObjPath)</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\ADO;..\..\Source\Brokers\BDE;..\..\Source\Brokers\DBX;..\..\Source\Brokers\IBX;..\..\Source\Brokers\XML;..\..\Source\Catalogs\IBFb;..\..\Source\Catalogs\MSSql;..\..\Source\Catalogs\MySql;$(DCC_IncludePath)</DCC_IncludePath>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>VCLApplication</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <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">2</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">1030</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">InstantObjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">Primer Demo</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright">MPL public license</VersionInfoKeys>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName"/>
+ <VersionInfoKeys Name="ProductVersion">2.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">Primer_D2009.dpr</Source>
+ </Source>
+ </Delphi.Personality>
+ <ModelSupport>False</ModelSupport>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <ItemGroup>
+ <DelphiCompile Include="Primer_D2009.dpr">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="Main.pas">
+ <Form>MainForm</Form>
+ </DCCReference>
+ <DCCReference Include="Model\Model.pas"/>
+ <DCCReference Include="ContactView.pas">
+ <Form>ContactViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="BasicView.pas">
+ <Form>BasicViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="BasicEdit.pas">
+ <Form>BasicEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactEdit.pas">
+ <Form>ContactEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="PersonEdit.pas">
+ <Form>PersonEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="CompanyEdit.pas">
+ <Form>CompanyEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="DemoData.pas"/>
+ <DCCReference Include="ContactFilterEdit.pas">
+ <Form>ContactFilterEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="MainData.pas">
+ <Form>MainDataModule</Form>
+ <DesignClass>TDataModule</DesignClass>
+ </DCCReference>
+ <DCCReference Include="ContactBrowse.pas">
+ <Form>ContactBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="CompanyBrowse.pas">
+ <Form>CompanyBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="PerformanceView.pas">
+ <Form>PerformanceViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="Welcome.pas">
+ <Form>WelcomeForm</Form>
+ </DCCReference>
+ <DCCReference Include="PersonBrowse.pas">
+ <Form>PersonBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="BasicBrowse.pas">
+ <Form>BasicBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="CountryBrowse.pas">
+ <Form>CountryBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="DemoDataRequest.pas">
+ <Form>DemoDataRequestForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactSort.pas">
+ <Form>ContactSortForm</Form>
+ </DCCReference>
+ <DCCReference Include="CategoryBrowse.pas">
+ <Form>CategoryBrowseForm</Form>
+ </DCCReference>
+ <DCCReference Include="HelpView.pas">
+ <Form>HelpViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="QueryView.pas">
+ <Form>QueryViewForm</Form>
+ <DesignClass>TFrame</DesignClass>
+ </DCCReference>
+ <DCCReference Include="RandomData.pas"/>
+ <DCCReference Include="Stopwatch.pas"/>
+ <DCCReference Include="Utility.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')"/>
+ </Project>
Property changes on: trunk/Demos/PrimerCross/Primer_D2009.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Demos/PrimerCross/Primer_D2009.mdr
===================================================================
(Binary files differ)
Property changes on: trunk/Demos/PrimerCross/Primer_D2009.mdr
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Demos/PrimerCross/Primer_D2009.res
===================================================================
(Binary files differ)
Property changes on: trunk/Demos/PrimerCross/Primer_D2009.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Demos/PrimerCross/Primer_D2009.xml
===================================================================
--- trunk/Demos/PrimerCross/Primer_D2009.xml (rev 0)
+++ trunk/Demos/PrimerCross/Primer_D2009.xml 2009-08-05 10:57:00 UTC (rev 813)
@@ -0,0 +1 @@
+<TInstantConnectionDefs><TInstantXMLConnectionDef><Name>XMLDB</Name><IsBuilt>TRUE</IsBuilt><RootFolder>C:\Users\nandod\Work\Projects\instantobjects\Demos\PrimerCross\XMLDB</RootFolder></TInstantXMLConnectionDef></TInstantConnectionDefs>
\ No newline at end of file
Property changes on: trunk/Demos/PrimerCross/Primer_D2009.xml
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Modified: trunk/Source/Brokers/ADO/InstantADO.pas
===================================================================
--- trunk/Source/Brokers/ADO/InstantADO.pas 2009-07-27 13:24:38 UTC (rev 812)
+++ trunk/Source/Brokers/ADO/InstantADO.pas 2009-08-05 10:57:00 UTC (rev 813)
@@ -109,7 +109,6 @@
function CreateDataSet: TDataSet; override;
function CreateNavigationalLinkResolver(const ATableName: string):
TInstantNavigationalLinkResolver; override;
- function Find(const AClassName, AObjectId: string): Boolean;
function Locate(const AClassName, AObjectId: string): Boolean; override;
public
function FormatTableName(const ATableName: string): string; virtual;
@@ -827,48 +826,6 @@
Result := TInstantADOLinkResolver.Create(Self, ATableName);
end;
-function TInstantADOResolver.Find(const AClassName,
- AObjectId: string): Boolean;
-var
- LocateSet: _RecordSet;
- Criteria: string;
- Bm: OleVariant;
- SkipCount: Integer;
-begin
- with DataSet do
- begin
- LocateSet := RecordSet.Clone(adLockReadOnly);
- Criteria := Format('%s=%s', [InstantIdFieldName, InstantQuote(AObjectId,'''')]);
- SkipCount := 0;
- Result := False;
- if not LocateSet.EOF then
- begin
- Bm := LocateSet.Bookmark;
- while not LocateSet.EOF do
- begin
- LocateSet.Find(Criteria, SkipCount, adSearchForward, Bm);
- Result := not LocateSet.EOF;
- if Result then
- begin
- Bm := LocateSet.Bookmark;
- Result := LocateSet.Fields[InstantClassFieldName].Value = AClassName;
- if Result then
- begin
- GotoBookmark(@Bm);
- if Recordset.BOF then
- begin
- Result := False;
- CursorPosChanged;
- end;
- Break;
- end;
- end;
- SkipCount := 1;
- end;
- end;
- end;
-end;
-
function TInstantADOResolver.FormatTableName(
const ATableName: string): string;
begin
@@ -894,8 +851,6 @@
with DataSet do
if Supports([coSeek]) then
Result := Seek(KeyVals)
- else if Supports([coFind]) then
- Result := Find(AClassName, AObjectId)
else
Result := Locate(InstantIndexFieldNames, KeyVals, []);
end;
Modified: trunk/Source/Brokers/XML/InstantXML.pas
===================================================================
--- trunk/Source/Brokers/XML/InstantXML.pas 2009-07-27 13:24:38 UTC (rev 812)
+++ trunk/Source/Brokers/XML/InstantXML.pas 2009-08-05 10:57:00 UTC (rev 813)
@@ -229,6 +229,7 @@
FParamsObject: TParams;
FStorageNames: TStringList;
FObjectClassNames: TStringList;
+ FIQLCommand: TInstantIQLCommand;
procedure DestroyObjectReferenceList;
function GetObjectReferenceCount: Integer;
function GetObjectReferenceList: TObjectList;
@@ -236,10 +237,16 @@
// Creates an object reference for each item in AFileList that represents
// an object of a class included in FObjectClassNames.
procedure InitObjectReferences(const AFileList: TStrings);
+
+ procedure SortObjectReferences;
function GetParamsObject: TParams;
function GetConnector: TInstantXMLConnector;
procedure SetStorageNames(const Value: TStringList);
procedure SetObjectClassNames(const Value: TStringList);
+ function SortCompareMethod(Holder, Obj1, Obj2: TInstantObject): Integer;
+ procedure CreateIQLCommand;
+ procedure QuickSortObjectReferenceList(List: TList; L, R: Integer;
+ Compare: TInstantSortCompare);
protected
class function TranslatorClass: TInstantRelationalTranslatorClass; override;
function GetActive: Boolean; override;
@@ -319,7 +326,7 @@
uses
SysUtils, InstantConsts, InstantClasses, TypInfo, InstantXMLCatalog,
- InstantXMLConnectionDefEdit,
+ InstantXMLConnectionDefEdit, InstantUtils,
{$IFDEF MSWINDOWS}
{$IFNDEF D6+}
FileCtrl,
@@ -799,6 +806,7 @@
FObjectClassNames := TStringList.Create;
FObjectClassNames.Sorted := True;
FObjectClassNames.Duplicates := dupIgnore;
+ FIQLCommand := TInstantIQLCommand.Create(nil);
end;
destructor TInstantXMLQuery.Destroy;
@@ -807,6 +815,7 @@
FParamsObject.Free;
FreeAndNil(FStorageNames);
FreeAndNil(FObjectClassNames);
+ FreeAndNil(FIQLCommand);
inherited;
end;
@@ -965,16 +974,33 @@
vFileList: TStringList;
begin
inherited;
+ CreateIQLCommand;
+
vFileList := TStringList.Create;
try
Connector.Connection.Open;
Connector.Connection.LoadFileList(vFileList, FStorageNames);
InitObjectReferences(vFileList);
+
+ if Assigned(FIQLCommand.Order) then
+ SortObjectReferences;
finally
vFileList.Free;
end;
end;
+procedure TInstantXMLQuery.CreateIQLCommand;
+var
+ LReader: TInstantIQLReader;
+begin
+ LReader := TInstantIQLReader.Create(TStringStream.Create(Command{$IFDEF D12+}, TEncoding.Unicode{$ENDIF}), True);
+ try
+ LReader.ReadObject(FIQLCommand);
+ finally
+ FreeAndNil(LReader);
+ end;
+end;
+
procedure TInstantXMLQuery.InternalReleaseObject(AObject: TObject);
var
Index: Integer;
@@ -1018,6 +1044,70 @@
FStorageNames.Assign(Value);
end;
+procedure TInstantXMLQuery.QuickSortObjectReferenceList(List: TList;
+ L, R: Integer; Compare: TInstantSortCompare);
+var
+ I, J, P: Integer;
+begin
+ repeat
+ I := L;
+ J := R;
+ P := (L + R) shr 1;
+ repeat
+ while Compare(nil,
+ TInstantObjectReference(List[I]).Dereference,
+ TInstantObjectReference(List[P]).Dereference) < 0 do
+ Inc(I);
+ while Compare(nil,
+ TInstantObjectReference(List[J]).Dereference,
+ TInstantObjectReference(List[P]).Dereference) > 0 do
+ Dec(J);
+ if I <= J then
+ begin
+ List.Exchange(I, J);
+ if P = I then
+ P := J
+ else if P = J then
+ P := I;
+ Inc(I);
+ Dec(J);
+ end;
+ until I > J;
+ if L < J then
+ QuickSortObjectReferenceList(List, L, J, Compare);
+ L := I;
+ until I >= R;
+end;
+
+procedure TInstantXMLQuery.SortObjectReferences;
+begin
+ if ObjectReferenceList.Count > 0 then
+ QuickSortObjectReferenceList(ObjectReferenceList, 0,
+ Pred(ObjectReferenceList.Count), SortCompareMethod);
+end;
+
+function TInstantXMLQuery.SortCompareMethod(Holder, Obj1,
+ Obj2: TInstantObject): Integer;
+var
+ LOrder: TInstantIQLOrder;
+begin
+ Assert(Assigned(FIQLCommand.Order));
+
+ Result := 0;
+ LOrder := FIQLCommand.Order;
+ Assert(Assigned(LOrder.OrderSpec));
+ while Assigned(LOrder) do
+ begin
+ Result := InstantCompareObjects(Obj1, Obj2,
+ LOrder.OrderSpec.Expression.Text, []);
+ if LOrder.OrderSpec.OrderDirection = odDesc then
+ Result := -Result;
+ if Result <> 0 then
+ Break;
+ LOrder := LOrder.NextOrder;
+ end;
+end;
+
class function TInstantXMLQuery.TranslatorClass:
TInstantRelationalTranslatorClass;
begin
@@ -1039,11 +1129,34 @@
end;
end;
+{$IFDEF UNICODE}
function TXMLFilesAccessor.SaveInstantObjectToXmlFile(
const AObject: TInstantObject; const AFileName: string): Boolean;
var
strstream: TStringStream;
fileStream: TFileStream;
+ DataStr: UTF8String;
+begin
+ strstream := TStringStream.Create('', TEncoding.UTF8);
+ try
+ InstantWriteObject(strStream, sfXML, AObject);
+ DataStr := XML_UTF8_HEADER + UTF8String(strStream.DataString);
+ finally
+ strStream.Free;
+ end;
+ fileStream := TFileStream.Create(AFileName, fmCreate);
+ try
+ Result := fileStream.Write(DataStr[1], Length(DataStr)) <> 0;
+ finally
+ fileStream.Free;
+ end;
+end;
+{$ELSE}
+function TXMLFilesAccessor.SaveInstantObjectToXmlFile(
+ const AObject: TInstantObject; const AFileName: string): Boolean;
+var
+ strstream: TStringStream;
+ fileStream: TFileStream;
DataStr: string;
begin
strstream := TStringStream.Create('');
@@ -1067,6 +1180,7 @@
fileStream.Free;
end;
end;
+{$ENDIF}
function RemoveXmlDeclaration(const xmlString: string): string;
var
@@ -1079,10 +1193,30 @@
Result := xmlString;
end;
+{$IFDEF UNICODE}
function TXMLFilesAccessor.LoadInstantObjectFromXmlFile(
const AObject: TInstantObject; const AObjectId, AFileName: string): Boolean;
var
fileStream: TFileStream;
+begin
+ if FileExists(AFileName) then
+ begin
+ fileStream := TFileStream.Create(AFileName, fmOpenRead);
+ try
+ InstantReadObject(fileStream, sfXML, AObject);
+ Result := True;
+ finally
+ fileStream.Free;
+ end;
+ end
+ else
+ Result := False;
+end;
+{$ELSE}
+function TXMLFilesAccessor.LoadInstantObjectFromXmlFile(
+ const AObject: TInstantObject; const AObjectId, AFileName: string): Boolean;
+var
+ fileStream: TFileStream;
strUtf8: string;
strstream: TStringStream;
begin
@@ -1090,8 +1224,6 @@
try
SetLength(strUtf8, fileStream.Size);
Result := fileStream.Read(strUtf8[1], fileStream.Size) <> 0;
- // skip XML HEADER (until the parser is "dumb")
- strUtf8 := RemoveXmlDeclaration(strUtf8);
finally
fileStream.Free;
end;
@@ -1108,6 +1240,7 @@
strstream.Free;
end;
end;
+{$ENDIF}
function TXMLFilesAccessor.LocateInstantObjectXmlFile(const AObjectClassName,
AObjectId, AFileName: string): Boolean;
Modified: trunk/Source/Core/InstantClasses.pas
===================================================================
--- trunk/Source/Core/InstantClasses.pas 2009-07-27 13:24:38 UTC (rev 812)
+++ trunk/Source/Core/InstantClasses.pas 2009-08-05 10:57:00 UTC (rev 813)
@@ -193,8 +193,9 @@
procedure WriteCharSet(CharSet: TChars);
procedure WriteObject(AObject: TPersistent); virtual;
procedure WriteProperties(AObject: TPersistent);
- // Might be needed for versions of Delphi <7?
- //procedure WriteString(const Value: string);
+ {$IFNDEF UNICODE}
+ procedure WriteString(const Value: string);
+ {$ENDIF}
procedure WriteValue(Value: TValueType);
property Stream: TStream read FStream;
end;
@@ -249,10 +250,10 @@
{$ELSE}
TInstantStringStream = class(TInstantStream)
private
- function GetDataString: AnsiString;
+ function GetDataString: string;
public
constructor Create(AString: string);
- property DataString: AnsiString read GetDataString;
+ property DataString: string read GetDataString;
end;
{$ENDIF}
@@ -268,7 +269,6 @@
function GetWriter: TAbstractWriter;
procedure SetPosition(Value: Integer);
procedure WriteString(const S: string);
- procedure WriteWideString(const S: WideString);
protected
property TagStack: TStringList read GetTagStack;
property Writer: TAbstractWriter read GetWriter;
@@ -295,14 +295,15 @@
function GetPosition: Integer;
function GetReader: TAbstractReader;
function GetToken: TInstantXMLToken;
- function ReadEscapedChar: AnsiChar;
+ function ReadEscapedChar: Char;
procedure SetPosition(const Value: Integer);
protected
procedure CheckToken(AToken: TInstantXMLToken);
- function PeekChar: AnsiChar;
- function ReadChar: AnsiChar;
+ function PeekChar: Char;
+ function ReadChar: Char;
procedure SkipBlanks;
property Reader: TAbstractReader read GetReader;
+ function IsProcessingInstruction(const ATagName: string): Boolean;
public
constructor Create(Stream: TStream);
destructor Destroy; override;
@@ -313,6 +314,7 @@
function ReadTag: string;
function ReadTagName: string;
procedure Skip;
+ procedure SkipProcessingInstruction;
property Eof: Boolean read GetEof;
property Position: Integer read GetPosition write SetPosition;
property Stream: TStream read FStream;
@@ -503,6 +505,7 @@
begin
with TInstantTextToBinaryConverter.Create(Input, Output) do
try
+ Processor.SkipProcessingInstruction;
Convert;
finally
Free;
@@ -513,15 +516,37 @@
AObject: TPersistent = nil): TPersistent;
var
MemoryStream: TMemoryStream;
+ {$IFDEF UNICODE}
+ StringStream: TStringStream;
+ UStringStream: TStringStream;
+ {$ENDIF}
begin
if Format = sfBinary then
Result := InstantReadObjectFromStream(Stream, AObject)
else begin
MemoryStream := TMemoryStream.Create;
try
+ {$IFDEF UNICODE}
+ StringStream := TStringStream.Create('', TEncoding.UTF8);
+ try
+ StringStream.CopyFrom(Stream, Stream.Size);
+ UStringStream := TStringStream.Create(StringStream.DataString, TEncoding.Unicode);
+ try
+ UStringStream.Position := 0;
+ InstantObjectTextToBinary(UStringStream, MemoryStream);
+ MemoryStream.Position := 0;
+ Result := InstantReadObjectFromStream(MemoryStream, AObject);
+ finally
+ UStringStream.Free;
+ end;
+ finally
+ StringStream.Free;
+ end;
+ {$ELSE}
InstantObjectTextToBinary(Stream, MemoryStream);
MemoryStream.Position := 0;
Result := InstantReadObjectFromStream(MemoryStream, AObject);
+ {$ENDIF}
finally
MemoryStream.Free;
end;
@@ -1058,7 +1083,7 @@
WriteListEnd;
end;
-(* Might be needed for versions of Delphi <7?
+{$IFNDEF UNICODE}
procedure TInstantWriter.WriteString(const Value: string);
var
L: Integer;
@@ -1075,7 +1100,7 @@
end;
Write(Pointer(Value)^, L);
end;
-*)
+{$ENDIF}
procedure TInstantWriter.WriteValue(Value: TValueType);
begin
@@ -1291,7 +1316,7 @@
end;
{$IFNDEF UNICODE}
-function TInstantStringStream.GetDataString: AnsiString;
+function TInstantStringStream.GetDataString: string;
var
Pos: Integer;
begin
@@ -1424,17 +1449,9 @@
U: UTF8String;
begin
U := UTF8String(S);
- Writer.Write(U[1], Length(U));
+ Writer.Write(Pointer(U)^, Length(U));
end;
-procedure TInstantXMLProducer.WriteWideString(const S: WideString);
-var
- U : UTF8String;
-begin
- U := UTF8Encode(S);
- Writer.Write(U[1], Length(U));
-end;
-
{ TInstantXMLProcessor }
procedure TInstantXMLProcessor.CheckToken(AToken: TInstantXMLToken);
@@ -1481,7 +1498,7 @@
Result := xtData;
end;
-function TInstantXMLProcessor.PeekChar: AnsiChar;
+function TInstantXMLProcessor.PeekChar: Char;
var
Pos: Integer;
begin
@@ -1517,9 +1534,9 @@
end;
end;
-function TInstantXMLProcessor.ReadChar: AnsiChar;
+function TInstantXMLProcessor.ReadChar: Char;
begin
- Reader.Read(Result, SizeOf(AnsiChar));
+ Reader.Read(Result, SizeOf(Char));
end;
function TInstantXMLProcessor.ReadData: string;
@@ -1533,11 +1550,11 @@
procedure TInstantXMLProcessor.ReadData(Stream: TStream);
var
- C: AnsiChar;
+ C: Char;
CharSize: Integer;
begin
CheckToken(xtData);
- CharSize := SizeOf(AnsiChar);
+ CharSize := SizeOf(Char);
while not (PeekChar = InstantTagStart) do
begin
C := ReadEscapedChar;
@@ -1545,7 +1562,7 @@
end;
end;
-function TInstantXMLProcessor.ReadEscapedChar: AnsiChar;
+function TInstantXMLProcessor.ReadEscapedChar: Char;
procedure UnEscape;
var
@@ -1559,7 +1576,7 @@
Result := ReadChar;
end;
if S[1] = '#' then
- Result := AnsiChar(StrToInt(Copy(S, 2, Length(S) - 1)))
+ Result := Char(StrToInt(Copy(S, 2, Length(S) - 1)))
else if S = 'quot' then
Result := #34
else if S = 'amp' then
@@ -1580,7 +1597,7 @@
function TInstantXMLProcessor.ReadTag: string;
var
- C: AnsiChar;
+ C: Char;
Pos: Integer;
begin
Pos := Position;
@@ -1595,7 +1612,16 @@
repeat
C := ReadChar;
Result := Result + C;
- until C = InstantTagEnd;
+ until (C = InstantTagEnd) or (C = ' ');
+ // Skip attributes.
+ if C = ' ' then
+ begin
+ Delete(Result, Length(Result), 1);
+ Result := Result + InstantTagEnd;
+ repeat
+ C := ReadChar;
+ until C = InstantTagEnd;
+ end;
end;
function TInstantXMLProcessor.ReadTagName: string;
@@ -1637,6 +1663,20 @@
ReadChar;
end;
+procedure TInstantXMLProcessor.SkipProcessingInstruction;
+var
+ LNextTagName: string;
+begin
+ LNextTagName := PeekTagName;
+ if IsProcessingInstruction(LNextTagName) then
+ ReadTag;
+end;
+
+function TInstantXMLProcessor.IsProcessingInstruction(const ATagName: string): Boolean;
+begin
+ Result := (ATagName <> '') and (ATagName[1] = InstantProcessingInstructionStart);
+end;
+
{ TInstantConverter }
procedure TInstantConverter.Convert;
@@ -1749,7 +1789,7 @@
vaString, vaLString:
Producer.WriteEscapedData(Reader.ReadString);
vaUTF8String:
- Producer.WriteWideString(Reader.ReadWideString);
+ Producer.WriteEscapedData(Reader.ReadString);
vaSet:
begin
Reader.ReadValue;
@@ -1845,7 +1885,7 @@
procedure ConvertProperty(PropInfo: PPropInfo);
var
I: Integer;
- PropName, ValueStr: String;
+ PropName, ValueStr: string;
S: TStringList;
begin
PropName := Processor.ReadTagName;
@@ -1906,7 +1946,7 @@
begin
TagName := Processor.PeekTagName;
PropInfo := InstantGetPropInfo(ObjectClass, TagName);
- if Assigned(Propinfo) then
+ if Assigned(PropInfo) then
ConvertProperty(PropInfo)
else
Processor.Skip;
@@ -1919,7 +1959,6 @@
Result := Processor.Stream;
end;
-
function TInstantTextToBinaryConverter.GetOutput: TStream;
begin
Result := Writer.Stream;
Modified: trunk/Source/Core/InstantConsts.pas
===================================================================
--- trunk/Source/Core/InstantConsts.pas 2009-07-27 13:24:38 UTC (rev 812)
+++ trunk/Source/Core/InstantConsts.pas 2009-08-05 10:57:00 UTC (rev 813)
@@ -52,6 +52,7 @@
InstantNowString = 'NOW';
InstantTagEnd = '>';
InstantTagStart = '<';
+ InstantProcessingInstructionStart = '?';
InstantTimeString = 'TIME';
InstantTrueString = 'TRUE';
InstantEndTagFormat= InstantTagStart + '/%s' + InstantTagEnd;
@@ -182,6 +183,7 @@
SUnexpectedAttributeClass = 'Unexpected attribute class for %s(''%s'') in class %s. Expected attribute class %s';
SUnexpectedClass = 'Unexpected class %s. Expected class %s';
SUnexpectedToken = 'Unexpected token ''%s''. Expected token ''%s''';
+ SUnexpectedTagName = 'Unexpected tag name ''%s''';
SUnknownAttributeClass = 'Unknown attribute class for attribute %s(''%s'')';
SUnspecifiedCommand = 'Command is not specified';
SUnsupportedColumnSkipped = 'Skipped column %s.%s. Unsupported type %s.';
Modified: trunk/Source/Core/InstantPersistence.pas
=====...
[truncated message content] |
|
From: <na...@us...> - 2009-07-27 13:24:45
|
Revision: 812
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=812&view=rev
Author: nandod
Date: 2009-07-27 13:24:38 +0000 (Mon, 27 Jul 2009)
Log Message:
-----------
* Updated package group (WIP).
Modified Paths:
--------------
trunk/Source/PackageGroups/D2009/CorePackages.groupproj
Modified: trunk/Source/PackageGroups/D2009/CorePackages.groupproj
===================================================================
--- trunk/Source/PackageGroups/D2009/CorePackages.groupproj 2009-07-27 12:49:16 UTC (rev 811)
+++ trunk/Source/PackageGroups/D2009/CorePackages.groupproj 2009-07-27 13:24:38 UTC (rev 812)
@@ -24,6 +24,15 @@
<Projects Include="..\..\..\Tests\TestIO_D2009.dproj">
<Dependencies/>
</Projects>
+ <Projects Include="S:\InstantObjectsUnicode\Source\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\IOADO.dproj">
+ <Dependencies/>
+ </Projects>
+ <Projects Include="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\DclIOADO.dproj">
+ <Dependencies/>
+ </Projects>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Default.Personality.12</Borland.Personality>
@@ -95,14 +104,41 @@
<Target Name="TestIO_D2009:Make">
<MSBuild Targets="Make" Projects="..\..\..\Tests\TestIO_D2009.dproj"/>
</Target>
+ <Target Name="IOMSSqlCatalog">
+ <MSBuild Projects="S:\InstantObjectsUnicode\Source\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMSSqlCatalog:Clean">
+ <MSBuild Targets="Clean" Projects="S:\InstantObjectsUnicode\Source\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj"/>
+ </Target>
+ <Target Name="IOMSSqlCatalog:Make">
+ <MSBuild Targets="Make" Projects="S:\InstantObjectsUnicode\Source\Catalogs\MSSql\D2009\IOMSSqlCatalog.dproj"/>
+ </Target>
+ <Target Name="IOADO">
+ <MSBuild Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\IOADO.dproj"/>
+ </Target>
+ <Target Name="IOADO:Clean">
+ <MSBuild Targets="Clean" Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\IOADO.dproj"/>
+ </Target>
+ <Target Name="IOADO:Make">
+ <MSBuild Targets="Make" Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\IOADO.dproj"/>
+ </Target>
+ <Target Name="DclIOADO">
+ <MSBuild Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\DclIOADO.dproj"/>
+ </Target>
+ <Target Name="DclIOADO:Clean">
+ <MSBuild Targets="Clean" Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\DclIOADO.dproj"/>
+ </Target>
+ <Target Name="DclIOADO:Make">
+ <MSBuild Targets="Make" Projects="S:\InstantObjectsUnicode\Source\Brokers\ADO\D2009\DclIOADO.dproj"/>
+ </Target>
<Target Name="Build">
- <CallTarget Targets="IOCore;DclIOCore;IOBDE;DclIOBDE;IOXML;DclIOXML;TestIO_D2009"/>
+ <CallTarget Targets="IOCore;DclIOCore;IOBDE;DclIOBDE;IOXML;DclIOXML;TestIO_D2009;IOMSSqlCatalog;IOADO;DclIOADO"/>
</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;IOBDE:Clean;DclIOBDE:Clean;IOXML:Clean;DclIOXML:Clean;TestIO_D2009:Clean;IOMSSqlCatalog:Clean;IOADO:Clean;DclIOADO: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;IOBDE:Make;DclIOBDE:Make;IOXML:Make;DclIOXML:Make;TestIO_D2009:Make;IOMSSqlCatalog:Make;IOADO:Make;DclIOADO:Make"/>
</Target>
<Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
</Project>
|
|
From: <car...@us...> - 2009-07-27 12:49:29
|
Revision: 811
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=811&view=rev
Author: carlobar
Date: 2009-07-27 12:49:16 +0000 (Mon, 27 Jul 2009)
Log Message:
-----------
Added packages for Delphi 2009
Added Paths:
-----------
trunk/Demos/Intro/Intro_D2009.mdr
trunk/Demos/Intro/Intro_D2009.res
trunk/Source/Brokers/ADO/D2009/
trunk/Source/Brokers/ADO/D2009/DclIOADO.dpk
trunk/Source/Brokers/ADO/D2009/DclIOADO.dproj
trunk/Source/Brokers/ADO/D2009/DclIOADO.res
trunk/Source/Brokers/ADO/D2009/IOADO.dpk
trunk/Source/Brokers/ADO/D2009/IOADO.dproj
trunk/Source/Brokers/ADO/D2009/IOADO.res
trunk/Source/Brokers/BDE/D2009/
trunk/Source/Brokers/BDE/D2009/DclIOBDE.dpk
trunk/Source/Brokers/BDE/D2009/DclIOBDE.dproj
trunk/Source/Brokers/BDE/D2009/DclIOBDE.res
trunk/Source/Brokers/BDE/D2009/IOBDE.dpk
trunk/Source/Brokers/BDE/D2009/IOBDE.dproj
trunk/Source/Brokers/BDE/D2009/IOBDE.res
trunk/Source/Brokers/DBX/D2009/
trunk/Source/Brokers/DBX/D2009/DclIODBX.dpk
trunk/Source/Brokers/DBX/D2009/DclIODBX.dproj
trunk/Source/Brokers/DBX/D2009/DclIODBX.res
trunk/Source/Brokers/DBX/D2009/IODBX.dpk
trunk/Source/Brokers/DBX/D2009/IODBX.dproj
trunk/Source/Brokers/DBX/D2009/IODBX.res
trunk/Source/Brokers/IBX/D2009/
trunk/Source/Brokers/IBX/D2009/DclIOIBX.dpk
trunk/Source/Brokers/IBX/D2009/DclIOIBX.dproj
trunk/Source/Brokers/IBX/D2009/DclIOIBX.res
trunk/Source/Brokers/IBX/D2009/IOIBX.dpk
trunk/Source/Brokers/IBX/D2009/IOIBX.dproj
trunk/Source/Brokers/IBX/D2009/IOIBX.res
trunk/Source/Catalogs/IBFb/D2009/
trunk/Source/Catalogs/IBFb/D2009/IOIBFbCatalog.dpk
trunk/Source/Catalogs/IBFb/D2009/IOIBFbCatalog.dproj
trunk/Source/Catalogs/IBFb/D2009/IOIBFbCatalog.res
trunk/Source/Catalogs/MSSql/D2009/
trunk/Source/Catalogs/MSSql/D2009/IOMSSqlCatalog.dpk
trunk/Source/Catalogs/MSSql/D2009/IOMSSqlCatalog.dproj
trunk/Source/Catalogs/MSSql/D2009/IOMSSqlCatalog.res
trunk/Source/Catalogs/MySQL/D2009/
trunk/Source/Catalogs/MySQL/D2009/IOMySQLCatalog.dpk
trunk/Source/Catalogs/MySQL/D2009/IOMySQLCatalog.dproj
trunk/Source/Catalogs/MySQL/D2009/IOMySQLCatalog.res
trunk/Source/Core/D2009/
trunk/Source/Core/D2009/IOCore.dpk
trunk/Source/Core/D2009/IOCore.dproj
trunk/Source/Core/D2009/IOCore.res
trunk/Source/Design/D2009/
trunk/Source/Design/D2009/DclIOCore.dpk
trunk/Source/Design/D2009/DclIOCore.dproj
trunk/Source/Design/D2009/DclIOCore.res
Property Changed:
----------------
trunk/Tests/
Added: trunk/Demos/Intro/Intro_D2009.mdr
===================================================================
(Binary files differ)
Property changes on: trunk/Demos/Intro/Intro_D2009.mdr
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Demos/Intro/Intro_D2009.res
===================================================================
(Binary files differ)
Property changes on: trunk/Demos/Intro/Intro_D2009.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/ADO/D2009/DclIOADO.dpk
===================================================================
--- trunk/Source/Brokers/ADO/D2009/DclIOADO.dpk (rev 0)
+++ trunk/Source/Brokers/ADO/D2009/DclIOADO.dpk 2009-07-27 12:49:16 UTC (rev 811)
@@ -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 2009)'}
+{$LIBSUFFIX '_D12'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ IOADO;
+
+contains
+ InstantADOReg in '..\InstantADOReg.pas';
+
+end.
Property changes on: trunk/Source/Brokers/ADO/D2009/DclIOADO.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/ADO/D2009/DclIOADO.dproj
===================================================================
--- trunk/Source/Brokers/ADO/D2009/DclIOADO.dproj (rev 0)
+++ trunk/Source/Brokers/ADO/D2009/DclIOADO.dproj 2009-07-27 12:49:16 UTC (rev 811)
@@ -0,0 +1,122 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{83fb334c-a8d7-4ac2-a891-1c5f3085aaf1}</ProjectGuid>
+ <MainSource>DclIOADO.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Users\nandod\Documents\RAD Studio\5.0\Bpl\DclIOADO_D11.bpl</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_ImageBase>00400000</DCC_ImageBase>
+ <DesignOnlyPackage>true</DesignOnlyPackage>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\6.0\Bpl\DclIOADO_D12.bpl</DCC_DependencyCheckOutputName>
+ <DCC_RangeChecking>true</DCC_RangeChecking>
+ <DCC_Description>InstantObjects ADO Design-Time Support (Delphi 2009)</DCC_Description>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <DCC_IntegerOverflowCheck>true</DCC_IntegerOverflowCheck>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ <GenPackage>true</GenPackage>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_IntegerOverflowCheck>True</DCC_IntegerOverflowCheck>
+ <DCC_RangeChecking>True</DCC_RangeChecking>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ <DCC_IntegerOverflowCheck>True</DCC_IntegerOverflowCheck>
+ <DCC_RangeChecking>True</DCC_RangeChecking>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">DclIOADO.dpk</Source>
+ </Source>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <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"/>
+ <DCCReference Include="..\InstantADO.dcr"/>
+ <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')"/>
+ </Project>
Property changes on: trunk/Source/Brokers/ADO/D2009/DclIOADO.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/ADO/D2009/DclIOADO.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/ADO/D2009/DclIOADO.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/ADO/D2009/IOADO.dpk
===================================================================
--- trunk/Source/Brokers/ADO/D2009/IOADO.dpk (rev 0)
+++ trunk/Source/Brokers/ADO/D2009/IOADO.dpk 2009-07-27 12:49:16 UTC (rev 811)
@@ -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 2009)'}
+{$LIBSUFFIX '_D12'}
+{$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/D2009/IOADO.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/ADO/D2009/IOADO.dproj
===================================================================
--- trunk/Source/Brokers/ADO/D2009/IOADO.dproj (rev 0)
+++ trunk/Source/Brokers/ADO/D2009/IOADO.dproj 2009-07-27 12:49:16 UTC (rev 811)
@@ -0,0 +1,127 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{92084594-c0f7-4f8d-8e98-b5fdc630773c}</ProjectGuid>
+ <MainSource>IOADO.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\nandod\Documenti\RAD Studio\Projects\Bpl\IOADO_D11.bpl</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_ImageBase>00400000</DCC_ImageBase>
+ <DesignOnlyPackage>false</DesignOnlyPackage>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\6.0\Bpl\IOADO_D12.bpl</DCC_DependencyCheckOutputName>
+ <DCC_Description>InstantObjects ADO Run-Time Support (Delphi 2009)</DCC_Description>
+ <RuntimeOnlyPackage>true</RuntimeOnlyPackage>
+ <DCC_WriteableConstants>true</DCC_WriteableConstants>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_WriteableConstants>True</DCC_WriteableConstants>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ <DCC_WriteableConstants>True</DCC_WriteableConstants>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">IOADO.dpk</Source>
+ </Source>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <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')"/>
+ </Project>
Property changes on: trunk/Source/Brokers/ADO/D2009/IOADO.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/ADO/D2009/IOADO.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/ADO/D2009/IOADO.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/BDE/D2009/DclIOBDE.dpk
===================================================================
--- trunk/Source/Brokers/BDE/D2009/DclIOBDE.dpk (rev 0)
+++ trunk/Source/Brokers/BDE/D2009/DclIOBDE.dpk 2009-07-27 12:49:16 UTC (rev 811)
@@ -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 2009)'}
+{$LIBSUFFIX '_D12'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ vcldb,
+ bdertl,
+ IOCore,
+ IOBDE;
+
+contains
+ InstantBDEReg in '..\InstantBDEReg.pas';
+
+end.
Property changes on: trunk/Source/Brokers/BDE/D2009/DclIOBDE.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/BDE/D2009/DclIOBDE.dproj
===================================================================
--- trunk/Source/Brokers/BDE/D2009/DclIOBDE.dproj (rev 0)
+++ trunk/Source/Brokers/BDE/D2009/DclIOBDE.dproj 2009-07-27 12:49:16 UTC (rev 811)
@@ -0,0 +1,122 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{54d8280d-11e9-4256-ba0a-30fc942591e7}</ProjectGuid>
+ <MainSource>DclIOBDE.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Users\nandod\Documents\RAD Studio\5.0\Bpl\DclIOBDE_D11.bpl</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_ImageBase>00400000</DCC_ImageBase>
+ <DesignOnlyPackage>true</DesignOnlyPackage>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\6.0\Bpl\DclIOBDE_D12.bpl</DCC_DependencyCheckOutputName>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <DCC_Description>InstantObjects BDE Design-Time Support (Delphi 2009)</DCC_Description>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">DclIOBDE.dpk</Source>
+ </Source>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <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"/>
+ <DCCReference Include="..\InstantBDE.dcr"/>
+ <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')"/>
+ </Project>
Property changes on: trunk/Source/Brokers/BDE/D2009/DclIOBDE.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/BDE/D2009/DclIOBDE.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/BDE/D2009/DclIOBDE.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/BDE/D2009/IOBDE.dpk
===================================================================
--- trunk/Source/Brokers/BDE/D2009/IOBDE.dpk (rev 0)
+++ trunk/Source/Brokers/BDE/D2009/IOBDE.dpk 2009-07-27 12:49:16 UTC (rev 811)
@@ -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 2009)'}
+{$LIBSUFFIX '_D12'}
+{$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/D2009/IOBDE.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/BDE/D2009/IOBDE.dproj
===================================================================
--- trunk/Source/Brokers/BDE/D2009/IOBDE.dproj (rev 0)
+++ trunk/Source/Brokers/BDE/D2009/IOBDE.dproj 2009-07-27 12:49:16 UTC (rev 811)
@@ -0,0 +1,124 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{340a6323-81f2-431c-adca-555d83affb71}</ProjectGuid>
+ <MainSource>IOBDE.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\nandod\Documenti\RAD Studio\Projects\Bpl\IOBDE_D11.bpl</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_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\6.0\Bpl\IOBDE_D12.bpl</DCC_DependencyCheckOutputName>
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <RuntimeOnlyPackage>true</RuntimeOnlyPackage>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <DCC_Description>InstantObjects BDE Run-Time Support (Delphi 2009)</DCC_Description>
+ <DesignOnlyPackage>false</DesignOnlyPackage>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">IOBDE.dpk</Source>
+ </Source>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <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')"/>
+ </Project>
Property changes on: trunk/Source/Brokers/BDE/D2009/IOBDE.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/BDE/D2009/IOBDE.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/BDE/D2009/IOBDE.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/DBX/D2009/DclIODBX.dpk
===================================================================
--- trunk/Source/Brokers/DBX/D2009/DclIODBX.dpk (rev 0)
+++ trunk/Source/Brokers/DBX/D2009/DclIODBX.dpk 2009-07-27 12:49:16 UTC (rev 811)
@@ -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 2009)'}
+{$LIBSUFFIX '_D12'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ vcl,
+ dbrtl,
+ dbexpress,
+ IOCore,
+ IODBX;
+
+contains
+ InstantDBXReg in '..\InstantDBXReg.pas';
+
+end.
Property changes on: trunk/Source/Brokers/DBX/D2009/DclIODBX.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/DBX/D2009/DclIODBX.dproj
===================================================================
--- trunk/Source/Brokers/DBX/D2009/DclIODBX.dproj (rev 0)
+++ trunk/Source/Brokers/DBX/D2009/DclIODBX.dproj 2009-07-27 12:49:16 UTC (rev 811)
@@ -0,0 +1,123 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{bc9f1633-bb3a-4ca0-a1a2-54d81b4dac06}</ProjectGuid>
+ <MainSource>DclIODBX.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Users\nandod\Documents\RAD Studio\5.0\Bpl\DclIODBX_D11.bpl</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_ImageBase>00400000</DCC_ImageBase>
+ <DesignOnlyPackage>true</DesignOnlyPackage>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\6.0\Bpl\DclIODBX_D12.bpl</DCC_DependencyCheckOutputName>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <DCC_Description>InstantObjects dbExpress Design-Time Support (Delphi 2009)</DCC_Description>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">DclIODBX.dpk</Source>
+ </Source>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <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"/>
+ <DCCReference Include="..\InstantDBX.dcr"/>
+ <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')"/>
+ </Project>
Property changes on: trunk/Source/Brokers/DBX/D2009/DclIODBX.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/DBX/D2009/DclIODBX.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/DBX/D2009/DclIODBX.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/DBX/D2009/IODBX.dpk
===================================================================
--- trunk/Source/Brokers/DBX/D2009/IODBX.dpk (rev 0)
+++ trunk/Source/Brokers/DBX/D2009/IODBX.dpk 2009-07-27 12:49:16 UTC (rev 811)
@@ -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 2009)'}
+{$LIBSUFFIX '_D12'}
+{$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/D2009/IODBX.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/DBX/D2009/IODBX.dproj
===================================================================
--- trunk/Source/Brokers/DBX/D2009/IODBX.dproj (rev 0)
+++ trunk/Source/Brokers/DBX/D2009/IODBX.dproj 2009-07-27 12:49:16 UTC (rev 811)
@@ -0,0 +1,124 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{937e931f-66ed-4188-a98b-6065ae9d04e7}</ProjectGuid>
+ <MainSource>IODBX.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Users\nandod\Documents\RAD Studio\5.0\Bpl\IODBX_D11.bpl</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_ImageBase>00400000</DCC_ImageBase>
+ <DesignOnlyPackage>false</DesignOnlyPackage>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\6.0\Bpl\IODBX_D12.bpl</DCC_DependencyCheckOutputName>
+ <DCC_Description>InstantObjects dbExpress Run-Time Support (Delphi 2009)</DCC_Description>
+ <RuntimeOnlyPackage>true</RuntimeOnlyPackage>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">IODBX.dpk</Source>
+ </Source>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <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"/>
+ <DCCReference Include="IOCore.dcp"/>
+ <DCCReference Include="IOIBFbCatalog.dcp"/>
+ <DCCReference Include="IOMSSqlCatalog.dcp"/>
+ <DCCReference Include="IOMySQLCatalog.dcp"/>
+ <DCCReference Include="..\InstantDBXConnectionDefEdit.pas">
+ <Form>InstantDBXConnectionDefEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantDBX.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')"/>
+ </Project>
Property changes on: trunk/Source/Brokers/DBX/D2009/IODBX.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/DBX/D2009/IODBX.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/DBX/D2009/IODBX.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/IBX/D2009/DclIOIBX.dpk
===================================================================
--- trunk/Source/Brokers/IBX/D2009/DclIOIBX.dpk (rev 0)
+++ trunk/Source/Brokers/IBX/D2009/DclIOIBX.dpk 2009-07-27 12:49:16 UTC (rev 811)
@@ -0,0 +1,41 @@
+package DclIOIBX;
+
+{$R *.res}
+{$R '..\InstantIBX.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 OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DESCRIPTION 'InstantObjects IBX Design-Time Support (Delphi 2009)'}
+{$LIBSUFFIX '_D12'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ vcldb,
+ ibxpress,
+ IOCore,
+ IOIBX;
+
+contains
+ InstantIBXReg in '..\InstantIBXReg.pas';
+
+end.
Property changes on: trunk/Source/Brokers/IBX/D2009/DclIOIBX.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/IBX/D2009/DclIOIBX.dproj
===================================================================
--- trunk/Source/Brokers/IBX/D2009/DclIOIBX.dproj (rev 0)
+++ trunk/Source/Brokers/IBX/D2009/DclIOIBX.dproj 2009-07-27 12:49:16 UTC (rev 811)
@@ -0,0 +1,123 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{738c4394-cfb9-4a4d-b4ed-ba6a287ef455}</ProjectGuid>
+ <MainSource>DclIOIBX.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Users\nandod\Documents\RAD Studio\5.0\Bpl\DclIOIBX_D11.bpl</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_ImageBase>00400000</DCC_ImageBase>
+ <DesignOnlyPackage>true</DesignOnlyPackage>
+ <DCC_Description>InstantObjects IBX Design-Time Support (Delphi 2009)</DCC_Description>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\6.0\Bpl\DclIOIBX_D12.bpl</DCC_DependencyCheckOutputName>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ <GenPackage>true</GenPackage>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">DclIOIBX.dpk</Source>
+ </Source>
+ <Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dcloffice2k120.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dclofficexp120.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
+ </Excluded_Packages>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <ItemGroup>
+ <DelphiCompile Include="DclIOIBX.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="..\InstantIBX.dcr"/>
+ <DCCReference Include="vcl.dcp"/>
+ <DCCReference Include="vcldb.dcp"/>
+ <DCCReference Include="ibxpress.dcp"/>
+ <DCCReference Include="IOCore.dcp"/>
+ <DCCReference Include="IOIBX.dcp"/>
+ <DCCReference Include="..\InstantIBXReg.pas"/>
+ <DCCReference Include="..\InstantIBX.dcr"/>
+ <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')"/>
+ </Project>
Property changes on: trunk/Source/Brokers/IBX/D2009/DclIOIBX.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/IBX/D2009/DclIOIBX.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/IBX/D2009/DclIOIBX.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/IBX/D2009/IOIBX.dpk
===================================================================
--- trunk/Source/Brokers/IBX/D2009/IOIBX.dpk (rev 0)
+++ trunk/Source/Brokers/IBX/D2009/IOIBX.dpk 2009-07-27 12:49:16 UTC (rev 811)
@@ -0,0 +1,41 @@
+package IOIBX;
+
+{$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 IBX Run-Time Support (Delphi 2009)'}
+{$LIBSUFFIX '_D12'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ vcldb,
+ ibxpress,
+ IOCore,
+ IOIBFbCatalog;
+
+contains
+ InstantIBXConnectionDefEdit in '..\InstantIBXConnectionDefEdit.pas' {InstantIBXConnectionDefEditForm},
+ InstantIBX in '..\InstantIBX.pas';
+
+end.
Property changes on: trunk/Source/Brokers/IBX/D2009/IOIBX.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/IBX/D2009/IOIBX.dproj
===================================================================
--- trunk/Source/Brokers/IBX/D2009/IOIBX.dproj (rev 0)
+++ trunk/Source/Brokers/IBX/D2009/IOIBX.dproj 2009-07-27 12:49:16 UTC (rev 811)
@@ -0,0 +1,121 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{5acbe1c1-475f-42c8-b3cc-807abb508b3d}</ProjectGuid>
+ <MainSource>IOIBX.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\nandod\Documenti\RAD Studio\Projects\Bpl\IOIBX_D11.bpl</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_ImageBase>00400000</DCC_ImageBase>
+ <DesignOnlyPackage>false</DesignOnlyPackage>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\6.0\Bpl\IOIBX_D12.bpl</DCC_DependencyCheckOutputName>
+ <DCC_Description>InstantObjects IBX Run-Time Support (Delphi 2009)</DCC_Description>
+ <RuntimeOnlyPackage>true</RuntimeOnlyPackage>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</VersionInfo>
+ <Versi...
[truncated message content] |
|
From: <na...@us...> - 2009-07-12 15:54:35
|
Revision: 810
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=810&view=rev
Author: nandod
Date: 2009-07-12 15:54:33 +0000 (Sun, 12 Jul 2009)
Log Message:
-----------
* reverted to rev. 806 due to wrong svn configuration.
Modified Paths:
--------------
trunk/Source/Core/D2007/IOCore.dpk
trunk/Source/Core/D2007/IOCore.dproj
trunk/Source/Core/InstantClasses.pas
trunk/Source/Core/InstantCode.pas
trunk/Source/Core/InstantCommand.pas
trunk/Source/Core/InstantMetadata.pas
trunk/Source/Core/InstantPersistence.pas
trunk/Source/Core/InstantTextFiler.pas
trunk/Source/Core/InstantUtils.pas
trunk/Source/Design/D2007/DclIOCore.dpk
trunk/Source/Design/D2007/DclIOCore.dproj
trunk/Source/Design/InstantCommandEditor.pas
Modified: trunk/Source/Core/D2007/IOCore.dpk
===================================================================
--- trunk/Source/Core/D2007/IOCore.dpk 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Core/D2007/IOCore.dpk 2009-07-12 15:54:33 UTC (rev 810)
@@ -22,8 +22,8 @@
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $400000}
-{$DESCRIPTION 'InstantObjects Run-Time Package (Delphi 2009)'}
-{$LIBSUFFIX '_D12'}
+{$DESCRIPTION 'InstantObjects Run-Time Package (Delphi 2007)'}
+{$LIBSUFFIX '_D11'}
{$RUNONLY}
{$IMPLICITBUILD OFF}
Modified: trunk/Source/Core/D2007/IOCore.dproj
===================================================================
--- trunk/Source/Core/D2007/IOCore.dproj 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Core/D2007/IOCore.dproj 2009-07-12 15:54:33 UTC (rev 810)
@@ -1,150 +1,71 @@
- <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <ProjectGuid>{82e2f82a-6598-4acf-bbca-e2315e5938f6}</ProjectGuid>
- <MainSource>IOCore.dpk</MainSource>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
- <DCC_DependencyCheckOutputName>..\..\..\..\..\..\..\Documents\RAD Studio\5.0\Bpl\IOCore_D11.bpl</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_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\6.0\Bpl\IOCore_D12.bpl</DCC_DependencyCheckOutputName>
- <DCC_ImageBase>00400000</DCC_ImageBase>
- <RuntimeOnlyPackage>true</RuntimeOnlyPackage>
- <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
- <DCC_Description>InstantObjects Run-Time Package (Delphi 2009)</DCC_Description>
- <DesignOnlyPackage>false</DesignOnlyPackage>
- <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
- <GenDll>true</GenDll>
- <GenPackage>true</GenPackage>
- <DllSuffix>_D12</DllSuffix>
- <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Cfg_1)'!=''">
- <Version>7.0</Version>
- <DCC_DebugInformation>False</DCC_DebugInformation>
- <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
- <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
- <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
- <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Cfg_2)'!=''">
- <Version>7.0</Version>
- <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
- </PropertyGroup>
- <ProjectExtensions>
- <Borland.Personality>Delphi.Personality.12</Borland.Personality>
- <Borland.ProjectType>Package</Borland.ProjectType>
- <BorlandProject>
- <Delphi.Personality>
- <Compiler>
- <Compiler Name="UsePackages">False</Compiler>
- <Compiler Name="Packages"/>
- </Compiler>
- <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">2</VersionInfo>
- <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
- <VersionInfo Name="CodePage">1252</VersionInfo>
- </VersionInfo>
- <VersionInfoKeys>
- <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
- <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
- <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
- <VersionInfoKeys Name="InternalName"/>
- <VersionInfoKeys Name="LegalCopyright"/>
- <VersionInfoKeys Name="LegalTrademarks"/>
- <VersionInfoKeys Name="OriginalFilename"/>
- <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
- <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
- <VersionInfoKeys Name="Comments"/>
- </VersionInfoKeys>
- <Source>
- <Source Name="MainSource">IOCore.dpk</Source>
- </Source>
- </Delphi.Personality>
- </BorlandProject>
- <ProjectFileVersion>12</ProjectFileVersion>
- </ProjectExtensions>
- <ItemGroup>
- <DelphiCompile Include="IOCore.dpk">
- <MainSource>MainSource</MainSource>
- </DelphiCompile>
- <DCCReference Include="vcl.dcp"/>
- <DCCReference Include="vcldb.dcp"/>
- <DCCReference Include="rtl.dcp"/>
- <DCCReference Include="..\InstantUtils.pas"/>
- <DCCReference Include="..\InstantClasses.pas"/>
- <DCCReference Include="..\InstantConsts.pas"/>
- <DCCReference Include="..\InstantRtti.pas"/>
- <DCCReference Include="..\InstantCommand.pas"/>
- <DCCReference Include="..\InstantPersistence.pas"/>
- <DCCReference Include="..\InstantExplorer.pas"/>
- <DCCReference Include="..\InstantDesignHook.pas"/>
- <DCCReference Include="..\InstantCode.pas"/>
- <DCCReference Include="..\InstantTextFiler.pas"/>
- <DCCReference Include="..\InstantPresentation.pas"/>
- <DCCReference Include="..\InstantAccessors.pas"/>
- <DCCReference Include="..\InstantConnectionManagerFormUnit.pas">
- <Form>InstantConnectionManagerForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantConnectionManager.pas"/>
- <DCCReference Include="..\InstantImageUtils.pas"/>
- <DCCReference Include="..\InstantPump.pas"/>
- <DCCReference Include="..\InstantDBBuild.pas"/>
- <DCCReference Include="..\InstantDBEvolution.pas"/>
- <DCCReference Include="..\InstantCustomDBEvolverFormUnit.pas">
- <Form>InstantCustomDBEvolverForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantDBEvolverFormUnit.pas">
- <Form>InstantDBEvolverForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantDBBuilderFormUnit.pas">
- <Form>InstantDBBuilderForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantTypes.pas"/>
- <DCCReference Include="..\InstantBrokers.pas"/>
- <DCCReference Include="..\InstantMetadata.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')"/>
- </Project>
+<?xml version="1.0" encoding="utf-8"?>
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{82e2f82a-6598-4acf-bbca-e2315e5938f6}</ProjectGuid>
+ <MainSource>IOCore.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>..\..\..\..\..\..\..\Documents\RAD Studio\5.0\Bpl\IOCore_D11.bpl</DCC_DependencyCheckOutputName>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+<BorlandProject><Delphi.Personality><Compiler><Compiler Name="UsePackages">False</Compiler><Compiler Name="Packages"></Compiler></Compiler><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">InstantObjects Run-Time Package (Delphi 2007)</Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">True</Package_Options><Package_Options Name="LibSuffix">_D11</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">2</VersionInfo><VersionInfo Name="MinorVer">1</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">1040</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys><VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">IOCore.dpk</Source></Source>
+ </Delphi.Personality></BorlandProject></BorlandProject>
+ </ProjectExtensions>
+ <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
+ <ItemGroup>
+ <DelphiCompile Include="IOCore.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="..\..\PackageGroups\D2007\rtl.dcp" />
+ <DCCReference Include="..\..\PackageGroups\D2007\vcl.dcp" />
+ <DCCReference Include="..\..\PackageGroups\D2007\vcldb.dcp" />
+ <DCCReference Include="..\InstantAccessors.pas" />
+ <DCCReference Include="..\InstantBrokers.pas" />
+ <DCCReference Include="..\InstantClasses.pas" />
+ <DCCReference Include="..\InstantCode.pas" />
+ <DCCReference Include="..\InstantCommand.pas" />
+ <DCCReference Include="..\InstantConnectionManager.pas" />
+ <DCCReference Include="..\InstantConnectionManagerFormUnit.pas">
+ <Form>InstantConnectionManagerForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantConsts.pas" />
+ <DCCReference Include="..\InstantCustomDBEvolverFormUnit.pas">
+ <Form>InstantCustomDBEvolverForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantDBBuild.pas" />
+ <DCCReference Include="..\InstantDBBuilderFormUnit.pas">
+ <Form>InstantDBBuilderForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantDBEvolution.pas" />
+ <DCCReference Include="..\InstantDBEvolverFormUnit.pas">
+ <Form>InstantDBEvolverForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantDesignHook.pas" />
+ <DCCReference Include="..\InstantExplorer.pas" />
+ <DCCReference Include="..\InstantImageUtils.pas" />
+ <DCCReference Include="..\InstantMetadata.pas" />
+ <DCCReference Include="..\InstantPersistence.pas" />
+ <DCCReference Include="..\InstantPresentation.pas" />
+ <DCCReference Include="..\InstantPump.pas" />
+ <DCCReference Include="..\InstantRtti.pas" />
+ <DCCReference Include="..\InstantTextFiler.pas" />
+ <DCCReference Include="..\InstantTypes.pas" />
+ <DCCReference Include="..\InstantUtils.pas" />
+ </ItemGroup>
+</Project>
\ No newline at end of file
Modified: trunk/Source/Core/InstantClasses.pas
===================================================================
--- trunk/Source/Core/InstantClasses.pas 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Core/InstantClasses.pas 2009-07-12 15:54:33 UTC (rev 810)
@@ -50,12 +50,7 @@
InstantBufferSize = 4096;
type
-{$IFDEF D12+}
- TChars = set of AnsiChar;
-{$ELSE}
TChars = set of Char;
-{$ENDIF}
-
{$IFDEF LINUX}
TDate = type TDateTime;
TTime = type TDateTime;
@@ -1391,11 +1386,7 @@
for I := 1 to Length(Data) do
begin
C := Data[I];
-{$IFDEF D12+}
- if CharInSet(C, [#34, #38, #39, #60, #62]) then
-{$ELSE}
if C in [#34, #38, #39, #60, #62] then
-{$ENDIF}
begin
case C of
#34:
Modified: trunk/Source/Core/InstantCode.pas
===================================================================
--- trunk/Source/Core/InstantCode.pas 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Core/InstantCode.pas 2009-07-12 15:54:33 UTC (rev 810)
@@ -2689,12 +2689,7 @@
begin
Name := Reader.ReadToken;
Reader.SkipSpace;
-
-{$IFDEF D12+}
- Result := CharInSet(Reader.ReadChar, [':', ',']);
-{$ELSE}
Result := Reader.ReadChar in [':', ','];
-{$ENDIF}
end;
procedure TInstantCodeSymbol.InternalRead(Reader: TInstantCodeReader);
@@ -3938,28 +3933,14 @@
if Copy(Result, i, 1) = 's' then
begin
If (i > 3) and (Copy(Result, i - 2, 3) = 'ies') and
-{$IFDEF D12+}
- not (CharInSet(Result[i - 3], Vowels)) then
-{$ELSE}
not (Result[i - 3] in Vowels) then
-{$ENDIF}
begin
Result := Copy(Result, 1, i - 3) + 'y';
end
else If (i > 3) and (Copy(Result, i - 1, 2) = 'es') and
-{$IFDEF D12+}
- (CharInSet(Result[i - 2], SpChars)) then
-{$ELSE}
(Result[i - 2] in SpChars) then
-{$ENDIF}
begin
- if (Result[i - 2] = 'h') and
-{$IFDEF D12+}
- not (CharInSet(Result[i - 3], ['c', 's'])) then
-{$ELSE}
- not (Result[i - 3] in ['c', 's']) then
-{$ENDIF}
-
+ if (Result[i - 2] = 'h') and not (Result[i - 3] in ['c', 's']) then
begin
//not ch or sh
Result := Copy(Result, 1, i - 1);
@@ -5780,11 +5761,7 @@
Reader.SkipSpace;
Reader.ReadToken;
Reader.SkipSpace;
-{$IFDEF D12+}
- Result := CharInSet(Reader.NextChar, [':', '=']);
-{$ELSE}
Result := Reader.NextChar in [':', '='];
-{$ENDIF}
finally
Reader.Position := SavePos;
end;
@@ -8711,11 +8688,7 @@
if FCode^[I] = #10 then
begin
Inc(I);
-{$IFDEF D12+}
- while CharInSet(FCode^[I], [' ', #9]) do
-{$ELSE}
while FCode^[I] in [' ', #9] do
-{$ENDIF}
begin
Result := Result + FCode^[I];
Inc(I);
Modified: trunk/Source/Core/InstantCommand.pas
===================================================================
--- trunk/Source/Core/InstantCommand.pas 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Core/InstantCommand.pas 2009-07-12 15:54:33 UTC (rev 810)
@@ -1121,12 +1121,7 @@
begin
Token := Reader.ReadToken;
Result := IsConstantToken(Token) or InstantIsNumeric(Token) or
- ((Length(Token) > 0) and
-{$IFDEF D12+}
- (CharInSet(Token[1], ['"', '''', '['])));
-{$ELSE}
- (Token[1] in ['"', '''', '[']));
-{$ENDIF}
+ ((Length(Token) > 0) and (Token[1] in ['"', '''', '[']));
end;
procedure TInstantIQLConstant.InternalClear;
Modified: trunk/Source/Core/InstantMetadata.pas
===================================================================
--- trunk/Source/Core/InstantMetadata.pas 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Core/InstantMetadata.pas 2009-07-12 15:54:33 UTC (rev 810)
@@ -67,7 +67,7 @@
protected
function InternalEquals(const Other: TInstantMetadata): Boolean; virtual;
public
- function Equals(const Other: TInstantMetadata): Boolean; {$IFDEF D12+} reintroduce; {$ENDIF}
+ function Equals(const Other: TInstantMetadata): Boolean;
property Collection: TInstantMetadatas read GetCollection
write SetCollection;
end;
Modified: trunk/Source/Core/InstantPersistence.pas
===================================================================
--- trunk/Source/Core/InstantPersistence.pas 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Core/InstantPersistence.pas 2009-07-12 15:54:33 UTC (rev 810)
@@ -129,8 +129,8 @@
function Dereference(Connector: TInstantConnector = nil;
AOwnsInstance: Boolean = True; Retry: Boolean = False): TInstantObject;
procedure DestroyInstance;
- function Equals(const AObjectClassName, AObjectId: string): Boolean; {$IFDEF D12+}reintroduce;{$ENDIF} overload;
- function Equals(AObject: TInstantObject): Boolean; {$IFDEF D12+}reintroduce;{$ENDIF} overload;
+ function Equals(const AObjectClassName, AObjectId: string): Boolean; overload;
+ function Equals(AObject: TInstantObject): Boolean; overload;
function HasInstance: Boolean;
function HasReference: Boolean;
function IsBroken: Boolean;
@@ -1622,12 +1622,7 @@
begin
Result := True;
for I := 0 to Pred(BufferLength div SizeOf(Char)) do
- if (ValidChars <> []) and not
-{$IFDEF D12+}
- (CharInSet(Buffer[I], ValidChars + [#8, #10, #13]))
-{$ELSE}
- (Buffer[I] in ValidChars + [#8, #10, #13])
-{$ENDIF} then
+ if (ValidChars <> []) and not (Buffer[I] in ValidChars + [#8, #10, #13]) then
begin
Result := False;
InvalidChar := Buffer[I];
Modified: trunk/Source/Core/InstantTextFiler.pas
===================================================================
--- trunk/Source/Core/InstantTextFiler.pas 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Core/InstantTextFiler.pas 2009-07-12 15:54:33 UTC (rev 810)
@@ -236,11 +236,7 @@
function TInstantTextFiler.IsSpace(Ch: Char): Boolean;
begin
-{$IFDEF D12+}
- Result := CharInSet(Ch, [' ', #9, #10, #13]);
-{$ELSE}
Result := Ch in [' ', #9, #10, #13];
-{$ENDIF}
end;
function TInstantTextFiler.IsText(Ch: Char): Boolean;
@@ -248,11 +244,7 @@
Result := ((Ch >= 'a') and (Ch <= 'z'))
or ((Ch >= 'A') and (Ch <= 'Z'))
or ((Ch >= '0') and (Ch <= '9'))
-{$IFDEF D12+}
- or (CharInSet(Ch, ['#', '_']));
-{$ELSE}
or (Ch in ['#', '_']);
-{$ENDIF}
end;
procedure TInstantTextFiler.Reset;
@@ -333,12 +325,7 @@
function TInstantTextReader.IsStringDelimiter(Ch: Char): Boolean;
begin
- Result := ConstAware and
-{$IFDEF D12+}
- (CharInSet(Ch, ['''', '"']));
-{$ELSE}
- (Ch in ['''', '"']);
-{$ENDIF}
+ Result := ConstAware and (Ch in ['''', '"']);
end;
function TInstantTextReader.NextChar: Char;
Modified: trunk/Source/Core/InstantUtils.pas
===================================================================
--- trunk/Source/Core/InstantUtils.pas 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Core/InstantUtils.pas 2009-07-12 15:54:33 UTC (rev 810)
@@ -112,11 +112,7 @@
begin
Result := '';
for I := 0 to 255 do
-{$IFDEF D12+}
- if CharInSet(Chr(I), C) then
-{$ELSE}
if Chr(I) in C then
-{$ENDIF}
S := S + Chr(I);
I := 1;
L := Length(S);
@@ -570,7 +566,7 @@
I: Integer;
begin
I := Pos;
- while (I <= Length(Str)) and not {$IFDEF D12+}CharInSet(Str[I], Delimiters){$ELSE}(Str[I] in Delimiters){$ENDIF} do
+ while (I <= Length(Str)) and not (Str[I] in Delimiters) do
Inc(I);
Result := Copy(Str, Pos, I - Pos);
if I <= Length(Str) then
Modified: trunk/Source/Design/D2007/DclIOCore.dpk
===================================================================
--- trunk/Source/Design/D2007/DclIOCore.dpk 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Design/D2007/DclIOCore.dpk 2009-07-12 15:54:33 UTC (rev 810)
@@ -23,8 +23,8 @@
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $400000}
-{$DESCRIPTION 'InstantObjects Design-Time Package (Delphi 2009)'}
-{$LIBSUFFIX '_D12'}
+{$DESCRIPTION 'InstantObjects Design-Time Package (Delphi 2007)'}
+{$LIBSUFFIX '_D11'}
{$DESIGNONLY}
{$IMPLICITBUILD OFF}
{$DEFINE DEBUG}
@@ -53,8 +53,7 @@
InstantReg in '..\InstantReg.pas',
InstantUnitSelect in '..\InstantUnitSelect.pas' {InstantUnitSelectForm},
InstantAttributeEditor in '..\InstantAttributeEditor.pas' {InstantAttributeEditorForm},
- InstantAbout in '..\InstantAbout.pas' {InstantAboutForm},
- InstantModelImport in '..\InstantModelImport.pas' {InstantModelImportForm};
+ InstantAbout in '..\InstantAbout.pas' {InstantAboutForm};
end.
Modified: trunk/Source/Design/D2007/DclIOCore.dproj
===================================================================
--- trunk/Source/Design/D2007/DclIOCore.dproj 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Design/D2007/DclIOCore.dproj 2009-07-12 15:54:33 UTC (rev 810)
@@ -1,166 +1,82 @@
- <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <ProjectGuid>{9b758a49-d140-45db-8681-01e49660a560}</ProjectGuid>
- <MainSource>DclIOCore.dpk</MainSource>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
- <DCC_DependencyCheckOutputName>..\..\..\..\..\..\..\Documents\RAD Studio\5.0\Bpl\DclIOCore_D11.bpl</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_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\6.0\Bpl\DclIOCore_D12.bpl</DCC_DependencyCheckOutputName>
- <DCC_ImageBase>00400000</DCC_ImageBase>
- <DCC_Description>InstantObjects Design-Time Package (Delphi 2009)</DCC_Description>
- <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
- <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
- <DesignOnlyPackage>true</DesignOnlyPackage>
- <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
- <GenDll>true</GenDll>
- <GenPackage>true</GenPackage>
- <DllSuffix>_D12</DllSuffix>
- <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Cfg_1)'!=''">
- <Version>7.0</Version>
- <DCC_DebugInformation>False</DCC_DebugInformation>
- <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
- <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
- <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
- <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Cfg_2)'!=''">
- <Version>7.0</Version>
- <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
- <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
- </PropertyGroup>
- <ProjectExtensions>
- <Borland.Personality>Delphi.Personality.12</Borland.Personality>
- <Borland.ProjectType>Package</Borland.ProjectType>
- <BorlandProject>
- <Delphi.Personality>
- <Compiler>
- <Compiler Name="UsePackages">False</Compiler>
- <Compiler Name="Packages"/>
- </Compiler>
- <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">2</VersionInfo>
- <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
- <VersionInfo Name="CodePage">1252</VersionInfo>
- </VersionInfo>
- <VersionInfoKeys>
- <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
- <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
- <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
- <VersionInfoKeys Name="InternalName"/>
- <VersionInfoKeys Name="LegalCopyright"/>
- <VersionInfoKeys Name="LegalTrademarks"/>
- <VersionInfoKeys Name="OriginalFilename"/>
- <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
- <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
- <VersionInfoKeys Name="Comments"/>
- </VersionInfoKeys>
- <Source>
- <Source Name="MainSource">DclIOCore.dpk</Source>
- </Source>
- </Delphi.Personality>
- <ModelSupport>False</ModelSupport>
- </BorlandProject>
- <ProjectFileVersion>12</ProjectFileVersion>
- </ProjectExtensions>
- <ItemGroup>
- <DelphiCompile Include="DclIOCore.dpk">
- <MainSource>MainSource</MainSource>
- </DelphiCompile>
- <DCCReference Include="..\..\Core\InstantPresentation.dcr"/>
- <DCCReference Include="designide.dcp"/>
- <DCCReference Include="vcldb.dcp"/>
- <DCCReference Include="rtl.dcp"/>
- <DCCReference Include="vcl.dcp"/>
- <DCCReference Include="dbrtl.dcp"/>
- <DCCReference Include="IOCore.dcp"/>
- <DCCReference Include="..\InstantWizard.pas"/>
- <DCCReference Include="..\InstantClassEditor.pas">
- <Form>InstantClassEditorForm</Form>
- <DesignClass>TIOBaseForm</DesignClass>
- </DCCReference>
- <DCCReference Include="..\InstantCommandEditor.pas">
- <Form>InstantCommandEditorForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantDesignResources.pas">
- <Form>InstantDesignResourceModule</Form>
- <DesignClass>TDataModule</DesignClass>
- </DCCReference>
- <DCCReference Include="..\InstantDesignTools.pas"/>
- <DCCReference Include="..\InstantDesignUtils.pas"/>
- <DCCReference Include="..\InstantDialog.pas">
- <Form>InstantDialogForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantDualList.pas">
- <Form>InstantDualListForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantEdit.pas">
- <Form>InstantEditForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantModelExpert.pas"/>
- <DCCReference Include="..\InstantModelExplorer.pas">
- <Form>InstantModelExplorerForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantOTA.pas"/>
- <DCCReference Include="..\InstantReg.pas"/>
- <DCCReference Include="..\InstantUnitSelect.pas">
- <Form>InstantUnitSelectForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantAttributeEditor.pas">
- <Form>InstantAttributeEditorForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantAbout.pas">
- <Form>InstantAboutForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantModelImport.pas">
- <Form>InstantModelImportForm</Form>
- </DCCReference>
- <DCCReference Include="..\..\Core\InstantPresentation.dcr"/>
- <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')"/>
- </Project>
+<?xml version="1.0" encoding="utf-8"?>
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{9b758a49-d140-45db-8681-01e49660a560}</ProjectGuid>
+ <MainSource>DclIOCore.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>..\..\..\..\..\..\..\Documents\RAD Studio\5.0\Bpl\DclIOCore_D11.bpl</DCC_DependencyCheckOutputName>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_Define>DEBUG</DCC_Define>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+<BorlandProject><Delphi.Personality><Compiler><Compiler Name="UsePackages">False</Compiler><Compiler Name="Packages"></Compiler></Compiler><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">InstantObjects Design-Time Package (Delphi 2007)</Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">True</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options><Package_Options Name="LibSuffix">_D11</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">2</VersionInfo><VersionInfo Name="MinorVer">1</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">1040</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys><VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">DclIOCore.dpk</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject>
+ </ProjectExtensions>
+ <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
+ <ItemGroup>
+ <DelphiCompile Include="DclIOCore.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="$(SystemRoot)\system32\dbrtl.dcp" />
+ <DCCReference Include="$(SystemRoot)\system32\designide.dcp" />
+ <DCCReference Include="$(SystemRoot)\system32\IOCore.dcp" />
+ <DCCReference Include="$(SystemRoot)\system32\rtl.dcp" />
+ <DCCReference Include="$(SystemRoot)\system32\vcl.dcp" />
+ <DCCReference Include="$(SystemRoot)\system32\vcldb.dcp" />
+ <DCCReference Include="..\..\Core\InstantPresentation.dcr" />
+ <DCCReference Include="..\..\Core\InstantPresentation.dcr" />
+ <DCCReference Include="..\InstantAbout.pas">
+ <Form>InstantAboutForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantAttributeEditor.pas">
+ <Form>InstantAttributeEditorForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantClassEditor.pas">
+ <Form>InstantClassEditorForm</Form>
+ <DesignClass>TIOBaseForm</DesignClass>
+ </DCCReference>
+ <DCCReference Include="..\InstantCommandEditor.pas">
+ <Form>InstantCommandEditorForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantDesignResources.pas">
+ <Form>InstantDesignResourceModule</Form>
+ <DesignClass>TDataModule</DesignClass>
+ </DCCReference>
+ <DCCReference Include="..\InstantDesignTools.pas" />
+ <DCCReference Include="..\InstantDesignUtils.pas" />
+ <DCCReference Include="..\InstantDialog.pas">
+ <Form>InstantDialogForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantDualList.pas">
+ <Form>InstantDualListForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantEdit.pas">
+ <Form>InstantEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantModelExpert.pas" />
+ <DCCReference Include="..\InstantModelExplorer.pas">
+ <Form>InstantModelExplorerForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantOTA.pas" />
+ <DCCReference Include="..\InstantReg.pas" />
+ <DCCReference Include="..\InstantUnitSelect.pas">
+ <Form>InstantUnitSelectForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantWizard.pas" />
+ </ItemGroup>
+</Project>
\ No newline at end of file
Modified: trunk/Source/Design/InstantCommandEditor.pas
===================================================================
--- trunk/Source/Design/InstantCommandEditor.pas 2009-07-09 21:40:48 UTC (rev 809)
+++ trunk/Source/Design/InstantCommandEditor.pas 2009-07-12 15:54:33 UTC (rev 810)
@@ -177,11 +177,7 @@
function IsSpace(Ch: Char): Boolean;
begin
-{$IFDEF D12+}
- Result := CharInSet(Ch, [' ', #9, #10, #13]);
-{$ELSE}
Result := Ch in [' ', #9, #10, #13];
-{$ENDIF}
end;
var
|
|
From: <wp...@us...> - 2009-07-09 21:40:59
|
Revision: 809
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=809&view=rev
Author: wp2udk
Date: 2009-07-09 21:40:48 +0000 (Thu, 09 Jul 2009)
Log Message:
-----------
Fixed some Delphi 2009 Unicode Compiler Warnings regarding the use of the Char data type in Sets.
Modified Paths:
--------------
trunk/Source/Core/InstantClasses.pas
trunk/Source/Core/InstantCode.pas
trunk/Source/Core/InstantCommand.pas
trunk/Source/Core/InstantMetadata.pas
trunk/Source/Core/InstantPersistence.pas
trunk/Source/Core/InstantTextFiler.pas
trunk/Source/Core/InstantUtils.pas
trunk/Source/Design/InstantCommandEditor.pas
Modified: trunk/Source/Core/InstantClasses.pas
===================================================================
--- trunk/Source/Core/InstantClasses.pas 2009-07-09 20:01:14 UTC (rev 808)
+++ trunk/Source/Core/InstantClasses.pas 2009-07-09 21:40:48 UTC (rev 809)
@@ -50,7 +50,12 @@
InstantBufferSize = 4096;
type
+{$IFDEF D12+}
+ TChars = set of AnsiChar;
+{$ELSE}
TChars = set of Char;
+{$ENDIF}
+
{$IFDEF LINUX}
TDate = type TDateTime;
TTime = type TDateTime;
@@ -1386,7 +1391,11 @@
for I := 1 to Length(Data) do
begin
C := Data[I];
+{$IFDEF D12+}
+ if CharInSet(C, [#34, #38, #39, #60, #62]) then
+{$ELSE}
if C in [#34, #38, #39, #60, #62] then
+{$ENDIF}
begin
case C of
#34:
Modified: trunk/Source/Core/InstantCode.pas
===================================================================
--- trunk/Source/Core/InstantCode.pas 2009-07-09 20:01:14 UTC (rev 808)
+++ trunk/Source/Core/InstantCode.pas 2009-07-09 21:40:48 UTC (rev 809)
@@ -2689,7 +2689,12 @@
begin
Name := Reader.ReadToken;
Reader.SkipSpace;
+
+{$IFDEF D12+}
+ Result := CharInSet(Reader.ReadChar, [':', ',']);
+{$ELSE}
Result := Reader.ReadChar in [':', ','];
+{$ENDIF}
end;
procedure TInstantCodeSymbol.InternalRead(Reader: TInstantCodeReader);
@@ -3933,14 +3938,28 @@
if Copy(Result, i, 1) = 's' then
begin
If (i > 3) and (Copy(Result, i - 2, 3) = 'ies') and
+{$IFDEF D12+}
+ not (CharInSet(Result[i - 3], Vowels)) then
+{$ELSE}
not (Result[i - 3] in Vowels) then
+{$ENDIF}
begin
Result := Copy(Result, 1, i - 3) + 'y';
end
else If (i > 3) and (Copy(Result, i - 1, 2) = 'es') and
+{$IFDEF D12+}
+ (CharInSet(Result[i - 2], SpChars)) then
+{$ELSE}
(Result[i - 2] in SpChars) then
+{$ENDIF}
begin
- if (Result[i - 2] = 'h') and not (Result[i - 3] in ['c', 's']) then
+ if (Result[i - 2] = 'h') and
+{$IFDEF D12+}
+ not (CharInSet(Result[i - 3], ['c', 's'])) then
+{$ELSE}
+ not (Result[i - 3] in ['c', 's']) then
+{$ENDIF}
+
begin
//not ch or sh
Result := Copy(Result, 1, i - 1);
@@ -5761,7 +5780,11 @@
Reader.SkipSpace;
Reader.ReadToken;
Reader.SkipSpace;
+{$IFDEF D12+}
+ Result := CharInSet(Reader.NextChar, [':', '=']);
+{$ELSE}
Result := Reader.NextChar in [':', '='];
+{$ENDIF}
finally
Reader.Position := SavePos;
end;
@@ -8688,7 +8711,11 @@
if FCode^[I] = #10 then
begin
Inc(I);
+{$IFDEF D12+}
+ while CharInSet(FCode^[I], [' ', #9]) do
+{$ELSE}
while FCode^[I] in [' ', #9] do
+{$ENDIF}
begin
Result := Result + FCode^[I];
Inc(I);
Modified: trunk/Source/Core/InstantCommand.pas
===================================================================
--- trunk/Source/Core/InstantCommand.pas 2009-07-09 20:01:14 UTC (rev 808)
+++ trunk/Source/Core/InstantCommand.pas 2009-07-09 21:40:48 UTC (rev 809)
@@ -1121,7 +1121,12 @@
begin
Token := Reader.ReadToken;
Result := IsConstantToken(Token) or InstantIsNumeric(Token) or
- ((Length(Token) > 0) and (Token[1] in ['"', '''', '[']));
+ ((Length(Token) > 0) and
+{$IFDEF D12+}
+ (CharInSet(Token[1], ['"', '''', '['])));
+{$ELSE}
+ (Token[1] in ['"', '''', '[']));
+{$ENDIF}
end;
procedure TInstantIQLConstant.InternalClear;
Modified: trunk/Source/Core/InstantMetadata.pas
===================================================================
--- trunk/Source/Core/InstantMetadata.pas 2009-07-09 20:01:14 UTC (rev 808)
+++ trunk/Source/Core/InstantMetadata.pas 2009-07-09 21:40:48 UTC (rev 809)
@@ -67,7 +67,7 @@
protected
function InternalEquals(const Other: TInstantMetadata): Boolean; virtual;
public
- function Equals(const Other: TInstantMetadata): Boolean;
+ function Equals(const Other: TInstantMetadata): Boolean; {$IFDEF D12+} reintroduce; {$ENDIF}
property Collection: TInstantMetadatas read GetCollection
write SetCollection;
end;
Modified: trunk/Source/Core/InstantPersistence.pas
===================================================================
--- trunk/Source/Core/InstantPersistence.pas 2009-07-09 20:01:14 UTC (rev 808)
+++ trunk/Source/Core/InstantPersistence.pas 2009-07-09 21:40:48 UTC (rev 809)
@@ -129,8 +129,8 @@
function Dereference(Connector: TInstantConnector = nil;
AOwnsInstance: Boolean = True; Retry: Boolean = False): TInstantObject;
procedure DestroyInstance;
- function Equals(const AObjectClassName, AObjectId: string): Boolean; overload;
- function Equals(AObject: TInstantObject): Boolean; overload;
+ function Equals(const AObjectClassName, AObjectId: string): Boolean; {$IFDEF D12+}reintroduce;{$ENDIF} overload;
+ function Equals(AObject: TInstantObject): Boolean; {$IFDEF D12+}reintroduce;{$ENDIF} overload;
function HasInstance: Boolean;
function HasReference: Boolean;
function IsBroken: Boolean;
@@ -1622,7 +1622,12 @@
begin
Result := True;
for I := 0 to Pred(BufferLength div SizeOf(Char)) do
- if (ValidChars <> []) and not (Buffer[I] in ValidChars + [#8, #10, #13]) then
+ if (ValidChars <> []) and not
+{$IFDEF D12+}
+ (CharInSet(Buffer[I], ValidChars + [#8, #10, #13]))
+{$ELSE}
+ (Buffer[I] in ValidChars + [#8, #10, #13])
+{$ENDIF} then
begin
Result := False;
InvalidChar := Buffer[I];
Modified: trunk/Source/Core/InstantTextFiler.pas
===================================================================
--- trunk/Source/Core/InstantTextFiler.pas 2009-07-09 20:01:14 UTC (rev 808)
+++ trunk/Source/Core/InstantTextFiler.pas 2009-07-09 21:40:48 UTC (rev 809)
@@ -236,7 +236,11 @@
function TInstantTextFiler.IsSpace(Ch: Char): Boolean;
begin
+{$IFDEF D12+}
+ Result := CharInSet(Ch, [' ', #9, #10, #13]);
+{$ELSE}
Result := Ch in [' ', #9, #10, #13];
+{$ENDIF}
end;
function TInstantTextFiler.IsText(Ch: Char): Boolean;
@@ -244,7 +248,11 @@
Result := ((Ch >= 'a') and (Ch <= 'z'))
or ((Ch >= 'A') and (Ch <= 'Z'))
or ((Ch >= '0') and (Ch <= '9'))
+{$IFDEF D12+}
+ or (CharInSet(Ch, ['#', '_']));
+{$ELSE}
or (Ch in ['#', '_']);
+{$ENDIF}
end;
procedure TInstantTextFiler.Reset;
@@ -325,7 +333,12 @@
function TInstantTextReader.IsStringDelimiter(Ch: Char): Boolean;
begin
- Result := ConstAware and (Ch in ['''', '"']);
+ Result := ConstAware and
+{$IFDEF D12+}
+ (CharInSet(Ch, ['''', '"']));
+{$ELSE}
+ (Ch in ['''', '"']);
+{$ENDIF}
end;
function TInstantTextReader.NextChar: Char;
Modified: trunk/Source/Core/InstantUtils.pas
===================================================================
--- trunk/Source/Core/InstantUtils.pas 2009-07-09 20:01:14 UTC (rev 808)
+++ trunk/Source/Core/InstantUtils.pas 2009-07-09 21:40:48 UTC (rev 809)
@@ -112,7 +112,11 @@
begin
Result := '';
for I := 0 to 255 do
+{$IFDEF D12+}
+ if CharInSet(Chr(I), C) then
+{$ELSE}
if Chr(I) in C then
+{$ENDIF}
S := S + Chr(I);
I := 1;
L := Length(S);
@@ -566,7 +570,7 @@
I: Integer;
begin
I := Pos;
- while (I <= Length(Str)) and not (Str[I] in Delimiters) do
+ while (I <= Length(Str)) and not {$IFDEF D12+}CharInSet(Str[I], Delimiters){$ELSE}(Str[I] in Delimiters){$ENDIF} do
Inc(I);
Result := Copy(Str, Pos, I - Pos);
if I <= Length(Str) then
Modified: trunk/Source/Design/InstantCommandEditor.pas
===================================================================
--- trunk/Source/Design/InstantCommandEditor.pas 2009-07-09 20:01:14 UTC (rev 808)
+++ trunk/Source/Design/InstantCommandEditor.pas 2009-07-09 21:40:48 UTC (rev 809)
@@ -177,7 +177,11 @@
function IsSpace(Ch: Char): Boolean;
begin
+{$IFDEF D12+}
+ Result := CharInSet(Ch, [' ', #9, #10, #13]);
+{$ELSE}
Result := Ch in [' ', #9, #10, #13];
+{$ENDIF}
end;
var
|
|
From: <wp...@us...> - 2009-07-09 20:01:21
|
Revision: 808
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=808&view=rev
Author: wp2udk
Date: 2009-07-09 20:01:14 +0000 (Thu, 09 Jul 2009)
Log Message:
-----------
Added packages for Delphi 2009.
Modified Paths:
--------------
trunk/Source/Core/D2007/IOCore.dpk
trunk/Source/Core/D2007/IOCore.dproj
Modified: trunk/Source/Core/D2007/IOCore.dpk
===================================================================
--- trunk/Source/Core/D2007/IOCore.dpk 2009-07-09 20:00:24 UTC (rev 807)
+++ trunk/Source/Core/D2007/IOCore.dpk 2009-07-09 20:01:14 UTC (rev 808)
@@ -22,8 +22,8 @@
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $400000}
-{$DESCRIPTION 'InstantObjects Run-Time Package (Delphi 2007)'}
-{$LIBSUFFIX '_D11'}
+{$DESCRIPTION 'InstantObjects Run-Time Package (Delphi 2009)'}
+{$LIBSUFFIX '_D12'}
{$RUNONLY}
{$IMPLICITBUILD OFF}
Modified: trunk/Source/Core/D2007/IOCore.dproj
===================================================================
--- trunk/Source/Core/D2007/IOCore.dproj 2009-07-09 20:00:24 UTC (rev 807)
+++ trunk/Source/Core/D2007/IOCore.dproj 2009-07-09 20:01:14 UTC (rev 808)
@@ -1,71 +1,150 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <ProjectGuid>{82e2f82a-6598-4acf-bbca-e2315e5938f6}</ProjectGuid>
- <MainSource>IOCore.dpk</MainSource>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
- <DCC_DependencyCheckOutputName>..\..\..\..\..\..\..\Documents\RAD Studio\5.0\Bpl\IOCore_D11.bpl</DCC_DependencyCheckOutputName>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <Version>7.0</Version>
- <DCC_DebugInformation>False</DCC_DebugInformation>
- <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
- <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
- <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
- <DCC_Define>RELEASE</DCC_Define>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <Version>7.0</Version>
- <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
- </PropertyGroup>
- <ProjectExtensions>
- <Borland.Personality>Delphi.Personality</Borland.Personality>
- <Borland.ProjectType>Package</Borland.ProjectType>
- <BorlandProject>
-<BorlandProject><Delphi.Personality><Compiler><Compiler Name="UsePackages">False</Compiler><Compiler Name="Packages"></Compiler></Compiler><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">InstantObjects Run-Time Package (Delphi 2007)</Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">True</Package_Options><Package_Options Name="LibSuffix">_D11</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">2</VersionInfo><VersionInfo Name="MinorVer">1</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">1040</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys><VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">IOCore.dpk</Source></Source>
- </Delphi.Personality></BorlandProject></BorlandProject>
- </ProjectExtensions>
- <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
- <ItemGroup>
- <DelphiCompile Include="IOCore.dpk">
- <MainSource>MainSource</MainSource>
- </DelphiCompile>
- <DCCReference Include="..\..\PackageGroups\D2007\rtl.dcp" />
- <DCCReference Include="..\..\PackageGroups\D2007\vcl.dcp" />
- <DCCReference Include="..\..\PackageGroups\D2007\vcldb.dcp" />
- <DCCReference Include="..\InstantAccessors.pas" />
- <DCCReference Include="..\InstantBrokers.pas" />
- <DCCReference Include="..\InstantClasses.pas" />
- <DCCReference Include="..\InstantCode.pas" />
- <DCCReference Include="..\InstantCommand.pas" />
- <DCCReference Include="..\InstantConnectionManager.pas" />
- <DCCReference Include="..\InstantConnectionManagerFormUnit.pas">
- <Form>InstantConnectionManagerForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantConsts.pas" />
- <DCCReference Include="..\InstantCustomDBEvolverFormUnit.pas">
- <Form>InstantCustomDBEvolverForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantDBBuild.pas" />
- <DCCReference Include="..\InstantDBBuilderFormUnit.pas">
- <Form>InstantDBBuilderForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantDBEvolution.pas" />
- <DCCReference Include="..\InstantDBEvolverFormUnit.pas">
- <Form>InstantDBEvolverForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantDesignHook.pas" />
- <DCCReference Include="..\InstantExplorer.pas" />
- <DCCReference Include="..\InstantImageUtils.pas" />
- <DCCReference Include="..\InstantMetadata.pas" />
- <DCCReference Include="..\InstantPersistence.pas" />
- <DCCReference Include="..\InstantPresentation.pas" />
- <DCCReference Include="..\InstantPump.pas" />
- <DCCReference Include="..\InstantRtti.pas" />
- <DCCReference Include="..\InstantTextFiler.pas" />
- <DCCReference Include="..\InstantTypes.pas" />
- <DCCReference Include="..\InstantUtils.pas" />
- </ItemGroup>
-</Project>
\ No newline at end of file
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{82e2f82a-6598-4acf-bbca-e2315e5938f6}</ProjectGuid>
+ <MainSource>IOCore.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>..\..\..\..\..\..\..\Documents\RAD Studio\5.0\Bpl\IOCore_D11.bpl</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_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\6.0\Bpl\IOCore_D12.bpl</DCC_DependencyCheckOutputName>
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <RuntimeOnlyPackage>true</RuntimeOnlyPackage>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <DCC_Description>InstantObjects Run-Time Package (Delphi 2009)</DCC_Description>
+ <DesignOnlyPackage>false</DesignOnlyPackage>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">IOCore.dpk</Source>
+ </Source>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <ItemGroup>
+ <DelphiCompile Include="IOCore.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="vcl.dcp"/>
+ <DCCReference Include="vcldb.dcp"/>
+ <DCCReference Include="rtl.dcp"/>
+ <DCCReference Include="..\InstantUtils.pas"/>
+ <DCCReference Include="..\InstantClasses.pas"/>
+ <DCCReference Include="..\InstantConsts.pas"/>
+ <DCCReference Include="..\InstantRtti.pas"/>
+ <DCCReference Include="..\InstantCommand.pas"/>
+ <DCCReference Include="..\InstantPersistence.pas"/>
+ <DCCReference Include="..\InstantExplorer.pas"/>
+ <DCCReference Include="..\InstantDesignHook.pas"/>
+ <DCCReference Include="..\InstantCode.pas"/>
+ <DCCReference Include="..\InstantTextFiler.pas"/>
+ <DCCReference Include="..\InstantPresentation.pas"/>
+ <DCCReference Include="..\InstantAccessors.pas"/>
+ <DCCReference Include="..\InstantConnectionManagerFormUnit.pas">
+ <Form>InstantConnectionManagerForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantConnectionManager.pas"/>
+ <DCCReference Include="..\InstantImageUtils.pas"/>
+ <DCCReference Include="..\InstantPump.pas"/>
+ <DCCReference Include="..\InstantDBBuild.pas"/>
+ <DCCReference Include="..\InstantDBEvolution.pas"/>
+ <DCCReference Include="..\InstantCustomDBEvolverFormUnit.pas">
+ <Form>InstantCustomDBEvolverForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantDBEvolverFormUnit.pas">
+ <Form>InstantDBEvolverForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantDBBuilderFormUnit.pas">
+ <Form>InstantDBBuilderForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantTypes.pas"/>
+ <DCCReference Include="..\InstantBrokers.pas"/>
+ <DCCReference Include="..\InstantMetadata.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')"/>
+ </Project>
|
|
From: <wp...@us...> - 2009-07-09 20:00:27
|
Revision: 807
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=807&view=rev
Author: wp2udk
Date: 2009-07-09 20:00:24 +0000 (Thu, 09 Jul 2009)
Log Message:
-----------
Added packages for Delphi 2009.
Modified Paths:
--------------
trunk/Source/Design/D2007/DclIOCore.dpk
trunk/Source/Design/D2007/DclIOCore.dproj
Modified: trunk/Source/Design/D2007/DclIOCore.dpk
===================================================================
--- trunk/Source/Design/D2007/DclIOCore.dpk 2009-07-08 07:24:46 UTC (rev 806)
+++ trunk/Source/Design/D2007/DclIOCore.dpk 2009-07-09 20:00:24 UTC (rev 807)
@@ -23,8 +23,8 @@
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $400000}
-{$DESCRIPTION 'InstantObjects Design-Time Package (Delphi 2007)'}
-{$LIBSUFFIX '_D11'}
+{$DESCRIPTION 'InstantObjects Design-Time Package (Delphi 2009)'}
+{$LIBSUFFIX '_D12'}
{$DESIGNONLY}
{$IMPLICITBUILD OFF}
{$DEFINE DEBUG}
@@ -53,7 +53,8 @@
InstantReg in '..\InstantReg.pas',
InstantUnitSelect in '..\InstantUnitSelect.pas' {InstantUnitSelectForm},
InstantAttributeEditor in '..\InstantAttributeEditor.pas' {InstantAttributeEditorForm},
- InstantAbout in '..\InstantAbout.pas' {InstantAboutForm};
+ InstantAbout in '..\InstantAbout.pas' {InstantAboutForm},
+ InstantModelImport in '..\InstantModelImport.pas' {InstantModelImportForm};
end.
Modified: trunk/Source/Design/D2007/DclIOCore.dproj
===================================================================
--- trunk/Source/Design/D2007/DclIOCore.dproj 2009-07-08 07:24:46 UTC (rev 806)
+++ trunk/Source/Design/D2007/DclIOCore.dproj 2009-07-09 20:00:24 UTC (rev 807)
@@ -1,82 +1,166 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <ProjectGuid>{9b758a49-d140-45db-8681-01e49660a560}</ProjectGuid>
- <MainSource>DclIOCore.dpk</MainSource>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
- <DCC_DependencyCheckOutputName>..\..\..\..\..\..\..\Documents\RAD Studio\5.0\Bpl\DclIOCore_D11.bpl</DCC_DependencyCheckOutputName>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <Version>7.0</Version>
- <DCC_DebugInformation>False</DCC_DebugInformation>
- <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
- <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
- <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
- <DCC_Define>RELEASE</DCC_Define>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <Version>7.0</Version>
- <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
- <DCC_Define>DEBUG</DCC_Define>
- </PropertyGroup>
- <ProjectExtensions>
- <Borland.Personality>Delphi.Personality</Borland.Personality>
- <Borland.ProjectType>Package</Borland.ProjectType>
- <BorlandProject>
-<BorlandProject><Delphi.Personality><Compiler><Compiler Name="UsePackages">False</Compiler><Compiler Name="Packages"></Compiler></Compiler><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">InstantObjects Design-Time Package (Delphi 2007)</Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">True</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options><Package_Options Name="LibSuffix">_D11</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">2</VersionInfo><VersionInfo Name="MinorVer">1</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">1040</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys><VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">DclIOCore.dpk</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject>
- </ProjectExtensions>
- <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
- <ItemGroup>
- <DelphiCompile Include="DclIOCore.dpk">
- <MainSource>MainSource</MainSource>
- </DelphiCompile>
- <DCCReference Include="$(SystemRoot)\system32\dbrtl.dcp" />
- <DCCReference Include="$(SystemRoot)\system32\designide.dcp" />
- <DCCReference Include="$(SystemRoot)\system32\IOCore.dcp" />
- <DCCReference Include="$(SystemRoot)\system32\rtl.dcp" />
- <DCCReference Include="$(SystemRoot)\system32\vcl.dcp" />
- <DCCReference Include="$(SystemRoot)\system32\vcldb.dcp" />
- <DCCReference Include="..\..\Core\InstantPresentation.dcr" />
- <DCCReference Include="..\..\Core\InstantPresentation.dcr" />
- <DCCReference Include="..\InstantAbout.pas">
- <Form>InstantAboutForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantAttributeEditor.pas">
- <Form>InstantAttributeEditorForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantClassEditor.pas">
- <Form>InstantClassEditorForm</Form>
- <DesignClass>TIOBaseForm</DesignClass>
- </DCCReference>
- <DCCReference Include="..\InstantCommandEditor.pas">
- <Form>InstantCommandEditorForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantDesignResources.pas">
- <Form>InstantDesignResourceModule</Form>
- <DesignClass>TDataModule</DesignClass>
- </DCCReference>
- <DCCReference Include="..\InstantDesignTools.pas" />
- <DCCReference Include="..\InstantDesignUtils.pas" />
- <DCCReference Include="..\InstantDialog.pas">
- <Form>InstantDialogForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantDualList.pas">
- <Form>InstantDualListForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantEdit.pas">
- <Form>InstantEditForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantModelExpert.pas" />
- <DCCReference Include="..\InstantModelExplorer.pas">
- <Form>InstantModelExplorerForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantOTA.pas" />
- <DCCReference Include="..\InstantReg.pas" />
- <DCCReference Include="..\InstantUnitSelect.pas">
- <Form>InstantUnitSelectForm</Form>
- </DCCReference>
- <DCCReference Include="..\InstantWizard.pas" />
- </ItemGroup>
-</Project>
\ No newline at end of file
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{9b758a49-d140-45db-8681-01e49660a560}</ProjectGuid>
+ <MainSource>DclIOCore.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>..\..\..\..\..\..\..\Documents\RAD Studio\5.0\Bpl\DclIOCore_D11.bpl</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_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\6.0\Bpl\DclIOCore_D12.bpl</DCC_DependencyCheckOutputName>
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <DCC_Description>InstantObjects Design-Time Package (Delphi 2009)</DCC_Description>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ <DesignOnlyPackage>true</DesignOnlyPackage>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">DclIOCore.dpk</Source>
+ </Source>
+ </Delphi.Personality>
+ <ModelSupport>False</ModelSupport>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <ItemGroup>
+ <DelphiCompile Include="DclIOCore.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="..\..\Core\InstantPresentation.dcr"/>
+ <DCCReference Include="designide.dcp"/>
+ <DCCReference Include="vcldb.dcp"/>
+ <DCCReference Include="rtl.dcp"/>
+ <DCCReference Include="vcl.dcp"/>
+ <DCCReference Include="dbrtl.dcp"/>
+ <DCCReference Include="IOCore.dcp"/>
+ <DCCReference Include="..\InstantWizard.pas"/>
+ <DCCReference Include="..\InstantClassEditor.pas">
+ <Form>InstantClassEditorForm</Form>
+ <DesignClass>TIOBaseForm</DesignClass>
+ </DCCReference>
+ <DCCReference Include="..\InstantCommandEditor.pas">
+ <Form>InstantCommandEditorForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantDesignResources.pas">
+ <Form>InstantDesignResourceModule</Form>
+ <DesignClass>TDataModule</DesignClass>
+ </DCCReference>
+ <DCCReference Include="..\InstantDesignTools.pas"/>
+ <DCCReference Include="..\InstantDesignUtils.pas"/>
+ <DCCReference Include="..\InstantDialog.pas">
+ <Form>InstantDialogForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantDualList.pas">
+ <Form>InstantDualListForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantEdit.pas">
+ <Form>InstantEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantModelExpert.pas"/>
+ <DCCReference Include="..\InstantModelExplorer.pas">
+ <Form>InstantModelExplorerForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantOTA.pas"/>
+ <DCCReference Include="..\InstantReg.pas"/>
+ <DCCReference Include="..\InstantUnitSelect.pas">
+ <Form>InstantUnitSelectForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantAttributeEditor.pas">
+ <Form>InstantAttributeEditorForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantAbout.pas">
+ <Form>InstantAboutForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantModelImport.pas">
+ <Form>InstantModelImportForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\..\Core\InstantPresentation.dcr"/>
+ <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')"/>
+ </Project>
|
|
From: <wp...@us...> - 2009-07-08 07:24:50
|
Revision: 806
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=806&view=rev
Author: wp2udk
Date: 2009-07-08 07:24:46 +0000 (Wed, 08 Jul 2009)
Log Message:
-----------
Changing the name of the form in InstantModelImport.pas to comply with IO naming conversion.
Modified Paths:
--------------
trunk/Source/Design/InstantModelExplorer.pas
trunk/Source/Design/InstantModelImport.dfm
trunk/Source/Design/InstantModelImport.pas
Modified: trunk/Source/Design/InstantModelExplorer.pas
===================================================================
--- trunk/Source/Design/InstantModelExplorer.pas 2009-07-08 06:55:49 UTC (rev 805)
+++ trunk/Source/Design/InstantModelExplorer.pas 2009-07-08 07:24:46 UTC (rev 806)
@@ -399,7 +399,7 @@
NewClass: TInstantCodeClass;
NewAttribute: TInstantCodeAttribute;
begin
- with TInstantImportModelForm.Create(nil) do
+ with TInstantModelImportForm.Create(nil) do
try
if Execute(FModel) then
begin
Modified: trunk/Source/Design/InstantModelImport.dfm
===================================================================
--- trunk/Source/Design/InstantModelImport.dfm 2009-07-08 06:55:49 UTC (rev 805)
+++ trunk/Source/Design/InstantModelImport.dfm 2009-07-08 07:24:46 UTC (rev 806)
@@ -1,4 +1,4 @@
-inherited InstantImportModelForm: TInstantImportModelForm
+inherited InstantModelImportForm: TInstantModelImportForm
Caption = 'Import Model'
ClientHeight = 120
ClientWidth = 416
Modified: trunk/Source/Design/InstantModelImport.pas
===================================================================
--- trunk/Source/Design/InstantModelImport.pas 2009-07-08 06:55:49 UTC (rev 805)
+++ trunk/Source/Design/InstantModelImport.pas 2009-07-08 07:24:46 UTC (rev 806)
@@ -37,7 +37,7 @@
Dialogs, InstantDialog, ExtCtrls, StdCtrls, InstantCode, InstantClasses;
type
- TInstantImportModelForm = class(TInstantDialogForm)
+ TInstantModelImportForm = class(TInstantDialogForm)
ImportButton: TButton;
ImportModuleCombo: TComboBox;
Label1: TLabel;
@@ -67,7 +67,7 @@
end;
var
- InstantImportModelForm: TInstantImportModelForm;
+ InstantModelImportForm: TInstantModelImportForm;
implementation
@@ -75,7 +75,7 @@
{ TInstantImportModelForm }
-function TInstantImportModelForm.Execute(AModel: TInstantCodeModel): Boolean;
+function TInstantModelImportForm.Execute(AModel: TInstantCodeModel): Boolean;
begin
FModel := AModel;
@@ -96,7 +96,7 @@
end;
end;
-procedure TInstantImportModelForm.FileNameButtonClick(Sender: TObject);
+procedure TInstantModelImportForm.FileNameButtonClick(Sender: TObject);
begin
inherited;
@@ -105,7 +105,7 @@
FileNameEdit.Text := OpenDialog.FileName;
end;
-procedure TInstantImportModelForm.LoadModules;
+procedure TInstantModelImportForm.LoadModules;
var
I: Integer;
Module: TInstantCodeModule;
@@ -118,25 +118,25 @@
end;
end;
-procedure TInstantImportModelForm.UpdateControls;
+procedure TInstantModelImportForm.UpdateControls;
begin
ImportButton.Enabled := (FileNameEdit.Text <> '') and (ImportModuleCombo.ItemIndex <> -1);
end;
-function TInstantImportModelForm.GetSelectedFileType: TInstantStreamFormat;
+function TInstantModelImportForm.GetSelectedFileType: TInstantStreamFormat;
begin
if CompareText(ExtractFileExt(SelectedFileName), '.mdr') = 0 then
Result := sfBinary else
Result := sfXML;
end;
-procedure TInstantImportModelForm.ImportModuleComboChange(Sender: TObject);
+procedure TInstantModelImportForm.ImportModuleComboChange(Sender: TObject);
begin
inherited;
UpdateControls;
end;
-procedure TInstantImportModelForm.FileNameEditChange(Sender: TObject);
+procedure TInstantModelImportForm.FileNameEditChange(Sender: TObject);
begin
inherited;
UpdateControls;
|
|
From: <wp...@us...> - 2009-07-08 06:55:54
|
Revision: 805
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=805&view=rev
Author: wp2udk
Date: 2009-07-08 06:55:49 +0000 (Wed, 08 Jul 2009)
Log Message:
-----------
Import a model from an existing .res or .xml file and generate the equivalent Delphi source code. Only tested on Delphi 2006.
Modified Paths:
--------------
trunk/Source/Core/InstantCode.pas
trunk/Source/Design/D2006/DclIOCore.dpk
trunk/Source/Design/InstantModelExplorer.dfm
trunk/Source/Design/InstantModelExplorer.pas
trunk/Source/Design/iodesimages.res
Modified: trunk/Source/Core/InstantCode.pas
===================================================================
--- trunk/Source/Core/InstantCode.pas 2009-07-08 06:34:35 UTC (rev 804)
+++ trunk/Source/Core/InstantCode.pas 2009-07-08 06:55:49 UTC (rev 805)
@@ -962,6 +962,19 @@
property UnitName: string read GetUnitName write SetUnitName;
end;
+ TInstantCodeClassList = class(TList)
+ private
+ function GetItem(Index: Integer): TInstantCodeClass;
+ procedure SetItem(Index: Integer; const Value: TInstantCodeClass);
+ public
+ function Add(Item: TInstantCodeClass): Integer;
+ procedure Insert(Index: Integer; Item: TInstantCodeClass);
+
+ procedure SortByBaseClass;
+
+ property Items[Index: Integer]: TInstantCodeClass read GetItem write SetItem; default;
+ end;
+
TInstantCodeClassRef = class(TInstantCodeType)
protected
class function InternalAtInstance(Reader: TInstantCodeReader; out Name: string): Boolean; override;
@@ -5461,6 +5474,55 @@
(TInstantCodeMember(Sender).Visibility in Visibilities)
end;
+{ TInstantCodeClassList }
+
+function CompareCodeClasses(Item1, Item2: Pointer): Integer;
+var
+ CodeClass1, CodeClass2: TInstantCodeClass;
+begin
+ CodeClass1 := Item1;
+ CodeClass2 := Item2;
+
+ if (CodeClass1.BaseClass = nil) and (CodeClass2.BaseClass <> nil) then
+ Result := -1 else
+ if (CodeClass2.BaseClass = nil) and (CodeClass1.BaseClass <> nil) then
+ Result := 1 else
+ if CodeClass1.BaseClass = CodeClass2.BaseClass then
+ Result := 0 else
+ if CodeClass1.DerivesFrom(CodeClass2) then
+ Result := 1 else
+ if CodeClass2.DerivesFrom(CodeClass1) then
+ Result := -1 else
+ // CodeClass1.BaseClass <> CodeClass2.BaseClass
+ Result := CompareCodeClasses(CodeClass1.BaseClass, CodeClass2.BaseClass);
+end;
+
+function TInstantCodeClassList.Add(Item: TInstantCodeClass): Integer;
+begin
+ Result := inherited Add(Item);
+end;
+
+procedure TInstantCodeClassList.Insert(Index: Integer; Item: TInstantCodeClass);
+begin
+ inherited Insert(Index, Item);
+end;
+
+procedure TInstantCodeClassList.SortByBaseClass;
+begin
+ Sort(CompareCodeClasses);
+end;
+
+function TInstantCodeClassList.GetItem(Index: Integer): TInstantCodeClass;
+begin
+ Result := inherited Items[Index];
+end;
+
+procedure TInstantCodeClassList.SetItem(Index: Integer;
+ const Value: TInstantCodeClass);
+begin
+ inherited Items[Index] := Value;
+end;
+
{ TInstantCodeClassRef }
class function TInstantCodeClassRef.Identifier: string;
Modified: trunk/Source/Design/D2006/DclIOCore.dpk
===================================================================
--- trunk/Source/Design/D2006/DclIOCore.dpk 2009-07-08 06:34:35 UTC (rev 804)
+++ trunk/Source/Design/D2006/DclIOCore.dpk 2009-07-08 06:55:49 UTC (rev 805)
@@ -7,7 +7,6 @@
{$R '..\..\Core\InstantConnectionManager.dcr'}
{$R '..\..\Core\InstantPump.dcr'}
{$R '..\..\Core\InstantDBEvolution.dcr'}
-
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
@@ -58,7 +57,8 @@
InstantReg in '..\InstantReg.pas',
InstantUnitSelect in '..\InstantUnitSelect.pas' {InstantUnitSelectForm},
InstantAttributeEditor in '..\InstantAttributeEditor.pas' {InstantAttributeEditorForm},
- InstantAbout in '..\InstantAbout.pas' {InstantAboutForm};
+ InstantAbout in '..\InstantAbout.pas' {InstantAboutForm},
+ InstantModelImport in '..\InstantModelImport.pas' {InstantImportModelForm};
end.
Modified: trunk/Source/Design/InstantModelExplorer.dfm
===================================================================
--- trunk/Source/Design/InstantModelExplorer.dfm 2009-07-08 06:34:35 UTC (rev 804)
+++ trunk/Source/Design/InstantModelExplorer.dfm 2009-07-08 06:55:49 UTC (rev 805)
@@ -4,7 +4,6 @@
Width = 259
Height = 433
VertScrollBar.Range = 20
- AutoScroll = False
Caption = 'InstantObjects Model Explorer'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
@@ -23,7 +22,7 @@
Left = 0
Top = 27
Width = 251
- Height = 379
+ Height = 372
Align = alClient
BevelOuter = bvNone
TabOrder = 0
@@ -35,8 +34,6 @@
Height = 27
BorderWidth = 1
ButtonHeight = 23
- EdgeBorders = []
- Flat = True
Images = ActionImages
ParentShowHint = False
ShowHint = True
@@ -104,6 +101,9 @@
object N3: TMenuItem
Caption = '-'
end
+ object ImportModelItem: TMenuItem
+ Action = ImportModelAction
+ end
object ExportModelItem: TMenuItem
Action = ExportModelAction
end
@@ -189,6 +189,12 @@
Hint = 'Collapse All'
OnExecute = CollapseAllActionExecute
end
+ object ImportModelAction: TAction
+ Caption = '&Import Model...'
+ Hint = 'Import model'
+ ImageIndex = 11
+ OnExecute = ImportModelActionExecute
+ end
object ExportModelAction: TAction
Caption = '&Export Model...'
Hint = 'Export Model'
Modified: trunk/Source/Design/InstantModelExplorer.pas
===================================================================
--- trunk/Source/Design/InstantModelExplorer.pas 2009-07-08 06:34:35 UTC (rev 804)
+++ trunk/Source/Design/InstantModelExplorer.pas 2009-07-08 06:55:49 UTC (rev 805)
@@ -24,7 +24,8 @@
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
- * Carlo Barazzetta, Adrea Petrelli, Nando Dessena, Steven Mitchell
+ * Carlo Barazzetta, Adrea Petrelli, Nando Dessena, Steven Mitchell,
+ * Brian Andersen
*
* ***** END LICENSE BLOCK ***** *)
@@ -120,6 +121,8 @@
ViewRelationsAction: TAction;
ViewSourceAction: TAction;
ViewSourceItem: TMenuItem;
+ ImportModelItem: TMenuItem;
+ ImportModelAction: TAction;
procedure AboutActionExecute(Sender: TObject);
procedure BuildDatabaseActionExecute(Sender: TObject);
procedure CollapseAllActionExecute(Sender: TObject);
@@ -138,6 +141,7 @@
procedure ViewInheritanceActionExecute(Sender: TObject);
procedure ViewRelationsActionExecute(Sender: TObject);
procedure ViewSourceActionExecute(Sender: TObject);
+ procedure ImportModelActionExecute(Sender: TObject);
private
FError: TInstantModelError;
FModel: TInstantCodeModel;
@@ -195,7 +199,7 @@
InstantModelExpert,
{$ENDIF}
InstantDesignUtils, InstantPersistence, InstantDesignHook, InstantAbout,
- InstantImageUtils;
+ InstantImageUtils, InstantMetadata, InstantModelImport;
resourcestring
SDeleteClass = 'Delete Class ''%s''?';
@@ -381,6 +385,93 @@
SelectedNode.Expand(True);
end;
+procedure TInstantModelExplorerForm.ImportModelActionExecute(Sender: TObject);
+var
+ ClassIndex, AttributeIndex: Integer;
+ ImportModule: TInstantCodeModule;
+ ImportFileName: string;
+ ImportFileType: TInstantStreamFormat;
+ ImportModel: TInstantModel;
+ ImportClassMetadata: TInstantClassMetadata;
+ ImportBaseClassName: string;
+ ImportAttributeMetadata: TInstantAttributeMetadata;
+ NewClasses: TInstantCodeClassList;
+ NewClass: TInstantCodeClass;
+ NewAttribute: TInstantCodeAttribute;
+begin
+ with TInstantImportModelForm.Create(nil) do
+ try
+ if Execute(FModel) then
+ begin
+ ImportModule := SelectedModule;
+ ImportFileName := SelectedFileName;
+ ImportFileType := SelectedFileType;
+ end else
+ Exit;
+ finally
+ Free;
+ end;
+
+ ImportModel := TInstantModel.Create;
+ try
+ if ImportFileType = sfBinary then
+ ImportModel.LoadFromResFile(ImportFileName) else
+ ImportModel.LoadFromFile(ImportFileName);
+
+ FModelView.Items.BeginUpdate;
+ try
+ NewClasses := TInstantCodeClassList.Create;
+ try
+ for ClassIndex := 0 to ImportModel.ClassMetadatas.Count - 1 do
+ begin
+ ImportClassMetadata := ImportModel.ClassMetadatas[ClassIndex];
+
+ NewClass := ImportModule.InterfaceSection.AddClass;
+ ImportBaseClassName := ImportClassMetadata.ParentName;
+ if ImportBaseClassName = '' then
+ ImportBaseClassName := TInstantObject.ClassName;
+ NewClass.BaseClassName := ImportBaseClassName;
+ NewClass.Name := ImportClassMetadata.Name;
+ NewClass.Metadata.Assign(ImportClassMetadata);
+
+ for AttributeIndex := 0 to ImportClassMetadata.AttributeMetadatas.Count - 1 do
+ begin
+ ImportAttributeMetadata := ImportClassMetadata.AttributeMetadatas[AttributeIndex];
+
+ NewAttribute := NewClass.AddAttribute;
+ NewAttribute.IsIndexed := ImportAttributeMetadata.IsIndexed;
+ NewAttribute.IsRequired := ImportAttributeMetadata.IsRequired;
+ NewAttribute.IsDefault := ImportAttributeMetadata.IsDefault;
+ NewAttribute.AttributeType := ImportAttributeMetadata.AttributeType;
+ NewAttribute.AttributeTypeName := ImportAttributeMetadata.AttributeTypeName;
+ NewAttribute.Name := ImportAttributeMetadata.FieldName;
+ NewAttribute.StorageKind := ImportAttributeMetadata.StorageKind;
+ NewAttribute.StorageName := ImportAttributeMetadata.StorageName;
+ NewAttribute.ObjectClassName := ImportAttributeMetadata.ObjectClassName;
+ NewAttribute.Realize;
+ end;
+ NewClasses.Add(NewClass)
+ end;
+
+ // Classes needs to be sorted with base classes first or else the code
+ // generation might not be done correct.
+ NewClasses.SortByBaseClass;
+
+ for ClassIndex := 0 to NewClasses.Count - 1 do
+ ApplyClass(NewClasses[ClassIndex], ctNew, '');
+ finally
+ NewClasses.Free;
+ end;
+ finally
+ FModelView.Items.EndUpdate;
+ end;
+ finally
+ ImportModel.Free;
+ end;
+
+ Refresh;
+end;
+
procedure TInstantModelExplorerForm.ExportModelActionExecute(
Sender: TObject);
begin
@@ -590,6 +681,7 @@
SelectUnitsAction.Enabled := HasProject;
BuildDatabaseAction.Enabled := HasClasses;
NewClassAction.Enabled := HasModel;
+ ImportModelAction.Enabled := HasModel;
ExportModelAction.Enabled := HasModel;
EditClassAction.Enabled := AtClass;
ViewSourceAction.Enabled := AtClass;
Modified: trunk/Source/Design/iodesimages.res
===================================================================
(Binary files differ)
|
|
From: <wp...@us...> - 2009-07-08 06:35:10
|
Revision: 804
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=804&view=rev
Author: wp2udk
Date: 2009-07-08 06:34:35 +0000 (Wed, 08 Jul 2009)
Log Message:
-----------
Import a model from an existing .res or .xml file and generate the equivalent Delphi source code.
Added Paths:
-----------
trunk/Source/Design/InstantModelImport.dfm
trunk/Source/Design/InstantModelImport.pas
Added: trunk/Source/Design/InstantModelImport.dfm
===================================================================
--- trunk/Source/Design/InstantModelImport.dfm (rev 0)
+++ trunk/Source/Design/InstantModelImport.dfm 2009-07-08 06:34:35 UTC (rev 804)
@@ -0,0 +1,87 @@
+inherited InstantImportModelForm: TInstantImportModelForm
+ Caption = 'Import Model'
+ ClientHeight = 120
+ ClientWidth = 416
+ ExplicitWidth = 424
+ ExplicitHeight = 154
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Label1: TLabel [0]
+ Left = 16
+ Top = 19
+ Width = 78
+ Height = 13
+ Caption = 'Import to module'
+ end
+ object Label2: TLabel [1]
+ Left = 16
+ Top = 46
+ Width = 45
+ Height = 13
+ Caption = 'File name'
+ end
+ inherited ButtonPanel: TPanel
+ Top = 79
+ Width = 416
+ ExplicitTop = 79
+ ExplicitWidth = 416
+ inherited ButtonBevel: TBevel
+ Width = 416
+ ExplicitWidth = 416
+ end
+ object ImportButton: TButton
+ Left = 246
+ Top = 8
+ Width = 75
+ Height = 25
+ Caption = '&Import'
+ Default = True
+ ModalResult = 1
+ TabOrder = 0
+ end
+ object CancelButton: TButton
+ Left = 327
+ Top = 8
+ Width = 75
+ Height = 25
+ Cancel = True
+ Caption = 'Cancel'
+ ModalResult = 2
+ TabOrder = 1
+ end
+ end
+ object ImportModuleCombo: TComboBox
+ Left = 103
+ Top = 16
+ Width = 299
+ Height = 21
+ Style = csDropDownList
+ ItemHeight = 13
+ TabOrder = 1
+ OnChange = ImportModuleComboChange
+ end
+ object FileNameEdit: TEdit
+ Left = 103
+ Top = 43
+ Width = 275
+ Height = 21
+ TabOrder = 2
+ OnChange = FileNameEditChange
+ end
+ object FileNameButton: TButton
+ Left = 381
+ Top = 43
+ Width = 21
+ Height = 21
+ Caption = '...'
+ TabOrder = 3
+ OnClick = FileNameButtonClick
+ end
+ object OpenDialog: TOpenDialog
+ Filter = 'Resource Model (*.mdr)|*.mdr|XML Model (*.xml)|*.xml'
+ Options = [ofHideReadOnly, ofPathMustExist, ofNoNetworkButton, ofEnableSizing]
+ Title = 'Select model'
+ Left = 16
+ Top = 80
+ end
+end
Property changes on: trunk/Source/Design/InstantModelImport.dfm
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/Source/Design/InstantModelImport.pas
===================================================================
--- trunk/Source/Design/InstantModelImport.pas (rev 0)
+++ trunk/Source/Design/InstantModelImport.pas 2009-07-08 06:34:35 UTC (rev 804)
@@ -0,0 +1,145 @@
+(*
+ * InstantObjects
+ * Import Model
+ *)
+
+(* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is: Seleqt InstantObjects
+ *
+ * The Initial Developer of the Original Code is: Seleqt
+ *
+ * Portions created by the Initial Developer are Copyright (C) 2001-2003
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Brian Andersen
+ *
+ * ***** END LICENSE BLOCK ***** *)
+
+ unit InstantModelImport;
+
+interface
+
+uses
+ Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
+ Dialogs, InstantDialog, ExtCtrls, StdCtrls, InstantCode, InstantClasses;
+
+type
+ TInstantImportModelForm = class(TInstantDialogForm)
+ ImportButton: TButton;
+ ImportModuleCombo: TComboBox;
+ Label1: TLabel;
+ FileNameEdit: TEdit;
+ FileNameButton: TButton;
+ Label2: TLabel;
+ CancelButton: TButton;
+ OpenDialog: TOpenDialog;
+ procedure FileNameButtonClick(Sender: TObject);
+ procedure ImportModuleComboChange(Sender: TObject);
+ procedure FileNameEditChange(Sender: TObject);
+ private
+ FModel: TInstantCodeModel;
+ FSelectedModule: TInstantCodeModule;
+ FSelectedFileName: string;
+ procedure LoadModules;
+ procedure UpdateControls;
+ function GetSelectedFileType: TInstantStreamFormat;
+ public
+ function Execute(AModel: TInstantCodeModel): Boolean;
+
+ property Model: TInstantCodeModel read FModel;
+
+ property SelectedModule: TInstantCodeModule read FSelectedModule;
+ property SelectedFileName: string read FSelectedFileName;
+ property SelectedFileType: TInstantStreamFormat read GetSelectedFileType;
+ end;
+
+var
+ InstantImportModelForm: TInstantImportModelForm;
+
+implementation
+
+{$R *.dfm}
+
+{ TInstantImportModelForm }
+
+function TInstantImportModelForm.Execute(AModel: TInstantCodeModel): Boolean;
+begin
+ FModel := AModel;
+
+ LoadModules;
+ UpdateControls;
+
+ Result := ShowModal = mrOK;
+
+ if Result then
+ begin
+ with ImportModuleCombo do
+ FSelectedModule := Items.Objects[ItemIndex] as TInstantCodeModule;
+ FSelectedFileName := FileNameEdit.Text;
+ end else
+ begin
+ FSelectedModule := nil;
+ FSelectedFileName := '';
+ end;
+end;
+
+procedure TInstantImportModelForm.FileNameButtonClick(Sender: TObject);
+begin
+ inherited;
+
+ OpenDialog.FileName := FileNameEdit.Text;
+ if OpenDialog.Execute then
+ FileNameEdit.Text := OpenDialog.FileName;
+end;
+
+procedure TInstantImportModelForm.LoadModules;
+var
+ I: Integer;
+ Module: TInstantCodeModule;
+begin
+ ImportModuleCombo.Clear;
+ for I := 0 to FModel.ModuleCount - 1 do
+ begin
+ Module := FModel.Modules[I];
+ ImportModuleCombo.Items.AddObject(Module.UnitName, Module)
+ end;
+end;
+
+procedure TInstantImportModelForm.UpdateControls;
+begin
+ ImportButton.Enabled := (FileNameEdit.Text <> '') and (ImportModuleCombo.ItemIndex <> -1);
+end;
+
+function TInstantImportModelForm.GetSelectedFileType: TInstantStreamFormat;
+begin
+ if CompareText(ExtractFileExt(SelectedFileName), '.mdr') = 0 then
+ Result := sfBinary else
+ Result := sfXML;
+end;
+
+procedure TInstantImportModelForm.ImportModuleComboChange(Sender: TObject);
+begin
+ inherited;
+ UpdateControls;
+end;
+
+procedure TInstantImportModelForm.FileNameEditChange(Sender: TObject);
+begin
+ inherited;
+ UpdateControls;
+end;
+
+end.
Property changes on: trunk/Source/Design/InstantModelImport.pas
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
|
|
From: <wp...@us...> - 2009-07-07 17:15:52
|
Revision: 803
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=803&view=rev
Author: wp2udk
Date: 2009-07-07 17:15:39 +0000 (Tue, 07 Jul 2009)
Log Message:
-----------
Fix for compatibility with < Delphi 2009.
Modified Paths:
--------------
trunk/Source/Design/InstantModelExpert.pas
Modified: trunk/Source/Design/InstantModelExpert.pas
===================================================================
--- trunk/Source/Design/InstantModelExpert.pas 2009-07-07 10:59:47 UTC (rev 802)
+++ trunk/Source/Design/InstantModelExpert.pas 2009-07-07 17:15:39 UTC (rev 803)
@@ -998,9 +998,16 @@
begin
Module := Modules[I] as IOTAModule;
Editor := FIDEInterface.SourceEditor(Module);
+
+{$IFDEF D12+}
Source := UTF8ToUnicodeString(FIDEInterface.ReadEditorSource(Editor));
Stream := TStringStream.Create(Source, TEncoding.Unicode);
- try
+{$ELSE}
+ Source := FIDEInterface.ReadEditorSource(Editor);
+ Stream := TStringStream.Create(Source);
+{$ENDIF}
+
+ try
Model.LoadModule(Stream, Editor.FileName);
finally
Stream.Free;
|
|
From: <na...@us...> - 2009-07-07 11:00:05
|
Revision: 802
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=802&view=rev
Author: nandod
Date: 2009-07-07 10:59:47 +0000 (Tue, 07 Jul 2009)
Log Message:
-----------
* A first set of changes for D2009 compatibility: Core, Design, BDE, XML. Still WIP.
Modified Paths:
--------------
trunk/Source/Core/InstantBrokers.pas
trunk/Source/Core/InstantClasses.pas
trunk/Source/Core/InstantCode.pas
trunk/Source/Core/InstantCommand.pas
trunk/Source/Core/InstantExplorer.pas
trunk/Source/Core/InstantMetadata.pas
trunk/Source/Core/InstantPersistence.pas
trunk/Source/Core/InstantPresentation.pas
trunk/Source/Core/InstantRtti.pas
trunk/Source/Core/InstantTextFiler.pas
trunk/Source/Core/InstantUtils.pas
trunk/Source/Design/InstantAttributeEditor.dfm
trunk/Source/Design/InstantAttributeEditor.pas
trunk/Source/Design/InstantModelExpert.pas
trunk/Source/Design/InstantOTA.pas
trunk/Source/InstantDefines.inc
trunk/Tests/InstantMock.pas
trunk/Tests/TestIO.dpr
trunk/Tests/TestIO.mdr
trunk/Tests/TestIO.mdrt
trunk/Tests/TestIO.mdx
trunk/Tests/TestIO.mdxt
trunk/Tests/TestInstantClasses.pas
trunk/Tests/TestInstantRtti.pas
trunk/Tests/TestModel.pas
trunk/Tests/ubmock/src/testutils.pas
Added Paths:
-----------
trunk/Demos/Intro/Intro_D2007.dproj
trunk/Demos/Intro/Intro_D2007.mdr
trunk/Demos/Intro/Intro_D2009.dproj
trunk/Source/Brokers/XML/D2009/
trunk/Source/Brokers/XML/D2009/DclIOXML.dpk
trunk/Source/Brokers/XML/D2009/DclIOXML.dproj
trunk/Source/Brokers/XML/D2009/DclIOXML.res
trunk/Source/Brokers/XML/D2009/IOXML.dpk
trunk/Source/Brokers/XML/D2009/IOXML.dproj
trunk/Source/Brokers/XML/D2009/IOXML.res
trunk/Source/PackageGroups/D2009/
trunk/Source/PackageGroups/D2009/CorePackages.groupproj
trunk/Tests/DUnit/
trunk/Tests/DUnit/src/
trunk/Tests/DUnit/src/TestFramework.pas
trunk/Tests/TestIO_D2007.dproj
trunk/Tests/TestIO_D2007.mdr
trunk/Tests/TestIO_D2009.dproj
trunk/Tests/TestIO_D2009.mdr
Added: trunk/Demos/Intro/Intro_D2007.dproj
===================================================================
--- trunk/Demos/Intro/Intro_D2007.dproj (rev 0)
+++ trunk/Demos/Intro/Intro_D2007.dproj 2009-07-07 10:59:47 UTC (rev 802)
@@ -0,0 +1,103 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{5e7fed32-48a7-4d66-a1ed-fbf2fb9c43c1}</ProjectGuid>
+ <MainSource>Intro.dpr</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>Intro.exe</DCC_DependencyCheckOutputName>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_WriteableConstants>True</DCC_WriteableConstants>
+ <DCC_Optimize>False</DCC_Optimize>
+ <DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
+ <DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\BDE</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\BDE</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\BDE</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\BDE</DCC_IncludePath>
+ <DCC_UNSAFE_TYPE>True</DCC_UNSAFE_TYPE>
+ <DCC_UNSAFE_CODE>True</DCC_UNSAFE_CODE>
+ <DCC_UNSAFE_CAST>True</DCC_UNSAFE_CAST>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_WriteableConstants>True</DCC_WriteableConstants>
+ <DCC_Optimize>False</DCC_Optimize>
+ <DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
+ <DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\BDE</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\BDE</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\BDE</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\BDE</DCC_IncludePath>
+ <DCC_Define>DEBUG</DCC_Define>
+ <DCC_UNSAFE_TYPE>True</DCC_UNSAFE_TYPE>
+ <DCC_UNSAFE_CODE>True</DCC_UNSAFE_CODE>
+ <DCC_UNSAFE_CAST>True</DCC_UNSAFE_CAST>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality</Borland.Personality>
+ <Borland.ProjectType>VCLApplication</Borland.ProjectType>
+ <BorlandProject>
+<BorlandProject xmlns=""> <Delphi.Personality> <Parameters>
+ <Parameters Name="UseLauncher">False</Parameters>
+ <Parameters Name="LoadAllSymbols">True</Parameters>
+ <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
+ </Parameters>
+ <Language>
+ <Language Name="ProjectLang">$00000406</Language>
+ </Language>
+ <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">1030</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"></VersionInfoKeys>
+ <VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
+ <VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
+ <VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
+ <VersionInfoKeys Name="ProductName"></VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"></VersionInfoKeys>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">Intro.dpr</Source>
+ </Source>
+ </Delphi.Personality> </BorlandProject></BorlandProject>
+ </ProjectExtensions>
+ <ItemGroup />
+ <ItemGroup>
+ <DelphiCompile Include="Intro.dpr">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="CompanyEdit.pas">
+ <Form>CompanyEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactEdit.pas">
+ <Form>ContactEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="Main.pas">
+ <Form>MainForm</Form>
+ </DCCReference>
+ <DCCReference Include="Model.pas" />
+ <DCCReference Include="PersonEdit.pas">
+ <Form>PersonEditForm</Form>
+ </DCCReference>
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
+</Project>
\ No newline at end of file
Property changes on: trunk/Demos/Intro/Intro_D2007.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Demos/Intro/Intro_D2007.mdr
===================================================================
(Binary files differ)
Property changes on: trunk/Demos/Intro/Intro_D2007.mdr
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Demos/Intro/Intro_D2009.dproj
===================================================================
--- trunk/Demos/Intro/Intro_D2009.dproj (rev 0)
+++ trunk/Demos/Intro/Intro_D2009.dproj 2009-07-07 10:59:47 UTC (rev 802)
@@ -0,0 +1,141 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{5e7fed32-48a7-4d66-a1ed-fbf2fb9c43c1}</ProjectGuid>
+ <MainSource>Intro.dpr</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>Intro.exe</DCC_DependencyCheckOutputName>
+ <ProjectVersion>12.0</ProjectVersion>
+ <Config Condition="'$(Config)'==''">Release</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_UsePackage>vclx;vcl;dbrtl;Rave76VCL;bdertl;rtl;vclactnband;vcldb;vcldbx;dsnap;dsnapcon;TeeUI;TeeDB;Tee;adortl;vclib;ibxpress;IndyCore;IndySystem;IndyProtocols;xmlrtl;inet;intrawebdb_100_120;Intraweb_100_120;VclSmp;vclie;websnap;webdsnap;inetdbbde;inetdbxpress;soaprtl;vclribbon;dbexpress;DbxCommonDriver;DataSnapIndy10ServerTransport;DataSnapProviderClient;DataSnapServer;DbxClientDriver;DBXInterBaseDriver;DBXMySQLDriver;dbxcds;DBXSybaseASEDriver;DBXSybaseASADriver;DBXOracleDriver;DBXMSSQLDriver;DBXInformixDriver;DBXDb2Driver;IWEliteSuite_100_Delphi2009;InstantBDExpress;IOCore;IOBDE</DCC_UsePackage>
+ <DCC_DependencyCheckOutputName>Intro.exe</DCC_DependencyCheckOutputName>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_WriteableConstants>True</DCC_WriteableConstants>
+ <DCC_Optimize>False</DCC_Optimize>
+ <DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
+ <DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\BDE;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\BDE;$(DCC_ResourcePath)</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\BDE;$(DCC_ObjPath)</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\BDE;$(DCC_IncludePath)</DCC_IncludePath>
+ <DCC_UNSAFE_TYPE>True</DCC_UNSAFE_TYPE>
+ <DCC_UNSAFE_CODE>True</DCC_UNSAFE_CODE>
+ <DCC_UNSAFE_CAST>True</DCC_UNSAFE_CAST>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_DebugDCUs>true</DCC_DebugDCUs>
+ <Version>7.0</Version>
+ <DCC_WriteableConstants>True</DCC_WriteableConstants>
+ <DCC_Optimize>False</DCC_Optimize>
+ <DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
+ <DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
+ <DCC_UnitSearchPath>..\..\Source\Core;..\..\Source\Brokers\BDE;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
+ <DCC_ResourcePath>..\..\Source\Core;..\..\Source\Brokers\BDE;$(DCC_ResourcePath)</DCC_ResourcePath>
+ <DCC_ObjPath>..\..\Source\Core;..\..\Source\Brokers\BDE;$(DCC_ObjPath)</DCC_ObjPath>
+ <DCC_IncludePath>..\..\Source\Core;..\..\Source\Brokers\BDE;$(DCC_IncludePath)</DCC_IncludePath>
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ <DCC_UNSAFE_TYPE>True</DCC_UNSAFE_TYPE>
+ <DCC_UNSAFE_CODE>True</DCC_UNSAFE_CODE>
+ <DCC_UNSAFE_CAST>True</DCC_UNSAFE_CAST>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>VCLApplication</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Parameters>
+ <Parameters Name="UseLauncher">False</Parameters>
+ <Parameters Name="LoadAllSymbols">True</Parameters>
+ <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
+ </Parameters>
+ <Language>
+ <Language Name="ProjectLang">$00000406</Language>
+ </Language>
+ <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">1030</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">Intro.dpr</Source>
+ </Source>
+ <Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dcloffice2k120.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dclofficexp120.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
+ </Excluded_Packages>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <ItemGroup>
+ <DelphiCompile Include="Intro.dpr">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="Model.pas"/>
+ <DCCReference Include="Main.pas">
+ <Form>MainForm</Form>
+ </DCCReference>
+ <DCCReference Include="ContactEdit.pas">
+ <Form>ContactEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="PersonEdit.pas">
+ <Form>PersonEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="CompanyEdit.pas">
+ <Form>CompanyEditForm</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>
+ <ItemGroup/>
+ <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
+ </Project>
Property changes on: trunk/Demos/Intro/Intro_D2009.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Property changes on: trunk/Source/Brokers/XML/D2009
___________________________________________________________________
Added: svn:ignore
+ *.dcu
__history
*.local
Added: trunk/Source/Brokers/XML/D2009/DclIOXML.dpk
===================================================================
--- trunk/Source/Brokers/XML/D2009/DclIOXML.dpk (rev 0)
+++ trunk/Source/Brokers/XML/D2009/DclIOXML.dpk 2009-07-07 10:59:47 UTC (rev 802)
@@ -0,0 +1,40 @@
+package DclIOXML;
+
+{$R *.res}
+{$R '..\InstantXML.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 XML Design-Time Support (Delphi 2009)'}
+{$LIBSUFFIX '_D12'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ rtl,
+ vclx,
+ IOXML;
+
+contains
+ InstantXMLReg in '..\InstantXMLReg.pas';
+
+end.
Property changes on: trunk/Source/Brokers/XML/D2009/DclIOXML.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/XML/D2009/DclIOXML.dproj
===================================================================
--- trunk/Source/Brokers/XML/D2009/DclIOXML.dproj (rev 0)
+++ trunk/Source/Brokers/XML/D2009/DclIOXML.dproj 2009-07-07 10:59:47 UTC (rev 802)
@@ -0,0 +1,121 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{82c41017-7d52-4f3f-92f1-c69cd9f9b523}</ProjectGuid>
+ <MainSource>DclIOXML.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Users\nandod\Documents\RAD Studio\5.0\Bpl\DclIOXML_D11.bpl</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_ImageBase>00400000</DCC_ImageBase>
+ <DesignOnlyPackage>true</DesignOnlyPackage>
+ <DCC_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\6.0\Bpl\DclIOXML_D12.bpl</DCC_DependencyCheckOutputName>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <DCC_Description>InstantObjects XML Design-Time Support (Delphi 2009)</DCC_Description>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <Version>7.0</Version>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality.12</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+ <Delphi.Personality>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">DclIOXML.dpk</Source>
+ </Source>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ <ItemGroup>
+ <DelphiCompile Include="DclIOXML.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="..\InstantXML.dcr"/>
+ <DCCReference Include="vcl.dcp"/>
+ <DCCReference Include="rtl.dcp"/>
+ <DCCReference Include="vclx.dcp"/>
+ <DCCReference Include="IOXML.dcp"/>
+ <DCCReference Include="..\InstantXMLReg.pas"/>
+ <DCCReference Include="..\InstantXML.dcr"/>
+ <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')"/>
+ </Project>
Property changes on: trunk/Source/Brokers/XML/D2009/DclIOXML.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/XML/D2009/DclIOXML.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/XML/D2009/DclIOXML.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/Source/Brokers/XML/D2009/IOXML.dpk
===================================================================
--- trunk/Source/Brokers/XML/D2009/IOXML.dpk (rev 0)
+++ trunk/Source/Brokers/XML/D2009/IOXML.dpk 2009-07-07 10:59:47 UTC (rev 802)
@@ -0,0 +1,41 @@
+package IOXML;
+
+{$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 XML Run-Time Support (Delphi 2009)'}
+{$LIBSUFFIX '_D12'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ rtl,
+ vclx,
+ IOCore;
+
+contains
+ InstantXMLCatalog in '..\InstantXMLCatalog.pas',
+ InstantXMLConnectionDefEdit in '..\InstantXMLConnectionDefEdit.pas' {InstantXMLConnectionDefEditForm},
+ InstantXML in '..\InstantXML.pas';
+
+end.
Property changes on: trunk/Source/Brokers/XML/D2009/IOXML.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/XML/D2009/IOXML.dproj
===================================================================
--- trunk/Source/Brokers/XML/D2009/IOXML.dproj (rev 0)
+++ trunk/Source/Brokers/XML/D2009/IOXML.dproj 2009-07-07 10:59:47 UTC (rev 802)
@@ -0,0 +1,125 @@
+ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{d2f12d26-2127-4834-8d0e-e4c9bfabb985}</ProjectGuid>
+ <MainSource>IOXML.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\nandod\Documenti\RAD Studio\Projects\Bpl\IOXML_D11.bpl</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_DependencyCheckOutputName>C:\Users\Public\Documents\RAD Studio\6.0\Bpl\IOXML_D12.bpl</DCC_DependencyCheckOutputName>
+ <DCC_ImageBase>00400000</DCC_ImageBase>
+ <RuntimeOnlyPackage>true</RuntimeOnlyPackage>
+ <DCC_TypedAtParameter>true</DCC_TypedAtParameter>
+ <DCC_Description>InstantObjects XML Run-Time Support (Delphi 2009)</DCC_Description>
+ <DesignOnlyPackage>false</DesignOnlyPackage>
+ <DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
+ <GenDll>true</GenDll>
+ <GenPackage>true</GenPackage>
+ <DllSuffix>_D12</DllSuffix>
+ <DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_1)'!=''">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Cfg_2)'!=''">
+ <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+ <Version>7.0</Version>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ </PropertyGroup>
+ <ItemGroup>
+ <DelphiCompile Include="IOXML.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="vcl.dcp"/>
+ <DCCReference Include="rtl.dcp"/>
+ <DCCReference Include="vclx.dcp"/>
+ <DCCReference Include="IOCore.dcp"/>
+ <DCCReference Include="..\InstantXMLCatalog.pas"/>
+ <DCCReference Include="..\InstantXMLConnectionDefEdit.pas">
+ <Form>InstantXMLConnectionDefEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="..\InstantXML.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>
+ <Compiler>
+ <Compiler Name="UsePackages">False</Compiler>
+ <Compiler Name="Packages"/>
+ </Compiler>
+ <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">2</VersionInfo>
+ <VersionInfo Name="MinorVer">1</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">1040</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName">www.instantobjects.org</VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"/>
+ <VersionInfoKeys Name="LegalCopyright"/>
+ <VersionInfoKeys Name="LegalTrademarks"/>
+ <VersionInfoKeys Name="OriginalFilename"/>
+ <VersionInfoKeys Name="ProductName">InstantObjects</VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">2.1.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"/>
+ </VersionInfoKeys>
+ <Source>
+ <Source Name="MainSource">IOXML.dpk</Source>
+ </Source>
+ </Delphi.Personality>
+ </BorlandProject>
+ <ProjectFileVersion>12</ProjectFileVersion>
+ </ProjectExtensions>
+ </Project>
Property changes on: trunk/Source/Brokers/XML/D2009/IOXML.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/Source/Brokers/XML/D2009/IOXML.res
===================================================================
(Binary files differ)
Property changes on: trunk/Source/Brokers/XML/D2009/IOXML.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/Source/Core/InstantBrokers.pas
===================================================================
--- trunk/Source/Core/InstantBrokers.pas 2009-04-07 10:07:35 UTC (rev 801)
+++ trunk/Source/Core/InstantBrokers.pas 2009-07-07 10:59:47 UTC (rev 802)
@@ -2329,7 +2329,7 @@
procedure TInstantNavigationalResolver.ReadPart(Attribute: TInstantPart);
var
Field: TField;
- Stream: TInstantStringStream;
+ Stream: TStringStream;
PartClassName: string;
ObjID: string;
begin
@@ -2356,7 +2356,7 @@
Field := FieldByName(Metadata.FieldName);
if not FieldHasObjects(Field) then
Exit;
- Stream := TInstantStringStream.Create(Field.AsString);
+ Stream := TStringStream.Create(Field.AsString);
try
LoadObjectFromStream(Stream);
finally
@@ -2369,7 +2369,7 @@
procedure TInstantNavigationalResolver.ReadParts(Attribute: TInstantParts);
var
Field: TField;
- Stream: TInstantStringStream;
+ Stream: TStringStream;
LinkDatasetResolver: TInstantNavigationalLinkResolver;
begin
with Attribute do
@@ -2386,7 +2386,7 @@
Field := FieldByName(Metadata.FieldName);
if not FieldHasObjects(Field) then
Exit;
- Stream := TInstantStringStream.Create(Field.AsString);
+ Stream := TStringStream.Create(Field.AsString);
try
LoadObjectsFromStream(Stream);
finally
@@ -2413,7 +2413,7 @@
Attribute: TInstantReferences);
var
Field: TField;
- Stream: TInstantStringStream;
+ Stream: TStringStream;
LinkDatasetResolver: TInstantNavigationalLinkResolver;
begin
with Attribute do
@@ -2430,7 +2430,7 @@
Field := FieldByName(Metadata.FieldName);
if not FieldHasObjects(Field) then
Exit;
- Stream := TInstantStringStream.Create(Field.AsString);
+ Stream := TStringStream.Create(Field.AsString);
try
LoadReferencesFromStream(Stream);
finally
@@ -2611,7 +2611,7 @@
procedure TInstantNavigationalResolver.WritePart(Attribute: TInstantPart);
var
Field: TField;
- Stream: TInstantStringStream;
+ Stream: TStringStream;
begin
with Attribute do
begin
@@ -2628,7 +2628,7 @@
else
begin
Field := FieldByName(Metadata.FieldName);
- Stream := TInstantStringStream.Create('');
+ Stream := TStringStream.Create('');
try
SaveObjectToStream(Stream);
Field.AsString := Stream.DataString;
@@ -2642,7 +2642,7 @@
procedure TInstantNavigationalResolver.WriteParts(Attribute: TInstantParts);
var
Field: TField;
- Stream: TInstantStringStream;
+ Stream: TStringStream;
LinkDatasetResolver: TInstantNavigationalLinkResolver;
begin
with Attribute do
@@ -2663,7 +2663,7 @@
else
begin
Field := FieldByName(Metadata.FieldName);
- Stream := TInstantStringStream.Create('');
+ Stream := TStringStream.Create('');
try
SaveObjectsToStream(Stream);
Field.AsString := Stream.DataString;
@@ -2689,7 +2689,7 @@
Attribute: TInstantReferences);
var
Field: TField;
- Stream: TInstantStringStream;
+ Stream: TStringStream;
LinkDatasetResolver: TInstantNavigationalLinkResolver;
begin
with Attribute do
@@ -2709,7 +2709,7 @@
else
begin
Field := FieldByName(Metadata.FieldName);
- Stream := TInstantStringStream.Create('');
+ Stream := TStringStream.Create('');
try
SaveReferencesToStream(Stream);
Field.AsString := Stream.DataString;
@@ -2751,7 +2751,7 @@
begin
Param := AddParam(Params, AFieldName, ftBlob);
if Value <> '' then
- Param.AsBlob := Value
+ Param.AsMemo := Value
end;
procedure AddMemoParam(const AFieldName, Value: string);
@@ -2771,7 +2771,7 @@
if Attribute.IsNull then
LParam.Clear
else
- LParam.AsBlob := (Attribute as TInstantBlob).Value;
+ LParam.AsMemo := (Attribute as TInstantBlob).Value;
end;
procedure AddBooleanAttributeParam;
@@ -2864,7 +2864,7 @@
procedure AddPartAttributeParam;
var
- Stream: TInstantStringStream;
+ Stream: TStringStream;
Part: TInstantPart;
begin
if Attribute.Metadata.StorageKind = skExternal then
@@ -2876,7 +2876,7 @@
end
else
begin
- Stream := TInstantStringStream.Create('');
+ Stream := TStringStream.Create('');
try
(Attribute as TInstantPart).SaveObjectToStream(Stream);
if Broker.Connector.BlobStreamFormat = sfBinary then
@@ -2891,9 +2891,9 @@
procedure AddPartsAttributeParam;
var
- Stream: TInstantStringStream;
+ Stream: TStringStream;
begin
- Stream := TInstantStringStream.Create('');
+ Stream := TStringStream.Create('');
try
(Attribute as TInstantParts).SaveObjectsToStream(Stream);
if Broker.Connector.BlobStreamFormat = sfBinary then
@@ -2917,9 +2917,9 @@
procedure AddReferencesAttributeParam;
var
- Stream: TInstantStringStream;
+ Stream: TStringStream;
begin
- Stream := TInstantStringStream.Create('');
+ Stream := TStringStream.Create('');
try
(Attribute as TInstantReferences).SaveReferencesToStream(Stream);
if Broker.Connector.BlobStreamFormat = sfBinary then
@@ -3557,7 +3557,7 @@
procedure ReadPartAttribute;
var
- Stream: TInstantStringStream;
+ Stream: TStringStream;
LPartClassName: string;
LPartId: string;
begin
@@ -3583,7 +3583,7 @@
end
else
begin
- Stream := TInstantStringStream.Create(ReadBlobField(DataSet,
+ Stream := TStringStream.Create(ReadBlobField(DataSet,
AFieldName));
try
if Stream.Size = 0 then
@@ -3598,7 +3598,7 @@
procedure ReadPartsAttribute;
var
- Stream: TInstantStringStream;
+ Stream: TStringStream;
LinkResolver: TInstantSQLLinkResolver;
begin
if AttributeMetadata.StorageKind = skExternal then
@@ -3618,7 +3618,7 @@
end
else
begin
- Stream := TInstantStringStream.Create(ReadBlobField(DataSet, AFieldName));
+ Stream := TStringStream.Create(ReadBlobField(DataSet, AFieldName));
try
if Stream.Size = 0 then
(Attribute as TInstantParts).Reset
@@ -3639,7 +3639,7 @@
procedure ReadReferencesAttribute;
var
- Stream: TInstantStringStream;
+ Stream: TStringStream;
LinkResolver: TInstantSQLLinkResolver;
begin
if AttributeMetadata.StorageKind = skExternal then
@@ -3659,7 +3659,7 @@
end
else
begin
- Stream := TInstantStringStream.Create(ReadBlobField(DataSet, AFieldName));
+ Stream := TStringStream.Create(ReadBlobField(DataSet, AFieldName));
try
if Stream.Size = 0 then
(Attribute as TInstantReferences).Reset
Modified: trunk/Source/Core/InstantClasses.pas
===================================================================
--- trunk/Source/Core/InstantClasses.pas 2009-04-07 10:07:35 UTC (rev 801)
+++ trunk/Source/Core/InstantClasses.pas 2009-07-07 10:59:47 UTC (rev 802)
@@ -193,7 +193,8 @@
procedure WriteCharSet(CharSet: TChars);
procedure WriteObject(AObject: TPersistent); virtual;
procedure WriteProperties(AObject: TPersistent);
- procedure WriteString(const Value: string);
+ // Might be needed for versions of Delphi <7?
+ //procedure WriteString(const Value: string);
procedure WriteValue(Value: TValueType);
property Stream: TStream read FStream;
end;
@@ -240,13 +241,20 @@
constructor Create(const FileName: string; Mode: Word);
end;
+ {$IFDEF UNICODE}
+ TInstantStringStream = class(TStringStream)
+ public
+ constructor Create(AString: string);
+ end;
+ {$ELSE}
TInstantStringStream = class(TInstantStream)
private
- function GetDataString: string;
+ function GetDataString: AnsiString;
public
constructor Create(AString: string);
- property DataString: string read GetDataString;
+ property DataString: AnsiString read GetDataString;
end;
+ {$ENDIF}
TInstantXMLProducer = class(TObject)
private
@@ -260,6 +268,7 @@
function GetWriter: TAbstractWriter;
procedure SetPosition(Value: Integer);
procedure WriteString(const S: string);
+ procedure WriteWideString(const S: WideString);
protected
property TagStack: TStringList read GetTagStack;
property Writer: TAbstractWriter read GetWriter;
@@ -286,12 +295,12 @@
function GetPosition: Integer;
function GetReader: TAbstractReader;
function GetToken: TInstantXMLToken;
- function ReadEscapedChar: Char;
+ function ReadEscapedChar: AnsiChar;
procedure SetPosition(const Value: Integer);
protected
procedure CheckToken(AToken: TInstantXMLToken);
- function PeekChar: Char;
- function ReadChar: Char;
+ function PeekChar: AnsiChar;
+ function ReadChar: AnsiChar;
procedure SkipBlanks;
property Reader: TAbstractReader read GetReader;
public
@@ -769,13 +778,10 @@
var
ObjectEnd: string;
begin
- with Converter do
- begin
- ObjectEnd := InstantBuildEndTag(ObjectClassName);
- while not SameText(Processor.PeekTag, ObjectEnd) do
- Convert;
- Writer.WriteListEnd;
- end;
+ ObjectEnd := InstantBuildEndTag(Converter.ObjectClassName);
+ while not SameText(Converter.Processor.PeekTag, ObjectEnd) do
+ Converter.Convert;
+ Converter.Writer.WriteListEnd;
end;
class procedure TInstantCollection.ConvertToText(Converter: TInstantBinaryToTextConverter);
@@ -1052,6 +1058,7 @@
WriteListEnd;
end;
+(* Might be needed for versions of Delphi <7?
procedure TInstantWriter.WriteString(const Value: string);
var
L: Integer;
@@ -1068,6 +1075,7 @@
end;
Write(Pointer(Value)^, L);
end;
+*)
procedure TInstantWriter.WriteValue(Value: TValueType);
begin
@@ -1272,13 +1280,18 @@
constructor TInstantStringStream.Create(AString: string);
begin
+ {$IFDEF UNICODE}
+ inherited Create(AString, TEncoding.Unicode);
+ {$ELSE}
inherited Create(TMemoryStream.Create, True);
if Length(AString) > 0 then
Write(AString[1], Length(AString));
Position := 0;
+ {$ENDIF}
end;
-function TInstantStringStream.GetDataString: string;
+{$IFNDEF UNICODE}
+function TInstantStringStream.GetDataString: AnsiString;
var
Pos: Integer;
begin
@@ -1292,9 +1305,11 @@
finally
Position := Pos;
end;
- end else
+ end
+ else
Result := '';
end;
+{$ENDIF}
{ TInstantXMLProducer }
@@ -1405,10 +1420,21 @@
end;
procedure TInstantXMLProducer.WriteString(const S: string);
+var
+ U: UTF8String;
begin
- Writer.Write(S[1], Length(S));
+ U := UTF8String(S);
+ Writer.Write(U[1], Length(U));
end;
+procedure TInstantXMLProducer.WriteWideString(const S: WideString);
+var
+ U : UTF8String;
+begin
+ U := UTF8Encode(S);
+ Writer.Write(U[1], Length(U));
+end;
+
{ TInstantXMLProcessor }
procedure TInstantXMLProcessor.CheckToken(AToken: TInstantXMLToken);
@@ -1455,7 +1481,7 @@
Result := xtData;
end;
-function TInstantXMLProcessor.PeekChar: Char;
+function TInstantXMLProcessor.PeekChar: AnsiChar;
var
Pos: Integer;
begin
@@ -1491,9 +1517,9 @@
end;
end;
-function TInstantXMLProcessor.ReadChar: Char;
+function TInstantXMLProcessor.ReadChar: AnsiChar;
begin
- Reader.Read(Result, SizeOf(Char));
+ Reader.Read(Result, SizeOf(AnsiChar));
end;
function TInstantXMLProcessor.ReadData: string;
@@ -1507,11 +1533,11 @@
procedure TInstantXMLProcessor.ReadData(Stream: TStream);
var
- C: Char;
+ C: AnsiChar;
CharSize: Integer;
begin
CheckToken(xtData);
- CharSize := SizeOf(Char);
+ CharSize := SizeOf(AnsiChar);
while not (PeekChar = InstantTagStart) do
begin
C := ReadEscapedChar;
@@ -1519,7 +1545,7 @@
end;
end;
-function TInstantXMLProcessor.ReadEscapedChar: Char;
+function TInstantXMLProcessor.ReadEscapedChar: AnsiChar;
procedure UnEscape;
var
@@ -1533,7 +1559,7 @@
Result := ReadChar;
end;
if S[1] = '#' then
- Result := Char(StrToInt(Copy(S, 2, Length(S) - 1)))
+ Result := AnsiChar(StrToInt(Copy(S, 2, Length(S) - 1)))
else if S = 'quot' then
Result := #34
else if S = 'amp' then
@@ -1554,7 +1580,7 @@
function TInstantXMLProcessor.ReadTag: string;
var
- C: Char;
+ C: AnsiChar;
Pos: Integer;
begin
Pos := Position;
@@ -1722,6 +1748,8 @@
Producer.WriteData(InstantDateTimeToStr(Reader.ReadDate));
vaString, vaLString:
Producer.WriteEscapedData(Reader.ReadString);
+ vaUTF8String:
+ Producer.WriteWideString(Reader.ReadWideString);
vaSet:
begin
Reader.ReadValue;
@@ -1817,7 +1845,7 @@
procedure ConvertProperty(PropInfo: PPropInfo);
var
I: Integer;
- PropName, ValueStr: string;
+ PropName, ValueStr: String;
S: TStringList;
begin
PropName := Processor.ReadTagName;
@@ -1841,6 +1869,10 @@
{$ENDIF}
tkString, tkLString, tkChar:
Writer.WriteString(ValueStr);
+ {$IFDEF D12+}
+ tkUString:
+ Writer.WriteString(ValueStr);
+ {$ENDIF}
tkEnumeration:
Writer.WriteIdent(ValueStr);
tkSet:
Modified: trunk/Source/Core/InstantCode.pas
===================================================================
--- trunk/Source/Core/InstantCode.pas 2009-04-07 10:07:35 UTC (rev 801)
+++ trunk/Source/Core/InstantCode.pas 2009-07-07 10:59:47 UTC (rev 802)
@@ -1341,8 +1341,8 @@
FOrigin: TInstantCodePos;
procedure SetOrigin(Value: TInstantCodePos);
protected
- function GetStreamPos: Integer; override;
- procedure SetStreamPos(Value: Integer); override;
+ function GetStreamPos: Int64; override;
+ procedure SetStreamPos(Value: Int64); override;
public
procedure Indent;
procedure Unindent;
@@ -5620,7 +5620,7 @@
begin
if I > 0 then
Writer.Write(', ');
- Items[0].Write(Writer);
+ Items[I].Write(Writer);
end;
Writer.WriteLn(';');
finally
@@ -6456,7 +6456,7 @@
{ TInstantCodeWriter }
-function TInstantCodeWriter.GetStreamPos: Integer;
+function TInstantCodeWriter.GetStreamPos: Int64;
begin
Result := inherited GetStreamPos + Origin.Offset;
end;
@@ -6472,7 +6472,7 @@
Position := FOrigin;
end;
-procedure TInstantCodeWriter.SetStreamPos(Value: Integer);
+procedure TInstantCodeWriter.SetStreamPos(Value: Int64);
begin
inherited SetStreamPos(Value - Origin.Offset);
end;
Modified: trunk/Source/Core/InstantCommand.pas
===================================================================
--- trunk/Source/Core/InstantCommand.pas 2009-04-07 10:07:35 UTC (rev 801)
+++ trunk/Source/Core/InstantCommand.pas 2009-07-07 10:59:47 UTC (rev 802)
@@ -716,10 +716,10 @@
function TInstantIQLObject.GetText: string;
var
- Stream: TStringStream;
+ Stream: TInstantStringStream;
Writer: TInstantIQLWriter;
begin
- Stream := TStringStream.Create('');
+ Stream := TInstantStringStream.Create('');
try
Writer := TInstantIQLWriter.Create(Stream);
try
@@ -1702,10 +1702,10 @@
procedure TInstantIQLTranslator.Translate;
var
- Stream: TStringStream;
+ Stream: TInstantStringStream;
Writer: TInstantIQLStatementWriter;
begin
- Stream := TStringStream.Create('');
+ Stream := TInstantStringStream.Create('');
try
Writer := TInstantIQLStatementWriter.Create(Self, Stream);
try
Modified: trunk/Source/Core/InstantExplorer.pas
===================================================================
--- trunk/Source/Core/InstantExplorer.pas 2009-04-07 10:07:35 UTC (rev 801)
+++ trunk/Source/Core/InstantExplorer.pas 2009-07-07 10:59:47 UTC (rev 802)
@@ -627,7 +627,6 @@
Result := TPanel.Create(AOwner);
Result.BevelInner := bvNone;
Result.BevelOuter := bvNone;
- Result.Parent := Self;
end;
procedure TInstantExplorer.CreateSplitter;
Modified: trunk/Source/Core/InstantMetadata.pas
===================================================================
--- trunk/Source/Core/InstantMetadata.pas 2009-04-07 10:07:35 UTC (rev 801)
+++ trunk/Source/Core/InstantMetadata.pas 2009-07-07 10:59:47 UTC (rev 802)
@@ -1800,10 +1800,7 @@
function TInstantAttributeMetadata.GetValidChars: TChars;
begin
- if FValidChars = [] then
- Result := [#0..#255]
- else
- Result := FValidChars;
+ Result := FValidChars;
end;
function TInstantAttributeMetadata.GetValidCharsString: string;
Modified: trunk/Source/Core/InstantPersistence.pas
===================================================================
--- trunk/Source/Core/InstantPersistence.pas 2009-04-07 10:07:35 UTC (rev 801)
+++ trunk/Source/Core/InstantPersistence.pas 2009-07-07 10:59:47 UTC (rev 802)
@@ -1621,8 +1621,8 @@
I: Integer;
begin
Result := True;
- for I := 0 to Pred(BufferLength) do
- if not (Buffer[I] in ValidChars + [#8, #10, #13]) then
+ for I := 0 to Pred(BufferLength div SizeOf(Char)) do
+ if (ValidChars <> []) and not (Buffer[I] in ValidChars + [#8, #10, #13]) then
begin
Result := False;
InvalidChar := Buffer[I];
@@ -1955,7 +1955,7 @@
SizeOfGraphicHeader = 8;
MinimumBytesToRead = 10;
var
- P: array [0..MinimumBytesToRead - 1] of Char;
+ P: array [0..MinimumBytesToRead - 1] of Byte;
StreamLength: Longint;
BytesRetrieved: Integer;
begin
@@ -1964,44 +1964,44 @@
Exit;
StreamLength := AStream.Size;
AStream.Position := 0;
- FillChar(P, SizeOf(P), #0);
+ FillChar(P, SizeOf(P), 0);
BytesRetrieved := AStream.Read(P[0], SizeOf(P));
AStream.Position := 0;
if BytesRetrieved < MinimumBytesToRead then
Exit;
// bitmap format
- if (P[0] = #66) and (P[1] = #77) then
+ if (P[0] = 66) and (P[1] = 77) then
Result := gffBmp
// tiff format
- else if ((P[0] = #73) and (P[1] = #73) and (P[2] = #42) and (P[3] = #0))
- or ((P[0] = #77) and (P[1] = #77) and (P[2] = #42) and (P[3] = #0)) then
+ else if ((P[0] = 73) and (P[1] = 73) and (P[2] = 42) and (P[3] = 0))
+ or ((P[0] = 77) and (P[1] = 77) and (P[2] = 42) and (P[3] = 0)) then
Result := gffTiff
// jpg format
- else if (P[6] = #74) and (P[7] = #70) and (P[8] = #73) and (P[9] = #70)
- or (P[6] = #69) and (P[7] = #120) and (P[8] = #105) and (P[9] = #102) then
+ else if (P[6] = 74) and (P[7] = 70) and (P[8] = 73) and (P[9] = 70)
+ or (P[6] = 69) and (P[7] = 120) and (P[8] = 105) and (P[9] = 102) then
Result := gffJpeg
// png format
- else if (P[0] = #137 ) and (P[1] = #80) and (P[2] = #78) and (P[3] = #71)
- and (P[4] = #13) and (P[5] = #10) and (P[6] = #26) and (P[7] = #10) then
+ else if (P[0] = 137 ) and (P[1] = 80) and (P[2] = 78) and (P[3] = 71)
+ and (P[4] = 13) and (P[5] = 10) and (P[6] = 26) and (P[7] = 10) then
Result := gffPng
// dcx format
- else if (P[0] = #177) and (P[1] = #104) and (P[2] = #222) and (P[3] = #58) then
+ else if (P[0] = 177) and (P[1] = 104) and (P[2] = 222) and (P[3] = 58) then
Result := gffDcx
// pcx format
- else if p[0] = #10 then
+ else if p[0] = 10 then
Result := gffPcx
// emf format
- else if ((P[0] = #215) and (P[1] = #205) and (P[2] = #198) and (P[3] = #154))
- or ((P[0] = #1) and (P[1] = #0) and (P[2] = #0) and (P[3] = #0)) then
+ else if ((P[0] = 215) and (P[1] = 205) and (P[2] = 198) and (P[3] = 154))
+ or ((P[0] = 1) and (P[1] = 0) and (P[2] = 0) and (P[3] = 0)) then
Result := gffEmf
// gif format
- else if (P[0] = #$47) and (P[1] = #$49) and (P[2] = #$46) then
+ else if (P[0] = $47) and (P[1] = $49) and (P[2] = $46) then
Result := gffGif
// Ico format
- else if (P[0] = #00) and (P[1] = #00) and (P[2] = #01) and (P[3] = #00) then
+ else if (P[0] = 00) and (P[1] = 00) and (P[2] = 01) and (P[3] = 00) then
Result := gffIco
// bitmap format with TGraphicHeader header
- else if (P[0] = #01) and (P[1] = #00) and (P[2] = #00) and (P[3] = #01)
+ else if (P[0] = 01) and (P[1] = 00) and (P[2] = 00) and (P[3] = 01)
and (PLongint(@p[4])^ = StreamLength - SizeOfGraphicHeader) then
begin
Result := gffBmp;
@@ -3489,7 +3489,7 @@
begin
if Size > 0 then
begin
- SetLength(Result, Size);
+ SetLength(Result, Size div SizeOf(Char));
Read(Result[1], 0, Size);
end else
Result := '';
@@ -3501,7 +3501,7 @@
if (Metadata.Defaultvalue <> '') then
begin
try
- Write(Metadata.DefaultValue[1], 0, Length(Metadata.DefaultValue));
+ Write(Metadata.DefaultValue[1], 0, Length(Metadata.DefaultValue) * SizeOf(Char));
except
on E: Exception do
raise ConversionError(E);
@@ -3571,9 +3571,10 @@
var
L: Integer;
begin
- L := Length(AValue);
+ L := Length(AValue) * SizeOf(Char);
if L > 0 then
begin
+ Stream.Clear;
WriteBuffer(AValue[1], 0, L);
Stream.Size := L;
end else
Modified: trunk/Source/Core/InstantPresentation.pas
===================================================================
--- trunk/Source/Core/InstantPresentation.pas 2009-04-07 10:07:35 UTC (rev 801)
+++ trunk/Source/Core/InstantPresentation.pas 2009-07-07 10:59:47 UTC (rev 802)
@@ -288,7 +288,11 @@
FContentBuffer: TInstantContentBuffer;
FContentChanged: Boolean;
FFieldOptions: TInstantFieldOptions;
+ {$IFDEF D12+}
+ FFilterBuffer: TRecordBuffer;
+ {$ELSE}
FFilterBuffer: PChar;
+ {$ENDIF}
FInSetFieldData: Boolean;
FIsOpen: Boolean;
FLimited: Boolean;
@@ -319,13 +323,10 @@
FOnAddClassFieldDef: TInstantAddClassFieldDefEvent;
procedure AccessorChanged(Sender: TObject; ChangeType: TInstantChangeType);
procedure CheckClass(AObject: TObject);
- procedure ClearData(Buffer: PChar);
- procedure ClearRecord(Buffer: PChar);
function DataFieldsSize: Integer;
function GetAutoApplyChanges: Boolean;
function GetCanDispose: Boolean;
function GetContentBuffer: TInstantContentBuffer;
- function GetCurrentBuffer: PChar;
function GetDesignClass: TInstantCodeClass;
function GetHasCurrentBuffer: Boolean;
function GetHasSubject: Boolean;
@@ -338,7 +339,6 @@
function GetObjectClassName: string;
function GetObjectCount: Integer;
function GetObjects(Index: Integer): TObject;
- function GetRecInfo(Buffer: PChar): PRecInfo;
function GetRecordBuffer: TInstantRecordBuffer;
function GetSorted: Boolean;
function GetTotalCount: Integer;
@@ -352,7 +352,19 @@
procedure InitFields;
function IsSelfField(Field: TField): Boolean;
procedure ObjectChanged(AObject: TInstantObject);
+ {$IFDEF D12+}
+ procedure ClearData(Buffer: TRecordBuffer);
+ procedure ClearRecord(Buffer: TRecordBuffer);
+ function GetCurrentBuffer: TRecordBuffer;
+ function GetRecInfo(Buffer: TRecordBuffer): PRecInfo;
+ procedure PutObject(Buffer: TRecordBuffer; AObject: TObject; Append: Boolean);
+ {$ELSE}
+ procedure ClearData(Buffer: PChar);
+ procedure ClearRecord(Buffer: PChar);
+ function GetCurrentBuffer: PChar;
+ function GetRecInfo(Buffer: PChar): PRecInfo;
procedure PutObject(Buffer: PChar; AObject: TObject; Append: Boolean);
+ {$ENDIF}
procedure SetContainerName(const Value: string);
procedure SetFieldOptions(Value: TInstantFieldOptions);
procedure SetLimited(Value: Boolean);
@@ -368,10 +380,14 @@
{ IProviderSupport }
procedure PSGetAttributes(List: TList); override;
{$IFDEF D10+}
+ {$IFNDEF D12+}
function PSGetTableNameW: WideString; override;
{$ELSE}
function PSGetTableName: string; override;
{$ENDIF}
+ {$ELSE}
+ function PSGetTableName: string; override;
+ {$ENDIF}
procedure PSReset; override;
protected
procedure AddClassFieldDefs(const FieldName: string; AClass: TClass); overload;
@@ -379,13 +395,49 @@
function AddFieldDef(const Prefix: string; PropInfo: PPropInfo): TFieldDef; overload;
function AddFieldDef(const FieldName: string; FieldType: TFieldType;
FieldSize: Integer; FieldAttribs: TFieldAttributes): TFieldDef; overload;
+ {$IFDEF D12+}
+ function AddNewObject(Buffer: TRecordBuffer; Append: Boolean): TObject;
+ function AllocRecordBuffer: TRecordBuffer; override;
+ procedure ClearCalcFields(Buffer: TRecordBuffer); override;
+ procedure FreeRecordBuffer(var Buffer: TRecordBuffer); override;
+ procedure GetBookmarkData(Buffer: TRecordBuffer; Data: Pointer); override;
+ function GetBookmarkFlag(Buffer: TRecordBuffer): TBookmarkFlag; override;
+ function GetRecord(Buffer: TRecordBuffer; GetMode: TGetMode;
+ DoCheck: Boolean): TGetResult; override;
+ procedure InitRecord(Buffer: TRecordBuffer); override;
+ procedure InternalInitRecord(Buffer: TRecordBuffer); override;
+ procedure InternalSetToRecord(Buffer: TRecordBuffer); override;
+ procedure SetBookmarkData(Buffer: TRecordBuffer; Data: Pointer); override;
+ procedure SetBookmarkFlag(Buffer: TRecordBuffer; Value: TBookmarkFlag); override;
+ procedure CopyObjectToBuffer(AObject: TObject; Buffer: TRecordBuffer);
+ function FindObjectBuffer(AObject: TObject): TRecordBuffer;
+ procedure LoadRecord(RecNo: Integer; Buffer: TRecordBuffer);
+ function InternalGetRecord(Buffer: TRecordBuffer; GetMode: TGetMode;
+ DoCheck: Boolean): TGetResult; virtual;
+ procedure CopyBufferToObject(Buffer: TRecordBuffer; AObject: TObject);
+ {$ELSE}
function AddNewObject(Buffer: PChar; Append: Boolean): TObject;
function AllocRecordBuffer: PChar; override;
+ procedure ClearCalcFields(Buffer: PChar); override;
+ procedure FreeRecordBuffer(var Buffer: PChar); override;
+ procedure GetBookmarkData(Buffer: PChar; Data: Pointer); override;
+ function GetBookmarkFlag(Buffer: PChar): TBookmarkFlag; override;
+ function GetRecord(Buffer: PChar; GetMode: TGetMode;
+ DoCheck: Boolean): TGetResult; override;
+ procedure InitRecord(Buffer: PChar); override;
+ procedure InternalInitRecord(Buffer: PChar); override;
+ procedure InternalSetToRecord(Buffer: PChar); override;
+ procedure SetBookmarkData(Buffer: PChar; Data: Pointer); override;
+ procedure SetBookmarkFlag(Buffer: PChar; Value: TBookmarkFlag); override;
+ procedure CopyObjectToBuffer(AObject: TObject; Buffer: PChar);
+ function FindObjectBuffer(AObject: TObject): PChar;
+ procedure LoadRecord(RecNo: Integer; Buffer: PChar);
+ function InternalGetRecord(Buffer: PChar; GetMode: TGetMode;
+ DoCheck: Boolean): TGetResult; virtual;
+ procedure CopyBufferToObject(Buffer: PChar; AObject: TObject);
+ {$ENDIF}
procedure AutoDispose(AObject: TObject);
procedure AutoStore(AObject: TObject);
- procedure ClearCalcFields(Buffer: PChar); override;
- procedure CopyBufferToObject(Buffer: PChar; AObject: TObject);
- procedure CopyObjectToBuffer(AObject: TObject; Buffer: PChar);
function CreateAccessor: TInstantAccessor; virtual;
procedure CreateFields; override;
function CreateNestedDataSet(DataSetField: TDataSetField): TDataSet; override;
@@ -399,17 +451,11 @@
procedure DoIncludeField(FieldName: string; var Include: Boolean); virtual;
procedure DoTranslate(Field: TField; var Value: Variant; Write: Boolean);
function FindAttributeMetadata(const Path: string): TInstantAttributeMetadata;
- function FindObjectBuffer(AObject: TObject): PChar;
- procedure FreeRecordBuffer(var Buffer: PChar); override;
function GetAccessor: TInstantAccessor; virtual;
- procedure GetBookmarkData(Buffer: PChar; Data: Pointer); override;
- function GetBookmarkFlag(Buffer: PChar): TBookmarkFlag; override;
function GetCanModify: Boolean; override;
function GetCurrentObject: TObject; virtual;
function GetFieldOffset(const Field: TField): Integer;
function GetRecNo: Integer; override;
- function GetRecord(Buffer: PChar; GetMode: TGetMode;
- DoCheck: Boolean): TGetResult; override;
function GetRecordCount: Longint; override;
function GetRecordSize: Word; override;
function GetSubject: TObject; virtual; abstract;
@@ -421,19 +467,15 @@
procedure InitAccessor(AAccessor: TInstantAccessor);
procedure InitField(Field: TField); virtual;
procedure InitFieldDef(FieldDef: TFieldDef); virtual;
- procedure InitRecord(Buffer: PChar); override;
function InternalAddObject(AObject: TObject): Integer;
procedure InternalAddRecord(Buffer: Pointer; Append: Boolean); override;
procedure InternalCancel; override;
procedure InternalClose; override;
procedure InternalDelete; override;
procedure InternalFirst; override;
- function InternalGetRecord(Buffer: PChar; GetMode: TGetMode;
- DoCheck: Boolean): TGetResult; virtual;
procedure InternalGotoBookmark(Bookmark: Pointer); override;
procedure InternalHandleException; override;
procedure InternalInitFieldDefs; override;
- procedure InternalInitRecord(Buffer: PChar); override;
procedure InternalInsert; override;
function InternalInsertObject(ARecNo: Integer; AObject: TObject): Integer; virtual;
procedure InternalLast; override;
@@ -443,14 +485,12 @@
procedure InternalReleaseObject(AObject: TObject); virtual;
function InternalRemoveObject(AObject: TObject): Integer; virtual;
procedure InternalReset; virtual;
- procedure InternalSetToRecord(Buffer: PChar); override;
function IsCalcField(Field: TField): Boolean;
function IsCursorOpen: Boolean; override;
function IsNested: Boolean;
procedure LoadField(Obj: TObject; Field: TField); virtual;
procedure LoadFieldParams(AObject: TObject; Field: TField); virtual;
procedure LoadFieldValue(Field: TField; Buffer: Pointer; AObject: TObject);
- procedure LoadRecord(RecNo: Integer; Buffer: PChar);
function LocateObject(const KeyFields: string; const KeyValues: Variant;
Options: TInstantCompareOptions): Boolean; overload;
function LocateObject(AObject: TObject): Boolean; overload;
@@ -460,8 +500,6 @@
procedure SaveField(Field: TField); virtual;
procedure SaveFieldValue(Field: TField; Buffer: Pointer; AObject: TObject);
procedure SetActive(Value: Boolean); override;
- procedure SetBookmarkData(Buffer: PChar; Data: Pointer); override;
- procedure SetBookmarkFlag(Buffer: PChar; Value: TBookmarkFlag); override;
procedure SetFieldData(Field...
[truncated message content] |
|
From: <na...@us...> - 2009-04-07 10:07:50
|
Revision: 801
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=801&view=rev
Author: nandod
Date: 2009-04-07 10:07:35 +0000 (Tue, 07 Apr 2009)
Log Message:
-----------
* Fixed error 'Control "" has no parent window' when creating controls such as TDBMemo in overridden CreateObjectEditor method.
Modified Paths:
--------------
trunk/Source/Core/InstantExplorer.pas
Modified: trunk/Source/Core/InstantExplorer.pas
===================================================================
--- trunk/Source/Core/InstantExplorer.pas 2009-03-21 23:32:31 UTC (rev 800)
+++ trunk/Source/Core/InstantExplorer.pas 2009-04-07 10:07:35 UTC (rev 801)
@@ -627,6 +627,7 @@
Result := TPanel.Create(AOwner);
Result.BevelInner := bvNone;
Result.BevelOuter := bvNone;
+ Result.Parent := Self;
end;
procedure TInstantExplorer.CreateSplitter;
|
|
From: <Dav...@us...> - 2009-03-21 23:32:35
|
Revision: 800
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=800&view=rev
Author: DavidVTaylor
Date: 2009-03-21 23:32:31 +0000 (Sat, 21 Mar 2009)
Log Message:
-----------
Initial import of AnyDAC broker development (Delphi 2007 only)
Added Paths:
-----------
branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.dpk
branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.dproj
branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.res
branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.dpk
branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.dproj
branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.res
branches/BrokerDev/AnyDAC/InstantAnyDAC.dcr
branches/BrokerDev/AnyDAC/InstantAnyDAC.pas
branches/BrokerDev/AnyDAC/InstantAnyDAC.res
branches/BrokerDev/AnyDAC/InstantAnyDACCatalog.pas
branches/BrokerDev/AnyDAC/InstantAnyDACConnectionDefEdit.dfm
branches/BrokerDev/AnyDAC/InstantAnyDACConnectionDefEdit.pas
branches/BrokerDev/AnyDAC/InstantAnyDACReg.pas
Removed Paths:
-------------
branches/BrokerDev/InstantAnyDAC.dcr
Added: branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.dpk
===================================================================
--- branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.dpk (rev 0)
+++ branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.dpk 2009-03-21 23:32:31 UTC (rev 800)
@@ -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 2007)'}
+{$LIBSUFFIX '_D11'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ IOAnyDAC;
+
+contains
+ InstantAnyDACReg in '..\InstantAnyDACReg.pas';
+
+end.
+
Property changes on: branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Id
Added: svn:eol-style
+ native
Added: branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.dproj
===================================================================
--- branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.dproj (rev 0)
+++ branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.dproj 2009-03-21 23:32:31 UTC (rev 800)
@@ -0,0 +1,131 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{bd7f8385-a35b-4433-9704-0c5a664a70de}</ProjectGuid>
+ <MainSource>DclIOAnyDAC.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\5.0\Bpl\DclIOAnyDAC_D11.bpl</DCC_DependencyCheckOutputName>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+<BorlandProject xmlns=""> <Delphi.Personality> <Parameters>
+ <Parameters Name="UseLauncher">False</Parameters>
+ <Parameters Name="LoadAllSymbols">True</Parameters>
+ <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
+ </Parameters>
+ <Package_Options>
+ <Package_Options Name="PackageDescription">InstantObjects AnyDAC Design-Time Support (Delphi 2007)</Package_Options>
+ <Package_Options Name="ImplicitBuild">False</Package_Options>
+ <Package_Options Name="DesigntimeOnly">True</Package_Options>
+ <Package_Options Name="RuntimeOnly">False</Package_Options>
+ <Package_Options Name="LibSuffix">_D11</Package_Options>
+ </Package_Options>
+ <VersionInfo>
+ <VersionInfo Name="IncludeVerInfo">True</VersionInfo>
+ <VersionInfo Name="AutoIncBuild">False</VersionInfo>
+ <VersionInfo Name="MajorVer">1</VersionInfo>
+ <VersionInfo Name="MinorVer">0</VersionInfo>
+ <VersionInfo Name="Release">0</VersionInfo>
+ <VersionInfo Name="Build">0</VersionInfo>
+ <VersionInfo Name="Debug">False</VersionInfo>
+ <VersionInfo Name="PreRelease">False</VersionInfo>
+ <VersionInfo Name="Special">False</VersionInfo>
+ <VersionInfo Name="Private">False</VersionInfo>
+ <VersionInfo Name="DLL">False</VersionInfo>
+ <VersionInfo Name="Locale">1033</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"></VersionInfoKeys>
+ <VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
+ <VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
+ <VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
+ <VersionInfoKeys Name="ProductName"></VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"></VersionInfoKeys>
+ </VersionInfoKeys>
+ <Excluded_Packages>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
+ </Excluded_Packages>
+ <Source>
+ <Source Name="MainSource">DclIOAnyDAC.dpk</Source>
+ </Source>
+ </Delphi.Personality> </BorlandProject></BorlandProject>
+ </ProjectExtensions>
+ <ItemGroup />
+ <ItemGroup>
+ <DelphiCompile Include="DclIOAnyDAC.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="..\InstantAnyDAC.dcr" />
+ <DCCReference Include="..\InstantAnyDAC.dcr" />
+ <DCCReference Include="..\InstantAnyDACReg.pas" />
+ <DCCReference Include="IOAnyDAC.dcp" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
+</Project>
\ No newline at end of file
Property changes on: branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Id
Added: svn:eol-style
+ native
Added: branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.res
===================================================================
(Binary files differ)
Property changes on: branches/BrokerDev/AnyDAC/D2007/DclIOAnyDAC.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.dpk
===================================================================
--- branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.dpk (rev 0)
+++ branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.dpk 2009-03-21 23:32:31 UTC (rev 800)
@@ -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 2007)'}
+{$LIBSUFFIX '_D11'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ IOCore,
+ xmlrtl,
+ AnyDAC_Phys_D11,
+ AnyDAC_ComI_D11,
+ AnyDAC_Comp_D11;
+
+contains
+ InstantAnyDAC in '..\InstantAnyDAC.pas',
+ InstantAnyDACCatalog in '..\InstantAnyDACCatalog.pas',
+ InstantAnyDACConnectionDefEdit in '..\InstantAnyDACConnectionDefEdit.pas' {InstantAnyDACConnectionDefEditForm};
+
+end.
Property changes on: branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.dpk
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Id
Added: svn:eol-style
+ native
Added: branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.dproj
===================================================================
--- branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.dproj (rev 0)
+++ branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.dproj 2009-03-21 23:32:31 UTC (rev 800)
@@ -0,0 +1,102 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{97b73472-7b2c-4fb3-bff7-971ec36c17ad}</ProjectGuid>
+ <MainSource>IOAnyDAC.dpk</MainSource>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
+ <DCC_DependencyCheckOutputName>C:\Documents and Settings\All Users\Documents\RAD Studio\5.0\Bpl\IOAnyDAC_D11.bpl</DCC_DependencyCheckOutputName>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_DebugInformation>False</DCC_DebugInformation>
+ <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+ <DCC_Define>RELEASE</DCC_Define>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <Version>7.0</Version>
+ <DCC_TypedAtParameter>True</DCC_TypedAtParameter>
+ <DCC_Define>DEBUG</DCC_Define>
+ </PropertyGroup>
+ <ProjectExtensions>
+ <Borland.Personality>Delphi.Personality</Borland.Personality>
+ <Borland.ProjectType>Package</Borland.ProjectType>
+ <BorlandProject>
+<BorlandProject xmlns=""> <Delphi.Personality> <Parameters>
+ <Parameters Name="UseLauncher">False</Parameters>
+ <Parameters Name="LoadAllSymbols">True</Parameters>
+ <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
+ </Parameters>
+ <Package_Options>
+ <Package_Options Name="PackageDescription">InstantObjects AnyDAC Run-Time Support (Delphi 2007)</Package_Options>
+ <Package_Options Name="ImplicitBuild">False</Package_Options>
+ <Package_Options Name="DesigntimeOnly">False</Package_Options>
+ <Package_Options Name="RuntimeOnly">True</Package_Options>
+ <Package_Options Name="LibSuffix">_D11</Package_Options>
+ </Package_Options>
+ <VersionInfo>
+ <VersionInfo Name="IncludeVerInfo">True</VersionInfo>
+ <VersionInfo Name="AutoIncBuild">False</VersionInfo>
+ <VersionInfo Name="MajorVer">1</VersionInfo>
+ <VersionInfo Name="MinorVer">0</VersionInfo>
+ <VersionInfo Name="Release">0</VersionInfo>
+ <VersionInfo Name="Build">0</VersionInfo>
+ <VersionInfo Name="Debug">False</VersionInfo>
+ <VersionInfo Name="PreRelease">False</VersionInfo>
+ <VersionInfo Name="Special">False</VersionInfo>
+ <VersionInfo Name="Private">False</VersionInfo>
+ <VersionInfo Name="DLL">False</VersionInfo>
+ <VersionInfo Name="Locale">1033</VersionInfo>
+ <VersionInfo Name="CodePage">1252</VersionInfo>
+ </VersionInfo>
+ <VersionInfoKeys>
+ <VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
+ <VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
+ <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="InternalName"></VersionInfoKeys>
+ <VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
+ <VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
+ <VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
+ <VersionInfoKeys Name="ProductName"></VersionInfoKeys>
+ <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
+ <VersionInfoKeys Name="Comments"></VersionInfoKeys>
+ </VersionInfoKeys>
+ <Excluded_Packages>
+
+
+
+
+
+
+
+
+ <Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
+ <Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
+ </Excluded_Packages>
+ <Source>
+ <Source Name="MainSource">IOAnyDAC.dpk</Source>
+ </Source>
+ </Delphi.Personality> </BorlandProject></BorlandProject>
+ </ProjectExtensions>
+ <ItemGroup />
+ <ItemGroup>
+ <DelphiCompile Include="IOAnyDAC.dpk">
+ <MainSource>MainSource</MainSource>
+ </DelphiCompile>
+ <DCCReference Include="..\InstantAnyDAC.pas" />
+ <DCCReference Include="..\InstantAnyDACCatalog.pas" />
+ <DCCReference Include="..\InstantAnyDACConnectionDefEdit.pas">
+ <Form>InstantAnyDACConnectionDefEditForm</Form>
+ </DCCReference>
+ <DCCReference Include="AnyDAC_ComI_D11.dcp" />
+ <DCCReference Include="AnyDAC_Comp_D11.dcp" />
+ <DCCReference Include="AnyDAC_Phys_D11.dcp" />
+ <DCCReference Include="IOCore.dcp" />
+ <DCCReference Include="xmlrtl.dcp" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
+</Project>
\ No newline at end of file
Property changes on: branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.dproj
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Id
Added: svn:eol-style
+ native
Added: branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.res
===================================================================
(Binary files differ)
Property changes on: branches/BrokerDev/AnyDAC/D2007/IOAnyDAC.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/BrokerDev/AnyDAC/InstantAnyDAC.dcr
===================================================================
(Binary files differ)
Property changes on: branches/BrokerDev/AnyDAC/InstantAnyDAC.dcr
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/BrokerDev/AnyDAC/InstantAnyDAC.pas
===================================================================
--- branches/BrokerDev/AnyDAC/InstantAnyDAC.pas (rev 0)
+++ branches/BrokerDev/AnyDAC/InstantAnyDAC.pas 2009-03-21 23:32:31 UTC (rev 800)
@@ -0,0 +1,1356 @@
+(*
+ * InstantObjects
+ * RemObjects AnyDAC 2.0 Support
+ *)
+
+(* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is: InstantObjects AnyDAC Support
+ *
+ * The Initial Developer of the Original Code is: David Taylor
+ *
+ * Portions created by the Initial Developer are Copyright (C) 2009
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ *
+ * ***** END LICENSE BLOCK ***** *)
+
+unit InstantAnyDAC;
+
+{$IFDEF LINUX}
+{$I '../../InstantDefines.inc'}
+{$ELSE}
+{$I '..\..\InstantDefines.inc'}
+{$ENDIF}
+
+// Supported databases (only MSSQL has been tested as of 3/21/2009)
+
+{$DEFINE SYBASE_SUPPORT}
+{$DEFINE MSSQL_SUPPORT}
+{$DEFINE IBFB_SUPPORT}
+{$DEFINE ORACLE_SUPPORT}
+{$DEFINE PGSQL_SUPPORT}
+{-- Broken: Not converted to AnyDAC -- $DEFINE MYSQL_SUPPORT}
+{$DEFINE SQLITE_SUPPORT}
+
+interface
+
+uses
+ Classes, Db, InstantPersistence, InstantCommand, InstantDBBuild,
+ InstantBrokers, InstantMetadata, InstantTypes, uADCompClient,
+ uADStanOption, uADStanParam, uADStanIntf, uADStanConst
+ {$IFDEF D10+}, DBCommonTypes{$ENDIF};
+
+type
+ TInstantAnyDACConnectionDef = class(TInstantRelationalConnectionDef)
+ private
+ FCatalog : string;
+ FDatabase : string;
+ FHostName : string;
+ FLoginPrompt : boolean;
+ FPassword : string;
+ FPort : integer;
+ FProperties : string;
+ FProtocol : string;
+ FUseDelimitedIdents : boolean;
+ FUserName : string;
+ protected
+ procedure InitConnector(Connector: TInstantConnector); override;
+ public
+ function Edit: Boolean; override;
+ class function ConnectionTypeName: string; override;
+ class function ConnectorClass: TInstantConnectorClass; override;
+ published
+ property Catalog: string read FCatalog write FCatalog;
+ property Database: string read FDatabase write FDatabase;
+ property HostName: string read FHostName write FHostName;
+ property LoginPrompt: boolean read FLoginPrompt write FLoginPrompt;
+ property Password: string read FPassword write FPassword;
+ property Port: Integer read FPort write FPort;
+ property Properties: string read FProperties write FProperties;
+ property Protocol: string read FProtocol write FProtocol;
+ property UseDelimitedIdents: boolean read FUseDelimitedIdents write FUseDelimitedIdents;
+ property UserName: string read FUserName write FUserName;
+ end;
+
+ TInstantAnyDACBroker = class;
+
+ TInstantAnyDACConnector = class(TInstantRelationalConnector)
+ private
+ FConnection : TADConnection;
+ FLoginPrompt : Boolean;
+ FOnLogin : TLoginEvent;
+ FUseDelimitedIdents : Boolean;
+ procedure DoAfterConnectionChange;
+ procedure DoBeforeConnectionChange;
+ function GetBroker: TInstantAnyDACBroker;
+ function GetConnection: TADConnection;
+ function GetLoginPrompt: Boolean;
+ procedure SetConnection(Value: TADConnection);
+ procedure SetLoginPrompt(const Value: Boolean);
+ procedure SetUseDelimitedIdents(const Value: Boolean);
+ protected
+ procedure AfterConnectionChange; virtual;
+ procedure BeforeConnectionChange; virtual;
+ procedure AssignLoginOptions; virtual;
+ procedure CheckConnection;
+ function CreateBroker: TInstantBroker; override;
+ procedure DoLogin(AConnection: TADCustomConnection;
+ const AConnectionDef: IADStanConnectionDef); virtual;
+ function GetConnected: Boolean; override;
+ function GetDatabaseExists: Boolean; override;
+ procedure InternalBuildDatabase(Scheme: TInstantScheme); override;
+ procedure InternalCommitTransaction; override;
+ procedure InternalConnect; override;
+ procedure InternalCreateDatabase; override;
+ procedure InternalDisconnect; override;
+ procedure InternalRollbackTransaction; override;
+ procedure InternalStartTransaction; override;
+ procedure Notification(AComponent: TComponent; Operation: TOperation); override;
+ function ParamByName(const AName: string): string;
+ public
+ constructor Create(AOwner: TComponent); override;
+ class function ConnectionDefClass: TInstantConnectionDefClass; override;
+ function HasConnection: Boolean;
+ property Broker: TInstantAnyDACBroker read GetBroker;
+ published
+ property Connection: TADConnection read GetConnection write SetConnection;
+ property LoginPrompt: Boolean read GetLoginPrompt write SetLoginPrompt default False;
+ property OnLogin: TLoginEvent read FOnLogin write FOnLogin;
+ property UseDelimitedIdents: Boolean read FUseDelimitedIdents write SetUseDelimitedIdents default False;
+ end;
+
+ TInstantAnyDACBroker = class(TInstantSQLBroker)
+ private
+ function GetConnector: TInstantAnyDACConnector;
+ protected
+ procedure AssignDataSetParams(DataSet: TDataSet; AParams: TParams); override;
+ procedure AssignParam(SourceParam: TParam; TargetParam: TADParam); virtual;
+ function CreateCatalog(const AScheme: TInstantScheme): TInstantCatalog; override;
+ function CreateResolver(Map: TInstantAttributeMap): TInstantSQLResolver; override;
+ function GetDatabaseName: string; override;
+ function GetDBMSName: string; override;
+ function GetSQLDelimiters: string; override;
+ function GetSQLQuote: Char; override;
+ procedure InternalCreateDatabase; virtual;
+ function InternalCreateQuery: TInstantQuery; override;
+ function InternalDataTypeToColumnType(DataType: TInstantDataType): string; virtual; abstract;
+ function InternalDBNotExistsErrorCode: Integer; virtual;
+ function UseBooleanFields: Boolean; virtual; abstract;
+ public
+ procedure CreateDatabase;
+ function CreateDataSet(const AStatement: string; AParams: TParams = nil): TDataSet; override;
+ function CreateDBBuildCommand(const CommandType: TInstantDBBuildCommandType): TInstantDBBuildCommand; override;
+ function DataTypeToColumnType(DataType: TInstantDataType; Size: Integer): string; override;
+ function Execute(const AStatement: string; AParams: TParams = nil): Integer; override;
+ function DBNotExistsErrorCode: Integer;
+ property Connector: TInstantAnyDACConnector read GetConnector;
+ end;
+
+ //
+ // Resolver that interprets an integer column value as a boolean
+ //
+ TInstantAnyDACResolver = class(TInstantSQLResolver)
+ protected
+ function ReadBooleanField(DataSet: TDataSet; const FieldName: string): Boolean; override;
+ end;
+
+ //
+ // Translator that translates a boolean value to a '0' or '1'
+ //
+ TInstantAnyDACTranslator = class(TInstantRelationalTranslator)
+ protected
+ function TranslateConstant(Constant: TInstantIQLConstant; Writer: TInstantIQLWriter): Boolean; override;
+ end;
+
+ TInstantAnyDACQuery = class(TInstantSQLQuery)
+ protected
+ class function TranslatorClass: TInstantRelationalTranslatorClass; override;
+ end;
+
+ { Sybase broker }
+
+ {$IFDEF SYBASE_SUPPORT}
+ TInstantAnyDACSybaseBroker = class(TInstantAnyDACBroker)
+ protected
+ function InternalDataTypeToColumnType(DataType: TInstantDataType): string; override;
+ function UseBooleanFields: Boolean; override;
+ end;
+ {$ENDIF}
+
+ { MS SQL Server broker }
+
+ {$IFDEF MSSQL_SUPPORT}
+ TInstantAnyDACMSSQLBroker = class(TInstantAnyDACBroker)
+ protected
+ function InternalDataTypeToColumnType(DataType: TInstantDataType): string; override;
+ function UseBooleanFields: Boolean; override;
+ end;
+ {$ENDIF}
+
+ { Interbase and Firebird brokers }
+
+ {$IFDEF IBFB_SUPPORT}
+ TInstantAnyDACIbFbBroker = class(TInstantAnyDACBroker)
+ protected
+ procedure InternalCreateDatabase; override;
+ function InternalDataTypeToColumnType(DataType: TInstantDataType): string; override;
+ function InternalDBNotExistsErrorCode: Integer; override;
+ function UseBooleanFields: Boolean; override;
+ end;
+ {$ENDIF}
+
+ { Oracle broker }
+
+ {$IFDEF ORACLE_SUPPORT}
+ TInstantAnyDACOracleBroker = class(TInstantAnyDACBroker)
+ protected
+ function InternalDataTypeToColumnType(DataType: TInstantDataType): string; override;
+ function UseBooleanFields: Boolean; override;
+ end;
+ {$ENDIF}
+
+ { PostgreSQL broker }
+
+ {$IFDEF PGSQL_SUPPORT}
+ TInstantAnyDACPgSQLBroker = class(TInstantAnyDACBroker)
+ protected
+ function InternalDataTypeToColumnType(DataType: TInstantDataType): string; override;
+ function UseBooleanFields: Boolean; override;
+ end;
+ {$ENDIF}
+
+ { MySQL broker }
+
+ {$IFDEF MYSQL_SUPPORT}
+ TInstantMySQLGenerator = class(TInstantSQLGenerator)
+ protected
+ function InternalGenerateDropIndexSQL(Metadata: TInstantIndexMetadata): string; override;
+ end;
+
+ TInstantAnyDACMySQLBroker = class(TInstantAnyDACBroker)
+ protected
+ procedure InternalCreateDatabase; override;
+ function InternalDataTypeToColumnType(DataType: TInstantDataType): string;
+ override;
+ function InternalDBNotExistsErrorCode: Integer; override;
+ function UseBooleanFields: Boolean; override;
+ public
+ class function GeneratorClass: TInstantSQLGeneratorClass; override;
+ end;
+ {$ENDIF}
+
+ { SQLite broker }
+
+ {$IFDEF SQLITE_SUPPORT}
+
+ //SQLite doesn\xB4t support ALTER TABLE. Spport for ADD COLUMN, ALTER COLUMN and
+ //DROP COLUMN, is emulated with a couple of CREATE TEMP TABLE, INSERT INTO,
+ //DROP TABLE, CREATE TABLE, INSERT INTO and finally DROP TABLE
+ TInstantDBBuildSQLiteAlterTableSQLCommand = class(TInstantDBBuildSQLCommand)
+ private
+ FTmpTableMD : TInstantTableMetadata;
+ FOldTableMetadata : TInstantTableMetadata;
+ FNewTableMetadata : TInstantTableMetadata;
+ FScheme : TInstantScheme;
+ protected
+ procedure Rollback; virtual;
+ function GetDescription: string; override;
+ function GetSQLStatement(const Index: Integer): string; override;
+ function GetSQLStatementCount: Integer; override;
+ function GetNewTableMetadata: TInstantTableMetadata;
+ function GetOldTableMetadata: TInstantTableMetadata;
+ procedure InternalExecute; override;
+ public
+ destructor Destroy; override;
+ property OldTableMetadata: TInstantTableMetadata read GetOldTableMetadata;
+ property NewTableMetadata: TInstantTableMetadata read GetNewTableMetadata;
+ end;
+
+ TInstantSQLiteGenerator = class(TInstantSQLGenerator)
+ protected
+ function InternalGenerateInsertFromSelectSQL(const SourceMetadata, TargetMetadata: TInstantTableMetadata): string; virtual;
+ function InternalGenerateCreateTempTableSQL(Metadata: TInstantTableMetadata): string; virtual;
+ public
+ function GenerateCreateTempTableSQL(Metadata: TInstantTableMetadata): string;
+ function GenerateInsertFromSelectSQL(const SourceMetadata, TargetMetadata: TInstantTableMetadata): string;
+ end;
+
+ TInstantAnyDACSQLiteBroker = class(TInstantAnyDACBroker)
+ protected
+ function InternalDataTypeToColumnType(DataType: TInstantDataType): string; override;
+ function UseBooleanFields: Boolean; override;
+ public
+ class function GeneratorClass: TInstantSQLGeneratorClass; override;
+ function CreateDBBuildCommand(const CommandType: TInstantDBBuildCommandType): TInstantDBBuildCommand; override;
+ end;
+ {$ENDIF}
+
+procedure AssignAnyDACProtocols(Strings: TStrings);
+
+implementation
+
+uses
+ SysUtils, {$IFDEF D7+}Types,{$ENDIF} Controls, {$IFDEF D5}DBLogDlg,{$ENDIF}
+ InstantConsts, InstantClasses, InstantAnyDACConnectionDefEdit,
+ InstantAnyDACCatalog, InstantUtils;
+
+{$IFDEF SQLITE_SUPPORT}
+const
+ STmpTableSuffix = '_IOTmp_';
+{$ENDIF}
+
+
+procedure AssignAnyDACProtocols(Strings: TStrings);
+begin
+ if assigned(Strings) then
+ begin
+ Strings.Clear;
+
+ {$IFDEF SYBASE_SUPPORT}
+ Strings.Add(S_AD_ASAId);
+ {$ENDIF}
+
+ {$IFDEF MSSQL_SUPPORT}
+ Strings.Add(S_AD_MSSQLId);
+ {$ENDIF}
+
+ {$IFDEF IBFB_SUPPORT}
+ Strings.Add(S_AD_IBId);
+ {$ENDIF}
+
+ {$IFDEF ORACLE_SUPPORT}
+ Strings.Add(S_AD_OraId);
+ {$ENDIF}
+
+ {$IFDEF PGSQL_SUPPORT}
+ Strings.Add(S_AD_PGId);
+ {$ENDIF}
+
+ {$IFDEF MYSQL_SUPPORT}
+ Strings.Add(S_AD_MySQLId);
+ {$ENDIF}
+
+ {$IFDEF SQLITE_SUPPORT}
+ Strings.Add(S_AD_SQLiteId);
+ {$ENDIF}
+ end;
+end;
+
+
+{ Local routines }
+
+{$IFDEF D5}
+function LoginDialogProcCompatibility(const ADatabaseName: string;
+ var AUserName, APassword: string): Boolean;
+begin
+ Result := LoginDialogEx(ADatabaseName, AUserName, APassword, False);
+end;
+{$ENDIF}
+
+{ TInstantAnyDACConnectionDef }
+
+class function TInstantAnyDACConnectionDef.ConnectionTypeName: string;
+begin
+ Result := 'AnyDAC 2';
+end;
+
+class function TInstantAnyDACConnectionDef.ConnectorClass: TInstantConnectorClass;
+begin
+ Result := TInstantAnyDACConnector;
+end;
+
+function TInstantAnyDACConnectionDef.Edit: Boolean;
+var
+ EditForm : TInstantAnyDACConnectionDefEditForm;
+begin
+ EditForm := TInstantAnyDACConnectionDefEditForm.Create(nil);
+ try
+ EditForm.LoadData(Self);
+ Result := (EditForm.ShowModal = mrOk);
+ if (Result) then
+ EditForm.SaveData(Self);
+ finally
+ EditForm.Free;
+ end;
+end;
+
+procedure TInstantAnyDACConnectionDef.InitConnector(Connector: TInstantConnector);
+var
+ Connection : TADConnection;
+ ADConnector : TInstantAnyDACConnector;
+begin
+ inherited;
+ Connection := TADConnection.Create(Connector);
+ try
+ ADConnector := (Connector as TInstantAnyDACConnector);
+ ADConnector.Connection := Connection;
+ ADConnector.LoginPrompt := LoginPrompt;
+ ADConnector.UseDelimitedIdents := UseDelimitedIdents;
+ Connection.DriverName := Protocol;
+ Connection.TxOptions.AutoCommit := false;
+ Connection.TxOptions.Isolation := xiReadCommitted;
+ Connection.Params.Values['User_Name'] := UserName;
+ Connection.Params.Values['Password'] := Password;
+ Connection.Params.Values['Database'] := Database;
+ Connection.Params.Values['MetaDefCatalog'] := Catalog;
+
+ if (trim(HostName) = '') then
+ HostName := '127.0.0.1';
+
+ if (Port <= 0) then
+ Connection.Params.Values['Server'] := HostName else
+ Connection.Params.Values['Server'] := HostName + ', ' + IntToStr(Port)
+
+ // Connection.Properties.Text := Properties;
+ except
+ Connection.Free;
+ raise;
+ end;
+end;
+
+{ TInstantAnyDACConnector }
+
+procedure TInstantAnyDACConnector.AfterConnectionChange;
+begin
+ if (HasConnection) then
+ begin
+ FConnection.Connected := False;
+ FConnection.TxOptions.AutoCommit := true;
+ FConnection.TxOptions.Isolation := xiReadCommitted;
+ FConnection.OnLogin := DoLogin;
+ end;
+end;
+
+procedure TInstantAnyDACConnector.AssignLoginOptions;
+begin
+ if (HasConnection) then
+ FConnection.LoginPrompt := FLoginPrompt;
+end;
+
+procedure TInstantAnyDACConnector.BeforeConnectionChange;
+begin
+end;
+
+procedure TInstantAnyDACConnector.CheckConnection;
+begin
+ if not assigned(FConnection) then
+ raise EInstantError.Create(SUnassignedConnection);
+end;
+
+class function TInstantAnyDACConnector.ConnectionDefClass: TInstantConnectionDefClass;
+begin
+ Result := TInstantAnyDACConnectionDef;
+end;
+
+constructor TInstantAnyDACConnector.Create(AOwner: TComponent);
+begin
+ inherited Create(AOwner);
+ FLoginPrompt := False;
+ FUseDelimitedIdents := False;
+end;
+
+function TInstantAnyDACConnector.CreateBroker: TInstantBroker;
+begin
+ CheckConnection;
+ Result := nil;
+
+ {$IFDEF SYBASE_SUPPORT}
+ if SameText(FConnection.DriverName, S_AD_ASAId) then
+ Result := TInstantAnyDACSybaseBroker.Create(Self);
+ {$ENDIF}
+
+ {$IFDEF MSSQL_SUPPORT}
+ if SameText(FConnection.DriverName, S_AD_MSSQLId) then
+ Result := TInstantAnyDACMSSQLBroker.Create(Self);
+ {$ENDIF}
+
+ {$IFDEF IBFB_SUPPORT}
+ if SameText(FConnection.DriverName, S_AD_IBId) then
+ Result := TInstantAnyDACIbFbBroker.Create(Self);
+ {$ENDIF}
+
+ {$IFDEF ORACLE_SUPPORT}
+ if SameText(FConnection.DriverName, S_AD_OraId) then
+ Result := TInstantAnyDACOracleBroker.Create(Self);
+ {$ENDIF}
+
+ {$IFDEF PGSQL_SUPPORT}
+ if SameText(FConnection.DriverName, S_AD_PGId) then
+ Result := TInstantAnyDACPgSQLBroker.Create(Self);
+ {$ENDIF}
+
+ {$IFDEF MYSQL_SUPPORT}
+ if SameText(FConnection.DriverName, S_AD_MySQLId) then
+ Result := TInstantAnyDACMySQLBroker.Create(Self);
+ {$ENDIF}
+
+ {$IFDEF SQLITE_SUPPORT}
+ if SameText(FConnection.DriverName, S_AD_SQLiteId) then
+ Result := TInstantAnyDACSQLiteBroker.Create(Self);
+ {$ENDIF}
+
+ if (Result = nil) then
+ raise EInstantError.CreateFmt(SProtocolNotSupported,
+ [FConnection.DriverName]);
+end;
+
+procedure TInstantAnyDACConnector.DoLogin(AConnection: TADCustomConnection;
+ const AConnectionDef: IADStanConnectionDef);
+begin
+ if (assigned(FOnLogin)) then
+ FOnLogin(AConnection, AConnection.Params.Values['User_Name'],
+ AConnection.Params.Values['Password']);
+end;
+
+procedure TInstantAnyDACConnector.DoAfterConnectionChange;
+begin
+ if (HasConnection) then
+ FConnection.FreeNotification(Self);
+ AfterConnectionChange;
+end;
+
+procedure TInstantAnyDACConnector.DoBeforeConnectionChange;
+begin
+ try
+ BeforeConnectionChange;
+ finally
+ if HasConnection then
+ FConnection.RemoveFreeNotification(Self);
+ end;
+end;
+
+function TInstantAnyDACConnector.GetBroker: TInstantAnyDACBroker;
+begin
+ Result := inherited Broker as TInstantAnyDACBroker;
+end;
+
+function TInstantAnyDACConnector.GetConnected: Boolean;
+begin
+ if (HasConnection) then
+ Result := Connection.Connected else
+ Result := inherited GetConnected;
+end;
+
+function TInstantAnyDACConnector.GetConnection: TADConnection;
+begin
+ if not (csDesigning in ComponentState) then
+ CheckConnection;
+ Result := FConnection;
+end;
+
+function TInstantAnyDACConnector.GetDatabaseExists: Boolean;
+begin
+ AssignLoginOptions;
+ try
+ Connection.Connected := True;
+ Result := True;
+ Connection.Connected := False;
+ except
+// TODO Fixup database detection logic for AnyDAC - Exception approach may not work well
+// on E : EZSQLException do
+// if (E.ErrorCode = Broker.DBNotExistsErrorCode) then
+// Result := False
+// else
+// raise;
+ Result := False
+ end;
+end;
+
+function TInstantAnyDACConnector.GetLoginPrompt: Boolean;
+begin
+ if (HasConnection) then
+ FLoginPrompt := FConnection.LoginPrompt;
+ Result := FLoginPrompt;
+end;
+
+function TInstantAnyDACConnector.HasConnection: Boolean;
+begin
+ Result := assigned(FConnection);
+end;
+
+procedure TInstantAnyDACConnector.InternalBuildDatabase(
+ Scheme: TInstantScheme);
+begin
+ StartTransaction;
+ try
+ inherited InternalBuildDatabase(Scheme);
+ CommitTransaction;
+ except
+ RollbackTransaction;
+ raise;
+ end;
+end;
+
+procedure TInstantAnyDACConnector.InternalCommitTransaction;
+begin
+ CheckConnection;
+ if (FConnection.InTransaction) then
+ FConnection.Commit;
+end;
+
+procedure TInstantAnyDACConnector.InternalConnect;
+begin
+ CheckConnection;
+ FConnection.Connected := true;
+end;
+
+procedure TInstantAnyDACConnector.InternalCreateDatabase;
+begin
+ if (Connection.Connected) then
+ raise EInstantError.Create(SDatabaseOpen);
+ Broker.CreateDatabase;
+end;
+
+procedure TInstantAnyDACConnector.InternalDisconnect;
+begin
+ if (HasConnection) then
+ FConnection.Connected := false;
+end;
+
+procedure TInstantAnyDACConnector.InternalRollbackTransaction;
+begin
+ CheckConnection;
+ if (FConnection.InTransaction) then
+ FConnection.Rollback;
+end;
+
+procedure TInstantAnyDACConnector.InternalStartTransaction;
+begin
+ CheckConnection;
+ if (not FConnection.InTransaction) then
+ FConnection.StartTransaction;
+end;
+
+procedure TInstantAnyDACConnector.Notification(AComponent: TComponent;
+ Operation: TOperation);
+begin
+ inherited;
+ if (AComponent = FConnection) and (Operation = opRemove) then
+ FConnection := nil;
+end;
+
+function TInstantAnyDACConnector.ParamByName(const AName: string): string;
+begin
+ Result := Connection.Params.Values[AName];
+end;
+
+procedure TInstantAnyDACConnector.SetConnection(Value: TADConnection);
+begin
+ if (Value <> FConnection) then
+ begin
+ Disconnect;
+ DoBeforeConnectionChange;
+ FConnection := Value;
+ AssignLoginOptions;
+ DoAfterConnectionChange;
+ end;
+end;
+
+procedure TInstantAnyDACConnector.SetLoginPrompt(const Value: Boolean);
+begin
+ FLoginPrompt := Value;
+ AssignLoginOptions;
+end;
+
+procedure TInstantAnyDACConnector.SetUseDelimitedIdents(const Value: Boolean);
+begin
+ FUseDelimitedIdents := Value;
+end;
+
+{ TInstantAnyDACBroker }
+
+procedure TInstantAnyDACBroker.AssignDataSetParams(DataSet: TDataSet; AParams: TParams);
+var
+ SourceParam : TParam;
+ TargetParam : TADParam;
+ i : Integer;
+begin
+ // Don't call inherited
+ for i := 0 to Pred(AParams.Count) do
+ begin
+ SourceParam := AParams[i];
+ TargetParam := (DataSet as TADQuery).Params.FindParam(SourceParam.Name);
+ if assigned(TargetParam) then
+ AssignParam(SourceParam, TargetParam);
+ end;
+end;
+
+procedure TInstantAnyDACBroker.AssignParam(SourceParam: TParam; TargetParam: TADParam);
+begin
+ case SourceParam.DataType of
+ ftBoolean:
+ if UseBooleanFields then
+ TargetParam.Assign(SourceParam) else
+ TargetParam.AsInteger := ord(SourceParam.AsBoolean);
+ else
+ TargetParam.Assign(SourceParam);
+ end;
+end;
+
+function TInstantAnyDACBroker.CreateCatalog(const AScheme: TInstantScheme): TInstantCatalog;
+begin
+ Result := TInstantAnyDACCatalog.Create(AScheme,Self);
+end;
+
+procedure TInstantAnyDACBroker.CreateDatabase;
+begin
+ InternalCreateDatabase;
+end;
+
+function TInstantAnyDACBroker.CreateDataSet(const AStatement: string;
+ AParams: TParams): TDataSet;
+var
+ Query: TADQuery;
+begin
+ Query := TADQuery.Create(nil);
+ try
+ Query.Connection := Connector.Connection;
+ Query.SQL.Text := AStatement;
+ if assigned(AParams) then
+ AssignDatasetParams(Query, AParams);
+ Result := Query;
+ except
+ Query.Free;
+ raise;
+ end;
+end;
+
+function TInstantAnyDACBroker.CreateDBBuildCommand(
+ const CommandType: TInstantDBBuildCommandType): TInstantDBBuildCommand;
+begin
+ if CommandType = ctAddTable then
+ Result := TInstantDBBuildAddTableSQLCommand.Create(CommandType, Connector)
+ else if CommandType = ctDropTable then
+ Result := TInstantDBBuildDropTableSQLCommand.Create(CommandType, Connector)
+ else if CommandType = ctAddField then
+ Result := TInstantDBBuildAddFieldSQLCommand.Create(CommandType, Connector)
+ else if CommandType = ctAlterField then
+ Result := TInstantDBBuildAlterFieldSQLCommand.Create(CommandType, Connector)
+ else if CommandType = ctDropField then
+ Result := TInstantDBBuildDropFieldSQLCommand.Create(CommandType, Connector)
+ else if CommandType = ctAddIndex then
+ Result := TInstantDBBuildAddIndexSQLCommand.Create(CommandType, Connector)
+ else if CommandType = ctAlterIndex then
+ Result := TInstantDBBuildAlterIndexSQLCommand.Create(CommandType, Connector)
+ else if CommandType = ctDropIndex then
+ Result := TInstantDBBuildDropIndexSQLCommand.Create(CommandType, Connector)
+ else
+ Result := inherited CreateDBBuildCommand(CommandType);
+end;
+
+function TInstantAnyDACBroker.CreateResolver(Map: TInstantAttributeMap): TInstantSQLResolver;
+begin
+ if UseBooleanFields then
+ Result := TInstantSQLResolver.Create(Self, Map) else
+ Result := TInstantAnyDACResolver.Create(Self, Map);
+end;
+
+function TInstantAnyDACBroker.DataTypeToColumnType(DataType: TInstantDataType;
+ Size: Integer): string;
+begin
+ Result := InternalDataTypeToColumnType(DataType);
+ if (DataType = dtString) and (Size > 0) then
+ Result := Result + InstantEmbrace(IntToStr(Size), '()');
+end;
+
+function TInstantAnyDACBroker.DBNotExistsErrorCode: Integer;
+begin
+ Result := InternalDBNotExistsErrorCode;
+end;
+
+function TInstantAnyDACBroker.Execute(const AStatement: string;
+ AParams: TParams): Integer;
+var
+ DataSet: TADQuery;
+begin
+ DataSet := AcquireDataSet(AStatement,AParams) as TADQuery;
+ try
+ DataSet.ExecSQL;
+ Result := DataSet.RowsAffected;
+ finally
+ ReleaseDataSet(DataSet);
+ end;
+end;
+
+function TInstantAnyDACBroker.GetConnector: TInstantAnyDACConnector;
+begin
+ Result := inherited Connector as TInstantAnyDACConnector;
+end;
+
+function TInstantAnyDACBroker.GetDatabaseName: string;
+begin
+ Result := Connector.ParamByName('Database');
+end;
+
+function TInstantAnyDACBroker.GetDBMSName: string;
+begin
+ Result := Connector.Connection.DriverName;
+end;
+
+function TInstantAnyDACBroker.GetSQLDelimiters: string;
+begin
+ if not Connector.UseDelimitedIdents then
+ Result := ''
+ else
+ begin
+ with Connector.Connection do
+ begin
+ if (ConnectionMetaDataIntf.NameQuotaChar1 <> #0) and
+ (ConnectionMetaDataIntf.NameQuotaChar1 <> ' ') then
+ Result := ConnectionMetaDataIntf.NameQuotaChar1 else
+ Result := '';
+ if (ConnectionMetaDataIntf.NameQuotaChar2 <> #0) and
+ (ConnectionMetaDataIntf.NameQuotaChar2 <> ' ') then
+ Result := Result + ConnectionMetaDataIntf.NameQuotaChar2;
+ end;
+ end;
+end;
+
+function TInstantAnyDACBroker.GetSQLQuote: Char;
+begin
+ Result := '''';
+end;
+
+procedure TInstantAnyDACBroker.InternalCreateDatabase;
+begin
+ raise EInstantError.CreateFmt(SDatabaseCreationNotSupported, [GetDBMSName]);
+end;
+
+function TInstantAnyDACBroker.InternalCreateQuery: TInstantQuery;
+begin
+ if UseBooleanFields then
+ Result := TInstantSQLQuery.Create(Connector) else
+ Result := TInstantAnyDACQuery.Create(Connector);
+end;
+
+function TInstantAnyDACBroker.InternalDBNotExistsErrorCode: Integer;
+begin
+ Result := 0;
+end;
+
+{ TInstantAnyDACResolver }
+
+function TInstantAnyDACResolver.ReadBooleanField(DataSet: TDataSet;
+ const FieldName: string): Boolean;
+begin
+ Result := (DataSet.FieldByName(FieldName).AsInteger <> 0);
+end;
+
+{ TInstantAnyDACTranslator }
+
+function TInstantAnyDACTranslator.TranslateConstant(
+ Constant: TInstantIQLConstant; Writer: TInstantIQLWriter): Boolean;
+begin
+ if SameText(Constant.Value, InstantTrueString) then
+ begin
+ Writer.WriteChar('1');
+ Result := True;
+ end
+ else if SameText(Constant.Value, InstantFalseString) then
+ begin
+ Writer.WriteChar('0');
+ Result := True;
+ end
+ else
+ Result := inherited TranslateConstant(Constant, Writer);
+end;
+
+{ TInstantAnyDACQuery }
+
+class function TInstantAnyDACQuery.TranslatorClass: TInstantRelationalTranslatorClass;
+begin
+ Result := TInstantAnyDACTranslator;
+end;
+
+{ TInstantAnyDACSybaseBroker }
+
+{$IFDEF SYBASE_SUPPORT}
+function TInstantAnyDACSybaseBroker.InternalDataTypeToColumnType(
+ DataType: TInstantDataType): string;
+const
+ Types: array[TInstantDataType] of string = (
+ 'INTEGER',
+ 'DOUBLE PRECISION',
+ 'MONEY',
+ 'TINYINT',
+ 'VARCHAR',
+ 'TEXT',
+ 'DATETIME',
+ 'IMAGE',
+ 'DATETIME',
+ 'DATETIME');
+begin
+ Result := Types[DataType];
+end;
+
+function TInstantAnyDACSybaseBroker.UseBooleanFields: Boolean;
+begin
+ Result := False;
+end;
+{$ENDIF}
+
+{ TInstantAnyDACMSSQLBroker }
+
+{$IFDEF MSSQL_SUPPORT}
+function TInstantAnyDACMSSQLBroker.InternalDataTypeToColumnType(
+ DataType: TInstantDataType): string;
+const
+ Types: array[TInstantDataType] of string = (
+ 'INTEGER',
+ 'FLOAT',
+ 'MONEY',
+ 'BIT',
+ 'VARCHAR',
+ 'TEXT',
+ 'DATETIME',
+ 'IMAGE',
+ 'DATETIME',
+ 'DATETIME');
+begin
+ Result := Types[DataType];
+end;
+
+function TInstantAnyDACMSSQLBroker.UseBooleanFields: Boolean;
+begin
+ Result := True;
+end;
+{$ENDIF}
+
+{ TInstantAnyDACIbFbBroker }
+
+{$IFDEF IBFB_SUPPORT}
+procedure TInstantAnyDACIbFbBroker.InternalCreateDatabase;
+var
+ OldProperties : string;
+ CharacterSet : string;
+begin
+ // TODO Quick first pass at using built-in AnyDAC database creation logic (not tested)
+ // do not call inherited
+ with Connector do
+ begin
+ OldProperties := Connection.Params.Text;
+
+ try
+ CharacterSet := trim(Connection.Params.Values['CharacterSet']);
+
+ if (CharacterSet = '') then
+ CharacterSet := 'ISO8859_1';
+
+ Connection.Params.Values['CharacterSet'] := CharacterSet;
+ Connection.Params.Values['CreateDatabase'] := 'Yes';
+ Connection.Params.Values['PageSize'] := '4096';
+ Connect;
+ Disconnect;
+ finally
+ Connection.Params.Text := OldProperties;
+ end;
+ end;
+end;
+
+function TInstantAnyDACIbFbBroker.InternalDataTypeToColumnType(DataType: TInstantDataType): string;
+const
+ Types: array[TInstantDataType] of string = (
+ 'INTEGER',
+ 'DOUBLE PRECISION',
+ 'DECIMAL(14,4)',
+ 'SMALLINT',
+ 'VARCHAR',
+ 'BLOB SUB_TYPE 1',
+ 'TIMESTAMP',
+ 'BLOB',
+ 'TIMESTAMP',
+ 'TIMESTAMP');
+begin
+ Result := Types[DataType];
+end;
+
+function TInstantAnyDACIbFbBroker.InternalDBNotExistsErrorCode: Integer;
+begin
+ Result := -902;
+end;
+
+function TInstantAnyDACIbFbBroker.UseBooleanFields: Boolean;
+begin
+ Result := False;
+end;
+{$ENDIF}
+
+{ TInstantAnyDACOracleBroker }
+
+{$IFDEF ORACLE_SUPPORT}
+function TInstantAnyDACOracleBroker.InternalDataTypeToColumnType(
+ DataType: TInstantDataType): string;
+const
+ Types: array[TInstantDataType] of string = (
+ 'NUMBER(10)',
+ 'FLOAT',
+ 'NUMBER(14,4)',
+ 'NUMBER(1)',
+ 'VARCHAR2',
+ 'CLOB',
+ 'DATE',
+ 'BLOB',
+ 'DATE',
+ 'DATE');
+begin
+ Result := Types[DataType];
+end;
+
+function TInstantAnyDACOracleBroker.UseBooleanFields: Boolean;
+begin
+ Result := False;
+end;
+{$ENDIF}
+
+{ TInstantAnyDACPgSQLBroker }
+
+{$IFDEF PGSQL_SUPPORT}
+function TInstantAnyDACPgSQLBroker.InternalDataTypeToColumnType(DataType: TInstantDataType): string;
+const
+ Types: array[TInstantDataType] of string = (
+ 'INTEGER',
+ 'FLOAT8',
+ 'DECIMAL(14,4)',
+ 'BOOLEAN',
+ 'VARCHAR',
+ 'TEXT',
+ 'TIMESTAMP',
+ 'BYTEA',
+ 'TIMESTAMP',
+ 'TIMESTAMP');
+begin
+ Result := Types[DataType];
+end;
+
+function TInstantAnyDACPgSQLBroker.UseBooleanFields: Boolean;
+begin
+ Result := True;
+end;
+{$ENDIF}
+
+{$IFDEF MYSQL_SUPPORT}
+
+{ TInstantMySQLGenerator }
+
+function TInstantMySQLGenerator.InternalGenerateDropIndexSQL(Metadata: TInstantIndexMetadata): string;
+begin
+ Result := Format('ALTER TABLE %s DROP INDEX %s',
+ [Metadata.TableMetadata.Name, Metadata.Name]);
+end;
+
+{ TInstantAnyDACMySQLBroker }
+
+class function TInstantAnyDACMySQLBroker.GeneratorClass: TInstantSQLGeneratorClass;
+begin
+ Result := TInstantMySQLGenerator;
+end;
+
+procedure TInstantAnyDACMySQLBroker.InternalCreateDatabase;
+var
+ MySqlConnection: IZMySqlConnection;
+ OldProperties: string;
+begin
+ // do not call inherited
+ with Connector.Connection do
+ begin
+ OldProperties := Properties.Text;
+ Properties.Values['dbless'] := 'TRUE';
+ try
+ try
+ Connect;
+ DbcConnection.QueryInterface(IZMySqlConnection, MySqlConnection);
+ if Assigned(MySqlConnection) then
+ MySqlConnection.GetPlainDriver.
+ CreateDatabase(MySqlConnection.GetConnectionHandle, PChar(Database))
+ else
+ inherited;
+ finally
+ Disconnect;
+ end;
+ finally
+ Properties.Text := OldProperties;
+ end;
+ end;
+end;
+
+function TInstantAnyDACMySQLBroker.InternalDataTypeToColumnType(DataType: TInstantDataType): string;
+const
+ Types: array[TInstantDataType] of string = (
+ 'INTEGER',
+ 'FLOAT',
+ 'DECIMAL(14,4)',
+ 'BOOL',
+ 'VARCHAR',
+ 'TEXT',
+ 'DATETIME',
+ 'BLOB',
+ 'DATE',
+ 'TIME');
+begin
+ Result := Types[DataType];
+end;
+
+function TInstantAnyDACMySQLBroker.InternalDBNotExistsErrorCode: Integer;
+begin
+ Result := 1049;
+end;
+
+function TInstantAnyDACMySQLBroker.UseBooleanFields: Boolean;
+begin
+ Result := False;
+end;
+{$ENDIF}
+
+{$IFDEF SQLITE_SUPPORT}
+
+{ TInstantDBBuildAlterTableSQLCommand }
+
+destructor TInstantDBBuildSQLiteAlterTableSQLCommand.Destroy;
+begin
+ FNewTableMetadata.Free;
+ FTmpTableMD.Free;
+ FScheme.Free;
+ inherited;
+end;
+
+function TInstantDBBuildSQLiteAlterTableSQLCommand.GetDescription: string;
+begin
+ with Broker.Generator do
+ case CommandType of
+ ctAddField:
+ Result := GenerateAddFieldSQL(NewMetadata as TInstantFieldMetadata);
+ ctAlterField:
+ Result := GenerateAlterFieldSQL(OldMetadata as TInstantFieldMetadata,
+ NewMetadata as TInstantFieldMetadata);
+ ctDropField:
+ Result := GenerateDropFieldSQL(OldMetadata as TInstantFieldMetadata);
+ end;
+ Result := Result + ' - emulated with multi-statement SQL.';
+end;
+
+function TInstantDBBuildSQLiteAlterTableSQLCommand.GetNewTableMetadata: TInstantTableMetadata;
+begin
+ if not Assigned(FNewTableMetadata) then
+ begin
+ FNewTableMetadata := TInstantTableMetadata.Create(OldTableMetadata.Collection);
+ FNewTableMetadata.Assign(OldTableMetadata);
+ case CommandType of
+ ctAddField:
+ FNewTableMetadata.FieldMetadatas.Add.Assign(NewMetadata);
+ ctAlterField:
+ begin
+ with FNewTableMetadata.FieldMetadatas do
+ Remove(Find(OldMetadata.Name));
+ FNewTableMetadata.FieldMetadatas.Add.Assign(NewMetadata);
+ end;
+ ctDropField:
+ with FNewTableMetadata.FieldMetadatas do
+ Remove(Find(OldMetadata.Name));
+ end;
+ end;
+ Result := FNewTableMetadata;
+end;
+
+function TInstantDBBuildSQLiteAlterTableSQLCommand.GetOldTableMetadata: TInstantTableMetadata;
+var
+ FieldMetadata : TInstantFieldMetadata;
+begin
+ if not Assigned(FOldTableMetadata) then
+ begin
+ //Force to read the table from database
+ FScheme := Broker.ReadDatabaseScheme(nil);
+
+ FieldMetadata := nil;
+ case CommandType of
+ ctDropField, ctAlterField:
+ FieldMetadata := TInstantFieldMetadata(OldMetadata);
+ ctAddField:
+ FieldMetadata := TInstantFieldMetadata(NewMetadata);
+ end;
+
+ { TODO : This only works for case-insensitive object names! }
+ FOldTableMetadata :=
+ FScheme.FindTableMetadata(AnsiUpperCase(FieldMetadata.TableMetadata.Name));
+ end;
+ Result := FOldTableMetadata;
+end;
+
+function TInstantDBBuildSQLiteAlterTableSQLCommand.GetSQLStatement(const Index: Integer): string;
+
+ function CreateTmpTableMetadata(TableMetadata: TInstantTableMetadata):
+ TInstantTableMetadata;
+ begin
+ Result := TInstantTableMetadata.Create(TableMetadata.Collection);
+ Result.Assign(TableMetadata);
+ Result.Name := TableMetadata.Name + STmpTableSuffix;
+ end;
+
+begin
+ Result := inherited GetSQLStatement(Index);
+
+ if not Assigned(FTmpTableMD) then
+ FTmpTableMD := CreateTmpTableMetadata(OldTableMetadata);
+
+ with TInstantSQLiteGenerator(Broker.Generator) do
+ case Index of
+ 0: Result := GenerateCreateTempTableSQL(FTmpTableMD);
+ 1: Result := GenerateInsertFromSelectSQL(OldTableMetadata, FTmpTableMD);
+ 2: Result := GenerateDropTableSQL(OldTableMetadata);
+ 3: Result := GenerateCreateTableSQL(NewTableMetadata);
+ 4: Result := GenerateInsertFromSelectSQL(FTmpTableMD, NewTableMetadata);
+ 5: Result := GenerateDropTableSQL(FTmpTableMD);
+ end;
+end;
+
+function TInstantDBBuildSQLiteAlterTableSQLCommand.GetSQLStatementCount: Integer;
+begin
+ Result := 6;
+end;
+
+procedure TInstantDBBuildSQLiteAlterTableSQLCommand.InternalExecute;
+var
+ iStatement: Integer;
+ InTransaction: Boolean;
+begin
+ InTransaction := false;
+ try
+ for iStatement := 0 to Pred(GetSQLStatementCount) do
+ begin
+ Broker.Execute(GetSQLStatement(iStatement));
+ InTransaction := (iStatement > 2) and (iStatement < 5);
+ end;
+ except
+ if InTransaction then Rollback;
+ raise;
+ end;
+end;
+
+procedure TInstantDBBuildSQLiteAlterTableSQLCommand.Rollback;
+begin
+ { TODO : Some DBMS supports data definition within transactions,
+ If AnyDAC knows that then the follow code is unnecessary! }
+ with Broker, TInstantSQLiteGenerator(Broker.Generator) do
+ begin
+ try
+ Execute(GenerateDropTableSQL(NewTableMetadata));
+ except
+ //Safe if NewTable doesn\xB4t exist
+ end;
+ Execute(GenerateCreateTableSQL(OldTableMetadata));
+ Execute(GenerateInsertFromSelectSQL(FTmpTableMD, OldTableMetadata));
+ Execute(GenerateDropTableSQL(FTmpTableMD));
+ end;
+end;
+
+{ TInstantSQLiteGenerator }
+
+function TInstantSQLiteGenerator.GenerateCreateTempTableSQL(
+ Metadata: TInstantTableMetadata): string;
+begin
+ Result := InternalGenerateCreateTempTableSQL(Metadata);
+end;
+
+function TInstantSQLiteGenerator.GenerateInsertFromSelectSQL(
+ const SourceMetadata, TargetMetadata: TInstantTableMetadata): string;
+begin
+ Result := InternalGenerateInsertFromSelectSQL(SourceMetadata, TargetMetadata);
+end;
+
+function TInstantSQLiteGenerator.InternalGenerateCreateTempTableSQL(
+ Metadata: TInstantTableMetadata): string;
+begin
+ Result := InternalGenerateCreateTableSQL(Metadata);
+ Insert('TEMP ', Result, Pos('TABLE', Result));
+end;
+
+function TInstantSQLiteGenerator.InternalGenerateInsertFromSelectSQL(
+ const SourceMetadata, TargetMetadata: TInstantTableMetadata): string;
+var
+ i: Integer;
+ TargetField : TInstantFieldMetadata;
+ FieldList : string;
+begin
+ for i := 0 to Pred(TargetMetadata.FieldMetadatas.Count) do
+ begin
+ TargetField := TargetMetadata.FieldMetadatas[i];
+ { TODO : This only works for case-insensitive object names! }
+ if SourceMetadata.FieldMetadatas.IndexOf(AnsiUpperCase(TargetField.Name)) > -1 then
+ FieldList := FieldList + EmbraceField(TargetField.Name) + ', ';
+ end;
+ Delete(FieldList, Length(FieldList) - 1, 2);
+ Result := Format('INSERT INTO %s(%s) SELECT %s FROM %s',
+ [TargetMetadata.Name, FieldList, FieldList, SourceMetadata.Name]);
+end;
+
+{ TInstantAnyDACSQLiteBroker }
+
+function TInstantAnyDACSQLiteBroker.CreateDBBuildCommand(
+ const CommandType: TInstantDBBuildCommandType): TInstantDBBuildCommand;
+begin
+ case CommandType of
+ ctAddField, ctAlterField, ctDropField:
+ Result := TInstantDBBuildSQLiteAlterTableSQLCommand.Create(CommandType, Connector)
+ else
+ Result := inherited CreateDBBuildCommand(CommandType);
+ end;
+end;
+
+class function TInstantAnyDACSQLiteBroker.GeneratorClass:
+ TInstantSQLGeneratorClass;
+begin
+ Result := TInstantSQLiteGenerator;
+end;
+
+function TInstantAnyDACSQLiteBroker.InternalDataTypeToColumnType(
+ DataType: TInstantDataType): string;
+const
+ Types: array[TInstantDataType] of string = (
+ 'INTEGER',
+ 'FLOAT',
+ 'NUMERIC(14,4)',
+ 'BOOLEAN',
+ 'VARCHAR',
+ 'TEXT',
+ 'TIMESTAMP',
+ 'BLOB',
+ 'TIMESTAMP',
+ 'TIMESTAMP');
+begin
+ Result := Types[DataType];
+end;
+
+function TInstantAnyDACSQLiteBroker.UseBooleanFields: Boolean;
+begin
+ Result := True;
+end;
+{$ENDIF}
+
+initialization
+ RegisterClass(TInstantAnyDACConnectionDef);
+ TInstantAnyDACConnector.RegisterClass;
+ {$IFDEF D5}
+ if (not assigned(LoginDialogProc)) then
+ LoginDialogProc := LoginDialogProcCompatibility;
+ {$ENDIF}
+
+finalization
+ TInstantAnyDACConnector.UnregisterClass;
+ {$IFDEF D5}
+ if @LoginDialogProc = @LoginDialogProcCompatibility then
+ LoginDialogProc := nil;
+ {$ENDIF}
+
+end.
Property changes on: branches/BrokerDev/AnyDAC/InstantAnyDAC.pas
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Id
Added: svn:eol-style
+ native
Added: branches/BrokerDev/AnyDAC/InstantAnyDAC.res
===================================================================
(Binary files differ)
Property changes on: branches/BrokerDev/AnyDAC/InstantAnyDAC.res
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/BrokerDev/AnyDAC/InstantAnyDACCatalog.pas
===================================================================
--- branches/BrokerDev/AnyDAC/InstantAnyDACCatalog.pas (rev 0)
+++ branches/BrokerDev/AnyDAC/InstantAnyDACCatalog.pas 2009-03-21 23:32:31 UTC (rev 800)
@@ -0,0 +1,313 @@
+(*
+ * InstantObjects DBEvolver Support
+ * RemObjects AnyDAC 2.0 Catalog
+ *)
+
+(* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is: InstantObjects DBEvolver Support/AnyDAC Catalog
+ *
+ * The Initial Developer of the Original Code is: David Taylor
+ *
+ * Portions created by the Initial Developer are Copyright (C) 2009
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ *
+ * ***** END LICENSE BLOCK ***** *)
+
+unit InstantAnyDACCatalog;
+
+{$IFDEF LINUX}
+{$I '../../InstantDefines.inc'}
+{$ELSE}
+{$I '..\..\InstantDefines.inc'}
+{$ENDIF}
+
+interface
+
+uses
+ DB, InstantPersistence, InstantAnyDAC, InstantBrokers,
+ InstantMetadata, InstantTypes, uADPhysIntf, uADStanIntf;
+
+type
+ //
+ // A TInstantCatalog that reads catalog information from a
+ // RemObjects AnyDAC 2 connection
+ //
+ TInstantAnyDACCatalog = class(TInstantBrokerCatalog)
+ protected
+ procedure AddFieldMetadatas(TableMetadata: TInstantTableMetadata;
+ const Catalog : string; Schema : string);
+ procedure AddIndexMetadatas(TableMetadata: TInstantTableMetadata;
+ const Catalog : string; Schema : string);
+ procedure AddTableMetadatas(TableMetadatas: TInstantTableMetadatas);
+ function ColumnTypeToDataType(const ColumnType: TADDataType;
+ out DataType: TInstantDataType; out AlternateDataTypes: TInstantDataTypes): Boolean;
+ function GetBroker: TInstantAnyDACBroker;
+ function GetConnector: TInstantAnyDACConnector;
+ public
+ procedure InitTableMetadatas(ATableMetadatas: TInstantTableMetadatas); override;
+ property Broker: TInstantAnyDACBroker read GetBroker;
+ property Connector: TInstantAnyDACConnector read GetConnector;
+ end;
+
+implementation
+
+uses
+ {$IFDEF D7+}Types,{$ENDIF} TypInfo, SysUtils, Classes, Variants,
+ InstantClasses, InstantConsts, uADDatSManager;
+
+
+procedure TInstantAnyDACCatalog.AddFieldMetadatas(TableMetadata: TInstantTableMetadata;
+ const Catalog: string; Schema: string);
+var
+ Fields : TADDatSView;
+ FieldMetadata : TInstantFieldMetadata;
+ FieldDataType : TInstantDataType;
+ FieldAltDataTypes : TInstantDataTypes;
+ ConnMetadata : IADPhysConnectionMetadata;
+ ADFieldName : string;
+ ADFieldType : TADDataType;
+ ADFieldAttrib : TADDataAttributes;
+ IntValue : integer;
+ FieldRow : TADDatSRow;
+ I : integer;
+begin
+ ConnMetadata := Connector.Connection.ConnectionMetaDataIntf;
+ Fields := ConnMetadata.GetTableFields(Catalog,Schema,TableMetadata.Name,'');
+
+ for I := 0 to Fields.Rows.Count - 1 do
+ begin
+ FieldRow := Fields.Rows[I];
+ ADFieldName := VarToStr(FieldRow.GetData('COLUMN_NAME'));
+ ADFieldType := TADDataType(FieldRow.GetData('COLUMN_DATATYPE'));
+ IntValue := FieldRow.GetData('COLUMN_ATTRIBUTES');
+ ADFieldAttrib := TA...
[truncated message content] |
|
From: <Dav...@us...> - 2009-03-21 23:18:35
|
Revision: 799
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=799&view=rev
Author: DavidVTaylor
Date: 2009-03-21 23:18:25 +0000 (Sat, 21 Mar 2009)
Log Message:
-----------
Initial import of AnyDAC broker development (Delphi 2007 only)
Added Paths:
-----------
branches/BrokerDev/AnyDAC/D2007/
|
|
From: <Dav...@us...> - 2009-03-21 23:11:12
|
Revision: 798
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=798&view=rev
Author: DavidVTaylor
Date: 2009-03-21 23:11:07 +0000 (Sat, 21 Mar 2009)
Log Message:
-----------
RemObjects AnyDAC 2 broker development
Added Paths:
-----------
branches/BrokerDev/AnyDAC/
|
|
From: <Dav...@us...> - 2009-03-21 23:10:28
|
Revision: 797
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=797&view=rev
Author: DavidVTaylor
Date: 2009-03-21 23:10:23 +0000 (Sat, 21 Mar 2009)
Log Message:
-----------
test commit - having trouble with svn:mime-type pre-commit hook
Added Paths:
-----------
branches/BrokerDev/InstantAnyDAC.dcr
Added: branches/BrokerDev/InstantAnyDAC.dcr
===================================================================
(Binary files differ)
Property changes on: branches/BrokerDev/InstantAnyDAC.dcr
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: svn:eol-style
+ native
|
|
From: <Dav...@us...> - 2009-03-21 19:54:57
|
Revision: 796
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=796&view=rev
Author: DavidVTaylor
Date: 2009-03-21 19:54:47 +0000 (Sat, 21 Mar 2009)
Log Message:
-----------
Remove - importing entire folder at once
Removed Paths:
-------------
branches/BrokerDev/AnyDAC/
|
|
From: <Dav...@us...> - 2009-03-21 19:17:31
|
Revision: 795
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=795&view=rev
Author: DavidVTaylor
Date: 2009-03-21 19:17:25 +0000 (Sat, 21 Mar 2009)
Log Message:
-----------
RemObjects AnyDAC 2 broker development
Added Paths:
-----------
branches/BrokerDev/AnyDAC/
|
|
From: <Dav...@us...> - 2009-03-21 19:15:52
|
Revision: 794
http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=794&view=rev
Author: DavidVTaylor
Date: 2009-03-21 19:15:50 +0000 (Sat, 21 Mar 2009)
Log Message:
-----------
Folder for IO broker development
Added Paths:
-----------
branches/BrokerDev/
|