diff --git a/Lib/D10/GUISDK_D10.bpl b/Lib/D10/GUISDK_D10.bpl index 6155a3c..98bce01 100644 Binary files a/Lib/D10/GUISDK_D10.bpl and b/Lib/D10/GUISDK_D10.bpl differ diff --git a/Lib/D10/GUISDK_D10.dcp b/Lib/D10/GUISDK_D10.dcp index bfd657a..52f559a 100644 Binary files a/Lib/D10/GUISDK_D10.dcp and b/Lib/D10/GUISDK_D10.dcp differ diff --git a/Lib/D10/GUISDK_D10.dcu b/Lib/D10/GUISDK_D10.dcu index 287084c..6d66b6a 100644 Binary files a/Lib/D10/GUISDK_D10.dcu and b/Lib/D10/GUISDK_D10.dcu differ diff --git a/Lib/D10/uCustomEditor.dcu b/Lib/D10/uCustomEditor.dcu index 01ec6b2..e1ac7bb 100644 Binary files a/Lib/D10/uCustomEditor.dcu and b/Lib/D10/uCustomEditor.dcu differ diff --git a/Lib/D10/uCustomView.dcu b/Lib/D10/uCustomView.dcu index 108cef6..d105cb5 100644 Binary files a/Lib/D10/uCustomView.dcu and b/Lib/D10/uCustomView.dcu differ diff --git a/Lib/D10/uGUIBase.dcu b/Lib/D10/uGUIBase.dcu index debca78..bbab5e6 100644 Binary files a/Lib/D10/uGUIBase.dcu and b/Lib/D10/uGUIBase.dcu differ diff --git a/Lib/D10/uGUIUtils.dcu b/Lib/D10/uGUIUtils.dcu index e112586..26d6c91 100644 Binary files a/Lib/D10/uGUIUtils.dcu and b/Lib/D10/uGUIUtils.dcu differ diff --git a/Lib/D2007/GUISDK_D2007.bpl b/Lib/D2007/GUISDK_D2007.bpl deleted file mode 100644 index 7c434c1..0000000 Binary files a/Lib/D2007/GUISDK_D2007.bpl and /dev/null differ diff --git a/Lib/D2007/GUISDK_D2007.dcp b/Lib/D2007/GUISDK_D2007.dcp deleted file mode 100644 index 22890f8..0000000 Binary files a/Lib/D2007/GUISDK_D2007.dcp and /dev/null differ diff --git a/Lib/D2007/GUISDK_D2007.dcu b/Lib/D2007/GUISDK_D2007.dcu deleted file mode 100644 index 301b4cb..0000000 Binary files a/Lib/D2007/GUISDK_D2007.dcu and /dev/null differ diff --git a/Lib/D2007/uCustomEditor.dcu b/Lib/D2007/uCustomEditor.dcu deleted file mode 100644 index 9beaecd..0000000 Binary files a/Lib/D2007/uCustomEditor.dcu and /dev/null differ diff --git a/Lib/D2007/uCustomView.dcu b/Lib/D2007/uCustomView.dcu deleted file mode 100644 index 950cca4..0000000 Binary files a/Lib/D2007/uCustomView.dcu and /dev/null differ diff --git a/Lib/D2007/uGUIBase.dcu b/Lib/D2007/uGUIBase.dcu deleted file mode 100644 index 3bf57b8..0000000 Binary files a/Lib/D2007/uGUIBase.dcu and /dev/null differ diff --git a/Lib/D2007/uGUIUtils.dcu b/Lib/D2007/uGUIUtils.dcu deleted file mode 100644 index 78c237d..0000000 Binary files a/Lib/D2007/uGUIUtils.dcu and /dev/null differ diff --git a/Lib/D7/GUISDK_D7.bpl b/Lib/D7/GUISDK_D7.bpl new file mode 100644 index 0000000..c271dab Binary files /dev/null and b/Lib/D7/GUISDK_D7.bpl differ diff --git a/Lib/D7/GUISDK_D7.dcp b/Lib/D7/GUISDK_D7.dcp new file mode 100644 index 0000000..19d2aa6 Binary files /dev/null and b/Lib/D7/GUISDK_D7.dcp differ diff --git a/Lib/D7/GUISDK_D7.dcu b/Lib/D7/GUISDK_D7.dcu new file mode 100644 index 0000000..00f6db0 Binary files /dev/null and b/Lib/D7/GUISDK_D7.dcu differ diff --git a/Lib/D7/uCustomEditor.dcu b/Lib/D7/uCustomEditor.dcu new file mode 100644 index 0000000..47a1a98 Binary files /dev/null and b/Lib/D7/uCustomEditor.dcu differ diff --git a/Lib/D7/uCustomView.dcu b/Lib/D7/uCustomView.dcu new file mode 100644 index 0000000..75d3cf1 Binary files /dev/null and b/Lib/D7/uCustomView.dcu differ diff --git a/Lib/D7/uCustomView.dfm b/Lib/D7/uCustomView.dfm deleted file mode 100644 index 98f9074..0000000 --- a/Lib/D7/uCustomView.dfm +++ /dev/null @@ -1,7 +0,0 @@ -object CustomView: TCustomView - Left = 0 - Top = 0 - Width = 320 - Height = 240 - TabOrder = 0 -end diff --git a/Lib/D7/uGUIBase.dcu b/Lib/D7/uGUIBase.dcu new file mode 100644 index 0000000..323b2ce Binary files /dev/null and b/Lib/D7/uGUIBase.dcu differ diff --git a/Lib/D7/uGUIUtils.dcu b/Lib/D7/uGUIUtils.dcu new file mode 100644 index 0000000..029e0c1 Binary files /dev/null and b/Lib/D7/uGUIUtils.dcu differ diff --git a/Packages/GUISDK_D10.dpk b/Packages/GUISDK_D10.dpk index 4988833..751c93a 100644 --- a/Packages/GUISDK_D10.dpk +++ b/Packages/GUISDK_D10.dpk @@ -35,9 +35,9 @@ requires ccpack10; contains - uCustomView in '..\Sources\uCustomView.pas' {CustomView: TFrame}, - uCustomEditor in '..\Sources\uCustomEditor.pas' {CustomEditor}, - uGUIBase in '..\Sources\uGUIBase.pas', - uGUIUtils in '..\Sources\uGUIUtils.pas'; + uCustomView in '..\Source\uCustomView.pas' {CustomView: TFrame}, + uCustomEditor in '..\Source\uCustomEditor.pas' {CustomEditor}, + uGUIBase in '..\Source\uGUIBase.pas', + uGUIUtils in '..\Source\uGUIUtils.pas'; end. diff --git a/Packages/GUISDK_D2007.dpk b/Packages/GUISDK_D2007.dpk index 8bd127a..b2580b5 100644 --- a/Packages/GUISDK_D2007.dpk +++ b/Packages/GUISDK_D2007.dpk @@ -37,9 +37,9 @@ requires xmlrtl; contains - uCustomView in '..\Sources\uCustomView.pas', - uCustomEditor in '..\Sources\uCustomEditor.pas', - uGUIBase in '..\Sources\uGUIBase.pas', - uGUIUtils in '..\Sources\uGUIUtils.pas'; + uCustomView in '..\Source\uCustomView.pas', + uCustomEditor in '..\Source\uCustomEditor.pas', + uGUIBase in '..\Source\uGUIBase.pas', + uGUIUtils in '..\Source\uGUIUtils.pas'; end. diff --git a/Packages/GUISDK_D7.dof b/Packages/GUISDK_D7.dof index e302286..b4cc37b 100644 --- a/Packages/GUISDK_D7.dof +++ b/Packages/GUISDK_D7.dof @@ -92,9 +92,9 @@ ExeDescription=GUI SDK para Delphi 7 [Directories] OutputDir= UnitOutputDir=..\Lib\D7 -PackageDLLOutputDir= -PackageDCPOutputDir= -SearchPath= +PackageDLLOutputDir=..\Lib\D7 +PackageDCPOutputDir=..\Lib\D7 +SearchPath=..\Source Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;dclOfficeXP;CEToolsPkgd7;FR7;FRIBX7;Hydra_Core_D7;Hydra_RO_D7 Conditionals= DebugSourceDirs= @@ -135,31 +135,25 @@ ProductName= ProductVersion=1.0.0.0 Comments= [Excluded Packages] -C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\DJclVcl70.bpl=JEDI Code Library VCL package for Delphi 7 -C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\DJcl70.bpl=JEDI Code Library RTL package for Delphi 7 -C:\WINDOWS\system32\fqb70.bpl=FastQueryBuilder 1.01 -C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxPSCoreD7.bpl=ExpressPrinting System (core 3.1) by Developer Express Inc. -C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxComnD7.bpl=ExpressCommonLibrary by Developer Express Inc. -C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxBarDBNavD7.bpl=ExpressBars DBNavigator by Developer Express Inc. -C:\Archivos de programa\RemObjects Software\Hydra\Dcu\D7\Hydra_Core_D7.bpl=RemObjects Hydra - Core Library -C:\Archivos de programa\RemObjects Software\Hydra\Dcu\D7\Hydra_IDE_D7.bpl=RemObjects Hydra - IDE Integration -C:\Archivos de programa\RemObjects Software\Hydra\Dcu\D7\Hydra_RO_D7.bpl=RemObjects Hydra - RemObjects SDK Integration Library +c:\archivos de programa\borland\delphi7\Bin\designdgm70.bpl=Borland Module Diagram Editview [HistoryLists\hlUnitAliases] Count=1 Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; [HistoryLists\hlSearchPath] -Count=11 -Item0=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor -Item1=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;D:\Proyectos\FactuGES (Arribas)\Codigo\Base;D:\Proyectos\FactuGES (Arribas)\Codigo\Modulos\Contactos\Cliente;D:\Proyectos\FactuGES (Arribas)\Codigo\Modulos\Contactos\Reglas -Item2=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;D:\Proyectos\Componentes\GUISDK\Lib\D7;..\Servidor -Item3=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug -Item4=. -Item5=C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Dcu\D7;C:\Archivos de programa\RemObjects Software\RemObjects SDK for Delphi\Source; -Item6=C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Dcu\D7;C:\Archivos de programa\RemObjects Software\RemObjects SDK for Delphi\Source;..\Output -Item7=C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Dcu\D7 -Item8=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\ -Item9=C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Dcu\D7;C:\Archivos de programa\RemObjects Software\RemObjects SDK for Delphi\Source -Item10=http://delphi.hostmos.ru;C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Dcu\D7 +Count=13 +Item0=..\Source +Item1=..\Lib\D7 +Item2=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor +Item3=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;D:\Proyectos\FactuGES (Arribas)\Codigo\Base;D:\Proyectos\FactuGES (Arribas)\Codigo\Modulos\Contactos\Cliente;D:\Proyectos\FactuGES (Arribas)\Codigo\Modulos\Contactos\Reglas +Item4=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;D:\Proyectos\Componentes\GUISDK\Lib\D7;..\Servidor +Item5=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug +Item6=. +Item7=C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Dcu\D7;C:\Archivos de programa\RemObjects Software\RemObjects SDK for Delphi\Source; +Item8=C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Dcu\D7;C:\Archivos de programa\RemObjects Software\RemObjects SDK for Delphi\Source;..\Output +Item9=C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Dcu\D7 +Item10=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\ +Item11=C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Dcu\D7;C:\Archivos de programa\RemObjects Software\RemObjects SDK for Delphi\Source +Item12=http://delphi.hostmos.ru;C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Dcu\D7 [HistoryLists\hlUnitOutputDirectory] Count=5 Item0=..\Lib\D7 @@ -183,7 +177,7 @@ Item2=. Item3=..\Output Item4=..\ [Exception Log] -EurekaLog Version=501 +EurekaLog Version=519 Activate=1 Activate Handle=1 Save Log File=1 @@ -334,19 +328,19 @@ mtDialog_CustomDataCaption0="Other" Count mtDialog_CustomDataHeader=1 mtDialog_CustomDataHeader0="Other Information" Count mtDialog_OKButtonCaption=1 -mtDialog_OKButtonCaption0="&OK" +mtDialog_OKButtonCaption0="%26OK" Count mtDialog_TerminateButtonCaption=1 -mtDialog_TerminateButtonCaption0="&Terminate" +mtDialog_TerminateButtonCaption0="%26Terminate" Count mtDialog_RestartButtonCaption=1 -mtDialog_RestartButtonCaption0="&Restart" +mtDialog_RestartButtonCaption0="%26Restart" Count mtDialog_DetailsButtonCaption=1 -mtDialog_DetailsButtonCaption0="&Details" +mtDialog_DetailsButtonCaption0="%26Details" Count mtDialog_SendMessage=1 -mtDialog_SendMessage0="&Send this error via Internet" +mtDialog_SendMessage0="%26Send this error via Internet" Count mtDialog_ScreenshotMessage=1 -mtDialog_ScreenshotMessage0="&Attach a Screenshot image" +mtDialog_ScreenshotMessage0="%26Attach a Screenshot image" Count mtDialog_CopyMessage=1 -mtDialog_CopyMessage0="&Copy to Clipboard" +mtDialog_CopyMessage0="%26Copy to Clipboard" Count mtDialog_SupportMessage=1 mtDialog_SupportMessage0="Go to the Support Page" Count mtLog_AppHeader=1 @@ -472,7 +466,7 @@ mtReproduceDialog_Caption0="Request" Count mtReproduceDialog_Request=1 mtReproduceDialog_Request0="Please describe the steps to reproduce the error:" Count mtReproduceDialog_OKButtonCaption=1 -mtReproduceDialog_OKButtonCaption0="&OK" +mtReproduceDialog_OKButtonCaption0="%26OK" Count mtModules_Handle=1 mtModules_Handle0="Handle" Count mtModules_Name=1 diff --git a/Sources/uCustomEditor.dfm b/Sources/uCustomEditor.dfm deleted file mode 100644 index 46975d9..0000000 --- a/Sources/uCustomEditor.dfm +++ /dev/null @@ -1,18 +0,0 @@ -object CustomEditor: TCustomEditor - Left = 486 - Top = 435 - Width = 518 - Height = 324 - Caption = 'CustomEditor' - Color = clBtnFace - Font.Charset = DEFAULT_CHARSET - Font.Color = clWindowText - Font.Height = -11 - Font.Name = 'MS Sans Serif' - Font.Style = [] - OldCreateOrder = False - OnActivate = FormActivate - OnClose = FormClose - PixelsPerInch = 96 - TextHeight = 13 -end diff --git a/Sources/uCustomEditor.pas b/Sources/uCustomEditor.pas deleted file mode 100644 index 19b793c..0000000 --- a/Sources/uCustomEditor.pas +++ /dev/null @@ -1,319 +0,0 @@ -unit uCustomEditor; - -interface - -uses - Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, - Dialogs, StdCtrls, uGUIBase, uCustomView; - -type - TCustomEditor = class(TForm, ICustomEditor) - private - FInstanceID: Integer; - FOnGetModified: TOnGetModifiedEvent; - FOnViewModified: TOnViewModifiedEvent; - FReadOnly: Boolean; - function FindHostForm : IHostForm; - procedure ShowEmbedded(const AParent : TWinControl); overload; - protected - FViews: TInterfaceList; - procedure UpdateActions; override; - function GetInstanceID: Integer; - function GetModified: Boolean; virtual; - procedure SetModified(const Value : Boolean); virtual; - function GetOnViewModified: TOnViewModifiedEvent; - procedure SetOnViewModified(const Value : TOnViewModifiedEvent); - function GetReadOnly: Boolean; virtual; - function GetValid: Boolean; virtual; - procedure SetInstanceID(Value: Integer); - procedure SetReadOnly(Value: Boolean); virtual; - function GetOnGetModified: TOnGetModifiedEvent; - procedure SetOnGetModified(const Value: TOnGetModifiedEvent); - public - constructor Create(AOwner: TComponent); overload; override; - destructor Destroy; override; - function CreateView(const AViewClass : TCustomViewClass): IInterface; - function FindView(const IID: TGUID): IInterface; - function GetInstance: TObject; - procedure ShowEmbedded; overload; - function CloseQuery: Boolean; override; - property Modified: Boolean read GetModified write SetModified; - published - property InstanceID: Integer read GetInstanceID write SetInstanceID; - property ReadOnly: Boolean read GetReadOnly write SetReadOnly; - property Valid: Boolean read GetValid; - property OnGetModified: TOnGetModifiedEvent read GetOnGetModified write - SetOnGetModified; - end; - - TCustomEditorClass = class of TCustomEditor; - -procedure Register; - -implementation - -uses - CustFrms, uGUIUtils; - -procedure Register; -begin - RegisterCustomFormClass(TCustomEditor); -end; - -{ -******************************** TCustomEditor ********************************* -} - -constructor TCustomEditor.Create(AOwner: TComponent); -begin -// inherited CreateNew(AOwner); - // initialize custom fields, etc., here - FViews := TInterfaceList.Create; - - GlobalNameSpace.BeginWrite; - try - CreateNew(AOwner); - if (ClassType <> TCustomEditor) and not (csDesigning in ComponentState) then - begin - Include(FFormState, fsCreating); - try - if not InitInheritedComponent(Self, TCustomEditor) then - raise EResNotFound.CreateFmt('Error %s', [ClassName]); - finally - Exclude(FFormState, fsCreating); - end; - if OldCreateOrder then DoCreate; - end; - finally - GlobalNameSpace.EndWrite; - end; - - - -{ GlobalNameSpace.BeginWrite; - try - if (ClassType <> TCustomEditor) and - not (csDesigning in ComponentState) then - begin - if not InitInheritedComponent(Self, TCustomEditor) then - raise Exception.Create('Error'); - if OldCreateOrder and Assigned(OnCreate) then - OnCreate(Self); - end; - finally - GlobalNameSpace.EndWrite; - end;} -end; - -destructor TCustomEditor.Destroy; -var - i: Integer; -begin - for i := FViews.Count - 1 downto 0 do - FViews.Delete(i); - - FreeAndNIL(FViews); - - inherited Destroy; -end; - -function TCustomEditor.CreateView(const AViewClass : TCustomViewClass): - IInterface; -begin - Result := FViews[FViews.Add(AViewClass.Create(Self))]; -end; - -function TCustomEditor.FindView(const IID: TGUID): IInterface; -var - i: Integer; - aObj: ICustomView; -begin - aObj := NIL; - Result := NIL; - for i := 0 to (FViews.Count - 1) do - begin - FViews.Items[i].QueryInterface(IID, aObj); - if Assigned(aObj) then - begin - Result := aObj; - Break; - end; - end; -end; - -function TCustomEditor.GetInstance: TObject; -begin - Result := Self; -end; - -function TCustomEditor.GetInstanceID: Integer; -begin - Result := FInstanceID; -end; - -function TCustomEditor.GetModified: Boolean; -begin - Result := ControlIsModified(Self); - if Assigned(FOnGetModified) then - FOnGetModified(Self, Result); -end; - -function TCustomEditor.GetReadOnly: Boolean; -begin - Result := FReadOnly; -end; - -function TCustomEditor.GetValid: Boolean; -var - i: Integer; - aObj: ICustomView; -begin - aObj := NIL; - Result := True; - for i := 0 to (FViews.Count - 1) do - begin - FViews.Items[i].QueryInterface(IValidable, aObj); - if Assigned(aObj) then - Result := Result AND aObj.Valid; - if not Result then - Break; - end; -end; - -procedure TCustomEditor.SetInstanceID(Value: Integer); -begin - FInstanceID := Value; -end; - -procedure TCustomEditor.SetReadOnly(Value: Boolean); -begin - FReadOnly := Value; -end; - -procedure TCustomEditor.ShowEmbedded; -var - AMainForm: IHostForm; -begin - AMainForm := NIL; - if not Supports(Application.MainForm, IHostForm, AMainForm) then - AMainForm := FindHostForm; - - if not Assigned(AMainForm) then - raise Exception.Create('No se ha encontrado el formulario principal (ShowEmbedded)') - else - AMainForm.ShowEmbedded(Self) -end; - -procedure TCustomEditor.ShowEmbedded(const AParent : TWinControl); -begin - Parent := AParent; - Align := alClient; - BorderIcons := []; - BorderStyle := bsNone; - Show; - SetFocus; -end; - -function TCustomEditor.GetOnGetModified: TOnGetModifiedEvent; -begin - Result := FOnGetModified; -end; - -function TCustomEditor.GetOnViewModified: TOnViewModifiedEvent; -begin - Result := FOnViewModified; -end; - -procedure TCustomEditor.SetOnGetModified(const Value: TOnGetModifiedEvent); -begin - FOnGetModified := Value; -end; - -procedure TCustomEditor.SetOnViewModified(const Value: TOnViewModifiedEvent); -begin - FOnViewModified := Value; -end; - -function TCustomEditor.CloseQuery: Boolean; -var - i: Integer; - aIntf: IValidable; -begin - Result := inherited CloseQuery; - if Result then - for i := 0 to FViews.Count - 1 do - begin - FViews.Items[i].QueryInterface(IValidable, aIntf); - if Assigned(aIntf) then - begin - Result := (Result and aIntf.Valid); - if not Result then - break; - end; - end; -end; - -procedure TCustomEditor.SetModified(const Value: Boolean); -begin - if Value = False then - ResetModifiedControl(Self); - - if Assigned(FOnViewModified) then - FOnViewModified(Self); -end; - -function TCustomEditor.FindHostForm: IHostForm; -var - i : integer; - AMainForm : IHostForm; -begin - Result := NIL; - for i := 0 to Application.ComponentCount do - if Supports(Application.Components[i], IHostForm, AMainForm) then - begin - Result := AMainForm; - Break; - end; -end; - -{------------------------------------------------------------------------------- - Sobreescribo 'UpdateActions' por un fallo en Delphi que hace - consumir mucha CPU cuando se usan acciones con formularios metidos - uno dentro de otro. --------------------------------------------------------------------------------} -procedure TCustomEditor.UpdateActions; -var - I: Integer; - - procedure TraverseClients(Container: TWinControl); - var - I: Integer; - Control: TControl; - begin - Application.ProcessMessages; // <--- Modificación - if Container.Showing then - for I := 0 to Container.ControlCount - 1 do - begin - Control := Container.Controls[I]; - if (csActionClient in Control.ControlStyle) and Control.Visible then - Control.InitiateAction; - - if Control is TWinControl then - TraverseClients(TWinControl(Control)); - end; - end; - -begin - if (csDesigning in ComponentState) or not Showing then Exit; - { Update form } - InitiateAction; - { Update main menu's top-most items } - if Menu <> nil then - for I := 0 to Menu.Items.Count - 1 do - with Menu.Items[I] do - if Visible then InitiateAction; - { Update any controls } - TraverseClients(Self); -end; - -end. diff --git a/Sources/uCustomView.dcu b/Sources/uCustomView.dcu deleted file mode 100644 index fe7b4f2..0000000 Binary files a/Sources/uCustomView.dcu and /dev/null differ diff --git a/Sources/uCustomView.dfm b/Sources/uCustomView.dfm deleted file mode 100644 index 98f9074..0000000 --- a/Sources/uCustomView.dfm +++ /dev/null @@ -1,7 +0,0 @@ -object CustomView: TCustomView - Left = 0 - Top = 0 - Width = 320 - Height = 240 - TabOrder = 0 -end diff --git a/Sources/uCustomView.pas b/Sources/uCustomView.pas deleted file mode 100644 index 5db151e..0000000 --- a/Sources/uCustomView.pas +++ /dev/null @@ -1,244 +0,0 @@ -unit uCustomView; - -interface - -uses - Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, - Dialogs, StdCtrls, uGUIBase, DesignEditors; - -type - TCustomView = class(TFrame, ICustomView) - private - FOnGetModified: TOnGetModifiedEvent; - FOnViewModified: TOnViewModifiedEvent; - FReadOnly: Boolean; - FOnCreate: TNotifyEvent; - FOnDestroy: TNotifyEvent; - FOnHide: TNotifyEvent; - FOnShow: TNotifyEvent; - procedure ShowEmbedded; overload; - procedure CMShowingChanged(var Message: TMessage); message CM_SHOWINGCHANGED; - protected - FObserver: IObserver; - function GetOnGetModified: TOnGetModifiedEvent; - procedure SetOnGetModified(const Value : TOnGetModifiedEvent); - function GetOnViewModified: TOnViewModifiedEvent; - procedure SetOnViewModified(const Value : TOnViewModifiedEvent); - procedure SetModified(const Value : Boolean); virtual; - function GetModified: Boolean; virtual; - function GetReadOnly: Boolean; virtual; - function GetValid: Boolean; virtual; - procedure Release; - procedure SetReadOnly(Value: Boolean); virtual; - procedure DoCreate; virtual; - procedure DoDestroy; virtual; - procedure DoHide; dynamic; - procedure DoShow; dynamic; - public - constructor Create(AOwner: TComponent); override; - constructor CreateEmbedded(AOwner: TComponent; AParent: TWinControl); - destructor Destroy; override; - procedure ShowEmbedded(const AParent : TWinControl); overload; virtual; - property Modified: Boolean read GetModified write SetModified; - published - property OnGetModified: TOnGetModifiedEvent read GetOnGetModified write - SetOnGetModified; - property OnViewModified: TOnViewModifiedEvent read GetOnViewModified write - SetOnViewModified; - property ReadOnly: Boolean read GetReadOnly write SetReadOnly; - property Valid: Boolean read GetValid; - property OnCreate: TNotifyEvent read FOnCreate write FOnCreate; - property OnDestroy: TNotifyEvent read FOnDestroy write FOnDestroy; - property OnHide: TNotifyEvent read FOnHide write FOnHide; - property OnShow: TNotifyEvent read FOnShow write FOnShow; - end; - - TCustomViewClass = class of TCustomView; - - TCustomViewModule = class(TCustomModule) - public - function Nestable: Boolean; override; - end; - -procedure Register; - -implementation - -{$R *.dfm} - -{ TCustomView } - -uses - DesignIntf, uGUIUtils, RTLConsts; - -procedure Register; -begin - RegisterCustomModule(TCustomView, TCustomViewModule); -end; - -{ -********************************* TCustomView ********************************** -} -procedure TCustomView.CMShowingChanged(var Message: TMessage); -begin - inherited; - - if Showing then - begin - // Put your OnShow logic here. - // When this is called, the frame's window handle has already - // been created, as have the handles for the controls on the - // frame - so you can do most anything you need to do. - if Assigned(FOnShow) then - FOnShow(Self); - end - else - begin - // Put your OnHide logic here, but see the caveats below. - if Assigned(FOnHide) then - FOnHide(Self); - end; -end; - -constructor TCustomView.Create(AOwner: TComponent); -begin - inherited Create(AOwner); - FObserver := NIL; - DoCreate; -end; - -constructor TCustomView.CreateEmbedded(AOwner: TComponent; AParent: - TWinControl); -begin - Create(AOwner); - Parent := AParent; - Align := alClient; -end; - -destructor TCustomView.Destroy; -begin - DoDestroy; - inherited Destroy; -end; - -procedure TCustomView.DoCreate; -begin - if Assigned(FOnCreate) then - begin - try - FOnCreate(Self); - except - Application.HandleException(Self); - end; - end; -end; - -procedure TCustomView.DoDestroy; -begin - if Assigned(FOnDestroy) then - begin - try - FOnDestroy(Self); - except - Application.HandleException(Self); - end; - end; -end; - -procedure TCustomView.DoHide; -begin - if Assigned(FOnHide) then - begin - try - FOnHide(Self); - except - Application.HandleException(Self); - end; - end; -end; - -procedure TCustomView.DoShow; -begin - if Assigned(FOnShow) then - begin - try - FOnShow(Self); - except - Application.HandleException(Self); - end; - end; -end; - -function TCustomView.GetModified: Boolean; -begin - Result := ControlIsModified(Self); - if Assigned(FOnGetModified) then - FOnGetModified(Self, Result); -end; - -function TCustomView.GetOnGetModified: TOnGetModifiedEvent; -begin - Result := FOnGetModified; -end; - -function TCustomView.GetOnViewModified: TOnViewModifiedEvent; -begin - Result := FOnViewModified; -end; - -function TCustomView.GetReadOnly: Boolean; -begin - Result := FReadOnly; -end; - -function TCustomView.GetValid: Boolean; -begin - Result := True; -end; - -procedure TCustomView.Release; -begin - Free; -end; - -procedure TCustomView.SetModified(const Value: Boolean); -begin - if Assigned(FOnViewModified) then - FOnViewModified(Self); -end; - -procedure TCustomView.SetOnGetModified(const Value: TOnGetModifiedEvent); -begin - FOnGetModified := Value; -end; - -procedure TCustomView.SetOnViewModified(const Value: TOnViewModifiedEvent); -begin - FOnViewModified := Value; -end; - -procedure TCustomView.SetReadOnly(Value: Boolean); -begin - FReadOnly := Value; -end; - -procedure TCustomView.ShowEmbedded; -begin - Align := alClient; - Show; -end; - -procedure TCustomView.ShowEmbedded(const AParent : TWinControl); -begin - Parent := AParent; - ShowEmbedded; -end; - -{ TCustomViewModule } - -function TCustomViewModule.Nestable: Boolean; -begin - Result := True; -end; - -end. diff --git a/Sources/uGUIBase.dcu b/Sources/uGUIBase.dcu deleted file mode 100644 index 2f22513..0000000 Binary files a/Sources/uGUIBase.dcu and /dev/null differ diff --git a/Sources/uGUIBase.pas b/Sources/uGUIBase.pas deleted file mode 100644 index eb742d9..0000000 --- a/Sources/uGUIBase.pas +++ /dev/null @@ -1,128 +0,0 @@ -unit uGUIBase; - -interface - -uses - Forms, Controls, Contnrs, Classes; - -type - TOnGetModifiedEvent = procedure (Sender: TObject; var Modified: Boolean) of object; - TOnViewModifiedEvent = procedure (Sender: TObject) of object; - - IEmbeddedable = interface(IInterface) - ['{A1668B17-B355-4688-A78A-B30AE3C8C81E}'] - procedure Release; - procedure ShowEmbedded; overload; - procedure ShowEmbedded(const AParent : TWinControl); overload; - end; - - IModificable = interface(IEmbeddedable) - ['{7F75A327-4ACC-4E4A-8B3D-21C1241DAFBF}'] - function GetModified: Boolean; - procedure SetModified(const Value : Boolean); - property Modified: Boolean read GetModified write SetModified; - - function GetOnGetModified: TOnGetModifiedEvent; - procedure SetOnGetModified(const Value : TOnGetModifiedEvent); - property OnGetModified: TOnGetModifiedEvent read GetOnGetModified write - SetOnGetModified; - - function GetOnViewModified: TOnViewModifiedEvent; - procedure SetOnViewModified(const Value : TOnViewModifiedEvent); - property OnViewModified: TOnViewModifiedEvent read GetOnViewModified write - SetOnViewModified; - end; - - IReadOnly = interface(IModificable) - ['{2549ECF9-270F-4F3C-9852-E488C518F590}'] - function GetReadOnly: Boolean; - procedure SetReadOnly(Value: Boolean); - property ReadOnly: Boolean read GetReadOnly write SetReadOnly; - end; - - IValidable = interface(IReadOnly) - ['{A2562A5E-E3B2-4C1B-B8FE-13A410D8B3DB}'] - function GetValid: Boolean; - property Valid: Boolean read GetValid; - end; - - IInstanceAware = interface(IValidable) - ['{B6B2676A-1D8E-4597-ADDB-43734508E6F5}'] - function GetInstance: TObject; - function GetInstanceID: Integer; - procedure SetInstanceID(Value: Integer); - property InstanceID: Integer read GetInstanceID write SetInstanceID; - end; - - ICustomEditor = interface(IInstanceAware) - ['{07A3AB52-B2B0-4DE3-B470-379834BBE7DB}'] - end; - - ICustomView = interface(IValidable) - ['{98192DE2-19C5-4DA5-B4F4-F2B3782DB6E2}'] - function CanFocus: Boolean; - function Focused: Boolean; - procedure SetFocus; - procedure Update; - end; - - - IHostForm = interface(IInterface) - ['{2091401E-1F9C-4F05-8574-E9E0532780D1}'] - function GetWorkPanel: TWinControl; - property WorkPanel: TWinControl read GetWorkPanel; - procedure OnWorkPanelChanged(AEditor : ICustomEditor); - procedure ShowEmbedded(AEditor : ICustomEditor); - end; - - - IGUIManager = interface(IInterface) - ['{D0A5D2CC-36E1-4C61-8D3B-B6D00EBA3278}'] - function FindInstance(const IID: TGUID): ICustomEditor; - function GetActiveInstance: ICustomEditor; - function GetActiveInstanceIndex: Integer; - function GetInstance(Index : Integer): ICustomEditor; - function GetWorkPanel: TWinControl; - function RegisterInstance(AInstance : ICustomEditor): Boolean; - procedure ReleaseInstance(AnInstance : ICustomEditor); - procedure SetActiveInstance(Value: ICustomEditor); - procedure SetActiveInstanceIndex(Value: Integer); - procedure SetWorkPanel(const Value: TWinControl); - property ActiveInstance: ICustomEditor read GetActiveInstance write - SetActiveInstance; - property ActiveInstanceIndex: Integer read GetActiveInstanceIndex write - SetActiveInstanceIndex; - property Instances[Index : Integer]: ICustomEditor read GetInstance; - property WorkPanel: TWinControl read GetWorkPanel write SetWorkPanel; - end; - - IObservable = interface; - TObserverEvent = procedure (AObject : IObservable) of object; - IObserver = interface(IInterface) - ['{79175C66-8435-4F2F-A3E0-A53A24554A0E}'] - function GetOnNotifyObserver: TObserverEvent; - function GetOnObserverAttached: TObserverEvent; - function GetOnObserverDettached: TObserverEvent; - procedure NotifyObserver(const AObject: IObservable); - procedure ObserverAttached(AObject : IObservable); - procedure ObserverDettached(AObject : IObservable); - procedure SetOnNotifyObserver(AValue: TObserverEvent); - procedure SetOnObserverAttached(AValue: TObserverEvent); - procedure SetOnObserverDettached(AValue: TObserverEvent); - property OnNotifyObserver: TObserverEvent read GetOnNotifyObserver write - SetOnNotifyObserver; - property OnObserverAttached: TObserverEvent read GetOnObserverAttached - write SetOnObserverAttached; - property OnObserverDettached: TObserverEvent read GetOnObserverDettached - write SetOnObserverDettached; - end; - - IObservable = interface(IInterface) - ['{1FF0F081-CBBA-4728-8689-D6F506652E80}'] - procedure AddObserver(const AObserver: IObserver); - procedure RemoveObserver(const AObserver: IObserver); - end; - -implementation - -end. diff --git a/Sources/uGUIUtils.dcu b/Sources/uGUIUtils.dcu deleted file mode 100644 index 170d532..0000000 Binary files a/Sources/uGUIUtils.dcu and /dev/null differ diff --git a/Sources/uGUIUtils.pas b/Sources/uGUIUtils.pas deleted file mode 100644 index c952c9b..0000000 --- a/Sources/uGUIUtils.pas +++ /dev/null @@ -1,51 +0,0 @@ -unit uGUIUtils; - -interface - -uses - Controls; - -function ControlIsModified(AControl : TWinControl) : Boolean; -procedure ResetModifiedControl(AControl : TWinControl); - -implementation - -uses - StdCtrls, uGUIBase, uCustomView; - -function ControlIsModified(AControl : TWinControl) : Boolean; -var - i : integer; -begin - Result := False; - - if AControl is TCustomEdit then - Result := Result OR (AControl as TCustomEdit).Modified - else - if not Result then - for i := 0 to AControl.ControlCount - 1 do - begin - if AControl.Controls[i] is TWinControl then - Result := ControlIsModified((AControl.Controls[i] as TWinControl)); - - if Result then - Exit; - end; -end; - - -procedure ResetModifiedControl(AControl : TWinControl); -var - i : integer; -begin - if AControl is TCustomEdit then - (AControl as TCustomEdit).Modified := False - else - for i := 0 to AControl.ControlCount - 1 do - begin - if AControl.Controls[i] is TWinControl then - ResetModifiedControl((AControl.Controls[i] as TWinControl)); - end; -end; - -end.