Update of /cvsroot/instantobjects/Demos/EvolveTest In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv716/Demos/EvolveTest Added Files: EvolveTest.cfg EvolveTest.dof EvolveTest.dpr EvolveTest.res FMainEvolveTest.dfm FMainEvolveTest.pas Model.pas Log Message: Added Demo to Test db evolver. --- NEW FILE: EvolveTest.dpr --- program EvolveTest; uses Forms, FMainEvolveTest in 'FMainEvolveTest.pas' {EvolverTestForm}, Model in 'Model.pas'; {$R *.res} {$R *.mdr} {Model} begin Application.Initialize; Application.CreateForm(TEvolverTestForm, EvolverTestForm); Application.Run; end. --- NEW FILE: Model.pas --- unit Model; interface uses InstantPersistence; type TEmbeddedPartClass = class; TEmbeddedPartsClass = class; TEmbeddedReferencesClass = class; TExternalPartClass = class; TExternalPartsClass = class; TExternalReferencesClass = class; TMasterClass = class; TReferenceClass = class; TMasterClass = class(TInstantObject) {IOMETADATA stored; StringAttribute: String(10) stored 'StringAttr'; BlobAttribute: Blob stored 'BlobAttr'; BooleanAttribute: Boolean stored 'BooleanAttr'; CurrencyAttribute: Currency stored 'CurrencyAttr'; DateTimeAttribute: DateTime stored 'DateTimeAttr'; FloatAttribute: Float stored 'FloatAttr'; GraphicAttribute: Graphic stored 'GraphicAttr'; IntegerAttribute: Integer stored 'IntegerAttr'; MemoAttribute: Memo stored 'MemoAttr'; ReferenceAttribute: Reference(TReferenceClass); EmbeddedPartsAtttribute: Parts(TEmbeddedPartsClass); ExternalPartsAttribute: Parts(TExternalPartsClass) external 'MC_ExtPartsAttr'; EmbeddedPartAttribute: Part(TEmbeddedPartClass); ExternalPartAttribute: Part(TExternalPartClass) external; EmbeddedReferencesAtttribute: References(TEmbeddedReferencesClass) stored 'EmbRefsAtttr'; ExternalReferencesAttributes: References(TExternalReferencesClass) external 'MC_ExtRefsAttr'; } _BlobAttribute: TInstantBlob; _BooleanAttribute: TInstantBoolean; _CurrencyAttribute: TInstantCurrency; _DateTimeAttribute: TInstantDateTime; _EmbeddedReferencesAtttribute: TInstantReferences; _ExternalPartAttribute: TInstantPart; _ExternalPartsAttribute: TInstantParts; _ExternalReferencesAttributes: TInstantReferences; _FloatAttribute: TInstantFloat; _GraphicAttribute: TInstantGraphic; _IntegerAttribute: TInstantInteger; _EmbeddedPartAttribute: TInstantPart; _EmbeddedPartsAtttribute: TInstantParts; _MemoAttribute: TInstantMemo; _StringAttribute: TInstantString; _ReferenceAttribute: TInstantReference; private function GetBlobAttribute: string; function GetBooleanAttribute: Boolean; function GetCurrencyAttribute: Currency; function GetDateTimeAttribute: TDateTime; function GetEmbeddedReferencesAtttribute(Index: Integer): TEmbeddedReferencesClass; function GetEmbeddedReferencesAtttributeCount: Integer; function GetExternalPartAttribute: TExternalPartClass; function GetExternalPartsAttribute(Index: Integer): TExternalPartsClass; function GetExternalPartsAttributeCount: Integer; function GetExternalReferencesAttributeCount: Integer; function GetExternalReferencesAttributes(Index: Integer): TExternalReferencesClass; function GetFloatAttribute: Double; function GetGraphicAttribute: string; function GetIntegerAttribute: Integer; function GetInternalPartsAtttributeCount: Integer; function GetEmbeddedPartAttribute: TEmbeddedPartClass; function GetEmbeddedPartsAtttribute(Index: Integer): TEmbeddedPartsClass; function GetMemoAttribute: string; function GetStringAttribute: string; function GetReferenceAttribute: TReferenceClass; procedure SetBlobAttribute(const Value: string); procedure SetBooleanAttribute(Value: Boolean); procedure SetCurrencyAttribute(Value: Currency); procedure SetDateTimeAttribute(Value: TDateTime); procedure SetEmbeddedReferencesAtttribute(Index: Integer; Value: TEmbeddedReferencesClass); procedure SetExternalPartAttribute(Value: TExternalPartClass); procedure SetExternalPartsAttribute(Index: Integer; Value: TExternalPartsClass); procedure SetExternalReferencesAttributes(Index: Integer; Value: TExternalReferencesClass); procedure SetFloatAttribute(Value: Double); procedure SetGraphicAttribute(const Value: string); procedure SetIntegerAttribute(Value: Integer); procedure SetEmbeddedPartAttribute(Value: TEmbeddedPartClass); procedure SetEmbeddedPartsAtttribute(Index: Integer; Value: TEmbeddedPartsClass); procedure SetMemoAttribute(const Value: string); procedure SetStringAttribute(const Value: string); procedure SetReferenceAttribute(Value: TReferenceClass); public function AddEmbeddedReferencesAtttribute(EmbeddedReferencesAtttribute: TEmbeddedReferencesClass): Integer; function AddExternalPartsAttribute(ExternalPartsAttribute: TExternalPartsClass): Integer; function AddExternalReferencesAttribute(ExternalReferencesAttribute: TExternalReferencesClass): Integer; function AddInternalPartsAtttribute(InternalPartsAtttribute: TEmbeddedPartsClass): Integer; procedure ClearEmbeddedPartsAtttribute; procedure ClearEmbeddedReferencesAtttribute; procedure ClearExternalPartsAttribute; procedure ClearExternalReferencesAttributes; procedure DeleteEmbeddedReferencesAtttribute(Index: Integer); procedure DeleteExternalPartsAttribute(Index: Integer); procedure DeleteExternalReferencesAttribute(Index: Integer); procedure DeleteInternalPartsAtttribute(Index: Integer); function IndexOfEmbeddedReferencesAtttribute(EmbeddedReferencesAtttribute: TEmbeddedReferencesClass): Integer; function IndexOfExternalPartsAttribute(ExternalPartsAttribute: TExternalPartsClass): Integer; function IndexOfExternalReferencesAttribute(ExternalReferencesAttribute: TExternalReferencesClass): Integer; function IndexOfInternalPartsAtttribute(InternalPartsAtttribute: TEmbeddedPartsClass): Integer; procedure InsertEmbeddedReferencesAtttribute(Index: Integer; EmbeddedReferencesAtttribute: TEmbeddedReferencesClass); procedure InsertExternalPartsAttribute(Index: Integer; ExternalPartsAttribute: TExternalPartsClass); procedure InsertExternalReferencesAttribute(Index: Integer; ExternalReferencesAttribute: TExternalReferencesClass); procedure InsertInternalPartsAtttribute(Index: Integer; InternalPartsAtttribute: TEmbeddedPartsClass); function RemoveEmbeddedReferencesAtttribute(EmbeddedReferencesAtttribute: TEmbeddedReferencesClass): Integer; function RemoveExternalPartsAttribute(ExternalPartsAttribute: TExternalPartsClass): Integer; function RemoveExternalReferencesAttribute(ExternalReferencesAttribute: TExternalReferencesClass): Integer; function RemoveInternalPartsAtttribute(InternalPartsAtttribute: TEmbeddedPartsClass): Integer; property EmbeddedReferencesAtttribute[Index: Integer]: TEmbeddedReferencesClass read GetEmbeddedReferencesAtttribute write SetEmbeddedReferencesAtttribute; property EmbeddedReferencesAtttributeCount: Integer read GetEmbeddedReferencesAtttributeCount; property ExternalPartsAttribute[Index: Integer]: TExternalPartsClass read GetExternalPartsAttribute write SetExternalPartsAttribute; property ExternalPartsAttributeCount: Integer read GetExternalPartsAttributeCount; property ExternalReferencesAttributeCount: Integer read GetExternalReferencesAttributeCount; property ExternalReferencesAttributes[Index: Integer]: TExternalReferencesClass read GetExternalReferencesAttributes write SetExternalReferencesAttributes; property InternalPartsAtttributeCount: Integer read GetInternalPartsAtttributeCount; property EmbeddedPartsAtttribute[Index: Integer]: TEmbeddedPartsClass read GetEmbeddedPartsAtttribute write SetEmbeddedPartsAtttribute; published property BlobAttribute: string read GetBlobAttribute write SetBlobAttribute; property BooleanAttribute: Boolean read GetBooleanAttribute write SetBooleanAttribute; property CurrencyAttribute: Currency read GetCurrencyAttribute write SetCurrencyAttribute; property DateTimeAttribute: TDateTime read GetDateTimeAttribute write SetDateTimeAttribute; property EmbeddedPartAttribute: TEmbeddedPartClass read GetEmbeddedPartAttribute write SetEmbeddedPartAttribute; property ExternalPartAttribute: TExternalPartClass read GetExternalPartAttribute write SetExternalPartAttribute; property FloatAttribute: Double read GetFloatAttribute write SetFloatAttribute; property GraphicAttribute: string read GetGraphicAttribute write SetGraphicAttribute; property IntegerAttribute: Integer read GetIntegerAttribute write SetIntegerAttribute; property MemoAttribute: string read GetMemoAttribute write SetMemoAttribute; property StringAttribute: string read GetStringAttribute write SetStringAttribute; property ReferenceAttribute: TReferenceClass read GetReferenceAttribute write SetReferenceAttribute; end; TReferenceClass = class(TInstantObject) {IOMETADATA stored; DescriptionAtttribute: String(20); } _DescriptionAtttribute: TInstantString; private function GetDescriptionAtttribute: string; procedure SetDescriptionAtttribute(const Value: string); published property DescriptionAtttribute: string read GetDescriptionAtttribute write SetDescriptionAtttribute; end; TEmbeddedPartsClass = class(TInstantObject) {IOMETADATA DescriptionAtttributes: String(20); } _DescriptionAtttributes: TInstantString; private function GetDescriptionAtttributes: string; procedure SetDescriptionAtttributes(const Value: string); published property DescriptionAtttributes: string read GetDescriptionAtttributes write SetDescriptionAtttributes; end; TExternalPartsClass = class(TInstantObject) {IOMETADATA stored; Description: String(20); } _Description: TInstantString; private function GetDescription: string; procedure SetDescription(const Value: string); published property Description: string read GetDescription write SetDescription; end; TEmbeddedPartClass = class(TInstantObject) {IOMETADATA Description: String(20); } _Description: TInstantString; private function GetDescription: string; procedure SetDescription(const Value: string); published property Description: string read GetDescription write SetDescription; end; TExternalPartClass = class(TInstantObject) {IOMETADATA stored; Description: String(20); } _Description: TInstantString; private function GetDescription: string; procedure SetDescription(const Value: string); published property Description: string read GetDescription write SetDescription; end; TEmbeddedReferencesClass = class(TInstantObject) {IOMETADATA stored; Description: String(20); } _Description: TInstantString; private function GetDescription: string; procedure SetDescription(const Value: string); published property Description: string read GetDescription write SetDescription; end; TExternalReferencesClass = class(TInstantObject) {IOMETADATA stored; Description: String(20); } _Description: TInstantString; private function GetDescription: string; procedure SetDescription(const Value: string); published property Description: string read GetDescription write SetDescription; end; implementation { TMasterClass } function TMasterClass.AddEmbeddedReferencesAtttribute(EmbeddedReferencesAtttribute: TEmbeddedReferencesClass): Integer; begin Result := _EmbeddedReferencesAtttribute.Add(EmbeddedReferencesAtttribute); end; function TMasterClass.AddExternalPartsAttribute(ExternalPartsAttribute: TExternalPartsClass): Integer; begin Result := _ExternalPartsAttribute.Add(ExternalPartsAttribute); end; function TMasterClass.AddExternalReferencesAttribute(ExternalReferencesAttribute: TExternalReferencesClass): Integer; begin Result := _ExternalReferencesAttributes.Add(ExternalReferencesAttribute); end; function TMasterClass.AddInternalPartsAtttribute(InternalPartsAtttribute: TEmbeddedPartsClass): Integer; begin Result := _EmbeddedPartsAtttribute.Add(InternalPartsAtttribute); end; procedure TMasterClass.ClearEmbeddedPartsAtttribute; begin _EmbeddedPartsAtttribute.Clear; end; procedure TMasterClass.ClearEmbeddedReferencesAtttribute; begin _EmbeddedReferencesAtttribute.Clear; end; procedure TMasterClass.ClearExternalPartsAttribute; begin _ExternalPartsAttribute.Clear; end; procedure TMasterClass.ClearExternalReferencesAttributes; begin _ExternalReferencesAttributes.Clear; end; procedure TMasterClass.DeleteEmbeddedReferencesAtttribute(Index: Integer); begin _EmbeddedReferencesAtttribute.Delete(Index); end; procedure TMasterClass.DeleteExternalPartsAttribute(Index: Integer); begin _ExternalPartsAttribute.Delete(Index); end; procedure TMasterClass.DeleteExternalReferencesAttribute(Index: Integer); begin _ExternalReferencesAttributes.Delete(Index); end; procedure TMasterClass.DeleteInternalPartsAtttribute(Index: Integer); begin _EmbeddedPartsAtttribute.Delete(Index); end; function TMasterClass.GetBlobAttribute: string; begin Result := _BlobAttribute.Value; end; function TMasterClass.GetBooleanAttribute: Boolean; begin Result := _BooleanAttribute.Value; end; function TMasterClass.GetCurrencyAttribute: Currency; begin Result := _CurrencyAttribute.Value; end; function TMasterClass.GetDateTimeAttribute: TDateTime; begin Result := _DateTimeAttribute.Value; end; function TMasterClass.GetEmbeddedReferencesAtttribute(Index: Integer): TEmbeddedReferencesClass; begin Result := _EmbeddedReferencesAtttribute[Index] as TEmbeddedReferencesClass; end; function TMasterClass.GetEmbeddedReferencesAtttributeCount: Integer; begin Result := _EmbeddedReferencesAtttribute.Count; end; function TMasterClass.GetExternalPartAttribute: TExternalPartClass; begin Result := _ExternalPartAttribute.Value as TExternalPartClass; end; function TMasterClass.GetExternalPartsAttribute(Index: Integer): TExternalPartsClass; begin Result := _ExternalPartsAttribute[Index] as TExternalPartsClass; end; function TMasterClass.GetExternalPartsAttributeCount: Integer; begin Result := _ExternalPartsAttribute.Count; end; function TMasterClass.GetExternalReferencesAttributeCount: Integer; begin Result := _ExternalReferencesAttributes.Count; end; function TMasterClass.GetExternalReferencesAttributes(Index: Integer): TExternalReferencesClass; begin Result := _ExternalReferencesAttributes[Index] as TExternalReferencesClass; end; function TMasterClass.GetFloatAttribute: Double; begin Result := _FloatAttribute.Value; end; function TMasterClass.GetGraphicAttribute: string; begin Result := _GraphicAttribute.Value; end; function TMasterClass.GetIntegerAttribute: Integer; begin Result := _IntegerAttribute.Value; end; function TMasterClass.GetInternalPartsAtttributeCount: Integer; begin Result := _EmbeddedPartsAtttribute.Count; end; function TMasterClass.GetEmbeddedPartAttribute: TEmbeddedPartClass; begin Result := _EmbeddedPartAttribute.Value as TEmbeddedPartClass; end; function TMasterClass.GetEmbeddedPartsAtttribute(Index: Integer): TEmbeddedPartsClass; begin Result := _EmbeddedPartsAtttribute[Index] as TEmbeddedPartsClass; end; function TMasterClass.GetMemoAttribute: string; begin Result := _MemoAttribute.Value; end; function TMasterClass.GetStringAttribute: string; begin Result := _StringAttribute.Value; end; function TMasterClass.GetReferenceAttribute: TReferenceClass; begin Result := _ReferenceAttribute.Value as TReferenceClass; end; function TMasterClass.IndexOfEmbeddedReferencesAtttribute(EmbeddedReferencesAtttribute: TEmbeddedReferencesClass): Integer; begin Result := _EmbeddedReferencesAtttribute.IndexOf(EmbeddedReferencesAtttribute); end; function TMasterClass.IndexOfExternalPartsAttribute(ExternalPartsAttribute: TExternalPartsClass): Integer; begin Result := _ExternalPartsAttribute.IndexOf(ExternalPartsAttribute); end; function TMasterClass.IndexOfExternalReferencesAttribute(ExternalReferencesAttribute: TExternalReferencesClass): Integer; begin Result := _ExternalReferencesAttributes.IndexOf(ExternalReferencesAttribute); end; function TMasterClass.IndexOfInternalPartsAtttribute(InternalPartsAtttribute: TEmbeddedPartsClass): Integer; begin Result := _EmbeddedPartsAtttribute.IndexOf(InternalPartsAtttribute); end; procedure TMasterClass.InsertEmbeddedReferencesAtttribute(Index: Integer; EmbeddedReferencesAtttribute: TEmbeddedReferencesClass); begin _EmbeddedReferencesAtttribute.Insert(Index, EmbeddedReferencesAtttribute); end; procedure TMasterClass.InsertExternalPartsAttribute(Index: Integer; ExternalPartsAttribute: TExternalPartsClass); begin _ExternalPartsAttribute.Insert(Index, ExternalPartsAttribute); end; procedure TMasterClass.InsertExternalReferencesAttribute(Index: Integer; ExternalReferencesAttribute: TExternalReferencesClass); begin _ExternalReferencesAttributes.Insert(Index, ExternalReferencesAttribute); end; procedure TMasterClass.InsertInternalPartsAtttribute(Index: Integer; InternalPartsAtttribute: TEmbeddedPartsClass); begin _EmbeddedPartsAtttribute.Insert(Index, InternalPartsAtttribute); end; function TMasterClass.RemoveEmbeddedReferencesAtttribute(EmbeddedReferencesAtttribute: TEmbeddedReferencesClass): Integer; begin Result := _EmbeddedReferencesAtttribute.Remove(EmbeddedReferencesAtttribute); end; function TMasterClass.RemoveExternalPartsAttribute(ExternalPartsAttribute: TExternalPartsClass): Integer; begin Result := _ExternalPartsAttribute.Remove(ExternalPartsAttribute); end; function TMasterClass.RemoveExternalReferencesAttribute(ExternalReferencesAttribute: TExternalReferencesClass): Integer; begin Result := _ExternalReferencesAttributes.Remove(ExternalReferencesAttribute); end; function TMasterClass.RemoveInternalPartsAtttribute(InternalPartsAtttribute: TEmbeddedPartsClass): Integer; begin Result := _EmbeddedPartsAtttribute.Remove(InternalPartsAtttribute); end; procedure TMasterClass.SetBlobAttribute(const Value: string); begin _BlobAttribute.Value := Value; end; procedure TMasterClass.SetBooleanAttribute(Value: Boolean); begin _BooleanAttribute.Value := Value; end; procedure TMasterClass.SetCurrencyAttribute(Value: Currency); begin _CurrencyAttribute.Value := Value; end; procedure TMasterClass.SetDateTimeAttribute(Value: TDateTime); begin _DateTimeAttribute.Value := Value; end; procedure TMasterClass.SetEmbeddedReferencesAtttribute(Index: Integer; Value: TEmbeddedReferencesClass); begin _EmbeddedReferencesAtttribute[Index] := Value; end; procedure TMasterClass.SetExternalPartAttribute(Value: TExternalPartClass); begin _ExternalPartAttribute.Value := Value; end; procedure TMasterClass.SetExternalPartsAttribute(Index: Integer; Value: TExternalPartsClass); begin _ExternalPartsAttribute[Index] := Value; end; procedure TMasterClass.SetExternalReferencesAttributes(Index: Integer; Value: TExternalReferencesClass); begin _ExternalReferencesAttributes[Index] := Value; end; procedure TMasterClass.SetFloatAttribute(Value: Double); begin _FloatAttribute.Value := Value; end; procedure TMasterClass.SetGraphicAttribute(const Value: string); begin _GraphicAttribute.Value := Value; end; procedure TMasterClass.SetIntegerAttribute(Value: Integer); begin _IntegerAttribute.Value := Value; end; procedure TMasterClass.SetEmbeddedPartAttribute(Value: TEmbeddedPartClass); begin _EmbeddedPartAttribute.Value := Value; end; procedure TMasterClass.SetEmbeddedPartsAtttribute(Index: Integer; Value: TEmbeddedPartsClass); begin _EmbeddedPartsAtttribute[Index] := Value; end; procedure TMasterClass.SetMemoAttribute(const Value: string); begin _MemoAttribute.Value := Value; end; procedure TMasterClass.SetStringAttribute(const Value: string); begin _StringAttribute.Value := Value; end; procedure TMasterClass.SetReferenceAttribute(Value: TReferenceClass); begin _ReferenceAttribute.Value := Value; end; { TReferenceClass } function TReferenceClass.GetDescriptionAtttribute: string; begin Result := _DescriptionAtttribute.Value; end; procedure TReferenceClass.SetDescriptionAtttribute(const Value: string); begin _DescriptionAtttribute.Value := Value; end; { TEmbeddedPartsClass } function TEmbeddedPartsClass.GetDescriptionAtttributes: string; begin Result := _DescriptionAtttributes.Value; end; procedure TEmbeddedPartsClass.SetDescriptionAtttributes(const Value: string); begin _DescriptionAtttributes.Value := Value; end; { TExternalPartsClass } function TExternalPartsClass.GetDescription: string; begin Result := _Description.Value; end; procedure TExternalPartsClass.SetDescription(const Value: string); begin _Description.Value := Value; end; { TEmbeddedPartClass } function TEmbeddedPartClass.GetDescription: string; begin Result := _Description.Value; end; procedure TEmbeddedPartClass.SetDescription(const Value: string); begin _Description.Value := Value; end; { TExternalPartClass } function TExternalPartClass.GetDescription: string; begin Result := _Description.Value; end; procedure TExternalPartClass.SetDescription(const Value: string); begin _Description.Value := Value; end; { TEmbeddedReferencesClass } function TEmbeddedReferencesClass.GetDescription: string; begin Result := _Description.Value; end; procedure TEmbeddedReferencesClass.SetDescription(const Value: string); begin _Description.Value := Value; end; { TExternalReferencesClass } function TExternalReferencesClass.GetDescription: string; begin Result := _Description.Value; end; procedure TExternalReferencesClass.SetDescription(const Value: string); begin _Description.Value := Value; end; initialization InstantRegisterClasses([ TEmbeddedPartClass, TEmbeddedPartsClass, TEmbeddedReferencesClass, TExternalPartClass, TExternalPartsClass, TExternalReferencesClass, TMasterClass, TReferenceClass ]); end. --- NEW FILE: FMainEvolveTest.pas --- unit FMainEvolveTest; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, InstantConnectionManager, Menus, ActnList, InstantPersistence, DB, InstantPresentation, Grids, DBGrids, DBActns, ImgList, ComCtrls, ToolWin; type TEvolverTestForm = class(TForm) connectionManager: TInstantConnectionManager; ActionList: TActionList; acntConnectionManager: TAction; MainMenu: TMainMenu; miFile: TMenuItem; ConnectionManager1: TMenuItem; MCSelector: TInstantSelector; MCDataSource: TDataSource; DBGrid1: TDBGrid; MCSelectorBlobAttribute: TBlobField; MCSelectorBooleanAttribute: TBooleanField; MCSelectorCurrencyAttribute: TBCDField; MCSelectorDateTimeAttribute: TDateTimeField; MCSelectorEmbeddedPartAttributeDescription: TStringField; MCSelectorEmbeddedPartsAtttribute: TDataSetField; MCSelectorEmbeddedReferencesAtttribute: TDataSetField; MCSelectorExternalPartAttributeDescription: TStringField; MCSelectorExternalPartsAttribute: TDataSetField; MCSelectorExternalReferencesAttributes: TDataSetField; MCSelectorFloatAttribute: TFloatField; MCSelectorGraphicAttribute: TBlobField; MCSelectorIntegerAttribute: TIntegerField; MCSelectorMemoAttribute: TMemoField; MCSelectorReferenceAttributeDescriptionAtttribute: TStringField; MCSelectorStringAttribute: TStringField; ToolBar1: TToolBar; ToolButton1: TToolButton; ToolButton2: TToolButton; ToolButton3: TToolButton; ToolButton4: TToolButton; ToolButton5: TToolButton; ToolButton6: TToolButton; ImageList: TImageList; DataSetFirst1: TDataSetFirst; DataSetPrior1: TDataSetPrior; DataSetNext1: TDataSetNext; DataSetLast1: TDataSetLast; DataSetInsert1: TDataSetInsert; DataSetDelete1: TDataSetDelete; DataSetEdit1: TDataSetEdit; DatasetPost1: TDataSetPost; DataSetCancel1: TDataSetCancel; DataSetRefresh1: TDataSetRefresh; ToolButton7: TToolButton; ToolButton8: TToolButton; ToolButton9: TToolButton; ToolButton10: TToolButton; ToolButton11: TToolButton; ToolButton12: TToolButton; ToolButton13: TToolButton; Edit1: TMenuItem; Insert1: TMenuItem; Edit2: TMenuItem; Delete1: TMenuItem; N1: TMenuItem; Store1: TMenuItem; Cancel1: TMenuItem; Move1: TMenuItem; First1: TMenuItem; Prior1: TMenuItem; Next1: TMenuItem; Last1: TMenuItem; procedure acntConnectionManagerExecute(Sender: TObject); procedure FormCreate(Sender: TObject); procedure connectionManagerConnect(Sender: TObject; var ConnectionDef: TInstantConnectionDef; var Result: Boolean); procedure connectionManagerDisconnect(Sender: TObject; var ConnectionDef: TInstantConnectionDef; var Result: Boolean); procedure connectionManagerIsConnected(Sender: TObject; var ConnectionDef: TInstantConnectionDef; var Result: Boolean); private FConnectionDef: TInstantConnectionDef; FConnector: TInstantConnector; procedure OpenData; procedure CloseData; public procedure Connect; procedure Disconnect; end; var EvolverTestForm: TEvolverTestForm; implementation {$R *.dfm} uses InstantIBX, InstantUIB, InstantDBX, InstantADO, InstantConnectionManagerForm; var BusySaveCursor: TCursor; BusyCount: Integer; procedure BeginBusy; begin if BusyCount = 0 then begin BusySaveCursor := Screen.Cursor; Screen.Cursor := crHourglass; end; Inc(BusyCount); end; procedure EndBusy; begin if BusyCount > 0 then begin Dec(BusyCount); if BusyCount = 0 then Screen.Cursor := BusySaveCursor; end; end; procedure TEvolverTestForm.acntConnectionManagerExecute(Sender: TObject); begin ConnectionManager.Execute; end; procedure TEvolverTestForm.FormCreate(Sender: TObject); begin ConnectionManager.FileName := ChangeFileExt(Application.ExeName,'.con'); end; procedure TEvolverTestForm.connectionManagerConnect(Sender: TObject; var ConnectionDef: TInstantConnectionDef; var Result: Boolean); begin Application.ProcessMessages; Disconnect; FConnector := ConnectionDef.CreateConnector(Self); try FConnector.IsDefault := True; FConnectionDef := ConnectionDef; Connect; Result := True; except FConnectionDef := nil; FreeAndNil(FConnector); raise; end; end; procedure TEvolverTestForm.connectionManagerDisconnect(Sender: TObject; var ConnectionDef: TInstantConnectionDef; var Result: Boolean); begin Disconnect; Result := True; end; procedure TEvolverTestForm.connectionManagerIsConnected(Sender: TObject; var ConnectionDef: TInstantConnectionDef; var Result: Boolean); begin Result := ConnectionDef = FConnectionDef; end; procedure TEvolverTestForm.Connect; begin if not Assigned(FConnector) then Exit; BeginBusy; try FConnector.Connect; OpenData; finally EndBusy; end; end; procedure TEvolverTestForm.Disconnect; begin BeginBusy; try if Assigned(FConnector) then begin CloseData; FConnector.Disconnect; FreeAndNil(FConnector); end; FConnectionDef := nil; finally EndBusy; end; end; procedure TEvolverTestForm.CloseData; begin MCSelector.Close; end; procedure TEvolverTestForm.OpenData; begin MCSelector.Open; end; end. --- NEW FILE: EvolveTest.dof --- [FileVersion] Version=7.0 [Compiler] A=8 B=0 C=1 D=1 E=0 F=0 G=1 H=1 I=1 J=0 K=0 L=1 M=0 N=1 O=0 P=1 Q=1 R=1 S=0 T=0 U=0 V=1 W=0 X=1 Y=1 Z=1 ShowHints=1 ShowWarnings=1 UnitAliases= NamespacePrefix= SymbolDeprecated=1 SymbolLibrary=1 SymbolPlatform=1 UnitLibrary=1 UnitPlatform=1 UnitDeprecated=1 HResultCompat=1 HidingMember=1 HiddenVirtual=1 Garbage=1 BoundsError=1 ZeroNilCompat=1 StringConstTruncated=1 ForLoopVarVarPar=1 TypedConstVarPar=1 AsgToTypedConst=1 CaseLabelRange=1 ForVariable=1 ConstructingAbstract=1 ComparisonFalse=1 ComparisonTrue=1 ComparingSignedUnsigned=1 CombiningSignedUnsigned=1 UnsupportedConstruct=1 FileOpen=1 FileOpenUnitSrc=1 BadGlobalSymbol=1 DuplicateConstructorDestructor=1 InvalidDirective=1 PackageNoLink=1 PackageThreadVar=1 ImplicitImport=1 HPPEMITIgnored=1 NoRetVal=1 UseBeforeDef=1 ForLoopVarUndef=1 UnitNameMismatch=1 NoCFGFileFound=1 MessageDirective=1 ImplicitVariants=1 UnicodeToLocale=1 LocaleToUnicode=1 ImagebaseMultiple=1 SuspiciousTypecast=1 PrivatePropAccessor=1 UnsafeType=0 UnsafeCode=0 UnsafeCast=0 [Linker] MapFile=0 OutputObjs=0 ConsoleApp=1 DebugInfo=0 RemoteSymbols=0 MinStackSize=16384 MaxStackSize=1048576 ImageBase=4194304 ExeDescription=*** CBVCL Package Delphi 7: VCL components *** [Directories] OutputDir= UnitOutputDir= PackageDLLOutputDir= PackageDCPOutputDir= SearchPath=$(DELPHI)\Lib\Debug Packages=vcl;rtl;dbrtl;adortl;vcldb;vclx;bdertl;vcldbx;ibxpress;dsnap;cds;bdecds;qrpt;teeui;teedb;tee;dss;teeqr;visualclx;visualdbclx;dsnapcrba;dsnapcon;VclSmp;vclshlctrls;vclie;xmlrtl;inet;inetdbbde;inetdbxpress;inetdb;nmfast;webdsnap;websnap;dbexpress;dbxcds;indy;dclaxserver;rbTDBC61;rbRCL66;rbCIDE66;rbIDE66;rbBDE66;rbRIDE66;rbRAP66;rbDBDE66;rbDAD66;rbDIDE66;rbUSER66;rbDB66;rbADO66;rbDBE66;rbIBE66;dxEdtrD6;dxcomnd6;EQTLD6;ECQDBCD6;EQDBTLD6;EQGridD6;dxGrEdD6;dxExELD6;dxELibD6;ioibx60;iobde60;ioado60;vclactnband;libxml2D7;CBLiscor;rbRCL77;dxEdtrD7;rbDB77;dxComnD7;CBBde2Dbx;IOCore;IOXML;IOUIB;IOIBX;IODBX;IOBDE;IOADO;DBXLISCOR70CL;DBXLSFORMS70CL Conditionals= DebugSourceDirs= UsePackages=0 [Parameters] RunParams= HostApplication= Launcher= UseLauncher=0 DebugCWD= [Language] ActiveLang= ProjectLang= RootDir=C:\Programmi\Borland\Delphi7\Bin\ [Version Info] IncludeVerInfo=1 AutoIncBuild=0 MajorVer=1 MinorVer=0 Release=0 Build=0 Debug=0 PreRelease=0 Special=0 Private=0 DLL=0 Locale=1040 CodePage=1252 [Version Info Keys] CompanyName= FileDescription= FileVersion=1.0.0.0 InternalName= LegalCopyright=Carlo Barazzetta LegalTrademarks= OriginalFilename= ProductName= ProductVersion=1.0.0.0 Comments= [Excluded Packages] C:\Programmi\Borland\Delphi7\Projects\Bpl\DclIOUIB_D7.bpl=InstantObjects UIB Design-Time Support (Delphi 7) c:\programmi\borland\delphi7\Projects\Bpl\CBXslFop70.bpl=*** XSLFOP Package Delphi 7: XSL & FOP utilities *** C:\Programmi\Borland\Delphi7\Projects\Bpl\CBCommon70.bpl=*** CB common Package Delphi 7: multi-platform components *** C:\Programmi\Borland\Delphi7\Projects\Bpl\CBVCL70.bpl=*** CBVCL Package Delphi 7: VCL components *** c:\programmi\borland\delphi7\Projects\Bpl\dclInstantBDExpress.bpl=* Ethea-InstantBDExpress components-DesignTime Package * c:\programmi\borland\delphi7\Projects\Bpl\CBCLX70.bpl=*** CBCLX Package Delphi 7: CLX components *** c:\programmi\borland\delphi7\Projects\Bpl\CBRBuilderVCL.bpl=*** CBRBuilderVCL ReportBuilder VCL Support *** c:\programmi\borland\delphi7\Projects\Bpl\OOoPackage70.bpl=* Ethea - OpenOffice.org Components * c:\programmi\borland\delphi7\Projects\Bpl\CBDesign70.bpl=*** Design-time property-editors Delphi 7 per CBVCL *** C:\WINDOWS\system32\rbIBE77.bpl=ReportBuilder Data Access for Interbase Express [HistoryLists\hlSearchPath] Count=1 Item0=$(DELPHI)\Lib\Debug --- NEW FILE: EvolveTest.res --- (This appears to be a binary file; contents omitted.) --- NEW FILE: FMainEvolveTest.dfm --- object EvolverTestForm: TEvolverTestForm Left = 513 Top = 187 Width = 631 Height = 460 Caption = 'Evolve Test' Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -11 Font.Name = 'MS Sans Serif' Font.Style = [] Menu = MainMenu OldCreateOrder = False Position = poScreenCenter OnCreate = FormCreate PixelsPerInch = 96 TextHeight = 13 object DBGrid1: TDBGrid [...2049 lines suppressed...] F80F0000FC7F8FFFFF8F8001FE7FFFFF81FFFFFFFFFFFFFF801F1F9FC1FF8000 800F008F801F8000800700078003800080070003800380008007000080018000 8003000180018000800300038000800080030001800080008001000180008000 800000008007800083C30000C0078000FFC3000FE01F8000FC07000FF03F8000 FC0FC03FFFFF8000FF3FFFFFFFFFFFFFFFFFFFFFF93FFFFFFF9FF9FFE007C001 FF0FF0FFC0018001FE0FF07F80018001FC0FF03F80038001F80FF01F80038001 F00FF00F80038001E00FF00780038001E00FF00780038001E00FF007E0078001 F00FF00FE01F8001F80FF01FE03F8001FC0FF03FE03F8001FE0FF07FC03F8003 FF0FF0FFC07FFFFFFF9FF9FF807FFFFFFFFFF801FFFF8003E001F801FC018003 8001F801C00180038001F801800180038001800180018003C001800180018003 E001800180018003E001800180018003E001800180018003E001800180018003 E001800180038003E001800380078003E001803F80078003E001803F80078003 E003803FC0078007E007807FF83FFFFFFFFFFFFFFFFFFFFF0FFFC003C003C003 07FFC003C003C00003FFC003C003800081FFC003C0038000C1FFC003C0038003 E003C003C003C003F001C003C003C003F801C003C003C003F801C003C003C003 F801C003C003C003F801C003C003C003F801C003C003C003F801C003C0038003 F801C003C0038003FC03C007C007800700000000000000000000000000000000 000000000000} end end --- NEW FILE: EvolveTest.cfg --- -$A8 -$B- -$C+ -$D+ -$E- -$F- -$G+ -$H+ -$I+ -$J- -$K- -$L+ -$M- -$N+ -$O- -$P+ -$Q+ -$R+ -$S- -$T- -$U- -$V+ -$W- -$X+ -$YD -$Z1 -cg -H+ -W+ -M -$M16384,1048576 -K$00400000 -LE"c:\programmi\borland\delphi7\Projects\Bpl" -LN"c:\programmi\borland\delphi7\Projects\Bpl" -U"c:\programmi\borland\delphi7\Lib\Debug" -O"c:\programmi\borland\delphi7\Lib\Debug" -I"c:\programmi\borland\delphi7\Lib\Debug" -R"c:\programmi\borland\delphi7\Lib\Debug" -w-UNSAFE_TYPE -w-UNSAFE_CODE -w-UNSAFE_CAST |