瀏覽代碼

refactoring of wizard.

Ugochukwu Mmaduekwe 7 年之前
父節點
當前提交
5868502789
共有 43 個文件被更改,包括 143 次插入132 次删除
  1. 9 9
      src/core.utils/UCoreUtils.pas
  2. 4 4
      src/core/UDataObjects.pas
  3. 7 7
      src/gui/UCTRLWallet.pas
  4. 1 1
      src/gui/UFRMWalletKeys.pas
  5. 2 2
      src/gui/wizards/operations/UWIZChangeKey.pas
  6. 2 2
      src/gui/wizards/operations/UWIZChangeKey_EnterKey.pas
  7. 1 0
      src/gui/wizards/operations/UWIZChangeKey_SelectKey.lfm
  8. 2 2
      src/gui/wizards/operations/UWIZChangeKey_SelectKey.pas
  9. 1 0
      src/gui/wizards/operations/UWIZChangeKey_SelectOption.lfm
  10. 2 2
      src/gui/wizards/operations/UWIZChangeKey_SelectOption.pas
  11. 2 2
      src/gui/wizards/operations/UWIZEnlistAccountForSale.pas
  12. 1 0
      src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterLockingBlock.lfm
  13. 2 2
      src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterLockingBlock.pas
  14. 2 2
      src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterPublicKey.pas
  15. 1 0
      src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterSaleAmount.lfm
  16. 2 2
      src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterSaleAmount.pas
  17. 1 0
      src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterSeller.lfm
  18. 2 2
      src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterSeller.pas
  19. 1 0
      src/gui/wizards/operations/UWIZEnlistAccountForSale_SelectOption.lfm
  20. 2 2
      src/gui/wizards/operations/UWIZEnlistAccountForSale_SelectOption.pas
  21. 1 0
      src/gui/wizards/operations/UWIZOperationConfirmation.lfm
  22. 4 4
      src/gui/wizards/operations/UWIZOperationConfirmation.pas
  23. 2 2
      src/gui/wizards/operations/UWIZOperationFee_Custom.pas
  24. 2 2
      src/gui/wizards/operations/UWIZOperationPayload_Content.pas
  25. 2 2
      src/gui/wizards/operations/UWIZOperationPayload_Encryption.pas
  26. 1 0
      src/gui/wizards/operations/UWIZOperationPayload_Password.lfm
  27. 2 2
      src/gui/wizards/operations/UWIZOperationPayload_Password.pas
  28. 1 0
      src/gui/wizards/operations/UWIZOperationSelected.lfm
  29. 4 4
      src/gui/wizards/operations/UWIZOperationSelected.pas
  30. 1 0
      src/gui/wizards/operations/UWIZOperationSigner_Select.lfm
  31. 2 2
      src/gui/wizards/operations/UWIZOperationSigner_Select.pas
  32. 2 2
      src/gui/wizards/operations/UWIZSendPASC.pas
  33. 2 2
      src/gui/wizards/operations/UWIZSendPASC_EnterQuantity.pas
  34. 1 0
      src/gui/wizards/operations/UWIZSendPASC_EnterRecipient.lfm
  35. 2 2
      src/gui/wizards/operations/UWIZSendPASC_EnterRecipient.pas
  36. 1 1
      src/gui/wizards/wallet/UWIZAddKey.pas
  37. 1 1
      src/gui/wizards/wallet/UWIZAddKey_EnterName.pas
  38. 1 1
      src/gui/wizards/wallet/UWIZAddKey_GenerateOrImport.pas
  39. 1 1
      src/gui/wizards/wallet/UWIZAddKey_ImportPrivKey.pas
  40. 1 1
      src/gui/wizards/wallet/UWIZAddKey_ImportPubKey.pas
  41. 1 1
      src/gui/wizards/wallet/UWIZAddKey_SelectEncryption.pas
  42. 1 1
      src/gui/wizards/wallet/UWIZAddKey_Start.pas
  43. 60 60
      src/pascalcoin_wallet.lpi

+ 9 - 9
src/core.utils/UCoreUtils.pas

@@ -18,7 +18,7 @@ interface
 
 uses
   Classes, SysUtils, UCrypto, UAccounts, UBlockChain, UOpTransaction, UNode, UCommon, UNetProtocol,
-  Generics.Collections, Generics.Defaults, UCoreObjects, UWIZModels, Forms, Dialogs, LCLType, UCellRenderers;
+  Generics.Collections, Generics.Defaults, UCoreObjects, UDataObjects, Forms, Dialogs, LCLType, UCellRenderers;
 
 type
 
@@ -68,14 +68,14 @@ type
   TOperationsManager = class
   private
     class function SendPASCFinalizeAndDisplayMessage(const AOperationsTxt, AOperationToString: string; ANoOfOperations: integer; ATotalAmount, ATotalFee: int64; AOperationsHashTree: TOperationsHashTree; var AErrorMessage: string): boolean; static;
-    class function UpdateSendPASCPayload(const ASenderAccount, ADestinationAccount: TAccount; const APayloadEncryptionMode: TWIZOperationsModel.TPayloadEncryptionMode; const APayloadContent: string; var AEncodedPayloadBytes: TRawBytes; const APayloadEncryptionPassword: string; var AErrorMessage: string): boolean;
+    class function UpdateSendPASCPayload(const ASenderAccount, ADestinationAccount: TAccount; const APayloadEncryptionMode: TExecuteOperationsModel.TPayloadEncryptionMode; const APayloadContent: string; var AEncodedPayloadBytes: TRawBytes; const APayloadEncryptionPassword: string; var AErrorMessage: string): boolean;
 
     class function ChangeKeyFinalizeAndDisplayMessage(const AOperationsTxt, AOperationToString: string; ANoOfOperations: integer; APublicKey: TAccountKey; ATotalFee: int64; AOperationsHashTree: TOperationsHashTree; var AErrorMessage: string): boolean; static;
-    class function UpdateChangeKeyPayload(const ASenderAccount: TAccount; const APublicKey: TAccountKey; const APayloadEncryptionMode: TWIZOperationsModel.TPayloadEncryptionMode; const APayloadContent: string; var AEncodedPayloadBytes: TRawBytes; const APayloadEncryptionPassword: string; var AErrorMessage: string): boolean;
+    class function UpdateChangeKeyPayload(const ASenderAccount: TAccount; const APublicKey: TAccountKey; const APayloadEncryptionMode: TExecuteOperationsModel.TPayloadEncryptionMode; const APayloadContent: string; var AEncodedPayloadBytes: TRawBytes; const APayloadEncryptionPassword: string; var AErrorMessage: string): boolean;
   public
     class function GetOperationShortText(const OpType, OpSubType : DWord) : AnsiString; static; inline;
-    class function ExecuteSendPASC(const ASelectedAccounts: TArray<TAccount>; const ADestinationAccount, ASignerAccount: TAccount; AAmount, AFee: int64; const ASendPASCMode: TWIZOperationsModel.TSendPASCMode; const APayloadEncryptionMode: TWIZOperationsModel.TPayloadEncryptionMode; const APayloadContent, APayloadEncryptionPassword: string; var AErrorMessage: string): boolean; static;
-    class function ExecuteChangeKey(const ASelectedAccounts: TArray<TAccount>; const ASignerAccount: TAccount; APublicKey: TAccountKey; AFee: int64; const APayloadEncryptionMode: TWIZOperationsModel.TPayloadEncryptionMode; const APayloadContent, APayloadEncryptionPassword: string; var AErrorMessage: string): boolean; static;
+    class function ExecuteSendPASC(const ASelectedAccounts: TArray<TAccount>; const ADestinationAccount, ASignerAccount: TAccount; AAmount, AFee: int64; const ASendPASCMode: TExecuteOperationsModel.TSendPASCMode; const APayloadEncryptionMode: TExecuteOperationsModel.TPayloadEncryptionMode; const APayloadContent, APayloadEncryptionPassword: string; var AErrorMessage: string): boolean; static;
+    class function ExecuteChangeKey(const ASelectedAccounts: TArray<TAccount>; const ASignerAccount: TAccount; APublicKey: TAccountKey; AFee: int64; const APayloadEncryptionMode: TExecuteOperationsModel.TPayloadEncryptionMode; const APayloadContent, APayloadEncryptionPassword: string; var AErrorMessage: string): boolean; static;
     class procedure ExecuteEnlistAccountForSale(); static;
   end;
 
@@ -188,7 +188,7 @@ begin
     Result := False;
 end;
 
-class function TOperationsManager.UpdateSendPASCPayload(const ASenderAccount, ADestinationAccount: TAccount; const APayloadEncryptionMode: TWIZOperationsModel.TPayloadEncryptionMode; const APayloadContent: string; var AEncodedPayloadBytes: TRawBytes; const APayloadEncryptionPassword: string; var AErrorMessage: string): boolean;
+class function TOperationsManager.UpdateSendPASCPayload(const ASenderAccount, ADestinationAccount: TAccount; const APayloadEncryptionMode: TExecuteOperationsModel.TPayloadEncryptionMode; const APayloadContent: string; var AEncodedPayloadBytes: TRawBytes; const APayloadEncryptionPassword: string; var AErrorMessage: string): boolean;
 var
   LValid: boolean;
   LWorkingAccount: TAccount;
@@ -310,7 +310,7 @@ begin
     Result := False;
 end;
 
-class function TOperationsManager.UpdateChangeKeyPayload(const ASenderAccount: TAccount; const APublicKey: TAccountKey; const APayloadEncryptionMode: TWIZOperationsModel.TPayloadEncryptionMode; const APayloadContent: string; var AEncodedPayloadBytes: TRawBytes; const APayloadEncryptionPassword: string; var AErrorMessage: string): boolean;
+class function TOperationsManager.UpdateChangeKeyPayload(const ASenderAccount: TAccount; const APublicKey: TAccountKey; const APayloadEncryptionMode: TExecuteOperationsModel.TPayloadEncryptionMode; const APayloadContent: string; var AEncodedPayloadBytes: TRawBytes; const APayloadEncryptionPassword: string; var AErrorMessage: string): boolean;
 var
   LValid: boolean;
   LWorkingAccount: TAccount;
@@ -385,7 +385,7 @@ begin
   Result := TCellRenderers.OperationShortText(OpType, OpSubType);
 end;
 
-class function TOperationsManager.ExecuteSendPASC(const ASelectedAccounts: TArray<TAccount>; const ADestinationAccount, ASignerAccount: TAccount; AAmount, AFee: int64; const ASendPASCMode: TWIZOperationsModel.TSendPASCMode; const APayloadEncryptionMode: TWIZOperationsModel.TPayloadEncryptionMode; const APayloadContent, APayloadEncryptionPassword: string; var AErrorMessage: string): boolean;
+class function TOperationsManager.ExecuteSendPASC(const ASelectedAccounts: TArray<TAccount>; const ADestinationAccount, ASignerAccount: TAccount; AAmount, AFee: int64; const ASendPASCMode: TExecuteOperationsModel.TSendPASCMode; const APayloadEncryptionMode: TExecuteOperationsModel.TPayloadEncryptionMode; const APayloadContent, APayloadEncryptionPassword: string; var AErrorMessage: string): boolean;
 var
   LWalletKey: TWalletKey;
   LWalletKeys: TWalletKeys;
@@ -525,7 +525,7 @@ end;
 class function TOperationsManager.ExecuteChangeKey(
   const ASelectedAccounts: TArray<TAccount>; const ASignerAccount: TAccount;
   APublicKey: TAccountKey; AFee: int64;
-  const APayloadEncryptionMode: TWIZOperationsModel.TPayloadEncryptionMode;
+  const APayloadEncryptionMode: TExecuteOperationsModel.TPayloadEncryptionMode;
   const APayloadContent, APayloadEncryptionPassword: string;
   var AErrorMessage: string): boolean;
 var

+ 4 - 4
src/gui/wizards/UWIZModels.pas → src/core/UDataObjects.pas

@@ -1,4 +1,4 @@
-unit UWIZModels;
+unit UDataObjects;
 
 
 {$ifdef fpc}
@@ -27,9 +27,9 @@ type
     Action: TWIZAddKeyAction;
   end;
 
-  { TWIZOperationsModel }
+  { TExecuteOperationsModel }
 
-  TWIZOperationsModel = class(TComponent)
+  TExecuteOperationsModel = class(TComponent)
   public
     type
 
@@ -159,7 +159,7 @@ type
 
 implementation
 
-constructor TWIZOperationsModel.Create(AOwner: TComponent; AType: TWIZOperationsModel.TModelType);
+constructor TExecuteOperationsModel.Create(AOwner: TComponent; AType: TExecuteOperationsModel.TModelType);
 begin
   inherited Create(AOwner);
   FModelType := AType;

+ 7 - 7
src/gui/UCTRLWallet.pas

@@ -93,7 +93,7 @@ implementation
 
 uses
   UUserInterface, UCellRenderers, UBlockChain, UWallet, UCrypto,
-  UCommon, UMemory, Generics.Defaults, UCommon.Data, UCommon.Collections, UWIZModels;
+  UCommon, UMemory, Generics.Defaults, UCommon.Data, UCommon.Collections, UDataObjects;
 
 {$R *.lfm}
 
@@ -603,7 +603,7 @@ procedure TCTRLWallet.miSendPASCClick(Sender: TObject);
 var
   Scoped: TDisposables;
   wiz: TWIZSendPASCWizard;
-  model: TWIZOperationsModel;
+  model: TExecuteOperationsModel;
   AccountNumbersWithoutChecksum: TArray<cardinal>;
 
   function GetAccNoWithoutChecksum(constref ARow: variant): cardinal;
@@ -613,7 +613,7 @@ var
 
 begin
   wiz := Scoped.AddObject(TWIZSendPASCWizard.Create(nil)) as TWIZSendPASCWizard;
-  model := TWIZOperationsModel.Create(wiz, omtSendPasc);
+  model := TExecuteOperationsModel.Create(wiz, omtSendPasc);
   AccountNumbersWithoutChecksum := TListTool<variant, cardinal>.Transform(FAccountsGrid.SelectedRows,GetAccNoWithoutChecksum);
   model.Account.SelectedAccounts := GetAccounts(AccountNumbersWithoutChecksum);
   wiz.Start(model);
@@ -623,7 +623,7 @@ procedure TCTRLWallet.miChangeKeyClick(Sender: TObject);
 var
   Scoped: TDisposables;
   wiz: TWIZChangeKeyWizard;
-  model: TWIZOperationsModel;
+  model: TExecuteOperationsModel;
   AccountNumbersWithoutChecksum: TArray<cardinal>;
 
   function GetAccNoWithoutChecksum(constref ARow: variant): cardinal;
@@ -633,7 +633,7 @@ var
 
 begin
   wiz := Scoped.AddObject(TWIZChangeKeyWizard.Create(nil)) as TWIZChangeKeyWizard;
-  model := TWIZOperationsModel.Create(wiz, omtChangeKey);
+  model := TExecuteOperationsModel.Create(wiz, omtChangeKey);
   AccountNumbersWithoutChecksum := TListTool<variant, cardinal>.Transform(FAccountsGrid.SelectedRows, GetAccNoWithoutChecksum);
   model.Account.SelectedAccounts := GetAccounts(AccountNumbersWithoutChecksum);
   wiz.Start(model);
@@ -643,7 +643,7 @@ procedure TCTRLWallet.miEnlistAccountsForSaleClick(Sender: TObject);
 var
   Scoped: TDisposables;
   wiz: TWIZEnlistAccountForSaleWizard;
-  model: TWIZOperationsModel;
+  model: TExecuteOperationsModel;
   AccountNumbersWithoutChecksum: TArray<cardinal>;
 
    function GetAccNoWithoutChecksum(constref ARow: variant): cardinal;
@@ -654,7 +654,7 @@ var
 
 begin
   wiz := Scoped.AddObject(TWIZEnlistAccountForSaleWizard.Create(nil)) as TWIZEnlistAccountForSaleWizard;
-  model := TWIZOperationsModel.Create(wiz, omtEnlistAccountForSale);
+  model := TExecuteOperationsModel.Create(wiz, omtEnlistAccountForSale);
   AccountNumbersWithoutChecksum := TListTool<variant, cardinal>.Transform(FAccountsGrid.SelectedRows, GetAccNoWithoutChecksum);
   model.Account.SelectedAccounts := GetAccounts(AccountNumbersWithoutChecksum);
   wiz.Start(model);

+ 1 - 1
src/gui/UFRMWalletKeys.pas

@@ -90,7 +90,7 @@ implementation
 
 {$R *.lfm}
 
-uses LCLIntf, Clipbrd, UUserInterface, USettings, UCommon, UWIZModels, UAccounts, UWIZAddKey, UMemory;
+uses LCLIntf, Clipbrd, UUserInterface, USettings, UCommon, UDataObjects, UAccounts, UWIZAddKey, UMemory;
 
 {%region Form life-cycle}
 

+ 2 - 2
src/gui/wizards/operations/UWIZChangeKey.pas

@@ -15,13 +15,13 @@ unit UWIZChangeKey;
 interface
 
 uses
-  Classes, SysUtils, Forms, Dialogs, UCrypto, UCommon, UWizard, UAccounts, LCLType, UWIZModels;
+  Classes, SysUtils, Forms, Dialogs, UCrypto, UCommon, UWizard, UAccounts, LCLType, UDataObjects;
 
 type
 
   { TWIZChangeKeyWizard }
 
-  TWIZChangeKeyWizard = class(TWizard<TWIZOperationsModel>)
+  TWIZChangeKeyWizard = class(TWizard<TExecuteOperationsModel>)
   public
     constructor Create(AOwner: TComponent); override;
     function DetermineHasNext: boolean; override;

+ 2 - 2
src/gui/wizards/operations/UWIZChangeKey_EnterKey.pas

@@ -19,13 +19,13 @@ uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, Buttons, UCommon, UCommon.Collections, UWallet,
   UFRMAccountSelect, UNode, UWizard, UWIZOperationFee_Custom, UWIZOperationPayload_Encryption, UWIZOperationSigner_Select,
-  UWIZModels;
+  UDataObjects;
 
 type
 
   { TWIZChangeKey_EnterKey }
 
-  TWIZChangeKey_EnterKey = class(TWizardForm<TWIZOperationsModel>)
+  TWIZChangeKey_EnterKey = class(TWizardForm<TExecuteOperationsModel>)
     chkChooseFee: TCheckBox;
     chkAttachPayload: TCheckBox;
     gbNewPublicKey: TGroupBox;

+ 1 - 0
src/gui/wizards/operations/UWIZChangeKey_SelectKey.lfm

@@ -7,6 +7,7 @@ object WIZChangeKey_SelectKey: TWIZChangeKey_SelectKey
   Caption = 'WIZChangeKey_SelectKey'
   ClientHeight = 253
   ClientWidth = 429
+  LCLVersion = '1.8.2.0'
   Visible = False
   object gbNewPrivateKey: TGroupBox
     Left = 4

+ 2 - 2
src/gui/wizards/operations/UWIZChangeKey_SelectKey.pas

@@ -19,13 +19,13 @@ uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, Buttons, UCommon, UCommon.Collections, UWallet,
   UFRMAccountSelect, UNode, UWizard, UWIZOperationFee_Custom, UWIZOperationSigner_Select, UWIZOperationPayload_Encryption,
-  UWIZModels;
+  UDataObjects;
 
 type
 
   { TWIZChangeKey_SelectKey }
 
-  TWIZChangeKey_SelectKey = class(TWizardForm<TWIZOperationsModel>)
+  TWIZChangeKey_SelectKey = class(TWizardForm<TExecuteOperationsModel>)
     cbNewPrivateKey: TComboBox;
     chkAttachPayload: TCheckBox;
     chkChooseFee: TCheckBox;

+ 1 - 0
src/gui/wizards/operations/UWIZChangeKey_SelectOption.lfm

@@ -7,6 +7,7 @@ object WIZChangeKey_SelectOption: TWIZChangeKey_SelectOption
   Caption = 'WIZChangeKey_SelectOption'
   ClientHeight = 253
   ClientWidth = 429
+  LCLVersion = '1.8.2.0'
   Visible = False
   object gbChangeKeyOptions: TGroupBox
     Left = 4

+ 2 - 2
src/gui/wizards/operations/UWIZChangeKey_SelectOption.pas

@@ -17,13 +17,13 @@ interface
 
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
-  ExtCtrls, UWizard, UWIZModels, UWIZChangeKey_EnterKey, UWIZChangeKey_SelectKey;
+  ExtCtrls, UWizard, UDataObjects, UWIZChangeKey_EnterKey, UWIZChangeKey_SelectKey;
 
 type
 
   { TWIZChangeKey_SelectOption }
 
-  TWIZChangeKey_SelectOption = class(TWizardForm<TWIZOperationsModel>)
+  TWIZChangeKey_SelectOption = class(TWizardForm<TExecuteOperationsModel>)
     gbChangeKeyOptions: TGroupBox;
     lblTransferAccountOwnership: TLabel;
     lblNote: TLabel;

+ 2 - 2
src/gui/wizards/operations/UWIZEnlistAccountForSale.pas

@@ -15,13 +15,13 @@ unit UWIZEnlistAccountForSale;
 interface
 
 uses
-  Classes, SysUtils, Forms, Dialogs, UCrypto, UCommon, UWizard, UAccounts, UWIZModels, LCLType;
+  Classes, SysUtils, Forms, Dialogs, UCrypto, UCommon, UWizard, UAccounts, UDataObjects, LCLType;
 
 type
 
   { TWIZEnlistAccountForSaleWizard }
 
-  TWIZEnlistAccountForSaleWizard = class(TWizard<TWIZOperationsModel>)
+  TWIZEnlistAccountForSaleWizard = class(TWizard<TExecuteOperationsModel>)
   private
     function UpdatePayload(const SenderAccount: TAccount; var errors: string): boolean;
     function UpdateOperationOptions(var errors: string): boolean;

+ 1 - 0
src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterLockingBlock.lfm

@@ -7,6 +7,7 @@ object WIZEnlistAccountForSale_EnterLockingBlock: TWIZEnlistAccountForSale_Enter
   Caption = 'WIZEnlistAccountForSale_EnterLockingBlock'
   ClientHeight = 253
   ClientWidth = 429
+  LCLVersion = '1.8.2.0'
   Visible = False
   object gbLockBlock: TGroupBox
     Left = 4

+ 2 - 2
src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterLockingBlock.pas

@@ -13,13 +13,13 @@ interface
 
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
-  ExtCtrls, Buttons, UWizard, UWIZModels, UWIZEnlistAccountForSale_EnterSeller;
+  ExtCtrls, Buttons, UWizard, UDataObjects, UWIZEnlistAccountForSale_EnterSeller;
 
 type
 
   { TWIZEnlistAccountForSale_EnterLockingBlock }
 
-  TWIZEnlistAccountForSale_EnterLockingBlock = class(TWizardForm<TWIZOperationsModel>)
+  TWIZEnlistAccountForSale_EnterLockingBlock = class(TWizardForm<TExecuteOperationsModel>)
     edtBlockLock: TEdit;
     gbLockBlock: TGroupBox;
     lblBlockLock: TLabel;

+ 2 - 2
src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterPublicKey.pas

@@ -13,13 +13,13 @@ interface
 
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
-  ExtCtrls, Buttons, UWizard, UWIZModels, UWIZEnlistAccountForSale_EnterLockingBlock;
+  ExtCtrls, Buttons, UWizard, UDataObjects, UWIZEnlistAccountForSale_EnterLockingBlock;
 
 type
 
   { TWIZEnlistAccountForSale_EnterPublicKey }
 
-  TWIZEnlistAccountForSale_EnterPublicKey = class(TWizardForm<TWIZOperationsModel>)
+  TWIZEnlistAccountForSale_EnterPublicKey = class(TWizardForm<TExecuteOperationsModel>)
     gbTransaction: TGroupBox;
     lblBlockLock: TLabel;
     lblPublicKey: TLabel;

+ 1 - 0
src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterSaleAmount.lfm

@@ -7,6 +7,7 @@ object WIZEnlistAccountForSale_EnterSaleAmount: TWIZEnlistAccountForSale_EnterSa
   Caption = 'WIZEnlistAccountForSale_EnterSaleAmount'
   ClientHeight = 253
   ClientWidth = 429
+  LCLVersion = '1.8.2.0'
   Visible = False
   object gbSalePrice: TGroupBox
     Left = 4

+ 2 - 2
src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterSaleAmount.pas

@@ -18,13 +18,13 @@ interface
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, Buttons, UCommon, UCommon.Collections, UWallet,
-  UFRMAccountSelect, UNode, UWizard, UWIZOperationFee_Custom, UWIZOperationPayload_Encryption, UWIZOperationSigner_Select, UWIZModels;
+  UFRMAccountSelect, UNode, UWizard, UWIZOperationFee_Custom, UWIZOperationPayload_Encryption, UWIZOperationSigner_Select, UDataObjects;
 
 type
 
   { TWIZEnlistAccountForSale_EnterSaleAmount }
 
-  TWIZEnlistAccountForSale_EnterSaleAmount = class(TWizardForm<TWIZOperationsModel>)
+  TWIZEnlistAccountForSale_EnterSaleAmount = class(TWizardForm<TExecuteOperationsModel>)
     chkChooseFee: TCheckBox;
     chkAttachPayload: TCheckBox;
     edtAmt: TEdit;

+ 1 - 0
src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterSeller.lfm

@@ -7,6 +7,7 @@ object WIZEnlistAccountForSale_EnterSeller: TWIZEnlistAccountForSale_EnterSeller
   Caption = 'WIZEnlistAccountForSale_EnterSeller'
   ClientHeight = 253
   ClientWidth = 429
+  LCLVersion = '1.8.2.0'
   Visible = False
   object gbSeller: TGroupBox
     Left = 4

+ 2 - 2
src/gui/wizards/operations/UWIZEnlistAccountForSale_EnterSeller.pas

@@ -18,13 +18,13 @@ interface
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, Buttons, UCommon, UCommon.Collections, UWallet,
-  UFRMAccountSelect, UNode, UWizard, UWIZModels;
+  UFRMAccountSelect, UNode, UWizard, UDataObjects;
 
 type
 
   { TWIZEnlistAccountForSale_EnterSeller }
 
-  TWIZEnlistAccountForSale_EnterSeller = class(TWizardForm<TWIZOperationsModel>)
+  TWIZEnlistAccountForSale_EnterSeller = class(TWizardForm<TExecuteOperationsModel>)
     edtSellerAcc: TEdit;
     gbSeller: TGroupBox;
     lblSellerAccount: TLabel;

+ 1 - 0
src/gui/wizards/operations/UWIZEnlistAccountForSale_SelectOption.lfm

@@ -7,6 +7,7 @@ object WIZEnlistAccountForSale_SelectOption: TWIZEnlistAccountForSale_SelectOpti
   Caption = 'WIZEnlistAccountForSale_SelectOption'
   ClientHeight = 253
   ClientWidth = 429
+  LCLVersion = '1.8.2.0'
   Visible = False
   object Label1: TLabel
     Left = 24

+ 2 - 2
src/gui/wizards/operations/UWIZEnlistAccountForSale_SelectOption.pas

@@ -13,13 +13,13 @@ interface
 
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
-  ExtCtrls, UWizard, UWIZModels, UWIZEnlistAccountForSale_EnterPublicKey;
+  ExtCtrls, UWizard, UDataObjects, UWIZEnlistAccountForSale_EnterPublicKey;
 
 type
 
   { TWIZEnlistAccountForSale_SelectOption }
 
-  TWIZEnlistAccountForSale_SelectOption = class(TWizardForm<TWIZOperationsModel>)
+  TWIZEnlistAccountForSale_SelectOption = class(TWizardForm<TExecuteOperationsModel>)
     grpEnlistAccountForSale: TGroupBox;
     Label1: TLabel;
     Label2: TLabel;

+ 1 - 0
src/gui/wizards/operations/UWIZOperationConfirmation.lfm

@@ -6,6 +6,7 @@ object WIZOperationConfirmation: TWIZOperationConfirmation
   Caption = 'WIZOperationConfirmation'
   ClientHeight = 320
   ClientWidth = 511
+  LCLVersion = '1.8.2.0'
   Visible = False
   object GroupBox1: TGroupBox
     Left = 10

+ 4 - 4
src/gui/wizards/operations/UWIZOperationConfirmation.pas

@@ -17,13 +17,13 @@ interface
 
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
-  ExtCtrls, UVisualGrid, UCellRenderers, UCommon.Data, UWizard, UWIZModels;
+  ExtCtrls, UVisualGrid, UCellRenderers, UCommon.Data, UWizard, UDataObjects;
 
 type
 
   { TWIZOperationConfirmation }
 
-  TWIZOperationConfirmation = class(TWizardForm<TWIZOperationsModel>)
+  TWIZOperationConfirmation = class(TWizardForm<TExecuteOperationsModel>)
     GroupBox1: TGroupBox;
     lblSignerAccount: TLabel;
     lblBeneficiaryAccount: TLabel;
@@ -52,12 +52,12 @@ type
 
   TOperationConfirmationDataSource = class(TAccountsDataSourceBase)
   private
-    FModel: TWIZOperationsModel;
+    FModel: TExecuteOperationsModel;
 
   protected
     function GetColumns: TDataColumns; override;
   public
-    property Model: TWIZOperationsModel read FModel write FModel;
+    property Model: TExecuteOperationsModel read FModel write FModel;
     procedure FetchAll(const AContainer: TList<TAccount>); override;
     function GetItemField(constref AItem: TAccount; const ABindingName: ansistring): variant; override;
   end;

+ 2 - 2
src/gui/wizards/operations/UWIZOperationFee_Custom.pas

@@ -18,13 +18,13 @@ interface
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, Buttons, Spin, UCommon, UCommon.Collections, UWallet,
-  UFRMAccountSelect, UNode, UWizard, UWIZOperationPayload_Encryption, UWIZOperationSigner_Select, UWIZModels;
+  UFRMAccountSelect, UNode, UWizard, UWIZOperationPayload_Encryption, UWIZOperationSigner_Select, UDataObjects;
 
 type
 
   { TWIZOperationFee_Custom }
 
-  TWIZOperationFee_Custom = class(TWizardForm<TWIZOperationsModel>)
+  TWIZOperationFee_Custom = class(TWizardForm<TExecuteOperationsModel>)
     fseFee: TFloatSpinEdit;
     gbTransactionFee: TGroupBox;
     lblestimatedfee: TLabel;

+ 2 - 2
src/gui/wizards/operations/UWIZOperationPayload_Content.pas

@@ -18,13 +18,13 @@ interface
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, Buttons, UCommon, UCommon.Collections,
-  UWizard, UWIZOperationSigner_Select, UWIZModels;
+  UWizard, UWIZOperationSigner_Select, UDataObjects;
 
 type
 
   { TWIZOperationPayload_Content }
 
-  TWIZOperationPayload_Content = class(TWizardForm<TWIZOperationsModel>)
+  TWIZOperationPayload_Content = class(TWizardForm<TExecuteOperationsModel>)
     grpPayload: TGroupBox;
     Label1: TLabel;
     mmoPayload: TMemo;

+ 2 - 2
src/gui/wizards/operations/UWIZOperationPayload_Encryption.pas

@@ -18,13 +18,13 @@ interface
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, Buttons, UCommon, UCommon.Collections,
-  UWizard, UWIZOperationPayload_Content, UWIZOperationPayload_Password, UWIZModels;
+  UWizard, UWIZOperationPayload_Content, UWIZOperationPayload_Password, UDataObjects;
 
 type
 
   { TWIZOperationPayload_Encryption }
 
-  TWIZOperationPayload_Encryption = class(TWizardForm<TWIZOperationsModel>)
+  TWIZOperationPayload_Encryption = class(TWizardForm<TExecuteOperationsModel>)
     grpPayload: TGroupBox;
     Label1: TLabel;
     lblNoEncryption: TLabel;

+ 1 - 0
src/gui/wizards/operations/UWIZOperationPayload_Password.lfm

@@ -7,6 +7,7 @@ object WIZOperationPayload_Password: TWIZOperationPayload_Password
   Caption = 'Form1'
   ClientHeight = 253
   ClientWidth = 429
+  LCLVersion = '1.8.2.0'
   Visible = False
   object grpPayload: TGroupBox
     Left = 8

+ 2 - 2
src/gui/wizards/operations/UWIZOperationPayload_Password.pas

@@ -18,13 +18,13 @@ interface
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, Buttons, UCommon, UCommon.Collections,
-  UWizard, UWIZOperationSigner_Select, UWIZModels;
+  UWizard, UWIZOperationSigner_Select, UDataObjects;
 
 type
 
   { TWIZOperationPayload_Password }
 
-  TWIZOperationPayload_Password = class(TWizardForm<TWIZOperationsModel>)
+  TWIZOperationPayload_Password = class(TWizardForm<TExecuteOperationsModel>)
     edtPassword: TEdit;
     grpPayload: TGroupBox;
     lblNote: TLabel;

+ 1 - 0
src/gui/wizards/operations/UWIZOperationSelected.lfm

@@ -6,6 +6,7 @@ object WIZOperationSelected: TWIZOperationSelected
   Caption = 'OperationSelected'
   ClientHeight = 261
   ClientWidth = 429
+  LCLVersion = '1.8.2.0'
   Visible = False
   object gpSelectedAccounts: TGroupBox
     Left = 4

+ 4 - 4
src/gui/wizards/operations/UWIZOperationSelected.pas

@@ -17,13 +17,13 @@ interface
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, UVisualGrid, UCommon.Data, UCellRenderers,
-  UWizard, UWIZModels;
+  UWizard, UDataObjects;
 
 type
 
   { TWIZOperationSelected }
 
-  TWIZOperationSelected = class(TWizardForm<TWIZOperationsModel>)
+  TWIZOperationSelected = class(TWizardForm<TExecuteOperationsModel>)
     gpSelectedAccounts: TGroupBox;
     lblTotalBalances: TLabel;
     lblTotalBalanceValue: TLabel;
@@ -49,9 +49,9 @@ type
 
   TOperationSelectedDataSource = class(TAccountsDataSourceBase)
   private
-    FModel: TWIZOperationsModel;
+    FModel: TExecuteOperationsModel;
   public
-    property Model: TWIZOperationsModel read FModel write FModel;
+    property Model: TExecuteOperationsModel read FModel write FModel;
     procedure FetchAll(const AContainer: TList<TAccount>); override;
   end;
 

+ 1 - 0
src/gui/wizards/operations/UWIZOperationSigner_Select.lfm

@@ -7,6 +7,7 @@ object WIZOperationSigner_Select: TWIZOperationSigner_Select
   Caption = 'WIZOperationSigner_Select'
   ClientHeight = 253
   ClientWidth = 429
+  LCLVersion = '1.8.2.0'
   Visible = False
   object gbTransaction: TGroupBox
     Left = 16

+ 2 - 2
src/gui/wizards/operations/UWIZOperationSigner_Select.pas

@@ -18,13 +18,13 @@ interface
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, Buttons, UCommon, UCommon.Collections, UWallet,
-  UFRMAccountSelect, UNode, UWizard, UWIZModels;
+  UFRMAccountSelect, UNode, UWizard, UDataObjects;
 
 type
 
   { TWIZOperationSigner_Select }
 
-  TWIZOperationSigner_Select = class(TWizardForm<TWIZOperationsModel>)
+  TWIZOperationSigner_Select = class(TWizardForm<TExecuteOperationsModel>)
     cbSignerAccount: TComboBox;
     gbTransaction: TGroupBox;
     lblNote: TLabel;

+ 2 - 2
src/gui/wizards/operations/UWIZSendPASC.pas

@@ -15,13 +15,13 @@ unit UWIZSendPASC;
 interface
 
 uses
-  Classes, SysUtils, Forms, Dialogs, UWizard, UCommon, UWIZModels;
+  Classes, SysUtils, Forms, Dialogs, UWizard, UCommon, UDataObjects;
 
 type
 
   { TWIZSendPASCWizard }
 
-  TWIZSendPASCWizard = class(TWizard<TWIZOperationsModel>)
+  TWIZSendPASCWizard = class(TWizard<TExecuteOperationsModel>)
   public
     constructor Create(AOwner: TComponent); override;
     function DetermineHasNext: boolean; override;

+ 2 - 2
src/gui/wizards/operations/UWIZSendPASC_EnterQuantity.pas

@@ -19,13 +19,13 @@ uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, Buttons, UCommon, UCommon.Collections, UWallet,
   UFRMAccountSelect, UNode, UWizard, UWIZSendPASC, UWIZOperationFee_Custom, UWIZOperationPayload_Encryption,
-  UWIZOperationSigner_Select, UWIZModels;
+  UWIZOperationSigner_Select, UDataObjects;
 
 type
 
   { TWIZSendPASC_EnterQuantity }
 
-  TWIZSendPASC_EnterQuantity = class(TWizardForm<TWIZOperationsModel>)
+  TWIZSendPASC_EnterQuantity = class(TWizardForm<TExecuteOperationsModel>)
     chkChooseFee: TCheckBox;
     chkAttachPayload: TCheckBox;
     chkallfunds: TCheckBox;

+ 1 - 0
src/gui/wizards/operations/UWIZSendPASC_EnterRecipient.lfm

@@ -7,6 +7,7 @@ object WIZSendPASC_EnterRecipient: TWIZSendPASC_EnterRecipient
   Caption = 'WIZSendPASC_EnterRecipient'
   ClientHeight = 253
   ClientWidth = 429
+  LCLVersion = '1.8.2.0'
   Visible = False
   object gbRecipient: TGroupBox
     Left = 16

+ 2 - 2
src/gui/wizards/operations/UWIZSendPASC_EnterRecipient.pas

@@ -18,13 +18,13 @@ interface
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
   ExtCtrls, Buttons, UCommon, UCommon.Collections, UWallet,
-  UFRMAccountSelect, UNode, UWizard, UWIZSendPASC, UWIZSendPASC_EnterQuantity, UWIZModels;
+  UFRMAccountSelect, UNode, UWizard, UWIZSendPASC, UWIZSendPASC_EnterQuantity, UDataObjects;
 
 type
 
   { TWIZSendPASC_EnterRecipient }
 
-  TWIZSendPASC_EnterRecipient = class(TWizardForm<TWIZOperationsModel>)
+  TWIZSendPASC_EnterRecipient = class(TWizardForm<TExecuteOperationsModel>)
     edtDestAcc: TEdit;
     gbRecipient: TGroupBox;
     lblDestAccNumber: TLabel;

+ 1 - 1
src/gui/wizards/wallet/UWIZAddKey.pas

@@ -11,7 +11,7 @@ unit UWIZAddKey;
 interface
 
 uses
-  Classes, SysUtils, Forms, UWizard, UWIZModels;
+  Classes, SysUtils, Forms, UWizard, UDataObjects;
 
 type
 

+ 1 - 1
src/gui/wizards/wallet/UWIZAddKey_EnterName.pas

@@ -12,7 +12,7 @@ interface
 
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
-  ExtCtrls, UWizard, UWIZAddKey, UWIZModels;
+  ExtCtrls, UWizard, UWIZAddKey, UDataObjects;
 
 type
 

+ 1 - 1
src/gui/wizards/wallet/UWIZAddKey_GenerateOrImport.pas

@@ -12,7 +12,7 @@ interface
 
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
-  UWizard, UWIZAddKey, UWIZModels;
+  UWizard, UWIZAddKey, UDataObjects;
 
 type
 

+ 1 - 1
src/gui/wizards/wallet/UWIZAddKey_ImportPrivKey.pas

@@ -12,7 +12,7 @@ interface
 
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
-  UWizard, UWIZAddKey, UWIZModels;
+  UWizard, UWIZAddKey, UDataObjects;
 
 type
 

+ 1 - 1
src/gui/wizards/wallet/UWIZAddKey_ImportPubKey.pas

@@ -12,7 +12,7 @@ interface
 
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
-  UWizard, UWIZAddKey, UWIZModels;
+  UWizard, UWIZAddKey, UDataObjects;
 
 type
 

+ 1 - 1
src/gui/wizards/wallet/UWIZAddKey_SelectEncryption.pas

@@ -5,7 +5,7 @@ unit UWIZAddKey_SelectEncryption;
 interface
 
 uses
-  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls, UWizard, UWIZAddKey, UWIZModels;
+  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls, UWizard, UWIZAddKey, UDataObjects;
 
 type
 

+ 1 - 1
src/gui/wizards/wallet/UWIZAddKey_Start.pas

@@ -12,7 +12,7 @@ interface
 
 uses
   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
-  UWizard, UWIZAddKey, UWIZModels;
+  UWizard, UWIZAddKey, UDataObjects;
 
 type
 

+ 60 - 60
src/pascalcoin_wallet.lpi

@@ -357,193 +357,193 @@
         <IsPartOfProject Value="True"/>
       </Unit64>
       <Unit65>
-        <Filename Value="gui\wizards\UWIZModels.pas"/>
+        <Filename Value="gui\wizards\wallet\UWIZAddKey.pas"/>
         <IsPartOfProject Value="True"/>
       </Unit65>
       <Unit66>
-        <Filename Value="gui\wizards\wallet\UWIZAddKey.pas"/>
-        <IsPartOfProject Value="True"/>
-      </Unit66>
-      <Unit67>
         <Filename Value="gui\wizards\wallet\UWIZAddKey_EnterName.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZAddKey_EnterName"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit67>
-      <Unit68>
+      </Unit66>
+      <Unit67>
         <Filename Value="gui\wizards\wallet\UWIZAddKey_GenerateOrImport.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZAddKey_GenerateOrImport"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit68>
-      <Unit69>
+      </Unit67>
+      <Unit68>
         <Filename Value="gui\wizards\wallet\UWIZAddKey_ImportPrivKey.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZAddKey_ImportPrivKey"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit69>
-      <Unit70>
+      </Unit68>
+      <Unit69>
         <Filename Value="gui\wizards\wallet\UWIZAddKey_ImportPubKey.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZAddKey_ImportPubKey"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit70>
-      <Unit71>
+      </Unit69>
+      <Unit70>
         <Filename Value="gui\wizards\wallet\UWIZAddKey_SelectEncryption.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZAddKey_SelectEncryption"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit71>
-      <Unit72>
+      </Unit70>
+      <Unit71>
         <Filename Value="gui\wizards\wallet\UWIZAddKey_Start.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZAddKey_Start"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit72>
-      <Unit73>
+      </Unit71>
+      <Unit72>
         <Filename Value="gui\wizards\operations\UWIZEnlistAccountForSale.pas"/>
         <IsPartOfProject Value="True"/>
-      </Unit73>
-      <Unit74>
+      </Unit72>
+      <Unit73>
         <Filename Value="gui\wizards\operations\UWIZOperationFee_Custom.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZOperationFee_Custom"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit74>
-      <Unit75>
+      </Unit73>
+      <Unit74>
         <Filename Value="gui\wizards\operations\UWIZOperationPayload_Content.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZOperationPayload_Content"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit75>
-      <Unit76>
+      </Unit74>
+      <Unit75>
         <Filename Value="gui\wizards\operations\UWIZOperationPayload_Encryption.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZOperationPayload_Encryption"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit76>
-      <Unit77>
+      </Unit75>
+      <Unit76>
         <Filename Value="gui\wizards\operations\UWIZOperationPayload_Password.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZOperationPayload_Password"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit77>
-      <Unit78>
+      </Unit76>
+      <Unit77>
         <Filename Value="gui\wizards\operations\UWIZOperationSigner_Select.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZOperationSigner_Select"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit78>
-      <Unit79>
+      </Unit77>
+      <Unit78>
         <Filename Value="gui\wizards\operations\UWIZSendPASC.pas"/>
         <IsPartOfProject Value="True"/>
-      </Unit79>
-      <Unit80>
+      </Unit78>
+      <Unit79>
         <Filename Value="gui\wizards\operations\UWIZSendPASC_EnterQuantity.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZSendPASC_EnterQuantity"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit80>
-      <Unit81>
+      </Unit79>
+      <Unit80>
         <Filename Value="gui\wizards\operations\UWIZSendPASC_EnterRecipient.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZSendPASC_EnterRecipient"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit81>
-      <Unit82>
+      </Unit80>
+      <Unit81>
         <Filename Value="gui\wizards\operations\UWIZChangeKey.pas"/>
         <IsPartOfProject Value="True"/>
-      </Unit82>
-      <Unit83>
+      </Unit81>
+      <Unit82>
         <Filename Value="gui\wizards\operations\UWIZChangeKey_SelectOption.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZChangeKey_SelectOption"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit83>
-      <Unit84>
+      </Unit82>
+      <Unit83>
         <Filename Value="gui\wizards\operations\UWIZChangeKey_EnterKey.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZChangeKey_EnterKey"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit84>
-      <Unit85>
+      </Unit83>
+      <Unit84>
         <Filename Value="gui\wizards\operations\UWIZChangeKey_SelectKey.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZChangeKey_SelectKey"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit85>
-      <Unit86>
+      </Unit84>
+      <Unit85>
         <Filename Value="gui-classic\UGridUtils.pas"/>
         <IsPartOfProject Value="True"/>
-      </Unit86>
-      <Unit87>
+      </Unit85>
+      <Unit86>
         <Filename Value="gui\wizards\operations\UWIZEnlistAccountForSale_EnterSeller.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZEnlistAccountForSale_EnterSeller"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit87>
-      <Unit88>
+      </Unit86>
+      <Unit87>
         <Filename Value="gui\wizards\operations\UWIZEnlistAccountForSale_EnterSaleAmount.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZEnlistAccountForSale_EnterSaleAmount"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit88>
-      <Unit89>
+      </Unit87>
+      <Unit88>
         <Filename Value="gui\wizards\operations\UWIZEnlistAccountForSale_SelectOption.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZEnlistAccountForSale_SelectOption"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit89>
-      <Unit90>
+      </Unit88>
+      <Unit89>
         <Filename Value="gui\wizards\operations\UWIZEnlistAccountForSale_EnterLockingBlock.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZEnlistAccountForSale_EnterLockingBlock"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit90>
-      <Unit91>
+      </Unit89>
+      <Unit90>
         <Filename Value="gui\wizards\operations\UWIZEnlistAccountForSale_EnterPublicKey.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZEnlistAccountForSale_EnterPublicKey"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit91>
-      <Unit92>
+      </Unit90>
+      <Unit91>
         <Filename Value="core.utils\UCoreObjects.pas"/>
         <IsPartOfProject Value="True"/>
-      </Unit92>
-      <Unit93>
+      </Unit91>
+      <Unit92>
         <Filename Value="gui\wizards\operations\UWIZOperationConfirmation.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZOperationConfirmation"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
-      </Unit93>
-      <Unit94>
+      </Unit92>
+      <Unit93>
         <Filename Value="gui\wizards\operations\UWIZOperationSelected.pas"/>
         <IsPartOfProject Value="True"/>
         <ComponentName Value="WIZOperationSelected"/>
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
+      </Unit93>
+      <Unit94>
+        <Filename Value="core\UDataObjects.pas"/>
+        <IsPartOfProject Value="True"/>
       </Unit94>
     </Units>
   </ProjectOptions>
@@ -555,7 +555,7 @@
     </Target>
     <SearchPaths>
       <IncludeFiles Value="$(ProjOutDir);libraries\generics.collections\inc"/>
-      <OtherUnitFiles Value="core;gui;gui\wizards;libraries\synapse;libraries\sphere10;libraries\generics.collections;libraries\pascalcoin;core.utils;gui\wizards\wallet;gui\wizards\operations;gui-classic"/>
+      <OtherUnitFiles Value="core;gui;libraries\synapse;libraries\sphere10;libraries\generics.collections;libraries\pascalcoin;core.utils;gui\wizards\wallet;gui\wizards\operations;gui-classic"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
     <Parsing>