diff --git a/internal/2.31RC1/1/Lib/D12/EnvMsgForm_U.dcu b/internal/2.31RC1/1/Lib/D12/EnvMsgForm_U.dcu
deleted file mode 100644
index c39867d..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/EnvMsgForm_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/IncPerfil_U.dcu b/internal/2.31RC1/1/Lib/D12/IncPerfil_U.dcu
deleted file mode 100644
index 61f461c..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/IncPerfil_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/IncUser_U.dcu b/internal/2.31RC1/1/Lib/D12/IncUser_U.dcu
deleted file mode 100644
index 9a9042c..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/IncUser_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/LoginWindow_U.dcu b/internal/2.31RC1/1/Lib/D12/LoginWindow_U.dcu
deleted file mode 100644
index 9dcf1a7..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/LoginWindow_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/MsgRecForm_U.dcu b/internal/2.31RC1/1/Lib/D12/MsgRecForm_U.dcu
deleted file mode 100644
index 6580eac..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/MsgRecForm_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/MsgsForm_U.dcu b/internal/2.31RC1/1/Lib/D12/MsgsForm_U.dcu
deleted file mode 100644
index 11b9750..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/MsgsForm_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/SenhaForm_U.dcu b/internal/2.31RC1/1/Lib/D12/SenhaForm_U.dcu
deleted file mode 100644
index f99e937..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/SenhaForm_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/TrocaSenha_U.dcu b/internal/2.31RC1/1/Lib/D12/TrocaSenha_U.dcu
deleted file mode 100644
index 1c02514..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/TrocaSenha_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCALSMTPClient.dcu b/internal/2.31RC1/1/Lib/D12/UCALSMTPClient.dcu
deleted file mode 100644
index 8175404..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCALSMTPClient.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCAbout.dcu b/internal/2.31RC1/1/Lib/D12/UCAbout.dcu
deleted file mode 100644
index 07b1aee..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCAbout.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCBase.dcu b/internal/2.31RC1/1/Lib/D12/UCBase.dcu
deleted file mode 100644
index 56ce1b3..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCBase.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCDataConnector.dcu b/internal/2.31RC1/1/Lib/D12/UCDataConnector.dcu
deleted file mode 100644
index 1509185..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCDataConnector.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCDataInfo.dcu b/internal/2.31RC1/1/Lib/D12/UCDataInfo.dcu
deleted file mode 100644
index 254db71..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCDataInfo.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCEMailForm_U.dcu b/internal/2.31RC1/1/Lib/D12/UCEMailForm_U.dcu
deleted file mode 100644
index 4ff30e1..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCEMailForm_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCEditorForm_U.dcu b/internal/2.31RC1/1/Lib/D12/UCEditorForm_U.dcu
deleted file mode 100644
index dde8d2e..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCEditorForm_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCIdle.dcu b/internal/2.31RC1/1/Lib/D12/UCIdle.dcu
deleted file mode 100644
index d1bb133..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCIdle.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCMail.dcu b/internal/2.31RC1/1/Lib/D12/UCMail.dcu
deleted file mode 100644
index fa54275..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCMail.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCMessages.dcu b/internal/2.31RC1/1/Lib/D12/UCMessages.dcu
deleted file mode 100644
index 7cd7a51..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCMessages.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCObjSel_U.dcu b/internal/2.31RC1/1/Lib/D12/UCObjSel_U.dcu
deleted file mode 100644
index 92361d4..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCObjSel_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCReg.dcu b/internal/2.31RC1/1/Lib/D12/UCReg.dcu
deleted file mode 100644
index 0bea47f..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCReg.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UCSettings.dcu b/internal/2.31RC1/1/Lib/D12/UCSettings.dcu
deleted file mode 100644
index b0b9355..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UCSettings.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UcConsts_Language.dcu b/internal/2.31RC1/1/Lib/D12/UcConsts_Language.dcu
deleted file mode 100644
index 5f86b12..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UcConsts_Language.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/UserPermis_U.dcu b/internal/2.31RC1/1/Lib/D12/UserPermis_U.dcu
deleted file mode 100644
index 7e8f4d1..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/UserPermis_U.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/md5.dcu b/internal/2.31RC1/1/Lib/D12/md5.dcu
deleted file mode 100644
index 984daed..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/md5.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pUCFrame_Log.dcu b/internal/2.31RC1/1/Lib/D12/pUCFrame_Log.dcu
deleted file mode 100644
index abbb832..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pUCFrame_Log.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pUCFrame_Profile.dcu b/internal/2.31RC1/1/Lib/D12/pUCFrame_Profile.dcu
deleted file mode 100644
index f75eed0..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pUCFrame_Profile.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pUCFrame_User.dcu b/internal/2.31RC1/1/Lib/D12/pUCFrame_User.dcu
deleted file mode 100644
index 2f2dfff..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pUCFrame_User.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pUCGeral.dcu b/internal/2.31RC1/1/Lib/D12/pUCGeral.dcu
deleted file mode 100644
index f7f042d..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pUCGeral.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pUcFrame_UserLogged.dcu b/internal/2.31RC1/1/Lib/D12/pUcFrame_UserLogged.dcu
deleted file mode 100644
index d37acc5..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pUcFrame_UserLogged.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckMD5.bpl b/internal/2.31RC1/1/Lib/D12/pckMD5.bpl
deleted file mode 100644
index 9d76bf4..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckMD5.bpl and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckMD5.dcp b/internal/2.31RC1/1/Lib/D12/pckMD5.dcp
deleted file mode 100644
index fb2cbc0..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckMD5.dcp and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckMD5.dcu b/internal/2.31RC1/1/Lib/D12/pckMD5.dcu
deleted file mode 100644
index 98615d2..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckMD5.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckUCDataConnector.bpl b/internal/2.31RC1/1/Lib/D12/pckUCDataConnector.bpl
deleted file mode 100644
index 0240d41..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckUCDataConnector.bpl and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckUCDataConnector.dcp b/internal/2.31RC1/1/Lib/D12/pckUCDataConnector.dcp
deleted file mode 100644
index 25bd2fb..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckUCDataConnector.dcp and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckUCDataConnector.dcu b/internal/2.31RC1/1/Lib/D12/pckUCDataConnector.dcu
deleted file mode 100644
index 99b0547..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckUCDataConnector.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckUserControl_DT_D12.bpl b/internal/2.31RC1/1/Lib/D12/pckUserControl_DT_D12.bpl
deleted file mode 100644
index e6ce1ec..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckUserControl_DT_D12.bpl and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckUserControl_DT_D12.dcp b/internal/2.31RC1/1/Lib/D12/pckUserControl_DT_D12.dcp
deleted file mode 100644
index 0d34d30..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckUserControl_DT_D12.dcp and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckUserControl_DT_D12.dcu b/internal/2.31RC1/1/Lib/D12/pckUserControl_DT_D12.dcu
deleted file mode 100644
index 43833ea..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckUserControl_DT_D12.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckUserControl_RT.bpl b/internal/2.31RC1/1/Lib/D12/pckUserControl_RT.bpl
deleted file mode 100644
index aff904d..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckUserControl_RT.bpl and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckUserControl_RT.dcp b/internal/2.31RC1/1/Lib/D12/pckUserControl_RT.dcp
deleted file mode 100644
index 668244b..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckUserControl_RT.dcp and /dev/null differ
diff --git a/internal/2.31RC1/1/Lib/D12/pckUserControl_RT.dcu b/internal/2.31RC1/1/Lib/D12/pckUserControl_RT.dcu
deleted file mode 100644
index c1ced53..0000000
Binary files a/internal/2.31RC1/1/Lib/D12/pckUserControl_RT.dcu and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCADOConn/UCADOConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCADOConn/UCADOConn.pas
deleted file mode 100644
index da90afa..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCADOConn/UCADOConn.pas
+++ /dev/null
@@ -1,114 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCADOConn
- Author: QmD
- Date: 08-nov-2004
- Purpose: ADO Support
-
- registered in UCReg.pas
------------------------------------------------------------------------------}
-
-unit UCADOConn;
-
-interface
-
-uses
- ADODB,
- Classes,
- DB,
- SysUtils,
- UCDataConnector;
-
-type
- TUCADOConn = class(TUCDataConnector)
- private
- FConnection: TADOConnection;
- procedure SetADOConnection(Value: TADOConnection);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation); override;
- public
- function GetDBObjectName: String; override;
- function GetTransObjectName: String; override;
- function UCFindDataConnection: Boolean; override;
- function UCFindTable(const Tablename: String): Boolean; override;
- function UCGetSQLDataset(FSQL: String): TDataset; override;
- procedure UCExecSQL(FSQL: String); override;
- published
- property Connection: TADOConnection read FConnection write SetADOConnection;
- end;
-
-implementation
-
-{ TUCADOConn }
-
-procedure TUCADOConn.SetADOConnection(Value: TADOConnection);
-begin
- if FConnection <> Value then
- FConnection := Value;
- if FConnection <> nil then
- FConnection.FreeNotification(Self);
-end;
-
-procedure TUCADOConn.Notification(AComponent: TComponent; Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- FConnection := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCADOConn.UCFindTable(const TableName: String): Boolean;
-var
- TempList: TStringList;
-begin
- try
- TempList := TStringList.Create;
- FConnection.GetTableNames(TempList, True);
- TempList.Text := UpperCase(TempList.Text);
- Result := TempList.IndexOf(UpperCase(TableName)) > -1;
- finally
- FreeAndNil(TempList);
- end;
-end;
-
-function TUCADOConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCADOConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then
- Result := FConnection.Name
- else
- begin
- Result := FConnection.Owner.Name + '.' + FConnection.Name;
- end;
- end
- else
- Result := '';
-end;
-
-function TUCADOConn.GetTransObjectName: String;
-begin
- Result := '';
-end;
-
-procedure TUCADOConn.UCExecSQL(FSQL: String);
-begin
- FConnection.Execute(FSQL);
-end;
-
-function TUCADOConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TADOQuery.Create(nil);
- with Result as TADOQuery do
- begin
- Connection := FConnection;
- SQL.Text := FSQL;
- Open;
- end;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCADOConn/UCADOConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCADOConn/UCADOConnReg.pas
deleted file mode 100644
index 32c5c62..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCADOConn/UCADOConnReg.pas
+++ /dev/null
@@ -1,19 +0,0 @@
-unit UCADOConnReg;
-
-interface
-
-uses
- Classes,
- UCADOConn;
-
-procedure Register;
-
-implementation
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCADOConn]);
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCADOConn/pckUCADOConn.bdsproj b/internal/2.31RC1/1/Packages/Connectors/UCADOConn/pckUCADOConn.bdsproj
deleted file mode 100644
index 1b6a6b0..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCADOConn/pckUCADOConn.bdsproj
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUCADOConn.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control ADO Connectors
-
-
-
- C:\WINDOWS\Temp
-
-
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
- C:\Arquivos de programas\Borland\Delphi7\Bin\
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCADOConn/pckUCADOConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCADOConn/pckUCADOConn.dpk
deleted file mode 100644
index 92d149f..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCADOConn/pckUCADOConn.dpk
+++ /dev/null
@@ -1,36 +0,0 @@
-package pckUCADOConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control ADO Connectors'}
-{$IMPLICITBUILD OFF}
-
-requires
- pckUCDataConnector,
- adortl;
-
-contains
- UCADOConn in 'UCADOConn.pas',
- UCADOConnReg in 'UCADOConnReg.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCADOConn/pckUCADOConn.res b/internal/2.31RC1/1/Packages/Connectors/UCADOConn/pckUCADOConn.res
deleted file mode 100644
index a3a102a..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCADOConn/pckUCADOConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/UCAbsoluteConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/UCAbsoluteConn.pas
deleted file mode 100644
index 0febf8e..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/UCAbsoluteConn.pas
+++ /dev/null
@@ -1,123 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCZEOSConn
- Author: Vicente Barros Leonel
- Date: 29-outubro-2007
- Purpose: Absolute Database
-
- registered in UCAbsoluteConn.pas
------------------------------------------------------------------------------}
-
-unit UCAbsoluteConn;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- Classes,
- DB,
- SysUtils,
- UCDataConnector,
- ABSMain;
-
-type
- TUCAbsoluteConn = class(TUCDataConnector)
- private
- FConnection: TABSDatabase;
- procedure SetFConnection(const Value: TABSDatabase);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation); override;
- public
- function GetDBObjectName: String; override;
- function GetTransObjectName: String; override;
- function UCFindDataConnection: Boolean; override;
- function UCFindTable(const Tablename: String): Boolean; override;
- function UCGetSQLDataset(FSQL: String): TDataset; override;
- procedure UCExecSQL(FSQL: String); override;
- published
- property Connection: TABSDatabase read FConnection write SetFConnection;
- end;
-implementation
-
-{ TUCAbsoluteConn }
-
-function TUCAbsoluteConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then
- Result := FConnection.Name
- else
- begin
- Result := FConnection.Owner.Name + '.' + FConnection.Name;
- end;
- end
- else
- Result := '';
-end;
-
-function TUCAbsoluteConn.GetTransObjectName: String;
-begin
- Result := '';
-end;
-
-procedure TUCAbsoluteConn.Notification(AComponent: TComponent;
- Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- FConnection := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-procedure TUCAbsoluteConn.SetFConnection(const Value: TABSDatabase);
-begin
- if FConnection <> Value then
- FConnection := Value;
- if FConnection <> nil then
- FConnection.FreeNotification(Self);
-end;
-
-procedure TUCAbsoluteConn.UCExecSQL(FSQL: String);
-begin
- with TABSQuery.Create(nil) do
- begin
- DataBaseName := FConnection.Name;
- SQL.Clear;
- Sql.Add(fSql);
- ExecSQL;
- Free;
- end;
-end;
-
-function TUCAbsoluteConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCAbsoluteConn.UCFindTable(const Tablename: String): Boolean;
-var
- TempList: TStringList;
-begin
- try
- TempList := TStringList.Create;
- FConnection.GetTablesList(TempList);
- TempList.Text := UpperCase(TempList.Text);
- Result := TempList.IndexOf(UpperCase(TableName)) > -1;
- finally
- FreeAndNil(TempList);
- end;
-end;
-
-function TUCAbsoluteConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TABSQuery.Create(nil);
- with Result as TABSQuery do
- begin
- DataBaseName := FConnection.Name;
- SQL.Clear;
- Sql.Add(fSql);
- Open;
- end;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/UCAbsoluteConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/UCAbsoluteConnReg.pas
deleted file mode 100644
index d0a63fd..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/UCAbsoluteConnReg.pas
+++ /dev/null
@@ -1,17 +0,0 @@
-unit UCAbsoluteConnReg;
-
-interface
-
-uses Classes;
-
-procedure Register;
-
-implementation
-
-uses UCAbsoluteConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCAbsoluteConn]);
-end;
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/pckUCAbsoluteConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/pckUCAbsoluteConn.dpk
deleted file mode 100644
index e431c67..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/pckUCAbsoluteConn.dpk
+++ /dev/null
@@ -1,38 +0,0 @@
-package pckUCAbsoluteConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control Absolute DataBase Connectors'}
-{$IMPLICITBUILD ON}
-
-requires
- rtl,
- dbrtl,
- vclAbsDBd11,
- vcl;
-
-contains
- UCAbsoluteConnReg in 'UCAbsoluteConnReg.pas',
- UCAbsoluteConn in 'UCAbsoluteConn.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/pckUCAbsoluteConn.dproj b/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/pckUCAbsoluteConn.dproj
deleted file mode 100644
index d67206e..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/pckUCAbsoluteConn.dproj
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
- {e9d49972-8f3b-467c-b46e-69225c5b5b37}
- pckUCAbsoluteConn.dpk
- Debug
- AnyCPU
- DCC32
- C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\pckUCAbsoluteConn.bpl
-
-
- 7.0
- False
- False
- 0
- RELEASE
-
-
- 7.0
-
-
- Delphi.Personality
- Package
-
-FalseTrueFalseTrueFalseFalse User Control Absolute DataBase Connectors
- TrueFalse1000FalseFalseFalseFalseFalse104612521.0.0.01.0.0.0pckUCAbsoluteConn.dpk
-
-
-
-
- MainSource
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/pckUCAbsoluteConn.res b/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/pckUCAbsoluteConn.res
deleted file mode 100644
index c0980e1..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCAboluteBase/pckUCAbsoluteConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCAstaConn/UCAstaConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCAstaConn/UCAstaConn.pas
deleted file mode 100644
index abf4425..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCAstaConn/UCAstaConn.pas
+++ /dev/null
@@ -1,113 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCAstaConn
- Author: QmD
- Date: 24-nov-2004
- Purpose: Asta 3 Support
-
- registered in UCAstaReg.pas
------------------------------------------------------------------------------}
-
-unit UCAstaConn;
-
-interface
-
-uses
- SysUtils, Classes, UCBase, DB, AstaDrv2, AstaClientDataset, ScktComp,
- AstaCustomSocket, AstaClientSocket,AstaDBTypes;
-type
- TUCAstaConn = class(TUCDataConn)
- private
- FAstaClientSocket: TAstaClientSocket;
- procedure SetFAstaClientSocket(const Value: TAstaClientSocket);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation);override;
- public
- function GetDBObjectName : String; override;
- function GetTransObjectName : String; override;
- function UCFindDataConnection : Boolean; override;
- function UCFindTable(const Tablename : String) : Boolean; override;
- function UCGetSQLDataset(FSQL : String) : TDataset;override;
- procedure UCExecSQL(FSQL: String);override;
- published
- property AstaClientSocket : TAstaClientSocket read FAstaClientSocket write SetFAstaClientSocket;
- end;
-
-implementation
-
-{ TUCAstaConn }
-
-procedure TUCAstaConn.SetFAstaClientSocket(
- const Value: TAstaClientSocket);
-begin
- FAstaClientSocket := Value;
- if Value <> nil then Value.FreeNotification(Self);
-end;
-
-procedure TUCAstaConn.Notification(AComponent: TComponent;
- Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FAstaClientSocket) then
- begin
- FAstaClientSocket := nil;
- end;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCAstaConn.UCFindTable(const TableName: String): Boolean;
-var
- TempQuery : TAstaClientDataSet;
-begin
- TempQuery := TAstaClientDataset.Create(nil);
- TempQuery.AstaClientSocket := FAstaClientSocket;
- TempQuery.MetaDataRequest := mdTables;
- TempQuery.Open;
- Result := TempQuery.Locate('TableName',UpperCase(TableName),[]);
- TempQuery.Close;
- FreeAndNil(TempQuery);
-end;
-
-
-function TUCAstaConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FAstaClientSocket) and (FAstaClientSocket.Active);
-end;
-
-function TUCAstaConn.GetDBObjectName: String;
-begin
- if Assigned(FAstaClientSocket) then
- begin
- if Owner = FAstaClientSocket.Owner then Result := FAstaClientSocket.Name
- else begin
- Result := FAstaClientSocket.Owner.Name+'.'+FAstaClientSocket.Name;
- end;
- end else Result := '';
-end;
-
-function TUCAstaConn.GetTransObjectName: String;
-begin
- Result := '';
-end;
-
-procedure TUCAstaConn.UCExecSQL(FSQL: String);
-begin
- with TAstaClientDataset.Create(nil) do
- begin
- AstaClientSocket := FAstaClientSocket;
- SQL.text := FSQL;
- ExecSQL;
- Free;
- end;
-end;
-
-function TUCAstaConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TAstaClientDataset.Create(nil);
- with Result as TAstaClientDataset do
- begin
- AstaClientSocket := FAstaClientSocket;
- SQL.text := FSQL;
- Open;
- end;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCAstaConn/UCAstaConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCAstaConn/UCAstaConnReg.pas
deleted file mode 100644
index 225400c..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCAstaConn/UCAstaConnReg.pas
+++ /dev/null
@@ -1,17 +0,0 @@
-unit UCAstaReg;
-
-interface
-
-uses Classes;
-
-procedure Register;
-
-implementation
-
-uses UCAstaConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCAstaConn]);
-end;
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/UCBDEConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/UCBDEConn.pas
deleted file mode 100644
index dd1bb92..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/UCBDEConn.pas
+++ /dev/null
@@ -1,127 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCBDEConn
- Author: QmD
- Date: 10-nov-2004
- Purpose: BDE Support
-
- registered in UCReg.pas
------------------------------------------------------------------------------}
-
-unit UCBDEConn;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- Classes,
- DB,
- DBTables,
- SysUtils,
- UCDataConnector;
-
-type
- TUCBDEConn = class(TUCDataConnector)
- private
- FConnection: TDatabase;
- procedure SetFDatabase(Value: TDatabase);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation); override;
- public
- function GetDBObjectName: String; override;
- function GetTransObjectName: String; override;
- function UCFindDataConnection: Boolean; override;
- function UCFindTable(const Tablename: String): Boolean; override;
- function UCGetSQLDataset(FSQL: String): TDataset; override;
- procedure UCExecSQL(FSQL: String); override;
- published
- property Connection: TDatabase read FConnection write SetFDatabase;
- end;
-
-implementation
-
-{ TUCBDEConn }
-
-procedure TUCBDEConn.SetFDatabase(Value: TDatabase);
-begin
- if FConnection <> Value then
- FConnection := Value;
- if FConnection <> nil then
- FConnection.FreeNotification(Self);
-end;
-
-procedure TUCBDEConn.Notification(AComponent: TComponent; Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- FConnection := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCBDEConn.UCFindTable(const TableName: String): Boolean;
-var
- Lista: TStringList;
-begin
- Lista := TStringList.Create;
-{$IFDEF DELPHI5}
- FConnection.Session.GetTableNames(FDatabase.Databasename,'*.db*', False, False, Lista);
-{$ELSE}
- FConnection.GetTableNames(Lista);
-{$ENDIF}
- Result := Lista.IndexOf(TableName) > -1;
- FreeAndNil(Lista);
-end;
-
-function TUCBDEConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCBDEConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then
- Result := FConnection.Name
- else
- begin
- Result := FConnection.Owner.Name + '.' + FConnection.Name;
- end;
- end
- else
- Result := '';
-end;
-
-function TUCBDEConn.GetTransObjectName: String;
-begin
- Result := '';
-end;
-
-procedure TUCBDEConn.UCExecSQL(FSQL: String);
-begin
- with TQuery.Create(nil) do
- begin
- DatabaseName := FConnection.DatabaseName;
- SQL.Text := FSQL;
- ExecSQL;
- Free;
- end;
-
-end;
-
-function TUCBDEConn.UCGetSQLDataset(FSQL: String): TDataset;
-var
- TempQuery: TQuery;
-begin
- TempQuery := TQuery.Create(nil);
-
- with TempQuery do
- begin
- DatabaseName := FConnection.DatabaseName;
- SQL.Text := FSQL;
- Open;
- end;
- Result := TempQuery;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/UCBDEConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/UCBDEConnReg.pas
deleted file mode 100644
index 943d623..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/UCBDEConnReg.pas
+++ /dev/null
@@ -1,20 +0,0 @@
-unit UCBDEConnReg;
-
-interface
-
-uses
- Classes;
-
-procedure Register;
-
-implementation
-
-uses
- UCBDEConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCBDEConn]);
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/pckUCBDEConn.bdsproj b/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/pckUCBDEConn.bdsproj
deleted file mode 100644
index 017237f..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/pckUCBDEConn.bdsproj
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUCBDEConn.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control BDE Connector
-
-
-
- C:\WINDOWS\Temp
-
-
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
- C:\Arquivos de programas\Borland\Delphi7\Bin\
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/pckUCBDEConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/pckUCBDEConn.dpk
deleted file mode 100644
index 4c1dd8d..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/pckUCBDEConn.dpk
+++ /dev/null
@@ -1,36 +0,0 @@
-package pckUCBDEConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control BDE Connector'}
-{$IMPLICITBUILD ON}
-
-requires
- pckUCDataConnector,
- bdertl;
-
-contains
- UCBDEConn in 'UCBDEConn.pas',
- UCBDEConnReg in 'UCBDEConnReg.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/pckUCBDEConn.res b/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/pckUCBDEConn.res
deleted file mode 100644
index a3a102a..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCBDEConn/pckUCBDEConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCDBISAMConn/UCDBISAMConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCDBISAMConn/UCDBISAMConn.pas
deleted file mode 100644
index 35e4049..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCDBISAMConn/UCDBISAMConn.pas
+++ /dev/null
@@ -1,128 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCDBISAMConn
- Changed: Carlos Guerra
- Date: 01-dez-2004
- Author: QmD
- Purpose: DBISAM Support
-
- registered in UCDBISAMReg.pas
------------------------------------------------------------------------------}
-
-unit UCDBISAMConn;
-
-interface
-
-uses
- SysUtils, Classes, UCBase, DB, dbisamtb;
-
-type
- TUCDBISAMConn = class(TUCDataConn)
- private
- FConnection : TDBISAMDatabase;
- FSessionName: TDBISAMSession; //Carlos Guerra 12/01/2004
- procedure SetFDatabase(Value : TDBISAMDatabase);
- procedure SetFSessionName(const Value: TDBISAMSession); //Carlos Guerra 12/01/2004
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation);override;
- public
- function GetDBObjectName : String; override;
-// function GetTransObjectName : String; override;
- function UCFindDataConnection : Boolean; override;
- function UCFindTable(const Tablename : String) : Boolean; override;
- function UCGetSQLDataset(FSQL : String) : TDataset;override;
- procedure UCExecSQL(FSQL: String);override;
- published
- property Connection : TDBISAMDatabase read FConnection write SetFDatabase;
- property SessionName : TDBISAMSession read FSessionName write SetFSessionName; //Carlos Guerra 12/01/2004
- end;
-
-implementation
-
-{ TUCDBISAMConn }
-
-procedure TUCDBISAMConn.SetFDatabase(Value: TDBISAMDatabase);
-begin
- if FConnection <> Value then FConnection := Value;
- if FConnection <> nil then FConnection.FreeNotification(Self);
-end;
-
-procedure TUCDBISAMConn.SetFSessionName(const Value: TDBISAMSession);
-begin
- FSessionName := Value;
- if Value <> nil then Value.FreeNotification(Self);
-end;
-
-
-procedure TUCDBISAMConn.Notification(AComponent: TComponent;
- Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- begin
- FConnection := nil;
- end;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCDBISAMConn.UCFindTable(const TableName: String): Boolean;
-var
- Lista : TStringList;
-begin
- Lista := TStringList.Create;
-
- FConnection.Session.GetTableNames(FConnection.RemoteDatabase,Lista);
- Result := Lista.IndexOf(TableName) > -1;
- FreeAndNil(Lista);
-end;
-
-function TUCDBISAMConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCDBISAMConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then Result := FConnection.Name
- else begin
- Result := FConnection.Owner.Name+'.'+FConnection.Name;
- end;
- end else Result := '';
-end;
-
-{function TUCDBISAMConn.GetTransObjectName: String;
-begin
- Result := '';
-end;}
-
-procedure TUCDBISAMConn.UCExecSQL(FSQL: String);
-begin
- with TDBISAMQuery.Create(nil) do
- begin
- //DatabaseName := FConnection.DatabaseName; //Cancel by Carlos Guerra 12/01/2004
- DatabaseName := FConnection.RemoteDatabase; //Carlos Guerra 12/01/2004
- SessionName := FConnection.SessionName; //Carlos Guerra 12/01/2004
- SQL.text := FSQL;
- ExecSQL;
- Free;
- end;
-
-end;
-
-function TUCDBISAMConn.UCGetSQLDataset(FSQL: String): TDataset;
-var
- TempQuery : TDBISAMQuery;
-begin
- TempQuery := TDBISAMQuery.Create(nil);
- TempQuery.SessionName := FConnection.SessionName; //Carlos Guerra 12/01/2004
- TempQuery.DatabaseName := FConnection.RemoteDatabase; //Carlos Guerra 12/01/2004
- with TempQuery do
- begin
- //DatabaseName := FConnection.DatabaseName; //Cancel by Carlos Guerra 12/01/2004
- SQL.text := FSQL;
- Open;
- end;
- Result := TempQuery;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCDBISAMConn/UCDBISAMConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCDBISAMConn/UCDBISAMConnReg.pas
deleted file mode 100644
index cd9fe75..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCDBISAMConn/UCDBISAMConnReg.pas
+++ /dev/null
@@ -1,17 +0,0 @@
-unit UCDBISAMReg;
-
-interface
-
-uses Classes;
-
-procedure Register;
-
-implementation
-
-uses UCDBISAMConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCDBISAMConn]);
-end;
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/UCDBXConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/UCDBXConn.pas
deleted file mode 100644
index 50e5dc3..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/UCDBXConn.pas
+++ /dev/null
@@ -1,122 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCDBXConn
- Author: QmD
- Date: 08-nov-2004
- Purpose: ADO Support
-
- registered in UCDBXReg.pas
------------------------------------------------------------------------------}
-
-unit UCDBXConn;
-
-interface
-
-uses
- Classes,
- DB,
- SimpleDS,
- SqlExpr,
- SysUtils,
- UCDataConnector;
-
-type
- TUCDBXConn = class(TUCDataConnector)
- private
- FConnection: TSQLConnection;
- FSchema: String;
- procedure SetSQLConnection(Value: TSQLConnection);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation); override;
- public
- function GetDBObjectName: String; override;
- function GetTransObjectName: String; override;
- function UCFindDataConnection: Boolean; override;
- function UCFindTable(const Tablename: String): Boolean; override;
- function UCGetSQLDataset(FSQL: String): TDataset; override;
- procedure UCExecSQL(FSQL: String); override;
- published
- property Connection: TSQLConnection read FConnection write SetSQLConnection;
- property SchemaName: String read FSchema write FSchema;
- end;
-
-implementation
-
-{ TUCDBXConn }
-
-procedure TUCDBXConn.SetSQLConnection(Value: TSQLConnection);
-begin
- if FConnection <> Value then
- FConnection := Value;
- if FConnection <> nil then
- FConnection.FreeNotification(Self);
-end;
-
-procedure TUCDBXConn.Notification(AComponent: TComponent; Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- FConnection := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCDBXConn.UCFindTable(const TableName: String): Boolean;
-var
- TempList: TStringList;
-begin
- try
- TempList := TStringList.Create;
- if SchemaName <> '' then
- FConnection.GetTableNames(TempList, SchemaName)
- else
- FConnection.GetTableNames(TempList);
- TempList.Text := UpperCase(TempList.Text);
- Result := TempList.IndexOf(UpperCase(TableName)) > -1;
- finally
- FreeAndNil(TempList);
- end;
-end;
-
-function TUCDBXConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCDBXConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then
- Result := FConnection.Name
- else
- begin
- Result := FConnection.Owner.Name + '.' + FConnection.Name;
- end;
- end
- else
- Result := '';
-end;
-
-function TUCDBXConn.GetTransObjectName: String;
-begin
- Result := '';
-end;
-
-procedure TUCDBXConn.UCExecSQL(FSQL: String);
-begin
-// FConnection.Execute(FSQL, nil); // by vicente barros leonel
- FConnection.ExecuteDirect(FSQL);
-end;
-
-function TUCDBXConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TSimpleDataSet.Create(nil);
- with Result as TSimpleDataSet do
- begin
- Connection := FConnection;
- DataSet.CommandText := FSQL;
- SchemaName := FSchema;
- Open;
- end;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/UCDBXConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/UCDBXConnReg.pas
deleted file mode 100644
index 7aebf23..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/UCDBXConnReg.pas
+++ /dev/null
@@ -1,21 +0,0 @@
-unit UCDBXConnReg;
-
-interface
-
-uses
- Classes;
-
-procedure Register;
-
-implementation
-
-uses
- UCDBXConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCDBXConn]);
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.bdsproj b/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.bdsproj
deleted file mode 100644
index 2d66f05..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.bdsproj
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUCDBXConn.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control DBX Connectors
-
-
-
- C:\WINDOWS\Temp
-
-
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
- C:\Arquivos de programas\Borland\Delphi7\Bin\
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.dpk
deleted file mode 100644
index 05fa12c..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.dpk
+++ /dev/null
@@ -1,38 +0,0 @@
-package pckUCDBXConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control DBX Connectors'}
-{$IMPLICITBUILD OFF}
-
-requires
- pckUCDataConnector,
- dsnap,
- dbxcds,
- dbexpress;
-
-contains
- UCDBXConn in 'UCDBXConn.pas',
- UCDBXConnReg in 'UCDBXConnReg.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.dproj b/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.dproj
deleted file mode 100644
index 7f4966a..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.dproj
+++ /dev/null
@@ -1,98 +0,0 @@
-
-
- {2e1b5318-7a28-4093-9bbb-c66237b9a704}
- pckUCDBXConn.dpk
- Debug
- AnyCPU
- DCC32
- C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\pckUCDBXConn.bpl
-
-
- 7.0
- False
- False
- 0
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- RELEASE
-
-
- 7.0
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- DEBUG
-
-
- Delphi.Personality
- Package
-
-
- False
- True
- False
-
-
- User Control DBX Connectors
- False
- False
- False
-
-
- C:\Arquivos de programas\Borland\Delphi7\Bin\
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
- pckUCDBXConn.dpk
-
-
-
-
-
-
- MainSource
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.res b/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.res
deleted file mode 100644
index a3a102a..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCDBXConn/pckUCDBXConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCFIBConn/UCFIBConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCFIBConn/UCFIBConn.pas
deleted file mode 100644
index 557326e..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCFIBConn/UCFIBConn.pas
+++ /dev/null
@@ -1,120 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCFIBConn
- Author: QmD
- Date: 08-nov-2004
- Purpose: FIB Support
-
- registered in UCReg.pas
------------------------------------------------------------------------------}
-
-unit UCFIBConn;
-
-interface
-
-uses
- SysUtils, Classes, UCBase, DB, pFIBDatabase, pFIBDataset;
-
-type
- TUCFIBConn = class(TUCDataConn)
- private
- FConnection : TpFIBDatabase;
- FTransaction: TpFIBTransaction;
- procedure SetFTransaction(const Value: TpFIBTransaction);
- procedure SetFConnection(const Value: TpFIBDatabase);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation);override;
- public
- function GetDBObjectName : String; override;
- function GetTransObjectName : String; override;
- function UCFindDataConnection : Boolean; override;
- function UCFindTable(const Tablename : String) : Boolean; override;
- function UCGetSQLDataset(FSQL : String) : TDataset; override;
- procedure UCExecSQL(FSQL: String);override;
- published
- property Connection : TpFIBDatabase read FConnection write SetFConnection;
- property Transaction : TpFIBTransaction read FTransaction write SetFTransaction;
- end;
-
-implementation
-
-{ TUCFIBConn }
-
-procedure TUCFIBConn.SetFTransaction(const Value: TpFIBTransaction);
-begin
- FTransaction := Value;
- if Value <> nil then Value.FreeNotification(Self);
-end;
-
-procedure TUCFIBConn.SetFConnection(const Value: TpFIBDatabase);
-begin
- if FConnection <> Value then FConnection := Value;
- if FConnection <> nil then FConnection.FreeNotification(Self);
-end;
-
-procedure TUCFIBConn.Notification(AComponent: TComponent;
- Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then FConnection := nil;
- if (Operation = opRemove) and (AComponent = FTransaction) then FTransaction := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCFIBConn.UCFindTable(const TableName: String): Boolean;
-var
- TempList : TStringList;
-begin
- try
- TempList := TStringList.Create;
- FConnection.GetTableNames(TempList,False);
- TempList.Text := UpperCase(TempList.Text);
- Result := TempList.IndexOf(UpperCase(TableName)) > -1;
- finally
- FreeAndNil(TempList);
- end;
-end;
-
-function TUCFIBConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCFIBConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then Result := FConnection.Name
- else begin
- Result := FConnection.Owner.Name+'.'+FConnection.Name;
- end;
- end else Result := '';
-end;
-
-function TUCFIBConn.GetTransObjectName: String;
-begin
- if Assigned(FTransaction) then
- begin
- if Owner = FTransaction.Owner then Result := FTransaction.Name
- else begin
- Result := FTransaction.Owner.Name+'.'+FTransaction.Name;
- end;
- end else Result := '';
-end;
-
-procedure TUCFIBConn.UCExecSQL(FSQL: String);
-begin
- FConnection.Execute(FSQL);
-end;
-
-function TUCFIBConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TpFIBDataset.Create(nil);
- with Result as TpFIBDataset do
- begin
- Database := FConnection;
- Transaction := FTransaction;
- SelectSQL.text := FSQL;
- Open;
- end;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCFIBConn/UCFIBConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCFIBConn/UCFIBConnReg.pas
deleted file mode 100644
index f7387bb..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCFIBConn/UCFIBConnReg.pas
+++ /dev/null
@@ -1,17 +0,0 @@
-unit UCFIBReg;
-
-interface
-
-uses Classes;
-
-procedure Register;
-
-implementation
-
-uses UCFIBConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCFIBConn]);
-end;
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/UCIBOConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/UCIBOConn.pas
deleted file mode 100644
index 42a11f8..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/UCIBOConn.pas
+++ /dev/null
@@ -1,111 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCIBOConn
- Author: QmD
- Date: 22-nov-2004
- Purpose: IBO Dataset Support
-
- registered in UCIBOReg.pas
------------------------------------------------------------------------------}
-
-unit UCIBOConn;
-
-interface
-
-uses
- Classes,
- DB,
- IB_Components,
- IBODataset,
- SysUtils,
- UCDataConnector;
-
-type
- TUCIBOConn = class(TUCDataConnector)
- private
- FConnection: TIBODatabase;
- procedure SetIBOConnection(const Value: TIBODatabase);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation); override;
- public
- function GetDBObjectName: String; override;
- function UCFindDataConnection: Boolean; override;
- function UCFindTable(const Tablename: String): Boolean; override;
- function UCGetSQLDataset(FSQL: String): TDataset; override;
- procedure UCExecSQL(FSQL: String); override;
- published
- property Connection: TIBODatabase read FConnection write SetIBOConnection;
- end;
-
-implementation
-
-{ TUCIBOConn }
-
-
-procedure TUCIBOConn.SetIBOConnection(const Value: TIBODatabase);
-begin
- if FConnection <> Value then
- FConnection := Value;
- if FConnection <> nil then
- FConnection.FreeNotification(Self);
-end;
-
-procedure TUCIBOConn.Notification(AComponent: TComponent; Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- FConnection := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCIBOConn.UCFindTable(const TableName: String): Boolean;
-begin
- with TIBOQuery.Create(nil) do
- begin
- IB_Connection := FConnection;
- SQL.Text := 'SELECT RDB$RELATION_NAME FROM RDB$RELATIONS WHERE RDB$SYSTEM_FLAG = 0 and RDB$RELATION_NAME = ' + QuotedStr(Uppercase(TableName));
- Open;
- Result := FieldByName('RDB$RELATION_NAME').AsString = Uppercase(TableName);
- Close;
- Free;
- end;
-end;
-
-function TUCIBOConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCIBOConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then
- Result := FConnection.Name
- else
- begin
- Result := FConnection.Owner.Name + '.' + FConnection.Name;
- end;
- end
- else
- Result := '';
-end;
-
-
-procedure TUCIBOConn.UCExecSQL(FSQL: String);
-begin
- FConnection.DefaultTransaction.ExecuteImmediate(FSQL);
- FConnection.DefaultTransaction.Commit;
-end;
-
-function TUCIBOConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TIBOQuery.Create(nil);
- with Result as TIBOQuery do
- begin
- IB_Connection := FConnection;
- SQL.Text := FSQL;
- Open;
- end;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/UCIBOConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/UCIBOConnReg.pas
deleted file mode 100644
index f8c4eb9..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/UCIBOConnReg.pas
+++ /dev/null
@@ -1,18 +0,0 @@
-unit UCIBOConnReg;
-
-interface
-
-uses Classes;
-
-procedure Register;
-
-implementation
-
-uses UCIBOConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCIBOConn]);
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/pckIBOConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/pckIBOConn.dpk
deleted file mode 100644
index 6671069..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/pckIBOConn.dpk
+++ /dev/null
@@ -1,32 +0,0 @@
-package pckIBOConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control IBO Connector'}
-{$IMPLICITBUILD ON}
-
-contains
- UCIBOConn in 'UCIBOConn.pas',
- UCIBOConnReg in 'UCIBOConnReg.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/pckIBOConn.res b/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/pckIBOConn.res
deleted file mode 100644
index a3a102a..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCIBOConn/pckIBOConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/UCIBXConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/UCIBXConn.pas
deleted file mode 100644
index 642fa7e..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/UCIBXConn.pas
+++ /dev/null
@@ -1,152 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCIBXConn
- Author: QmD
- Date: 08-nov-2004
- Purpose: IBX Support
-
- registered in UCReg.pas
------------------------------------------------------------------------------}
-
-unit UCIBXConn;
-
-interface
-
-uses
- Classes,
- DB,
- IBDataBase,
- IBQuery,
- SysUtils,
- UCDataConnector;
-
-type
- TUCIBXConn = class(TUCDataConnector)
- private
- FConnection: TIBDatabase;
- FTransaction: TIBTransaction;
- procedure SetTransaction(const Value: TIBTransaction);
- procedure SetConnection(const Value: TIBDatabase);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation); override;
- public
- function GetDBObjectName: String; override;
- function GetTransObjectName: String; override;
- function UCFindDataConnection: Boolean; override;
- function UCFindTable(const Tablename: String): Boolean; override;
- function UCGetSQLDataset(FSQL: String): TDataset; override;
- procedure UCExecSQL(FSQL: String); override;
- published
- property Connection: TIBDatabase read FConnection write SetConnection;
- property Transaction: TIBTransaction read FTransaction write SetTransaction;
- end;
-
-implementation
-
-{ TUCIBXConn }
-
-procedure TUCIBXConn.Notification(AComponent: TComponent; Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- FConnection := nil;
- if (Operation = opRemove) and (AComponent = FTransaction) then
- FTransaction := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCIBXConn.UCFindTable(const TableName: String): Boolean;
-var
- TempList: TStringList;
-begin
- TempList := TStringList.Create;
- try
- FConnection.GetTableNames(TempList, False);
- TempList.Text := UpperCase(TempList.Text);
- Result := TempList.IndexOf(UpperCase(TableName)) > -1;
- finally
- SysUtils.FreeAndNil(TempList);
- end;
-end;
-
-function TUCIBXConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCIBXConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then
- Result := FConnection.Name
- else
- begin
- Result := FConnection.Owner.Name + '.' + FConnection.Name;
- end;
- end
- else
- Result := '';
-end;
-
-function TUCIBXConn.GetTransObjectName: String;
-begin
- if Assigned(FTransaction) then
- begin
- if Owner = FTransaction.Owner then
- Result := FTransaction.Name
- else
- begin
- Result := FTransaction.Owner.Name + '.' + FTransaction.Name;
- end;
- end
- else
- Result := '';
-end;
-
-procedure TUCIBXConn.UCExecSQL(FSQL: String);
-var
- Qry: TIBQuery;
-begin
- Qry := TIBQuery.Create(nil);
- try
- Qry.Database := FConnection;
- Qry.Transaction := FTransaction;
- if not Qry.Transaction.Active then
- Qry.Transaction.Active := True;
- Qry.SQL.Text := FSQL;
- Qry.ExecSQL;
- Qry.Transaction.Commit;
- finally
- Qry.Free;
- end;
-end;
-
-function TUCIBXConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TIBQuery.Create(nil);
- with Result as TIBQuery do
- begin
- Database := FConnection;
- Transaction := FTransaction;
- SQL.Text := FSQL;
- Open;
- end;
-end;
-
-
-procedure TUCIBXConn.SetTransaction(const Value: TIBTransaction);
-begin
- FTransaction := Value;
- if Value <> nil then
- Value.FreeNotification(Self);
-end;
-
-procedure TUCIBXConn.SetConnection(const Value: TIBDatabase);
-begin
- if FConnection <> Value then
- FConnection := Value;
- if FConnection <> nil then
- FConnection.FreeNotification(Self);
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/UCIBXConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/UCIBXConnReg.pas
deleted file mode 100644
index 7eb0997..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/UCIBXConnReg.pas
+++ /dev/null
@@ -1,20 +0,0 @@
-unit UCIBXConnReg;
-
-interface
-
-uses
- Classes;
-
-procedure Register;
-
-implementation
-
-uses
- UCIBXConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCIBXConn]);
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/pckUCIBXConn.bdsproj b/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/pckUCIBXConn.bdsproj
deleted file mode 100644
index c59c976..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/pckUCIBXConn.bdsproj
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUCIBXConn.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control IBX Connector
-
-
-
- C:\WINDOWS\Temp
-
-
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
- C:\Arquivos de programas\Borland\Delphi7\Bin\
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/pckUCIBXConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/pckUCIBXConn.dpk
deleted file mode 100644
index 4511021..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/pckUCIBXConn.dpk
+++ /dev/null
@@ -1,36 +0,0 @@
-package pckUCIBXConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control IBX Connector'}
-{$IMPLICITBUILD ON}
-
-requires
- pckUCDataConnector,
- ibxpress;
-
-contains
- UCIBXConn in 'UCIBXConn.pas',
- UCIBXConnReg in 'UCIBXConnReg.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/pckUCIBXConn.res b/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/pckUCIBXConn.res
deleted file mode 100644
index a3a102a..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCIBXConn/pckUCIBXConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/UCMDOConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/UCMDOConn.pas
deleted file mode 100644
index 0f07703..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/UCMDOConn.pas
+++ /dev/null
@@ -1,149 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCMDOConn
- Author: Alexandre Oliveira - 05/11/2004
- Change: QmD
- Date: 10-nov-2004
- Purpose: MDO Support
-
- registered in UCMDOReg.pas
------------------------------------------------------------------------------}
-
-unit UCMDOConn;
-
-interface
-
-uses
- Classes,
- DB,
- MDODatabase,
- MDOQuery,
- SysUtils,
- UCDataConnector;
-
-type
- TUCMDOConn = class(TUCDataConnector)
- private
- FConnection: TMDODatabase;
- FTransaction: TMDOTransaction;
- procedure SetFTransaction(const Value: TMDOTransaction);
- procedure SetMDOConnection(const Value: TMDODatabase);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation); override;
- public
- function GetDBObjectName: String; override;
- function GetTransObjectName: String; override;
- function UCFindDataConnection: Boolean; override;
- function UCFindTable(const Tablename: String): Boolean; override;
- function UCGetSQLDataset(FSQL: String): TDataset; override;
- procedure UCExecSQL(FSQL: String); override;
- published
- property Connection: TMDODatabase read FConnection write SetMDOConnection;
- property Transaction: TMDOTransaction read FTransaction write SetFTransaction;
- end;
-
-implementation
-
-{ TUCMDOConn }
-
-procedure TUCMDOConn.SetFTransaction(const Value: TMDOTransaction);
-begin
- FTransaction := Value;
- if Value <> nil then
- Value.FreeNotification(Self);
-end;
-
-procedure TUCMDOConn.SetMDOConnection(const Value: TMDODatabase);
-begin
- if FConnection <> Value then
- FConnection := Value;
- if FConnection <> nil then
- FConnection.FreeNotification(Self);
-end;
-
-procedure TUCMDOConn.Notification(AComponent: TComponent; Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- FConnection := nil;
- if (Operation = opRemove) and (AComponent = FTransaction) then
- FTransaction := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCMDOConn.UCFindTable(const TableName: String): Boolean;
-var
- TempList: TStringList;
-begin
- try
- TempList := TStringList.Create;
- FConnection.GetTableNames(TempList, False);
- TempList.Text := UpperCase(TempList.Text);
- Result := TempList.IndexOf(UpperCase(TableName)) > -1;
- finally
- FreeAndNil(TempList);
- end;
-end;
-
-function TUCMDOConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCMDOConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then
- Result := FConnection.Name
- else
- begin
- Result := FConnection.Owner.Name + '.' + FConnection.Name;
- end;
- end
- else
- Result := '';
-end;
-
-function TUCMDOConn.GetTransObjectName: String;
-begin
- if Assigned(FTransaction) then
- begin
- if Owner = FTransaction.Owner then
- Result := FTransaction.Name
- else
- begin
- Result := FTransaction.Owner.Name + '.' + FTransaction.Name;
- end;
- end
- else
- Result := '';
-end;
-
-procedure TUCMDOConn.UCExecSQL(FSQL: String);
-begin
- with TMDOQuery.Create(nil) do
- begin
- Database := FConnection;
- Transaction := FTransaction;
- if not Transaction.Active then
- Transaction.Active := True;
- SQL.Text := FSQL;
- ExecSQL;
- FTransaction.Commit;
- Free;
- end;
-end;
-
-function TUCMDOConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TMDOQuery.Create(nil);
- with Result as TMDOQuery do
- begin
- Database := FConnection;
- Transaction := FTransaction;
- SQL.Text := FSQL;
- Open;
- end;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/UCMDOConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/UCMDOConnReg.pas
deleted file mode 100644
index 7b41340..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/UCMDOConnReg.pas
+++ /dev/null
@@ -1,17 +0,0 @@
-unit UCMDOConnReg;
-
-interface
-
-uses Classes;
-
-procedure Register;
-
-implementation
-
-uses UCMDOConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCMDOConn]);
-end;
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/pckUCMDOConn.bdsproj b/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/pckUCMDOConn.bdsproj
deleted file mode 100644
index d712089..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/pckUCMDOConn.bdsproj
+++ /dev/null
@@ -1,177 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUCMDOConn.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control MDO Connector
-
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
-
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/pckUCMDOConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/pckUCMDOConn.dpk
deleted file mode 100644
index 6e8946f..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/pckUCMDOConn.dpk
+++ /dev/null
@@ -1,40 +0,0 @@
-package pckUCMDOConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control MDO Connector'}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- pckUCDataConnector,
- vcl,
- vclactnband,
- vcldb,
- RCLMDO2005;
-
-contains
- UCMDOConnReg in 'UCMDOConnReg.pas',
- UCMDOConn in 'UCMDOConn.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/pckUCMDOConn.res b/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/pckUCMDOConn.res
deleted file mode 100644
index fd84fb8..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCMDOConn/pckUCMDOConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/UCMidasConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/UCMidasConn.pas
deleted file mode 100644
index 494ac1f..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/UCMidasConn.pas
+++ /dev/null
@@ -1,181 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCMidasConn
- Author : Luiz Benevenuto
- Date : 31/07/2005
- Purpose : Midas Suporte ( DataSnap )
- E-mail : luiz@siffra.com
- URL : www.siffra.com
- UC : www.usercontrol.net
-
- registered in UCMidasConnReg.pas
------------------------------------------------------------------------------}
-
-unit UCMidasConn;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- Classes,
- DB,
- DBClient,
- SysUtils,
- UCDataConnector;
-
-type
- TBancoDados = (bdFirebird, bdMSSQL, bdOracle, bdPostgreSQL, bdMySQL, bdParadox);
-
- TUCMidasConn = class(TUCDataConnector)
- private
- FResultado: OleVariant;
- FSQLStmt: String;
- FParams: OleVariant;
- FOwnerData: OleVariant;
- FRecsOut: Integer;
- FConnection: TCustomRemoteServer;
- FProviderName: String;
- FBancoDados: TBancoDados;
- procedure SetConnection(const Value: TCustomRemoteServer);
- procedure SetProviderName(const Value: String);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation); override;
- public
- function GetDBObjectName: String; override;
- function GetTransObjectName: String; override;
- function UCFindDataConnection: Boolean; override;
- function UCFindTable(const Tablename: String): Boolean; override;
- function UCGetSQLDataset(FSQL: String): TDataset; override;
- procedure UCExecSQL(FSQL: String); override;
- published
- property Connection: TCustomRemoteServer Read FConnection Write SetConnection;
- property ProviderName: String Read FProviderName Write SetProviderName;
- property BancoDados: TBancoDados Read FBancoDados Write FBancoDados;
- end;
-
-const
- // Select para as tabelas de sistema !!! Para outro tipo de banco implemente aqui !!!!!
-
- // Para banco novo !!!
- // Não esquecer de colocar em TBancoDados, o tipo de banco !!!!!!
- // Não esquecer de colocar no 'case' de UCFindTable
-
- SQL_Firebird =
- 'SELECT ' +
- ' UPPER(RDB$RELATIONS.RDB$RELATION_NAME) RDB$RELATION_NAME ' +
- 'FROM ' +
- ' RDB$RELATIONS ' +
- 'WHERE ' +
- ' RDB$RELATIONS.RDB$FLAGS = 1 AND UPPER(RDB$RELATIONS.RDB$RELATION_NAME) = ' +
- ' UPPER(''%s'')';
-
- SQL_MSSQL = '';
-
- SQL_Oracle = '';
-
- SQL_PostgreSQL =
- 'SELECT ' +
- ' UPPER(PG_CLASS.RELNAME) ' +
- 'FROM ' +
- ' PG_CLASS ' +
- 'WHERE ' +
- ' PG_CLASS.RELKIND = ''r'' AND ' +
- ' UPPER(PG_CLASS.RELNAME) LIKE UPPER(''%s'')';
-
- SQL_MySQL = '';
-
- SQL_Paradox = '';
-
-implementation
-
-uses
- Midas,
- Provider;
-
-{ TUCMidasConn }
-
-function TUCMidasConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then
- Result := FConnection.Name
- else
- Result := FConnection.Owner.Name + '.' + FConnection.Name;
- end
- else
- Result := '';
-end;
-
-function TUCMidasConn.GetTransObjectName: String;
-begin
- Result := '';
-end;
-
-procedure TUCMidasConn.Notification(AComponent: TComponent; Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- FConnection := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-procedure TUCMidasConn.SetConnection(const Value: TCustomRemoteServer);
-begin
- if FConnection <> Value then
- FConnection := Value;
- if FConnection <> nil then
- FConnection.FreeNotification(Self);
-end;
-
-procedure TUCMidasConn.SetProviderName(const Value: String);
-begin
- FProviderName := Value;
-end;
-
-procedure TUCMidasConn.UCExecSQL(FSQL: String);
-begin
- IAppServer(FConnection.GetServer).AS_Execute(FProviderName, FSQL, FParams, FOwnerData);
-end;
-
-function TUCMidasConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCMidasConn.UCFindTable(const Tablename: String): Boolean;
-begin
- case FBancoDados of
- bdFirebird: FSQLStmt := SQL_Firebird;
- bdMSSQL: FSQLStmt := SQL_MSSQL;
- bdOracle: FSQLStmt := SQL_Oracle;
- bdPostgreSQL: FSQLStmt := SQL_PostgreSQL;
- bdMySQL: FSQLStmt := SQL_MySQL;
- bdParadox: FSQLStmt := SQL_Paradox;
- end;
-
- FSQLStmt := Format(FSQLStmt, [Tablename]);
-
- FResultado := IAppServer(FConnection.GetServer).AS_GetRecords(FProviderName, -1, FRecsOut, 0, FSQLStmt, FParams, FOwnerData);
-
- Result := FRecsOut > 0;
-end;
-
-function TUCMidasConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TClientDataSet.Create(Self);
-
- with TClientDataSet(Result) do
- begin
- if FConnection is TConnectionBroker then
- ConnectionBroker := TConnectionBroker(FConnection)
- else
- RemoteServer := FConnection;
-
- ProviderName := FProviderName;
- CommandText := FSQL;
- Open;
- end;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/UCMidasConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/UCMidasConnReg.pas
deleted file mode 100644
index 9bbf9b1..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/UCMidasConnReg.pas
+++ /dev/null
@@ -1,74 +0,0 @@
-unit UCMidasConnReg;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- Classes,
- DesignEditors,
- DesignIntf,
- TypInfo;
-
-type
- TUCProviderNameProperty = class(TStringProperty)
- function GetAttributes: TPropertyAttributes; override;
- procedure GetValues(Proc: TGetStrProc); override;
- end;
-
-procedure Register;
-
-implementation
-
-uses
- Midas,
- UCMidasConn,
- Variants;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCMidasConn]);
- RegisterPropertyEditor(TypeInfo(String), TUCMidasConn, 'ProviderName', TUCProviderNameProperty);
-end;
-
-{ TUCProviderNameProperty }
-
-function TUCProviderNameProperty.GetAttributes: TPropertyAttributes;
-begin
- Result := [paValueList];
-end;
-
-procedure TUCProviderNameProperty.GetValues(Proc: TGetStrProc);
-var
- Componente: TComponent;
- Lista: variant;
- I: Integer;
-begin
- Componente := TComponent(GetComponent(0));
-
- if not Assigned(Componente) then
- Exit;
-
- if not (Componente is TUCMidasConn) then
- Exit;
-
- if not Assigned(TUCMidasConn(Componente).Connection) then
- Exit;
-
- with TUCMidasConn(Componente) do
- begin
-
- try
- Lista := IAppServer(Connection.GetServer).AS_GetProviderNames;
- except
- end;
-
- if VarIsArray(Lista) and (VarArrayDimCount(Lista) = 1) then
- for I := VarArrayLowBound(Lista, 1) to VarArrayHighBound(Lista, 1) do
- Proc(Lista[I]);
-
- end;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.bdsproj b/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.bdsproj
deleted file mode 100644
index 1b24c02..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.bdsproj
+++ /dev/null
@@ -1,178 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUCMidasConn.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control Midas Connector
-
-
-
- C:\WINDOWS\Temp
-
-
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
- C:\Arquivos de programas\Borland\Delphi7\Bin\
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
- TeeChart Components
- JVCL BDE Components
-
-
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.dpk
deleted file mode 100644
index adaef7f..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.dpk
+++ /dev/null
@@ -1,39 +0,0 @@
-package pckUCMidasConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control Midas Connector'}
-{$IMPLICITBUILD OFF}
-
-requires
- designide,
- dbrtl,
- dsnap,
- rtl,
- pckUCDataConnector;
-
-contains
- UCMidasConn in 'UCMidasConn.pas',
- UCMidasConnReg in 'UCMidasConnReg.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.dproj b/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.dproj
deleted file mode 100644
index fac6a75..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.dproj
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
- {8fed7c75-8e0d-4aa3-a33b-65582db4fefb}
- pckUCMidasConn.dpk
- Debug
- AnyCPU
- DCC32
- C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\pckUCMidasConn.bpl
-
-
- 7.0
- False
- False
- 0
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- RELEASE
-
-
- 7.0
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
-
-
- Delphi.Personality
- Package
-
-FalseTrueFalseUser Control Midas ConnectorFalseFalseFalseC:\Arquivos de programas\Borland\Delphi7\Bin\TrueFalse1000FalseFalseFalseFalseFalse104612521.0.0.01.0.0.0
- TeeChart Components
- JVCL BDE Components
- pckUCMidasConn.dpk
-
-
-
-
- MainSource
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.res b/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.res
deleted file mode 100644
index a3a102a..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCMidasConn/pckUCMidasConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/UCMyDACConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/UCMyDACConn.pas
deleted file mode 100644
index cd66940..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/UCMyDACConn.pas
+++ /dev/null
@@ -1,106 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCMyDACConn
- Author: QmD
- Date: 22-nov-2004
- Purpose: MyDAC Support
-
- registered in UCMyDACReg.pas
------------------------------------------------------------------------------}
-
-unit UCMyDACConn;
-
-interface
-
-uses
- UCDataConnector,SysUtils, Classes, UCBase, DB, DBAccess, MyAccess, MemDS;
-
-type
- TUCMyDACConn = class(TUCDataConnector)
- private
- FConnection : TMyConnection;
- procedure SetFConnection(Value : TMyConnection);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation);override;
- public
- function GetDBObjectName : String; override;
- function GetTransObjectName : String; override;
- function UCFindDataConnection : Boolean; override;
- function UCFindTable(const Tablename : String) : Boolean; override;
- function UCGetSQLDataset(FSQL : String) : TDataset;override;
- procedure UCExecSQL(FSQL: String);override;
- published
- property Connection : TMyConnection read FConnection write SetFConnection;
- end;
-
-implementation
-
-{ TUCMyDACConn }
-
-procedure TUCMyDACConn.SetFConnection(Value: TMyConnection);
-begin
- if FConnection <> Value then FConnection := Value;
- if FConnection <> nil then FConnection.FreeNotification(Self);
-end;
-
-procedure TUCMyDACConn.Notification(AComponent: TComponent;
- Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- begin
- FConnection := nil;
- end;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCMyDACConn.UCFindTable(const TableName: String): Boolean;
-var
- TempList : TStringList;
-begin
- try
- TempList := TStringList.Create;
- FConnection.GetTableNames(TempList);
- TempList.Text := UpperCase(TempList.Text);
- Result := TempList.IndexOf(UpperCase(TableName)) > -1;
- finally
- FreeAndNil(TempList);
- end;
-end;
-
-function TUCMyDACConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCMyDACConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then Result := FConnection.Name
- else begin
- Result := FConnection.Owner.Name+'.'+FConnection.Name;
- end;
- end else Result := '';
-end;
-
-function TUCMyDACConn.GetTransObjectName: String;
-begin
- Result := '';
-end;
-
-procedure TUCMyDACConn.UCExecSQL(FSQL: String);
-begin
- FConnection.ExecSQL(FSQL,[]);
-end;
-
-function TUCMyDACConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TMyQuery.Create(nil);
- with Result as TMyQuery do
- begin
- Connection := FConnection;
- SQL.Text := FSQL;
- Open;
- end;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/UCMyDACConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/UCMyDACConnReg.pas
deleted file mode 100644
index d73c134..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/UCMyDACConnReg.pas
+++ /dev/null
@@ -1,17 +0,0 @@
-unit UCMyDACConnReg;
-
-interface
-
-uses Classes;
-
-procedure Register;
-
-implementation
-
-uses UCMyDACConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCMyDACConn]);
-end;
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.dpk
deleted file mode 100644
index 82fd28b..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.dpk
+++ /dev/null
@@ -1,48 +0,0 @@
-package pckMyDacConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$IMPLICITBUILD ON}
-
-requires
- rtl,
- dbrtl,
- dac105,
- mydac105,
- vcldb,
- vcl,
- pckUserControl_RT,
- pckUCDataConnector,
- pckMD5,
- VclSmp,
- vclx,
- inet,
- designide,
- xmlrtl,
- vclactnband;
-
-contains
- UCMyDACConnReg in 'UCMyDACConnReg.pas',
- UCMyDACConn in 'UCMyDACConn.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.dproj b/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.dproj
deleted file mode 100644
index 388d778..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.dproj
+++ /dev/null
@@ -1,90 +0,0 @@
-
-
-
- {5338e891-3591-4e66-859a-eaa77ade0066}
- pckMyDacConn.dpk
- Debug
- AnyCPU
- DCC32
- C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\pckMyDacConn.bpl
-
-
- 7.0
- False
- False
- 0
- RELEASE
-
-
- 7.0
-
-
- Delphi.Personality
- Package
-
-
- False
- True
- False
-
-
- True
- False
- False
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
- pckMyDacConn.dpk
-
-
-
-
-
-
- MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.groupproj b/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.groupproj
deleted file mode 100644
index 15dbba3..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.groupproj
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
- {9e0c44c1-7f19-426e-959f-54b897d52e85}
-
-
-
-
- Default.Personality
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.res b/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.res
deleted file mode 100644
index 1826680..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckMyDacConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckUCMYDac.bdsproj b/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckUCMYDac.bdsproj
deleted file mode 100644
index ed35f99..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckUCMYDac.bdsproj
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUCMYDac.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- UserControl MyDac Connector
-
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
-
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckUCMYDac.dpk b/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckUCMYDac.dpk
deleted file mode 100644
index fec983f..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckUCMYDac.dpk
+++ /dev/null
@@ -1,47 +0,0 @@
-package pckUCMYDac;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'UserControl MyDac Connector'}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- dbrtl,
- pckUserControl_RT,
- VclSmp,
- vclx,
- vcl,
- pckUCDataConnector,
- pckMD5,
- vcldb,
- vclactnband,
- vcljpg,
- dac100,
- mydac100;
-
-contains
- UCMyDACConnReg in 'UCMyDACConnReg.pas',
- UCMyDACConn in 'UCMyDACConn.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckUCMYDac.res b/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckUCMYDac.res
deleted file mode 100644
index fd84fb8..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCMyDACConn/pckUCMYDac.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/UCMySQLDACConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/UCMySQLDACConn.pas
deleted file mode 100644
index 02050f0..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/UCMySQLDACConn.pas
+++ /dev/null
@@ -1,106 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCMySQLDACConn
- Author: QmD
- Date: 22-nov-2004
- Purpose: MySQLDAC Support
-
- registered in UCMySQLDACReg.pas
------------------------------------------------------------------------------}
-
-unit UCMySQLDACConn;
-
-interface
-
-uses
- SysUtils, Classes, UCBase, DB, mySQLDbTables;
-
-type
- TUCMySQLDACConn = class(TUCDataConn)
- private
- FConnection : TmySQLDatabase;
- procedure SetFConnection(Value : TmySQLDatabase);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation);override;
- public
- function GetDBObjectName : String; override;
- function GetTransObjectName : String; override;
- function UCFindDataConnection : Boolean; override;
- function UCFindTable(const Tablename : String) : Boolean; override;
- function UCGetSQLDataset(FSQL : String) : TDataset;override;
- procedure UCExecSQL(FSQL: String);override;
- published
- property Connection : TmySQLDatabase read FConnection write SetFConnection;
- end;
-
-implementation
-
-{ TUCMySQLDACConn }
-
-procedure TUCMySQLDACConn.SetFConnection(Value: TmySQLDatabase);
-begin
- if FConnection <> Value then FConnection := Value;
- if FConnection <> nil then FConnection.FreeNotification(Self);
-end;
-
-procedure TUCMySQLDACConn.Notification(AComponent: TComponent;
- Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- begin
- FConnection := nil;
- end;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCMySQLDACConn.UCFindTable(const TableName: String): Boolean;
-var
- TempList : TStringList;
-begin
- try
- TempList := TStringList.Create;
- FConnection.GetTableNames(TableName, TempList);
- TempList.Text := UpperCase(TempList.Text);
- Result := TempList.IndexOf(UpperCase(TableName)) > -1;
- finally
- FreeAndNil(TempList);
- end;
-end;
-
-function TUCMySQLDACConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCMySQLDACConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then Result := FConnection.Name
- else begin
- Result := FConnection.Owner.Name+'.'+FConnection.Name;
- end;
- end else Result := '';
-end;
-
-function TUCMySQLDACConn.GetTransObjectName: String;
-begin
- Result := '';
-end;
-
-procedure TUCMySQLDACConn.UCExecSQL(FSQL: String);
-begin
- FConnection.Execute(FSQL);
-end;
-
-function TUCMySQLDACConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TmySQLQuery.Create(nil);
- with Result as TmySQLQuery do
- begin
- Database := FConnection;
- SQL.Text := FSQL;
- Open;
- end;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/UCMySQLDACConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/UCMySQLDACConnReg.pas
deleted file mode 100644
index 2e7c007..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/UCMySQLDACConnReg.pas
+++ /dev/null
@@ -1,17 +0,0 @@
-unit UCMySQLDACConnReg;
-
-interface
-
-uses Classes;
-
-procedure Register;
-
-implementation
-
-uses UCMySQLDACConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCMySQLDACConn]);
-end;
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.bdsproj b/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.bdsproj
deleted file mode 100644
index afe1c73..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.bdsproj
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckMySQLDACConn.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control ADO Connectors
-
-
-
- C:\WINDOWS\Temp
-
-
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
- C:\Arquivos de programas\Borland\Delphi7\Bin\
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.dpk
deleted file mode 100644
index 39fe7be..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.dpk
+++ /dev/null
@@ -1,38 +0,0 @@
-package pckMySQLDACConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control ADO Connectors'}
-{$IMPLICITBUILD OFF}
-
-requires
- pckUCDataConnector,
- adortl,
- rtl,
- dbrtl;
-
-contains
- UCMySQLDACConnReg in 'UCMySQLDACConnReg.pas',
- UCMySQLDACConn in 'UCMySQLDACConn.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.dproj b/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.dproj
deleted file mode 100644
index fde8cb2..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.dproj
+++ /dev/null
@@ -1,98 +0,0 @@
-
-
- {480541f5-52fb-4c6b-adf4-7b2eb88c5599}
- pckMySQLDACConn.dpk
- Debug
- AnyCPU
- DCC32
- C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\pckMySQLDACConn.bpl
-
-
- 7.0
- False
- False
- 0
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- RELEASE
-
-
- 7.0
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- DEBUG
-
-
- Delphi.Personality
- Package
-
-
- False
- True
- False
-
-
- User Control ADO Connectors
- False
- False
- False
-
-
- C:\Arquivos de programas\Borland\Delphi7\Bin\
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
- pckMySQLDACConn.dpk
-
-
-
-
-
-
- MainSource
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.res b/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.res
deleted file mode 100644
index fd84fb8..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCMySQLDACConn/pckMySQLDACConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/UCNexusDBConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/UCNexusDBConn.pas
deleted file mode 100644
index 6d0e44d..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/UCNexusDBConn.pas
+++ /dev/null
@@ -1,104 +0,0 @@
-{Connector para NexusDB v2.xx adaptado por WanX}
-
-unit UCNexusDBConn;
-
-interface
-
-{.$I 'UserControl.inc'}
-
-uses
- SysUtils, Classes, DB, UCDataConnector, nxdb, nxsdFmtBCD;
-
-type
- TUCNexusDBConnector = class(TUCDataConnector)
- private
- FConnection: TnxDatabase;
- procedure SetConnection(const Value: TnxDatabase);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation);override;
- public
- procedure UCExecSQL(FSQL: String); override;
- function UCGetSQLDataset(FSQL: String): TDataset; override;
- function UCFindTable(const Tablename: String): Boolean; override;
- function UCFindDataConnection: Boolean; override;
- function GetDBObjectName: String; override;
- published
- property Connection: TnxDatabase read FConnection write SetConnection;
- end;
-
-implementation
-
-{ TUCNexusDBConnector }
-
-function TUCNexusDBConnector.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then Result := FConnection.Name
- else begin
- Result := FConnection.Owner.Name+'.'+FConnection.Name;
- end;
- end else Result := '';
-end;
-
-procedure TUCNexusDBConnector.Notification(AComponent: TComponent;
- Operation: TOperation);
-begin
- if ((Operation = opRemove) and (AComponent = FConnection)) then
- FConnection := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-procedure TUCNexusDBConnector.SetConnection(const Value: TnxDatabase);
-begin
- if FConnection <> Value then FConnection := Value;
- if FConnection <> nil then FConnection.FreeNotification(Self);
-end;
-
-procedure TUCNexusDBConnector.UCExecSQL(FSQL: String);
-var
- TempQuery: TnxQuery;
-begin
- TempQuery:= TnxQuery.Create(nil);
- try
- TempQuery.Database:= FConnection;
- TempQuery.SQL.text := FSQL;
- TempQuery.ExecSQL;
- finally
- FreeAndNil(TempQuery);
- end;
-end;
-
-function TUCNexusDBConnector.UCFindDataConnection: Boolean;
-begin
- Result := (Assigned(FConnection) and (FConnection.Connected));
-end;
-
-function TUCNexusDBConnector.UCFindTable(const Tablename: String): Boolean;
-var
- Lista : TStringList;
-begin
- Lista := TStringList.Create;
- try
- FConnection.GetTableNames(Lista);
- Result := Lista.IndexOf(TableName) > -1;
- finally
- FreeAndNil(Lista);
- end;
-end;
-
-function TUCNexusDBConnector.UCGetSQLDataset(FSQL: String): TDataset;
-var
- TempQuery : TnxQuery;
-begin
- TempQuery := TnxQuery.Create(nil);
- TempQuery.Database:= FConnection;
- with TempQuery do
- begin
- SQL.text := FSQL;
- Open;
- end;
- Result := TempQuery;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/UCNexusDBConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/UCNexusDBConnReg.pas
deleted file mode 100644
index 8a71536..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/UCNexusDBConnReg.pas
+++ /dev/null
@@ -1,15 +0,0 @@
-unit UCNexusDBConnReg;
-
-interface
-
-uses Classes, UCNexusDBConn;
-
-procedure Register;
-
-implementation
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCNexusDBConnector]);
-end;
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/pckUCNexusDBConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/pckUCNexusDBConn.dpk
deleted file mode 100644
index f08bd48..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/pckUCNexusDBConn.dpk
+++ /dev/null
@@ -1,38 +0,0 @@
-package pckUCNexusDBConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- dbrtl,
- pckUCDataConnector,
- NexusDB207ll100,
- NexusDB207db100,
- NexusDB207sd100;
-
-contains
- UCNexusDBConnReg in 'UCNexusDBConnReg.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/pckUCNexusDBConn.res b/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/pckUCNexusDBConn.res
deleted file mode 100644
index fd84fb8..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCNexusDBConn/pckUCNexusDBConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCODACConn/UCODACConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCODACConn/UCODACConn.pas
deleted file mode 100644
index 6fbaa55..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCODACConn/UCODACConn.pas
+++ /dev/null
@@ -1,119 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCOADCCon
- Author: QmD
- Date: 23-jun-2007
- Purpose: ODAC Support
-
- registered in UCODACReg.pas
------------------------------------------------------------------------------}
-
-unit UCODACConn;
-
-interface
-
-uses
- SysUtils, Classes, UCBase, DB, DBAccess, Ora;
-
-type
- TUCODACConn = class(TUCDataConn)
- private
- FConnection : TOraSession;
- procedure SetFConnection(Value : TOraSession);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation);override;
- public
- function GetDBObjectName : String; override;
- function GetTransObjectName : String; override;
- function UCFindDataConnection : Boolean; override;
- function UCFindTable(const Tablename : String) : Boolean; override;
- function UCGetSQLDataset(FSQL : String) : TDataset;override;
- procedure UCExecSQL(FSQL: String);override;
- published
- property Connection : TOraSession read FConnection write SetFConnection;
- end;
-
-implementation
-
-{ TUCODACConn }
-
-procedure TUCODACConn.SetFConnection(Value: TOraSession);
-begin
- if FConnection <> Value then FConnection := Value;
- if FConnection <> nil then FConnection.FreeNotification(Self);
-end;
-
-procedure TUCODACConn.Notification(AComponent: TComponent;
- Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- begin
- FConnection := nil;
- end;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCODACConn.UCFindTable(const TableName: String): Boolean;
-var
- TempList : TStringList;
-begin
- try
- TempList := TStringList.Create;
- FConnection.GetTableNames(TempList);
- TempList.Text := UpperCase(TempList.Text);
- Result := TempList.IndexOf(UpperCase(TableName)) > -1;
- finally
- FreeAndNil(TempList);
- end;
-end;
-
-function TUCODACConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCODACConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then Result := FConnection.Name
- else begin
- Result := FConnection.Owner.Name+'.'+FConnection.Name;
- end;
- end else Result := '';
-end;
-
-function TUCODACConn.GetTransObjectName: String;
-begin
- Result := '';
-end;
-
-procedure TUCODACConn.UCExecSQL(FSQL: String);
-Var Query : TOraSql;
-begin
- Try
- Query := TOraSql.create(self);
- With Query as TOraSql do
- Begin
- Connecton := FConnection;
- Sql.Add( fSql );
- Execute;
- Connecton.Commit;
- End;
- Finally
- FreeAndNil( Query );
- End;
-end;
-
-function TUCODACConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TOraQuery.Create(nil);
- with Result as TOraQuery do
- begin
- Session := FConnection;
- SQL.Clear;
- Sql.Add(FSQL);
- Open;
- end;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCODACConn/UCODACConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCODACConn/UCODACConnReg.pas
deleted file mode 100644
index 3ef86c9..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCODACConn/UCODACConnReg.pas
+++ /dev/null
@@ -1,17 +0,0 @@
-unit UCODACConnReg;
-
-interface
-
-uses Classes;
-
-procedure Register;
-
-implementation
-
-uses UCODACConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCODACConn]);
-end;
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCODACConn/pckODACConn.bdsproj b/internal/2.31RC1/1/Packages/Connectors/UCODACConn/pckODACConn.bdsproj
deleted file mode 100644
index 652f77c..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCODACConn/pckODACConn.bdsproj
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckODACConn.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
-
-
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
-
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCODACConn/pckODACConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCODACConn/pckODACConn.dpk
deleted file mode 100644
index 4ea5346..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCODACConn/pckODACConn.dpk
+++ /dev/null
@@ -1,35 +0,0 @@
-package pckODACConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- dbrtl;
-
-contains
- UCODACConnReg in 'UCODACConnReg.pas',
- UCODACConn in 'UCODACConn.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCODACConn/pckODACConn.res b/internal/2.31RC1/1/Packages/Connectors/UCODACConn/pckODACConn.res
deleted file mode 100644
index 3424a68..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCODACConn/pckODACConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/UCUIBConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/UCUIBConn.pas
deleted file mode 100644
index 240e1ea..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/UCUIBConn.pas
+++ /dev/null
@@ -1,146 +0,0 @@
-unit UCUIBConn;
-
-interface
-
-uses
- Classes,
- DB,
- jvuib,
- jvuibdataset,
- jvuibmetadata,
- UCDataConnector;
-
-type
- TUCUIBConn = class(TUCDataConnector)
- private
- FConnection: TJvUIBDataBase;
- FTransaction: TJvUIBTransaction;
- procedure SetConnection(const Value: TJvUIBDataBase);
- procedure SetTransaction(const Value: TJvUIBTransaction);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation); override;
- public
- procedure UCExecSQL(FSQL: String); override;
- function UCGetSQLDataset(FSQL: String): TDataset; override;
- function UCFindTable(const Tablename: String): Boolean; override;
- function UCFindDataConnection: Boolean; override;
- function GetDBObjectName: String; override;
- function GetTransObjectName: String; override;
- published
- property Connection: TJvUIBDataBase read FConnection write SetConnection;
- property Transaction: TJvUIBTransaction read FTransaction write SetTransaction;
- end;
-
-implementation
-
-uses
- SysUtils;
-
-{ TUCUIBConn }
-
-function TUCUIBConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then
- Result := FConnection.Name
- else
- begin
- Result := FConnection.Owner.Name + '.' + FConnection.Name;
- end;
- end
- else
- Result := '';
-end;
-
-function TUCUIBConn.GetTransObjectName: String;
-begin
- if Assigned(FTransaction) then
- begin
- if Owner = FTransaction.Owner then
- Result := FTransaction.Name
- else
- begin
- Result := FTransaction.Owner.Name + '.' + FTransaction.Name;
- end;
- end
- else
- Result := '';
-end;
-
-procedure TUCUIBConn.Notification(AComponent: TComponent; Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- FConnection := nil;
- if (Operation = opRemove) and (AComponent = FTransaction) then
- FTransaction := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-procedure TUCUIBConn.SetConnection(const Value: TJvUIBDataBase);
-begin
- if FConnection <> Value then
- FConnection := Value;
- if FConnection <> nil then
- FConnection.FreeNotification(Self);
-end;
-
-procedure TUCUIBConn.SetTransaction(const Value: TJvUIBTransaction);
-begin
- FTransaction := Value;
- if Value <> nil then
- Value.FreeNotification(Self);
-end;
-
-procedure TUCUIBConn.UCExecSQL(FSQL: String);
-var
- Query: TJvUIBQuery;
-begin
- try
- Query := TJvUIBQuery.Create(nil);
- Query.DataBase := FConnection;
- Query.Transaction := FTransaction;
- Query.SQL.Text := FSQL;
- FTransaction.StartTransaction;
- Query.ExecSQL;
- FTransaction.Commit;
- finally
- SysUtils.FreeAndNil(Query);
- end;
-end;
-
-function TUCUIBConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCUIBConn.UCFindTable(const Tablename: String): Boolean;
-var
- MetaData: TMetaDataBase;
- Table: TMetaTable;
-begin
- Result := False;
- MetaData := TMetaDataBase(FConnection.GetMetadata(True));
- Table := MetaData.FindTableName(Tablename);
- if Assigned(Table) then
- Result := True;
-end;
-
-function TUCUIBConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- try
- Result := TJvUIBDataSet.Create(nil);
- with (Result as TJvUIBDataSet) do
- begin
- DataBase := FConnection;
- Transaction := FTransaction;
- SQL.Text := FSQL;
- Open;
- end;
- except
- SysUtils.FreeAndNil(Result);
- end;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/UCUIBConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/UCUIBConnReg.pas
deleted file mode 100644
index c706578..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/UCUIBConnReg.pas
+++ /dev/null
@@ -1,21 +0,0 @@
-unit UCUIBConnReg;
-
-interface
-
-uses
- Classes;
-
-procedure Register;
-
-implementation
-
-uses
- UCUIBConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCUIBConn]);
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/pckUCUIBConn.bdsproj b/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/pckUCUIBConn.bdsproj
deleted file mode 100644
index 47c867d..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/pckUCUIBConn.bdsproj
+++ /dev/null
@@ -1,182 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUCUIBConn.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control UIB Connector
-
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
-
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
- TeeChart Components
- JVCL BDE Components
-
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/pckUCUIBConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/pckUCUIBConn.dpk
deleted file mode 100644
index 2d94322..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/pckUCUIBConn.dpk
+++ /dev/null
@@ -1,43 +0,0 @@
-package pckUCUIBConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control UIB Connector'}
-{$IMPLICITBUILD ON}
-
-requires
- rtl,
- vcl,
- vclactnband,
- dbrtl,
- vcldb,
- pckUCDataConnector,
- JvCoreD10R,
- JvUIBD10R;
-
-contains
- UCUIBConn in 'UCUIBConn.pas',
- UCUIBConnReg in 'UCUIBConnReg.pas';
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/pckUCUIBConn.res b/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/pckUCUIBConn.res
deleted file mode 100644
index fd84fb8..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCUIBConn/pckUCUIBConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/UCZEOSConn.pas b/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/UCZEOSConn.pas
deleted file mode 100644
index a8f26c0..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/UCZEOSConn.pas
+++ /dev/null
@@ -1,127 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCZEOSConn
- Author: QmD
- Date: 08-nov-2004
- Purpose: ZEOS 6 Support
-
- registered in UCZEOSReg.pas
------------------------------------------------------------------------------}
-
-unit UCZEOSConn;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- Classes,
- DB,
- SysUtils,
- UCDataConnector,
- ZConnection;
-
-type
- TUCZEOSConn = class(TUCDataConnector)
- private
- FConnection: TZConnection;
- procedure SetFConnection(const Value: TZConnection);
- protected
- procedure Notification(AComponent: TComponent; Operation: TOperation); override;
- public
- function GetDBObjectName: String; override;
- function GetTransObjectName: String; override;
- function UCFindDataConnection: Boolean; override;
- function UCFindTable(const Tablename: String): Boolean; override;
- function UCGetSQLDataset(FSQL: String): TDataset; override;
- procedure UCExecSQL(FSQL: String); override;
- published
- property Connection: TZConnection read FConnection write SetFConnection;
- end;
-
-implementation
-
-uses
- ZDataset, Dialogs;
-
-{ TUCZEOSConn }
-
-procedure TUCZEOSConn.SetFConnection(const Value: TZConnection);
-begin
- if FConnection <> Value then
- FConnection := Value;
- if FConnection <> nil then
- FConnection.FreeNotification(Self);
-end;
-
-procedure TUCZEOSConn.Notification(AComponent: TComponent; Operation: TOperation);
-begin
- if (Operation = opRemove) and (AComponent = FConnection) then
- FConnection := nil;
- inherited Notification(AComponent, Operation);
-end;
-
-function TUCZEOSConn.UCFindTable(const TableName: String): Boolean;
-var
- TempList: TStringList;
-begin
- try
- TempList := TStringList.Create;
- FConnection.GetTableNames('', TempList);
- TempList.Text := UpperCase(TempList.Text);
- Result := TempList.IndexOf(UpperCase(TableName)) > -1;
- finally
- FreeAndNil(TempList);
- end;
-end;
-
-function TUCZEOSConn.UCFindDataConnection: Boolean;
-begin
- Result := Assigned(FConnection) and (FConnection.Connected);
-end;
-
-function TUCZEOSConn.GetDBObjectName: String;
-begin
- if Assigned(FConnection) then
- begin
- if Owner = FConnection.Owner then
- Result := FConnection.Name
- else
- begin
- Result := FConnection.Owner.Name + '.' + FConnection.Name;
- end;
- end
- else
- Result := '';
-end;
-
-function TUCZEOSConn.GetTransObjectName: String;
-begin
- Result := '';
-end;
-
-procedure TUCZEOSConn.UCExecSQL(FSQL: String);
-begin
- with TZQuery.Create(nil) do
- begin
- Connection := FConnection;
- SQL.Text := FSQL;
- ExecSQL;
- If FConnection.AutoCommit = False then
- FConnection.Commit;
- Free;
- end;
-end;
-
-function TUCZEOSConn.UCGetSQLDataset(FSQL: String): TDataset;
-begin
- Result := TZQuery.Create(nil);
- with Result as TZQuery do
- begin
- Connection := FConnection;
- SQL.Text := FSQL;
- Open;
- end;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/UCZEOSConnReg.pas b/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/UCZEOSConnReg.pas
deleted file mode 100644
index 00a0d31..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/UCZEOSConnReg.pas
+++ /dev/null
@@ -1,17 +0,0 @@
-unit UCZEOSConnReg;
-
-interface
-
-uses Classes;
-
-procedure Register;
-
-implementation
-
-uses UCZEOSConn;
-
-procedure Register;
-begin
- RegisterComponents('UC Connectors', [TUCZEOSConn]);
-end;
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.bdsproj b/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.bdsproj
deleted file mode 100644
index 8dae755..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.bdsproj
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckZeosConn.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control Zeos Connector
-
-
-
- C:\WINDOWS\Temp
-
-
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
- C:\Arquivos de programas\Borland\Delphi7\Bin\
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.dpk b/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.dpk
deleted file mode 100644
index 0f15e5d..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.dpk
+++ /dev/null
@@ -1,36 +0,0 @@
-package pckZeosConn;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control Zeos Connector'}
-{$IMPLICITBUILD OFF}
-
-requires
- ZComponentDesign,
- pckUCDataConnector;
-
-contains
- UCZEOSConn in 'UCZEOSConn.pas',
- UCZEOSConnReg in 'UCZEOSConnReg.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.dproj b/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.dproj
deleted file mode 100644
index e87a3c5..0000000
--- a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.dproj
+++ /dev/null
@@ -1,51 +0,0 @@
-
-
-
- {874a4671-4e5b-4e1c-a73c-fddb167ca5d2}
- pckZeosConn.dpk
- Debug
- AnyCPU
- DCC32
- C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\pckZeosConn.bpl
-
-
- 7.0
- False
- False
- 0
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- RELEASE
-
-
- 7.0
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- C:\WINDOWS\Temp
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
- ;C:\Arquivos de programas\Borland\Componentes\TeeChart.Pro.v7.06\Sources\Compiled\Delphi7\Lib
-
-
- Delphi.Personality
- Package
-
-FalseTrueFalseUser Control Zeos ConnectorFalseFalseFalseC:\Arquivos de programas\Borland\Delphi7\Bin\TrueFalse1000FalseFalseFalseFalseFalse104612521.0.0.01.0.0.0pckZeosConn.dpk
-
-
-
-
- MainSource
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.res b/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.res
deleted file mode 100644
index a3a102a..0000000
Binary files a/internal/2.31RC1/1/Packages/Connectors/UCZeosConn/pckZeosConn.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/D2009.groupproj b/internal/2.31RC1/1/Packages/D2009.groupproj
deleted file mode 100644
index 40f326d..0000000
--- a/internal/2.31RC1/1/Packages/D2009.groupproj
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
- {1c592c69-53bd-49f1-a789-a4ac64f25b09}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default.Personality.12
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/ModelSupport_pckMD5/default.txaPackage b/internal/2.31RC1/1/Packages/ModelSupport_pckMD5/default.txaPackage
deleted file mode 100644
index e69de29..0000000
diff --git a/internal/2.31RC1/1/Packages/ModelSupport_pckMD5/pckMD5.prjconfig b/internal/2.31RC1/1/Packages/ModelSupport_pckMD5/pckMD5.prjconfig
deleted file mode 100644
index c8f2834..0000000
--- a/internal/2.31RC1/1/Packages/ModelSupport_pckMD5/pckMD5.prjconfig
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Packages/ModelSupport_pckUCDataConnector/default.txaPackage b/internal/2.31RC1/1/Packages/ModelSupport_pckUCDataConnector/default.txaPackage
deleted file mode 100644
index e69de29..0000000
diff --git a/internal/2.31RC1/1/Packages/ModelSupport_pckUCDataConnector/pckUCDataConnector.prjconfig b/internal/2.31RC1/1/Packages/ModelSupport_pckUCDataConnector/pckUCDataConnector.prjconfig
deleted file mode 100644
index c8f2834..0000000
--- a/internal/2.31RC1/1/Packages/ModelSupport_pckUCDataConnector/pckUCDataConnector.prjconfig
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Packages/ModelSupport_pckUserControl_RT/default.txaPackage b/internal/2.31RC1/1/Packages/ModelSupport_pckUserControl_RT/default.txaPackage
deleted file mode 100644
index e69de29..0000000
diff --git a/internal/2.31RC1/1/Packages/ModelSupport_pckUserControl_RT/pckUserControl_RT.prjconfig b/internal/2.31RC1/1/Packages/ModelSupport_pckUserControl_RT/pckUserControl_RT.prjconfig
deleted file mode 100644
index c8f2834..0000000
--- a/internal/2.31RC1/1/Packages/ModelSupport_pckUserControl_RT/pckUserControl_RT.prjconfig
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Packages/pckMD5.bdsproj b/internal/2.31RC1/1/Packages/pckMD5.bdsproj
deleted file mode 100644
index c4ecafc..0000000
--- a/internal/2.31RC1/1/Packages/pckMD5.bdsproj
+++ /dev/null
@@ -1,179 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckMD5.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- MD5SUM Package
-
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
-
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
- TeeChart Components
- JVCL BDE Components
-
-
- True
-
diff --git a/internal/2.31RC1/1/Packages/pckMD5.dpk b/internal/2.31RC1/1/Packages/pckMD5.dpk
deleted file mode 100644
index 601c633..0000000
--- a/internal/2.31RC1/1/Packages/pckMD5.dpk
+++ /dev/null
@@ -1,34 +0,0 @@
-package pckMD5;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'MD5SUM Package'}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl;
-
-contains
- md5 in '..\Source\md5.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/pckMD5.dproj b/internal/2.31RC1/1/Packages/pckMD5.dproj
deleted file mode 100644
index 48c893d..0000000
--- a/internal/2.31RC1/1/Packages/pckMD5.dproj
+++ /dev/null
@@ -1,118 +0,0 @@
-
-
- {d2274d98-f9f6-4f51-9617-6c46e56a95d2}
- pckMD5.dpk
- Debug
- AnyCPU
- DCC32
- C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\pckMD5.bpl
- 12.0
- Debug
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- ..\Lib\D12
- ..\Lib\D12
- ..\Lib\D12
- 00400000
- false
- MD5SUM Package
- ..\Lib\D12\pckMD5.bpl
- true
- true
- 1
- true
-
-
- 7.0
- False
- False
- 0
- RELEASE;$(DCC_Define)
-
-
- 7.0
-
-
- Delphi.Personality.12
- Package
-
-
-
- False
- True
- False
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
- TeeChart Components
- JVCL BDE Components
-
-
- pckMD5.dpk
-
-
-
- 12
-
-
-
- MainSource
-
-
-
-
-
-
-
- Base
-
-
- Cfg_2
- Base
-
-
- Cfg_1
- Base
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/pckMD5.res b/internal/2.31RC1/1/Packages/pckMD5.res
deleted file mode 100644
index fd84fb8..0000000
Binary files a/internal/2.31RC1/1/Packages/pckMD5.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/pckUCDataConnector.bdsproj b/internal/2.31RC1/1/Packages/pckUCDataConnector.bdsproj
deleted file mode 100644
index f54a1f5..0000000
--- a/internal/2.31RC1/1/Packages/pckUCDataConnector.bdsproj
+++ /dev/null
@@ -1,181 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUCDataConnector.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control DataConn
-
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
-
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
- TeeChart Components
- JVCL BDE Components
-
-
-
-
- True
-
diff --git a/internal/2.31RC1/1/Packages/pckUCDataConnector.dpk b/internal/2.31RC1/1/Packages/pckUCDataConnector.dpk
deleted file mode 100644
index 813930d..0000000
--- a/internal/2.31RC1/1/Packages/pckUCDataConnector.dpk
+++ /dev/null
@@ -1,36 +0,0 @@
-package pckUCDataConnector;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control DataConn'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- dbrtl;
-
-contains
- UCDataConnector in '..\Source\UCDataConnector.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/pckUCDataConnector.dproj b/internal/2.31RC1/1/Packages/pckUCDataConnector.dproj
deleted file mode 100644
index d0b56ff..0000000
--- a/internal/2.31RC1/1/Packages/pckUCDataConnector.dproj
+++ /dev/null
@@ -1,121 +0,0 @@
-
-
- {32671bc6-e575-4ad0-9f27-6e30a6d8f220}
- pckUCDataConnector.dpk
- Debug
- AnyCPU
- DCC32
- C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\pckUCDataConnector.bpl
- 12.0
- Debug
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- ..\Lib\D12
- ..\Lib\D12;$(DCC_UnitSearchPath)
- ..\Lib\D12
- ..\Lib\D12
- ..\Lib\D12\pckUCDataConnector.bpl
- 00400000
- User Control DataConn
- true
- false
- true
- true
- 1
- true
-
-
- 7.0
- False
- False
- 0
- RELEASE;$(DCC_Define)
-
-
- 7.0
-
-
- Delphi.Personality.12
- Package
-
-
-
- False
- True
- False
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
- TeeChart Components
- JVCL BDE Components
-
-
- pckUCDataConnector.dpk
-
-
-
- 12
-
-
-
- MainSource
-
-
-
-
-
-
-
-
- Base
-
-
- Cfg_2
- Base
-
-
- Cfg_1
- Base
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/pckUCDataConnector.res b/internal/2.31RC1/1/Packages/pckUCDataConnector.res
deleted file mode 100644
index fd84fb8..0000000
Binary files a/internal/2.31RC1/1/Packages/pckUCDataConnector.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/pckUCGlobal.bdsproj b/internal/2.31RC1/1/Packages/pckUCGlobal.bdsproj
deleted file mode 100644
index 561c496..0000000
--- a/internal/2.31RC1/1/Packages/pckUCGlobal.bdsproj
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUCGlobal.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
-
-
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
-
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/pckUCGlobal.dpk b/internal/2.31RC1/1/Packages/pckUCGlobal.dpk
deleted file mode 100644
index 80bd32b..0000000
--- a/internal/2.31RC1/1/Packages/pckUCGlobal.dpk
+++ /dev/null
@@ -1,40 +0,0 @@
-package pckUCGlobal;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- vcl,
- dbrtl,
- vclactnband,
- dclindy,
- indy,
- vcldb,
- pckMD5,
- pckUCDataConnector,
- VclSmp,
- pckUserControl_RT;
-
-end.
diff --git a/internal/2.31RC1/1/Packages/pckUCGlobal.res b/internal/2.31RC1/1/Packages/pckUCGlobal.res
deleted file mode 100644
index 3424a68..0000000
Binary files a/internal/2.31RC1/1/Packages/pckUCGlobal.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/pckUserControl_DT.bdsproj b/internal/2.31RC1/1/Packages/pckUserControl_DT.bdsproj
deleted file mode 100644
index b91ca3f..0000000
--- a/internal/2.31RC1/1/Packages/pckUserControl_DT.bdsproj
+++ /dev/null
@@ -1,178 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUserControl_DT.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control Package 2
-
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
-
-
-
- True
- False
- 2
- 3
- 2
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
- UserControl
- UserControl 2.30 RC2
- 2.3.2.0
- pkUserControl_DT
-
-
-
-
- 2.3.2.0
- www.usercontrol.net
-
-
-
-
- False
-
diff --git a/internal/2.31RC1/1/Packages/pckUserControl_DT.dpk b/internal/2.31RC1/1/Packages/pckUserControl_DT.dpk
deleted file mode 100644
index e0597aa..0000000
--- a/internal/2.31RC1/1/Packages/pckUserControl_DT.dpk
+++ /dev/null
@@ -1,48 +0,0 @@
-package pckUserControl_DT;
-
-{$R *.res}
-{$R '..\Source\UCReg.dcr'}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control Package 2'}
-{$DESIGNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- designide,
- inet,
- dbrtl,
- vcldb,
- VclSmp,
- pckMD5,
- pckUCDataConnector,
- pckUSerControl_RT,
- vcljpg;
-
-contains
- UCReg in '..\Source\UCReg.pas',
- UCObjSel_U in '..\Source\UCObjSel_U.pas',
- UCAbout in '..\Source\UCAbout.pas',
- UCIdle in '..\Source\UCIdle.pas',
- UCEditorForm_U in '..\Source\UCEditorForm_U.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/pckUserControl_DT.dproj b/internal/2.31RC1/1/Packages/pckUserControl_DT.dproj
deleted file mode 100644
index 3c20e32..0000000
--- a/internal/2.31RC1/1/Packages/pckUserControl_DT.dproj
+++ /dev/null
@@ -1,129 +0,0 @@
-
-
- {a30f53db-e475-4ad9-a852-f9ebf338bf98}
- pckUserControl_DT.dpk
- Debug
- AnyCPU
- DCC32
- C:\Users\Public\Documents\RAD Studio\5.0\Bpl\pckUserControl_DT.bpl
- 12.0
- Debug
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- ..\Lib\D12
- ..\Lib\D12
- ..\Lib\D12;$(DCC_UnitSearchPath)
- ..\Lib\D12
- 00400000
- true
- User Control Package 2
- ..\Lib\D12\pckUserControl_DT.bpl
- true
- true
- 1
- true
-
-
- 7.0
- False
- False
- 0
- RELEASE;$(DCC_Define)
-
-
- 7.0
-
-
- Delphi.Personality.12
- Package
-
-
-
- False
- True
- False
-
-
- True
- False
- 2
- 3
- 2
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
- UserControl
- UserControl 2.30 RC2
- 2.3.2.0
- pkUserControl_DT
-
-
-
-
- 2.3.2.0
- www.usercontrol.net
-
-
- WL Decision Cube Components
-
-
- pckUserControl_DT.dpk
-
-
-
- 12
-
-
-
- MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Base
-
-
- Cfg_2
- Base
-
-
- Cfg_1
- Base
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/pckUserControl_DT.res b/internal/2.31RC1/1/Packages/pckUserControl_DT.res
deleted file mode 100644
index 502e9bf..0000000
Binary files a/internal/2.31RC1/1/Packages/pckUserControl_DT.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/pckUserControl_DT_D12.dpk b/internal/2.31RC1/1/Packages/pckUserControl_DT_D12.dpk
deleted file mode 100644
index a3f5ccf..0000000
--- a/internal/2.31RC1/1/Packages/pckUserControl_DT_D12.dpk
+++ /dev/null
@@ -1,48 +0,0 @@
-package pckUserControl_DT_D12;
-
-{$R *.res}
-{$R '..\Source\UCReg.dcr'}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control Package 2'}
-{$DESIGNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- designide,
- inet,
- dbrtl,
- vcldb,
- VclSmp,
- pckMD5,
- pckUCDataConnector,
- pckUSerControl_RT,
- vclimg;
-
-contains
- UCReg in '..\Source\UCReg.pas',
- UCObjSel_U in '..\Source\UCObjSel_U.pas',
- UCAbout in '..\Source\UCAbout.pas',
- UCIdle in '..\Source\UCIdle.pas',
- UCEditorForm_U in '..\Source\UCEditorForm_U.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/pckUserControl_DT_D12.dproj b/internal/2.31RC1/1/Packages/pckUserControl_DT_D12.dproj
deleted file mode 100644
index 5777f02..0000000
--- a/internal/2.31RC1/1/Packages/pckUserControl_DT_D12.dproj
+++ /dev/null
@@ -1,129 +0,0 @@
-
-
- {a30f53db-e475-4ad9-a852-f9ebf338bf98}
- pckUserControl_DT_D12.dpk
- Debug
- AnyCPU
- DCC32
- C:\Users\Public\Documents\RAD Studio\5.0\Bpl\pckUserControl_DT.bpl
- 12.0
- Debug
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- ..\Lib\D12
- ..\Lib\D12
- ..\Lib\D12;$(DCC_UnitSearchPath)
- ..\Lib\D12
- 00400000
- true
- User Control Package 2
- ..\Lib\D12\pckUserControl_DT_D12.bpl
- true
- true
- 1
- true
-
-
- 7.0
- False
- False
- 0
- RELEASE;$(DCC_Define)
-
-
- 7.0
-
-
- Delphi.Personality.12
- Package
-
-
-
- False
- True
- False
-
-
- True
- False
- 2
- 3
- 2
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
- UserControl
- UserControl 2.30 RC2
- 2.3.2.0
- pkUserControl_DT
-
-
-
-
- 2.3.2.0
- www.usercontrol.net
-
-
- WL Decision Cube Components
-
-
- pckUserControl_DT_D12.dpk
-
-
-
- 12
-
-
-
- MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Base
-
-
- Cfg_2
- Base
-
-
- Cfg_1
- Base
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/pckUserControl_DT_D12.res b/internal/2.31RC1/1/Packages/pckUserControl_DT_D12.res
deleted file mode 100644
index 502e9bf..0000000
Binary files a/internal/2.31RC1/1/Packages/pckUserControl_DT_D12.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Packages/pckUserControl_RT.bdsproj b/internal/2.31RC1/1/Packages/pckUserControl_RT.bdsproj
deleted file mode 100644
index 84dc8ef..0000000
--- a/internal/2.31RC1/1/Packages/pckUserControl_RT.bdsproj
+++ /dev/null
@@ -1,180 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckUserControl_RT.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- User Control Package 2
-
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
-
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
- WL Decision Cube Components
-
-
-
-
- True
-
diff --git a/internal/2.31RC1/1/Packages/pckUserControl_RT.dpk b/internal/2.31RC1/1/Packages/pckUserControl_RT.dpk
deleted file mode 100644
index 9c71e00..0000000
--- a/internal/2.31RC1/1/Packages/pckUserControl_RT.dpk
+++ /dev/null
@@ -1,65 +0,0 @@
-package pckUserControl_RT;
-
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'User Control Package 2'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- designide,
- inet,
- dbrtl,
- vcldb,
- VclSmp,
- pckMD5,
- pckUCDataConnector,
- vcl,
- rtl,
- vclx;
-
-contains
- TrocaSenha_U in '..\Source\TrocaSenha_U.pas',
- UCBase in '..\Source\UCBase.pas',
- SenhaForm_U in '..\Source\SenhaForm_U.pas',
- EnvMsgForm_U in '..\Source\EnvMsgForm_U.pas',
- MsgRecForm_U in '..\Source\MsgRecForm_U.pas',
- MsgsForm_U in '..\Source\MsgsForm_U.pas',
- UCDataInfo in '..\Source\UCDataInfo.pas',
- UCMessages in '..\Source\UCMessages.pas',
- UserPermis_U in '..\Source\UserPermis_U.pas',
- UCSettings in '..\Source\UCSettings.pas',
- LoginWindow_U in '..\Source\LoginWindow_U.pas',
- UcConsts_Language in '..\Source\UcConsts_Language.pas',
- pUCGeral in '..\Source\pUCGeral.pas',
- pUCFrame_User in '..\Source\pUCFrame_User.pas',
- pUCFrame_Profile in '..\Source\pUCFrame_Profile.pas',
- pUCFrame_Log in '..\Source\pUCFrame_Log.pas' {UCFrame_Log},
- pUcFrame_UserLogged in '..\Source\pUcFrame_UserLogged.pas' {UCFrame_UsersLogged},
- UCMail in '..\Source\UCMail.pas',
- UCEMailForm_U in '..\Source\UCEMailForm_U.pas',
- UCALSMTPClient in '..\Source\UCALSMTPClient.pas',
- IncUser_U in '..\Source\IncUser_U.pas',
- IncPerfil_U in '..\Source\IncPerfil_U.pas';
-
-end.
diff --git a/internal/2.31RC1/1/Packages/pckUserControl_RT.dproj b/internal/2.31RC1/1/Packages/pckUserControl_RT.dproj
deleted file mode 100644
index 77b2cc9..0000000
--- a/internal/2.31RC1/1/Packages/pckUserControl_RT.dproj
+++ /dev/null
@@ -1,157 +0,0 @@
-
-
- {0e9c6372-292f-47d7-b235-70ab25776f3b}
- pckUserControl_RT.dpk
- Debug
- AnyCPU
- DCC32
- C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\pckUserControl_RT.bpl
- 12.0
- Debug
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- ..\Lib\D12
- ..\Lib\D12;$(DCC_UnitSearchPath)
- ..\Lib\D12
- ..\Lib\D12
- ..\Lib\D12\pckUserControl_RT.bpl
- 00400000
- User Control Package 2
- true
- false
- true
- true
- 1
- true
-
-
- 7.0
- False
- False
- 0
- RELEASE;$(DCC_Define)
- True
- True
- True
-
-
- 7.0
- True
- True
- True
-
-
- Delphi.Personality.12
- Package
-
-
-
- False
- True
- False
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
- WL Decision Cube Components
-
-
- pckUserControl_RT.dpk
-
-
-
- 12
-
-
-
- MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Base
-
-
- Cfg_2
- Base
-
-
- Cfg_1
- Base
-
-
-
-
diff --git a/internal/2.31RC1/1/Packages/pckUserControl_RT.res b/internal/2.31RC1/1/Packages/pckUserControl_RT.res
deleted file mode 100644
index fd84fb8..0000000
Binary files a/internal/2.31RC1/1/Packages/pckUserControl_RT.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCADOConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCADOConn.bmp
deleted file mode 100644
index 6e2460a..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCADOConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCASTAConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCASTAConn.bmp
deleted file mode 100644
index 4ab2924..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCASTAConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCAppMessage.bmp b/internal/2.31RC1/1/Source/Dcr/UCAppMessage.bmp
deleted file mode 100644
index 56dc64e..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCAppMessage.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCBDEConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCBDEConn.bmp
deleted file mode 100644
index cf17266..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCBDEConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCControls.bmp b/internal/2.31RC1/1/Source/Dcr/UCControls.bmp
deleted file mode 100644
index b760f3a..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCControls.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCDBISAMConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCDBISAMConn.bmp
deleted file mode 100644
index c0244da..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCDBISAMConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCDBXConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCDBXConn.bmp
deleted file mode 100644
index 1470e9a..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCDBXConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCFIBConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCFIBConn.bmp
deleted file mode 100644
index dc9869b..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCFIBConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCIBOConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCIBOConn.bmp
deleted file mode 100644
index 8f5965a..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCIBOConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCIBXConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCIBXConn.bmp
deleted file mode 100644
index 29ab05f..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCIBXConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCIdle.bmp b/internal/2.31RC1/1/Source/Dcr/UCIdle.bmp
deleted file mode 100644
index 124cb68..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCIdle.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCMDOConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCMDOConn.bmp
deleted file mode 100644
index 93d8a5e..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCMDOConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCMail.bmp b/internal/2.31RC1/1/Source/Dcr/UCMail.bmp
deleted file mode 100644
index 0cffa95..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCMail.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCMain.bmp b/internal/2.31RC1/1/Source/Dcr/UCMain.bmp
deleted file mode 100644
index a910400..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCMain.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCMidasConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCMidasConn.bmp
deleted file mode 100644
index 749299a..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCMidasConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCMyDACConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCMyDACConn.bmp
deleted file mode 100644
index 6ec4ef5..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCMyDACConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCMySQLDACConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCMySQLDACConn.bmp
deleted file mode 100644
index fe78af3..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCMySQLDACConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCReg.dcr b/internal/2.31RC1/1/Source/Dcr/UCReg.dcr
deleted file mode 100644
index 137f24a..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCReg.dcr and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCReg.rc b/internal/2.31RC1/1/Source/Dcr/UCReg.rc
deleted file mode 100644
index f42f613..0000000
--- a/internal/2.31RC1/1/Source/Dcr/UCReg.rc
+++ /dev/null
@@ -1,21 +0,0 @@
-TUCAPPLICATIONMESSAGE BITMAP "UCAppMessage.bmp"
-TUCSETTINGS BITMAP "UCSettings.bmp"
-TUCCONTROLS BITMAP "UCControls.bmp"
-TMAILUSERCONTROL BITMAP "UCMail.bmp"
-TUCXPSTYLE BITMAP "UCXp.bmp"
-TUCIDLE BITMAP "UCIdle.bmp"
-TUSERCONTROL BITMAP "UCMain.bmp"
-TUCADOCONN BITMAP "UCADOConn.bmp"
-TUCIBXCONN BITMAP "UCIBXConn.bmp"
-TUCBDECONN BITMAP "UCBDEConn.bmp"
-TUCDBXCONN BITMAP "UCDBXConn.bmp"
-TUCIBOCONN BITMAP "UCIBOConn.bmp"
-TUCFIBCONN BITMAP "UCFIBConn.bmp"
-TUCZEOSCONN BITMAP "UCZEOSConn.bmp"
-TUCASTACONN BITMAP "UCASTAConn.bmp"
-TUCDBISAMCONN BITMAP "UCDBISAMConn.bmp"
-TUCMDOCONN BITMAP "UCMDOConn.bmp"
-TUCMYDACCONN BITMAP "UCMyDACConn.bmp"
-TUCMYSQLDACCONN BITMAP "UCMySQLDACConn.bmp"
-TUCMIDASCONN BITMAP "UCMidasConn.bmp"
-TUCODACConn BITMAP "UODACConn.bmp"
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Source/Dcr/UCSettings.bmp b/internal/2.31RC1/1/Source/Dcr/UCSettings.bmp
deleted file mode 100644
index 6017c40..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCSettings.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCXp.bmp b/internal/2.31RC1/1/Source/Dcr/UCXp.bmp
deleted file mode 100644
index a7de19c..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCXp.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UCZEOSConn.bmp b/internal/2.31RC1/1/Source/Dcr/UCZEOSConn.bmp
deleted file mode 100644
index 7452700..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UCZEOSConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/UODACConn.bmp b/internal/2.31RC1/1/Source/Dcr/UODACConn.bmp
deleted file mode 100644
index 4ed6161..0000000
Binary files a/internal/2.31RC1/1/Source/Dcr/UODACConn.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/Dcr/make.bat b/internal/2.31RC1/1/Source/Dcr/make.bat
deleted file mode 100644
index 47515b0..0000000
--- a/internal/2.31RC1/1/Source/Dcr/make.bat
+++ /dev/null
@@ -1 +0,0 @@
-brc32 -foUCReg.dcr -r -t UCReg.rc
\ No newline at end of file
diff --git a/internal/2.31RC1/1/Source/EnvMsgForm_U.dfm b/internal/2.31RC1/1/Source/EnvMsgForm_U.dfm
deleted file mode 100644
index 3fd2c8f..0000000
--- a/internal/2.31RC1/1/Source/EnvMsgForm_U.dfm
+++ /dev/null
@@ -1,343 +0,0 @@
-object EnvMsgForm: TEnvMsgForm
- Left = 304
- Top = 204
- BorderStyle = bsDialog
- Caption = 'Mensagem'
- ClientHeight = 364
- ClientWidth = 377
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- OldCreateOrder = False
- OnCreate = FormCreate
- PixelsPerInch = 96
- TextHeight = 13
- object Panel1: TPanel
- Left = 0
- Top = 0
- Width = 377
- Height = 35
- Align = alTop
- BevelOuter = bvLowered
- Color = clWhite
- TabOrder = 0
- object lbTitulo: TLabel
- Left = 48
- Top = 10
- Width = 205
- Height = 18
- Caption = 'Enviar Nova Mensagem'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -16
- Font.Name = 'Verdana'
- Font.Style = [fsBold]
- ParentFont = False
- end
- object Image1: TImage
- Left = 8
- Top = 4
- Width = 28
- Height = 28
- AutoSize = True
- Picture.Data = {
- 07544269746D6170760C0000424D760C00000000000036000000280000001C00
- 00001C0000000100200000000000400C00000000000000000000000000000000
- 0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C7B2A300694731006947
- 3100694731006947310069473100694731006947310069473100694731006947
- 3100694731006947310069473100694731006947310069473100694731006947
- 310069473100694731006947310069473100694731006947310069473100FFFF
- FF00FFFFFF00C7B2A300DBC9BF00B7A29300B7A29300B7A29300B7A29300B7A2
- 9300B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A2
- 9300B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A2
- 9300B7A29300B7A2930069473100FFFFFF00FFFFFF00C7B2A300B7A29300DFD0
- C700DFD0C700DFD0C700DFD0C700DFD0C700DFD0C700DFD0C700DFD0C700DFD0
- C700DFD0C700DFD0C700DFD0C700DFD0C700DFD0C700DFD0C700DFD0C700DFD0
- C700DFD0C700DFD0C700DFD0C700DFD0C700DFD0C700CE99970069473100FFFF
- FF00FFFFFF00C7B2A300DBC9BF00B7A29300E4D7CF00E4D7CF00E4D7CF00E4D7
- CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7
- CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7
- CF00B7A29300B7A2930069473100FFFFFF00FFFFFF00C7B2A300DECEC500DECE
- C500B7A29300E9DED700E9DED700E9DED700E9DED700E9DED700E9DED700E9DE
- D700E9DED700E9DED700E9DED700E9DED700E9DED700E9DED700E9DED700E9DE
- D700E9DED700E9DED700E9DED700B7A29300DECEC500B7A2930069473100FFFF
- FF00FFFFFF00C7B2A300E2D4CC00E2D4CC00E2D4CC00B7A29300EDE4DF00EDE4
- DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4
- DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00B7A29300E2D4
- CC00E2D4CC00B7A2930069473100FFFFFF00FFFFFF00C7B2A300E6D9D200E6D9
- D200E6D9D200E6D9D200B7A29300F0E9E500F0E9E500F0E9E500F0E9E500F0E9
- E500F0E9E500F0E9E500F0E9E500F0E9E500F0E9E500F0E9E500F0E9E500F0E9
- E500F0E9E500B7A29300E6D9D200E6D9D200E6D9D200B7A2930069473100FFFF
- FF00FFFFFF00C7B2A300EADFD900EADFD900EADFD900EADFD900EADFD900B7A2
- 9300F4EFEC00F4EFEC00F4EFEC00F4EFEC00F4EFEC00F4EFEC00F4EFEC00F4EF
- EC00F4EFEC00F4EFEC00F4EFEC00F4EFEC00B7A29300EADFD900EADFD900EADF
- D900EADFD900B7A2930069473100FFFFFF00FFFFFF00C7B2A300EDE4DF00EDE4
- DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00B7A29300F8F4F200F8F4F200F8F4
- F200F8F4F200F8F4F200F8F4F200F8F4F200F8F4F200F8F4F200F8F4F200B7A2
- 9300EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00B7A2930069473100FFFF
- FF00FFFFFF00C7B2A300F0E8E400F0E8E400F0E8E400F0E8E400F0E8E400F0E8
- E400B7A29300B7A29300FCFAF900FCFAF900FCFAF900FCFAF900FCFAF900FCFA
- F900FCFAF900FCFAF900B7A29300B7A29300F0E8E400F0E8E400F0E8E400F0E8
- E400F0E8E400B7A2930069473100FFFFFF00FFFFFF00C7B2A300F3EDE900F3ED
- E900F3EDE900F3EDE900F3EDE900B7A29300DDC5C200DDC5C200B7A29300DDC5
- C200FFFFFF00FFFFFF00FFFFFF00FFFFFF00DDC5C200B7A29300DDC5C200DDC5
- C200B7A29300F3EDE900F3EDE900F3EDE900F3EDE900B7A2930069473100FFFF
- FF00FFFFFF00C7B2A300F6F1EF00F6F1EF00F6F1EF00F6F1EF00B7A29300DDC5
- C200FBF9F700F7F4F100DDC5C200C7B2A300B7A29300B7A29300B7A29300B7A2
- 9300C7B2A300DDC5C200DCCBC100DBC9BF00DDC5C200B7A29300F6F1EF00F6F1
- EF00F6F1EF00B7A2930069473100FFFFFF00FFFFFF00C7B2A300F9F6F400F9F6
- F400F9F6F400B7A29300DDC5C200FFFFFF00FEFDFC00FBF9F700F7F4F100EEE0
- E000EEE0E000EEE0E000EEE0E000EEE0E000EEE0E000E4D7CF00E1D2C900DECD
- C400DBC9BF00DDC5C200B7A29300F9F6F400F9F6F400B7A2930069473100FFFF
- FF00FFFFFF00C7B2A300FCFBFA00FCFBFA00B7A29300C8B3A400FFFFFF00FFFF
- FF00B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A2
- 9300B7A29300B7A29300B7A29300B7A29300DECDC400DBC9BF00D2C0B300B7A2
- 9300FCFBFA00B7A2930069473100FFFFFF00FFFFFF00C7B2A300FFFFFF00B8A3
- 9400DDC5C200C8B3A400FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCFB
- F900F9F6F400F6F2EF00F3EDE900F0E8E400EDE4DF00EAE0D900E7DBD400E4D7
- CF00E1D2C900DECDC400D2BFB200DDC5C200B7A29300FFFFFF0069473100FFFF
- FF00FFFFFF00C7B2A300B7A29300DDC5C20027A5E900C8B3A400FFFFFF00FFFF
- FF00B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A2
- 9300B7A29300B7A29300B7A29300B7A29300E4D7CF00E1D2C900D1BEB10027A5
- E900DDC5C200B7A2930069473100FFFFFF00FFFFFF00C7B2A300DDC5C20027A5
- E90027A5E900C8B3A400FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FCFBF900F9F6F400F6F2EF00F3EDE900F0E8E400EDE4DF00EAE0
- D900E7DBD400E4D7CF00D1BEB10027A5E90027A5E900B7A2930069473100FFFF
- FF00FFFFFF00FFFFFF00C7B2A300DDC5C20047B6FF00C8B3A400FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCFBF900F9F6
- F400F6F2EF00F3EDE900F0E8E400EDE4DF00EAE0D900E7DBD400D0BDB00047B6
- FF00B7A2930069473100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C7B2
- A300DDC5C200C8B3A400C8B3A400C8B3A400C8B3A400C8B3A400C8B3A400C9B4
- A500C9B5A600CAB6A700CBB6A800CBB7A900CCB8AA00CCB9AB00CDB9AB00CEBA
- AC00CEBBAD00CFBBAE00CFBCAF00BCA7980069473100FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C7B2A300DDC5C200DBF3FA00DBF3
- FA00DBF3FA00D4F0FA00C7EBFB00B9E5FB00ACDFFB009ED9FC0091D4FC0082CE
- FD0073C8FD0064C2FE0055BCFE0047B6FF0047B6FF0047B6FF00BBA697007353
- 3E00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00C7B2A300EEE0E000DBF3FA00DBF3FA00DBF3FA00D4F0FA00C7EB
- FB00B9E5FB00B2E2FB00A5DCFC0097D6FC0089D1FC007BCBFD006CC5FD005DBF
- FE004EB9FE00B7A2930069473100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C7B2A300EEE0
- E000DBF3FA00DBF3FA00DBF3FA00DBF3FA00CDEDFA00C0E8FB00B2E2FB00A5DC
- FC0097D6FC0089D1FC007BCBFD006CC5FD00B7A2930069473100FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00C7B2A300EEE0E000DBF3FA00DBF3FA00DBF3
- FA00DBF3FA00CDEDFA00C0E8FB00B2E2FB00A5DCFC0097D6FC0089D1FC00B7A2
- 930069473100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00C7B2A300EEE0E000DBF3FA00DBF3FA00DBF3FA00DBF3FA00CDEDFA00C0E8
- FB00B2E2FB00A5DCFC00B7A2930069473100FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C7B2A300EEE0E000EEE0
- E000EEE0E000EEE0E000EEE0E000EEE0E000DDC5C200B7A2930069473100FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00C7B2A300C7B2A300C7B2A300C7B2A300C7B2A300C7B2
- A300C7B2A300C7B2A300FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00}
- end
- end
- object gbPara: TGroupBox
- Left = 8
- Top = 40
- Width = 361
- Height = 81
- Caption = 'Para'
- TabOrder = 1
- object rbUsuario: TRadioButton
- Left = 40
- Top = 24
- Width = 80
- Height = 17
- Caption = 'Usu'#225'rio :'
- Checked = True
- TabOrder = 0
- TabStop = True
- OnClick = rbUsuarioClick
- end
- object rbTodos: TRadioButton
- Left = 40
- Top = 56
- Width = 113
- Height = 17
- Caption = 'Todos'
- TabOrder = 1
- OnClick = rbUsuarioClick
- end
- object dbUsuario: TDBLookupComboBox
- Left = 120
- Top = 18
- Width = 217
- Height = 21
- BevelEdges = []
- BevelInner = bvNone
- BevelOuter = bvNone
- KeyField = 'IdUser'
- ListField = 'Nome'
- ListSource = DataSource1
- TabOrder = 2
- OnCloseUp = dbUsuarioCloseUp
- end
- end
- object gbMensagem: TGroupBox
- Left = 8
- Top = 128
- Width = 361
- Height = 201
- Caption = 'Mensagem'
- TabOrder = 2
- object lbAssunto: TLabel
- Left = 24
- Top = 24
- Width = 38
- Height = 13
- Caption = 'Assunto'
- end
- object lbMensagem: TLabel
- Left = 24
- Top = 72
- Width = 52
- Height = 13
- Caption = 'Mensagem'
- end
- object EditAssunto: TEdit
- Left = 24
- Top = 40
- Width = 313
- Height = 21
- MaxLength = 50
- TabOrder = 0
- end
- object MemoMsg: TMemo
- Left = 24
- Top = 88
- Width = 313
- Height = 97
- MaxLength = 255
- ScrollBars = ssBoth
- TabOrder = 1
- end
- end
- object btEnvia: TBitBtn
- Left = 93
- Top = 336
- Width = 79
- Height = 25
- Caption = '&Enviar'
- TabOrder = 3
- OnClick = btEnviaClick
- Glyph.Data = {
- 42040000424D4204000000000000420000002800000020000000100000000100
- 1000030000000004000000000000000000000000000000000000007C0000E003
- 00001F0000001F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C45261F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C94521F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C4526862645261F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C9452D65A94521F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C673286268626862645261F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7CD65AD65AD65AD65A94521F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C45268626C62A862E862645261F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C9452D65AF75ED65AD65A94521F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C47328626C62A252E252EC62A8822C62A1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7CB556D65AF75EB556B556F75ED65AF75E1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C4526C62A252E1F7C1F7C252EC62A45261F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C9452F75EB5561F7C1F7CB556F75E94521F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C252E1F7C1F7C1F7C1F7C252EC62A45261F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7CB5561F7C1F7C1F7C1F7CB556F75E94521F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C252EC62AC62A1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CB556F75EF75E1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C252E86261F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CB556D65A1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C252E86261F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CB556D65A1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C252E8626
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CB556D65A
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C252E
- 86261F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CB556
- D65A1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 252E86261F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- B556D65A1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C252E1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7CB5561F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C}
- NumGlyphs = 2
- end
- object btCancela: TBitBtn
- Left = 205
- Top = 336
- Width = 79
- Height = 25
- Cancel = True
- Caption = 'Cancelar'
- TabOrder = 4
- OnClick = btCancelaClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFC066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40198E40198E40198E40
- 198E40198E4019FF00FF8888886969696969696969696969696969696A6A6A69
- 69696969696969696A6A6A6969696969696A6A6A696969FF00FFC06614F9F5F4
- C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2
- A5C3B2A58E4019FF00FF888888F8F8F8C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6
- C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6696969FF00FFC06614FCFAFA
- F9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCDFD0C7DFD0C7DCCB
- C1C3B2A58E4019FF00FF888888FCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEAEAEAE7
- E7E7E4E4E4E0E0E0DDDDDDDDDDDDD9D9D9C6C6C6696969FF00FFC06614FFFFFF
- FCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCE2D4CCDFD0
- C7C3B2A58E4019FF00FF888888FFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEA
- EAEAE7E7E7E3E3E3E0E0E0E0E0E0DDDDDDC6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E5D9D1E2D4
- CCC3B2A58E4019FF00FF888888FFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EE
- EEEEEAEAEAE7E7E7E3E3E3E3E3E3E0E0E0C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E9DED7E5D9
- D1C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1
- F1F1EEEEEEEAEAEAE7E7E7E7E7E7E3E3E3C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F2EBE8EEE6E2ECE2DCECE2DCE9DE
- D7C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFBF7
- F7F7F1F1F1EEEEEEEAEAEAEAEAEAE7E7E7C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF0E9E5F0E9E5EDE4
- DFC3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFB
- FBFBF7F7F7F3F3F3F0F0F0F0F0F0ECECECC6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF4EEEBF0E9
- E5C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
- FEFEFBFBFBF7F7F7F3F3F3F3F3F3F0F0F0C6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F78A9DE92546CD1D3F
- C9193BC8183BC88194E1898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFEFEFEFAFAFAC6C6C6979797929292929292929292C0C0C0C06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFD3355DBF2F4FD4E6B
- D94A67D8F2F4FD183BC8888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFEFEFEA1A1A1FAFAFAAAAAAAA8A8A8F9F9F9929292C066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40193C5CDD8296E4D9DF
- F9CDD5F74C69D81A3CC88888886969696969696969696A6A6A69696969696969
- 6969696969696969A5A5A5C1C1C1EDEDEDE7E7E7A8A8A8929292C06614ED9733
- ED9733ED9733ED9733ED9733ED9733ED9733F6CA9AED97334563E16980E2E4E8
- FBD8DEF9516DDA1F40C9888888ACACACACACACADADADADADADADADADACACACAD
- ADADD5D5D5ADADADA8A8A8B6B6B6F2F2F2ECECECABABAB939393F810DCC06614
- C06614C06614C06614C06614C06614C06614C06614C066144D6AE3F2F4FD667D
- E26E85E2F2F4FD2749CEEF14EF88888888888888888888888889898988888888
- 8888888888898989ACACACF9F9F9B5B5B5B9B9B9F9F9F9989898FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF9AABEF4D6AE34563
- E14463DF3E5EDE8FA2EBFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFCFCFCFACACACA8A8A8A8A8A8A6A6A6C9C9C9}
- NumGlyphs = 2
- end
- object DataSource1: TDataSource
- Left = 144
- Top = 96
- end
-end
diff --git a/internal/2.31RC1/1/Source/EnvMsgForm_U.pas b/internal/2.31RC1/1/Source/EnvMsgForm_U.pas
deleted file mode 100644
index a915610..0000000
--- a/internal/2.31RC1/1/Source/EnvMsgForm_U.pas
+++ /dev/null
@@ -1,116 +0,0 @@
-unit EnvMsgForm_U;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
-{$IFDEF DELPHI5_UP}
- Variants,
-{$ENDIF}
- Buttons,
- Classes,
- Controls,
- DB,
- DBCtrls,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Messages,
- StdCtrls,
- SysUtils,
- UCBase,
- Windows;
-
-type
- TEnvMsgForm = class(TForm)
- Panel1: TPanel;
- lbTitulo: TLabel;
- Image1: TImage;
- gbPara: TGroupBox;
- rbUsuario: TRadioButton;
- rbTodos: TRadioButton;
- dbUsuario: TDBLookupComboBox;
- gbMensagem: TGroupBox;
- lbAssunto: TLabel;
- lbMensagem: TLabel;
- EditAssunto: TEdit;
- MemoMsg: TMemo;
- btEnvia: TBitBtn;
- btCancela: TBitBtn;
- DataSource1: TDataSource;
- procedure btCancelaClick(Sender: TObject);
- procedure dbUsuarioCloseUp(Sender: TObject);
- procedure rbUsuarioClick(Sender: TObject);
- procedure btEnviaClick(Sender: TObject);
- procedure FormCreate(Sender: TObject); //added by fduenas
- private
- { Private declarations }
- public
- { Public declarations }
- end;
-
-var
- EnvMsgForm: TEnvMsgForm;
-
-implementation
-
-uses
- MsgsForm_U,
- UCMessages;
-
-{$R *.dfm}
-
-procedure TEnvMsgForm.btCancelaClick(Sender: TObject);
-begin
- Close;
-end;
-
-procedure TEnvMsgForm.dbUsuarioCloseUp(Sender: TObject);
-begin
- if dbUsuario.KeyValue <> null then
- rbUsuario.Checked := True;
-end;
-
-procedure TEnvMsgForm.rbUsuarioClick(Sender: TObject);
-begin
- if not rbUsuario.Checked then
- dbUsuario.KeyValue := null;
-end;
-
-procedure TEnvMsgForm.btEnviaClick(Sender: TObject);
-begin
- if rbUsuario.Checked then
- TUCApplicationMessage(MsgsForm.Owner).SendAppMessage(MsgsForm.DSUsuarios.FieldByName('IdUser').AsInteger, EditAssunto.Text, MemoMsg.Text)
- else
- with MsgsForm.DSUsuarios do
- begin
- First;
- while not EOF do
- begin
- TUCApplicationMessage(MsgsForm.Owner).SendAppMessage(FieldByName('IdUser').AsInteger, EditAssunto.Text, MemoMsg.Text);
- Next;
- end;
- end;
- Close;
-end;
-
-procedure TEnvMsgForm.FormCreate(Sender: TObject);
-begin
- with TUCApplicationMessage(Owner).UserControl.UserSettings.AppMessages do
- begin
- Self.Caption := MsgSend_WindowCaption;
- lbTitulo.Caption := MsgSend_Title;
- gbpara.Caption := MsgSend_GroupTo;
- rbUsuario.Caption := MsgSend_RadioUser;
- rbTodos.Caption := MsgSend_RadioAll;
- gbMensagem.Caption := MsgSend_GroupMessage;
- lbAssunto.Caption := MsgSend_LabelSubject;
- lbMensagem.Caption := MsgSend_LabelMessageText;
- btCancela.Caption := MsgSend_BtCancel;
- btEnvia.Caption := MsgSend_BtSend;
- end;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/IncPerfil_U.dfm b/internal/2.31RC1/1/Source/IncPerfil_U.dfm
deleted file mode 100644
index 843b1a7..0000000
--- a/internal/2.31RC1/1/Source/IncPerfil_U.dfm
+++ /dev/null
@@ -1,307 +0,0 @@
-object frmIncluirPerfil: TfrmIncluirPerfil
- Left = 232
- Top = 319
- BorderStyle = bsDialog
- Caption = 'Perfil de Usu'#225'rios'
- ClientHeight = 132
- ClientWidth = 434
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- OldCreateOrder = False
- PixelsPerInch = 96
- TextHeight = 13
- object Panel1: TPanel
- Left = 0
- Top = 0
- Width = 434
- Height = 35
- Align = alTop
- BevelOuter = bvNone
- Color = clWhite
- TabOrder = 1
- object LbDescricao: TLabel
- Left = 45
- Top = 10
- Width = 132
- Height = 18
- Caption = 'Adicionar Perfil'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -16
- Font.Name = 'Verdana'
- Font.Style = [fsBold]
- ParentFont = False
- end
- object Image1: TImage
- Left = 8
- Top = 4
- Width = 28
- Height = 28
- AutoSize = True
- Picture.Data = {
- 07544269746D6170760C0000424D760C00000000000036000000280000001C00
- 00001C0000000100200000000000400C00000000000000000000000000000000
- 0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00AB937F00755944007559440075594400755A4500755A4500755A4600775B
- 4700775C4700785C4700785C4700795D48007A5D49007B5E49007C5F4A007C60
- 4A007D604B007E614C007E614C00795B4500FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00AB937F00755D4C00795E4B007A5F4C007A5F
- 4C007C624F007F6351008266530085695500886C59008B705B008B705B008E72
- 5E009176610094786500987C67009B7E6A009D806D009F836E00A0836E009979
- 63005E412D00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF007259
- 47007F624D0080634F00836652008366520085695500896C58008C6F5A009073
- 5E0093776200977B6600977B66009A7E69009F826D00A2867100A6897400A98C
- 7800AC8F7A00B1937F00B7998200997962005D402C00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00A089790097827300826A5800826A5800826A5800826A
- 5800826A5800826A5800826A5800826A5800826A5800826A5800826A5800826A
- 5800826A5800826A5800826A5800826A5800826A5800826A5800B2947E009979
- 62005E412D00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BFAFA400F7EB
- E500FEF7F200FFF7F300FFF3ED00FFF3ED00FFEEE500FFEADE00FEE4D600FDE0
- CF00FEDDCB00FEDCC800FEDCC800FFD9C300FFD6BF00FFD4BB00FFD0B500FFCF
- B300FEC7A800DAA88B00B79279009D7C65005F422E00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00C4B5AB00E7DBD200FFF5F000FFF5F000FFF5EF00FFF5
- EF00357821000060000000600000006000000060000000600000006000000060
- 00000060000000600000FFD5BC00FFD2B700FECCAF00F6BF9E00C09D8600A07E
- 660060432F00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00F3F0EE00BFAF
- A400FFF6F200FFF6F200FFF5F000357821003A6D23003A6D2300347A20002F85
- 1E002C8C1D002B8E1D002C8A1D0030821F00367721003C69240000600000FFD5
- BC00FFD0B600FDC9AB00C29C880092735E0061453100FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00BFAFA400FEF9FA00FFFAF800FFF8F5003578
- 21003A6D2300357821002E871E0028941C001A8E130013850E00249919002A90
- 1C0030821F003773220000600000FFD6BF00FFD4BC00FFD1B600C4A089009574
- 5F0063463200FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BFAF
- A400FEF9FA00FFFBF900FFF9F6006DAB6D0035782100327F1F002A901C001F99
- 16000A7A080008770700189C1200249C1A002C8B1D00347A200000780000FFDC
- C900FFD8C300FFD6BD00C6A08B009C7A640064483300FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00BFAFA400FEF9FA00FFFCFB00FFFAF800B8D8
- B8003578210030821F0027941A0010850D00218120006DAB6D00138D110022A2
- 19002A8F1C0000600000FFE2D200FFE0CF00FFDDC900FFD9C300C9A38E00A581
- 6A0066493500FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BFAF
- A400FEFBFD00FFFDFC00FFFBFA00FFFBFA006DAB6D003578210026911B00157D
- 1300BAD7B900C6DEC600327F34002096170000600000FFE9DD00FFE6D800FFE4
- D400FFE0CE00FFDCC900CDA59000AE887200684B3700FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00BFAFA400FEFBFD00FFFDFC00FFFCFA00FFFC
- FA00FFFBFA006DAB6D0035782100006890000068900000689000006890002361
- 4C00FFEDE400FFECE100FFE9DD00FFE6D800FFE3D300FFDFCD00CEA89300B68E
- 7700694D3800FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BFAF
- A400FEFBFD00FFFDFC00FFFCFB00FFFCFB00FFFCFB00FFFBFA00006890004293
- D1004193D0003F90CE003C8CCA0000689000FFEFE600FFECE300FFEADE00FFE8
- DB00FFE5D700FFE3D200D3AB9600BC927C006B4E3A00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00BFAFA400FEFBFD00FFFDFC00FFFDFC00FFFD
- FC00FFFCFB00007FB4004899D400499BD800499AD7004697D5004293D1003D8E
- CB00007FB400FFEDE300FFEBDF00FFEADD00FFE8DB00FFE5D700D6AE9900C197
- 80006D503C00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BFAF
- A400FEFBFD00FFFDFC00FFFDFC00FFFDFC00FFFDFC00006890004EA0DD0051A2
- DF005CA9DD004C9EDB004899D6004192D00000689000FFEFE500FFECE100FFEC
- E000FFEBDF00FFE8DA00DBAF9A00C79C85006E513E00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00BFAFA400FEFBFD00FFFDFC00FFFDFC00FFFD
- FC00FFFDFC000068900055A7E2005CA9DD006DB9EB005CA9DD004B9DDA004596
- D30000689000FFF2EA00FFEFE500FFEDE300FFECE100FFEADE00DCB49D00CCA0
- 8A006F533F00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BFAF
- A400FEFBFD00FFFDFC00FFFDFC00FFFDFC00FFFDFC0000689000427EA400427E
- A4005CA9DD0055A7E3004D9FDC004798D50000689000FFF6F000FFF3EC00FFF1
- E900FFEFE600FFEDE200DFB5A000D2A48E0071544000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00BFAFA400FEFBFD00FFFDFC00FFFDFC00FFFD
- FC00FFFDFC00007FB400427EA400427EA400427EA400427EA4004998D200427E
- A400007FB400FFF7F400FFF6F100FFF4EE00FFF1EA00FFEEE500E1B9A200D6A8
- 910072554200FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BFAF
- A400FEFBFD00FFFDFC00FFFDFC00FFFDFC00FFFDFC00FFFDFC0000689000427E
- A400427EA400427EA400427EA40000689000FFFAF800FFF9F600FFF7F400FFF5
- F000FFF3ED00FFF1E800E5B9A400DAAB940073574300FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00BFAFA400FEFBFD00FFFDFC00FFFDFC00FFFD
- FC00FFFDFC00FFFDFC00FFFDFC00007FB4000068900000689000007FB400FFFA
- F800FFF9F600FFF7F400FFF6F100FFF4EE00FFF1EA00FFEEE500E1B9A200D6A8
- 910072554200FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BFAF
- A400FEFBFD00FFFDFC00FFFDFC00FFFDFC00FFFDFC00FFFDFC00FFFDFC00FFFD
- FC00FFFCFC00FFFCFB00FFFCFB00FFFBFA00FFFAF800FFF9F600FFF7F400FFF5
- F000FFF3ED00FFF1E800E5B9A400DAAB940073574300FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00BFAFA400BFAFA400BFAFA400BFAFA400BFAF
- A400BFAFA400BFAFA400BFAFA400BFAFA400BFAFA400BFAFA400BFAFA400BFAF
- A400BFAFA400BFAFA400BFAFA400BFAFA400BFAFA400BFAFA400BFAFA400C19C
- 8B005D524D00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0041B4
- F30041B4F30041B4F30041B4F30041B4F30041B3F30041B1F30040AEF2003FAB
- F1003EA8F0003EA6F0003EA6F0003EA3F0003DA0EF003D9DEE003C9AED003C98
- ED003C98ED003C98ED00227BD2005B6674004F545A00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0041B4F300BEE5FB00BEE5FB00BEE5FB00BEE5
- FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5
- FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00227BD2005B66
- 74004F545A00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0041B4
- F300BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5
- FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5FB00BEE5
- FB00BEE5FB00BEE5FB00227BD2005B6674004F545A00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0041B4F30041B4F30041B4F30041B4F30041B4
- F30041B4F30041B4F30041B4F30041B4F30041B2F30040AFF20040AFF2003FAC
- F1003FAAF1003EA7F0003EA4F0003EA2F0003D9FEF003C9CEE00227BD2005B66
- 74004F545A00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00}
- end
- end
- object Panel3: TPanel
- Left = 337
- Top = 35
- Width = 97
- Height = 97
- Align = alRight
- BevelOuter = bvNone
- TabOrder = 2
- object btGravar: TBitBtn
- Left = 8
- Top = 17
- Width = 81
- Height = 25
- Caption = '&Gravar'
- TabOrder = 0
- OnClick = btGravarClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- 6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D42
- 2F6D422F6D422F6D422FFF00FFFF00FF69696969696969696969696969696969
- 6969696969696969696969696969696969696969696969696969FF00FFCE726F
- D19792CB8E8A715A48C0B2ABC4BCB8CAC1BCCAC1BCCAC1BCCAC1BC8C76679443
- 409443409443406D422FFF00FF9A9A9AB4B4B4AEAEAE7D7D7DC6C6C6CECECED2
- D2D2D2D2D2D2D2D2D2D2D2969696707070707070707070696969FF00FFCE726F
- D79F9BD19792715A482E1F185F5046FFFFFFFFFFFFFFFFFFF0E4DE8C76679747
- 449443409443406D422FFF00FF9A9A9ABBBBBBB5B5B57C7C7C434343747474FF
- FFFFFFFFFFFFFFFFECECEC969696747474707070707070696969FF00FFCE726F
- DDA8A3D79F9B715A480A0A0A36241BFFFFFFF7F1EEF0E4DEE1CABD8C76679E50
- 4D9747449443406D422FFF00FF9A9A9AC1C1C1BBBBBB7D7D7D2A2A2A4A4A4AFF
- FFFFF6F6F6ECECECD8D8D89595957C7C7C757575707070696969FF00FFCE726F
- E3B0ABDDA8A3715A48715A48715A48715A48715A48715A48715A48715A48A459
- 569E504D9747446D422FFF00FF9A9A9AC8C8C8C1C1C17D7D7D7D7D7D7D7D7D7C
- 7C7C7D7D7D7D7D7D7D7D7D7D7D7D8383837C7C7C747474696969FF00FFCE726F
- EDBDB8E7B5B0E0ACA7DAA49FD49B97CB8E8AC58682BF7E79B97571B26B68AB62
- 5FA459569E504D6D422FFF00FF9A9A9AD2D2D2CCCCCCC4C4C4BEBEBEB8B8B8AE
- AEAEA8A8A8A1A1A19A9A9A9292928B8B8B8484847B7B7B696969FF00FFCE726F
- F0C1BCEDBDB8E7B5B0E0ACA7DAA49FD49B97CE938EC88A86C2827EBC7975B26B
- 68AB625FA459566D422FFF00FF9A9A9AD4D4D4D2D2D2CBCBCBC4C4C4BFBFBFB8
- B8B8B1B1B1ABABABA5A5A59D9D9D9292928B8B8B848484696969FF00FFCE726F
- F0C1BCF0C1BCC8635CC8635CC8635CC8635CC8635CC8635CC8635CC8635CC863
- 5CB5706CAE67636D422FFF00FF9A9A9AD4D4D4D5D5D58E8E8E8E8E8E8E8E8E8E
- 8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9696968E8E8E696969FF00FFCE726F
- F0C1BCC8635CFAF5F3F6EEEAF2E7E2EEE2DAEBDCD3E7D6CBE4D0C4E1CABDE1CA
- BDC8635CB5706C6D422FFF00FF9A9A9AD4D4D48E8E8EF8F8F8F3F3F3EEEEEEEA
- EAEAE6E6E6E1E1E1DDDDDDD8D8D8D8D8D88E8E8E969696676767FF00FFCE726F
- F0C1BCC8635CFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9CFE6D3C8E2CD
- C0C8635CBC79756D422FFF00FF9A9A9AD5D5D58E8E8EFFFFFFFAFAFAF6F6F6F1
- F1F1ECECECE7E7E7E3E3E3DFDFDFDADADA8E8E8E9D9D9D696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9CFE6D3
- C8C8635CC2827E6D422FFF00FF9A9A9AD4D4D48D8D8DFFFFFFFFFFFFFBFBFBF6
- F6F6F0F0F0ECECECE7E7E7E3E3E3DFDFDF8E8E8EA5A5A5696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9
- CFC8635CC88A866D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFB
- FBFBF5F5F5F1F1F1ECECECE8E8E8E3E3E38E8E8EABABAB696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDF
- D6C8635CD197926D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFBFBFBF6F6F6F1F1F1ECECECE7E7E78E8E8EB5B5B5696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4
- DEC8635C0A0A0A6D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFBFBFBF6F6F6F1F1F1ECECEC8E8E8E2A2A2A676767FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EA
- E6C8635CC88A866D422FFF00FF9A9A9AD5D5D58E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFBFBFBF5F5F5F1F1F18E8E8EABABAB696969FF00FFCE726F
- CE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE72
- 6FCE726FCE726FCE726FFF00FF9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
- 9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A}
- NumGlyphs = 2
- end
- object btCancela: TBitBtn
- Left = 8
- Top = 57
- Width = 81
- Height = 25
- Caption = '&Cancelar'
- TabOrder = 1
- OnClick = btCancelaClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFC066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40198E40198E40198E40
- 198E40198E4019FF00FF8888886969696969696969696969696969696A6A6A69
- 69696969696969696A6A6A6969696969696A6A6A696969FF00FFC06614F9F5F4
- C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2
- A5C3B2A58E4019FF00FF888888F8F8F8C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6
- C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6696969FF00FFC06614FCFAFA
- F9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCDFD0C7DFD0C7DCCB
- C1C3B2A58E4019FF00FF888888FCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEAEAEAE7
- E7E7E4E4E4E0E0E0DDDDDDDDDDDDD9D9D9C6C6C6696969FF00FFC06614FFFFFF
- FCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCE2D4CCDFD0
- C7C3B2A58E4019FF00FF888888FFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEA
- EAEAE7E7E7E3E3E3E0E0E0E0E0E0DDDDDDC6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E5D9D1E2D4
- CCC3B2A58E4019FF00FF888888FFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EE
- EEEEEAEAEAE7E7E7E3E3E3E3E3E3E0E0E0C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E9DED7E5D9
- D1C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1
- F1F1EEEEEEEAEAEAE7E7E7E7E7E7E3E3E3C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F2EBE8EEE6E2ECE2DCECE2DCE9DE
- D7C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFBF7
- F7F7F1F1F1EEEEEEEAEAEAEAEAEAE7E7E7C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF0E9E5F0E9E5EDE4
- DFC3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFB
- FBFBF7F7F7F3F3F3F0F0F0F0F0F0ECECECC6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF4EEEBF0E9
- E5C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
- FEFEFBFBFBF7F7F7F3F3F3F3F3F3F0F0F0C6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F78A9DE92546CD1D3F
- C9193BC8183BC88194E1898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFEFEFEFAFAFAC6C6C6979797929292929292929292C0C0C0C06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFD3355DBF2F4FD4E6B
- D94A67D8F2F4FD183BC8888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFEFEFEA1A1A1FAFAFAAAAAAAA8A8A8F9F9F9929292C066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40193C5CDD8296E4D9DF
- F9CDD5F74C69D81A3CC88888886969696969696969696A6A6A69696969696969
- 6969696969696969A5A5A5C1C1C1EDEDEDE7E7E7A8A8A8929292C06614ED9733
- ED9733ED9733ED9733ED9733ED9733ED9733F6CA9AED97334563E16980E2E4E8
- FBD8DEF9516DDA1F40C9888888ACACACACACACADADADADADADADADADACACACAD
- ADADD5D5D5ADADADA8A8A8B6B6B6F2F2F2ECECECABABAB939393F810DCC06614
- C06614C06614C06614C06614C06614C06614C06614C066144D6AE3F2F4FD667D
- E26E85E2F2F4FD2749CEEF14EF88888888888888888888888889898988888888
- 8888888888898989ACACACF9F9F9B5B5B5B9B9B9F9F9F9989898FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF9AABEF4D6AE34563
- E14463DF3E5EDE8FA2EBFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFCFCFCFACACACA8A8A8A8A8A8A6A6A6C9C9C9}
- NumGlyphs = 2
- end
- end
- object Panel2: TPanel
- Left = 0
- Top = 35
- Width = 337
- Height = 97
- Align = alClient
- BevelInner = bvRaised
- BevelOuter = bvLowered
- TabOrder = 0
- object lbNome: TLabel
- Left = 15
- Top = 42
- Width = 54
- Height = 13
- Caption = 'Descri'#231#227'o :'
- end
- object EditDescricao: TEdit
- Left = 73
- Top = 39
- Width = 249
- Height = 21
- Ctl3D = True
- MaxLength = 30
- ParentCtl3D = False
- TabOrder = 0
- end
- end
-end
diff --git a/internal/2.31RC1/1/Source/IncPerfil_U.pas b/internal/2.31RC1/1/Source/IncPerfil_U.pas
deleted file mode 100644
index 3b1fac8..0000000
--- a/internal/2.31RC1/1/Source/IncPerfil_U.pas
+++ /dev/null
@@ -1,111 +0,0 @@
-unit IncPerfil_U;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
-{.$IFDEF DELPHI5_UP}
- Variants,
-{.$ENDIF}
- Buttons,
- Classes,
- Controls,
- DB,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Messages,
- StdCtrls,
- SysUtils,
- UCBase,
- Windows;
-
-type
- TfrmIncluirPerfil = class(TForm)
- Panel1: TPanel;
- LbDescricao: TLabel;
- Image1: TImage;
- Panel3: TPanel;
- btGravar: TBitBtn;
- btCancela: TBitBtn;
- Panel2: TPanel;
- lbNome: TLabel;
- EditDescricao: TEdit;
- procedure btCancelaClick(Sender: TObject);
- procedure btGravarClick(Sender: TObject);
- private
- function GetNewIdUser: Integer;
- { Private declarations }
- public
- FAltera: Boolean;
- FUserControl: TUserControl;
- FNewIdUser : Integer;
- FDataSetPerfilUsuario : TDataSet;
- end;
-
-implementation
-
-{$R *.dfm}
-
-procedure TfrmIncluirPerfil.btCancelaClick(Sender: TObject);
-begin
- Close;
-end;
-
-procedure TfrmIncluirPerfil.btGravarClick(Sender: TObject);
-var
- FProfile: String;
-begin
- btGravar.Enabled := False;
- with FUserControl do
- if not FAltera then
- begin // inclui perfil
- FNewIdUser := GetNewIdUser;
- FProfile := EditDescricao.Text;
- if Assigned(onAddProfile) then
- onAddProfile(TObject(Self.Owner.Owner), FProfile);
-
-
- DataConnector.UCExecSQL(Format('INSERT INTO %s(%s, %s, %s) Values(%d,%s,%s)',
- [TableUsers.TableName,
- TableUsers.FieldUserID,
- TableUsers.FieldUserName,
- TableUsers.FieldTypeRec,
- FNewIdUser,
- QuotedStr(FProfile),
- QuotedStr('P')]));
-
- end
- else
- begin // alterar perfil
- //FNewIdUser := TfrmCadastrarPerfil(Self.Owner).FDataSetPerfilUsuario.FieldByName('IdUser').AsInteger;
- FProfile := EditDescricao.Text;
-
- DataConnector.UCExecSQL(Format('UPDATE %s SET %s = %s WHERE %s = %d',
- [TableUsers.TableName,
- TableUsers.FieldUserName,
- QuotedStr(FProfile),
- TableUsers.FieldUserID,
- FNewIdUser]));
- end;
- FDataSetPerfilUsuario.Close;
- FDataSetPerfilUsuario.Open;
- FDataSetPerfilUsuario.Locate('IDUser', FNewIdUser, []);
- Close;
-end;
-
-function TfrmIncluirPerfil.GetNewIdUser: Integer;
-var
- TempDs: TDataset;
-begin
- with FUserControl do
- TempDS := DataConnector.UCGetSQLDataSet('SELECT ' + TableUsers.FieldUserID + ' as MaxUserID from ' + TableUsers.TableName +
- ' ORDER BY ' + TableUsers.FieldUserID + ' DESC');
- Result := TempDs.FieldByName('MaxUserID').AsInteger + 1;
- TempDS.Close;
- FreeAndNil(TempDS);
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/IncUser_U.dfm b/internal/2.31RC1/1/Source/IncUser_U.dfm
deleted file mode 100644
index d5352a9..0000000
--- a/internal/2.31RC1/1/Source/IncUser_U.dfm
+++ /dev/null
@@ -1,485 +0,0 @@
-object frmIncluirUsuario: TfrmIncluirUsuario
- Left = 323
- Top = 236
- BorderStyle = bsDialog
- Caption = 'Cadastro de Usu'#225'rios'
- ClientHeight = 281
- ClientWidth = 472
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- OldCreateOrder = False
- OnClose = FormClose
- OnCreate = FormCreate
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object Panel1: TPanel
- Left = 0
- Top = 0
- Width = 472
- Height = 35
- Align = alTop
- BevelOuter = bvNone
- Color = clWhite
- TabOrder = 2
- object LbDescricao: TLabel
- Left = 46
- Top = 9
- Width = 153
- Height = 18
- Caption = 'Adicionar Usu'#225'rio'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -16
- Font.Name = 'Verdana'
- Font.Style = [fsBold]
- ParentFont = False
- end
- object Image1: TImage
- Left = 8
- Top = 4
- Width = 28
- Height = 28
- AutoSize = True
- Picture.Data = {
- 07544269746D6170760C0000424D760C00000000000036000000280000001C00
- 00001C0000000100200000000000400C00000000000000000000000000000000
- 0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FEFEFE00F9F9
- F900F1F1F100EAEAEA00E3E3E300E0E0E000DEDEDE00DFDFDF00E1E1E100E4E4
- E400E8E8E800ECECEC00F0F0F000F5F5F500FAFAFA00FEFEFE00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00F6F6F600C5C7C5008E9F91006E8A70005E815C00527B4F004E7C4A004B7C
- 48004A7C47004B7B48004C7C4A004E7B4C0050795000557854005B7A5C00677F
- 6A007C897E00A2A2A200D4D4D400FAFAFA00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00F2F4F30074967100487638004E7C35004E83
- 34004B893300488E31004592300044962F0043972F0043982F0043972F004494
- 300047903100498C32004C863400507F35004E7A360047703900526C5200A9A9
- A900FAFAFA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0094B3
- 910058743900537B36004E8334004A8A33004690310043962F00409B2E003E9F
- 2D003DA12D003DA12D003DA02D003F9D2E0042992F0045933000488D32004C86
- 3400517F350055773700567039005A725A00E6E6E600FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00688D5B0055783700508035004B8833004790
- 310043982F003F9E2D003BA42C0039A82B0037AB2A0037AB2A0038AA2B003AA6
- 2C003DA12D00419B2E0045943000498C32004D843400527C3600577338005472
- 4D00DEDEDE00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005E87
- 5100527C36004D843400488D320044962F003F9E2E003BA52C0037AC2A0034B1
- 290032B4280032B5280033B3280035AE290039A82B003DA12D00419A2F004691
- 31004B893300508035005577370056775100E4E4E400FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00729A6800507F35004B88330046913100419A
- 2E003CA32C0037AB2A0033B328002FB927002DBE25002CBF25002EBC260031B6
- 270035AF29003AA72B003F9E2D0044953000498C32004E833400537A37006F8C
- 6E00F2F2F200FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00A5C6
- A700508136004A8A3300449330003F9D2E003AA62B0035AF290030B827002BBF
- 250035B237002BBB2B0029C324002DBC260033B4280037AB2A003DA12D004298
- 2F00478F31004D8534004A7B3600B0BCB200FDFDFD00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00F6FAF70058904D00498B3200449530003E9E
- 2D0039A82B0034B228002EBB26004BA34E00DEE0DF00DDEADF0044BB47002BC0
- 250031B6270036AD2A003CA32C00419A2F00479031004C86340072997100F1F1
- F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00D4E4D6004A8E3D00449530003E9E2D0039A82B0034B129002FA92C00A4B0
- A700E5E6E600E8E9E900CFDED20035B3340031B6270036AC2A003CA32C004199
- 2F00468F31005E955B00E5E7E500FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D2E4D4004E984500409C
- 2E003AA52C0035AE2900518B5400989B9F00798A96006B7F8C00757E85005B7F
- 5D002D9E240038A92A003DA12D0040952F0070A46F00E9ECEA00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00EDF4EF007BB57B003A9D2E00319131004F7C93004992
- C5004A98CF004897CE004592C800437DA400235437002C7F22004B9B4500AECA
- B000F9F9F900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00BDD3C7004C90AF0052A0D60052A0D500519FD4004F9DD3004C9AD1004997
- CE00438CBF0043636700C1C2C100FDFDFD00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00F5F6F70072ABD00056A4D90056A4D90056A4
- D90055A3D80054A2D70052A0D5004F9DD3004B99D000468DC000727D8400E7E7
- E700FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00A2C4
- DC005AA6DB005BA8DC005BA8DC005BA8DC005AA7DB0058A5DA0056A4D90053A1
- D600509ED4004B9AD0004C7FA500ADADAD00FDFDFD00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00E9EEF4005FA7D7005EABDF005FACE0005FACE0005FAC
- E0005EABDF005CA9DD005AA7DB0057A4D90054A2D700509ED4004A95CA007682
- 8B00F0F0F000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000C8F80000A6FF0060AC
- E00061AEE20063B0E30063B0E30063B0E30061AEE2005FACE0005DAADE005AA7
- DC0056A4D90053A1D6004E9DD3005B7E9600DADADA00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000C8F80000A6FF00FFFF
- FF00FFFFFF0000C8F80000A6FF0063B0E30065B2E50000A6FF0000C8F80067B4
- E60065B2E50063B0E30060ADE1005DAADE0059A7DB0055A3D800519FD5004F84
- A800C5C5C500FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF0000C8F80000A6FF009AEBF90000C8F80000A6FF009AEB
- F90000A6FF0000C8F8006CB8EA006BB7E90069B5E80066B3E60062AFE3005FAC
- E0005BA8DC0057A5DA0053A1D6004E8DBB00B8B8B800FEFEFE00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF009AEBF90000C8
- F8009AEBF90000A6FF0000A6FF0000A6FF0000C8F8009AEBF9006BB4E3006EBA
- EC006CB8EA0069B5E70064B1E40060ADE1005DAADE0059A6DB0054A2D7004E91
- C000B8B8B800FEFEFE00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF009AEBF9009AEBF90000F8F80000F8F8009AEB
- F9009AEBF9003F799D003E708F004B7FA00062A5D10069B5E60066B3E60062AF
- E2005EABDF0059A7DB0053A0D4004D88B200C4C4C400FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000A6FF0000A6FF0000A6FF0000A6
- FF0000F8F800FFFFFF00FFFFFF0000F8F80000A6FF0000A6FF0000A6FF0000A6
- FF003D719200437595005B9FCD0061AEE1005DAADE004C8FBC003B779D003C62
- 7A00D0D0D000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF0000C8F80000C8F80000C8F80000A6FF0000F8F8009AEBF900FFFFFF0000F8
- F80000C8F80000C8F80000C8F80000C8F8004E95C2004689B300386A8A00447B
- 9F004786B0003C7FA9003C81AC005C7A8B00EDEDED00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF009AEB
- F9009AEBF90000F8F80000F8F8009AEBF9009AEBF90062ABD9005FA8D6005BA3
- D100559DCA004E95C200478DB9003D7DA6003C7FAA003D82AD003C7CA200A3AA
- AE00FDFDFD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF009AEBF90000A6FF0000C8F80000C8F80000A6FF0000C8
- F80000A6FF009AEBF90067B1DF0062ABD9005BA3D000539AC7004B91BE004388
- B4003D82AD003C81AC0062849A00ECECEC00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000A6FF0000C8
- F8009AEBF90000C8F80000A6FF009AEBF90000C8F80000A6FF006EB9E80067B1
- DF005FA7D500569ECB004D94C100458BB7003D82AE005584A200D8DBDD00FEFE
- FE00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF0000A6FF0000C8F800FFFFFF00FFFFFF0000C8F80000A6FF00FFFF
- FF00D8E7F10000C8F80000A6FF0069B3E20061A9D70058A0CD004F96C2004689
- B5006994B000DCDFE300FEFEFE00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF0000C8F80000A6FF00FFFFFF00FFFFFF00F4F7FA00B2D0E30085B8
- D80070A9CE0071A6C70087AFC900C3D1DB00FAFAFA00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00}
- end
- end
- object Panel3: TPanel
- Left = 375
- Top = 35
- Width = 97
- Height = 246
- Align = alRight
- BevelOuter = bvNone
- TabOrder = 1
- object btGravar: TBitBtn
- Left = 8
- Top = 16
- Width = 81
- Height = 25
- Caption = '&Gravar'
- TabOrder = 0
- OnClick = btGravarClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- 6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D42
- 2F6D422F6D422F6D422FFF00FFFF00FF69696969696969696969696969696969
- 6969696969696969696969696969696969696969696969696969FF00FFCE726F
- D19792CB8E8A715A48C0B2ABC4BCB8CAC1BCCAC1BCCAC1BCCAC1BC8C76679443
- 409443409443406D422FFF00FF9A9A9AB4B4B4AEAEAE7D7D7DC6C6C6CECECED2
- D2D2D2D2D2D2D2D2D2D2D2969696707070707070707070696969FF00FFCE726F
- D79F9BD19792715A482E1F185F5046FFFFFFFFFFFFFFFFFFF0E4DE8C76679747
- 449443409443406D422FFF00FF9A9A9ABBBBBBB5B5B57C7C7C434343747474FF
- FFFFFFFFFFFFFFFFECECEC969696747474707070707070696969FF00FFCE726F
- DDA8A3D79F9B715A480A0A0A36241BFFFFFFF7F1EEF0E4DEE1CABD8C76679E50
- 4D9747449443406D422FFF00FF9A9A9AC1C1C1BBBBBB7D7D7D2A2A2A4A4A4AFF
- FFFFF6F6F6ECECECD8D8D89595957C7C7C757575707070696969FF00FFCE726F
- E3B0ABDDA8A3715A48715A48715A48715A48715A48715A48715A48715A48A459
- 569E504D9747446D422FFF00FF9A9A9AC8C8C8C1C1C17D7D7D7D7D7D7D7D7D7C
- 7C7C7D7D7D7D7D7D7D7D7D7D7D7D8383837C7C7C747474696969FF00FFCE726F
- EDBDB8E7B5B0E0ACA7DAA49FD49B97CB8E8AC58682BF7E79B97571B26B68AB62
- 5FA459569E504D6D422FFF00FF9A9A9AD2D2D2CCCCCCC4C4C4BEBEBEB8B8B8AE
- AEAEA8A8A8A1A1A19A9A9A9292928B8B8B8484847B7B7B696969FF00FFCE726F
- F0C1BCEDBDB8E7B5B0E0ACA7DAA49FD49B97CE938EC88A86C2827EBC7975B26B
- 68AB625FA459566D422FFF00FF9A9A9AD4D4D4D2D2D2CBCBCBC4C4C4BFBFBFB8
- B8B8B1B1B1ABABABA5A5A59D9D9D9292928B8B8B848484696969FF00FFCE726F
- F0C1BCF0C1BCC8635CC8635CC8635CC8635CC8635CC8635CC8635CC8635CC863
- 5CB5706CAE67636D422FFF00FF9A9A9AD4D4D4D5D5D58E8E8E8E8E8E8E8E8E8E
- 8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9696968E8E8E696969FF00FFCE726F
- F0C1BCC8635CFAF5F3F6EEEAF2E7E2EEE2DAEBDCD3E7D6CBE4D0C4E1CABDE1CA
- BDC8635CB5706C6D422FFF00FF9A9A9AD4D4D48E8E8EF8F8F8F3F3F3EEEEEEEA
- EAEAE6E6E6E1E1E1DDDDDDD8D8D8D8D8D88E8E8E969696676767FF00FFCE726F
- F0C1BCC8635CFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9CFE6D3C8E2CD
- C0C8635CBC79756D422FFF00FF9A9A9AD5D5D58E8E8EFFFFFFFAFAFAF6F6F6F1
- F1F1ECECECE7E7E7E3E3E3DFDFDFDADADA8E8E8E9D9D9D696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9CFE6D3
- C8C8635CC2827E6D422FFF00FF9A9A9AD4D4D48D8D8DFFFFFFFFFFFFFBFBFBF6
- F6F6F0F0F0ECECECE7E7E7E3E3E3DFDFDF8E8E8EA5A5A5696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9
- CFC8635CC88A866D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFB
- FBFBF5F5F5F1F1F1ECECECE8E8E8E3E3E38E8E8EABABAB696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDF
- D6C8635CD197926D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFBFBFBF6F6F6F1F1F1ECECECE7E7E78E8E8EB5B5B5696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4
- DEC8635C0A0A0A6D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFBFBFBF6F6F6F1F1F1ECECEC8E8E8E2A2A2A676767FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EA
- E6C8635CC88A866D422FFF00FF9A9A9AD5D5D58E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFBFBFBF5F5F5F1F1F18E8E8EABABAB696969FF00FFCE726F
- CE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE72
- 6FCE726FCE726FCE726FFF00FF9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
- 9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A}
- NumGlyphs = 2
- end
- object btCancela: TBitBtn
- Left = 8
- Top = 56
- Width = 81
- Height = 25
- Caption = '&Cancelar'
- TabOrder = 1
- OnClick = btCancelaClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFC066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40198E40198E40198E40
- 198E40198E4019FF00FF8888886969696969696969696969696969696A6A6A69
- 69696969696969696A6A6A6969696969696A6A6A696969FF00FFC06614F9F5F4
- C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2
- A5C3B2A58E4019FF00FF888888F8F8F8C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6
- C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6696969FF00FFC06614FCFAFA
- F9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCDFD0C7DFD0C7DCCB
- C1C3B2A58E4019FF00FF888888FCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEAEAEAE7
- E7E7E4E4E4E0E0E0DDDDDDDDDDDDD9D9D9C6C6C6696969FF00FFC06614FFFFFF
- FCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCE2D4CCDFD0
- C7C3B2A58E4019FF00FF888888FFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEA
- EAEAE7E7E7E3E3E3E0E0E0E0E0E0DDDDDDC6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E5D9D1E2D4
- CCC3B2A58E4019FF00FF888888FFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EE
- EEEEEAEAEAE7E7E7E3E3E3E3E3E3E0E0E0C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E9DED7E5D9
- D1C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1
- F1F1EEEEEEEAEAEAE7E7E7E7E7E7E3E3E3C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F2EBE8EEE6E2ECE2DCECE2DCE9DE
- D7C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFBF7
- F7F7F1F1F1EEEEEEEAEAEAEAEAEAE7E7E7C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF0E9E5F0E9E5EDE4
- DFC3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFB
- FBFBF7F7F7F3F3F3F0F0F0F0F0F0ECECECC6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF4EEEBF0E9
- E5C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
- FEFEFBFBFBF7F7F7F3F3F3F3F3F3F0F0F0C6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F78A9DE92546CD1D3F
- C9193BC8183BC88194E1898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFEFEFEFAFAFAC6C6C6979797929292929292929292C0C0C0C06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFD3355DBF2F4FD4E6B
- D94A67D8F2F4FD183BC8888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFEFEFEA1A1A1FAFAFAAAAAAAA8A8A8F9F9F9929292C066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40193C5CDD8296E4D9DF
- F9CDD5F74C69D81A3CC88888886969696969696969696A6A6A69696969696969
- 6969696969696969A5A5A5C1C1C1EDEDEDE7E7E7A8A8A8929292C06614ED9733
- ED9733ED9733ED9733ED9733ED9733ED9733F6CA9AED97334563E16980E2E4E8
- FBD8DEF9516DDA1F40C9888888ACACACACACACADADADADADADADADADACACACAD
- ADADD5D5D5ADADADA8A8A8B6B6B6F2F2F2ECECECABABAB939393F810DCC06614
- C06614C06614C06614C06614C06614C06614C06614C066144D6AE3F2F4FD667D
- E26E85E2F2F4FD2749CEEF14EF88888888888888888888888889898988888888
- 8888888888898989ACACACF9F9F9B5B5B5B9B9B9F9F9F9989898FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF9AABEF4D6AE34563
- E14463DF3E5EDE8FA2EBFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFCFCFCFACACACA8A8A8A8A8A8A6A6A6C9C9C9}
- NumGlyphs = 2
- end
- end
- object Panel2: TPanel
- Left = 0
- Top = 35
- Width = 375
- Height = 246
- Align = alClient
- BevelInner = bvRaised
- BevelOuter = bvLowered
- TabOrder = 0
- object lbNome: TLabel
- Left = 48
- Top = 15
- Width = 34
- Height = 13
- Alignment = taRightJustify
- Caption = 'Nome :'
- Layout = tlCenter
- end
- object lbLogin: TLabel
- Left = 50
- Top = 45
- Width = 32
- Height = 13
- Alignment = taRightJustify
- Caption = 'Login :'
- Layout = tlCenter
- end
- object lbEmail: TLabel
- Left = 50
- Top = 75
- Width = 32
- Height = 13
- Alignment = taRightJustify
- Caption = 'EMail :'
- Layout = tlCenter
- end
- object lbPerfil: TLabel
- Left = 53
- Top = 136
- Width = 29
- Height = 13
- Alignment = taRightJustify
- Caption = 'Perfil :'
- Layout = tlCenter
- end
- object btlimpa: TSpeedButton
- Left = 334
- Top = 136
- Width = 19
- Height = 21
- Glyph.Data = {
- 36050000424D3605000000000000360400002800000010000000100000000100
- 080000000000000100000E0F00000E0F00000001000000010000FF00FF00B584
- 8400B5948C00C6A59C00D6BDB500E7C6B500E7CECE0000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000020101010101010200000000000000000106060606
- 0606010100000000000000010606060606060103010000000000000204040404
- 0404010303010000000000000205050505050501030301000000000000020505
- 0505050501030301000000000000020505050505050103030100000000000002
- 0505050505050103010000000000000002050505050505010100000000000000
- 0002050505050505010000000000000000000201010101010200000000000000
- 0000000000000000000000000000000000000000000000000000}
- OnClick = btlimpaClick
- end
- object LabelExpira: TLabel
- Left = 30
- Top = 167
- Width = 52
- Height = 13
- Alignment = taRightJustify
- Caption = 'Expira em :'
- Layout = tlCenter
- end
- object LabelDias: TLabel
- Left = 331
- Top = 167
- Width = 19
- Height = 13
- Caption = 'dias'
- Layout = tlCenter
- end
- object Label1: TLabel
- Left = 46
- Top = 106
- Width = 36
- Height = 13
- Alignment = taRightJustify
- Caption = 'Status :'
- Layout = tlCenter
- end
- object EditNome: TEdit
- Left = 88
- Top = 15
- Width = 265
- Height = 21
- Ctl3D = True
- MaxLength = 30
- ParentCtl3D = False
- TabOrder = 0
- end
- object EditLogin: TEdit
- Left = 88
- Top = 45
- Width = 265
- Height = 21
- Ctl3D = True
- MaxLength = 30
- ParentCtl3D = False
- TabOrder = 1
- end
- object EditEmail: TEdit
- Left = 88
- Top = 75
- Width = 265
- Height = 21
- Ctl3D = True
- MaxLength = 150
- ParentCtl3D = False
- TabOrder = 2
- end
- object ckPrivilegiado: TCheckBox
- Left = 89
- Top = 220
- Width = 120
- Height = 17
- Caption = 'Usu'#225'rio privilegiado'
- TabOrder = 7
- end
- object ComboPerfil: TDBLookupComboBox
- Left = 88
- Top = 136
- Width = 242
- Height = 21
- Ctl3D = True
- KeyField = 'IDUser'
- ListField = 'Nome'
- ParentCtl3D = False
- TabOrder = 4
- end
- object ckUserExpired: TCheckBox
- Left = 89
- Top = 196
- Width = 160
- Height = 17
- Caption = 'Senha do usu'#225'rio n'#227'o expira'
- TabOrder = 6
- OnClick = ckUserExpiredClick
- end
- object SpinExpira: TSpinEdit
- Left = 88
- Top = 167
- Width = 241
- Height = 22
- MaxValue = 100
- MinValue = 10
- TabOrder = 5
- Value = 10
- end
- object ComboStatus: TComboBox
- Left = 88
- Top = 106
- Width = 265
- Height = 21
- Style = csDropDownList
- ItemHeight = 13
- TabOrder = 3
- Items.Strings = (
- 'Ativo'
- 'Inativo')
- end
- end
-end
diff --git a/internal/2.31RC1/1/Source/IncUser_U.pas b/internal/2.31RC1/1/Source/IncUser_U.pas
deleted file mode 100644
index 02f4c70..0000000
--- a/internal/2.31RC1/1/Source/IncUser_U.pas
+++ /dev/null
@@ -1,245 +0,0 @@
-unit IncUser_U;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
-{$IFDEF DELPHI5_UP}
- Variants,
-{$ENDIF}
- Buttons,
- Classes,
- Controls,
- DB,
- DBCtrls,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Messages,
- Spin,
- StdCtrls,
- SysUtils,
- UCBase,
- Windows;
-
-type
- TfrmIncluirUsuario = class(TForm)
- Panel1: TPanel;
- LbDescricao: TLabel;
- Image1: TImage;
- Panel3: TPanel;
- btGravar: TBitBtn;
- btCancela: TBitBtn;
- Panel2: TPanel;
- lbNome: TLabel;
- EditNome: TEdit;
- lbLogin: TLabel;
- EditLogin: TEdit;
- lbEmail: TLabel;
- EditEmail: TEdit;
- ckPrivilegiado: TCheckBox;
- lbPerfil: TLabel;
- ComboPerfil: TDBLookupComboBox;
- btlimpa: TSpeedButton;
- ckUserExpired: TCheckBox;
- LabelExpira: TLabel;
- SpinExpira: TSpinEdit;
- LabelDias: TLabel;
- ComboStatus: TComboBox;
- Label1: TLabel;
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
- procedure btCancelaClick(Sender: TObject);
- procedure btGravarClick(Sender: TObject);
- function GetNewIdUser: Integer;
- procedure btlimpaClick(Sender: TObject);
- procedure FormShow(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure ckUserExpiredClick(Sender: TObject);
- private
- FormSenha: TCustomForm;
- { Private declarations }
- public
- { Public declarations }
- FAltera: Boolean;
- FUserControl: TUserControl;
- FDataSetCadastroUsuario: TDataSet;
- vNovoIDUsuario: Integer;
- end;
-
-implementation
-
-uses
- SenhaForm_U;
-
-{$R *.dfm}
-
-procedure TfrmIncluirUsuario.FormClose(Sender: TObject; var Action: TCloseAction);
-begin
- Action := caFree;
-end;
-
-procedure TfrmIncluirUsuario.FormCreate(Sender: TObject);
-begin
- Self.BorderIcons := [];
- Self.BorderStyle := bsDialog;
-end;
-
-procedure TfrmIncluirUsuario.btCancelaClick(Sender: TObject);
-begin
- Close;
-end;
-
-procedure TfrmIncluirUsuario.btGravarClick(Sender: TObject);
-var
- vNovaSenha: String;
- vNome: String;
- vLogin: String;
- vEmail: String;
- vUserExpired: Integer;
- vPerfil: Integer;
- vPrivilegiado: Boolean;
-begin
- btGravar.Enabled := False;
-
- with FUserControl do
- if not FAltera then
- begin // inclui user
- if Self.FUserControl.ExisteUsuario(EditLogin.Text) then
- begin
- MessageDlg(Format(FUserControl.UserSettings.CommonMessages.UsuarioExiste, [EditLogin.Text]), mtWarning, [mbOK], 0);
- Exit;
- end;
-
- FormSenha := TSenhaForm.Create(Self);
- TSenhaForm(FormSenha).Position := UserSettings.WindowsPosition;
- TSenhaForm(FormSenha).fUserControl := fUserControl;
- TSenhaForm(FormSenha).Caption := Format(FUserControl.UserSettings.ResetPassword.WindowCaption, [EditLogin.Text]);
- if TSenhaForm(FormSenha).ShowModal <> mrOk then
- begin
- btGravar.Enabled := True;
- Exit;
- end;
- vNovaSenha := TSenhaForm(FormSenha).edtSenha.Text;
- vNovoIDUsuario := GetNewIdUser;
- vNome := EditNome.Text;
- vLogin := EditLogin.Text;
- vEmail := EditEmail.Text;
- FreeAndNil(FormSenha);
-
- if ComboPerfil.KeyValue = null then
- vPerfil := 0
- else
- vPerfil := ComboPerfil.KeyValue;
-
- vPrivilegiado := ckPrivilegiado.Checked;
- vUserExpired := StrToInt(BoolToStr(ckUserExpired.Checked));
-
- AddUser(vLogin, vNovaSenha, vNome, vEmail, vPerfil, vUserExpired, SpinExpira.Value, vPrivilegiado);
-
-
- if (Assigned( fUserControl.MailUserControl)) and (fUserControl.MailUserControl.AdicionaUsuario.Ativo ) then
- try
- fUserControl.MailUserControl.EnviaEmailAdicionaUsuario(vNome, vLogin, Encrypt(vNovaSenha, EncryptKey) , vEmail, IntToStr(vPerfil), EncryptKey);
- except
- on E : Exception do Log(e.Message, 0 );
- end;
-
- end
- else
- begin // alterar user
- // vNovoIDUsuario := TfrmCadastrarUsuario(Self.Owner).FDataSetCadastroUsuario.FieldByName('IdUser').AsInteger;
- vNome := EditNome.Text;
- vLogin := EditLogin.Text;
- vEmail := EditEmail.Text;
- if ComboPerfil.KeyValue = null then
- vPerfil := 0
- else
- vPerfil := ComboPerfil.KeyValue;
-
- vUserExpired := StrToInt(BoolToStr(ckUserExpired.Checked)); //Added by Petrus van Breda 28/04/2007
- vPrivilegiado := ckPrivilegiado.Checked;
- ChangeUser(vNovoIDUsuario, vLogin, vNome, vEmail, vPerfil, vUserExpired, SpinExpira.Value, ComboStatus.ItemIndex, vPrivilegiado);
-
-
- if (Assigned(fUserControl.MailUserControl)) and (fUserControl.MailUserControl.AlteraUsuario.Ativo ) then
- try
- fUserControl.MailUserControl.EnviaEmailAlteraUsuario(vNome, vLogin, 'Não Alterada', vEmail, IntToStr(vPerfil), EncryptKey);
- except
- on E : Exception do Log(e.Message, 2);
- end;
-
-
- end;
-
-{ With TfrmCadastrarUsuario(Owner) do
- Begin }
- FDataSetCadastroUsuario.Close;
- FDataSetCadastroUsuario.Open;
- FDataSetCadastroUsuario.Locate('idUser', vNovoIDUsuario, []);
- // End;
- Close;
-end;
-
-function TfrmIncluirUsuario.GetNewIdUser: Integer;
-var
- DataSet: TDataset;
- SQLStmt: String;
-begin
- with FUserControl do
- begin
- SQLStmt := Format('SELECT %s.%s FROM %s ORDER BY %s DESC', [TableUsers.TableName, TableUsers.FieldUserID,
- TableUsers.TableName, TableUsers.FieldUserID]);
- try
- DataSet := DataConnector.UCGetSQLDataSet(SQLStmt);
- Result := DataSet.Fields[0].AsInteger + 1;
- DataSet.Close;
- finally
- SysUtils.FreeAndNil(DataSet);
- end;
- end;
-end;
-
-procedure TfrmIncluirUsuario.btLimpaClick(Sender: TObject);
-begin
- ComboPerfil.KeyValue := NULL;
-end;
-
-procedure TfrmIncluirUsuario.FormShow(Sender: TObject);
-begin
- if not FUserControl.UserProfile.Active then
- begin
- lbPerfil.Visible := False;
- ComboPerfil.Visible := False;
- btLimpa.Visible := False;
- end
- else
- begin
- ComboPerfil.ListSource.DataSet.Close;
- ComboPerfil.ListSource.DataSet.Open;
- end;
-
- if FUserControl.Login.ActiveDateExpired = True then
- //Opção de senha so deve aparecer qdo setada como true no componente By Vicente Barros Leonel
- ckPrivilegiado.Visible := FUserControl.User.UsePrivilegedField
- else
- ckUserExpired.Visible := False;
-
- EditLogin.CharCase := Self.FUserControl.Login.CharCaseUser;
-
- SpinExpira.Visible := ckUserExpired.Visible;
- LabelExpira.Visible := ckUserExpired.Visible;
- LabelDias.Visible := ckUserExpired.Visible;
-
- if (FUserControl.User.ProtectAdministrator) and (EditLogin.Text = FUserControl.Login.InitialLogin.User) then
- EditLogin.Enabled := False;
-end;
-
-procedure TfrmIncluirUsuario.ckUserExpiredClick(Sender: TObject);
-begin
- SpinExpira.Enabled := not ckUserExpired.Checked;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/LoginWindow_U.dfm b/internal/2.31RC1/1/Source/LoginWindow_U.dfm
deleted file mode 100644
index 41b0673..0000000
--- a/internal/2.31RC1/1/Source/LoginWindow_U.dfm
+++ /dev/null
@@ -1,260 +0,0 @@
-object frmLoginWindow: TfrmLoginWindow
- Left = 343
- Top = 286
- BorderIcons = [biSystemMenu]
- BorderStyle = bsSingle
- Caption = 'Login'
- ClientHeight = 171
- ClientWidth = 350
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- KeyPreview = True
- OldCreateOrder = False
- OnActivate = FormActivate
- OnClose = FormClose
- OnKeyPress = FormKeyPress
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object PTop: TPanel
- Left = 0
- Top = 0
- Width = 350
- Height = 17
- Align = alTop
- BevelOuter = bvNone
- TabOrder = 0
- object ImgTop: TImage
- Left = 0
- Top = 0
- Width = 0
- Height = 0
- AutoSize = True
- Center = True
- end
- end
- object PLeft: TPanel
- Left = 0
- Top = 17
- Width = 10
- Height = 124
- Align = alLeft
- BevelOuter = bvNone
- TabOrder = 1
- object imgLeft: TImage
- Left = 0
- Top = 0
- Width = 0
- Height = 0
- AutoSize = True
- Center = True
- Transparent = True
- end
- end
- object PBottom: TPanel
- Left = 0
- Top = 141
- Width = 350
- Height = 11
- Align = alBottom
- BevelOuter = bvNone
- TabOrder = 2
- object ImgBottom: TImage
- Left = 0
- Top = 0
- Width = 0
- Height = 0
- AutoSize = True
- Center = True
- end
- end
- object Panel1: TPanel
- Left = 10
- Top = 17
- Width = 340
- Height = 124
- Align = alClient
- BevelOuter = bvNone
- TabOrder = 3
- object PLogin: TPanel
- Left = 1
- Top = 1
- Width = 340
- Height = 132
- BevelOuter = bvNone
- TabOrder = 0
- object LbUsuario: TLabel
- Left = 33
- Top = 10
- Width = 42
- Height = 13
- Alignment = taRightJustify
- Caption = 'Usu'#225'rio :'
- end
- object LbSenha: TLabel
- Left = 38
- Top = 42
- Width = 37
- Height = 13
- Alignment = taRightJustify
- Caption = 'Senha :'
- end
- object lbEsqueci: TLabel
- Left = 87
- Top = 70
- Width = 79
- Height = 13
- Cursor = crHandPoint
- Caption = 'Esqueci a senha'
- Enabled = False
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlue
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = [fsUnderline]
- ParentFont = False
- Visible = False
- end
- object EditUsuario: TEdit
- Left = 82
- Top = 7
- Width = 225
- Height = 21
- CharCase = ecUpperCase
- Ctl3D = True
- MaxLength = 15
- ParentCtl3D = False
- TabOrder = 0
- OnChange = EditUsuarioChange
- end
- object EditSenha: TEdit
- Left = 82
- Top = 39
- Width = 225
- Height = 21
- Ctl3D = True
- MaxLength = 10
- ParentCtl3D = False
- PasswordChar = '*'
- TabOrder = 1
- end
- object btOK: TBitBtn
- Left = 81
- Top = 96
- Width = 75
- Height = 25
- Caption = 'OK'
- TabOrder = 2
- Glyph.Data = {
- 36040000424D3604000000000000360000002800000010000000100000000100
- 2000000000000004000000000000000000000000000000000000C8D0D400C8D0
- D400C8D0D400B6907D00B57F6800C6C9CC00C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C7CCD000C1806000C6503000B75A4100C3BFBD00C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400BFADA500D1886200C4724700C4502E00BA6F5C00C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C7CE
- D200C0866900D1875F00C5724900C5734A00BF432500C1B6B300C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C0AA
- 9F00D6916C00CD774F00B94A2E00CC856000C7613C00B85F4700C7CFD300C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400BCA19500D08D
- 6A00D58D6500C84C2D00BD9E9300BD968200D2896400C5462800BF968C00C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C1B5B100C585
- 6400D37B5900B96B5400C7CCD000C6CBCE00BE836500D2886200C4472D00C6B8
- B800C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C5C7
- C800BFB0AA00C6CBCD00C8D0D400C8D0D400C2BDBB00C8846100D07C5600C158
- 4500C6CBCE00C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400BEADA500CE876100CD6B
- 4900C5776B00C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400BDA49700D18D
- 6800CD684600C6878000C7CFD300C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400BEA3
- 9500D6937000CA603E00C7908A00C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C0A79C00CD876100C95D3D00C89B9700C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400BFADA500C6815D00CC5D4100C79F9B00C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C2BCBB00C1876A00CB614400BEA59C00C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C6CACD00BB9A8A00B99A8B00C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400}
- end
- object BtCancela: TBitBtn
- Left = 185
- Top = 96
- Width = 75
- Height = 25
- Cancel = True
- Caption = 'Cancelar'
- TabOrder = 3
- OnClick = BtCancelaClick
- Glyph.Data = {
- 36040000424D3604000000000000360000002800000010000000100000000100
- 2000000000000004000000000000000000000000000000000000C8D0D400ACB3
- CC003C41AF00B7BFCE00C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400A6ADCA000F19
- B000000BAE00464BB300C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D4009398C300B1B8CD00C8D0D4005665D000071B
- C600000EB400010BAD00858CC100C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400BEC6D1005357B100020298005C60B300C8D0D400364CDD002342
- F0000012BC00000EB5001119AE00B4BBCE00C8D0D400C8D0D400C8D0D400C8D0
- D400989EC5001D1E9F00000098002122A100B7BECE00C8D0D4008B95CA002E4C
- F2001C35DB000011BB00000EB5003037B200C2CAD200C8D0D400C1C8D1005A5D
- B20004049900000098001D1EA000B3BACD00C8D0D400C8D0D400C8D0D4006672
- C9004D67F7000D22C9000012BC00000EB5004C53B7009DA3C8002125A8000002
- 9D000000980018199E00AEB5CB00C8D0D400C8D0D400C8D0D400C8D0D400C5CD
- D2006972C9004C60E6000016C2000012BC00000EB500030DAD000009AA000006
- A4001417A100A9B0CA00C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C7CFD300727BC600162ACB000015C2000012BC00000FB600000CB0001016
- A900A5ABC900C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400A2AACB00091DC4000018C9000015C3000012BD00000FB600767B
- BD00C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400AFB6CD00162DCC00001ED500001BCF000018C9000015C3000012BD000F1A
- B300A6ADCA00C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400B8BF
- CF002138D0000025E2000022DC000120D7002742E3002536C700071FCD000013
- BE001723B400AFB6CC00C8D0D400C8D0D400C8D0D400C8D0D400C0C8D1002D44
- D100002BEF000028E900092EE6003A57F2006D78CC00C1C9D2005562C8000D25
- D1000013BE001823B400A7AECB00C8D0D400C8D0D400C8D0D4005A68C800002F
- F700002EF500183FF4004662F8006C76CA00C7CFD300C8D0D400C8D0D4007F89
- C8002539CE000518C2000F1BB4009AA1C700C8D0D400C8D0D400AFB6CD001535
- DF002A4FFC004A66FA006C77CC00C7CFD300C8D0D400C8D0D400C8D0D400C8D0
- D400B4BBCE005964C9001729C6000815B500878DC200C8D0D400C8D0D400B7BE
- CF00707DCF006F7ACC00C7CFD300C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400949CC900424DBE009097C500C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0
- D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400C8D0D400}
- end
- end
- end
- object StatusBar: TStatusBar
- Left = 0
- Top = 152
- Width = 350
- Height = 19
- Panels = <
- item
- Alignment = taRightJustify
- Text = 'Tentativa: '
- Width = 60
- end
- item
- Alignment = taCenter
- Width = 80
- end
- item
- Alignment = taRightJustify
- Text = 'Limite de Tentativas: '
- Width = 130
- end
- item
- Alignment = taCenter
- Width = 50
- end>
- end
-end
diff --git a/internal/2.31RC1/1/Source/LoginWindow_U.pas b/internal/2.31RC1/1/Source/LoginWindow_U.pas
deleted file mode 100644
index 83b0bf3..0000000
--- a/internal/2.31RC1/1/Source/LoginWindow_U.pas
+++ /dev/null
@@ -1,142 +0,0 @@
-unit LoginWindow_U;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
-{$IFDEF DELPHI5_UP}
- Variants,
-{$ENDIF}
- Buttons,
- Classes,
- Controls,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Math,
- Messages,
- StdCtrls,
- SysUtils,
- UCBase,
- Windows, ComCtrls;
-
-type
- TfrmLoginWindow = class(TForm)
- PTop: TPanel;
- ImgTop: TImage;
- PLeft: TPanel;
- imgLeft: TImage;
- PBottom: TPanel;
- ImgBottom: TImage;
- Panel1: TPanel;
- PLogin: TPanel;
- LbUsuario: TLabel;
- LbSenha: TLabel;
- EditUsuario: TEdit;
- EditSenha: TEdit;
- btOK: TBitBtn;
- BtCancela: TBitBtn;
- lbEsqueci: TLabel;
- StatusBar: TStatusBar;
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
- procedure BtCancelaClick(Sender: TObject);
- procedure FormShow(Sender: TObject);
- procedure EditUsuarioChange(Sender: TObject);
- procedure FormKeyPress(Sender: TObject; var Key: char);
- procedure BotoesClickVisualizacao(Sender: TObject);
- procedure FormActivate(Sender: TObject);
- public
- FUserControl: TUserControl;
- end;
-
-implementation
-
-{$R *.dfm}
-
-procedure TfrmLoginWindow.FormClose(Sender: TObject; var Action: TCloseAction);
-begin
- Action := caFree;
-
-end;
-
-procedure TfrmLoginWindow.BotoesClickVisualizacao(Sender: TObject);
-begin
- Self.ModalResult := mrOk;
-end;
-
-procedure TfrmLoginWindow.BtCancelaClick(Sender: TObject);
-begin
- Application.Terminate;
-end;
-
-procedure TfrmLoginWindow.FormShow(Sender: TObject);
-var
- w, h: Integer;
-begin
- w := Max(ImgTop.Width, ImgLeft.Width + PLogin.Width);
- w := Max(w, ImgBottom.Width);
- h := Max(ImgLeft.Height + ImgTop.Height + ImgBottom.Height, ImgTop.Height + PLogin.Height + ImgBottom.Height);
-
- Width := w;
- Height := h + 28;
- If FUserControl.Login.MaxLoginAttempts > 0 then
- Begin
- Height := Height + 19; // by vicente barros leonel and Petrus van Breda
- StatusBar.Panels[ 0 ].Text := FUserControl.UserSettings.Login.LabelTentativa;
- StatusBar.Panels[ 2 ].Text := FUserControl.UserSettings.Login.LabelTentativas;
- End;
-
- // Topo
- PTop.Height := ImgTop.Height;
- ImgTop.AutoSize := False;
- ImgTop.Align := alClient;
- ImgTop.Center := True;
-
- //Centro
- PLeft.Width := ImgLeft.Width;
- ImgLeft.AutoSize := False;
- ImgLeft.Align := alClient;
- ImgLeft.Center := True;
-
- //Bottom
- PBottom.Height := ImgBottom.Height;
- ImgBottom.AutoSize := False;
- ImgBottom.Align := alClient;
- ImgBottom.Center := True;
-
- PTop.Visible := ImgTop.Picture <> nil;
- PLeft.Visible := ImgLeft.Picture <> nil;
- PBottom.Visible := ImgBottom.Picture <> nil;
-
- if FUserControl.Login.GetLoginName = lnUserName then
- EditUsuario.Text := FUserControl.GetLocalUserName;
- if FUserControl.Login.GetLoginName = lnMachineName then
- EditUsuario.Text := FUserControl.GetLocalComputerName;
- if FUserControl.Login.GetLoginName <> lnNone then
- EditSenha.SetFocus;
-end;
-
-procedure TfrmLoginWindow.EditUsuarioChange(Sender: TObject);
-begin
- lbEsqueci.Enabled := Length(EditUsuario.Text) > 0;
-end;
-
-procedure TfrmLoginWindow.FormKeyPress(Sender: TObject; var Key: char);
-begin
- if Key = #13 then
- Begin
- Key := #0;
- Perform(WM_NEXTDLGCTL,0,0);
- End;
-end;
-
-procedure TfrmLoginWindow.FormActivate(Sender: TObject);
-begin
- EditUsuario.CharCase := Self.FUserControl.Login.CharCaseUser;
- EditSenha.CharCase := Self.FUserControl.Login.CharCasePass; { Por Vicente Barros Leonel }
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/MsgRecForm_U.dfm b/internal/2.31RC1/1/Source/MsgRecForm_U.dfm
deleted file mode 100644
index ae8dacf..0000000
--- a/internal/2.31RC1/1/Source/MsgRecForm_U.dfm
+++ /dev/null
@@ -1,263 +0,0 @@
-object MsgRecForm: TMsgRecForm
- Left = 215
- Top = 162
- BorderStyle = bsDialog
- Caption = 'Mensagem'
- ClientHeight = 336
- ClientWidth = 506
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- FormStyle = fsStayOnTop
- OldCreateOrder = False
- OnCreate = FormCreate
- PixelsPerInch = 96
- TextHeight = 13
- object lbDE: TLabel
- Left = 16
- Top = 57
- Width = 20
- Height = 13
- Caption = 'De :'
- end
- object lbAssunto: TLabel
- Left = 19
- Top = 89
- Width = 38
- Height = 13
- Caption = 'Assunto'
- end
- object lbMensagem: TLabel
- Left = 16
- Top = 120
- Width = 52
- Height = 13
- Caption = 'Mensagem'
- end
- object lbData: TLabel
- Left = 360
- Top = 57
- Width = 23
- Height = 13
- Caption = 'Data'
- end
- object Panel1: TPanel
- Left = 0
- Top = 0
- Width = 506
- Height = 35
- Align = alTop
- BevelOuter = bvLowered
- Color = clWhite
- TabOrder = 2
- object lbTitulo: TLabel
- Left = 48
- Top = 10
- Width = 181
- Height = 18
- Caption = 'Mensagem Recebida'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -16
- Font.Name = 'Verdana'
- Font.Style = [fsBold]
- ParentFont = False
- end
- object Image1: TImage
- Left = 8
- Top = 4
- Width = 28
- Height = 28
- AutoSize = True
- Picture.Data = {
- 07544269746D6170760C0000424D760C00000000000036000000280000001C00
- 00001C0000000100200000000000400C00000000000000000000000000000000
- 0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0098300000FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF009830000098300000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00D3BDAF0069473100694731006947310069473100694731006947
- 3100694731006947310069473100694731006947310069473100694731006947
- 3100D76733009830000098300000983000009830000098300000C16E39009830
- 0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D3BDAF00FCF9F800B7A2
- 9300B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A2
- 9300B7A29300B7A29300B7A29300B7A29300D7673300FBC4A100DD986500D48B
- 5800D48B5800CE824E00C7784300C16E390098300000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00D3BDAF00FEFCFB00FCF9F800FAF6F400F8F3F100F6F0EE00F4EE
- EA00F2EBE700F0E8E400EEE5E000ECE3DD00EAE0DA00E8DCD600E6D9D200E4D6
- CF00D7673300FBC4A100DD986500DD986500D48B5800D78F5C00D1875300CB7D
- 4900C16E390098300000FFFFFF00FFFFFF00FFFFFF00D3BDAF00FFFFFF00FEFC
- FB00FCF9F800FAF6F400F8F3F100F6F0EE00F4EEEA00F2EBE700F0E8E400EEE5
- E000ECE3DD00EAE0DA00E8DCD600E6D9D200D7673300FBC4A100E3A16E00DD98
- 6500DD986500D48B5800D78F5C00D1875300CB7D4900C16E390098300000FFFF
- FF00FFFFFF00D3BDAF00FFFFFF00FFFFFF00FEFCFB00FCF9F800E7B98600E7B9
- 8600E7B98600E7B98600E7B98600E7B98600E7B98600E7B98600E7B98600E7B9
- 8600D7673300FBC4A100E3A16E00E3A16E00DD986500DD986500D48B5800D78F
- 5C00C16E390098300000FFFFFF00FFFFFF00FFFFFF00D3BDAF00FFFFFF00FFFF
- FF00FFFFFF00FEFCFB00FCF9F800FAF6F400F8F3F100F6F0EE00F4EEEA00F2EB
- E700F0E8E400EEE5E000ECE3DD00EAE0DA00D7673300FBC4A100FBC4A100FBC4
- A100FBC4A100FBC4A100FBC4A100C16E390098300000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00D3BDAF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFDFD00FDFB
- FA00FBF8F600F9F5F300F7F2EF00F5EFEC00F3ECE900F0E8E400EEE5E000ECE3
- DD00D7673300D7673300D7673300D7673300D7673300D7673300FBC4A1009830
- 0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D3BDAF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00E7B98600E7B98600E7B98600E7B98600E7B98600E7B9
- 8600E7B98600E7B98600E7B98600E7B98600EDE4DF00EBE1DB00E9DED800E7DB
- D400E5D8D100D76733009830000069473100694731006947310069473100FFFF
- FF00FFFFFF00D3BDAF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFDFD00FDFBFA00FBF8F600F9F5F300F7F2EF00F5EFEC00F3ECE900F1E9
- E500EFE6E200EDE4DF00EBE1DB00E9DED800E7DBD40098300000B7A293006947
- 3100B7A29300B7A2930069473100FFFFFF00FFFFFF00D3BDAF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFDFD00FDFBFA00FBF8
- F600F9F5F300F7F2EF00F5EFEC00F3ECE900F1E9E500EFE6E200EDE4DF00EBE1
- DB00E9DED800E7DBD400B7A2930069473100DBC9BF00B7A2930069473100FFFF
- FF00FFFFFF00D3BDAF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0098300000FFFF
- FF00FFFFFF00FFFFFF00FFFDFD00FDFBFA00FBF8F600F9F5F300F7F2EF00F5EF
- EC00F3ECE900F1E9E500EFE6E200EDE4DF00EBE1DB00E9DED800B7A293006947
- 3100DBC9BF00B7A2930069473100FFFFFF00FFFFFF00D3BDAF00FFFFFF00FFFF
- FF00FFFFFF009830000098300000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFD
- FD00FDFBFA00FBF8F600F9F5F300F7F2EF00F5EFEC00F3ECE900316ADC00316A
- DC00316ADC00EBE1DB00B7A2930069473100DCCAC000B7A2930069473100FFFF
- FF00FFFFFF00D3BDAF00FFFFFF00FFFFFF0098300000C16E3900983000009830
- 000098300000983000009830000098300000FFFDFD00FDFBFA00FBF8F600F9F5
- F300F7F2EF00F5EFEC00314A800060A2FA00316ADC00EDE4DF00B7A293006947
- 3100DECDC400B7A2930069473100FFFFFF00FFFFFF00D3BDAF00FFFFFF009830
- 0000CB7D4900D58B5700C16E3900C16E3900C16E3900C16E3900C16E39009830
- 0000FFFFFF00FFFFFF00FEFCFB00FCF9F800FAF6F400F8F3F100396EE30060A2
- FA00316ADC00EFE6E200B7A2930069473100E0D0C800B7A2930069473100FFFF
- FF00FFFFFF00D3BDAF0098300000CB7D4900E19C6A00DB946100D58B5700D287
- 5300CD7F4A00C7764100C16E390098300000FFFFFF00FFFFFF00FFFFFF00FEFC
- FB00FCF9F800FAF6F400F8F3F100F6F0EE00F4EEEA00F2EBE700F0E8E4006947
- 3100E3D5CD00B7A2930069473100FFFFFF00FFFFFF0098300000FBC4A100E3A1
- 6E00E3A16E00E3A16E00DE986500D88F5C00D2875300CD7F4A00C16E39009830
- 0000D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BD
- AF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00E5D8D100B7A2930069473100FFFF
- FF00FFFFFF00FFFFFF00D7673300FBC4A100E3A16E00E3A16E00E3A16E00DE98
- 6500D88F5C00D2875300C16E390098300000FFFDFD00FDFBFA00FBF8F600F9F5
- F300F7F2EF00F5EFEC00F3ECE900F1E9E500EFE6E200EDE4DF00EBE1DB00E9DE
- D800E7DBD400B7A2930069473100FFFFFF00FFFFFF00FFFFFF00FFFFFF00D767
- 3300FBC4A100E3A16E00FBC4A100FBC4A100FBC4A100FBC4A100FBC4A1009830
- 0000FFFFFF00FFFDFD00FDFBFA00FBF8F600F9F5F300F7F2EF00F5EFEC00F3EC
- E900F1E9E500EFE6E200EDE4DF00EBE1DB00E9DED800B7A2930069473100FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D7673300FBC4A100D7673300D767
- 3300D7673300D7673300D7673300D7673300FFFFFF00FFFFFF00FFFDFD00FDFB
- FA00FBF8F600F9F5F300F7F2EF00F5EFEC00F3ECE900316ADC00316ADC00316A
- DC00EBE1DB00B7A2930069473100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00D3BDAF00D7673300D7673300FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFDFD00FDFBFA00FBF8F600F9F5F300F7F2
- EF00F5EFEC00314A800060A2FA00316ADC00EDE4DF00B7A2930069473100FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D3BDAF00FFFFFF00D7673300FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FEFCFB00FCF9F800FAF6F400F8F3F100396EE30060A2FA00316A
- DC00EFE6E200B7A2930069473100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00D3BDAF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FEFCFB00FCF9
- F800FAF6F400F8F3F100F6F0EE00F4EEEA00F2EBE700F0E8E40069473100FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D3BDAF00D3BDAF00D3BDAF00D3BD
- AF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BD
- AF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BDAF00D3BD
- AF00D3BDAF00D3BDAF00D3BDAF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00}
- end
- end
- object stDe: TStaticText
- Left = 64
- Top = 56
- Width = 289
- Height = 17
- AutoSize = False
- BorderStyle = sbsSunken
- TabOrder = 3
- end
- object stAssunto: TStaticText
- Left = 64
- Top = 88
- Width = 431
- Height = 17
- AutoSize = False
- BorderStyle = sbsSunken
- TabOrder = 4
- end
- object MemoMsg: TMemo
- Left = 16
- Top = 144
- Width = 481
- Height = 145
- MaxLength = 255
- ReadOnly = True
- ScrollBars = ssBoth
- TabOrder = 0
- end
- object btFechar: TBitBtn
- Left = 199
- Top = 303
- Width = 79
- Height = 25
- Caption = '&Fechar'
- TabOrder = 1
- OnClick = btFecharClick
- Glyph.Data = {
- 42040000424D4204000000000000420000002800000020000000100000000100
- 1000030000000004000000000000000000000000000000000000007C0000E003
- 00001F0000001F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C45261F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C94521F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C4526862645261F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C9452D65A94521F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C673286268626862645261F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7CD65AD65AD65AD65A94521F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C45268626C62A862E862645261F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C9452D65AF75ED65AD65A94521F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C47328626C62A252E252EC62A8822C62A1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7CB556D65AF75EB556B556F75ED65AF75E1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C4526C62A252E1F7C1F7C252EC62A45261F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C9452F75EB5561F7C1F7CB556F75E94521F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C252E1F7C1F7C1F7C1F7C252EC62A45261F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7CB5561F7C1F7C1F7C1F7CB556F75E94521F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C252EC62AC62A1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CB556F75EF75E1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C252E86261F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CB556D65A1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C252E86261F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CB556D65A1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C252E8626
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CB556D65A
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C252E
- 86261F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CB556
- D65A1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 252E86261F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- B556D65A1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C252E1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7CB5561F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C
- 1F7C1F7C1F7C}
- NumGlyphs = 2
- end
- object stData: TStaticText
- Left = 397
- Top = 56
- Width = 97
- Height = 17
- AutoSize = False
- BorderStyle = sbsSunken
- Caption = '99/99/9999 99:99'
- TabOrder = 5
- end
-end
diff --git a/internal/2.31RC1/1/Source/MsgRecForm_U.pas b/internal/2.31RC1/1/Source/MsgRecForm_U.pas
deleted file mode 100644
index a180469..0000000
--- a/internal/2.31RC1/1/Source/MsgRecForm_U.pas
+++ /dev/null
@@ -1,77 +0,0 @@
-unit MsgRecForm_U;
-
-interface
-
-uses
-{$IFDEF VER130}
-{$ELSE}
- Variants,
-{$ENDIF}
- Buttons,
- Classes,
- Controls,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Messages,
- StdCtrls,
- SysUtils,
- UCBase,
- Windows;
-
-type
- TMsgRecForm = class(TForm)
- Panel1: TPanel;
- lbTitulo: TLabel;
- Image1: TImage;
- lbDE: TLabel;
- stDe: TStaticText;
- lbAssunto: TLabel;
- stAssunto: TStaticText;
- lbMensagem: TLabel;
- MemoMsg: TMemo;
- btFechar: TBitBtn;
- lbData: TLabel;
- stData: TStaticText;
- procedure btFecharClick(Sender: TObject);
- procedure FormCreate(Sender: TObject); //added by fduenas
- private
- { Private declarations }
- public
- { Public declarations }
- end;
-
-var
- MsgRecForm: TMsgRecForm;
-
-implementation
-
-uses
- UCMessages;
-
-{$R *.dfm}
-
-procedure TMsgRecForm.btFecharClick(Sender: TObject);
-begin
- Close;
-end;
-
-procedure TMsgRecForm.FormCreate(Sender: TObject);
-begin
- //added by fduenas
- if not (Self.Owner is TUCApplicationMessage) then
- Exit;
- with TUCApplicationMessage(Self.Owner).UserControl.UserSettings.AppMessages do
- begin
- Self.Caption := MsgRec_WindowCaption;
- lbTitulo.Caption := MsgRec_Title;
- lbDE.Caption := MsgRec_LabelFrom;
- lbData.Caption := MsgRec_LabelDate;
- lbAssunto.Caption := MsgRec_LabelSubject;
- lbMensagem.Caption := MsgRec_LabelMessage;
- btFechar.Caption := MsgRec_BtClose;
- end;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/MsgsForm_U.dfm b/internal/2.31RC1/1/Source/MsgsForm_U.dfm
deleted file mode 100644
index 905767a..0000000
--- a/internal/2.31RC1/1/Source/MsgsForm_U.dfm
+++ /dev/null
@@ -1,1153 +0,0 @@
-object MsgsForm: TMsgsForm
- Left = 144
- Top = 150
- BorderStyle = bsDialog
- Caption = 'Mensagens do Sistema'
- ClientHeight = 452
- ClientWidth = 598
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- OldCreateOrder = False
- OnClose = FormClose
- OnCreate = FormCreate
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object Splitter1: TSplitter
- Left = 0
- Top = 237
- Width = 598
- Height = 6
- Cursor = crVSplit
- Align = alTop
- Beveled = True
- end
- object ListView1: TListView
- Left = 0
- Top = 52
- Width = 598
- Height = 185
- Align = alTop
- Columns = <
- item
- Caption = 'Remetente'
- MaxWidth = 300
- MinWidth = 50
- Width = 150
- end
- item
- Caption = 'Assunto'
- MaxWidth = 500
- MinWidth = 50
- Width = 300
- end
- item
- Caption = 'Data'
- MaxWidth = 150
- MinWidth = 50
- Width = 100
- end>
- HideSelection = False
- MultiSelect = True
- ReadOnly = True
- RowSelect = True
- SmallImages = ImageList1
- TabOrder = 0
- ViewStyle = vsReport
- OnColumnClick = ListView1ColumnClick
- OnCompare = ListView1Compare
- OnDblClick = ListView1DblClick
- OnSelectItem = ListView1SelectItem
- end
- object ToolBar1: TToolBar
- Left = 0
- Top = 0
- Width = 598
- Height = 52
- ButtonHeight = 44
- ButtonWidth = 94
- Caption = 'Op'#231#245'es'
- Images = ImageList2
- ShowCaptions = True
- TabOrder = 1
- object btnova: TToolButton
- Left = 0
- Top = 2
- Caption = '&Nova Mensagem'
- ImageIndex = 0
- OnClick = btnovaClick
- end
- object btResponder: TToolButton
- Left = 94
- Top = 2
- Caption = '&Responder'
- ImageIndex = 1
- OnClick = btResponderClick
- end
- object btEncaminhar: TToolButton
- Left = 188
- Top = 2
- Caption = 'E&ncaminhar'
- ImageIndex = 2
- OnClick = btEncaminharClick
- end
- object btExcluir: TToolButton
- Left = 282
- Top = 2
- Caption = '&Excluir'
- ImageIndex = 3
- OnClick = btExcluirClick
- end
- object btClose: TToolButton
- Left = 376
- Top = 2
- Caption = '&Fechar'
- ImageIndex = 4
- OnClick = btCloseClick
- end
- end
- object MemoMsg: TMemo
- Left = 0
- Top = 243
- Width = 598
- Height = 209
- Align = alClient
- ReadOnly = True
- TabOrder = 2
- end
- object ImageList1: TImageList
- Height = 14
- Left = 48
- Top = 88
- Bitmap = {
- 494C010102000400040010000E00FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
- 0000000000003600000028000000400000000E0000000100200000000000000E
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000007B7B7B00FFFFFF0000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B00FFFFFF007B7B7B00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B00000000007B7B7B00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B00FFFFFF007B7B7B00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B00000000007B7B7B0000000000FFFFFF000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B00FFFFFF007B7B7B00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000007B7B7B00FFFFFF0000000000000000007B7B7B00FFFFFF000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000FFFFFF00FFFFFF007B7B7B00FFFFFF007B7B7B00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000007B7B7B000000000000000000000000007B7B7B0000000000FFFF
- FF00000000000000000000000000000000000000000000000000000000007B7B
- 7B007B7B7B007B7B7B007B7B7B00000000007B7B7B007B7B7B007B7B7B007B7B
- 7B00FFFFFF000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00007B7B7B00FFFFFF00000000000000000000000000000000007B7B7B00FFFF
- FF00000000000000000000000000000000000000000000000000000000007B7B
- 7B0000000000FFFFFF0000000000000000000000000000000000000000007B7B
- 7B00000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00007B7B7B0000000000000000000000000000000000000000007B7B7B000000
- 0000FFFFFF000000000000000000000000000000000000000000000000000000
- 00007B7B7B00FFFFFF00000000000000000000000000000000007B7B7B00FFFF
- FF00000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000007B7B
- 7B00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000FFFFFF00FFFFFF007B7B
- 7B00FFFFFF000000000000000000000000000000000000000000000000000000
- 00007B7B7B0000000000FFFFFF000000000000000000000000007B7B7B000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000007B7B
- 7B007B7B7B007B7B7B007B7B7B00FFFFFF007B7B7B007B7B7B007B7B7B007B7B
- 7B00000000000000000000000000000000000000000000000000000000000000
- 0000000000007B7B7B00FFFFFF0000000000000000007B7B7B00FFFFFF000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B00FFFFFF007B7B7B00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000007B7B7B0000000000FFFFFF00000000007B7B7B00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B00FFFFFF007B7B7B00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B00FFFFFF007B7B7B00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B00FFFFFF007B7B7B00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B00000000007B7B7B0000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B00FFFFFF007B7B7B00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000007B7B7B00FFFFFF0000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000007B7B7B007B7B7B007B7B7B0000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000007B7B7B000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000424D3E000000000000003E000000
- 28000000400000000E0000000100010000000000700000000000000000000000
- 000000000000000000000000FFFFFF00FE7FFC3F00000000FD3FFC3F00000000
- FD5FFC3F00000000F99FF00700000000FBAFE10700000000F3CFEBEF00000000
- F7D7F3CF00000000E087F5DF00000000E00FF99F00000000FC3FFABF00000000
- FC3FFC3F00000000FC3FFD7F00000000FC3FFE7F00000000FC7FFEFF00000000
- 00000000000000000000000000000000000000000000}
- end
- object ImageList2: TImageList
- Height = 24
- Width = 24
- Left = 216
- Top = 328
- Bitmap = {
- 494C010105000900040018001800FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
- 000000000000360000002800000060000000480000000100200000000000006C
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900A54A
- 2100A54A2100A54A2100A54A2100A54A2100A54A2100A54A2100A54A2100A54A
- 2100A54A2100A54A2100A54A2100A54A2100A54A2100A54A2100A54A2100A54A
- 2100A54A2100A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFF7
- F700DEC6BD00D6C6B500D6BDB500CEBDAD00CEB5AD00C6B5A500C6AD9C00BDAD
- 9C00BDA59C00BDA59400B5A59400B59C8C00B59C8C00B59C8C00B59C8C00B59C
- 8C00B59C8C00A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFF7F700F7F7F700F7EFEF00F7EFEF00F7EFE700EFE7E700EFE7DE00EFE7
- DE00E7DED600E7DED600E7D6CE00E7D6CE00DECEC600DECEC600DECEBD00DECE
- BD00B59C8C00A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFF7F700F7F7F700F7EFEF00F7EFEF00F7EFE700EFE7E700EFE7
- DE00EFE7DE00E7DED600E7DED600E7D6CE00E7D6CE00DECEC600DECEC600DECE
- BD00B59C8C00A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFFFFF00FFF7F700F7F7F700F7EFEF00F7EFEF00F7EFE700EFE7
- E700EFE7DE00EFE7DE00E7DED600E7DED600E7D6CE00E7D6CE00DECEC600DECE
- C600B59C8C00A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFF7F700F7F7F700F7EFEF00F7EFEF00F7EF
- E700EFE7E700EFE7DE00EFE7DE00E7DED600E7DED600E7D6CE00E7D6CE00DECE
- C600B59C8C00A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFF7F700F7F7F700F7EFEF00F7EF
- EF00F7EFE700EFE7E700EFE7DE00EFE7DE00E7DED600E7DED600E7D6CE00E7D6
- CE00B59C8C00A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFF7F700F7F7F700F7EF
- EF00F7EFEF00F7EFE700EFE7E700EFE7DE00EFE7DE00E7DED600E7DED600E7D6
- CE00B5A59400A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFF7F700F7F7
- F700F7F7EF00F7EFEF00F7EFE700EFE7E700EFE7DE00EFE7DE00EFDEDE00E7DE
- D600BDA59400A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFF7
- F700F7F7F700F7F7EF00F7EFEF00F7EFE700EFE7E700EFE7DE00EFE7DE00EFDE
- DE00BDA59C00A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFF7F700F7F7F700F7F7EF00F7EFEF00F7EFE700EFE7E700EFE7DE00EFE7
- DE00BDAD9C00A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFF7F700F7F7F700F7F7EF00F7EFEF00F7EFE700EFE7E700EFE7
- DE00C6AD9C00A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFF7F700F7F7F700F7F7EF00F7EFEF00F7EFE700EFE7
- E700C6B5A500A54A210000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00BDCEF70000009C0000009C0000009C000000
- 9C0000009C0000009C0000009C00C608FF000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF000031FF00294ACE001842CE001039C6000029
- C6000029C6000029C6000029C60000009C000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900A54A
- 2100A54A2100A54A2100A54A2100A54A2100A54A2100A54A2100A54A2100A54A
- 2100A54A2100A54A2100A54A21000031FF003152D600B5C6F7009CADF7001039
- C6009CADF700B5C6F7000029C60000009C000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000CE732900D66B
- 0000D66B0000D66B0000D66B0000D66B0000D66B0000D66B0000D66B0000D66B
- 0000D66B0000D66B0000D66B00000031FF004263D600CED6F700F7F7FF009CAD
- F700F7F7FF009CADF7000029C60000009C000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000E7426300E78C
- 2900EF943100EF943100EF943100EF943100EF943100EF943100EF943100EF94
- 3100EF943100EF943100EF9431000031FF004A63D6004A63D600D6DEFF00FFFF
- FF009CADF7001839CE000831C60000009C000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000FF10DE00E742
- 6300DE7B0800DE7B0800DE7B0800DE7B0800DE7B0800DE7B0800DE7B0800DE7B
- 0800DE7B0800DE7B0800DE7B08000031FF004A63DE008CA5EF00F7F7FF00CED6
- FF00F7F7FF009CADF7001839CE0000009C000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000031FF005A73E700B5C6F7008C9CEF004A63
- D6009CADF700B5C6F700214ACE0000009C000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000031FF006B84E7005A73E7004A63DE004A63
- D6004A63D600395AD6003152D60000009C000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000C608FF000031FF000031FF000031FF000031
- FF000031FF000031FF000031FF00C608FF000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000005A185A000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000009C3100000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000C6B5A5006B4231006B42
- 31006B4231006B4231006B4231006B4231006B4231006B4231006B4231006B42
- 31006B4231006B4231006B4231006B4231006B4231006B4231006B4231006B42
- 31006B4231006B4231006B423100000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000000000005A185A005A185A000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000009C3100009C31
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000018D6000018D6000000000000000000C6B5A500DED6C600B5A5
- 9400B5A59400B5A59400B5A59400B5A59400B5A59400B5A59400B5A59400B5A5
- 9400B5A59400B5A59400B5A59400B5A59400B5A59400B5A59400B5A59400B5A5
- 9400B5A59400B5A594006B423100000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000005A185A00B56BAD00B563A5005A18
- 5A005A185A005A185A005A185A005A185A000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000D66331009C3100009C3100009C3100009C3100009C310000DE8C
- 63009C3100000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000018D6000018D6000018D6000000000000000000C6B5A500B5A59400DED6
- C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6
- C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6
- C600DED6C600B5A594006B42310000000000C6B5A5006B4231006B4231006B42
- 31006B4231006B4231006B4231006B4231006B4231006B4231006B4231006B42
- 31006B4231006B423100B5A594005A185A00C67BBD00C67BBD00BD6BB500B563
- AD00AD5AA500A5529C009C4A94005A185A00C6B5A5006B4231006B4231006B42
- 31006B4231006B4231006B4231006B4231006B4231006B4231006B4231006B42
- 3100B5A59400D6633100FFC6A500FFB58C00FFAD8C00FFAD8400F7A57B00EF9C
- 7300E7946B009C310000000000000000000000000000000000000018D6000018
- D6000018D6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000018
- D6000018D6000018D600000000000000000000000000C6B5A500DED6C600B5A5
- 9400E7DED600E7DED600E7DED600E7DED600E7DED600E7DED600E7DED600E7DE
- D600E7DED600E7DED600E7DED600E7DED600E7DED600E7DED600E7DED600E7DE
- D600B5A59400B5A594006B42310000000000C6B5A500DED6C600B5A59400B5A5
- 9400B5A59400B5A59400B5A59400B5A59400B5A59400B5A59400B5A59400B5A5
- 9400B5A59400DECEBD005A185A00CE84BD00CE84BD00CE84BD00C67BBD00BD6B
- B500B563AD00AD5AA500A5529C005A185A00C6B5A500DED6C600B5A59400B5A5
- 9400B5A59400B5A59400B5A59400B5A59400B5A59400B5A59400B5A59400B5A5
- 9400DECEBD00D6633100FFC6A500FFB58C00FFB58C00FFB58C00FFAD8400F7A5
- 7B00EF9C7300E7946B009C3100000000000000000000000000000018D6000018
- D6000018D6000018D60000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000000000000018D6000018D6000018
- D6000018D60000000000000000000000000000000000C6B5A500E7D6CE00E7D6
- CE00B5A59400EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7
- DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00B5A5
- 9400DED6C600B5A594006B42310000000000C6B5A500B5A59400DED6C600DED6
- C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6
- C600DED6C6005A185A00D6A5CE00CE84BD00CE84BD00CE84BD00CE84BD00C67B
- BD00BD6BB500B563AD00AD5AA5005A185A00C6B5A500B5A59400DED6C600DED6
- C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6C600DED6
- C600DED6C600D6633100FFC6A500FFB58C00FFB58C00FFB58C00FFB58C00FFAD
- 8400F7A57B00EF9C7300E7946B009C31000000000000000000000018D6000018
- D6000018D6000018D6000018D600000000000000000000000000000000000000
- 0000000000000000000000000000000000000018D6000018D6000018D6000018
- D6000000000000000000000000000000000000000000C6B5A500EFDEDE00EFDE
- DE00EFDEDE00B5A59400F7EFEF00F7EFEF00F7EFEF00F7EFEF00F7EFEF00F7EF
- EF00F7EFEF00F7EFEF00F7EFEF00F7EFEF00F7EFEF00F7EFEF00B5A59400E7DE
- D600E7DED600B5A594006B42310000000000C6B5A500DED6C600B5A59400E7DE
- D600E7DED600E7DED600E7DED600E7DED600E7DED600E7DED600E7DED600E7DE
- D600E7DED600E7DED600A5429400D6A5CE00CE84BD00CE84BD00CE84BD00CE84
- BD00C67BBD00BD6BB500B563AD005A185A00C6B5A500DED6C600B5A59400E7DE
- D600E7DED600E7DED600E7DED600E7DED600E7DED600E7DED600E7DED600E7DE
- D600E7DED600D6633100FFC6A500FFB58C00FFB58C00FFB58C00FFB58C00FFB5
- 8C00FFAD8400F7A57B009C310000000000000000000000000000000000000018
- D6000018D6000018D6000018D6000018D6000000000000000000000000000000
- 00000000000000000000000000000018D6000018D6000018D6000018D6000000
- 00000000000000000000000000000000000000000000C6B5A500EFE7E700EFE7
- E700EFE7E700EFE7E700B5A59400F7F7F700F7F7F700F7F7F700F7F7F700F7F7
- F700F7F7F700F7F7F700F7F7F700F7F7F700F7F7F700B5A59400EFE7DE00EFE7
- DE00EFE7DE00B5A594006B42310000000000C6B5A500E7D6CE00E7D6CE00B5A5
- 9400EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7
- DE00EFE7DE00EFE7DE00EFE7DE00A5429400D6A5CE00CE84BD00CE84BD00CE84
- BD00CE84BD00CE84BD00CE84BD005A185A00C6B5A500E7D6CE00E7D6CE00B5A5
- 9400EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7DE00EFE7
- DE00EFE7DE00D6633100FFC6A500FFC6A500FFC6A500FFC6A500FFC6A500FFC6
- A500FFB58C009C31000000000000000000000000000000000000000000000000
- 00000018FF000018D6000018D6000018D6000018D60000000000000000000000
- 000000000000000000000018D6000018D6000018D6000018D600000000000000
- 00000000000000000000000000000000000000000000C6B5A500F7EFE700F7EF
- E700F7EFE700F7EFE700F7EFE700B5A59400FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00B5A59400F7EFEF00F7EFEF00F7EF
- EF00F7EFEF00B5A594006B42310000000000C6B5A500EFDEDE00EFDEDE00EFDE
- DE00B5A59400F7EFEF00F7EFEF00F7EFEF00F7EFEF00F7EFEF00F7EFEF00F7EF
- EF00F7EFEF00F7EFEF00F7EFEF00F7EFEF00A5429400D6A5CE00A5429400A542
- 9400A5429400A5429400A5429400A5429400C6B5A500EFDEDE00EFDEDE00EFDE
- DE00B5A59400F7EFEF00F7EFEF00F7EFEF00F7EFEF00F7EFEF00F7EFEF00F7EF
- EF00F7EFEF00D6633100D6633100D6633100D6633100D6633100D6633100FFC6
- A5009C3100000000000000000000000000000000000000000000000000000000
- 000000000000000000000018D6000018D6000018D6000018D600000000000000
- 00000018D6000018D6000018D6000018D6000018D60000000000000000000000
- 00000000000000000000000000000000000000000000C6B5A500F7EFEF00F7EF
- EF00F7EFEF00F7EFEF00B5A59400EFE7E700B5A59400FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00B5A59400DEC6C600B5A59400F7F7F700F7F7
- F700F7F7F700B5A594006B42310000000000C6B5A500EFE7E700EFE7E700EFE7
- E700EFE7E700B5A59400F7F7F700F7F7F700F7F7F700F7F7F700F7F7F700F7F7
- F700F7F7F700F7F7F700F7F7F700B5A59400EFE7DE00A5429400A5429400DECE
- BD00B5A59400000000000000000000000000C6B5A500EFE7E700EFE7E700EFE7
- E700EFE7E700B5A59400F7F7F700F7F7F700F7F7F700F7F7F700F7F7F700F7F7
- F700F7F7F700F7F7F700F7F7F700B5A59400EFE7DE00EFE7DE00D66331009C31
- 0000B5A594000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000018D6000018D6000018D6000018D6000018
- D6000018D6000018D6000018D6000018D6000000000000000000000000000000
- 00000000000000000000000000000000000000000000C6B5A500FFF7F700FFF7
- F700FFF7F700B5A59400EFE7E700FFFFF700EFE7E700B5A59400B5A59400B5A5
- 9400B5A59400B5A59400B5A59400DEC6C600DECEBD00DEC6C600B5A59400FFFF
- FF00FFFFFF00B5A594006B42310000000000C6B5A500F7EFE700F7EFE700F7EF
- E700F7EFE700F7EFE700B5A59400FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00B5A59400F7EFEF00F7EFEF00F7EFEF00A5429400DECE
- BD006B423100000000000000000000000000C6B5A500F7EFE700F7EFE700F7EF
- E700F7EFE700F7EFE700B5A59400FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00B5A59400F7EFEF00F7EFEF00F7EFEF009C310000DECE
- BD006B4231000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000018D6000018D6000018FF000018
- D6000018FF000018D6000018D600000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000C6B5A500FFFFFF00FFFF
- FF00B5A59400EFE7E700FFFFFF00FFFFFF00FFFFF700EFE7E700EFE7E700EFE7
- E700EFE7E700EFE7E700EFE7E700E7D6CE00E7D6CE00DECEC600DEC6C600B5A5
- 9400FFFFFF00B5A594006B42310000000000C6B5A500F7EFEF00F7EFEF00F7EF
- EF00F7EFEF00B5A59400DEC6C600B5A59400FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00B5A59400DEC6C600B5A59400F7F7F700F7F7F700F7F7F700B5A5
- 94006B423100000000000000000000000000C6B5A500F7EFEF00F7EFEF00F7EF
- EF00F7EFEF00B5A59400DEC6C600B5A59400FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00B5A59400DEC6C600B5A59400F7F7F700F7F7F700F7F7F700B5A5
- 94006B4231000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000000000000018D6000018D6000018
- D6000018FF000018D60000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000C6B5A500FFFFFF00BDA5
- 9400FFFFFF00FFFFFF00B5A59400B5A59400B5A59400B5A59400B5A59400B5A5
- 9400B5A59400B5A59400B5A59400B5A59400B5A59400E7D6CE00DECEC600CEB5
- A500B5A59400F7F7EF006B42310000000000C6B5A500FFF7F700FFF7F700FFF7
- F700B5A59400DEC6C600B5E7FF00ADDEFF00B5A59400B5A59400B5A59400B5A5
- 9400B5A59400DEC6C60073C6FF006BC6FF00B5A59400FFFFFF00FFFFFF00B5A5
- 94006B423100000000000000000000000000C6B5A500FFF7F700FFF7F700FFF7
- F700B5A59400DEC6C600B5E7FF00ADDEFF00B5A59400B5A59400B5A59400B5A5
- 9400B5A59400DEC6C60073C6FF006BC6FF00B5A59400FFFFFF00FFFFFF00B5A5
- 94006B4231000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000018D6000018D6000018FF000018
- D6000018D6000018FF000018FF00000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000C6B5A500B5A59400CEB5
- A500FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFF7
- F700F7F7EF00F7EFEF00EFE7E700EFE7DE00EFDED600E7D6CE00E7D6CE00CEB5
- A500DEC6C600D6A59C006B42310000000000C6B5A500FFFFFF00FFFFFF00B5A5
- 9400DEC6C600C6EFFF00BDE7FF00B5E7FF00ADDEFF00A5DEFF009CDEFF0094D6
- FF008CD6FF0084CEFF007BCEFF0073C6FF006BC6FF00B5A59400FFFFFF00B5A5
- 94006B423100000000000000000000000000C6B5A500FFFFFF00FFFFFF00B5A5
- 9400DEC6C600C6EFFF00BDE7FF00B5E7FF00ADDEFF00A5DEFF009CDEFF0094D6
- FF008CD6FF0084CEFF007BCEFF0073C6FF006BC6FF00B5A59400FFFFFF00B5A5
- 94006B4231000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000018D6000018D6000018FF000018D6000018
- FF000018FF000018FF000018D6000018FF000000000000000000000000000000
- 00000000000000000000000000000000000000000000C6B5A50021A5EF00CEB5
- A500FFFFFF00FFFFFF00B5A59400B5A59400B5A59400B5A59400B5A59400B5A5
- 9400B5A59400B5A59400B5A59400B5A59400B5A59400EFDED600E7D6CE00CEB5
- A50021A5EF00B5A594006B42310000000000C6B5A500FFFFFF00BDA59400DEC6
- C600D6EFFF00CEEFFF00C6EFFF00BDE7FF00B5E7FF00ADDEFF00A5DEFF009CDE
- FF0094D6FF008CD6FF0084CEFF007BCEFF0073C6FF006BC6FF00B5A59400F7F7
- EF006B423100000000000000000000000000C6B5A500FFFFFF00BDA59400DEC6
- C600D6EFFF00CEEFFF00C6EFFF00BDE7FF00B5E7FF00ADDEFF00A5DEFF009CDE
- FF0094D6FF008CD6FF0084CEFF007BCEFF0073C6FF006BC6FF00B5A59400F7F7
- EF006B4231000000000000000000000000000000000000000000000000000000
- 000000000000000000000018FF000018FF000018FF000018D6000018FF000000
- 0000000000000018FF000018FF000018FF000018FF0000000000000000000000
- 00000000000000000000000000000000000000000000C6B5A50021A5EF00CEB5
- A500FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFF7F700F7F7EF00F7EFEF00EFE7E700EFE7DE00EFDED600CEB5
- A50021A5EF00B5A594006B42310000000000C6B5A500B5A59400DEC6C600DEF7
- FF00DEF7FF00D6EFFF00CEEFFF00C6EFFF00BDE7FF00B5E7FF00ADDEFF00A5DE
- FF009CDEFF0094D6FF008CD6FF0084CEFF007BCEFF0073C6FF006BC6FF00D6A5
- 9C006B423100000000000000000000000000C6B5A500B5A59400DEC6C600DEF7
- FF00DEF7FF00D6EFFF00CEEFFF00C6EFFF00BDE7FF00B5E7FF00ADDEFF00A5DE
- FF009CDEFF0094D6FF008CD6FF0084CEFF007BCEFF0073C6FF006BC6FF00D6A5
- 9C006B4231000000000000000000000000000000000000000000000000000000
- 0000000000000018FF000018FF000018D6000018FF000018FF00000000000000
- 000000000000000000000018FF000018FF000018FF000018FF00000000000000
- 0000000000000000000000000000000000000000000000000000C6B5A500CEB5
- A500CEB5A500CEB5A500CEB5A500CEB5A500CEB5A500CEB5A500CEB5A500CEB5
- A500CEB5A500CEB5A500CEB5A500CEB5A500CEB5A500CEB5A500CEB5A500CEB5
- A500BDA594006B4231000000000000000000C6B5A500DEC6C600DEF7FF00DEF7
- FF00DEF7FF00DEF7FF00D6EFFF00CEEFFF00C6EFFF00BDE7FF00B5E7FF00ADDE
- FF00A5DEFF009CDEFF0094D6FF008CD6FF0084CEFF007BCEFF0073C6FF006BC6
- FF006B423100000000000000000000000000C6B5A500DEC6C600DEF7FF00DEF7
- FF00DEF7FF00DEF7FF00D6EFFF00CEEFFF00C6EFFF00BDE7FF00B5E7FF00ADDE
- FF00A5DEFF009CDEFF0094D6FF008CD6FF0084CEFF007BCEFF0073C6FF006BC6
- FF006B4231000000000000000000000000000000000000000000000000000000
- 00000018FF000018FF000018FF000018FF000018FF0000000000000000000000
- 0000000000000000000000000000000000000018FF000018FF000018FF000000
- 000000000000000000000000000000000000000000000000000000000000C6B5
- A500DEF7FF00DEF7FF00DEF7FF00D6F7FF00C6EFFF00B5E7FF00A5DEFF009CD6
- FF008CD6FF007BCEFF006BC6FF005ABDFF004ABDFF0042B5FF0042B5FF00B5A5
- 94006B42310000000000000000000000000000000000C6B5A500DEF7FF00DEF7
- FF00DEF7FF00DEF7FF00DEF7FF00D6F7FF00CEEFFF00C6EFFF00BDE7FF00B5E7
- FF00ADDEFF00A5DEFF009CDEFF0094D6FF008CD6FF0084CEFF007BCEFF006B42
- 31000000000000000000000000000000000000000000C6B5A500DEF7FF00DEF7
- FF00DEF7FF00DEF7FF00DEF7FF00D6F7FF00CEEFFF00C6EFFF00BDE7FF00B5E7
- FF00ADDEFF00A5DEFF009CDEFF0094D6FF008CD6FF0084CEFF007BCEFF006B42
- 3100000000000000000000000000000000000000000000000000000000000018
- FF000018FF000018FF000018FF000018FF000000000000000000000000000000
- 000000000000000000000000000000000000000000000018FF000018FF000018
- FF00000000000000000000000000000000000000000000000000000000000000
- 0000C6B5A500DEF7FF00DEF7FF00DEF7FF00D6F7FF00C6EFFF00B5E7FF00A5DE
- FF009CD6FF0094D6FF0084CEFF0073CEFF0063C6FF0052BDFF00B5A594006B42
- 3100000000000000000000000000000000000000000000000000C6B5A500DEF7
- FF00DEF7FF00DEF7FF00DEF7FF00DEF7FF00D6F7FF00CEEFFF00C6EFFF00BDE7
- FF00B5E7FF00ADE7FF00A5DEFF009CDEFF0094D6FF008CD6FF006B4231000000
- 0000000000000000000000000000000000000000000000000000C6B5A500DEF7
- FF00DEF7FF00DEF7FF00DEF7FF00DEF7FF00D6F7FF00CEEFFF00C6EFFF00BDE7
- FF00B5E7FF00ADE7FF00A5DEFF009CDEFF0094D6FF008CD6FF006B4231000000
- 00000000000000000000000000000000000000000000000000000018FF000018
- FF000018FF000018FF000018FF00000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000018
- FF00000000000000000000000000000000000000000000000000000000000000
- 000000000000C6B5A500DEF7FF00DEF7FF00DEF7FF00DEF7FF00CEEFFF00BDE7
- FF00ADE7FF009CDEFF0094D6FF0084CEFF0073CEFF00B5A594006B4231000000
- 000000000000000000000000000000000000000000000000000000000000C6B5
- A500DEF7FF00DEF7FF00DEF7FF00DEF7FF00DEF7FF00D6F7FF00CEEFFF00C6EF
- FF00BDE7FF00B5E7FF00ADE7FF00A5DEFF009CDEFF006B423100000000000000
- 000000000000000000000000000000000000000000000000000000000000C6B5
- A500DEF7FF00DEF7FF00DEF7FF00DEF7FF00DEF7FF00D6F7FF00CEEFFF00C6EF
- FF00BDE7FF00B5E7FF00ADE7FF00A5DEFF009CDEFF006B423100000000000000
- 000000000000000000000000000000000000000000000018FF000018FF000018
- FF000018FF000018FF0000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000C6B5A500DEF7FF00DEF7FF00DEF7FF00DEF7FF00CEEF
- FF00BDE7FF00ADE7FF009CDEFF0094D6FF00B5A594006B423100000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6B5A500DEF7FF00DEF7FF00DEF7FF00DEF7FF00DEF7FF00D6F7FF00CEEF
- FF00C6EFFF00BDE7FF00B5E7FF00ADE7FF006B42310000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6B5A500DEF7FF00DEF7FF00DEF7FF00DEF7FF00DEF7FF00D6F7FF00CEEF
- FF00C6EFFF00BDE7FF00B5E7FF00ADE7FF006B42310000000000000000000000
- 000000000000000000000000000000000000000000000018FF000018FF000018
- FF000018FF000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000C6B5A500DEF7FF00DEF7FF00DEF7FF00DEF7
- FF00CEEFFF00BDE7FF00ADE7FF009CDEFF006B42310000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000C6B5A500DEF7FF00DEF7FF00DEF7FF00DEF7FF00DEF7FF00D6F7
- FF00CEEFFF00C6EFFF00BDE7FF006B4231000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000C6B5A500DEF7FF00DEF7FF00DEF7FF00DEF7FF00DEF7FF00D6F7
- FF00CEEFFF00C6EFFF00BDE7FF006B4231000000000000000000000000000000
- 000000000000000000000000000000000000000000000018FF000018FF000018
- FF00000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000C6B5A500C6B5A500C6B5A500C6B5
- A500C6B5A500C6B5A500C6B5A500C6B5A5000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000C6B5A500DEF7FF00DEF7FF00DEF7FF00DEF7FF00DEF7
- FF00D6F7FF00CEEFFF006B423100000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000C6B5A500DEF7FF00DEF7FF00DEF7FF00DEF7FF00DEF7
- FF00D6F7FF00CEEFFF006B423100000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000C6B5A500C6B5A500C6B5A500C6B5A500C6B5
- A500C6B5A500C6B5A50000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000C6B5A500C6B5A500C6B5A500C6B5A500C6B5
- A500C6B5A500C6B5A50000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000424D3E000000000000003E000000
- 2800000060000000480000000100010000000000600300000000000000000000
- 000000000000000000000000FFFFFF0000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000FFFFFF000000000000000000FFFFFF00
- 0000000000000000C00003000000000000000000C00003000000000000000000
- C00003000000000000000000C00003000000000000000000C000030000000000
- 00000000C00003000000000000000000C00003000000000000000000C0000300
- 0000000000000000C00003000000000000000000C00003000000000000000000
- C00003000000000000000000C00003000000000000000000C000030000000000
- 00000000C00000000000000000000000C00000000000000000000000C0000000
- 0000000000000000C00000000000000000000000C00000000000000000000000
- C00000000000000000000000FFFE00000000000000000000FFFE000000000000
- 00000000FFFE00000000000000000000FFFFFFFFFFDFFFFFDFFFFFFF800001FF
- FF9FFFFFCFFFFFF9800001FFFF00FFF807FFFFF1800001000000000003C7FFE3
- 800001000000000001C3FF87800001000000000000C1FF0F8000010000000000
- 01E0FE1F800001000000000003F07C3F800001000000000007FC307F80000100
- 0007000007FE00FF800001000007000007FF01FF800001000007000007FF83FF
- 800001000007000007FF01FF800001000007000007FE00FF8000010000070000
- 07FC187F800001000007000007F83C3FC00003000007000007F07F1FE0000780
- 000F80000FE0FF8FF0000FC0001FC0001FC1FFEFF8001FE0003FE0003F83FFFF
- FC003FF0007FF0007F87FFFFFE007FF800FFF800FF8FFFFFFF00FFFC01FFFC01
- FFFFFFFFFFFFFFFE03FFFE03FFFFFFFF00000000000000000000000000000000
- 000000000000}
- end
-end
diff --git a/internal/2.31RC1/1/Source/MsgsForm_U.pas b/internal/2.31RC1/1/Source/MsgsForm_U.pas
deleted file mode 100644
index 6913efe..0000000
--- a/internal/2.31RC1/1/Source/MsgsForm_U.pas
+++ /dev/null
@@ -1,346 +0,0 @@
-unit MsgsForm_U;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
-{$IFDEF DELPHI5_UP}
- Variants,
-{$ENDIF}
- Classes,
- ComCtrls,
- Controls,
- DB,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- ImgList,
- Messages,
- StdCtrls,
- SysUtils,
- ToolWin,
- Windows;
-
-type
- TPointMsg = ^PPointMsg;
-
- PPointMsg = record
- IdMsg: Integer;
- Msg: String;
- end;
-
- TMsgsForm = class(TForm)
- ImageList1: TImageList;
- ListView1: TListView;
- ToolBar1: TToolBar;
- btnova: TToolButton;
- ImageList2: TImageList;
- btResponder: TToolButton;
- btEncaminhar: TToolButton;
- btExcluir: TToolButton;
- Splitter1: TSplitter;
- btClose: TToolButton;
- MemoMsg: TMemo;
- procedure btCloseClick(Sender: TObject);
- procedure btnovaClick(Sender: TObject);
- procedure ListView1SelectItem(Sender: TObject; Item: TListItem; Selected: Boolean);
- procedure ListView1ColumnClick(Sender: TObject; Column: TListColumn);
- procedure ListView1Compare(Sender: TObject; Item1, Item2: TListItem; Data: Integer; var Compare: Integer);
- procedure ListView1DblClick(Sender: TObject);
- procedure btExcluirClick(Sender: TObject);
- procedure btEncaminharClick(Sender: TObject);
- procedure btResponderClick(Sender: TObject);
- procedure FormShow(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
- private
- FColuna: Integer;
- FAsc: Boolean;
- FListaTPointMsg: array of TPointMsg;
- procedure MontaTela;
- public
- DSMsgs: TDataset;
- DSUsuarios: TDataset;
- end;
-
-var
- MsgsForm: TMsgsForm;
-
-implementation
-
-uses
- EnvMsgForm_U,
- MsgRecForm_U,
- UCBase;
-
-{$R *.dfm}
-
-procedure TMsgsForm.btCloseClick(Sender: TObject);
-begin
- Close;
-end;
-
-procedure TMsgsForm.btnovaClick(Sender: TObject);
-begin
- EnvMsgForm := TEnvMsgForm.Create(Self.Owner);
- EnvMsgForm.DataSource1.DataSet := DSUsuarios;
- EnvMsgForm.Showmodal;
- FreeAndNil(EnvMsgForm);
-end;
-
-function FmtDtHr(dt: String): String;
-begin
- Result := Copy(dt, 7, 2) + '/' + Copy(dt, 5, 2) + '/' + Copy(dt, 1, 4) + ' ' + Copy(dt, 9, 2) + ':' + Copy(dt, 11, 2);
-end;
-
-procedure TMsgsForm.MontaTela;
-var
- TempPoint: TPointMsg;
-begin
- DSMsgs.Open;
- while not DSMsgs.EOF do
- begin
- with ListView1.Items.Add do
- begin
- ImageIndex := -1;
- StateIndex := -1;
- Caption := DSMsgs.FieldByName('de').AsString;
- SubItems.Add(DSMsgs.FieldByName('Subject').AsString);
- SubItems.Add(FmtDtHr(DSMsgs.FieldByName('DtSend').AsString));
- New(TempPoint);
- SetLength(FListaTPointMsg, Length(FListaTPointMsg) + 1);
- FListaTPointMsg[High(FListaTPointMsg)] := TempPoint;
- TempPoint.IdMsg := DSMsgs.FieldByName('idMsg').AsInteger;
- TempPoint.Msg := DSMsgs.FieldByName('Msg').AsString;
- Data := TempPoint;
- end;
- DSMsgs.Next;
-{$IFDEF DELPHI5}
- ListView1.Selected := nil;
-{$ELSE}
- ListView1.ItemIndex := 0;
-{$ENDIF}
-
- end;
- DSMsgs.Close;
-end;
-
-procedure TMsgsForm.ListView1SelectItem(Sender: TObject; Item: TListItem; Selected: Boolean);
-begin
- if ListView1.SelCount > 1 then
- begin
- btResponder.Enabled := False;
- btEncaminhar.Enabled := False;
- end
- else
- begin
- btResponder.Enabled := True;
- btEncaminhar.Enabled := True;
- end;
- MemoMsg.Text := TPointMsg(Item.Data).Msg;
-end;
-
-procedure TMsgsForm.ListView1ColumnClick(Sender: TObject; Column: TListColumn);
-begin
- if FColuna = Column.Index then
- begin
- FAsc := not FAsc;
- ListView1.Columns[FColuna].ImageIndex := integer(FAsc);
- end
- else
- begin
- ListView1.Columns[FColuna].ImageIndex := -1;
- FColuna := Column.Index;
- FAsc := True;
- ListView1.Columns[FColuna].ImageIndex := integer(FAsc);
- end;
- (Sender as TCustomListView).AlphaSort;
-end;
-
-procedure TMsgsForm.ListView1Compare(Sender: TObject; Item1, Item2: TListItem; Data: Integer; var Compare: Integer);
-var
- ix: Integer;
-begin
- if FColuna = 0 then
- begin
- if FAsc then
- Compare := CompareText(Item1.Caption, Item2.Caption)
- else
- Compare := CompareText(Item2.Caption, Item1.Caption);
- end
- else
- begin
- ix := FColuna - 1;
- if FAsc then
- Compare := CompareText(Item1.SubItems[ix], Item2.SubItems[ix])
- else
- Compare := CompareText(Item2.SubItems[ix], Item1.SubItems[ix]);
- end;
-end;
-
-procedure TMsgsForm.ListView1DblClick(Sender: TObject);
-begin
- if ListView1.Selected = nil then
- exit; //added to prevent AV error {fduenas}
- MsgRecForm := TMsgRecForm.Create(Self.Owner); //midifed by fduenas
-
- MsgRecForm.MemoMsg.Text := TPointMsg(ListView1.Selected.Data).Msg;
- MsgRecForm.stDe.Caption := ListView1.Selected.Caption;
- MsgRecForm.stAssunto.Caption := ListView1.Selected.SubItems[0];
- MsgRecForm.stData.Caption := ListView1.Selected.SubItems[1];
-
- MsgRecForm.ShowModal;
- FreeAndNil(MsgRecForm);
-end;
-
-procedure TMsgsForm.btExcluirClick(Sender: TObject);
-var
- contador: Integer;
-begin
-{$IFDEF DELPHI5}
- if ListView1.Selected = nil then
- begin
- //Modfied by fduenas
- MessageBox(Handle, PChar(TUCApplicationMessage(Owner).UserControl.Settings.AppMessages.MsgsForm_NoMessagesSelected),
- PChar(TUCApplicationMessage(Owner).UserControl.Settings.AppMessages.MsgsForm_NoMessagesSelected_WindowCaption),
- MB_ICONINFORMATION + MB_OK);
- Exit;
- end;
-{$ELSE}
- if ListView1.ItemIndex = -1 then
- begin
- //Modfied by fduenas
- MessageBox(Handle, PChar(TUCApplicationMessage(Owner).UserControl.UserSettings.AppMessages.MsgsForm_NoMessagesSelected),
- PChar(TUCApplicationMessage(Owner).UserControl.UserSettings.AppMessages.MsgsForm_NoMessagesSelected_WindowCaption),
- MB_ICONINFORMATION or mb_OK);
- Exit;
- end;
-{$ENDIF}
-
- if ListView1.SelCount = 1 then
- begin
- TUCApplicationMessage(Owner).DeleteAppMessage(TPointMsg(ListView1.Selected.Data).idMsg);
- {$IFDEF DELPHI5}
- ListView1.Selected.Delete;
- {$ELSE}
- ListView1.DeleteSelected;
- {$ENDIF}
- end
- else
- begin
- for contador := 0 to LIstView1.Items.Count - 1 do
- if ListView1.items[contador].selected then
- TUCApplicationMessage(Owner).DeleteAppMessage(TPointMsg(ListView1.items[contador].Data).idMsg);
- {$IFDEF DELPHI5}
- ListView1.Selected.Delete;
- {$ELSE}
- ListView1.DeleteSelected;
- {$ENDIF}
- end;
-
-end;
-
-procedure TMsgsForm.btEncaminharClick(Sender: TObject);
-var
- contador: Integer;
-begin
-{$IFDEF DELPHI5}
- if ListView1.Selected = nil then
- begin
- //Modfied by fduenas
- MessageBox(Handle, PChar(TUCApplicationMessage(Owner).UserControl.Settings.AppMessages.MsgsForm_NoMessagesSelected),
- PChar(TUCApplicationMessage(Owner).UserControl.Settings.AppMessages.MsgsForm_NoMessagesSelected_WindowCaption),
- MB_ICONINFORMATION or mb_OK);
- Exit;
- end;
-{$ELSE}
- if ListView1.ItemIndex = -1 then
- begin
- //Modfied by fduenas
- MessageBox(Handle, PChar(TUCApplicationMessage(Owner).UserControl.UserSettings.AppMessages.MsgsForm_NoMessagesSelected),
- PChar(TUCApplicationMessage(Owner).UserControl.UserSettings.AppMessages.MsgsForm_NoMessagesSelected_WindowCaption),
- MB_ICONINFORMATION or mb_OK);
- Exit;
- end;
-{$ENDIF}
- try
- EnvMsgForm := TEnvMsgForm.Create(Self.Owner);
- EnvMsgForm.DataSource1.DataSet := DSUsuarios;
- if EnvMsgForm.dbUsuario.Text <> '' then
- EnvMsgForm.dbUsuario.Enabled := False;
- EnvMsgForm.EditAssunto.Text := Copy('Enc: ' + ListView1.Selected.SubItems[0], 1, EnvMsgForm.EditAssunto.MaxLength);
- EnvMsgForm.MemoMsg.Text := TPointMsg(ListView1.Selected.Data).Msg;
- for contador := 0 to EnvMsgForm.MemoMsg.Lines.Count - 1 do
- EnvMsgForm.MemoMsg.Lines[contador] := '>' + EnvMsgForm.MemoMsg.Lines[contador];
- EnvMsgForm.MemoMsg.Lines.Insert(0, ListView1.Selected.Caption + ' ' + ListView1.Selected.SubItems[1]);
- EnvMsgForm.MemoMsg.Text := Copy(EnvMsgForm.MemoMsg.Text, 1, EnvMsgForm.MemoMsg.MaxLength);
- EnvMsgForm.Showmodal;
- finally
- FreeAndNil(EnvMsgForm);
- end;
-end;
-
-procedure TMsgsForm.btResponderClick(Sender: TObject);
-begin
-{$IFDEF DELPHI5}
- if ListView1.Selected = nil then
- begin
- //Modfied by fduenas
- MessageBox(Handle, PChar(TUCApplicationMessage(Owner).UserControl.Settings.AppMessages.MsgsForm_NoMessagesSelected), PChar(TUCApplicationMessage(Owner).UserControl.Settings.AppMessages.MsgsForm_NoMessagesSelected_WindowCaption), MB_ICONINFORMATION + MB_OK);
- Exit;
- end;
-{$ELSE}
- if ListView1.ItemIndex = -1 then
- begin
- //Modfied by fduenas
- MessageBox(Handle, PChar(TUCApplicationMessage(Owner).UserControl.UserSettings.AppMessages.MsgsForm_NoMessagesSelected),
- PChar(TUCApplicationMessage(Owner).UserControl.UserSettings.AppMessages.MsgsForm_NoMessagesSelected_WindowCaption),
- MB_ICONINFORMATION or mb_OK);
- Exit;
- end;
-{$ENDIF}
- try
- EnvMsgForm := TEnvMsgForm.Create(Self.Owner);
- EnvMsgForm.rbUsuario.Checked := True;
- EnvMsgForm.rbTodos.Enabled := False;
- DSMsgs.Open;
- DSMsgs.Locate('idMsg', TPointMsg(ListView1.Selected.Data).idMsg, []);
- EnvMsgForm.DataSource1.DataSet := DSUsuarios;
- EnvMsgForm.dbUsuario.KeyValue := DSMsgs.FieldByName('UsrFrom').AsInteger;
- if EnvMsgForm.dbUsuario.Text <> '' then
- EnvMsgForm.dbUsuario.Enabled := False;
- EnvMsgForm.EditAssunto.Text := Copy('Re: ' + ListView1.Selected.SubItems[0], 1, EnvMsgForm.EditAssunto.MaxLength);
- EnvMsgForm.Showmodal;
- finally
- DSMsgs.Close;
- FreeAndNil(EnvMsgForm);
- end;
-end;
-
-procedure TMsgsForm.FormClose(Sender: TObject; var Action: TCloseAction);
-var
- I: Integer;
-begin
- for I := 0 to High(FListaTPointMsg) do
- Dispose(FListaTPointMsg[I]);
-
- if Assigned(DSMsgs) then
- SysUtils.FreeAndNil(DSMsgs);
-
- if Assigned(DSUsuarios) then
- SysUtils.FreeAndNil(DSUsuarios);
-end;
-
-procedure TMsgsForm.FormCreate(Sender: TObject);
-begin
- SetLength(FListaTPointMsg, 0);
-end;
-
-procedure TMsgsForm.FormShow(Sender: TObject);
-begin
- MontaTela;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/SenhaForm_U.dfm b/internal/2.31RC1/1/Source/SenhaForm_U.dfm
deleted file mode 100644
index 3ad53eb..0000000
--- a/internal/2.31RC1/1/Source/SenhaForm_U.dfm
+++ /dev/null
@@ -1,73 +0,0 @@
-object SenhaForm: TSenhaForm
- Left = 355
- Top = 241
- ActiveControl = edtSenha
- BorderStyle = bsDialog
- Caption = 'Digitar Senha...'
- ClientHeight = 145
- ClientWidth = 244
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- OldCreateOrder = False
- Position = poMainFormCenter
- OnClose = FormClose
- OnCloseQuery = FormCloseQuery
- OnCreate = FormCreate
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object LabelSenha: TLabel
- Left = 16
- Top = 7
- Width = 30
- Height = 13
- Caption = 'Senha'
- end
- object LabelConfirma: TLabel
- Left = 16
- Top = 51
- Width = 30
- Height = 13
- Caption = 'Senha'
- end
- object edtSenha: TEdit
- Left = 16
- Top = 23
- Width = 217
- Height = 21
- Ctl3D = True
- ParentCtl3D = False
- PasswordChar = '*'
- TabOrder = 0
- end
- object edtConfirmaSenha: TEdit
- Left = 16
- Top = 67
- Width = 217
- Height = 21
- Ctl3D = True
- ParentCtl3D = False
- PasswordChar = '*'
- TabOrder = 1
- end
- object btnOK: TBitBtn
- Left = 44
- Top = 108
- Width = 75
- Height = 25
- TabOrder = 2
- Kind = bkOK
- end
- object BtCancel: TBitBtn
- Left = 124
- Top = 108
- Width = 75
- Height = 25
- TabOrder = 3
- Kind = bkCancel
- end
-end
diff --git a/internal/2.31RC1/1/Source/SenhaForm_U.pas b/internal/2.31RC1/1/Source/SenhaForm_U.pas
deleted file mode 100644
index ee9be2c..0000000
--- a/internal/2.31RC1/1/Source/SenhaForm_U.pas
+++ /dev/null
@@ -1,95 +0,0 @@
-unit SenhaForm_U;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- Buttons,
- Classes,
- Controls,
- Dialogs,
- Forms,
- Graphics,
- Messages,
- StdCtrls,
- SysUtils,
- Variants,
- Windows,
- UCBase;
-
-type
- TSenhaForm = class(TForm)
- edtSenha: TEdit;
- edtConfirmaSenha: TEdit;
- btnOK: TBitBtn;
- BtCancel: TBitBtn;
- LabelSenha: TLabel;
- LabelConfirma: TLabel;
- procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
- procedure FormCreate(Sender: TObject);
- procedure FormShow(Sender: TObject);
- private
- { Private declarations }
- function CompararSenhas(Senha, ConfirmaSenha: String): Boolean;
- public
- fUserControl : TUserControl;
- { Public declarations }
- end;
-
-implementation
-
-{$R *.dfm}
-
-{ TForm1 }
-
-function TSenhaForm.CompararSenhas(Senha, ConfirmaSenha: String): Boolean;
-begin
- Result := False;
- With fUserControl do
- begin
- if ( UserPasswordChange.ForcePassword ) and ( senha = '' ) then
- MessageDlg(UserSettings.CommonMessages.ChangePasswordError.PasswordRequired, mtWarning, [mbOK], 0)
- else if Length( Senha ) < UserPasswordChange.MinPasswordLength then
- MessageDlg(Format(UserSettings.CommonMessages.ChangePasswordError.MinPasswordLength, [UserPasswordChange.MinPasswordLength]), mtWarning, [mbOK], 0)
- else if Pos(LowerCase(senha), 'abcdeasdfqwerzxcv1234567890321654987teste' + LowerCase(CurrentUser.UserName) + LowerCase(CurrentUser.UserLogin)) > 0 then
- MessageDlg(UserSettings.CommonMessages.ChangePasswordError.InvalidNewPassword, mtWarning, [mbOK], 0)
- else if ( senha <> confirmasenha ) then
- MessageDlg( UserSettings.CommonMessages.ChangePasswordError.NewPasswordError , mtWarning, [mbOK], 0)
- else result := true;
- End;
-end;
-
-procedure TSenhaForm.FormClose(Sender: TObject; var Action: TCloseAction);
-begin
- Action := caFree;
-end;
-
-procedure TSenhaForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
-begin
- if not (ModalResult = mrCancel) then
- begin
- CanClose := CompararSenhas(edtSenha.Text, edtConfirmaSenha.Text);
- if not CanClose then
- edtSenha.SetFocus;
- end;
-end;
-
-procedure TSenhaForm.FormCreate(Sender: TObject);
-begin
- edtSenha.Clear;
- edtConfirmaSenha.Clear;
-end;
-
-procedure TSenhaForm.FormShow(Sender: TObject);
-begin
- edtSenha.CharCase := fUserControl.Login.CharCasePass;
- edtConfirmaSenha.CharCase := fUserControl.Login.CharCasePass;
- LabelSenha.Caption := fUserControl.UserSettings.Login.LabelPassword;
- LabelConfirma.Caption := fUserControl.UserSettings.ChangePassword.LabelConfirm;
- btnOK.Caption := fUserControl.UserSettings.Login.BtOk;
- BtCancel.Caption := fUserControl.UserSettings.Login.BtCancel;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/TrocaSenha_U.dfm b/internal/2.31RC1/1/Source/TrocaSenha_U.dfm
deleted file mode 100644
index 5bdaf68..0000000
--- a/internal/2.31RC1/1/Source/TrocaSenha_U.dfm
+++ /dev/null
@@ -1,350 +0,0 @@
-object TrocaSenha: TTrocaSenha
- Left = 398
- Top = 263
- ActiveControl = EditAtu
- BorderStyle = bsDialog
- Caption = 'Seguran'#231'a'
- ClientHeight = 163
- ClientWidth = 353
- 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
- OnCloseQuery = FormCloseQuery
- PixelsPerInch = 96
- TextHeight = 13
- object Panel1: TPanel
- Left = 0
- Top = 0
- Width = 353
- Height = 35
- Align = alTop
- BevelOuter = bvNone
- Color = clWhite
- TabOrder = 0
- object lbDescricao: TLabel
- Left = 47
- Top = 11
- Width = 124
- Height = 18
- Caption = 'Trocar Senha '
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -16
- Font.Name = 'Verdana'
- Font.Style = [fsBold]
- ParentFont = False
- end
- object Image1: TImage
- Left = 8
- Top = 4
- Width = 28
- Height = 28
- AutoSize = True
- Picture.Data = {
- 07544269746D6170760C0000424D760C00000000000036000000280000001C00
- 00001C0000000100200000000000400C00000000000000000000000000000000
- 0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FEFEFE00F9F9F900F1F1F100EAEA
- EA00E3E3E300E0E0E000DEDEDE00DFDFDF00D3D0CD0077594300694731006947
- 310069473100D8D1CD00FAFAFA00FEFEFE00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00F6F6F600C5C7
- C5008E9F91006E8A70005E815C00527B4F004E7C4A004B7C48004A7C47004B7B
- 480074574100EAD3BB00F4CA9F00E8BB8E0069473100626B570078817500A19F
- 9F00D4D4D400FAFAFA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00F2F4F30074967100487638004E7C35004E8334004B893300488E
- 31004592300044962F0043972F0043982F00A08C7D00F3EEEB00FEF3E300FEE6
- CA00DFBF9A0069473100694731004C663600526C5200A9A9A900FAFAFA00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0094B3910058743900537B
- 36004E8334004A8A33004690310043962F00409B2E003E9F2D003DA12D003DA1
- 2D00519F3E00A08C7D00EEEAE500FEF5EA00FCE6CB00E2B8900069473100545E
- 2E00566736005A6F5700E5E5E500FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00688D5B0055783700508035004B8833004790310043982F003F9E
- 2D003BA42C0039A82B0037AB2A0037AB2A0038A92B004B9E3800A08C7D00EAE7
- E200FEF7EC00FCE8CC00D8B99400694731006947310054664600DEDEDE00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005E875100527C36004D84
- 3400488D320044962F003F9E2E003BA52C0037AC2A0034B1290032B4280032B5
- 280033B3280035AD2A004B9E3800A08C7D00E7E4DE00FDFAEF00FBE8CD00DEB6
- 8F0069473100535B3C00BEB7B400D4CCC900D3CBC800D9D2D000F9F9F800FFFF
- FF00FFFFFF00729A6800507F35004B88330046913100419A2E003CA32C0037AB
- 2A0033B328002FB927002DBE25002CBF25002EBC260031B6270036AD29004D9A
- 3700A08C7D00E6E3DE00FEF9EF00FBE8CF00D4B6900069473100694731006947
- 31006947310069473100CFC5C000FCFCFC00FFFFFF00A5C6A700508136004A8A
- 3300449330003F9D2E003AA62B0035AF290030B827002BBF250035B237002BBB
- 2B0029C324002DBC260034B3280038A72A0050943900A08C7D00E4E1DA00FBF4
- EA00F8E3C700E6C39D00DFBB9100E1BD9300E3BE9300DAB2890069473100D8CF
- C900FFFFFF00F6FAF70058904D00498B3200449530003E9E2D0039A82B0034B2
- 28002EBB26004BA34E00DEE0DF00DDEADF0044BB47002BC0250031B6270037AD
- 2B003D9F2B00588D3F00A08C7D00F4EADE00FEF2E200FDEBD300FCE8CD00FCE5
- C700FCE3C200FFE1BB00DFBB950069473100FFFFFF00FFFFFF00D4E4D6004A8E
- 3D00449530003E9E2D0039A82B0034B129002FA92C00A4B0A700E5E6E600E8E9
- E900CFDED20035B3340031B6270036AC2A003CA22C004E8F3800A08C7D00F0E5
- D700FDF1E100FBE7D300FAE4CD00FBE1C600FBDCBE00EED2B300F5D0A9006947
- 3100FFFFFF00FFFFFF00FFFFFF00D2E4D4004E984500409C2E003AA52C0035AE
- 2900518B5400989B9F00798A96006B7F8C00757E85005B7F5D002D9E240038A9
- 2A003DA12D00508D3B00A08C7D00F1E6D700FCEDD900FAE1C900FBDFC300FCDD
- BD00E0C2A600AA907B00EBC49F0069473100FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00EDF4EF007BB57B003A9D2E00319131004F7C93004992C5004A98CF004897
- CE004592C800437DA400235437002C7F22004B9B4500A6B69E00A08C7D00F3E8
- D800FBEAD300FADDC000FADABA00DFC1A3009A806C008D6A5000EEC69F006947
- 3100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BDD3C7004C90
- AF0052A0D60052A0D500519FD4004F9DD3004C9AD1004997CE00438CBF004363
- 6700C1C2C100E6E2DF00A08C7D00E8DBCB00FDE9D100FDE2C300EFD4B800AD96
- 85008E705A00D9C19B00E1BC970069473100FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00F5F6F70072ABD00056A4D90056A4D90056A4D90055A3D80054A2
- D70052A0D5004F9DD3004B99D000468DC000727D8400E5E4E300E2DDD900A08C
- 7D00ECDFD100F9EEE000F4E7DA00F0E3D700F0E6D900E6D9CB0069473100E7E3
- DF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00A2C4DC005AA6DB005BA8
- DC005BA8DC005BA8DC005AA7DB0058A5DA0056A4D90053A1D600509ED4004B9A
- D0004C7FA500ADADAD00FCFCFB00E6E1DE00A08C7D00A08C7D00A08C7D00A08C
- 7D00A08C7D00A08C7D00EDEAE600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00E9EEF4005FA7D7005EABDF005FACE0005FACE0005FACE0005EABDF005CA9
- DD005AA7DB0057A4D90054A2D700509ED4004A95CA0076828B00F0F0F000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00ADCDE20060ACE00061AEE20063B0
- E30063B0E30063B0E30061AEE2005FACE0005DAADE005AA7DC0056A4D90053A1
- D6004E9DD3005B7E9600DADADA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF007EB5DA0063B0E30065B2E50067B4E70068B4E70067B4E60065B2E50063B0
- E30060ADE1005DAADE0059A7DB0055A3D800519FD5004F84A800C5C5C500FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FAFBFC0064AAD80066B3E60069B5E8006BB7
- E9006CB8EA006BB7E90069B5E80066B3E60062AFE3005FACE0005BA8DC0057A5
- DA0053A1D6004E8DBB00B8B8B800FEFEFE00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00EDF2
- F50062A9D9005696BF00538EB5005E9FC9006BB4E3006EBAEC006CB8EA0069B5
- E70064B1E40060ADE1005DAADE0059A6DB0054A2D7004E91C000B8B8B800FEFE
- FE00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00F1F5F9004F8FB9004385AF004485AE003F79
- 9D003E708F004B7FA00062A5D10069B5E60066B3E60062AFE2005EABDF0059A7
- DB0053A0D4004D88B200C4C4C400FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF005490B8004D94C1004F96C3005097C3004E95C200488BB5003D7192004375
- 95005B9FCD0061AEE1005DAADE004C8FBC003B779D003C627A00D0D0D000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0084B1CD00569ECB0058A0CE0059A1
- CE00579FCC00539BC8004E95C2004689B300386A8A00447B9F004786B0003C7F
- A9003C81AC005C7A8B00EDEDED00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00C3D8E5005EA5D30061AAD80062ABD9005FA8D6005BA3D100559DCA004E95
- C200478DB9003D7DA6003C7FAA003D82AD003C7CA200A3AAAE00FDFDFD00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCFDFE0079B1D5006AB4E2006AB5
- E30067B1DF0062ABD9005BA3D000539AC7004B91BE004388B4003D82AD003C81
- AC0062849A00ECECEC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00DDE9F00075B9E40073BEED006EB9E80067B1DF005FA7D500569E
- CB004D94C100458BB7003D82AE005584A200D8DBDD00FEFEFE00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D8E7F1007FBF
- E80072BDEC0069B3E20061A9D70058A0CD004F96C2004689B5006994B000DCDF
- E300FEFEFE00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00F4F7FA00B2D0E30085B8D80070A9CE0071A6
- C70087AFC900C3D1DB00FAFAFA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00}
- end
- end
- object Panel3: TPanel
- Left = 256
- Top = 35
- Width = 97
- Height = 128
- Align = alRight
- BevelOuter = bvNone
- TabOrder = 1
- object btGrava: TBitBtn
- Left = 8
- Top = 32
- Width = 81
- Height = 25
- Caption = '&Gravar'
- TabOrder = 0
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- 6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D42
- 2F6D422F6D422F6D422FFF00FFFF00FF69696969696969696969696969696969
- 6969696969696969696969696969696969696969696969696969FF00FFCE726F
- D19792CB8E8A715A48C0B2ABC4BCB8CAC1BCCAC1BCCAC1BCCAC1BC8C76679443
- 409443409443406D422FFF00FF9A9A9AB4B4B4AEAEAE7D7D7DC6C6C6CECECED2
- D2D2D2D2D2D2D2D2D2D2D2969696707070707070707070696969FF00FFCE726F
- D79F9BD19792715A482E1F185F5046FFFFFFFFFFFFFFFFFFF0E4DE8C76679747
- 449443409443406D422FFF00FF9A9A9ABBBBBBB5B5B57C7C7C434343747474FF
- FFFFFFFFFFFFFFFFECECEC969696747474707070707070696969FF00FFCE726F
- DDA8A3D79F9B715A480A0A0A36241BFFFFFFF7F1EEF0E4DEE1CABD8C76679E50
- 4D9747449443406D422FFF00FF9A9A9AC1C1C1BBBBBB7D7D7D2A2A2A4A4A4AFF
- FFFFF6F6F6ECECECD8D8D89595957C7C7C757575707070696969FF00FFCE726F
- E3B0ABDDA8A3715A48715A48715A48715A48715A48715A48715A48715A48A459
- 569E504D9747446D422FFF00FF9A9A9AC8C8C8C1C1C17D7D7D7D7D7D7D7D7D7C
- 7C7C7D7D7D7D7D7D7D7D7D7D7D7D8383837C7C7C747474696969FF00FFCE726F
- EDBDB8E7B5B0E0ACA7DAA49FD49B97CB8E8AC58682BF7E79B97571B26B68AB62
- 5FA459569E504D6D422FFF00FF9A9A9AD2D2D2CCCCCCC4C4C4BEBEBEB8B8B8AE
- AEAEA8A8A8A1A1A19A9A9A9292928B8B8B8484847B7B7B696969FF00FFCE726F
- F0C1BCEDBDB8E7B5B0E0ACA7DAA49FD49B97CE938EC88A86C2827EBC7975B26B
- 68AB625FA459566D422FFF00FF9A9A9AD4D4D4D2D2D2CBCBCBC4C4C4BFBFBFB8
- B8B8B1B1B1ABABABA5A5A59D9D9D9292928B8B8B848484696969FF00FFCE726F
- F0C1BCF0C1BCC8635CC8635CC8635CC8635CC8635CC8635CC8635CC8635CC863
- 5CB5706CAE67636D422FFF00FF9A9A9AD4D4D4D5D5D58E8E8E8E8E8E8E8E8E8E
- 8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9696968E8E8E696969FF00FFCE726F
- F0C1BCC8635CFAF5F3F6EEEAF2E7E2EEE2DAEBDCD3E7D6CBE4D0C4E1CABDE1CA
- BDC8635CB5706C6D422FFF00FF9A9A9AD4D4D48E8E8EF8F8F8F3F3F3EEEEEEEA
- EAEAE6E6E6E1E1E1DDDDDDD8D8D8D8D8D88E8E8E969696676767FF00FFCE726F
- F0C1BCC8635CFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9CFE6D3C8E2CD
- C0C8635CBC79756D422FFF00FF9A9A9AD5D5D58E8E8EFFFFFFFAFAFAF6F6F6F1
- F1F1ECECECE7E7E7E3E3E3DFDFDFDADADA8E8E8E9D9D9D696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9CFE6D3
- C8C8635CC2827E6D422FFF00FF9A9A9AD4D4D48D8D8DFFFFFFFFFFFFFBFBFBF6
- F6F6F0F0F0ECECECE7E7E7E3E3E3DFDFDF8E8E8EA5A5A5696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9
- CFC8635CC88A866D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFB
- FBFBF5F5F5F1F1F1ECECECE8E8E8E3E3E38E8E8EABABAB696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDF
- D6C8635CD197926D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFBFBFBF6F6F6F1F1F1ECECECE7E7E78E8E8EB5B5B5696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4
- DEC8635C0A0A0A6D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFBFBFBF6F6F6F1F1F1ECECEC8E8E8E2A2A2A676767FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EA
- E6C8635CC88A866D422FFF00FF9A9A9AD5D5D58E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFBFBFBF5F5F5F1F1F18E8E8EABABAB696969FF00FFCE726F
- CE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE72
- 6FCE726FCE726FCE726FFF00FF9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
- 9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A}
- NumGlyphs = 2
- end
- object btCancel: TBitBtn
- Left = 8
- Top = 72
- Width = 81
- Height = 25
- Caption = '&Cancelar'
- TabOrder = 1
- OnClick = btCancelClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFC066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40198E40198E40198E40
- 198E40198E4019FF00FF8888886969696969696969696969696969696A6A6A69
- 69696969696969696A6A6A6969696969696A6A6A696969FF00FFC06614F9F5F4
- C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2
- A5C3B2A58E4019FF00FF888888F8F8F8C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6
- C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6696969FF00FFC06614FCFAFA
- F9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCDFD0C7DFD0C7DCCB
- C1C3B2A58E4019FF00FF888888FCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEAEAEAE7
- E7E7E4E4E4E0E0E0DDDDDDDDDDDDD9D9D9C6C6C6696969FF00FFC06614FFFFFF
- FCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCE2D4CCDFD0
- C7C3B2A58E4019FF00FF888888FFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEA
- EAEAE7E7E7E3E3E3E0E0E0E0E0E0DDDDDDC6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E5D9D1E2D4
- CCC3B2A58E4019FF00FF888888FFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EE
- EEEEEAEAEAE7E7E7E3E3E3E3E3E3E0E0E0C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E9DED7E5D9
- D1C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1
- F1F1EEEEEEEAEAEAE7E7E7E7E7E7E3E3E3C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F2EBE8EEE6E2ECE2DCECE2DCE9DE
- D7C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFBF7
- F7F7F1F1F1EEEEEEEAEAEAEAEAEAE7E7E7C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF0E9E5F0E9E5EDE4
- DFC3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFB
- FBFBF7F7F7F3F3F3F0F0F0F0F0F0ECECECC6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF4EEEBF0E9
- E5C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
- FEFEFBFBFBF7F7F7F3F3F3F3F3F3F0F0F0C6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F78A9DE92546CD1D3F
- C9193BC8183BC88194E1898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFEFEFEFAFAFAC6C6C6979797929292929292929292C0C0C0C06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFD3355DBF2F4FD4E6B
- D94A67D8F2F4FD183BC8888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFEFEFEA1A1A1FAFAFAAAAAAAA8A8A8F9F9F9929292C066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40193C5CDD8296E4D9DF
- F9CDD5F74C69D81A3CC88888886969696969696969696A6A6A69696969696969
- 6969696969696969A5A5A5C1C1C1EDEDEDE7E7E7A8A8A8929292C06614ED9733
- ED9733ED9733ED9733ED9733ED9733ED9733F6CA9AED97334563E16980E2E4E8
- FBD8DEF9516DDA1F40C9888888ACACACACACACADADADADADADADADADACACACAD
- ADADD5D5D5ADADADA8A8A8B6B6B6F2F2F2ECECECABABAB939393F810DCC06614
- C06614C06614C06614C06614C06614C06614C06614C066144D6AE3F2F4FD667D
- E26E85E2F2F4FD2749CEEF14EF88888888888888888888888889898988888888
- 8888888888898989ACACACF9F9F9B5B5B5B9B9B9F9F9F9989898FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF9AABEF4D6AE34563
- E14463DF3E5EDE8FA2EBFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFCFCFCFACACACA8A8A8A8A8A8A6A6A6C9C9C9}
- NumGlyphs = 2
- end
- end
- object Panel2: TPanel
- Left = 0
- Top = 35
- Width = 256
- Height = 128
- Align = alClient
- BevelInner = bvRaised
- BevelOuter = bvLowered
- TabOrder = 2
- object lbSenhaAtu: TLabel
- Left = 34
- Top = 27
- Width = 64
- Height = 13
- Alignment = taRightJustify
- Caption = 'Senha Atual :'
- end
- object lbNovaSenha: TLabel
- Left = 32
- Top = 57
- Width = 66
- Height = 13
- Alignment = taRightJustify
- Caption = 'Nova Senha :'
- end
- object lbConfirma: TLabel
- Left = 51
- Top = 88
- Width = 47
- Height = 13
- Alignment = taRightJustify
- Caption = 'Confirma :'
- end
- object EditAtu: TEdit
- Left = 103
- Top = 24
- Width = 121
- Height = 21
- Ctl3D = True
- MaxLength = 10
- ParentCtl3D = False
- PasswordChar = '*'
- TabOrder = 0
- end
- object EditNova: TEdit
- Left = 103
- Top = 54
- Width = 121
- Height = 21
- Ctl3D = True
- MaxLength = 10
- ParentCtl3D = False
- PasswordChar = '*'
- TabOrder = 1
- end
- object EditConfirma: TEdit
- Left = 103
- Top = 85
- Width = 121
- Height = 21
- Ctl3D = True
- MaxLength = 10
- ParentCtl3D = False
- PasswordChar = '*'
- TabOrder = 2
- end
- end
-end
diff --git a/internal/2.31RC1/1/Source/TrocaSenha_U.pas b/internal/2.31RC1/1/Source/TrocaSenha_U.pas
deleted file mode 100644
index a034907..0000000
--- a/internal/2.31RC1/1/Source/TrocaSenha_U.pas
+++ /dev/null
@@ -1,89 +0,0 @@
-unit TrocaSenha_U;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
-{$IFDEF DELPHI5_UP}
-{$ELSE}
- Variants,
-{$ENDIF}
- Buttons,
- Classes,
- Controls,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Messages,
- StdCtrls,
- SysUtils,
- Windows,
-// UCConsts,
- UCBase; { Por Vicente Barros Leonel }
-
-type
- TTrocaSenha = class(TForm)
- Panel1: TPanel;
- lbDescricao: TLabel;
- Image1: TImage;
- Panel3: TPanel;
- btGrava: TBitBtn;
- btCancel: TBitBtn;
- Panel2: TPanel;
- lbSenhaAtu: TLabel;
- lbNovaSenha: TLabel;
- lbConfirma: TLabel;
- EditAtu: TEdit;
- EditNova: TEdit;
- EditConfirma: TEdit;
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
- procedure btCancelClick(Sender: TObject);
- procedure FormActivate(Sender: TObject);
- procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
- private
- { Private declarations }
- public
- fUsercontrol : TUserControl; { Por Vicente Barros Leonel }
- ForcarTroca : Boolean;
- { Public declarations }
- end;
-
-{
-var
- TrocaSenha: TTrocaSenha;
-}
-
-implementation
-
-{$R *.dfm}
-
-procedure TTrocaSenha.FormClose(Sender: TObject; var Action: TCloseAction);
-begin
- Action := caFree;
-end;
-
-procedure TTrocaSenha.btCancelClick(Sender: TObject);
-begin
- Close;
-end;
-
-procedure TTrocaSenha.FormActivate(Sender: TObject);
-begin
- EditAtu.CharCase := Self.FUserControl.Login.CharCasePass;
- EditNova.CharCase := Self.FUserControl.Login.CharCasePass;
- EditConfirma.CharCase := Self.FUserControl.Login.CharCasePass; { Por Vicente Barros Leonel }
-end;
-
-procedure TTrocaSenha.FormCloseQuery(Sender: TObject;
- var CanClose: Boolean);
-begin
- If ForcarTroca = True then
- Begin
- CanClose := False;
- MessageDlg( fUsercontrol.UserSettings.CommonMessages.ForcaTrocaSenha ,mtWarning, [mbOK], 0);
- End;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/UCALSMTPClient.pas b/internal/2.31RC1/1/Source/UCALSMTPClient.pas
deleted file mode 100644
index 181ebcd..0000000
--- a/internal/2.31RC1/1/Source/UCALSMTPClient.pas
+++ /dev/null
@@ -1,3770 +0,0 @@
-{*************************************************************
-Author: Stéphane Vander Clock (SVanderClock@Arkadia.com)
-
-Contributor François PIETTE (http://www.overbyte.be)
- Paul TOTH (tothpaul@free.fr - http://tothpaul.free.fr)
-
-EMail: http://www.arkadia.com
- SVanderClock@Arkadia.com
-
-product: TALSMTPClient
-Version: 3.05
-
-Description: TALsmtpClient class implements the SMTP protocol (RFC-821)
- Support file attachement using MIME format (RFC-1521, RFC-2045)
- Support authentification (RFC-2104)
-
-Legal issues: Copyright (C) 2005 by Stéphane Vander Clock
-
- This software is provided 'as-is', without any express
- or implied warranty. In no event will the author be
- held liable for any damages arising from the use of
- this software.
-
- Permission is granted to anyone to use this software
- for any purpose, including commercial applications,
- and to alter it and redistribute it freely, subject
- to the following restrictions:
-
- 1. The origin of this software must not be
- misrepresented, you must not claim that you wrote
- the original software. If you use this software in
- a product, an acknowledgment in the product
- documentation would be appreciated but is not
- required.
-
- 2. Altered source versions must be plainly marked as
- such, and must not be misrepresented as being the
- original software.
-
- 3. This notice may not be removed or altered from any
- source distribution.
-
- 4. You must register this software by sending a picture
- postcard to the author. Use a nice stamp and mention
- your name, street address, EMail address and any
- comment you like to say.
-
-Know bug :
-
-History :
-
-Link : http://linuxgazette.net/issue45/stumpel.html
- http://www.overbyte.be
- http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winsock/winsock/socket_options.asp
- http://www.fehcom.de/qmail/smtpauth.html
- http://www.freesoft.org/CIE/RFC/821/
- http://www.expita.com/header1.html
- http://cr.yp.to/immhf.html
-
-Please send all your feedback to SVanderClock@Arkadia.com
-**************************************************************}
-
-{$I 'UserControl.inc'}
-
-unit UCALSMTPClient;
-
-interface
-
-uses
- Classes,
- Dialogs,
- sysutils,
- windows,
- WinSock;
-
-type
- {Note: when changing TVendor, also change VendorStr array below}
- TALCPUVendor = (
- cvUnknown,
- cvAMD,
- cvCentaur,
- cvCyrix,
- cvIntel,
- cvTransmeta,
- cvNexGen,
- cvRise,
- cvUMC,
- cvNSC,
- cvSiS
- );
-{Note: when changing TInstruction, also change InstructionSupportStr below
- * - instruction(s) not supported in Delphi 7 assembler}
- TALCPUInstructions = (
- isFPU, {80x87}
- isTSC, {RDTSC}
- isCX8, {CMPXCHG8B}
- isSEP, {SYSENTER/SYSEXIT}
- isCMOV, {CMOVcc, and if isFPU, FCMOVcc/FCOMI}
- isMMX, {MMX}
- isFXSR, {FXSAVE/FXRSTOR}
- isSSE, {SSE}
- isSSE2, {SSE2}
- isSSE3, {SSE3*}
- isMONITOR, {MONITOR/MWAIT*}
- isCX16, {CMPXCHG16B*}
- isX64, {AMD AMD64* or Intel EM64T*}
- isExMMX, {MMX+ - AMD only}
- isEx3DNow, {3DNow!+ - AMD only}
- is3DNow {3DNow! - AMD only}
- );
- TALCPUInstructionSupport = set of TALCPUInstructions;
-
- TALCPUInfo = record
- Vendor: TALCPUVendor;
- Signature: cardinal;
- EffFamily: byte; {ExtendedFamily + Family}
- EffModel: byte; {(ExtendedModel shl 4) + Model}
- CodeL1CacheSize, {KB or micro-ops for Pentium 4}
- DataL1CacheSize, {KB}
- L2CacheSize, {KB}
- L3CacheSize: Word; {KB}
- InstructionSupport: TALCPUInstructionSupport;
- end;
- TALHandleTagfunct = function(const TagString: String; TagParams: TStrings; ExtData: pointer; var Handled: Boolean): String;
- TALMoveProc = procedure(const Source; var Dest; Count: Integer);
- TALCharPosFunct = function(Ch: char; const Str: ansistring): Integer;
- TALPosFunct = function(const SubStr: ansistring; const Str: ansistring): Integer;
-
-
- PALMimeBase64Byte4 = ^TALMimeBase64Byte4;
-
- TALMimeBase64Byte4 = packed record
- b1: byte;
- b2: byte;
- b3: byte;
- b4: byte;
- end;
- PALMimeBase64Byte3 = ^TALMimeBase64Byte3;
-
- TALMimeBase64Byte3 = packed record
- b1: byte;
- b2: byte;
- b3: byte;
- end;
-
- {-----------------------}
- TAlSmtpClientAuthType = (
- AlsmtpClientAuthNone,
- alsmtpClientAuthPlain,
- AlsmtpClientAuthLogin,
- AlsmtpClientAuthCramMD5,
- AlsmtpClientAuthCramSha1,
- AlsmtpClientAuthAutoSelect
- );
-
- {------------------------------------------------------}
- TAlSmtpClientAuthTypeSet = set of TAlSmtpClientAuthType;
-
- {--------------------------------------}
- TALSMTPClientHeader = class(TPersistent)
- private
- fSendTo: String;
- fSender: String;
- fMessageID: String;
- fbcc: String;
- fContentTransferEncoding: String;
- fComments: String;
- fMIMEVersion: String;
- fPriority: String;
- fReplyTo: String;
- fSubject: String;
- fFrom: String;
- fDate: String;
- fDispositionNotificationTo: String;
- fReferences: String;
- fcc: String;
- fContentType: String;
- FCustomHeaders: TStrings;
- function GetRawHeaderText: String;
- procedure SetRawHeaderText(const aRawHeaderText: String);
- protected
- procedure AssignTo(Dest: TPersistent); override;
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Clear;
- published
- property From: String Read fFrom Write fFrom; {From: John Doe - Author(s) or person(s) taking responsibility for the message 4.4.1; RFC 1123: 5.2.15-16, 5.3.7; RFC 1036: 2.1.1}
- property Sender: String Read fSender Write fSender; {Sender: Michael Jones - The person or agent submitting the message to the network, if other than shown by the From header RFC 822: 4.4.2; RFC 1123: 5.2.15-16, 5.3.7; RFC 1036: 2.1.1}
- property SendTo: String Read fSendTo Write fSendTo; {To: Mary Smith - Primary recipient(s) RFC 822: 4.5.1; RFC 1123: 5.2.15-16, 5.3.7;}
- property cc: String Read fcc Write fcc; {cc: , "Giant; \"Big\" Box" - Secondary, informational recipient(s) RFC 822: 4.5.2; RFC 1123: 5.2.15-16, 5.3.7;}
- property bcc: String Read fbcc Write fbcc; {bcc: , "Giant; \"Big\" Box" - Recipient(s) not to be disclosed to other recipients ("blind carbon copy") RFC 822: 4.5.3; RFC 1123: 5.2.15-16, 5.3.7;}
- property ReplyTo: String Read fReplyTo Write fReplyTo; {Reply-To: "Mary Smith: Personal Account" - Suggested E-mail address for replies RFC 822: 4.4.3; RFC 1036: 2.2.1}
- property Subject: String Read fSubject Write fSubject; {Subject: Saying Hello - Text that provides a summary, or indicates the nature, of the message RFC 822: 4.7.1; RFC 1036: 2.1.4}
- property MessageID: String Read fMessageID Write fMessageID; {Message-ID: <1234@local.machine.example> - Unique ID for the message RFC 822: 4.6.1; RFC 1036: 2.1.5}
- property References: String Read fReferences Write fReferences; {References: <1234@local.machine.example> <3456@example.net> - In E-mail: reference to other related messages; in Usenet: reference to replied-to-articles RFC 822: 4.6.3; RFC 1036: 2.2.5}
- property Comments: String Read fComments Write fComments; {Comments: Authenticated sender is gboyd@netcom.com - Text comments added to the message RFC 822: 4.7.2}
- property Date: String Read fDate Write fDate; {Date: Fri, 21 Nov 1997 09:55:06 -0600 - The time when the message was written (or submitted) RFC 822: 5.1; RFC 1123: 5.2.14; RFC 1036: 2.1.2}
- property ContentType: String Read fContentType Write fContentType; {Content-Type: text/plain; charset="iso-8859-1" - Data type and format of content RFC 1049 (historic); RFC 1123: 5.2.13; RFC 2045: 5; RFC 1766: 4.1}
- property ContentTransferEncoding: String Read fContentTransferEncoding Write fContentTransferEncoding; {Content-Transfer-Encoding: 8bit - Coding method used in a MIME message body RFC 2045: 6;}
- property MIMEVersion: String Read fMIMEVersion Write fMIMEVersion; {MIME-Version: 1.0 - specifies the version of MIME that the message format complies with RFC 2045: 4}
- property Priority: String Read fPriority Write fPriority; {Priority: normal - Priority for message delivery ("normal" / "non-urgent" / "urgent") RFC 2156}
- property DispositionNotificationTo: String Read fDispositionNotificationTo Write fDispositionNotificationTo; {Disposition-Notification-To: boss@nil.test - Requests for notification when the message is received, and specifies the address for them RFC 2298}
- property CustomHeaders: TStrings Read FCustomHeaders;
- property RawHeaderText: String Read GetRawHeaderText Write SetRawHeaderText;
- end;
-
- TOnStatus = procedure(Status: String) of object;
-
- {----------------------------}
- TAlSmtpClient = class(TObject)
- private
- FWSAData: TWSAData;
- Fconnected: Boolean;
- FSocketDescriptor: Integer;
- FAuthTypesSupported: TAlSmtpClientAuthTypeSet;
- Ftimeout: Integer;
- fOnStatus: TOnStatus;
- procedure Settimeout(const Value: Integer);
- protected
- procedure CheckError(Error: Boolean);
- function SendCmd(aCmd: String; OkResponses: array of Word): String; virtual;
- function GetResponse(OkResponses: array of Word): String;
- function SocketWrite(var Buffer; Count: longint): longint; virtual;
- function SocketRead(var Buffer; Count: longint): longint; virtual;
- public
- constructor Create; virtual;
- destructor Destroy; override;
- function Connect(aHost: String; APort: Integer): String; virtual;
- function Helo: String; virtual;
- function Ehlo: String; virtual;
- function Auth(AUserName, APassword: String; aAuthType: TalSmtpClientAuthType): String; virtual;
- function Vrfy(aUserName: String): String; virtual;
- function MailFrom(aFromName: String): String; virtual;
- function RcptTo(aRcptNameLst: TStrings): String; virtual;
- function Data(aMailData: String): String; overload; virtual;
- function Data(aHeader, aBody: String): String; overload; virtual;
- function Data(aHeader: TALSMTPClientHeader; aBody: String): String; overload; virtual;
- function Quit: String; virtual;
- function Rset: String; virtual;
- procedure SendMail(aHost: String; APort: Integer; aFromName: String; aRcptNameLst: TStrings; AUserName, APassword: String; aAuthType: TalSmtpClientAuthType; aMailData: String); overload; virtual;
- procedure SendMail(aHost: String; APort: Integer; aFromName: String; aRcptNameLst: TStrings; AUserName, APassword: String; aAuthType: TalSmtpClientAuthType; aHeader, aBody: String); overload; virtual;
- procedure Disconnect; virtual;
- function GetAuthTypeFromEhloResponse(EhloResponse: String): TAlSmtpClientAuthTypeSet; virtual;
- property Connected: Boolean Read FConnected;
- property Timeout: Integer Read Ftimeout Write Settimeout default 60000;
- property OnStatus: TOnStatus Read fOnStatus Write fOnStatus;
- end;
-
-{----------------------------------------------------------------------------------------}
-function AlSMTPClientParseEmail(FriendlyEmail: String; var FriendlyName: String): String;
-function AlSMTPClientGenerateMessageID: String;
-
-var
- ALMove: TALMoveProc;
- ALCharPos: TALCharPosFunct;
- ALPos: TALPosFunct;
-
-
-implementation
-
-uses
- HTTPAPP;
-
-
- //***********************************************************************
- //AlFcnWinSock Partial Unit
- //***********************************************************************
-function ALgetLocalHostName: String;
-var
- {$IFDEF DELPHI12}
- Buffer : pAnsichar;
- {$ELSE}
- Buffer : array [0..255] of char;
- {$ENDIF}
- WSAData : TWSAData;
-begin
- WSAData.wVersion := 0;
- WSAStartup(MAKEWORD(2, 2), WSAData);
- try
-
- if gethostname(Buffer, SizeOf(Buffer)) <> 0 then
- raise Exception.Create('Winsock GetHostName failed');
- Result := StrPas(Buffer);
- finally
- if WSAData.wVersion = 2 then
- WSACleanup;
- end;
-end;
-
-function ALHostToIP(HostName: String; var Ip: String): Boolean;
-var
- WSAData: TWSAData;
- hostEnt: PHostEnt;
- {$IFDEF DELPHI12} addr: PAnsiChar; {$ELSE} addr: PChar; {$ENDIF}
-begin
- WSAData.wVersion := 0;
- WSAStartup(MAKEWORD(2, 2), WSAData);
- try
-
- {$IFDEF DELPHI12}
- hostEnt := gethostbyname(PAnsiChar(hostName));
- {$ELSE}
- hostEnt := gethostbyname(PChar(hostName));
- {$ENDIF}
- if Assigned(hostEnt) then
- begin
- if Assigned(hostEnt^.h_addr_list) then
- begin
- {$IFDEF DELPHI12}
- addr := hostEnt^.h_addr_list^;
- {$ELSE}
- addr := hostEnt^.h_addr_list^;
- {$ENDIF}
- if Assigned(addr) then
- begin
- IP := Format('%d.%d.%d.%d', [byte(addr[0]),
- byte(addr[1]), byte(addr[2]), byte(addr[3])]);
- Result := True;
- end
- else
- Result := False;
- end
- else
- Result := False;
- end
- else
- Result := False;
-
- finally
- if WSAData.wVersion = 2 then
- WSACleanup;
- end;
-end;
-
- //***********************************************************************
- //AlFcnRFC Partial Unit
- //***********************************************************************
-const
- CAlRfc822DaysOfWeek: array[1..7] of String = (
- 'Sun',
- 'Mon',
- 'Tue',
- 'Wed',
- 'Thu',
- 'Fri',
- 'Sat'
- );
- CALRfc822MonthNames: array[1..12] of String = (
- 'Jan',
- 'Feb',
- 'Mar',
- 'Apr',
- 'May',
- 'Jun',
- 'Jul',
- 'Aug',
- 'Sep',
- 'Oct',
- 'Nov',
- 'Dec'
- );
-
-
-function ALGMTDateTimeToRfc822Str(const aValue: TDateTime): String;
-var
- aDay, aMonth, aYear: Word;
-begin
- DecodeDate(
- aValue,
- aYear,
- aMonth,
- aDay
- );
-
- Result := Format(
- '%s, %.2d %s %.4d %s %s',
- [
- CAlRfc822DaysOfWeek[DayOfWeek(aValue)],
- aDay,
- CAlRfc822MonthNames[aMonth],
- aYear,
- FormatDateTime('hh":"nn":"ss', aValue),
- 'GMT'
- ]
- );
-end;
-
-
-function ALDateTimeToRfc822Str(const aValue: TDateTime): String;
-
- {--------------------------------------------}
- function InternalCalcTimeZoneBias: TDateTime;
- const
- Time_Zone_ID_DayLight = 2;
- var
- TZI: TTimeZoneInformation;
- TZIResult: Integer;
- aBias: Integer;
- begin
- TZIResult := GetTimeZoneInformation(TZI);
- if TZIResult = -1 then
- Result := 0
- else
- begin
- if TZIResult = Time_Zone_ID_DayLight then
- aBias := TZI.Bias + TZI.DayLightBias
- else
- aBias := TZI.Bias + TZI.StandardBias;
- Result := EncodeTime(Abs(aBias) div 60, Abs(aBias) mod 60, 0, 0);
- if aBias < 0 then
- Result := -Result;
- end;
- end;
-
-begin
- Result := ALGMTDateTimeToRfc822Str(aValue + InternalCalcTimeZoneBias);
-end;
-
-
- //***********************************************************************
- //AlFcnMime Partial Unit
- //***********************************************************************
-const
- cALMime_Base64_Encode_Table: array[0..63] of byte = (
- 065, 066, 067, 068, 069, 070, 071, 072, // 00 - 07
- 073, 074, 075, 076, 077, 078, 079, 080, // 08 - 15
- 081, 082, 083, 084, 085, 086, 087, 088, // 16 - 23
- 089, 090, 097, 098, 099, 100, 101, 102, // 24 - 31
- 103, 104, 105, 106, 107, 108, 109, 110, // 32 - 39
- 111, 112, 113, 114, 115, 116, 117, 118, // 40 - 47
- 119, 120, 121, 122, 048, 049, 050, 051, // 48 - 55
- 052, 053, 054, 055, 056, 057, 043, 047 // 56 - 63
- );
- cALMime_Base64_Pad_Char = byte('=');
-
-function ALMimeBase64EncodedSizeNoCRLF(const InputSize: cardinal): cardinal;
-begin
- Result := (InputSize + 2) div 3 * 4;
-end;
-
-procedure ALMimeBase64EncodeNoCRLF(const InputBuffer; const InputByteCount: cardinal; out OutputBuffer);
-var
- B, InnerLimit, OuterLimit: cardinal;
- InPtr: PALMimeBase64Byte3;
- OutPtr: PALMimeBase64Byte4;
-begin
- if InputByteCount = 0 then
- Exit;
-
- InPtr := @InputBuffer;
- OutPtr := @OutputBuffer;
-
- OuterLimit := InputByteCount div 3 * 3;
-
- InnerLimit := cardinal(InPtr);
- Inc(InnerLimit, OuterLimit);
-
- { Last line loop. }
- while cardinal(InPtr) < InnerLimit do
- begin
- { Read 3 bytes from InputBuffer. }
- B := InPtr^.b1;
- B := B shl 8;
- B := B or InPtr^.b2;
- B := B shl 8;
- B := B or InPtr^.b3;
- Inc(InPtr);
- { Write 4 bytes to OutputBuffer (in reverse order). }
- OutPtr^.b4 := CALMIME_Base64_ENCODE_TABLE[B and $3F];
- B := B shr 6;
- OutPtr^.b3 := CALMIME_Base64_ENCODE_TABLE[B and $3F];
- B := B shr 6;
- OutPtr^.b2 := CALMIME_Base64_ENCODE_TABLE[B and $3F];
- B := B shr 6;
- OutPtr^.b1 := CALMIME_Base64_ENCODE_TABLE[B];
- Inc(OutPtr);
- end;
-
- { End of data & padding. }
- case InputByteCount - OuterLimit of
- 1:
- begin
- B := InPtr^.b1;
- B := B shl 4;
- OutPtr.b2 := CALMIME_Base64_ENCODE_TABLE[B and $3F];
- B := B shr 6;
- OutPtr.b1 := CALMIME_Base64_ENCODE_TABLE[B];
- OutPtr.b3 := CALMIME_Base64_PAD_CHAR; { Pad remaining 2 bytes. }
- OutPtr.b4 := CALMIME_Base64_PAD_CHAR;
- end;
- 2:
- begin
- B := InPtr^.b1;
- B := B shl 8;
- B := B or InPtr^.b2;
- B := B shl 2;
- OutPtr.b3 := CALMIME_Base64_ENCODE_TABLE[B and $3F];
- B := B shr 6;
- OutPtr.b2 := CALMIME_Base64_ENCODE_TABLE[B and $3F];
- B := B shr 6;
- OutPtr.b1 := CALMIME_Base64_ENCODE_TABLE[B];
- OutPtr.b4 := CALMIME_Base64_PAD_CHAR; { Pad remaining byte. }
- end;
- end;
-end;
-
-
-function ALMimeBase64EncodeStringNoCRLF(const S: ansistring): ansistring;
-var
- L: cardinal;
-begin
- if Pointer(S) <> nil then
- begin
- L := PCardinal(cardinal(S) - 4)^;
- SetLength(Result, ALMimeBase64EncodedSizeNoCRLF(L));
- ALMimeBase64EncodeNoCRLF(Pointer(S)^, L, Pointer(Result)^);
- end
- else
- Result := '';
-end;
-
-
- //***********************************************************************
- //ALFcnMisc Partial Unit
- //***********************************************************************
-
-function ALMakeKeyStrByGUID: String;
-var
- aGUID: TGUID;
-begin
- CreateGUID(aGUID);
- Result := GUIDToString(aGUID);
- Delete(Result, 1, 1);
- Delete(Result, Length(Result), 1);
-end;
-
-
- //***********************************************************************
- //ALFCNString Partial Unit
- //***********************************************************************
-
-
-{-------------------------------}
-const
- CALMOVE_SMALLMOVESIZE = 36;
-
-{-------------------------------------------------}
-var
- VALMove_AnsiUpcase: packed array[char] of char;
-// VALMove_PrefetchLimit: Integer;
-
- //////////////////////////////////////////////////////////////////////////////////////////////////////
- //////////ALPosEx from FastCode AINSIStringReplace John O'Harrow (john@almcrest.demon.co.uk)//////////
- //////////////////////////////////////////////////////////////////////////////////////////////////////
-
- {*********************************}
- {Fast Equivalent of Delphi 7 PosEx}
-function ALPosEx(const SubStr, S: String; Offset: cardinal = 1): Integer;
-asm
- push ebx
- push esi
- push edx {@Str}
- test eax, eax
- jz @@NotFound {Exit if SubStr = ''}
- test edx, edx
- jz @@NotFound {Exit if Str = ''}
- mov esi, ecx
- mov ecx, [edx-4] {Length(Str)}
- mov ebx, [eax-4] {Length(SubStr)}
- add ecx, edx
- sub ecx, ebx {Max Start Pos for Full Match}
- lea edx, [edx+esi-1] {Set Start Position}
- cmp edx, ecx
- jg @@NotFound {StartPos > Max Start Pos}
- cmp ebx, 1 {Length(SubStr)}
- jle @@SingleChar {Length(SubStr) <= 1}
- push edi
- push ebp
- lea edi, [ebx-2] {Length(SubStr) - 2}
- mov esi, eax
- movzx ebx, [eax] {Search Character}
- @@Loop: {Compare 2 Characters per Loop}
- cmp bl, [edx]
- jne @@NotChar1
- mov ebp, edi {Remainder}
- @@Char1Loop:
- movzx eax, word ptr [esi+ebp]
- cmp ax, [edx+ebp]
- jne @@NotChar1
- sub ebp, 2
- jnc @@Char1Loop
- pop ebp
- pop edi
- jmp @@SetResult
- @@NotChar1:
- cmp bl, [edx+1]
- jne @@NotChar2
- mov ebp, edi {Remainder}
- @@Char2Loop:
- movzx eax, word ptr [esi+ebp]
- cmp ax, [edx+ebp+1]
- jne @@NotChar2
- sub ebp, 2
- jnc @@Char2Loop
- pop ebp
- pop edi
- jmp @@CheckResult
- @@NotChar2:
- add edx, 2
- cmp edx, ecx {Next Start Position <= Max Start Position}
- jle @@Loop
- pop ebp
- pop edi
- jmp @@NotFound
- @@SingleChar:
- jl @@NotFound {Needed for Zero-Length Non-NIL Strings}
- movzx eax, [eax] {Search Character}
- @@CharLoop:
- cmp al, [edx]
- je @@SetResult
- cmp al, [edx+1]
- je @@CheckResult
- add edx, 2
- cmp edx, ecx
- jle @@CharLoop
- @@NotFound:
- xor eax, eax
- pop edx
- pop esi
- pop ebx
- ret
- @@CheckResult: {Check within String}
- cmp edx, ecx
- jge @@NotFound
- add edx, 1
- @@SetResult:
- pop ecx {@Str}
- pop esi
- pop ebx
- neg ecx
- lea eax, [edx+ecx+1]
-end;
-
- {***********************************}
- {Non Case Sensitive version of PosEx}
-function ALPosExIgnoreCase(const SubStr, S: String; Offset: cardinal = 1): Integer;
-asm
- push ebx
- push esi
- push edx {@Str}
- test eax, eax
- jz @@NotFound {Exit if SubStr = ''}
- test edx, edx
- jz @@NotFound {Exit if Str = ''}
- mov esi, ecx
- mov ecx, [edx-4] {Length(Str)}
- mov ebx, [eax-4] {Length(SubStr)}
- add ecx, edx
- sub ecx, ebx {Max Start Pos for Full Match}
- lea edx, [edx+esi-1] {Set Start Position}
- cmp edx, ecx
- jg @@NotFound {StartPos > Max Start Pos}
- cmp ebx, 1 {Length(SubStr)}
- jle @@SingleChar {Length(SubStr) <= 1}
- push edi
- push ebp
- lea edi, [ebx-2] {Length(SubStr) - 2}
- mov esi, eax
- push edi {Save Remainder to Check = Length(SubStr) - 2}
- push ecx {Save Max Start Position}
- lea edi, VALMove_AnsiUpcase {Uppercase Lookup Table}
- movzx ebx, [eax] {Search Character = 1st Char of SubStr}
- movzx ebx, [edi+ebx] {Convert to Uppercase}
- @@Loop: {Loop Comparing 2 Characters per Loop}
- movzx eax, [edx] {Get Next Character}
- movzx eax, [edi+eax] {Convert to Uppercase}
- cmp eax, ebx
- jne @@NotChar1
- mov ebp, [esp+4] {Remainder to Check}
- @@Char1Loop:
- movzx eax, [esi+ebp]
- movzx ecx, [edx+ebp]
- movzx eax, [edi+eax] {Convert to Uppercase}
- movzx ecx, [edi+ecx] {Convert to Uppercase}
- cmp eax, ecx
- jne @@NotChar1
- movzx eax, [esi+ebp+1]
- movzx ecx, [edx+ebp+1]
- movzx eax, [edi+eax] {Convert to Uppercase}
- movzx ecx, [edi+ecx] {Convert to Uppercase}
- cmp eax, ecx
- jne @@NotChar1
- sub ebp, 2
- jnc @@Char1Loop
- pop ecx
- pop edi
- pop ebp
- pop edi
- jmp @@SetResult
- @@NotChar1:
- movzx eax, [edx+1] {Get Next Character}
- movzx eax, [edi+eax] {Convert to Uppercase}
- cmp bl, al
- jne @@NotChar2
- mov ebp, [esp+4] {Remainder to Check}
- @@Char2Loop:
- movzx eax, [esi+ebp]
- movzx ecx, [edx+ebp+1]
- movzx eax, [edi+eax] {Convert to Uppercase}
- movzx ecx, [edi+ecx] {Convert to Uppercase}
- cmp eax, ecx
- jne @@NotChar2
- movzx eax, [esi+ebp+1]
- movzx ecx, [edx+ebp+2]
- movzx eax, [edi+eax] {Convert to Uppercase}
- movzx ecx, [edi+ecx] {Convert to Uppercase}
- cmp eax, ecx
- jne @@NotChar2
- sub ebp, 2
- jnc @@Char2Loop
- pop ecx
- pop edi
- pop ebp
- pop edi
- jmp @@CheckResult {Check Match is within String Data}
- @@NotChar2:
- add edx, 2
- cmp edx, [esp] {Compate to Max Start Position}
- jle @@Loop {Loop until Start Position > Max Start Position}
- pop ecx {Dump Start Position}
- pop edi {Dump Remainder to Check}
- pop ebp
- pop edi
- jmp @@NotFound
- @@SingleChar:
- jl @@NotFound {Needed for Zero-Length Non-NIL Strings}
- lea esi, VALMove_AnsiUpcase
- movzx ebx, [eax] {Search Character = 1st Char of SubStr}
- movzx ebx, [esi+ebx] {Convert to Uppercase}
- @@CharLoop:
- movzx eax, [edx]
- movzx eax, [esi+eax] {Convert to Uppercase}
- cmp eax, ebx
- je @@SetResult
- movzx eax, [edx+1]
- movzx eax, [esi+eax] {Convert to Uppercase}
- cmp eax, ebx
- je @@CheckResult
- add edx, 2
- cmp edx, ecx
- jle @@CharLoop
- @@NotFound:
- xor eax, eax
- pop edx
- pop esi
- pop ebx
- ret
- @@CheckResult: {Check Match is within String Data}
- cmp edx, ecx
- jge @@NotFound
- add edx, 1 {OK - Adjust Result}
- @@SetResult: {Set Result Position}
- pop ecx {@Str}
- pop esi
- pop ebx
- neg ecx
- lea eax, [edx+ecx+1]
-end;
-
-
- ///////////////////////////////////////////////////////////////////////////////////////////////
- //////////AlFastStringReplace from FastCode John O'Harrow (john@almcrest.demon.co.uk)//////////
- ///////////////////////////////////////////////////////////////////////////////////////////////
-
- {****************************************}
- {Non-Overlapping Move for Positive Counts}
-procedure ALStringReplaceMoveEx(const Source; var Dest; Count: Integer);
-const
- SMALLMOVESIZE = 16;
-asm
- cmp ecx, SMALLMOVESIZE
- ja @Large
- lea eax, [eax+ecx]
- lea edx, [edx+ecx]
- jmp dword ptr [@@FwdJumpTable+ecx*4]
- @Large:
- fild qword ptr [eax]
- fistp qword ptr [edx]
- add eax, ecx
- add ecx, edx
- add edx, 7+8
- neg ecx
- and edx, -8
- add ecx, edx
- sub edx, ecx {Writes Now QWORD Aligned}
- @FwdLoop:
- fild qword ptr [eax+ecx-8]
- fistp qword ptr [edx+ecx-8]
- add ecx, 8
- jle @FwdLoop
- neg ecx
- add ecx, 8
- jmp dword ptr [@@FwdJumpTable+ecx*4]
- nop {Align Jump Table}
- @@FwdJumpTable:
- dd @@Done {Removes need to test for zero size Move}
- dd @@Fwd01,@@Fwd02,@@Fwd03,@@Fwd04,@@Fwd05,@@Fwd06,@@Fwd07,@@Fwd08
- dd @@Fwd09,@@Fwd10,@@Fwd11,@@Fwd12,@@Fwd13,@@Fwd14,@@Fwd15,@@Fwd16
- @@Fwd16:
- mov ecx,[eax-16]
- mov[edx-16],ecx
- @@Fwd12:
- mov ecx,[eax-12]
- mov[edx-12],ecx
- @@Fwd08:
- mov ecx,[eax-8]
- mov[edx-8],ecx
- @@Fwd04:
- mov ecx,[eax-4]
- mov[edx-4],ecx
- ret
- @@Fwd15:
- mov ecx,[eax-15]
- mov[edx-15],ecx
- @@Fwd11:
- mov ecx,[eax-11]
- mov[edx-11],ecx
- @@Fwd07:
- mov ecx,[eax-7]
- mov[edx-7],ecx
- @@Fwd03:
- movzx ecx, word ptr [eax-3]
- mov[edx-3],cx
- movzx ecx, byte ptr [eax-1]
- mov[edx-1],cl
- ret
- @@Fwd14:
- mov ecx,[eax-14]
- mov[edx-14],ecx
- @@Fwd10:
- mov ecx,[eax-10]
- mov[edx-10],ecx
- @@Fwd06:
- mov ecx,[eax-6]
- mov[edx-6],ecx
- @@Fwd02:
- movzx ecx, word ptr [eax-2]
- mov[edx-2],cx
- ret
- @@Fwd13:
- mov ecx,[eax-13]
- mov[edx-13],ecx
- @@Fwd09:
- mov ecx,[eax-9]
- mov[edx-9],ecx
- @@Fwd05:
- mov ecx,[eax-5]
- mov[edx-5],ecx
- @@Fwd01:
- movzx ecx, byte ptr [eax-1]
- mov[edx-1],cl
- @@Done:
-end; {MoveEx}
-
- {**************************************************************************}
- {Replace all occurance of Old (Ignoring Case) with New in Non-Null String S}
-{$IFDEF DELPHI12}
-procedure ALCharReplaceIC(var S: ansistring; const Old, New: pAnsichar);
-{$ELSE}
-procedure ALCharReplaceIC(var S: ansistring; const Old, New: char);
-{$ENDIF}
-asm
- push ebx
- push edi
- push esi
- mov eax, [eax] {@S}
- mov ebx, ecx {bl = New}
- lea edi, VALMove_AnsiUpcase
- and edx, $FF {edx = Old}
- mov ecx, [eax-4] {Length(S)}
- movzx edx, [edx+edi] {edx = Uppercase(Old)}
- lea esi, [eax+ecx]
- neg ecx
- @@Loop:
- movzx eax, [esi+ecx] {Next Char}
- movzx eax, [eax+edi] {Convert to Uppercase}
- cmp eax, edx {Compare Char}
- jne @@Next
- mov[esi+ecx], bl {Replace Char}
- @@Next:
- add ecx, 1
- jnz @@Loop
- pop esi
- pop edi
- pop ebx
-end;
-
- {***************************************************************************}
- {Replace all occurance of Old (Case Sensitive) with New in Non-Null String S}
-{$IFDEF DELPHI12}
-procedure ALCharReplaceCS(var S: ansistring; const Old, New: pAnsichar);
-{$ELSE}
-procedure ALCharReplaceCS(var S: ansistring; const Old, New: char);
-{$ENDIF}
-asm
- push ebx
- mov eax, [eax] {@S}
- mov ebx, ecx {bl = New, dl = Old}
- mov ecx, [eax-4] {Length(S)}
- add eax, ecx
- neg ecx
- @@Loop:
- cmp dl, [eax+ecx] {Compare Next Char}
- jne @@Next
- mov[eax+ecx], bl {Replace Char}
- @@Next:
- add ecx, 1
- jnz @@Loop
- pop ebx
-end;
-
- {***************************************************************************************}
- {from John O'Harrow (john@almcrest.demon.co.uk) - original name: StringReplaceJOH_IA32_4}
-function ALStringReplace(const S, OldPattern, NewPattern: ansistring; Flags: TReplaceFlags): ansistring;
-type
- TPosEx = function(const SubStr, S: String; Offset: cardinal = 1): Integer;
- {$IFDEF DELPHI12}
- TCharRep = procedure(var S: ansistring; const Old, New: pAnsichar);
- {$ELSE}
- TCharRep = procedure(var S: ansistring; const Old, New: char);
- {$ENDIF}
-const
- StaticBufferSize = 16;
- PosExFunction: array[Boolean] of TPosEx = (ALPosEx, ALPosExIgnoreCase);
- CharReplace: array[Boolean] of TCharRep = (ALCharReplaceCS, ALCharReplaceIC);
-var
- SrcLen, OldLen, NewLen, Found, Count, Start, Match, BufSize, BufMax: Integer;
- StaticBuffer: array[0..StaticBufferSize - 1] of Integer;
- Buffer: PIntegerArray;
- {$IFDEF DELPHI12} PSrc, PRes: PAnsiChar; {$ELSE} PSrc, PRes: PChar; {$ENDIF}
- IgnoreCase: Boolean;
-begin
-{$IFDEF ALStringReplace_AllowLengthShortcut}
- SrcLen := 0;
- if (S <> '') then
- SrcLen := PCardinal(Cardinal(S)-4)^;
- OldLen := 0;
- if (OldPattern <> '') then
- OldLen := PCardinal(Cardinal(OldPattern)-4)^;
- NewLen := 0;
- if (NewPattern <> '') then
- NewLen := PCardinal(Cardinal(NewPattern)-4)^;
-{$ELSE}
- SrcLen := Length(S);
- OldLen := Length(OldPattern);
- NewLen := Length(NewPattern);
-{$ENDIF}
- if (OldLen = 0) or (SrcLen < OldLen) then
- begin
- if SrcLen = 0 then
- Result := '' {Needed for Non-Nil Zero Length Strings}
- else
- Result := S;
- end
- else
- begin
- IgnoreCase := rfIgnoreCase in Flags;
- if rfReplaceAll in Flags then
- begin
- if (OldLen = 1) and (NewLen = 1) then
- begin
- SetLength(Result, SrcLen);
- ALStringReplaceMoveEx(Pointer(S)^, Pointer(Result)^, SrcLen);
- {$IFDEF DELPHI12}
-
- CharReplace[IgnoreCase](Result, pAnsiChar(OldPattern[1]), pAnsiChar(NewPattern[1]));
- {$ELSE}
- CharReplace[IgnoreCase](Result, OldPattern[1], NewPattern[1]);
- {$ENDIF}
- Exit;
- end;
- Found := PosExFunction[IgnoreCase](OldPattern, S, 1);
- if Found <> 0 then
- begin
- Buffer := @StaticBuffer;
- BufMax := StaticBufferSize;
- BufSize := 1;
- Buffer[0] := Found;
- repeat
- Inc(Found, OldLen);
- Found := PosExFunction[IgnoreCase](OldPattern, S, Found);
- if Found > 0 then
- begin
- if BufSize = BufMax then
- begin {Create or Expand Dynamic Buffer}
- BufMax := BufMax + (BufMax shr 1); {Grow by 50%}
- if Buffer = @StaticBuffer then
- begin {Create Dynamic Buffer}
- GetMem(Buffer, BufMax * SizeOf(integer));
- ALStringReplaceMoveEx(StaticBuffer, Buffer^, SizeOf(StaticBuffer));
- end
- else {Expand Dynamic Buffer}
- ReallocMem(Buffer, BufMax * SizeOf(integer));
- end;
- Buffer[BufSize] := Found;
- Inc(BufSize);
- end
- until Found = 0;
- SetLength(Result, SrcLen + (BufSize * (NewLen - OldLen)));
- PSrc := Pointer(S);
- PRes := Pointer(Result);
- Start := 1;
- Match := 0;
- repeat
- Found := Buffer[Match];
- Count := Found - Start;
- Start := Found + OldLen;
- if Count > 0 then
- begin
- ALStringReplaceMoveEx(PSrc^, PRes^, Count);
- Inc(PRes, Count);
- end;
- Inc(PSrc, Count + OldLen);
- ALStringReplaceMoveEx(Pointer(NewPattern)^, PRes^, NewLen);
- Inc(PRes, NewLen);
- Inc(Match);
- until Match = BufSize;
- Dec(SrcLen, Start);
- if SrcLen >= 0 then
- ALStringReplaceMoveEx(PSrc^, PRes^, SrcLen + 1);
- if BufMax <> StaticBufferSize then
- FreeMem(Buffer); {Free Dynamic Buffwe if Created}
- end
- else {No Matches Found}
- Result := S;
- end
- else
- begin {Replace First Occurance Only}
- Found := PosExFunction[IgnoreCase](OldPattern, S, 1);
- if Found <> 0 then
- begin {Match Found}
- SetLength(Result, SrcLen - OldLen + NewLen);
- Dec(Found);
- PSrc := Pointer(S);
- PRes := Pointer(Result);
- if NewLen = OldLen then
- begin
- ALStringReplaceMoveEx(PSrc^, PRes^, SrcLen);
- Inc(PRes, Found);
- ALStringReplaceMoveEx(Pointer(NewPattern)^, PRes^, NewLen);
- end
- else
- begin
- ALStringReplaceMoveEx(PSrc^, PRes^, Found);
- Inc(PRes, Found);
- Inc(PSrc, Found + OldLen);
- ALStringReplaceMoveEx(Pointer(NewPattern)^, PRes^, NewLen);
- Inc(PRes, NewLen);
- ALStringReplaceMoveEx(PSrc^, PRes^, SrcLen - Found - OldLen);
- end;
- end
- else {No Matches Found}
- Result := S;
- end;
- end;
-end;
-
-
- ////////////////////////////////////////////////////////////////
- //////////ALUpperCase from FastCode Aleksandr Sharahov//////////
- ////////////////////////////////////////////////////////////////
-
-{********************************************}
-function AlUpperCase(const s: String): String;
-asm
- push ebx
- push esi
- push edi
- mov esi, eax // s
- mov eax, edx
- test esi, esi
- jz @nil
- mov ebx, [esi-4] // Length(s)
- mov edx, ebx
- mov edi, eax // @Result
- add ebx, -1
- jl @nil
- and ebx, -4
- call System.@LStrSetLength
- mov eax, [ebx+esi]
- mov edi, [edi] // Result
-
- @loop: mov ecx, eax
- or eax, $80808080 // $E1..$FA
- mov edx, eax
- sub eax, $7B7B7B7B // $66..$7F
- xor edx, ecx // $80
- or eax, $80808080 // $E6..$FF
- sub eax, $66666666 // $80..$99
- and eax, edx // $80
- shr eax, 2 // $20
- xor eax, ecx // Upper
- mov[ebx+edi], eax
- mov eax, [ebx+esi-4]
- sub ebx, 4
- jge @loop
-
- pop edi
- pop esi
- pop ebx
- ret
-
- @nil: pop edi
- pop esi
- pop ebx
- jmp System.@LStrClr // Result:=''
-end;
-
-{********************************************}
-function ALLowerCase(const s: String): String;
-asm
- push ebx
- push esi
- push edi
- mov esi, eax // s
- mov eax, edx
- test esi, esi
- jz @nil
- mov ebx, [esi-4] // Length(s)
- mov edx, ebx
- mov edi, eax // @Result
- add ebx, -1
- jl @nil
- and ebx, -4
- call System.@LStrSetLength
- mov eax, [ebx+esi]
- mov edi, [edi] // Result
-
- @loop: mov ecx, eax
- or eax, $80808080 // $C1..$DA
- mov edx, eax
- sub eax, $5B5B5B5B // $66..$7F
- xor edx, ecx // $80
- or eax, $80808080 // $E6..$FF
- sub eax, $66666666 // $80..$99
- and eax, edx // $80
- shr eax, 2 // $20
- xor eax, ecx // Lower
- mov[ebx+edi], eax
- mov eax, [ebx+esi-4]
- sub ebx, 4
- jge @loop
-
- pop edi
- pop esi
- pop ebx
- ret
-
- @nil: pop edi
- pop esi
- pop ebx
- jmp System.@LStrClr // Result:=''
-end;
-
-
- ///////////////////////////
- //////////Alcinoe//////////
- ///////////////////////////
-
-{********************************************************************************}
-function ALCopyStr(const aSourceString: String; aStart, aLength: Integer): String;
-var
- SourceStringLength: Integer;
-begin
- SourceStringLength := Length(aSourceString);
- if (aStart < 1) then
- aStart := 1;
-
- if (SourceStringLength = 0) or
- (aLength < 1) or
- (aStart > SourceStringLength) then
- begin
- Result := '';
- Exit;
- end;
-
- if aLength > SourceStringLength - (aStart - 1) then
- aLength := SourceStringLength - (aStart - 1);
-
- SetLength(Result, aLength);
- ALMove(aSourceString[aStart], Result[1], aLength);
-end;
-
-{************}
-var
- Ch: char;
-
-
-//***********************************************************************
-
-
-function AlSMTPClientParseEmail(FriendlyEmail: String; var FriendlyName: String): String;
-var
- I, J: Integer;
- Flag: Boolean;
- Delim: char;
-begin
- Result := '';
- FriendlyName := '';
- Flag := (ALCharPos('<', FriendlyEmail) > 0);
- { Skip spaces }
- I := 1;
- while (I <= Length(FriendlyEmail)) and (FriendlyEmail[I] = ' ') do
- Inc(I);
- if I > Length(FriendlyEmail) then
- Exit;
- { Check if quoted string }
- if FriendlyEmail[I] in ['"', ''''] then
- begin
- Delim := FriendlyEmail[I];
- { Skip opening quote }
- Inc(I);
- { Go to closing quote }
- J := I;
- while (I <= Length(FriendlyEmail)) and (FriendlyEmail[I] <> Delim) do
- Inc(I);
- FriendlyName := AlCopyStr(FriendlyEmail, J, I - J);
- Inc(I);
- if Flag then
- begin
- { Go to less-than sign }
- while (I <= Length(FriendlyEmail)) and (FriendlyEmail[I] <> '<') do
- Inc(I);
- Inc(I);
- J := I;
- while (I <= Length(FriendlyEmail)) and (FriendlyEmail[I] <> '>') do
- Inc(I);
- Result := AlCopyStr(FriendlyEmail, J, I - J);
- end
- else
- Result := Trim(AlCopyStr(FriendlyEmail, I, Length(FriendlyEmail)));
- end
- else if Flag then
- begin
- { Go to less-than sign }
- J := I;
- while (I <= Length(FriendlyEmail)) and (FriendlyEmail[I] <> '<') do
- Inc(I);
- FriendlyName := Trim(AlCopyStr(FriendlyEmail, J, I - J));
- Inc(I);
- { Go to greater-than sign }
- J := I;
- while (I <= Length(FriendlyEmail)) and (FriendlyEmail[I] <> '>') do
- Inc(I);
- Result := AlCopyStr(FriendlyEmail, J, I - J);
- end
- else
- begin
- { No <..>, goto next space }
- J := I;
- while (I <= Length(FriendlyEmail)) and (FriendlyEmail[I] <> ' ') do
- Inc(I);
- FriendlyName := Trim(AlCopyStr(FriendlyEmail, J, I - J));
- Result := Trim(AlCopyStr(FriendlyEmail, I + 1, Length(FriendlyEmail)));
- end;
- if (Result = '') and (AlCharPos('@', FriendlyName) > 0) then
- begin
- Result := FriendlyName;
- FriendlyName := '';
- end;
-end;
-
-{*********************************************}
-function AlSMTPClientGenerateMessageID: String;
-begin
- Result := AlStringReplace(ALMakeKeyStrByGUID, '-', '', [rfReplaceAll]) + '@' + AlGetLocalHostName;
-end;
-
-
- {***********************************}
- {Perform Forward Move of 0..36 Bytes}
- {On Entry, ECX = Count, EAX = Source+Count, EDX = Dest+Count. Destroys ECX}
-procedure ALSmallForwardMove;
-asm
- jmp dword ptr [@@FwdJumpTable+ecx*4]
- nop {Align Jump Table}
- @@FwdJumpTable:
- dd @@Done {Removes need to test for zero size move}
- dd @@Fwd01, @@Fwd02, @@Fwd03, @@Fwd04, @@Fwd05, @@Fwd06, @@Fwd07, @@Fwd08
- dd @@Fwd09, @@Fwd10, @@Fwd11, @@Fwd12, @@Fwd13, @@Fwd14, @@Fwd15, @@Fwd16
- dd @@Fwd17, @@Fwd18, @@Fwd19, @@Fwd20, @@Fwd21, @@Fwd22, @@Fwd23, @@Fwd24
- dd @@Fwd25, @@Fwd26, @@Fwd27, @@Fwd28, @@Fwd29, @@Fwd30, @@Fwd31, @@Fwd32
- dd @@Fwd33, @@Fwd34, @@Fwd35, @@Fwd36
- @@Fwd36:
- mov ecx, [eax-36]
- mov[edx-36], ecx
- @@Fwd32:
- mov ecx, [eax-32]
- mov[edx-32], ecx
- @@Fwd28:
- mov ecx, [eax-28]
- mov[edx-28], ecx
- @@Fwd24:
- mov ecx, [eax-24]
- mov[edx-24], ecx
- @@Fwd20:
- mov ecx, [eax-20]
- mov[edx-20], ecx
- @@Fwd16:
- mov ecx, [eax-16]
- mov[edx-16], ecx
- @@Fwd12:
- mov ecx, [eax-12]
- mov[edx-12], ecx
- @@Fwd08:
- mov ecx, [eax-8]
- mov[edx-8], ecx
- @@Fwd04:
- mov ecx, [eax-4]
- mov[edx-4], ecx
- ret
- nop
- @@Fwd35:
- mov ecx, [eax-35]
- mov[edx-35], ecx
- @@Fwd31:
- mov ecx, [eax-31]
- mov[edx-31], ecx
- @@Fwd27:
- mov ecx, [eax-27]
- mov[edx-27], ecx
- @@Fwd23:
- mov ecx, [eax-23]
- mov[edx-23], ecx
- @@Fwd19:
- mov ecx, [eax-19]
- mov[edx-19], ecx
- @@Fwd15:
- mov ecx, [eax-15]
- mov[edx-15], ecx
- @@Fwd11:
- mov ecx, [eax-11]
- mov[edx-11], ecx
- @@Fwd07:
- mov ecx, [eax-7]
- mov[edx-7], ecx
- mov ecx, [eax-4]
- mov[edx-4], ecx
- ret
- nop
- @@Fwd03:
- movzx ecx, word ptr [eax-3]
- mov[edx-3], cx
- movzx ecx, byte ptr [eax-1]
- mov[edx-1], cl
- ret
- @@Fwd34:
- mov ecx, [eax-34]
- mov[edx-34], ecx
- @@Fwd30:
- mov ecx, [eax-30]
- mov[edx-30], ecx
- @@Fwd26:
- mov ecx, [eax-26]
- mov[edx-26], ecx
- @@Fwd22:
- mov ecx, [eax-22]
- mov[edx-22], ecx
- @@Fwd18:
- mov ecx, [eax-18]
- mov[edx-18], ecx
- @@Fwd14:
- mov ecx, [eax-14]
- mov[edx-14], ecx
- @@Fwd10:
- mov ecx, [eax-10]
- mov[edx-10], ecx
- @@Fwd06:
- mov ecx, [eax-6]
- mov[edx-6], ecx
- @@Fwd02:
- movzx ecx, word ptr [eax-2]
- mov[edx-2], cx
- ret
- nop
- nop
- nop
- @@Fwd33:
- mov ecx, [eax-33]
- mov[edx-33], ecx
- @@Fwd29:
- mov ecx, [eax-29]
- mov[edx-29], ecx
- @@Fwd25:
- mov ecx, [eax-25]
- mov[edx-25], ecx
- @@Fwd21:
- mov ecx, [eax-21]
- mov[edx-21], ecx
- @@Fwd17:
- mov ecx, [eax-17]
- mov[edx-17], ecx
- @@Fwd13:
- mov ecx, [eax-13]
- mov[edx-13], ecx
- @@Fwd09:
- mov ecx, [eax-9]
- mov[edx-9], ecx
- @@Fwd05:
- mov ecx, [eax-5]
- mov[edx-5], ecx
- @@Fwd01:
- movzx ecx, byte ptr [eax-1]
- mov[edx-1], cl
- ret
- @@Done:
-end;
-
- {************************************}
- {Perform Backward Move of 0..36 Bytes}
- {On Entry, ECX = Count, EAX = Source, EDX = Dest. Destroys ECX}
-procedure ALSmallBackwardMove;
-asm
- jmp dword ptr [@@BwdJumpTable+ecx*4]
- nop {Align Jump Table}
- @@BwdJumpTable:
- dd @@Done {Removes need to test for zero size move}
- dd @@Bwd01, @@Bwd02, @@Bwd03, @@Bwd04, @@Bwd05, @@Bwd06, @@Bwd07, @@Bwd08
- dd @@Bwd09, @@Bwd10, @@Bwd11, @@Bwd12, @@Bwd13, @@Bwd14, @@Bwd15, @@Bwd16
- dd @@Bwd17, @@Bwd18, @@Bwd19, @@Bwd20, @@Bwd21, @@Bwd22, @@Bwd23, @@Bwd24
- dd @@Bwd25, @@Bwd26, @@Bwd27, @@Bwd28, @@Bwd29, @@Bwd30, @@Bwd31, @@Bwd32
- dd @@Bwd33, @@Bwd34, @@Bwd35, @@Bwd36
- @@Bwd36:
- mov ecx, [eax+32]
- mov[edx+32], ecx
- @@Bwd32:
- mov ecx, [eax+28]
- mov[edx+28], ecx
- @@Bwd28:
- mov ecx, [eax+24]
- mov[edx+24], ecx
- @@Bwd24:
- mov ecx, [eax+20]
- mov[edx+20], ecx
- @@Bwd20:
- mov ecx, [eax+16]
- mov[edx+16], ecx
- @@Bwd16:
- mov ecx, [eax+12]
- mov[edx+12], ecx
- @@Bwd12:
- mov ecx, [eax+8]
- mov[edx+8], ecx
- @@Bwd08:
- mov ecx, [eax+4]
- mov[edx+4], ecx
- @@Bwd04:
- mov ecx, [eax]
- mov[edx], ecx
- ret
- nop
- nop
- nop
- @@Bwd35:
- mov ecx, [eax+31]
- mov[edx+31], ecx
- @@Bwd31:
- mov ecx, [eax+27]
- mov[edx+27], ecx
- @@Bwd27:
- mov ecx, [eax+23]
- mov[edx+23], ecx
- @@Bwd23:
- mov ecx, [eax+19]
- mov[edx+19], ecx
- @@Bwd19:
- mov ecx, [eax+15]
- mov[edx+15], ecx
- @@Bwd15:
- mov ecx, [eax+11]
- mov[edx+11], ecx
- @@Bwd11:
- mov ecx, [eax+7]
- mov[edx+7], ecx
- @@Bwd07:
- mov ecx, [eax+3]
- mov[edx+3], ecx
- mov ecx, [eax]
- mov[edx], ecx
- ret
- nop
- nop
- nop
- @@Bwd03:
- movzx ecx, word ptr [eax+1]
- mov[edx+1], cx
- movzx ecx, byte ptr [eax]
- mov[edx], cl
- ret
- nop
- nop
- @@Bwd34:
- mov ecx, [eax+30]
- mov[edx+30], ecx
- @@Bwd30:
- mov ecx, [eax+26]
- mov[edx+26], ecx
- @@Bwd26:
- mov ecx, [eax+22]
- mov[edx+22], ecx
- @@Bwd22:
- mov ecx, [eax+18]
- mov[edx+18], ecx
- @@Bwd18:
- mov ecx, [eax+14]
- mov[edx+14], ecx
- @@Bwd14:
- mov ecx, [eax+10]
- mov[edx+10], ecx
- @@Bwd10:
- mov ecx, [eax+6]
- mov[edx+6], ecx
- @@Bwd06:
- mov ecx, [eax+2]
- mov[edx+2], ecx
- @@Bwd02:
- movzx ecx, word ptr [eax]
- mov[edx], cx
- ret
- nop
- @@Bwd33:
- mov ecx, [eax+29]
- mov[edx+29], ecx
- @@Bwd29:
- mov ecx, [eax+25]
- mov[edx+25], ecx
- @@Bwd25:
- mov ecx, [eax+21]
- mov[edx+21], ecx
- @@Bwd21:
- mov ecx, [eax+17]
- mov[edx+17], ecx
- @@Bwd17:
- mov ecx, [eax+13]
- mov[edx+13], ecx
- @@Bwd13:
- mov ecx, [eax+9]
- mov[edx+9], ecx
- @@Bwd09:
- mov ecx, [eax+5]
- mov[edx+5], ecx
- @@Bwd05:
- mov ecx, [eax+1]
- mov[edx+1], ecx
- @@Bwd01:
- movzx ecx, byte ptr[eax]
- mov[edx], cl
- ret
- nop
- nop
- @@Done:
-end;
-
-var
- VALMove_PrefetchLimit: Integer;
-
- {***********************************************************}
- {Dest MUST be 16-Byes Aligned, Count MUST be multiple of 16 }
-procedure ALAlignedFwdMoveSSE(const Source; var Dest; Count: Integer);
-const
- Prefetch = 512;
-asm
- push ebx
- mov ebx, eax {ebx = Source}
- mov eax, ecx {EAX = Count}
- and eax, -128 {EAX = No of Bytes to Block Move}
- add ebx, eax
- add edx, eax
- shr eax, 3 {EAX = No of QWORD's to Block Move}
- neg eax
- cmp eax, VALMove_PrefetchLimit {Count > Limit - Use Prefetch}
- jl @Large
- @Small:
- test ebx, 15 {Check if Both Source/Dest are Aligned}
- jnz @SmallUnaligned
- @SmallAligned: {Both Source and Dest 16-Byte Aligned}
-
- nop {Align Loops}
- nop
- nop
-
- @SmallAlignedLoop:
- movaps xmm0, [ebx+8*eax]
- movaps xmm1, [ebx+8*eax+16]
- movaps xmm2, [ebx+8*eax+32]
- movaps xmm3, [ebx+8*eax+48]
- movaps[edx+8*eax], xmm0
- movaps[edx+8*eax+16], xmm1
- movaps[edx+8*eax+32], xmm2
- movaps[edx+8*eax+48], xmm3
- movaps xmm4, [ebx+8*eax+64]
- movaps xmm5, [ebx+8*eax+80]
- movaps xmm6, [ebx+8*eax+96]
- movaps xmm7, [ebx+8*eax+112]
- movaps[edx+8*eax+64], xmm4
- movaps[edx+8*eax+80], xmm5
- movaps[edx+8*eax+96], xmm6
- movaps[edx+8*eax+112], xmm7
- add eax, 16
- js @SmallAlignedLoop
- jmp @Remainder
-
- @SmallUnaligned: {Source Not 16-Byte Aligned}
- @SmallUnalignedLoop:
- movups xmm0, [ebx+8*eax]
- movups xmm1, [ebx+8*eax+16]
- movups xmm2, [ebx+8*eax+32]
- movups xmm3, [ebx+8*eax+48]
- movaps[edx+8*eax], xmm0
- movaps[edx+8*eax+16], xmm1
- movaps[edx+8*eax+32], xmm2
- movaps[edx+8*eax+48], xmm3
- movups xmm4, [ebx+8*eax+64]
- movups xmm5, [ebx+8*eax+80]
- movups xmm6, [ebx+8*eax+96]
- movups xmm7, [ebx+8*eax+112]
- movaps[edx+8*eax+64], xmm4
- movaps[edx+8*eax+80], xmm5
- movaps[edx+8*eax+96], xmm6
- movaps[edx+8*eax+112], xmm7
- add eax, 16
- js @SmallUnalignedLoop
- jmp @Remainder
-
- @Large:
- test ebx, 15 {Check if Both Source/Dest Aligned}
- jnz @LargeUnaligned
- @LargeAligned: {Both Source and Dest 16-Byte Aligned}
- @LargeAlignedLoop:
- prefetchnta[ebx+8*eax+Prefetch]
- prefetchnta[ebx+8*eax+Prefetch+64]
- movaps xmm0, [ebx+8*eax]
- movaps xmm1, [ebx+8*eax+16]
- movaps xmm2, [ebx+8*eax+32]
- movaps xmm3, [ebx+8*eax+48]
- movntps[edx+8*eax], xmm0
- movntps[edx+8*eax+16], xmm1
- movntps[edx+8*eax+32], xmm2
- movntps[edx+8*eax+48], xmm3
- movaps xmm4, [ebx+8*eax+64]
- movaps xmm5, [ebx+8*eax+80]
- movaps xmm6, [ebx+8*eax+96]
- movaps xmm7, [ebx+8*eax+112]
- movntps[edx+8*eax+64], xmm4
- movntps[edx+8*eax+80], xmm5
- movntps[edx+8*eax+96], xmm6
- movntps[edx+8*eax+112], xmm7
- add eax, 16
- js @LargeAlignedLoop
- sfence
- jmp @Remainder
-
- @LargeUnaligned: {Source Not 16-Byte Aligned}
- @LargeUnalignedLoop:
- prefetchnta[ebx+8*eax+Prefetch]
- prefetchnta[ebx+8*eax+Prefetch+64]
- movups xmm0, [ebx+8*eax]
- movups xmm1, [ebx+8*eax+16]
- movups xmm2, [ebx+8*eax+32]
- movups xmm3, [ebx+8*eax+48]
- movntps[edx+8*eax], xmm0
- movntps[edx+8*eax+16], xmm1
- movntps[edx+8*eax+32], xmm2
- movntps[edx+8*eax+48], xmm3
- movups xmm4, [ebx+8*eax+64]
- movups xmm5, [ebx+8*eax+80]
- movups xmm6, [ebx+8*eax+96]
- movups xmm7, [ebx+8*eax+112]
- movntps[edx+8*eax+64], xmm4
- movntps[edx+8*eax+80], xmm5
- movntps[edx+8*eax+96], xmm6
- movntps[edx+8*eax+112], xmm7
- add eax, 16
- js @LargeUnalignedLoop
- sfence
-
- @Remainder:
- and ecx, $7F {ECX = Remainder (0..112 - Multiple of 16)}
- jz @Done
- add ebx, ecx
- add edx, ecx
- neg ecx
- @RemainderLoop:
- movups xmm0, [ebx+ecx]
- movaps[edx+ecx], xmm0
- add ecx, 16
- jnz @RemainderLoop
- @Done:
- pop ebx
-end;
-
- {****************************************************************************}
- {Move ECX Bytes from EAX to EDX, where EAX > EDX and ECX > 36 (SMALLMOVESIZE)}
-procedure ALForwards_SSE;
-const
- LARGESIZE = 2048;
-asm
- cmp ecx, LARGESIZE
- jge @FwdLargeMove
- cmp ecx, CALMOVE_SMALLMOVESIZE+32
- movups xmm0, [eax]
- jg @FwdMoveSSE
- movups xmm1, [eax+16]
- movups[edx], xmm0
- movups[edx+16], xmm1
- add eax, ecx
- add edx, ecx
- sub ecx, 32
- jmp ALSmallForwardMove
- @FwdMoveSSE:
- push ebx
- mov ebx, edx
- {Align Writes}
- add eax, ecx
- add ecx, edx
- add edx, 15
- and edx, -16
- sub ecx, edx
- add edx, ecx
- {Now Aligned}
- sub ecx, 32
- neg ecx
- @FwdLoopSSE:
- movups xmm1, [eax+ecx-32]
- movups xmm2, [eax+ecx-16]
- movaps[edx+ecx-32], xmm1
- movaps[edx+ecx-16], xmm2
- add ecx, 32
- jle @FwdLoopSSE
- movups[ebx], xmm0 {First 16 Bytes}
- neg ecx
- add ecx, 32
- pop ebx
- jmp ALSmallForwardMove
- @FwdLargeMove:
- push ebx
- mov ebx, ecx
- test edx, 15
- jz @FwdLargeAligned
- {16 byte Align Destination}
- mov ecx, edx
- add ecx, 15
- and ecx, -16
- sub ecx, edx
- add eax, ecx
- add edx, ecx
- sub ebx, ecx
- {Destination now 16 Byte Aligned}
- call ALSmallForwardMove
- mov ecx, ebx
- @FwdLargeAligned:
- and ecx, -16
- sub ebx, ecx {EBX = Remainder}
- push edx
- push eax
- push ecx
- call ALAlignedFwdMoveSSE
- pop ecx
- pop eax
- pop edx
- add ecx, ebx
- add eax, ecx
- add edx, ecx
- mov ecx, ebx
- pop ebx
- jmp ALSmallForwardMove
-end;
-
- {****************************************************************************}
- {Move ECX Bytes from EAX to EDX, where EAX < EDX and ECX > 36 (SMALLMOVESIZE)}
-procedure ALBackwards_SSE;
-asm
- cmp ecx, CALMOVE_SMALLMOVESIZE+32
- jg @BwdMoveSSE
- sub ecx, 32
- movups xmm1, [eax+ecx]
- movups xmm2, [eax+ecx+16]
- movups[edx+ecx], xmm1
- movups[edx+ecx+16], xmm2
- jmp ALSmallBackwardMove
- @BwdMoveSSE:
- push ebx
- movups xmm0, [eax+ecx-16] {Last 16 Bytes}
- {Align Writes}
- lea ebx, [edx+ecx]
- and ebx, 15
- sub ecx, ebx
- add ebx, ecx
- {Now Aligned}
- sub ecx, 32
- @BwdLoop:
- movups xmm1, [eax+ecx]
- movups xmm2, [eax+ecx+16]
- movaps[edx+ecx], xmm1
- movaps[edx+ecx+16], xmm2
- sub ecx, 32
- jge @BwdLoop
- movups[edx+ebx-16], xmm0 {Last 16 Bytes}
- add ecx, 32
- pop ebx
- jmp ALSmallBackwardMove
-end;
-
- {******************************}
- {Move using SSE Instruction Set}
-procedure ALMove_SSE(const Source; var Dest; Count: Integer);
-asm
- cmp ecx, CALMOVE_SMALLMOVESIZE
- ja @Large {Count > SMALLMOVESIZE or Count < 0}
- cmp eax, edx
- jbe @SmallCheck
- add eax, ecx
- add edx, ecx
- jmp ALSmallForwardMove
- @SmallCheck:
- jne ALSmallBackwardMove
- ret {For Compatibility with Delphi's move for Source = Dest}
- @Large:
- jng @Done {For Compatibility with Delphi's move for Count < 0}
- cmp eax, edx
- ja ALForwards_SSE
- je @Done {For Compatibility with Delphi's move for Source = Dest}
- sub edx, ecx
- cmp eax, edx
- lea edx, [edx+ecx]
- jna ALForwards_SSE
- jmp ALBackwards_SSE {Source/Dest Overlap}
- @Done:
-end;
-
- {****************************************************************************}
- {Move ECX Bytes from EAX to EDX, where EAX > EDX and ECX > 36 (SMALLMOVESIZE)}
-procedure ALForwards_IA32;
-asm
- push ebx
- mov ebx, edx
- fild qword ptr [eax]
- add eax, ecx {QWORD Align Writes}
- add ecx, edx
- add edx, 7
- and edx, -8
- sub ecx, edx
- add edx, ecx {Now QWORD Aligned}
- sub ecx, 16
- neg ecx
- @FwdLoop:
- fild qword ptr [eax+ecx-16]
- fistp qword ptr [edx+ecx-16]
- fild qword ptr [eax+ecx-8]
- fistp qword ptr [edx+ecx-8]
- add ecx, 16
- jle @FwdLoop
- fistp qword ptr [ebx]
- neg ecx
- add ecx, 16
- pop ebx
- jmp ALSmallForwardMove
-end;
-
- {****************************************************************************}
- {Move ECX Bytes from EAX to EDX, where EAX > EDX and ECX > 36 (SMALLMOVESIZE)}
-procedure ALForwards_MMX;
-const
- LARGESIZE = 1024;
-asm
- cmp ecx, LARGESIZE
- jge @FwdLargeMove
- cmp ecx, 72 {Size at which using MMX becomes worthwhile}
- jl ALForwards_IA32
- push ebx
- mov ebx, edx
- movq mm0, [eax] {First 8 Bytes}
- {QWORD Align Writes}
- add eax, ecx
- add ecx, edx
- add edx, 7
- and edx, -8
- sub ecx, edx
- add edx, ecx
- {Now QWORD Aligned}
- sub ecx, 32
- neg ecx
- @FwdLoopMMX:
- movq mm1, [eax+ecx-32]
- movq mm2, [eax+ecx-24]
- movq mm3, [eax+ecx-16]
- movq mm4, [eax+ecx- 8]
- movq[edx+ecx-32], mm1
- movq[edx+ecx-24], mm2
- movq[edx+ecx-16], mm3
- movq[edx+ecx- 8], mm4
- add ecx, 32
- jle @FwdLoopMMX
- movq[ebx], mm0 {First 8 Bytes}
- emms
- pop ebx
- neg ecx
- add ecx, 32
- jmp ALSmallForwardMove
- @FwdLargeMove:
- push ebx
- mov ebx, ecx
- test edx, 15
- jz @FwdAligned
- {16 byte Align Destination}
- mov ecx, edx
- add ecx, 15
- and ecx, -16
- sub ecx, edx
- add eax, ecx
- add edx, ecx
- sub ebx, ecx
- {Destination now 16 Byte Aligned}
- call ALSmallForwardMove
- @FwdAligned:
- mov ecx, ebx
- and ecx, -16
- sub ebx, ecx {EBX = Remainder}
- push esi
- push edi
- mov esi, eax {ESI = Source}
- mov edi, edx {EDI = Dest}
- mov eax, ecx {EAX = Count}
- and eax, -64 {EAX = No of Bytes to Blocks Moves}
- and ecx, $3F {ECX = Remaining Bytes to Move (0..63)}
- add esi, eax
- add edi, eax
- shr eax, 3 {EAX = No of QWORD's to Block Move}
- neg eax
- @MMXcopyloop:
- movq mm0, [esi+eax*8 ]
- movq mm1, [esi+eax*8+ 8]
- movq mm2, [esi+eax*8+16]
- movq mm3, [esi+eax*8+24]
- movq mm4, [esi+eax*8+32]
- movq mm5, [esi+eax*8+40]
- movq mm6, [esi+eax*8+48]
- movq mm7, [esi+eax*8+56]
- movq[edi+eax*8 ], mm0
- movq[edi+eax*8+ 8], mm1
- movq[edi+eax*8+16], mm2
- movq[edi+eax*8+24], mm3
- movq[edi+eax*8+32], mm4
- movq[edi+eax*8+40], mm5
- movq[edi+eax*8+48], mm6
- movq[edi+eax*8+56], mm7
- add eax, 8
- jnz @MMXcopyloop
- emms {Empty MMX State}
- add ecx, ebx
- shr ecx, 2
- rep movsd
- mov ecx, ebx
- and ecx, 3
- rep movsb
- pop edi
- pop esi
- pop ebx
-end;
-
- {****************************************************************************}
- {Move ECX Bytes from EAX to EDX, where EAX < EDX and ECX > 36 (SMALLMOVESIZE)}
-procedure ALBackwards_IA32;
-asm
- push ebx
- fild qword ptr [eax+ecx-8]
- lea ebx, [edx+ecx] {QWORD Align Writes}
- and ebx, 7
- sub ecx, ebx
- add ebx, ecx {Now QWORD Aligned, EBX = Original Length}
- sub ecx, 16
- @BwdLoop:
- fild qword ptr [eax+ecx]
- fild qword ptr [eax+ecx+8]
- fistp qword ptr [edx+ecx+8]
- fistp qword ptr [edx+ecx]
- sub ecx, 16
- jge @BwdLoop
- fistp qword ptr [edx+ebx-8]
- add ecx, 16
- pop ebx
- jmp ALSmallBackwardMove
-end;
-
- {****************************************************************************}
- {Move ECX Bytes from EAX to EDX, where EAX < EDX and ECX > 36 (SMALLMOVESIZE)}
-procedure ALBackwards_MMX;
-asm
- cmp ecx, 72 {Size at which using MMX becomes worthwhile}
- jl ALBackwards_IA32
- push ebx
- movq mm0, [eax+ecx-8] {Get Last QWORD}
- {QWORD Align Writes}
- lea ebx, [edx+ecx]
- and ebx, 7
- sub ecx, ebx
- add ebx, ecx
- {Now QWORD Aligned}
- sub ecx, 32
- @BwdLoopMMX:
- movq mm1, [eax+ecx ]
- movq mm2, [eax+ecx+ 8]
- movq mm3, [eax+ecx+16]
- movq mm4, [eax+ecx+24]
- movq[edx+ecx+24], mm4
- movq[edx+ecx+16], mm3
- movq[edx+ecx+ 8], mm2
- movq[edx+ecx ], mm1
- sub ecx, 32
- jge @BwdLoopMMX
- movq[edx+ebx-8], mm0 {Last QWORD}
- emms
- add ecx, 32
- pop ebx
- jmp ALSmallBackwardMove
-end;
-
- {******************************}
- {Move using MMX Instruction Set}
-procedure ALMove_MMX(const Source; var Dest; Count: Integer);
-asm
- cmp ecx, CALMOVE_SMALLMOVESIZE
- ja @Large {Count > SMALLMOVESIZE or Count < 0}
- cmp eax, edx
- jbe @SmallCheck
- add eax, ecx
- add edx, ecx
- jmp ALSmallForwardMove
- @SmallCheck:
- jne ALSmallBackwardMove
- ret {For Compatibility with Delphi's move for Source = Dest}
- @Large:
- jng @Done {For Compatibility with Delphi's move for Count < 0}
- cmp eax, edx
- ja ALForwards_MMX
- je @Done {For Compatibility with Delphi's move for Source = Dest}
- sub edx, ecx
- cmp eax, edx
- lea edx, [edx+ecx]
- jna ALForwards_MMX
- jmp ALBackwards_MMX {Source/Dest Overlap}
- @Done:
-end;
-
-procedure ALMove_IA32(const Source; var Dest; Count: Integer);
-asm
- cmp ecx, CALMOVE_SMALLMOVESIZE
- ja @Large {Count > SMALLMOVESIZE or Count < 0}
- cmp eax, edx
- jbe @SmallCheck
- add eax, ecx
- add edx, ecx
- jmp ALSmallForwardMove
- @SmallCheck:
- jne ALSmallBackwardMove
- ret {For Compatibility with Delphi's move for Source = Dest}
- @Large:
- jng @Done {For Compatibility with Delphi's move for Count < 0}
- cmp eax, edx
- ja ALForwards_IA32
- je @Done {For Compatibility with Delphi's move for Source = Dest}
- sub edx, ecx
- cmp eax, edx
- lea edx, [edx+ecx]
- jna ALForwards_IA32
- jmp ALBackwards_IA32 {Source/Dest Overlap}
- @Done:
-end;
-
- //***************************************************************************
- //**** ALCPUID Partial Unit
- //***************************************************************************
-var
- VALCPUInfo: TALCPUinfo;
-
-function ALGetCPUInfo: TALCPUinfo;
-begin
- Result := VALCPUInfo;
-end;
-
-function ALPos_IA32(const SubStr: ansistring; const Str: ansistring): Integer;
-asm
- test eax, eax
- jz @NotFoundExit {Exit if SubStr = ''}
- test edx, edx
- jz @NotFound {Exit if Str = ''}
- mov ecx, [edx-4] {Length(Str)}
- cmp[eax-4], 1 {Length SubStr = 1?}
- je @SingleChar {Yes - Exit via CharPos}
- jl @NotFound {Exit if Length(SubStr) < 1}
- sub ecx, [eax-4] {Subtract Length(SubStr), -ve handled by
-CharPos}
- add ecx, 1 {Number of Chars to Check for 1st Char}
- push esi {Save Registers}
- push edi
- push ebx
- push ebp
- mov ebx, [eax] {BL = 1st Char of SubStr}
- mov esi, eax {Start Address of SubStr}
- mov edi, ecx {Initial Remainder Count}
- mov ebp, edx {Start Address of Str}
- @StrLoop:
- mov eax, ebx {AL = 1st char of SubStr for next Search}
- mov ecx, edi {Remaining Length}
- push edx {Save Start Position}
- call @CharPos {Search for 1st Character}
- pop edx {Restore Start Position}
- jz @StrExit {Exit with Zero Result if 1st Char Not Found}
- mov ecx, [esi-4] {Length SubStr}
- add edx, eax {Update Start Position for Next Loop}
- sub edi, eax {Update Remaining Length for Next Loop}
- sub ecx, 1 {Remaining Characters to Compare}
- @StrCheck:
- mov al, [edx+ecx-1] {Compare Next Char of SubStr and Str}
- cmp al, [esi+ecx]
- jne @StrLoop {Different - Return to First Character Search}
- sub ecx, 1
- jg @StrCheck {Check each Remaining Character}
- mov eax, edx {All Characters Matched - Calculate Result}
- sub eax, ebp
- @StrExit:
- pop ebp {Restore Registers}
- pop ebx
- pop edi
- pop esi
- ret
- @NotFound:
- xor eax, eax {Return 0}
- @NotFoundExit:
- ret
- @SingleChar:
- mov al, [eax] {Search Character}
- {Return Position of Character AL within a String of Length ECX starting}
- {at Address EDX. If Found, Return Index in EAX and Clear Zero Flag, }
- {otherwise Return 0 in EAX and Set Zero Flag. Changes EAX, ECX and EDX}
- @CharPos:
- push ecx {Save Length}
- neg ecx
- cmp ecx, -4
- jle @NotSmall {Length >= 4}
- or ecx, ecx
- jge @CharNotFound {Exit if Length <= 0}
- cmp al, [edx] {Check 1st Char}
- je @Found
- add ecx, 1
- jz @CharNotFound
- cmp al, [edx+1] {Check 2nd Char}
- je @Found
- add ecx, 1
- jz @CharNotFound
- cmp al, [edx+2] {Check 3rd Char}
- je @Found
- jmp @CharNotFound
- @NotSmall:
- sub edx, ecx {End of String}
- @Loop:
- cmp al, [edx+ecx] {Compare Next 4 Characters}
- je @Found
- cmp al, [edx+ecx+1]
- je @Found2
- cmp al, [edx+ecx+2]
- je @Found3
- cmp al, [edx+ecx+3]
- je @Found4
- add ecx, 4 {Next Character Position}
- and ecx, -4 {Prevent Read Past Last Character}
- jnz @Loop {Loop until all Characters Compared}
- @CharNotFound:
- pop ecx {Restore Stack}
- xor eax, eax {Set Result to 0 and Set Zero Flag}
- ret {Finished}
- @Found4:
- add ecx, 1
- @Found3:
- add ecx, 1
- @Found2:
- add ecx, 1
- @Found:
- add ecx, 1
- pop eax
- add eax, ecx {Set Result and Clear Zero Flag}
-end;
-
-{***************************************************************************}
-function ALPos_MMX(const SubStr: ansistring; const Str: ansistring): Integer;
-asm
- test eax, eax
- jz @NotFoundExit {Exit if SurStr = ''}
- test edx, edx
- jz @NotFound {Exit if Str = ''}
- mov ecx, [edx-4] {Length(Str)}
- cmp[eax-4], 1 {Length SubStr = 1?}
- je @SingleChar {Yes - Exit via CharPos}
- jl @NotFound {Exit if Length(SubStr) < 1}
- sub ecx, [eax-4] {Subtract Length(SubStr), -ve handled by
-CharPos}
- add ecx, 1 {Number of Chars to Check for 1st Char}
- push esi {Save Registers}
- push edi
- push ebx
- push ebp
- mov esi, eax {Start Address of SubStr}
- mov edi, ecx {Initial Remainder Count}
- mov eax, [eax] {AL = 1st Char of SubStr}
- mov ebp, edx {Start Address of Str}
- mov ebx, eax {Maintain 1st Search Char in BL}
- @StrLoop:
- mov eax, ebx {AL = 1st char of SubStr}
- mov ecx, edi {Remaining Length}
- push edx {Save Start Position}
- call @CharPos {Search for 1st Character}
- pop edx {Restore Start Position}
- test eax, eax {Result = 0?}
- jz @StrExit {Exit if 1st Character Not Found}
- mov ecx, [esi-4] {Length SubStr}
- add edx, eax {Update Start Position for Next Loop}
- sub edi, eax {Update Remaining Length for Next Loop}
- sub ecx, 1 {Remaining Characters to Compare}
- @StrCheck:
- mov al, [edx+ecx-1] {Compare Next Char of SubStr and Str}
- cmp al, [esi+ecx]
- jne @StrLoop {Different - Return to First Character Search}
- sub ecx, 1
- jnz @StrCheck {Check each Remaining Character}
- mov eax, edx {All Characters Matched - Calculate Result}
- sub eax, ebp
- @StrExit:
- pop ebp {Restore Registers}
- pop ebx
- pop edi
- pop esi
- ret
- @NotFound:
- xor eax, eax {Return 0}
- @NotFoundExit:
- ret
- @SingleChar:
- mov al, [eax] {Search Character}
- @CharPos:
- CMP ECX, 8
- JG @@NotSmall
- @@Small:
- or ecx, ecx
- jle @@NotFound {Exit if Length <= 0}
- CMP AL, [EDX]
- JZ @Found1
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+1]
- JZ @Found2
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+2]
- JZ @Found3
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+3]
- JZ @Found4
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+4]
- JZ @Found5
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+5]
- JZ @Found6
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+6]
- JZ @Found7
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+7]
- JZ @Found8
- @@NotFound:
- xor EAX, EAX
- RET
- @Found1:
- MOV EAX, 1
- RET
- @Found2:
- MOV EAX, 2
- RET
- @Found3:
- MOV EAX, 3
- RET
- @Found4:
- MOV EAX, 4
- RET
- @Found5:
- MOV EAX, 5
- RET
- @Found6:
- MOV EAX, 6
- RET
- @Found7:
- MOV EAX, 7
- RET
- @Found8:
- MOV EAX, 8
- RET
-
- @@NotSmall: {Length(Str) > 8}
- MOV AH, AL
- ADD EDX, ECX
- MOVD MM0, EAX
- PUNPCKLWD MM0, MM0
- PUNPCKLDQ MM0, MM0
- PUSH ECX {Save Length}
- NEG ECX
- @@First8:
- MOVQ MM1, [EDX+ECX]
- ADD ECX, 8
- PCMPEQB MM1, MM0 {Compare All 8 Bytes}
- PACKSSWB MM1, MM1 {Pack Result into 4 Bytes}
- MOVD EAX, MM1
- TEST EAX, EAX
- JNZ @@Matched {Exit on Match at any Position}
- CMP ECX, -8 {Check if Next Loop would pass String End}
- JGE @@Last8
- @@Align: {Align to Previous 8 Byte Boundary}
- LEA EAX, [EDX+ECX]
- and EAX, 7 {EAX -> 0 or 4}
- SUB ECX, EAX
- @@Loop:
- MOVQ MM1, [EDX+ECX]
- ADD ECX, 8
- PCMPEQB MM1, MM0 {Compare All 8 Bytes}
- PACKSSWB MM1, MM1 {Pack Result into 4 Bytes}
- MOVD EAX, MM1
- TEST EAX, EAX
- JNZ @@Matched {Exit on Match at any Position}
- CMP ECX, -8 {Check if Next Loop would pass String End}
-{$IFNDEF NoUnroll}
- JGE @@Last8
- MOVQ MM1, [EDX+ECX]
- ADD ECX, 8
- PCMPEQB MM1, MM0 {Compare All 8 Bytes}
- PACKSSWB MM1, MM1 {Pack Result into 4 Bytes}
- MOVD EAX, MM1
- TEST EAX, EAX
- JNZ @@Matched {Exit on Match at any Position}
- CMP ECX, -8 {Check if Next Loop would pass String End}
-{$ENDIF}
- JL @@Loop
- @@Last8:
- MOVQ MM1, [EDX-8] {Position for Last 8 Used Characters}
- POP EDX {Original Length}
- PCMPEQB MM1, MM0 {Compare All 8 Bytes}
- PACKSSWB MM1, MM1 {Pack Result into 4 Bytes}
- MOVD EAX, MM1
- TEST EAX, EAX
- JNZ @@Matched2 {Exit on Match at any Position}
- EMMS
- RET {Finished - Not Found}
- @@Matched: {Set Result from 1st Match in EDX}
- POP EDX {Original Length}
- ADD EDX, ECX
- @@Matched2:
- EMMS
- SUB EDX, 8 {Adjust for Extra ADD ECX,8 in Loop}
- TEST AL, AL
- JNZ @@MatchDone {Match at Position 1 or 2}
- TEST AH, AH
- JNZ @@Match1 {Match at Position 3 or 4}
- shr EAX, 16
- TEST AL, AL
- JNZ @@Match2 {Match at Position 5 or 6}
- shr EAX, 8
- ADD EDX, 6
- JMP @@MatchDone
- @@Match2:
- ADD EDX, 4
- JMP @@MatchDone
- @@Match1:
- shr EAX, 8 {AL <- AH}
- ADD EDX, 2
- @@MatchDone:
- xor EAX, 2
- and EAX, 3 {EAX <- 1 or 2}
- ADD EAX, EDX
-
-end;
-
-{***************************************************************************}
-function ALPos_SSE(const SubStr: ansistring; const Str: ansistring): Integer;
-asm
- test eax, eax
- jz @NotFoundExit {Exit if SurStr = ''}
- test edx, edx
- jz @NotFound {Exit if Str = ''}
- mov ecx, [edx-4] {Length(Str)}
- cmp[eax-4], 1 {Length SubStr = 1?}
- je @SingleChar {Yes - Exit via CharPos}
- jl @NotFound {Exit if Length(SubStr) < 1}
- sub ecx, [eax-4] {Subtract Length(SubStr), -ve handled by
-CharPos}
- add ecx, 1 {Number of Chars to Check for 1st Char}
- push esi {Save Registers}
- push edi
- push ebx
- push ebp
- mov esi, eax {Start Address of SubStr}
- mov edi, ecx {Initial Remainder Count}
- mov eax, [eax] {AL = 1st Char of SubStr}
- mov ebp, edx {Start Address of Str}
- mov ebx, eax {Maintain 1st Search Char in BL}
- @StrLoop:
- mov eax, ebx {AL = 1st char of SubStr}
- mov ecx, edi {Remaining Length}
- push edx {Save Start Position}
- call @CharPos {Search for 1st Character}
- pop edx {Restore Start Position}
- test eax, eax {Result = 0?}
- jz @StrExit {Exit if 1st Character Not Found}
- mov ecx, [esi-4] {Length SubStr}
- add edx, eax {Update Start Position for Next Loop}
- sub edi, eax {Update Remaining Length for Next Loop}
- sub ecx, 1 {Remaining Characters to Compare}
- @StrCheck:
- mov al, [edx+ecx-1] {Compare Next Char of SubStr and Str}
- cmp al, [esi+ecx]
- jne @StrLoop {Different - Return to First Character Search}
- sub ecx, 1
- jnz @StrCheck {Check each Remaining Character}
- mov eax, edx {All Characters Matched - Calculate Result}
- sub eax, ebp
- @StrExit:
- pop ebp {Restore Registers}
- pop ebx
- pop edi
- pop esi
- ret
- @NotFound:
- xor eax, eax {Return 0}
- @NotFoundExit:
- ret
- @SingleChar:
- mov al, [eax] {Search Character}
- @CharPos:
- CMP ECX, 8
- JG @@NotSmall
- @@Small:
- or ecx, ecx
- jle @@NotFound {Exit if Length <= 0}
- CMP AL, [EDX]
- JZ @Found1
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+1]
- JZ @Found2
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+2]
- JZ @Found3
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+3]
- JZ @Found4
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+4]
- JZ @Found5
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+5]
- JZ @Found6
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+6]
- JZ @Found7
- DEC ECX
- JZ @@NotFound
- CMP AL, [EDX+7]
- JZ @Found8
- @@NotFound:
- xor EAX, EAX
- RET
- @Found1:
- MOV EAX, 1
- RET
- @Found2:
- MOV EAX, 2
- RET
- @Found3:
- MOV EAX, 3
- RET
- @Found4:
- MOV EAX, 4
- RET
- @Found5:
- MOV EAX, 5
- RET
- @Found6:
- MOV EAX, 6
- RET
- @Found7:
- MOV EAX, 7
- RET
- @Found8:
- MOV EAX, 8
- RET
- @@NotSmall:
- MOV AH, AL
- ADD EDX, ECX
- MOVD MM0, EAX
- PSHUFW MM0, MM0, 0
- PUSH ECX
- NEG ECX
- @@First8:
- MOVQ MM1, [EDX+ECX]
- ADD ECX, 8
- PCMPEQB MM1, MM0 {Compare Next 8 Bytes}
- PMOVMSKB EAX, MM1
- TEST EAX, EAX
- JNZ @@Matched {Exit on Match at any Position}
- CMP ECX, -8 {Check if Next Loop would pass String End}
- JGE @@Last8
- @@Align:
- LEA EAX, [EDX+ECX]
- and EAX, 7
- SUB ECX, EAX
- @@Loop: {Loop Unrolled 2X}
- MOVQ MM1, [EDX+ECX]
- ADD ECX, 8
- PCMPEQB MM1, MM0 {Compare Next 8 Bytes}
- PMOVMSKB EAX, MM1
- TEST EAX, EAX
- JNZ @@Matched {Exit on Match at any Position}
- CMP ECX, -8 {Check if Next Loop would pass String End}
-{$IFNDEF NoUnroll}
- JGE @@Last8
- MOVQ MM1, [EDX+ECX]
- ADD ECX, 8
- PCMPEQB MM1, MM0 {Compare Next 8 Bytes}
- PMOVMSKB EAX, MM1
- TEST EAX, EAX
- JNZ @@Matched {Exit on Match at any Position}
- CMP ECX, -8 {Check if Next Loop would pass String End}
-{$ENDIF}
- JL @@loop
- @@Last8:
- PCMPEQB MM0, [EDX-8]
- POP ECX {Original Length}
- PMOVMSKB EAX, MM0
- TEST EAX, EAX
- JNZ @@Matched2
- EMMS
- RET {Finished}
- @@Matched: {Set Result from 1st Match in EcX}
- POP EDX {Original Length}
- ADD ECX, EDX
- @@Matched2:
- EMMS
- BSF EDX, EAX
- LEA EAX, [EDX+ECX-7]
-end;
-
-{****************************************************************************}
-function ALPos_SSE2(const SubStr: ansistring; const Str: ansistring): Integer;
-asm
- test eax, eax
- jz @NotFoundExit {Exit if SurStr = ''}
- test edx, edx
- jz @NotFound {Exit if Str = ''}
- mov ecx, [edx-4] {Length(Str)}
- cmp[eax-4], 1 {Length SubStr = 1?}
- je @SingleChar {Yes - Exit via CharPos}
- jl @NotFound {Exit if Length(SubStr) < 1}
- sub ecx, [eax-4] {Subtract Length(SubStr)}
- jl @NotFound {Exit if Length(SubStr) > Length(Str)}
- add ecx, 1 {Number of Chars to Check for 1st Char}
- push esi {Save Registers}
- push edi
- push ebx
- push ebp
- mov esi, eax {Start Address of SubStr}
- mov edi, ecx {Initial Remainder Count}
- mov eax, [eax] {AL = 1st Char of SubStr}
- mov ebp, edx {Start Address of Str}
- mov ebx, eax {Maintain 1st Search Char in BL}
- @StrLoop:
- mov eax, ebx {AL = 1st char of SubStr}
- mov ecx, edi {Remaining Length}
- push edx {Save Start Position}
- call @CharPos {Search for 1st Character}
- pop edx {Restore Start Position}
- test eax, eax {Result = 0?}
- jz @StrExit {Exit if 1st Character Not Found}
- mov ecx, [esi-4] {Length SubStr}
- add edx, eax {Update Start Position for Next Loop}
- sub edi, eax {Update Remaining Length for Next Loop}
- sub ecx, 1 {Remaining Characters to Compare}
- @StrCheck:
- mov al, [edx+ecx-1] {Compare Next Char of SubStr and Str}
- cmp al, [esi+ecx]
- jne @StrLoop {Different - Return to First Character Search}
- sub ecx, 1
- jnz @StrCheck {Check each Remaining Character}
- mov eax, edx {All Characters Matched - Calculate Result}
- sub eax, ebp
- @StrExit:
- pop ebp {Restore Registers}
- pop ebx
- pop edi
- pop esi
- ret
- @NotFound:
- xor eax, eax {Return 0}
- @NotFoundExit:
- ret
- @SingleChar:
- mov al, [eax] {Search Character}
- @CharPos:
- PUSH EBX
- MOV EBX, EAX
- CMP ECX, 16
- JL @@Small
- @@NotSmall:
- MOV AH, AL {Fill each Byte of XMM1 with AL}
- MOVD XMM1, EAX
- PSHUFLW XMM1, XMM1, 0
- PSHUFD XMM1, XMM1, 0
- @@First16:
- MOVUPS XMM0, [EDX] {Unaligned}
- PCMPEQB XMM0, XMM1 {Compare First 16 Characters}
- PMOVMSKB EAX, XMM0
- TEST EAX, EAX
- JNZ @@FoundStart {Exit on any Match}
- CMP ECX, 32
- JL @@Medium {If Length(Str) < 32, Check Remainder}
- @@Align:
- SUB ECX, 16 {Align Block Reads}
- PUSH ECX
- MOV EAX, EDX
- NEG EAX
- and EAX, 15
- ADD EDX, ECX
- NEG ECX
- ADD ECX, EAX
- @@Loop:
- MOVAPS XMM0, [EDX+ECX] {Aligned}
- PCMPEQB XMM0, XMM1 {Compare Next 16 Characters}
- PMOVMSKB EAX, XMM0
- TEST EAX, EAX
- JNZ @@Found {Exit on any Match}
- ADD ECX, 16
- JLE @@Loop
- @Remainder:
- POP EAX {Check Remaining Characters}
- ADD EDX, 16
- ADD EAX, ECX {Count from Last Loop End Position}
- JMP DWORD PTR [@@JumpTable2-ECX*4]
-
- @@NullString:
- xor EAX, EAX {Result = 0}
- RET
-
- @@FoundStart:
- BSF EAX, EAX {Get Set Bit}
- POP EBX
- ADD EAX, 1 {Set Result}
- RET
-
- @@Found:
- POP EDX
- BSF EAX, EAX {Get Set Bit}
- ADD EDX, ECX
- POP EBX
- LEA EAX, [EAX+EDX+1] {Set Result}
- RET
-
- @@Medium:
- ADD EDX, ECX {End of String}
- MOV EAX, 16 {Count from 16}
- JMP DWORD PTR [@@JumpTable1-64-ECX*4]
-
- @@Small:
- ADD EDX, ECX {End of String}
- xor EAX, EAX {Count from 0}
- JMP DWORD PTR [@@JumpTable1-ECX*4]
-
- nop;
- nop;
- nop {Aligb Jump Tables}
-
- @@JumpTable1:
- DD @@NotFound, @@01, @@02, @@03, @@04, @@05, @@06, @@07
- DD @@08, @@09, @@10, @@11, @@12, @@13, @@14, @@15, @@16
-
- @@JumpTable2:
- DD @@16, @@15, @@14, @@13, @@12, @@11, @@10, @@09, @@08
- DD @@07, @@06, @@05, @@04, @@03, @@02, @@01, @@NotFound
-
- @@16:
- ADD EAX, 1
- CMP BL, [EDX-16]
- JE @@Done
- @@15:
- ADD EAX, 1
- CMP BL, [EDX-15]
- JE @@Done
- @@14:
- ADD EAX, 1
- CMP BL, [EDX-14]
- JE @@Done
- @@13:
- ADD EAX, 1
- CMP BL, [EDX-13]
- JE @@Done
- @@12:
- ADD EAX, 1
- CMP BL, [EDX-12]
- JE @@Done
- @@11:
- ADD EAX, 1
- CMP BL, [EDX-11]
- JE @@Done
- @@10:
- ADD EAX, 1
- CMP BL, [EDX-10]
- JE @@Done
- @@09:
- ADD EAX, 1
- CMP BL, [EDX-9]
- JE @@Done
- @@08:
- ADD EAX, 1
- CMP BL, [EDX-8]
- JE @@Done
- @@07:
- ADD EAX, 1
- CMP BL, [EDX-7]
- JE @@Done
- @@06:
- ADD EAX, 1
- CMP BL, [EDX-6]
- JE @@Done
- @@05:
- ADD EAX, 1
- CMP BL, [EDX-5]
- JE @@Done
- @@04:
- ADD EAX, 1
- CMP BL, [EDX-4]
- JE @@Done
- @@03:
- ADD EAX, 1
- CMP BL, [EDX-3]
- JE @@Done
- @@02:
- ADD EAX, 1
- CMP BL, [EDX-2]
- JE @@Done
- @@01:
- ADD EAX, 1
- CMP BL, [EDX-1]
- JE @@Done
- @@NotFound:
- xor EAX, EAX
- @@Done:
- POP EBX
-end;
-
-
- {**********************************}
- {Called Once by Unit Initialisation}
-procedure ALInitFastPosFunct;
-var
- aCpuInfo: TALCpuinfo;
-begin
- aCpuInfo := AlGetCpuInfo;
-
- if (isSSE2 in aCpuInfo.InstructionSupport) then
- ALPos := AlPos_SSE2 {Processor Supports SSE}
- else if (isSSE in aCpuInfo.InstructionSupport) then
- ALPos := AlPos_SSE {Processor Supports SSE}
- else if (isMMX in aCpuInfo.InstructionSupport) then
- ALPos := AlPos_MMX {Processor Supports MMX}
- else
- ALPos := ALPos_IA32; {Processor does not Support MMX or SSE}
-end;
-
-//***************************************************************************
-procedure ALInitFastMovProc;
-var
- aCpuInfo: TALCpuinfo;
-begin
- aCpuInfo := AlGetCpuInfo;
-
- if (isSSE in aCpuInfo.InstructionSupport) then
- ALMove := AlMove_SSE {Processor Supports SSE}
- else if (isMMX in aCpuInfo.InstructionSupport) then
- ALMove := AlMove_MMX {Processor Supports MMX}
- else
- ALMove := ALMove_IA32; {Processor does not Support MMX or SSE}
-end;
-
-
- /////////////////////////////////////////
- ////////// TALSMTPClientHeader //////////
- /////////////////////////////////////////
-
-{********************************************************}
-procedure TALSMTPClientHeader.AssignTo(Dest: TPersistent);
-begin
- if Dest is TALSMTPClientHeader then
- with Dest as TALSMTPClientHeader do
- begin
- fSendTo := self.fSendTo;
- fSender := self.fSender;
- fMessageID := self.fMessageID;
- fbcc := self.fbcc;
- fContentTransferEncoding := self.fContentTransferEncoding;
- fComments := self.fComments;
- fMIMEVersion := self.fMIMEVersion;
- fPriority := self.fPriority;
- fReplyTo := self.fReplyTo;
- fSubject := self.fSubject;
- fFrom := self.fFrom;
- fDate := self.fDate;
- fDispositionNotificationTo := self.fDispositionNotificationTo;
- fReferences := self.fReferences;
- fcc := self.fcc;
- fContentType := self.fContentType;
- FCustomHeaders.Assign(FCustomHeaders);
- end
- else
- inherited AssignTo(Dest);
-end;
-
-{**********************************}
-procedure TALSMTPClientHeader.Clear;
-begin
- fSendTo := '';
- fSender := '';
- fMessageID := '';
- fbcc := '';
- fContentTransferEncoding := '';
- fComments := '';
- fMIMEVersion := '';
- fPriority := '';
- fReplyTo := '';
- fSubject := '';
- fFrom := '';
- fDate := '';
- fDispositionNotificationTo := '';
- fReferences := '';
- fcc := '';
- fContentType := '';
- FCustomHeaders.Clear;
-end;
-
-{*************************************}
-constructor TALSMTPClientHeader.Create;
-begin
- inherited Create;
- FCustomHeaders := TStringList.Create;
- FCustomHeaders.NameValueSeparator := ':';
- Clear;
- fMessageID := 'AUTO';
- fMIMEVersion := '1.0';
- fDate := 'NOW';
- fContentType := 'text/plain';
-end;
-
-{*************************************}
-destructor TALSMTPClientHeader.Destroy;
-begin
- FCustomHeaders.Free;
- inherited;
-end;
-
-{****************************************************}
-function TALSMTPClientHeader.GetRawHeaderText: String;
-var
- i: Integer;
- Str: String;
-begin
- Result := '';
- if Trim(fFrom) <> '' then
- Result := Result + 'From: ' + trim(fFrom) + #13#10;
- if Trim(fSender) <> '' then
- Result := Result + 'Sender: ' + trim(fSender) + #13#10;
- if Trim(fSendTo) <> '' then
- Result := Result + 'To: ' + trim(fSendTo) + #13#10;
- if Trim(fcc) <> '' then
- Result := Result + 'cc: ' + trim(fcc) + #13#10;
- if Trim(fbcc) <> '' then
- Result := Result + 'bcc: ' + trim(fbcc) + #13#10;
- if Trim(fReplyTo) <> '' then
- Result := Result + 'Reply-To: ' + trim(fReplyTo) + #13#10;
- if Trim(fSubject) <> '' then
- Result := Result + 'Subject: ' + trim(fSubject) + #13#10;
- Str := fMessageID;
- if Trim(str) <> '' then
- begin
- if sametext(Str, 'AUTO') then
- Str := '<' + AlSMTPClientGenerateMessageID + '>';
- Result := Result + 'Message-ID: ' + trim(str) + #13#10;
- end;
- if Trim(fReferences) <> '' then
- Result := Result + 'References: ' + trim(fReferences) + #13#10;
- if Trim(fComments) <> '' then
- Result := Result + 'Comments: ' + trim(fComments) + #13#10;
- Str := fDate;
- if Trim(str) <> '' then
- begin
- if sametext(Str, 'NOW') then
- Str := ALDateTimeToRfc822Str(Now);
- Result := Result + 'Date: ' + trim(str) + #13#10;
- end;
- if Trim(fContentType) <> '' then
- Result := Result + 'Content-Type: ' + trim(fContentType) + #13#10;
- if Trim(fContentTransferEncoding) <> '' then
- Result := Result + 'Content-Transfer-Encoding: ' + trim(fContentTransferEncoding) + #13#10;
- if Trim(fMIMEVersion) <> '' then
- Result := Result + 'MIME-Version: ' + trim(fMIMEVersion) + #13#10;
- if Trim(fPriority) <> '' then
- Result := Result + 'Priority: ' + trim(fPriority) + #13#10;
- if Trim(fDispositionNotificationTo) <> '' then
- Result := Result + 'Disposition-Notification-To: ' + trim(fDispositionNotificationTo) + #13#10;
- for i := 0 to FCustomHeaders.Count - 1 do
- if (trim(FCustomHeaders.names[i]) <> '') and (trim(FCustomHeaders.ValueFromIndex[i]) <> '') then
- Result := Result + FCustomHeaders.names[i] + ': ' + trim(FCustomHeaders.ValueFromIndex[i]) + #13#10;
-end;
-
-{***************************************************************************}
-procedure TALSMTPClientHeader.SetRawHeaderText(const aRawHeaderText: String);
-var
- aRawHeaderLst: TStringList;
-
- {-------------------------------------}
- function AlG001(aName: String): String;
- var
- i: Integer;
- Str: String;
- begin
- I := aRawHeaderLst.IndexOfName(aName);
- if I >= 0 then
- begin
- Result := Trim(aRawHeaderLst.ValueFromIndex[i]);
- aRawHeaderLst.Delete(i);
- while True do
- begin
- if i >= aRawHeaderLst.Count then
- break;
- str := aRawHeaderLst[i];
- if (str = '') or
- (not (str[1] in [' ', #9])) then
- break; //(1) an empty line or (2) a line that does not start with a space, a tab, or a field name followed by a colon
- Result := trim(Result + ' ' + trim(str));
- aRawHeaderLst.Delete(i);
- end;
- end
- else
- Result := '';
- end;
-
-var
- Str1, Str2: String;
- j: Integer;
-begin
- aRawHeaderLst := TStringList.Create;
- try
- aRawHeaderLst.NameValueSeparator := ':';
- aRawHeaderLst.Text := aRawHeaderText;
-
- fFrom := Alg001('From');
- fSender := Alg001('Sender');
- fSendTo := Alg001('To');
- fcc := Alg001('cc');
- fbcc := Alg001('bcc');
- fReplyTo := Alg001('Reply-To');
- fSubject := Alg001('Subject');
- fMessageID := Alg001('Message-ID');
- fReferences := Alg001('References');
- fComments := Alg001('Comments');
- fDate := Alg001('Date');
- fContentType := Alg001('Content-Type');
- fContentTransferEncoding := Alg001('Content-Transfer-Encoding');
- fMIMEVersion := Alg001('MIME-Version');
- fPriority := Alg001('Priority');
- fDispositionNotificationTo := Alg001('Disposition-Notification-To');
-
- FCustomHeaders.Clear;
- J := 0;
- while j <= aRawHeaderLst.Count - 1 do
- begin
- Str1 := trim(aRawHeaderLst.Names[j]);
- if (trim(str1) <> '') and (not (str1[1] in [' ', #9])) then
- begin
- Str1 := trim(Str1) + ': ' + trim(aRawHeaderLst.ValueFromIndex[j]);
- Inc(j);
- while True do
- begin
- if j >= aRawHeaderLst.Count then
- break;
- str2 := aRawHeaderLst[j];
- if (str2 = '') or
- (not (str2[1] in [' ', #9])) then
- break; //(1) an empty line or (2) a line that does not start with a space, a tab, or a field name followed by a colon
- Str1 := trim(Str1 + ' ' + trim(str2));
- Inc(j);
- end;
- FCustomHeaders.Add(Str1);
- end
- else
- Inc(j);
- end;
-
- finally
- aRawHeaderLst.Free;
- end;
-end;
-
-
- ///////////////////////////////////
- ////////// TAlSmtpClient //////////
- ///////////////////////////////////
-
-{*******************************}
-constructor TAlSmtpClient.Create;
-begin
- FWSAData.wVersion := 0;
- Fconnected := False;
- FSocketDescriptor := INVALID_SOCKET;
- FAuthTypesSupported := [];
- Ftimeout := 60000;
- Randomize;
-end;
-
-{*******************************}
-destructor TAlSmtpClient.Destroy;
-begin
- if Fconnected then
- Disconnect;
- inherited;
-end;
-
-{*************************************************}
-procedure TAlSmtpClient.CheckError(Error: Boolean);
-var
- ErrCode: Integer;
- S: String;
-begin
- ErrCode := WSAGetLastError;
- if Error and (ErrCode <> 0) then
- begin
- case ErrCode of
- WSAEINTR: S := 'Interrupted function call';
- WSAEACCES: S := 'Permission denied';
- WSAEFAULT: S := 'Bad address';
- WSAEINVAL: S := 'Invalid argument';
- WSAEMFILE: S := 'Too many open files';
- WSAEWOULDBLOCK: S := 'Resource temporarily unavailable';
- WSAEINPROGRESS: S := 'Operation now in progress';
- WSAEALREADY: S := 'Operation already in progress';
- WSAENOTSOCK: S := 'Socket operation on nonsocket';
- WSAEDESTADDRREQ: S := 'Destination address required';
- WSAEMSGSIZE: S := 'Message too long';
- WSAEPROTOTYPE: S := 'Protocol wrong type for socket';
- WSAENOPROTOOPT: S := 'Bad protocol option';
- WSAEPROTONOSUPPORT: S := 'Protocol not supported';
- WSAESOCKTNOSUPPORT: S := 'Socket type not supported';
- WSAEOPNOTSUPP: S := 'Operation not supported';
- WSAEPFNOSUPPORT: S := 'Protocol family not supported';
- WSAEAFNOSUPPORT: S := 'Address family not supported by protocol family';
- WSAEADDRINUSE: S := 'Address already in use';
- WSAEADDRNOTAVAIL: S := 'Cannot assign requested address';
- WSAENETDOWN: S := 'Network is down';
- WSAENETUNREACH: S := 'Network is unreachable';
- WSAENETRESET: S := 'Network dropped connection on reset';
- WSAECONNABORTED: S := 'Software caused connection abort';
- WSAECONNRESET: S := 'Connection reset by peer';
- WSAENOBUFS: S := 'No buffer space available';
- WSAEISCONN: S := 'Socket is already connected';
- WSAENOTCONN: S := 'Socket is not connected';
- WSAESHUTDOWN: S := 'Cannot send after socket shutdown';
- WSAETIMEDOUT: S := 'Connection timed out';
- WSAECONNREFUSED: S := 'Connection refused';
- WSAEHOSTDOWN: S := 'Host is down';
- WSAEHOSTUNREACH: S := 'No route to host';
- WSAEPROCLIM: S := 'Too many processes';
- WSASYSNOTREADY: S := 'Network subsystem is unavailable';
- WSAVERNOTSUPPORTED: S := 'Winsock.dll version out of range';
- WSANOTINITIALISED: S := 'Successful WSAStartup not yet performed';
- WSAEDISCON: S := 'Graceful shutdown in progress';
- WSAHOST_NOT_FOUND: S := 'Host not found';
- WSATRY_AGAIN: S := 'Nonauthoritative host not found';
- WSANO_RECOVERY: S := 'This is a nonrecoverable error';
- WSANO_DATA: S := 'Valid name, no data record of requested type';
- else
- begin
- SetLength(S, 256);
- FormatMessage(
- FORMAT_MESSAGE_FROM_SYSTEM or FORMAT_MESSAGE_FROM_HMODULE,
- Pointer(GetModuleHandle('wsock32.dll')),
- ErrCode,
- 0,
- PChar(S),
- Length(S),
- nil
- );
- SetLength(S, StrLen(PChar(S)));
- while (Length(S) > 0) and (S[Length(S)] in [#10, #13]) do
- SetLength(S, Length(S) - 1);
- end;
- end;
- raise Exception.Create(Format('%s (Error code:%s)', [S, IntToStr(ErrCode)])); { Do not localize }
- end;
-end;
-
-{********************************************************************}
-function TAlSmtpClient.Connect(aHost: String; APort: Integer): String;
-
- {---------------------------------------------}
- procedure CallServer(Server: String; Port: Word);
- var
- SockAddr: Sockaddr_in;
- IP: String;
- begin
- FSocketDescriptor := Socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
- CheckError(FSocketDescriptor = INVALID_SOCKET);
- FillChar(SockAddr, SizeOf(SockAddr), 0);
- SockAddr.sin_family := AF_INET;
- SockAddr.sin_port := swap(Port);
- {$IFDEF DELPHI12}
- SockAddr.sin_addr.S_addr := inet_addr( PAnsiChar(Server) );
- {$ELSE}
- SockAddr.sin_addr.S_addr := inet_addr(PChar(Server));
- {$ENDIF}
- if SockAddr.sin_addr.S_addr = INADDR_NONE then
- begin
- checkError(ALHostToIP(Server, IP));
- {$IFDEF DELPHI12}
- SockAddr.sin_addr.S_addr := inet_addr(pAnsiChar(IP));
- {$ELSE}
- SockAddr.sin_addr.S_addr := inet_addr(PChar(IP));
- {$ENDIF}
- end;
- CheckError(WinSock.Connect(FSocketDescriptor, SockAddr, SizeOf(SockAddr)) = SOCKET_ERROR);
- end;
-
-begin
- if FConnected then
- raise Exception.Create('SMTP component already connected');
-
- try
-
- WSAStartup(MAKEWORD(2, 2), FWSAData);
- CallServer(aHost, aPort);
- {$IFDEF DELPHI12}
- CheckError(setsockopt(FSocketDescriptor, SOL_SOCKET, SO_RCVTIMEO, PAnsiChar(@FTimeOut), SizeOf(integer)) = SOCKET_ERROR);
- CheckError(setsockopt(FSocketDescriptor, SOL_SOCKET, SO_SNDTIMEO, PAnsiChar(@FTimeOut), SizeOf(integer)) = SOCKET_ERROR);
- {$ELSE}
- CheckError(setsockopt(FSocketDescriptor, SOL_SOCKET, SO_RCVTIMEO, PChar(@FTimeOut), SizeOf(integer)) = SOCKET_ERROR);
- CheckError(setsockopt(FSocketDescriptor, SOL_SOCKET, SO_SNDTIMEO, PChar(@FTimeOut), SizeOf(integer)) = SOCKET_ERROR);
- {$ENDIF}
- Result := GetResponse([220]);
- FAuthTypesSupported := [];
- Fconnected := True;
-
- except
- Disconnect;
- raise;
- end;
-
-end;
-
-{*********************************}
-procedure TAlSmtpClient.Disconnect;
-begin
- if Fconnected then
- begin
- ShutDown(FSocketDescriptor, SD_BOTH);
- CloseSocket(FSocketDescriptor);
- FSocketDescriptor := INVALID_SOCKET;
- if FWSAData.wVersion = 2 then
- WSACleanup;
- FWSAData.wVersion := 0;
- Fconnected := False;
- if Assigned(OnStatus) then
- OnStatus('Disconnect');
- end;
-end;
-
-{********************}
-{EhloResponse is like:
- 250-ec-is.net Hello your_name, ravi de vous rencontrer
- 250-VRFY
- 250-ETRN
- 250-AUTH=LOGIN
- 250-AUTH LOGIN CRAM-MD5
- 250-8BITMIME
- 250 SIZE 0}
-function TAlSmtpClient.GetAuthTypeFromEhloResponse(EhloResponse: String): TAlSmtpClientAuthTypeSet;
-var
- k, J: Integer;
- Str1, Str2: String;
- Lst: TStringList;
-begin
- Result := [];
- Lst := TStringList.Create;
- try
- Lst.Text := AlUpperCase(Trim(EhloResponse));
- for j := 0 to Lst.Count - 1 do
- begin
- Str1 := trim(Lst[J]); //250-AUTH=LOGIN
- Delete(Str1, 1, 4); //AUTH=LOGIN
- Str2 := AlCopyStr(Str1, 1, 5); //AUTH=
- if (str2 = 'AUTH ') or (Str2 = 'AUTH=') then
- begin
- Str1 := AlCopyStr(Str1, 6, maxint); //LOGIN
- Str1 := AlStringReplace(Str1, '=', ' ', [rfReplaceAll]); //LOGIN
- while (str1 <> '') do
- begin
- K := AlCharPos(' ', Str1);
- if K <= 0 then
- begin
- Str2 := trim(Str1);
- Str1 := '';
- end
- else
- begin
- Str2 := Trim(AlCopyStr(Str1, 1, k - 1));
- Delete(Str1, 1, k);
- end;
-
- if Str2 = ('PLAIN') then
- Result := Result + [AlsmtpClientAuthPlain]
- else if Str2 = ('LOGIN') then
- Result := Result + [AlsmtpClientAuthLogin]
- else if Str2 = ('CRAM-MD5') then
- Result := Result + [AlsmtpClientAuthCramMD5]
- else if Str2 = ('CRAM-SHA1') then
- Result := Result + [AlsmtpClientAuthCramSHA1];
-
- end;
- end;
- end;
- finally
- Lst.Free;
- end;
-end;
-
-{****************************************************************************************}
-{This command is used to identify the sender-SMTP to the receiver-SMTP. The argument field
- contains the host name of the sender-SMTP. The receiver-SMTP identifies itself to the
- sender-SMTP in the connection greeting reply, and in the response to this command.
- This command and an OK reply to it confirm that both the sender-SMTP and the receiver-SMTP
- are in the initial state, that is, there is no transaction in progress and all state tables
- and buffers are cleared.}
-function TAlSmtpClient.Helo: String;
-begin
- Result := SendCmd('HELO ' + AlGetLocalHostName, [250]);
-end;
-
-{**********************************}
-function TAlSmtpClient.Ehlo: String;
-begin
- Result := SendCmd('EHLO ' + AlGetLocalHostName, [250]);
- FAuthTypesSupported := GetAuthTypeFromEhloResponse(Result);
-end;
-
-{****************************************************************************}
-{This command is used to initiate a mail transaction in which the mail data is
- delivered to one or more mailboxes. The argument field contains a reverse-path.
- The reverse-path consists of an optional list of hosts and the sender mailbox. When
- the list of hosts is present, it is a "reverse" source route and indicates that the
- mail was relayed through each host on the list (the first host in the list was the
- most recent relay). This list is used as a source route to return non-delivery notices
- to the sender. As each relay host adds itself to the beginning of the list, it must
- use its name as known in the IPCE to which it is relaying the mail rather than the IPCE
- from which the mail came (if they are different). In some types of error reporting
- messages (for example, undeliverable mail notifications) the reverse-path may be null.
- This command clears the reverse-path buffer, the forward-path buffer, and the mail data
- buffer; and inserts the reverse-path information from this command into the reverse-path buffer.}
-function TAlSmtpClient.MailFrom(aFromName: String): String;
-begin
- aFromName := trim(aFromName);
- if aFromName = '' then
- raise Exception.Create('From name is empty');
-
- if AlPos(#13#10, aFromName) > 0 then
- raise Exception.Create('From name is invalid');
-
- Result := SendCmd('MAIL From:<' + aFromName + '>', [250]);
-end;
-
-{**************************************************************************************************}
-function TAlSmtpClient.Auth(AUserName, APassword: String; aAuthType: TalSmtpClientAuthType): String;
-
- {-----------------------------------}
- function InternalDoAuthPlain: String;
- var
- aAuthPlain: String;
- begin
- if aUserName = '' then
- raise Exception.Create('UserName is empty');
-
- if aPassword = '' then
- raise Exception.Create('Password is empty');
-
- aAuthPlain := ALMimeBase64EncodeStringNoCRLF(aUserName + #0 + aUserName + #0 + aPassword);
- Result := SendCmd('AUTH PLAIN ' + aAuthPlain, [235]);
- end;
-
- {-----------------------------------}
- function InternalDoAuthLogin: String;
- begin
- if aUserName = '' then
- raise Exception.Create('UserName is empty');
-
- if aPassword = '' then
- raise Exception.Create('Password is empty');
-
- SendCmd('AUTH LOGIN', [334]);
- SendCmd(ALMimeBase64EncodeStringNoCRLF(aUsername), [334]);
- Result := SendCmd(ALMimeBase64EncodeStringNoCRLF(aPassword), [235]);
- end;
-
-var
- tmpAuthType: TAlSmtpClientAuthType;
-begin
-
- if aAuthType = AlsmtpClientAuthAutoSelect then
- begin
- if AlsmtpClientAuthPlain in FAuthTypesSupported then
- tmpAuthType := AlsmtpClientAuthPlain
- else if AlsmtpClientAuthLogin in FAuthTypesSupported then
- tmpAuthType := AlsmtpClientAuthLogin
- else if AlsmtpClientAuthCramMD5 in FAuthTypesSupported then
- tmpAuthType := AlsmtpClientAuthCramMD5
- else if AlsmtpClientAuthCramSHA1 in FAuthTypesSupported then
- tmpAuthType := AlsmtpClientAuthCramSHA1
- else
- tmpAuthType := AlsmtpClientAuthNone;
- end
- else
- tmpAuthType := aAuthType;
-
- if Assigned(OnStatus) then
- OnStatus('Authentication');
-
- case tmpAuthType of
- alsmtpClientAuthPlain: Result := InternalDoAuthPlain;
- alsmtpClientAuthLogin: Result := InternalDoAuthLogin;
- alsmtpClientAuthCramMD5: raise Exception.Create('CRAM-MD5 Authentication is not supported yet!');
- alsmtpClientAuthCramSHA1: raise Exception.Create('CRAM-SHA1 Authentication is not supported yet!');
- else
- raise Exception.Create('No Authentication scheme found');
- end;
-
-end;
-
-{*************************************************************************}
-{This command is used to identify an individual recipient of the mail data;
- multiple recipients are specified by multiple use of this command.}
-function TAlSmtpClient.RcptTo(aRcptNameLst: TStrings): String;
-var
- i: Integer;
- aRcptNameValue: String;
-begin
- Result := '';
- if aRcptNameLst.Count <= 0 then
- raise Exception.Create('RcptName list is empty');
-
- for i := 0 to aRcptNameLst.Count - 1 do
- begin
- aRcptNameValue := trim(aRcptNameLst[i]);
- if (aRcptNameValue = '') or (AlPos(#13#10, aRcptNameValue) > 0) then
- raise Exception.Create('Bad entry in RcptName list');
-
- Result := Result + SendCmd('RCPT To:<' + aRcptNameValue + '>', [250, 251]) + #13#10;
- end;
- if Result <> '' then
- Delete(Result, Length(Result) - 1, 2);
-end;
-
-{********************************************************************************}
-{The receiver treats the lines following the command as mail data from the sender.
- This command causes the mail data from this command to be appended to the mail data buffer.
- The mail data may contain any of the 128 ASCII character codes.
- The mail data is terminated by a line containing only a period, that is the character sequence ".".
- This is the end of mail data indication. The end of mail data indication requires that the receiver must now process
- the stored mail transaction information. This processing consumes the information in the reverse-path buffer,
- the forward-path buffer, and the mail data buffer, and on the completion of this command these buffers are cleared.
- If the processing is successful the receiver must send an OK reply. If the processing fails completely
- the receiver must send a failure reply. When the receiver-SMTP accepts a message either for relaying or for
- final delivery it inserts at the beginning of the mail data a time stamp line. The time stamp line indicates the
- identity of the host that sent the message, and the identity of the host that received the message (and is inserting this
- time stamp), and the date and time the message was received. Relayed messages will have multiple time stamp lines.
- When the receiver-SMTP makes the "final delivery" of a message it inserts at the beginning of the mail data a return path
- line. The return path line preserves the information in the from the MAIL command. Here, final delivery
- means the message leaves the SMTP world. Normally, this would mean it has been delivered to the destination user, but
- in some cases it may be further processed and transmitted by another mail system.
- It is possible for the mailbox in the return path be different from the actual sender's mailbox, for example,
- if error responses are to be delivered a special error handling mailbox rather than the message senders.
- The preceding two paragraphs imply that the final mail data will begin with a return path line, followed
- by one or more time stamp lines. These lines will be followed by the mail data header and body [2].
- Special mention is needed of the response and further action required when the processing following the end of mail
- data indication is partially successful. This could arise if after accepting several recipients and the mail data,
- the receiver-SMTP finds that the mail data can be successfully delivered to some of the recipients, but it cannot
- be to others (for example, due to mailbox space allocation problems). In such a situation, the response to the DATA
- command must be an OK reply. But, the receiver-SMTP must compose and send an "undeliverable mail" notification
- message to the originator of the message. Either a single notification which lists all of the recipients that failed
- to get the message, or separate notification messages must be sent for each failed recipient. All undeliverable mail
- notification messages are sent using the MAIL command (even if they result from processing a SEND, SOML, or SAML command).}
-function TAlSmtpClient.Data(aMailData: String): String;
-var
- I: Integer;
-begin
- SendCmd('DATA', [354]);
-
- i := 2;
- while i <= Length(aMailData) do
- begin
- if (aMailData[i] = '.') and (aMailData[i - 1] = #10) and (aMailData[i - 2] = #13) then
- Insert('.', aMailData, i);
- Inc(i);
- end;
-
- Result := SendCmd(aMailData + #13#10 + '.', [250]);
-
-end;
-
-{**********************************************************}
-function TAlSmtpClient.Data(aHeader, aBody: String): String;
-begin
- Result := Data(Trim(aHeader) + #13#10#13#10 + aBody);
-end;
-
-{******************************************************************************}
-function TAlSmtpClient.Data(aHeader: TALSMTPClientHeader; aBody: String): String;
-begin
- Result := Data(aHeader.GetRawHeaderText, aBody);
-end;
-
-{**************************************************************}
-{This command specifies that the receiver must send an OK reply,
- and then close the transmission channel. The receiver should not
- close the transmission channel until it receives and replies to
- a QUIT command (even if there was an error). The sender should not
- close the transmission channel until it send a QUIT command and
- receives the reply (even if there was an error response to a previous
- command). If the connection is closed prematurely the receiver should
- act as if a RSET command had been received (canceling any pending
- transaction, but not undoing any previously completed transaction),
- the sender should act as if the command or transaction in progress had
- received a temporary error (4xx).}
-function TAlSmtpClient.Quit: String;
-begin
- Result := SendCmd('QUIT', [221]);
- Disconnect;
-end;
-
-{**********************************}
-{This command asks the receiver to confirm that the argument identifies a user.
- If it is a user name, the full name of the user (if known) and the fully
- specified mailbox are returned. This command has no effect on any of the
- reverse-path buffer, the forward-path buffer, or the mail data buffer.}
-function TAlSmtpClient.Vrfy(aUserName: String): String;
-begin
- Result := SendCmd('VRFY ' + aUserName, [250]);
-end;
-
-{*************************************************************}
-{This command specifies that the current mail transaction is to
- be aborted. Any stored sender, recipients, and mail data must be
- discarded, and all buffers and state tables cleared. The receiver
- must send an OK reply.}
-function TAlSmtpClient.Rset: String;
-begin
- Result := SendCmd('RSET', [250]);
-end;
-
-{*********************************************}
-procedure TAlSmtpClient.SendMail(aHost: String; APort: Integer; aFromName: String; aRcptNameLst: TStrings; AUserName, APassword: String; aAuthType: TalSmtpClientAuthType; aMailData: String);
-begin
- if Fconnected then
- Disconnect;
-
- connect(aHost, APort);
- try
-
- if aAuthType = AlsmtpClientAuthAutoSelect then
- ehlo
- else
- Helo;
- if aAuthType <> AlsmtpClientAuthNone then
- Auth(AUserName, APassword, aAuthType);
- mailFrom(aFromName);
- RcptTo(aRcptNameLst);
- Data(aMailData);
- Quit;
-
- finally
- Disconnect;
- end;
-end;
-
-{*********************************************}
-procedure TAlSmtpClient.SendMail(aHost: String; APort: Integer; aFromName: String; aRcptNameLst: TStrings; AUserName, APassword: String; aAuthType: TalSmtpClientAuthType; aHeader, aBody: String);
-begin
- if Fconnected then
- Disconnect;
-
- if Assigned(OnStatus) then
- OnStatus('Wait for connection');
-
- connect(aHost, APort);
- try
- if aAuthType = AlsmtpClientAuthAutoSelect then
- ehlo
- else
- Helo;
- if aAuthType <> AlsmtpClientAuthNone then
- Auth(AUserName, APassword, aAuthType);
-
- if Assigned(OnStatus) then
- OnStatus('Send email');
-
- mailFrom(aFromName);
- RcptTo(aRcptNameLst);
- Data(aHeader, aBody);
- Quit;
- finally
- Disconnect;
- end;
-end;
-
-{***********************************************************}
-
-{*******************************************************************************}
-{commands consist of a command code followed by an argument field. Command codes
- are four alphabetic characters. Upper and lower case alphabetic characters are
- to be treated identically. Thus, any of the following may represent the mail command:
- MAIL Mail mail MaIl mAIl
- This also applies to any symbols representing parameter values, such as "TO" or "to"
- for the forward-path. Command codes and the argument fields are separated by one or
- more spaces. However, within the reverse-path and forward-path arguments case is
- important. In particular, in some hosts the user "smith" is different from the user
- "Smith". The argument field consists of a variable length character string ending
- with the character sequence . The receiver is to take no action until
- this sequence is received. Square brackets denote an optional argument field.
- If the option is not taken, the appropriate default is implied.
- The following are the SMTP commands:
- HELO
- MAIL FROM:
- RCPT TO:
- DATA
- RSET
- SEND FROM:
- SOML FROM:
- SAML FROM:
- VRFY
- EXPN
- HELP [ ]
- NOOP
- QUIT
- TURN }
-function TAlSmtpClient.SendCmd(aCmd: String; OkResponses: array of Word): String;
-var
- P: PChar;
- L: Integer;
- ByteSent: Integer;
-begin
- if (length(aCmd) <= 1) or
- (aCmd[length(aCmd)] <> #10) or
- (aCmd[length(aCmd) - 1] <> #13) then
- aCmd := aCmd + #13#10;
-
- p := @aCmd[1]; // pchar
- l := length(aCmd);
- while l > 0 do
- begin
- ByteSent := SocketWrite(p^, l);
- if ByteSent <= 0 then
- raise Exception.Create('Connection close gracefully!');
-
- Inc(p, ByteSent);
- Dec(l, ByteSent);
- end;
-
- Result := GetResponse(OkResponses);
-end;
-
-{*********************************************************************}
-{An SMTP reply consists of a three digit number (transmitted as three
- alphanumeric characters) followed by some text. The number is intended
- for use by automata to determine what state to enter next; the text is
- meant for the human user. It is intended that the three digits contain
- enough encoded information that the sender-SMTP need not examine the
- text and may either discard it or pass it on to the user, as appropriate.
- In particular, the text may be receiver-dependent and context dependent,
- so there are likely to be varying texts for each reply code. Formally,
- a reply is defined to be the sequence:
- a three-digit code, , one line of text, and , or a multiline reply.
- Only the EXPN and HELP commands are expected to result in multiline replies
- in normal circumstances, however multiline replies are allowed for any
- command.}
-function TAlSmtpClient.GetResponse(OkResponses: array of Word): String;
-
- {----------------------------------------------}
- function Internalstpblk(PValue: PChar): PChar;
- begin
- Result := PValue;
- {$IFDEF DELPHI12}
- while CharinSet(Result^,[' ', #9, #10, #13]) do
- {$ELSE}
- while Result^ in [' ', #9, #10, #13] do
- {$ENDIF}
- Inc(Result);
- end;
-
- {---------------------------------------------------------------------}
- function InternalGetInteger(Data: PChar; var Number: Integer): PChar;
- var
- bSign: Boolean;
- begin
- Number := 0;
- Result := InternalStpBlk(Data);
- if (Result = nil) then
- Exit;
- { Remember the sign }
- {$IFDEF DELPHI12}
- If CharInSet(Result^,['-', '+']) then
- {$ELSE}
- if Result^ in ['-', '+'] then
- {$ENDIF}
- begin
- bSign := (Result^ = '-');
- Inc(Result);
- end
- else
- bSign := False;
- { Convert any number }
- {$IFDEF DELPHI12}
- while ( CharInSet(Result^,[#0]) ) and ( CharInSet(Result^,['0'..'9']) ) do
- {$ELSE}
- while (Result^ <> #0) and (Result^ in ['0'..'9']) do
- {$ENDIF}
- begin
- Number := Number * 10 + Ord(Result^) - Ord('0');
- Inc(Result);
- end;
- { Correct for sign }
- if bSign then
- Number := -Number;
- end;
-
-var
- aBuffStr: String;
- aBuffStrLength: Integer;
- aResponse: String;
- aStatusCode: Integer;
- aGoodResponse: Boolean;
- ALst: TStringList;
- P: PChar;
- i, j: Integer;
-begin
- Result := '';
- while True do
- begin
-
- {Read the response from the socket - end of the response is show by }
- aResponse := '';
- while True do
- begin
- Setlength(aBuffStr, 512); //The maximum total length of a reply line including the reply code and the is 512 characters. (http://www.freesoft.org/CIE/RFC/821/24.htm)
- aBuffStrLength := SocketRead(aBuffStr[1], length(aBuffStr));
- aResponse := AResponse + AlCopyStr(aBuffStr, 1, aBuffStrLength);
- if aResponse = '' then
- raise Exception.Create('Connection close gracefully!');
-
- if (aBuffStrLength > 1) and
- (aBuffStr[aBuffStrLength] = #10) and
- (aBuffStr[aBuffStrLength - 1] = #13) then
- Break;
- end;
- Result := Result + aResponse;
-
- {The format for multiline replies requires that every line, except the last,
- begin with the reply code, followed immediately by a hyphen, "-" (also known as minus),
- followed by text. The last line will begin with the reply code, followed immediately
- by , optionally some text, and .}
- ALst := TStringList.Create;
- try
- Alst.Text := aResponse;
- if Alst.Count = 0 then
- raise Exception.Create('Emtpy response');
-
- for j := 0 to Alst.Count - 1 do
- begin
- aResponse := Alst[j];
- p := InternalGetInteger(@aResponse[1], aStatusCode);
- aGoodResponse := False;
- for I := 0 to High(OkResponses) do
- if OkResponses[I] = aStatusCode then
- begin
- aGoodResponse := True;
- Break;
- end;
-
- if not aGoodResponse then
- raise Exception.Create(aResponse);
-
- if p^ <> '-' then
- begin
- if J <> Alst.Count - 1 then
- raise Exception.Create(aResponse);
- Exit;
- end;
- end;
- finally
- ALst.Free;
- end;
-
- end;
-end;
-
-{**********************************************************************}
-function TAlSmtpClient.SocketWrite(var Buffer; Count: longint): longint;
-begin
- Result := Send(FSocketDescriptor, Buffer, Count, 0);
- CheckError(Result = SOCKET_ERROR);
-end;
-
-{*********************************************************************}
-function TAlSmtpClient.SocketRead(var Buffer; Count: longint): longint;
-begin
- Result := Recv(FSocketDescriptor, Buffer, Count, 0);
- CheckError(Result = SOCKET_ERROR);
-end;
-
-{*******************************************************}
-procedure TAlSmtpClient.Settimeout(const Value: Integer);
-begin
- if Value <> Ftimeout then
- begin
- {$IFDEF DELPHI12}
- CheckError(setsockopt(FSocketDescriptor, SOL_SOCKET, SO_RCVTIMEO, PAnsiChar(@FTimeOut), SizeOf(integer)) = SOCKET_ERROR);
- CheckError(setsockopt(FSocketDescriptor, SOL_SOCKET, SO_SNDTIMEO, PAnsiChar(@FTimeOut), SizeOf(integer)) = SOCKET_ERROR);
- {$ELSE}
- CheckError(setsockopt(FSocketDescriptor, SOL_SOCKET, SO_RCVTIMEO, PChar(@FTimeOut), SizeOf(integer)) = SOCKET_ERROR);
- CheckError(setsockopt(FSocketDescriptor, SOL_SOCKET, SO_SNDTIMEO, PChar(@FTimeOut), SizeOf(integer)) = SOCKET_ERROR);
- {$ENDIF}
- Ftimeout := Value;
- end;
-end;
-
-initialization
- for Ch := #0 to #255 do
- VALMove_AnsiUpcase[Ch] := Ch;
- CharUpperBuff(@VALMove_AnsiUpcase, 256);
- ALInitFastMovProc;
- ALInitFastPosFunct;
-end.
diff --git a/internal/2.31RC1/1/Source/UCAbout.dfm b/internal/2.31RC1/1/Source/UCAbout.dfm
deleted file mode 100644
index 5cccd28..0000000
--- a/internal/2.31RC1/1/Source/UCAbout.dfm
+++ /dev/null
@@ -1,835 +0,0 @@
-object AboutForm: TAboutForm
- Left = 296
- Top = 71
- BorderStyle = bsNone
- Caption = 'About User Control'
- ClientHeight = 520
- ClientWidth = 506
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- OldCreateOrder = False
- Position = poMainFormCenter
- OnClose = FormClose
- OnCreate = FormCreate
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object pnlFundo: TPanel
- Left = 0
- Top = 0
- Width = 506
- Height = 520
- Align = alClient
- Caption = 'pnlFundo'
- Color = 6435072
- TabOrder = 0
- object Image4: TImage
- Left = 1
- Top = 1
- Width = 28
- Height = 518
- Align = alLeft
- Center = True
- Picture.Data = {
- 0A544A504547496D6167653C0D0000FFD8FFE000104A46494600010200006400
- 640000FFEC00114475636B79000100040000003C0000FFEE000E41646F626500
- 64C000000001FFDB0084000604040405040605050609060506090B080606080B
- 0C0A0A0B0A0A0C100C0C0C0C0C0C100C0E0F100F0E0C1313141413131C1B1B1B
- 1C1F1F1F1F1F1F1F1F1F1F010707070D0C0D181010181A1511151A1F1F1F1F1F
- 1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F
- 1F1F1F1F1F1F1F1F1F1F1F1FFFC00011080206001903011100021101031101FF
- C4008C0001000203010100000000000000000000000608030507020401010101
- 0101010100000000000000000000050304020106100001040103030303020505
- 010000000002000103040511120621130731412251321461718123331508A142
- 53D3941611000202020200050303050000000000000001110212032131416122
- 320451711381D162F091B1C152FFDA000C03010002110311003F00E14BF4A7E7
- 8200802008020080200802008020080200802008020080200802008020080200
- 8020080200802008020080200802008020080200802008020080200802008020
- 0802008020080200802008020080200802008020080200802008020080200802
- 0080200802008020080D8C5C6F914D40723162EDC98F32D83702094A172EBD1A
- 461DBAFC5FDD79CEB313C9EB071306B97A3C8407BAEF0B4F1BCCCE50B10F705B
- D5C75EADEDEC8CFA8BAB34395CD556CB60B3D8C1E2F05AC65CC29308B4756A56
- 8DC6E01B3069B8B5F8B1136DF4F8BB2869AAF0D3CB99FF00458E5F29AC7882A7
- F942F616FF009073D7309B1F1935B32AE51F402F4DE63A69F133DC4DFBAAFA13
- 5449F64BDCD3BB8E88BAD4C8CD4BA5C83A8B7F303A9FDBF737DDFA23E8FA8B87
- 94CB66A9F912971DAFE3F86EE0657802C67E3ACCD1334A22F24AC4C05180C6EE
- FA8916AFA28B5AA74CB2E7E856766AF18F1F539BF9E70D8F9F85499C9B114B19
- 93A3C826C555B7480631B950024D4C845FEE69237176277DAE25A7AAEAF8B679
- 44B6B19FB1CFF26AB198873057E540E0325785E7B1142CFA3CA620CEFEDB9F44
- 6CFA8B891C984E378C3E3D6796E74E3C558A589BD20F61CA396E44270BB49D82
- 9C22262666713F8FA28BCD9E58D799656E2AA25F1C15B3CAF6F235B95E438D3C
- F6870D85B53478EA1665EE76D8C9E4291F422622948DCDCDDF73EBD554F8E93A
- AB78B276F6F275F044296C6264ADB3F262EE1BC71EF1DE63D1C5B5EAEDFB233E
- A2D750A3E4FC772DB3C8AC720C44FC325A15E27E437F6BC735688CE5AF23C511
- C4CF623794BE5B840B5D7D7A3486F5BAE30F29E8A895D5A65631D95C3C8D91A5
- 92E739ABF4AE9646AD9B4724574DB6BCACFA7CB6ED0D1B5FB5B4F454F4A6A893
- E09DB5A766D11C5A1992FF001D734C4F19B371F21C6297267BAD184115E103ED
- 10B96AF1EF8E5EA7B9B5D3E8B1DDA9DBA6EA6DAB62AF6A4B10FCB1AA720C5F8D
- B23C5B8ED1872959EDCB8F79A32A90CE4E651C1243D910294CC01FA0FF00BB56
- DDA759BF8E6AEEAD6E0EFCE1AA355E4AD5E43866839BE6A19B1B062258AD1816
- 36AE9D88B6F4D22DA20DB1FD5BE2DEAAA697E85CC93B6FB9F1047568667A8A53
- 8A50941F438C9885FF00567D590FA5BB8F8AE3F915EA1CEB31E3EC90F2A1182C
- 1C51DAA610CB3C203DA22096DC6ECC3B47A1833F4F933FBC7FC8EA9D15963FAF
- EC55C159E4EAF2FEBCCAD7E52B399B3E41CECF9A802B648ED13CF5A3369063D1
- 99823636E85B4346D7DD53D092A28E89DB9B7773D9165A991F760E8E4EEE56B4
- 18CA735FB9BD8E3A95C0A490F63EE7D04189FD1BE8BE59A4B9E0F554DBE0B379
- 5F21F1D9395E4A96733797E31159FEDD98A1F990CF5A4AF3D6DD158A8D1EDEB1
- CB180BF4D409DC9F577F5955D36C53495BB452B6D5934DB5D32BBF90F2F8ACCF
- 39CE657122ED8EB972596B39338B90917DFB5D99DB7BFCB47F4D552D3575A24F
- B27EDB2766D11E5A199DB3FC6CAF95FC7E6B7305004DC8E0C68478873D9D2595
- E47666791C43A900FDCFA74EAB87E6B5E94FDB3C9DBF113F535DC12BF23F8FBC
- B1CCFC79C60723891B5CC284F647245DEA719764C9FB65B86408BE4221AB0BFA
- B6AB2D3BB5D2EE1FA7F535DBAB65E8A57A8AEB9BC2E4F0995B389CA43F8F90A6
- 7DBB30EE03DA4CDAE9B81C85FD7D9D52AD9594AE89F6ABAB867C4BE9E495703A
- 1E49B72DC6E10591194043F3BFB6CD240FB5DCBB7DCD841AF5DDA2CB6BA2F7C7
- EA6BA95DFB6497FF00F3FF00E4DFFCBC93FF00758FFB5639E8FE3FD8DB1DDFC8
- E6DC861CEC39BB9167DE77CC048ED75ED1BC937734EBBC89C9DDFF008AE9A351
- C74735E679ECD7AF479371C6F92F27C2D920C0E4EC6365B8E11CA55E428B7E8F
- F1DCE3F4725E2F4ADBB527BA5ECBA7059CB5CA38871EE454BC7D98CC723BFC92
- CF62BCB9A8EDD8001B16B6B46EC2D308336A7AFF0048B4F7D7AA96B5DAD5774A
- B8FD0A4EF5ABC1BB495BFC938AC86279DE6B1D90BA792B75EC909DE95F7492B3
- B33819BEAFF27076DCDECEA9E9B2744D2827EEAB5669F246D68647B86369268E
- 37776632617766727EAFA7416F5FD919F4B65CB737E42E3F93823A1C28796D9A
- D5C1B19CAA6AECF6BA8B7F58631736317FBBAC7AFD1948D75A59736C7C8A97B5
- EAF8AE5E655DE4F26765E43919B3E12479A967392F84A3DB3694DF716A1A36DF
- 5F4556918A8E89B79973D9AC5E8F049FC778EE2190E4215F946525C454D37C17
- 220DE3DD1267603666776626D7426F7596EB5957D2A4D752AB7EA70596CFE678
- CD5E55213791F214EAC12425261E0196D40C2C00441F90C3293F73D5FE7AB6BA
- 74D14CA56CEBEC5F728DAD556F732B4F93F298ECAF9033990C69C9251B1688A0
- 925636321D19B73B49A1B6BA6ADBBAE8A9E8AB544993B7593BB688C2D4C8CB50
- 58ED422E1DC629059E3D74DDABB7C75FD51F47D45C1E645E7DAF9B28785D1C70
- 71C08616A509F64648F48D98C2463366DC27AB36CF8EDD3F551B5FE16BD4DE45
- 6D9F967D310559E7E5C84B99658B91880671E77FCF18B6EC69346D76ED771F4F
- A2ABAB1C563D1336CE4E7B23EB4333DD70739E306368DC885B7BF461D5F4D7F8
- 233EA2D1DECB78FF008C72DC7F8CECE172193B56FF001E09F347626EF1496599
- 9A407DDBF4F96A5B09987AE8DD14A55BDAAF64A5E45276A56CA90DF995F3C8F8
- 40C1F3ACD6242C9DC8E9DA300B1296F9087A38B197B90B3ED7FD551D36CA899C
- 1B6B8D9A238B433265E30F1B5BE7396B307E6478DC5E3A17B393C94ADA8C5175
- D3A3B8B6AFA3FA9333333BFB2C77EE5AD7D5B36D3A737F4475FF0014F94B9C72
- 0BB73889663111DFA15E4870D9AB913CD3D8900D8044749A31937036EDCC2EFD
- 357625C5BF452AB287E68EBD3BAD678CAFB9C0F95D3CDD3E4D94AB9D32933115
- 9946FCA64E4E736E7DC7B9FEE627EACFF45475B4EAA3A386E9AB39ECD52F4783
- A7784798719C4CB9FE3BC9E52AB85E514DAA4D7475FE5482C620E5B59DD85DA6
- 2EBECFA6BD3576E5F95AECE2D5EEA74FC7D9552ADD589771BF18F8C7886729F2
- AC9790F1F90A18C95ADD6AB57B7DE98E17DC1A34534A6FB4D9B51117D7D3A2C6
- FBF65D62A8D49B534D28F2765C1C8B9F7261E51CCB2F9E08DE28AFD829218CB4
- DC31333046C5A74DDB05B5FD5766AA61548E4DB7CACD9A05A19992BC6D2D88A3
- 7D7433117DADABF57D3A3233EA3AEF3DFF001D396D1E4071F11C5DAC8E08E309
- 2BD89A581A56221D4C0C5DE126DAFD3A8AE3D5F32AEBEA70CEADBF12C9FA5707
- 29CBE232387C9D8C664A07AD7EA1F6EC404ECEE24DD74D45DDBFD575D6CACA51
- CD6AB4E19F22FA7932550924B30C7196C90CC440F576D09DF467D5919F516DF2
- 54AA6287FB235EE5172DE3AFE32A64725FDC6F3CB69AF813EE80467606117D37
- 682DA68EDD74EB1EAE798AF29F82F02AB51C7ABB5E2CAD7E4FC44B87E7F9CC6C
- B7A6C91D7B2EDF9B64DE59A4126621EE9BFDC6C2ECC4FF00554F45B2A27104ED
- D58BB5D9185A991EA188E698220FBE42611D7EA4FA3233E971B016F96E1EA653
- 1D9DE6111E3F071D3A07960A6C738DFB622C31B916F1268FBB0FDC04E5BBE4E3
- D545BAAD9A6ABCBF0F22B55D94A76EBFC9563C8787C9E1B9BE6B1B93B657EF41
- 68FBD78D9D8A673F9B4A4CEEFA398933BB6BD156D3656A26899B6AD59A647968
- 664C3C75E3EB7CC2CDB6AD97A3893C7B47231DE91E3637372D3668C5AB8ECEAB
- 1DDBB0F06E4DB56ACFC60B236A9790F2E54062B5C52FC952C0E46FD2AD24A2F7
- ECC31EC88E4F848C3B7683B74F501F933374989D14FBBF6283577FF3FB95679B
- DCCFDCE5D97B3C822ECE6A4B527E742CDA3048CFA380B6A5F11D341EAFD3DD56
- D492AAC7A26EC6DD9CF66917B33265E37F1FE3F984F7E3BBC86A601A98C64077
- 36E92F71C99D8774917DBB7AFEEB1DDB9D22149B6AD4AFDB83A6F17F0DF0FE33
- C8B1BC82EF9171675F15623B671C471019F6498D818BBE5F73B68FA33BBB745C
- B7F936B55D551F274D3E3D6AD3765C1C9FC9BC8A8F23E7B9BCD50676A572C3BD
- 7771DAE4002C026E3EDB98772EBD1475A24CE5DD756B3688C2D4C82008020080
- 2008020080200802008020080200802008020080200802008020080200802008
- 0200802008020080200802008020080200802008020080200802008020080200
- 8020080200802008020080200802008020080200802008020080200802008020
- 080200802008020080FFD9}
- end
- object pnlComponentes: TPanel
- Left = 29
- Top = 1
- Width = 476
- Height = 518
- Align = alClient
- AutoSize = True
- BevelOuter = bvNone
- Color = 6435072
- TabOrder = 0
- object Panel1: TPanel
- Left = 0
- Top = 2
- Width = 474
- Height = 104
- BevelOuter = bvNone
- Color = clWhite
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 0
- DesignSize = (
- 474
- 104)
- object Image1: TImage
- Left = 111
- Top = 1
- Width = 374
- Height = 80
- AutoSize = True
- Picture.Data = {
- 0A544A504547496D616765FE200000FFD8FFE000104A46494600010101004800
- 480000FFDB0043000302020302020303030304030304050805050404050A0707
- 06080C0A0C0C0B0A0B0B0D0E12100D0E110E0B0B1016101113141515150C0F17
- 1816141812141514FFDB00430103040405040509050509140D0B0D1414141414
- 1414141414141414141414141414141414141414141414141414141414141414
- 14141414141414141414141414FFC00011080050017603012200021101031101
- FFC4001F0000010501010101010100000000000000000102030405060708090A
- 0BFFC400B5100002010303020403050504040000017D01020300041105122131
- 410613516107227114328191A1082342B1C11552D1F02433627282090A161718
- 191A25262728292A3435363738393A434445464748494A535455565758595A63
- 6465666768696A737475767778797A838485868788898A92939495969798999A
- A2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6
- D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F01000301
- 01010101010101010000000000000102030405060708090A0BFFC400B5110002
- 0102040403040705040400010277000102031104052131061241510761711322
- 328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728
- 292A35363738393A434445464748494A535455565758595A636465666768696A
- 737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7
- A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3
- E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F00FD52
- DA2968A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2
- 800A28A280129314EA2801980690A8A7919A6918A0040A29703DE8A5C52B00A3
- 18A5A414B4C0422A3755352D3185260549A38D8739ACBBB82D70776EAD891335
- 977908C1AC66B4378339CBE834C19DFE67E15CF5F43A1027779D5D06A76FC371
- 5C86A96F8278AF36ABB743D3A4AFD4A772BE1B04EE37159D31F0B8CE5AE47E35
- 46FE2C678AE7EF58464F19AF32752DD11EA429DFED33A573E14EED723F1A88BF
- 84FF00BD75F9D7097BAC476F9DD139C7A62B3EF3C516569A72DE3966466D8100
- F9B77A1F4AE7757FBA8E85497F333D2B7F84FF00BD75F9D1BFC27FDEBAFCEBC8
- 1BE22582FF00CBB5D9FA22FF00F1552699E3FD3753BF8ACD56686690E17CD500
- 13E9C1A9F6DFDD43F64BF999EB7BFC27FDEBAFCE8DFE13FEF5D7E75E47A87C43
- D1F4FBD92D5A5925963387F2937007D2A23F12F460325A751D7988D1EDBFBA83
- D92FE667B0EFF09FF7AEBF3A37F84FFBD75F9D7954FE39D1EDB4A8B507B922DE
- 5E170A771F5E2AAC7F137C3EE3FE3EE45FADBC9FE147B6FEEA0F64BF999EBFBF
- C27FDEBAFCE8DFE13FEF5D7E75E5FA678CB47D61E45B5BD5768D4BB0652B803A
- 9E40A84F8FFC3C1CAFF6ADBE41C7DEA3DB7F7507B15FCCFEF3D5B7F84FFBD75F
- 9D1BFC27FDEBAFCEBCD2CFC57A3DFCAB1C1A9DAC9231C2A0946E27D00A9E7D77
- 4DB598C336A16D14A3AA3CCA187E19A3DB7F7507B15FCCFEF3D1E27F0A6E386B
- AE9EB4579D5BF88F4A0E4FF695A631FF003D97FC68AB557FBA84E8FF00799F6F
- D14515F667C48578AFED47FB58F843F64AF0BE8FAEF8BEC757D42DB54BC36504
- 3A34514B287085CB1124B18DB85C6413C91C57B557E667FC16CF5069BC35F08B
- 41882B5C5FEA779346A7824A2429D4F006661D7DBDE803F49347D622D6742B2D
- 5638E5B782EAD92E563B850AE8ACA18061938201E79AF1CFD96BF6BDF08FED71
- A46BFA978434AD774DB5D1AE23B69DB5B82188C8EEA5BE4F2E59338039CE3A8E
- B5DFFC43BB83C1DF077C4B72A425B697A15CC80C996C2476EC79EE785AFCB9FD
- 85F46F88FF00F0EF5F8D3A97C286963F1B5C6BE21B56B363F6A31C515B3CC21F
- 493CB91F6E3924903E6DB401FAF1457E7A7FC13CEC3C3BE25D3EC7C6F17C70F8
- 87ACF8CB44B694F8C3C19E24D51A4B7498C6EAE4DB3297DAAE772C9B9892B83B
- 492A3C93E14FC51D5FF6CAD5BC69E37F1EF8B3E31693A1C7A8BD8E83A1FC32D3
- 2FDED2C91515834B25BC32234A1644E1BE6E493F2B28A00FD67A2BF29A4F8C1F
- 1E3C3DFB0B7C7AB3F185CF8E344D47C2F7FA58F0D78BF58B6BBD2F52BCB59B50
- 4460257092310A9F31C96027DAC71815EFFF00B047C1DF889ACF87BC13F193C7
- FF00167C41E26BBD4745096DE1E9EE5E4B38ED9D0089E42CC77CC400ECE46496
- 20938CD007D91E24F12E95E0ED06FB5BD7350B6D2B48B189A7BABDBB90471428
- 064B331E00AF8E6EBFE0AADF0FF56D5EEED3C0FE03F1F7C42B5B46227D4743D1
- F740076203307C1E7EF2AF6FC392FF0082CF78BF57D13F67EF0BE8963349069B
- AD6BAA97EC9902448E26748D8FA17C363D631E86BECDF82BF0DFC35F0A3E1778
- 73C33E13B6B78744B2B2896192DD028B825413331FE2673F31249249EB4009F0
- 57E2F693F1D3E1D69BE31D1AC752D2ECEF5E68CD8EB10082EEDDE295A3749630
- CC15B284E327820F7AEE335F17FF00C144BF683F1B7C3DBCF865F0C3E1BEA3FD
- 85E2CF885AA8B01AC0452D6B1192288042DC2B33CCBF375011B182411E47FB4F
- 7C16F887FB117C2FB5F8B3E09F8E5E3AF10EADA75EDB26B361E28D40DE595F89
- 1F696111E9F391C3163866C303C900FD2DA4AFCCBFDB1BE36FC4AF1F7C4AFD95
- D3E17F89F56F085FF8DAC2DB54FB35B5ECB1DA319DADDD3ED31290264405B72B
- 020AEE183922B8BFDB17E1FF00C62FD892F3C13F12346F8EFE2DF19EA1A96A62
- CEEECF549A4F265976F981443E632344C10AF9647181827B007E9BFC48F8C1E0
- EF84506972F8BF5EB7D15755BB5B1B1598333DCCEC40088AA092791D05762391
- 5F969FF0534F86773AEFED57F01ED23F1BF88ADCF8C75986D16CD6EDBECFA291
- 35A42B7166BD23918BB3B11CEE45356FF6EDB7F897FB3AFF00C339F81FC0DF16
- 3C657DAB6A5AAEA513EABABEB33196FA469ECBC95BA2A40963432950AC080A48
- C726803F5069335F9BDFB456ADF12BF61BF83DA7787343F893ACF8E3E23FC4BD
- 6E3B74D775C3BFEC0422897ECE1CB040CD246173C28662390083F685FD9BBE24
- 7ECABF042EFE2D785FE3F78F759F19E83E45CEAD0EB5A89B8D3EFD5A54470903
- 676805C1C397C80470482003EBFF00DA37F6A3F0BFECC96BE179BC4BA66B5AA7
- FC245A80D32CE3D1608A57129008DC1E44E39ED93ED5EC40EE00FAD7E5D7ED95
- F14A4F8E3E0FFD8D3C4374134F9FC4FAD4379736711E165DF6A92140792AACED
- 827B30CF5AFD451C28FA5007C6BE23FF0082A37C3BD03E2078ABC1F0780FE226
- BDAA786B51B8D32F9F46D22DEE2212452B44CCA45C03B4B2360B0048EC3A57AC
- 7ECC7FB63FC3DFDABACF566F07C9A8596A5A5328BCD27598161BA895890AF856
- 752A4823218E08E71919F80BF65EF8A7E36F02FED0DFB53788FC01F0EA6F88FA
- A5DF8A5D1F468AF85AC90C4F777CDE76E28DB82B0452A00CEFCE462BDC7F634F
- D9DBC69F0C75BF8C5F1BFE30DCE9FF000DF57F1847707ECF1DC4489A5C72C865
- 92777DC5130DB3682C4FCA77726803EFEC8CE296BF217F68DF8A3F0E349F873A
- EDFF00C26F8C7F19BC75E3ED29A37FF84861D5EF64B0B502450E6E242B1C4232
- ACC079631B99474241EE3E287ED25F17BE21F81FF664F857E1EF14CFE1CF177C
- 45D2ADEF75AF135B7EEEE7C973B15D597054ED59246D855890002B93900FD41C
- F04D78EFECF9FB517863F692BAF1941E1AD3359B0FF845B51FECCBC93568228D
- 25972C0F945247C81B3BED3F30E39AE6BE05FEC872FC09F13C5ADDBFC5AF883E
- 2B46B5782EF4AF12EAA2EACA66603122C7B46C652383927048CF35F99BF077F6
- 88F137C38F83DE38F0A783E5934CF1DFC4EF1FCFA45B7882590DB5B69EB88449
- 209BA47266E0004728096E0AAE403F6D5D720D52B88F703C57CFDAAF8234AF81
- 3FB2F47E1FF881F1B3C43A34AE623A978E6F35A73A8CB3EE5774B692732140C1
- 0A2A2293B37705896AFCF4F8FDF1D74CF056A3E0DF107ECF7F10FE2B6B178DAA
- ADADE6B5E23BFBC9748BF623E58D85C01E63B1524AEDC60138CE312D5CA4EC7E
- B6EA30641E335C9EAD66E413B49AF953E367C4AF885FB467ED8D3FECFF00E02F
- 175E7C3FF0DF8774F1A9788F5CD24EDBE986D898AC520C1400CF120008F9998B
- 6E002D79978CFE19EB3FB3EFEDA1F03BC1BE1AF8AFE3ED6348F105D25CEA969A
- FEBCF32CCB14A494288114C6EAAC36B03DF9AE49D1E6D2E75C2B72EB63EC8D42
- D5D890149FA5731AADAC9129DC8471DEBE5FF881F14F52F8E3FB58F8DBC0B7BA
- EF8EF41F875E0D4F25ECFE1DE9D753DEDF5D0655633BDBC6EC91EEDE0646308B
- 8192586A7ECFD71F107C3DF1C7C55E10B88FE206BBF0926D3FED3A46B7E3AD2E
- EE1B8B49D550F95E74D1AE464C8BB78076A900739F3AA60DA8B95CF4A963173A
- 8DB4D8F55D6530589FA570177765361203C6AECE14F4278AF40D7ADCBB380E40
- 071D6B86D6745DD1A8128048DC0AB7415E1BDCF711CD6A17AD711A284085776E
- 61DF3D3F2ACCFB535A5CDA4A8C77ACE9839E4722AD5E6892C793F6E7EBCE0D63
- B69ACB9B87BB6985BCE8BB59F1927E607F4350C64F1EADE5CD70CD1ABC924E58
- B9EA0066CE3EA71F954324E6595DB2CB131385CF41DA9B2F872EA646BC8A6115
- BC929032C383DFF0EB43F873528ECBED4D707C8CECDF818CF5C50324D52F19B4
- 9B488A868E3B99064807AAA9C7EA6A2BBD596E632208DA06F309C87E36E381D3
- B63AD2CFA705F0FB34B3B3CA6E7098C7DEDA327F2C7D6A80D12F0410CEB3AEC9
- 7215830EB9C629202DDADE4B0A4C530ED246C8FB8F6EA7F90FCAAB69D7F6B15A
- 8596373212C77AB7418C0E3A7506A44D2AE6D512E259C3444942A1C020E3BFF9
- E6B3EE74B9AD4C5FBC0AB28CA96C607247269812C37522CA926F3BD1832F3DFA
- 8A20BCB792FEE1EEFCDD8DF364364E4E3D7E8696E743BFB7754255B70CA32302
- AC0F420FF9EB556F6C26B3BC68DDB6C8A76B0E281D84D4DD3CD7113EE8836109
- E0E314555786691701867D4D154897B9FB25451457DD9F0615F317EDD9FB175B
- FED87E09D16D6DB595D07C4BA04D2CDA6DDCD11920612851245201C80DE5C677
- 0CE0AF435F4ED1401F9EBE29F811FB6E7C4CF8793FC37F11F8EBC056BE1FBAB6
- FB05FEB56E66379796F80ACACDE4F3BD7838542C0904F273EC3E05FD98FC7BFB
- 2FFECD5A47827E08EB9A15E78BADB52FED1D46F7C556EE969A8EF5612AED8B73
- 47D220B839C4782DC935F54D1401F10FECFF00FB22FC545FDA9F56F8E5F162FB
- C27A6EA177A7BD89D0BC211CBE45CEE411969BCC1D3033C972C7192028159BF0
- E7F655F8F7FB21F8A7C516DF04F56F077897E1D6B77CD7D1685E2B7B8867B291
- 8019568860E15550B6EF9828F941E47DE145007C9BF1BBE04FC6DFDA23F647F1
- 2F813C59AAF836D3C7BACEA104CBFD96D7316970DAC734522C459A3794B7EEC9
- 2769E4819C0AF79F817E04BBF85FF05BC09E0FD40DABEA1A168765A6DD3D9126
- 179A28112474255490CCA4E4804E7919AEE68A00F2BFDA5FF677F0E7ED3FF0A6
- FF00C11E23696DA19644B9B4BFB700CB677299D92A83C1E199483D55D8646723
- E5BF03FC14FDB53E07787ED7C19E14F1D780BC59E19B2416FA75EEBF1CEB736B
- 08E1548099C28E80B49800007000AFBE28A00F8FBE3AFEC6DE38FDA0BE0FFC3F
- 9FC41E34B0B4F8E1E0EBA7D46D3C49676FB6C8CCD207F2B68452117643B5F612
- 0C5920EE6CF0DF107F65BFDA63F6AD8744F09FC67F15782BC3FE01D3AEE3B9BD
- 4F08473B5DEA6C80804F98368C827BAA82C1B6315007DF545007C99F127F643F
- 10F89BF6B3F833E3DD12E747B2F87FE01D2D6C8E9B35CCC2EF728982F95188CA
- 1500C2325C13B4E470337BF6E6FD967C51FB4FC7F0DED7C3F79A3DA59F87F5B1
- A96A3FDA9712C4D245F28DB17971BE588DDD4AF6E79E3EA5A2803E36FDB7FF00
- 651F88FF0018BE25FC2DF88BF0CB55D1A0D7FC1571E72D8EB8EE90BB09525460
- 555B23298653B72318354BE337ECA5F17BE3D78E3F677F17789753F080D43C0F
- A9FF0069F88ACA092E12DE4DD7704CD1DAA989F70114213F78C3240C9E49AFB5
- A8A00F9FBF6CEFD94ADFF6ADF86F65A4DBEAC7C3DE26D1AEC6A3A36ADB4B2C33
- 01828E01076B71C8E54AA919C60F827C41FD9B3F6AEFDA4FC2B65F0EBE2878C7
- C0BA2F81E39E27D4F52F0EC33BDF6A8B1B065DC8EA13EF2AB607963201C1C62B
- EFCA2803E3BF8F7FB13EB1E39F1BFECD83C1B2E8963E0AF8557B0BDCDA6A934A
- 2E27B7496D09540B132BB14B539DC572CDC9E491F6191C114B45007C7FFB177E
- C89E36FD9E7E2FFC5FF1778AB52D0AF6D3C6579F6AB38B489E6778BF7F348448
- 248900E255E85BA1FC7D4BF6C9F801A87ED33F0075EF02695AC268BA8DDC90DC
- 5BCF3EEF21DE29038497682761C7500E08070718AF6EA2803E0ED7FF00661F8E
- FE3FFD8FF50F8217DA5FC38F0CC70DA69F656979A6DE5CAA5CF913C723CB2010
- 1D8CDE502700966624EDEFB1F1C7F60FF1378BFC13F05754F01F896C3C35F143
- E18E996561697571BDECAE4411C63696DA5800E848250EE0CC1979E3ED9A2803
- C1BE04C7FB464F79A8CBF175FC07159476061B0B5F0C8B9F366B9CAFEF676932
- 02E01184EEC78E057CE5F0C3FE09A3AB59FEC65E32F845E38D4342B8F135EEBD
- 36BFA26ABA6492CB0D9CFF006682388B33C48C3262757014FC8FC64F4FD06A28
- 03F3DFE2E7EC47F1C7E32FC12F85FA6F8ABC45E13D5FC75F0FAF9DE159EEAE67
- D3F5BB5222DBF6ADD0AB79A3C90872A430662581635D67C6DFD9A3E32FED1BA6
- FC243E20B5F03785FF00E114F118D4AF74ED36FAE5A33669E408D623E472E42C
- FF002FCAA0797C9C9DBF6D9E9514BF769303E1AF8CDFB2D7C48F0EFED5B77F1A
- 3E077893C370789753B14835AF0EF8919C45345B563DDFBB058A3F90848CA9DD
- 19218E481E05FD9DE339BFE0A9FF000B2D7C63E26D3FC4FE2B834B7B8D461D1A
- 268AC34B3F67BC7FB3401C96D823D8FB9FE66694FA8AFB9FE3CFEC8FF0FF00E3
- D789AC3C49E211AC69FE22B0B4FB0DBEABA26A525A4EB0EE66D9C641019D8F23
- F88D731F06BF643F861FB386B97FAFF85B4EBEBDF135EC4F0CBAD6B578D75721
- 18E5829202A93C6485C90304F5CE529A8ABB368C1C9D91E47E36FD9C7E22780B
- F685F107C59F82FAFF0087E1B9F114623D6FC37E2712A5B5C1F972F1BC609C96
- 50FC952096E483B6BB7F07FF00C2D478B56B9F89771E11B64758D74ED3FC2AF7
- 1214396F31E7798724FC9B42718273CD7A9EAEE497393CD71BABBB156E49AF12
- BD76E3CAD1EE50C3A52E64CE1356CF98C73EB5C76B9108A4DAA79C648C743FFE
- AAEBF5C0E992B9CF3DABCF35ABABB47202E49E9953CD78EF73D8455D5EC05B5B
- C6FE62E48E54BF24FB0F4FA135C4DE122F2E0E401F684079C7F09ABBA86A57A5
- C8FBB838E10D6588A67B69A4663E679AAFEE7823A566CA35E5898E9913FDA588
- DC40889E14FA819FE9DFE99D58F4991FC30938BA2A4B31F21BEE151CE47E22B8
- B13DE200426476CA77A57BEBBCED2BB4F4236907E94EC05DD409FB2F04802688
- F5F50C3FA5422DDA4D29A6FB50C472045B6CF232324E3F21F89A8E232DD59DD8
- 98FCC4C65401D704E40FFBEAA9949F3900B0ED94CD219B1656F14BA44EED2482
- 58183E09FDDE0F18FA9FE40D65EA058980EEC0194C7EBFFB3547299E2E1F838E
- 8463FCFF00F5E9E13CFB52F23E595C6D53D48C75FE5400B730CCBA7DADC79EF2
- 2312A149202107A0E7F954FABD835B7932995A7124633213BB6B775CFB7071D7
- 9ACE5858703201F6C7144B1B4726D7C061C1C60E3FFD540CA52B10872790DDA8
- A9EFAD96354084485802483800E3A73455AD897B9FB1F451457DD1F061505EDE
- DBE9D6B2DD5DCF1DB5B44A5E49A670888A3A924F0054F5F3CFED75309DBE1DE9
- 3A94EF6DE13D475E8A3D5E40FB10A0236ABB7653973CF1F2E7B567527C91722A
- 2B99D8F4DD1FE3978035FD5E3D2F4FF17693757F236C8E14B95CC8D9C00A4F0C
- 4F60339AD2F157C4EF09F81EF21B5D7FC43A7E9173347E6C715DCEA8CCB92320
- 1ED906BCCFF69CF0C78374EF80FADB4FA769D66B6D6E3FB35A18923649F23CB1
- 1631D4F503A8CF6AF318E7F10EAFF17BE1C4573A559EB3E251E038A792DF5872
- 91CB2B3B06F30ED62AC0027A1E78E3AD73CAACE0F95EFA1A2826AE7D253FC5EF
- 055B6836FADC9E29D297499E5304579F6A431348064A6ECFDE039C75A5F0F7C5
- BF0678B2F64B4D1BC4DA6EA7751C4D33456D70AEC11719620761915F20FC5FF8
- 4BA9FC2FF04682B7EFA75C6B9AEF8CC6A274FB2056CA12CADB6240403B464027
- 1C020638C9FA374EB6F10E97E14F15DEF893C33E1DD0441A64CD04DA1C86491B
- F76C5C3651703818C511AD37269AB581C2295D1E8BE17F19E85E36B192F740D5
- AD357B48E4313CD67289155C004A923A1C107F1AB1A078934BF15581BDD22FE0
- D46D048D119ADDC3AEE5386191DC1AF8EFE10492FECEBA6782FC5D24931F05F8
- BEC92DF5757FBB6979F318A6F6565E3E9B89ED5ED1FB1B44E3F67FD0EE2460CF
- 753DDCC5BB93F6891493EFF2D3A559CDA8B5ADBFCBFCC528249B477B75F187C1
- 365E275F0ECDE27D363D6DA5100B3338DE2427010F60D9E3079C9157BC5DF11B
- C31E028E27F10EBB63A479BFEAD2E660AEFEEABD48F702BC06DEC3FE19ABE234
- B1EAB616BADF81BC61AC0787546895AEAC2EE424AA3E7974E3208E98247390D7
- FE09E9FA778A3E3C7C57BFF12C50DE7892C75116B6305E00E60B205846D1AB67
- 01805C91EA3A6EE45564DF2F5BFDDFE63E45BF43DC7C37F10BC35E30D2EE352D
- 175CB1D4ECAD8133CB6D32B08B8CFCE3AAF009E7156B45F1768DE22D0CEB3A66
- A76D7DA500E7ED90481A3C2E777CC3D3073F4AF997E274567E1CFDA32E3FE111
- 8A18257F0A6A12EBF6F66A044408643099157A3171175E71B7D79DAFD9F751B5
- D1FF00633B8BD17118686C753925F318611C3CD853E991B4E3AF3EF446B37271
- 7D2FF8581C15AE7B45CFC5FF000559E8569AD4FE27D322D26EE468A0BC6B8511
- 4AEBF7955BB918ABBE15F887E18F1C19D7C3FAF69FAC3C1CCA96770B2320EC48
- 07207BD7C6DE15B655F85DFB3C59FD923964BCD7EEE631DC83E5B9170C006183
- C1057B7415D1E836FA86B7A7FC54F899A7C36DE1BF14E9BA65CE88DE1FD2A3D8
- F66C982F2BB0C6E7C2E548007CBDCAD66B11276D3FAB5C6E9A3E8FD77E38F807
- C33AA49A76A5E2DD2AD6FA36DB2406E0168DBD1B19DA7D8E2A5D6BE33F817C39
- A949A7EA9E2BD2AC2FA20ACF6F3DCAABA8650CA48F75607E84571DFB35F83BC2
- 2BF05BC3971A7D8D8DEBDFD9A4D7F71246B23CB70C3F7A1D8E492AFB9707A018
- AF2436BAD5D7ED7BF118786F43D135D923B0B557875890A431A886DC654856F9
- B2318FAD5CAACD4632D35128C5B6BB1F56786FC51A478C34C5D4744D46DF54B1
- 66282E2D640E85875191E95A958BE0FB4B9B3F0ED9A5F69F63A5DF32EEB8B5D3
- 7FD4239EBB4E067B738ADAAEB57B6A64F70A2909C526EA621D45341A5CE68016
- 8A28A0028A28A0043504C78A998D5699F8352CA4665F3F06B94D59F83CD747A8
- 4A0035C8EAD36735C1599DF451CA6ACFF7AB92D4D861ABA5D525C93CFE15C96A
- 92F04F7AF12AB3DDA48E4B597C0635E6FE2AB968A7B62A7E6DE4835E89AADD22
- AB2B1C0279E33FE7BD79778AAE55AE611B8654312076E2B86476A29E9F756696
- 98BB505C901495CF0E0066FC3191EF5957BA82C9772F908A232C4AA8E38CF1FA
- 556B8B8263554E46DC649E9515B5F3DA5CA4E84ABA1CF071F5E6A063F509644B
- 59B7864CC6C57231EBCF35957B7B25C5ECF2311BCED3D38FBA2AF6B3A925DBDC
- CA5A42B22127CD604E7078CD624B701667E832A98CFF00BB40D1D16BFACDAC97
- 28F64D09888236A2ED201C75F917FA9AAD7B7A9733FEEE268543124375E79C7B
- 77FD2B0924000CB2E07239E95A775AF89558222A091104A0BEEDCCBFC43D3D3F
- 1340CADA85DBC97A189C1F25003F4007F4AD1D5BC4C97D690C691324D16D1B88
- CEEF9403D4F1C8381D0E7B62B1AEE50E6091082BB5813D7F88FF0088AABBC11C
- 9183C60D03355ADEF0DB2DCC90CA203C6FDA42FE759AD73279ACCAC438C1DC09
- CE6AECFAE3CDA65B59BB02B0B3156279C1C71598CE59B78FBA473ED4016F58D6
- 66D426131762C5543193E6390B83C9F53CD1599338F2C73DF3CD156B621EE7EC
- DD14515F747C18565789BC2DA478CF469F4AD6F4F8353D3E61F3C170BB94FA11
- E847623915AB452693D181E57A47ECC7F0EF47BFB5BB5D124BC366C1AD60BFBD
- 9EE61B7C74DB1C8E57D3A83D0576327C3CD025F1CC5E306B027C4515AFD892F3
- CE93E58724EDD9BB675279C679AE8E8A954E0B6453937BB393F883F0AFC31F14
- AD2CEDBC4DA69D461B394CD001712C251C8C6731B29E9EB597E1DF80DE09F0AC
- 3AA45A669771047A9DA3D8DD07D46E64DF0BFDE51BE43B4FFB4B823B1AF40A28
- 708B7CCD6A1CCED6B9CBDE7C32F0CEA1E034F065CE9693F869204B75B1791C80
- 8841501F76EC82010739E3AD5DF07783747F00786ED340D06D3EC3A4DA6FF26D
- FCC7936EE72EDF3392C72CC4F27BD6DD14F9527748577B1E61A57ECDBF0FF47D
- 76CF55834691E6B193CEB382E2F26960B67C83BA38D9CA8E4647181DB1815A7E
- 37F821E0EF883AAC5AAEADA511ABC4BB1351B3B892DA70BE85E3605B8C8E73C1
- AEF28A9F670B5AC87CD2DEE721E07F849E13F87305DC7A0E8F15ABDDFF00C7CC
- F2B34D34FECF2392C47278CE39E95C8CFF00B297C339EEA693FB06486DA6904B
- 2D8417D3C76AEE3A1312B85F4E071C74AF5DA2874E0D59A41CD2EE723A87C28F
- 0A6A571E199A6D1E356F0D36FD252091E24B53F2F44460A7EE2F0C0F4F735634
- 9F86FE1DD0FC53ACF88AC74FF2356D65556FE513485270A00198CB6C078EA141
- E4FA9CF4B9A322AB963BD8576795DC7ECC3F0EE5BF9AE61D1E6B18E77F327B3B
- 1BE9E0B694FBC48E171DB0001567C43FB387C3DF15788AF75DD4B43965D56F48
- 6B8B88B50B988C840007092003803A0AF4BDD499351ECA9FF2A1F34BB995E14F
- 0AE99E09D06D745D1E07B6D3ADB779514933CA5773163F3392C7962793FA56A9
- 3484D34B815A68B442DC7526EA85A5A6F99CF5A571D8B19A51CD5712548AF9A2
- E1627A2981A9D9AA245A43416A8D9F14003BE0550BA97683534B2ED15937B738
- 06B194AC6D0899FA95C601E6B8FD5AE3EF56D6A775D6B91D4EE09CF5AF2EB48F
- 528C0C4D465C96FEB5CAEA90BCB9DA466B7AF9C9278358B73B893F29FCABC99B
- B9ECD3470DAC786AF2EC10850E7D4D7253FC38D4AE2E49263452319DD5EB32AB
- 7A1FCAABB23127E53F957233A923C3753F841AD198883CB9A3ECDBC0FE66B264
- F83DE24278B65FC254FF001AFA17637F74FE546C6FEE9FCAA752AC7CEEBF073C
- 4593BACF23DA58F9FF00C7AAFC9F07B57B848BFD1E48A5C618B49195FD1ABDE7
- 637F74FE546C6FEE9FCA9582C7CEF71F077C41148CA962F30ECEB2C401FCDB35
- 10F841E23FFA0549FF008110FF00F155F46EC6FEE9FCA8D8DFDD3F951619F3DB
- FC2AF109B348468EFBD5890DF6A8BBFE3504FF00077C43184F2F4D798B282D99
- E25DA7D3EF735F45EC6FEE9FCA8D8DFDD3F951603E71FF008543E25500FF0064
- 06CF6FB4C7C7FE3D5249F0ABC4CF6EB18D0C295E770BA8B27FF1EAFA2B637F74
- FE546C6FEE9FCA8B01F355CFC1EF15CBB443A2F18C906E62EBFF007D515F4D5B
- A36F3F29E9E945689684B3FFD9}
- end
- object Image2: TImage
- Left = 12
- Top = 22
- Width = 98
- Height = 60
- Cursor = crHandPoint
- AutoSize = True
- Picture.Data = {
- 0A544A504547496D616765FE0E0000FFD8FFE000104A46494600010101004800
- 480000FFDB0043000302020302020303030304030304050805050404050A0707
- 06080C0A0C0C0B0A0B0B0D0E12100D0E110E0B0B1016101113141515150C0F17
- 1816141812141514FFDB00430103040405040509050509140D0B0D1414141414
- 1414141414141414141414141414141414141414141414141414141414141414
- 14141414141414141414141414FFC0001108003C006203012200021101031101
- FFC4001F0000010501010101010100000000000000000102030405060708090A
- 0BFFC400B5100002010303020403050504040000017D01020300041105122131
- 410613516107227114328191A1082342B1C11552D1F02433627282090A161718
- 191A25262728292A3435363738393A434445464748494A535455565758595A63
- 6465666768696A737475767778797A838485868788898A92939495969798999A
- A2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6
- D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F01000301
- 01010101010101010000000000000102030405060708090A0BFFC400B5110002
- 0102040403040705040400010277000102031104052131061241510761711322
- 328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728
- 292A35363738393A434445464748494A535455565758595A636465666768696A
- 737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7
- A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3
- E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F00F58F
- 8C1FB7F37C49F845F190781FE1C78A757F04E9FA7EA3A1FF00C279A7BC5E4C57
- 4D0346932C7B8379419E372EAC596360ECAB902B6BE03FED47A5FC05FD84FE12
- 6BBE24B7D67C55E20D77CCD3B4BD274C8CDD5F6A576D712848D79F6032493D00
- 0CC429F15F8657DF10BE027ECC5F167F673B8F83FE33F1278B9D757B4D3755D1
- 74E63A65D5A4F032FDA85C3633801CAA2A9673B2300392173BE20FECCBF10B5E
- FD927F664D7E0F08F886F2F7E1FDDDCCBAE78674F8E4B3D696DE5BA490BC0AD8
- 9164516E00D80B832A328C2922BA127D8DF0D7F6C083E267883C57F0FF00C49E
- 0DD77E19FC43D3B4893548F49D599185CDB6DC79B04E84062A48C8E31CE09DAF
- B7E75FD91FF6A33FB3F7FC13E2DFE2178A6DF53F166CF11CF65E58B9DD70DE64
- 802FCCF9E07A569FECC5F0E2CFC67F1635BF1CE8FF000BFE2668D65A66897161
- 69E26F88DAE49F6DBB778D94DB4766E8C4AEE773B84BB415E818EDAF06F15F81
- BC45F0FF00FE0936FA5789741D4BC3BAB9F18098D86AB6525ACE15A5F94F96E0
- 3608190693B0D1F6FE99FB795843F113C23A278ABE1D78A7C19E1AF194C96DE1
- CF146A912182F6572A22124684B4224DE9B4B723782C154332FCF1F0F7F683F1
- 87C36FDB2FF692B2D17C13E28F8A173F6A824B5D2B4CB80B059431EF32312E48
- 42DBD76AA292C4115B7E3D8FC5DFB61EB7F01FE1F4BF0DBC5DE00B6F0F5CA6B1
- E20F126ABA3B369F6D2DBDB7C90DACC24D93A4AE1903EE1C323618EE51E8DFB2
- A780FC4DE1CFDB27F699D6B55F0EEA9A668BABDCD9B69FA8DD59C90DBDE85F33
- 261760164C6E192A4E33EF43567661B947E37FED45E02F8E7FB056A5F11E4FF8
- 4B74AD026BDB6B5BCB3D02F22B4D52DEE12EA3531F9A43A6DCED6CE0EE465E14
- 92170BE25789AF62FDB5FF0064EB4D2B53D4E0D1EFB4099DAD66BA62664FB339
- 065C101DB006491C9AF0EF0E7C14F8871FFC12BBC5FE117F01788E1F14DC78A9
- 2E21D11B499D6FA5884D6C4C821D9BCAE15B9C630B5EF1E38F86DE2CBCFDAD7F
- 651D660F0CEB13691A2787DE1D4AFD2C66682C6436CCA127902E236C9030D839
- A6D6B60BE877BF14BF6EFD4BE1DDF78CAF2D3E0CF8B35BF067847503A6EADE25
- 0F1DB46251805A189FE69630DC171F2805492030AD6F8D1FB79F85BE11693F09
- 356B6F0CEBBE31D3FE244267D2D343895EEB18B728821620BC8FF694508083B8
- 115F0E7C47F007C52F88DA0FC5AD27E25FC3EF8B7E3AF89D26A174DE1D48BCEF
- F8452C6D1764BE6C255C46CFB629008943890F908AA64248F58BBF86BE33D461
- FD83248BC19E2203C32CF16B824D2AE11B4B2A6C909B9CA66104C6E417C060A7
- 0714AD7D02E7D39F03BF6C587E28FC55F11FC38F14781F56F86FE2FD22C46A82
- CB579A39167B4CA664122FCA08F310E013FC5CFCA71E19F19FFE0A0927C41F81
- BF14AFFC13F0CBC5DA8780BFB36FF45B5F1EC3B21885CBC4D124E21622458833
- AB6FFBC0632AAD903A2D57E13F88FC47FF00051EF18EA72E89AB5A785B53F87F
- 2694BE20FB1486CFCE708BB1652BB0B8193B320F07E87C37C107E29FC35FD8C3
- E227ECF375F053C65A9F8CA2FED1B6B4D4ECB4D32E91736D26659265BA240770
- A65D888ACCEDE52AE5998280647C2EF18F88E6F869E137935ED41DDB49B42CCF
- 3B1627C95C9249E4D15BDF0CBE09FC41B1F86FE15B6B8F04EBD04F0E956B1C91
- 4DA7C88E8C225055948041078208C8A290CFBCFF006997B9FF00855D0DBDB6A1
- 7DA635F788FC3FA7CB73A6DE4B693F933EB1670CAAB344E9226E8E47525581C3
- 1E6A13FB387855582FF6BF8EC64E307E20EBDCFD3FD33B54FF00B4AFFC93BD27
- FEC70F0B7FE9FAC2A9FED01E30F11F84345B59745BD1A4D84ECD15C6AA9671DC
- 3C1334912C2BFBC758D15B7481A493E55000CEE65CF2E2B111C2D19559EC8695
- CCBF11FC22F87BE128E11A8F893C751CF306F22D62F1D78826B89F6805BCB852
- EDA47DA082DB41C0E4E0035F287ED3567F0D7C67F083C79A71D5FC4ECD67A5CD
- 7F67697BE32BBD49D2E20432C6CFF6BB996D5D59D42910334A1461198C8E9174
- 57F796BACEB325BEABADCDA8DBDFA379B6E969F6D8DFCA39533BDAEA124F21CE
- D5532BBE0485536AA8AF3EF8C9A5783EC7E0E78B6F2DE0B3469344BA96DCC650
- CCA4C0C232631A9BB0390323CB3B7736E5C2E0FC054E23C555AF4E5452F66DA5
- AECF5EE69CB169C7AFC8F77F0D7C569FC4BA54779A1F8A6EEE2D611E4B2477B2
- 2B5BBA805A196332031C8B900C6CAAEA7A8ED5DCFC2BF166AD73E3DD2E1BCD66
- FAE2176903C13DDB3A36227FE12E73FC273C8E477C1AFCDED43E227D8AF6EB54
- D3FC63630DEDA01630EA365696769751053B96211CBAC24AF0A3F58E64688B03
- B91F62E7ECAFD943C47E24F1558697A9F88A5FB4995CFD87506B416B2EA16BF6
- 74FDFC902CF2286697CF0193E4608190142A6BF78A18FA18DC34E8CE928CD2E9
- 6FBCFCF6AE16BE13150AD1AADC5CB6BBFB8FBA1183A2B0E411914EA86CC96B48
- 0B72C5173CE7B54D5F22CFBC5AA392F8B9AE5F7867E14F8CB58D327FB36A5A7E
- 8D79776D39556F2E5481D91B0C0838201C118F5AF96FC1DFB55F8ABC45E06F86
- 76579A88B0F1B4FE2ED2B4FD66336D16FBFD32E91A449D536E156443182C9B48
- 2323686507E95F881F0F75AF1D2F88AC3FE1296B2F0EEAFE1DB9D1BFB2858238
- 8AE65DC3ED9E6E439C236DF2B214F5CE6BCF35FF00D91F4CD76F7E126A7FDB4F
- 6FACF8092C207BB4B6DC35286D4AB2A3297FDDFCCAC41CB11E6303BB835D74A5
- 4546D516BFF00C2A2A8E57833CAAC7E38788758F1CF8DB4FD57E31EA1E137B0F
- 145EE95A7E996BE124BF4FB3C726232D32C0DCF3B7E66CFCB9279AF4DFDA01BE
- 257873C57E17B9F0E7C459B48D23C45AEDA68A34E5D22D661641E272D207742C
- E498C9C1231BB1D2AD693FB3FF008FBC21AC78AAE3C2DF14ADB47B0D7F5ABBD6
- E4B49BC351DCB452CE7950E6619002A0CE39C138E6BD0FC77F0D66F1E45E0A37
- 5AA882E7C3BACDB6B324AB6C08BA78A3910A6DDDF206F309CE4E31D0F5A994A0
- A778DADE9FF00718CB96CF732A0F877F10A386347F8AD752BAA80D21D0ECC163
- DCE02E28AF4FA2B98DCF2AFDA5BFE49D693FF637F85FFF004FD615B7F17E0593
- E1578C997396D1EF3A1DA7FD43F427A1EBD78AE17F6DBBAB9D3FF66CF12DFD8D
- D49657F6377A65EDADCC4A8CD14D16A36D246C03AB29C3229C1523DABE2EB9FD
- A3BC59AFFC38D6A7D73E326B6D1C967245358CB67A1C02E370D862DD25B2AA82
- 6450493C678EF8E98E02AE2B0F52AD36AD1DEEEDFF000E7156C5D3C3D48C26AE
- DEC7D45E33D2D755F88BAE295202D85B0C904120DC5DE3079208C6015CE3038C
- E057887ED39A6487F643BBB7B646966497536221C2E151B51666C860A0001C91
- 93DF00F0B5E37E1FFDA9AEE7F19F885B5FF8B7ADD959CF6D0C50CEB1F8665697
- 6B4CCC2411875E4CBC6C1D378663F28AE63C5BF1C0F89B4CD27C35AB78F75A9F
- C2D7B2DD3DFC73DEF86A5648E7F3F0C0C2C5D5BFD209756E4658000852BF08B0
- 2BEA387C3549ABD39F33DEC95F6D8F2BD9BA78BAD8A82779452F2D1F42DE8B65
- 1E87F067E20A2848FCC31CE4921372F94C371064527E5503764E001865CE6BEF
- 6F0513FF0009169F970E4B1C912139F90E490246078EA4E49C6322BF3FFC57F1
- 7FC30BE0FF0015E9FA3496ED0DF794B0CB16B564A0BEC6E591AF926382E3E70A
- 0707016BEEDF837E35D33E205BF87BC45A55D2CFA7EA1199D0FDA11CC7946DC8
- FB6570194E558027041E7BD7E9B964E94F138B9C5A6A4AEBD2C7CC631577F559
- D44E2DB775E6D9F5458926CADF2727CB5C9249EDEF53D4162316506460F96BC7
- E153D788F73F485B0514514861451450014514500783FEDCB8FF00865CF1A64E
- 07FA173FF6FB057E441D36587C40BAB69FA9DCE9B7C20580C96C226CA824E0EF
- 56F5FA703D057EF06B9A169BE25D2E7D3757D3ED755D3A7C79B697B0ACD14982
- 186E46041C100F23A815E41E30F80BF0E4DD208FC0FE1FB6FF00AE1A6409FC93
- DEBD8C1E269C29BA1561CC9BB9E563284A7255612B5B43F367C01AFF00DB5960
- BDF1FF0089AC651F29108D3957248FBBBADCE39553D3F810FF0002E3DB3C39E1
- 0D3A68131E3CD76EE40415919EC8328DAA005D9100A46C8F040C8D91E0FEED31
- F4B49FB3FF00C3EC063E12D21B9C60D8C3FF00C4D5FB4F83DE10B623ECFA1595
- BE071E55BA2E3FF1DAF59D5CAAA4396AE13EE67CFD7C1E2EBAFE3687CEE9F0EE
- C02204F17EBA8AB82AA8F6A8108C63680A00C6C4C7A6C4C7DC4DBDCFC05F0D69
- BE04F101B0D3AFAE6ED2FEF65D418DD3444A48601195411ED50B88F71017E667
- 278AF59FF8573E1F889DBA7C40FAED1FE15A3E1FF06E93A76A26E2DECE38A78F
- 76D9154647CBFF00D73510AD96D252F6141C5B4D6E7152CAF14E4A6EADECD77E
- E7B0D8E7EC56F9E0F96BFCAA7A8AD062D61E73F20E4FD2A5AF943F42B5B40A28
- A2800A28A2800A28A2803FFFD9}
- OnClick = Image2Click
- end
- object lblVersao: TLabel
- Left = 395
- Top = 81
- Width = 72
- Height = 23
- Alignment = taRightJustify
- Anchors = [akTop, akRight]
- Caption = 'Version'
- Color = clWhite
- Font.Charset = ANSI_CHARSET
- Font.Color = 6435072
- Font.Height = -19
- Font.Name = 'Verdana'
- Font.Style = []
- ParentColor = False
- ParentFont = False
- Transparent = True
- Layout = tlCenter
- end
- end
- object Panel2: TPanel
- Left = 0
- Top = 109
- Width = 474
- Height = 105
- BevelOuter = bvNone
- Color = clWhite
- TabOrder = 1
- object Label2: TLabel
- Left = 8
- Top = 8
- Width = 109
- Height = 13
- Caption = 'Desenvolvido por :'
- Font.Charset = ANSI_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Verdana'
- Font.Style = []
- ParentFont = False
- end
- object Label3: TLabel
- Left = 136
- Top = 32
- Width = 37
- Height = 13
- Caption = '( QmD )'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Label8: TLabel
- Left = 168
- Top = 56
- Width = 68
- Height = 13
- Caption = 'icq: 15630894'
- end
- object Label4: TLabel
- Left = 16
- Top = 56
- Width = 143
- Height = 13
- Cursor = crHandPoint
- Caption = 'qmd@usercontrol.com.br'
- Font.Charset = ANSI_CHARSET
- Font.Color = clBlue
- Font.Height = -11
- Font.Name = 'Verdana'
- Font.Style = [fsUnderline]
- ParentFont = False
- OnClick = Label4Click
- end
- object Label5: TLabel
- Left = 16
- Top = 84
- Width = 82
- Height = 13
- Cursor = crHandPoint
- Caption = 'Canal #Delphi'
- Font.Charset = ANSI_CHARSET
- Font.Color = 21248
- Font.Height = -11
- Font.Name = 'Verdana'
- Font.Style = []
- ParentFont = False
- OnClick = Image2Click
- end
- object Label11: TLabel
- Left = 104
- Top = 84
- Width = 84
- Height = 13
- Cursor = crHandPoint
- Caption = 'irc.brasnet.org'
- Font.Charset = ANSI_CHARSET
- Font.Color = clGray
- Font.Height = -11
- Font.Name = 'Verdana'
- Font.Style = [fsItalic]
- ParentFont = False
- end
- object Label1: TLabel
- Left = 16
- Top = 32
- Width = 108
- Height = 13
- Caption = 'Rodrigo Alves Cordeiro'
- end
- object Image3: TImage
- Left = 424
- Top = 56
- Width = 30
- Height = 16
- Cursor = crHandPoint
- AutoSize = True
- Picture.Data = {
- 0A544A504547496D61676502040000FFD8FFE000104A46494600010101004800
- 480000FFDB0043000302020302020303030304030304050805050404050A0707
- 06080C0A0C0C0B0A0B0B0D0E12100D0E110E0B0B1016101113141515150C0F17
- 1816141812141514FFDB00430103040405040509050509140D0B0D1414141414
- 1414141414141414141414141414141414141414141414141414141414141414
- 14141414141414141414141414FFC00011080010001E03012200021101031101
- FFC4001F0000010501010101010100000000000000000102030405060708090A
- 0BFFC400B5100002010303020403050504040000017D01020300041105122131
- 410613516107227114328191A1082342B1C11552D1F02433627282090A161718
- 191A25262728292A3435363738393A434445464748494A535455565758595A63
- 6465666768696A737475767778797A838485868788898A92939495969798999A
- A2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6
- D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F01000301
- 01010101010101010000000000000102030405060708090A0BFFC400B5110002
- 0102040403040705040400010277000102031104052131061241510761711322
- 328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728
- 292A35363738393A434445464748494A535455565758595A636465666768696A
- 737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7
- A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3
- E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F00EC22
- F12FC42F16F88A4B2D0D5AE56355DF2150B1C63FDA63C0FA753DB3567C57F193
- 5DF84FE289BC3561A769FE33D7D2DD659E5D4B52B6B445C8DC2386DD9B7C8D8C
- 60E7249C2A9AF21D3BF6BCB2F873E23BA8F4ED563B8B266FDED9CE85A22D800B
- 0C1043600E41F4C835E77F1CBC5FE10F8C3E3DBBF16F877C4769692DEA45F68D
- 3B5589A2963748C47942AACAEA4203C9041ED5F8EF0BE1DE3388254B889B8E0B
- 924E2EF51273BC6CA6E0E2D2B7335AA8B764DBD11F3B4146182F6B85E6788E65
- 7524ACA3AFC09DD3E9BEBD92DCFA7BC1BF10FC45F1B6C7C4571E1FB69BC39E23
- D12758AFBC3F7243C6598B00639485DBCA499461C63AF35F3CFED1BF117C69A7
- C96561A94F3595CC3236E85D0A10707F3FAD747F07FF00695F0CFC06F056A3A6
- 0F11AF88F589D93ECD0A23C96968A32482EDB5893B8FCAA368C0E72493E2BF1F
- 7E3643F15351B5BFB8D45EFEE9723EE61634E48551D00E4FE75857C3E2171262
- 6860A2E597A6BD9B939B7F02BD9CB571E6BD9CAEFB4A4ACCAC452A32A54653BF
- B777E7492E4DDDAFD13B5B45A79267FFD9}
- OnClick = Image3Click
- end
- object Label12: TLabel
- Left = 408
- Top = 80
- Width = 59
- Height = 13
- Cursor = crHandPoint
- Caption = 'Curitiba - PR'
- OnClick = Image3Click
- end
- end
- object Panel3: TPanel
- Left = 0
- Top = 217
- Width = 474
- Height = 299
- BevelOuter = bvNone
- TabOrder = 2
- object Label9: TLabel
- Left = 6
- Top = 9
- Width = 163
- Height = 13
- Caption = 'Cr'#233'ditos e agradecimentos :'
- Font.Charset = ANSI_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Verdana'
- Font.Style = []
- ParentFont = False
- end
- object Label6: TLabel
- Left = 77
- Top = 271
- Width = 154
- Height = 13
- Cursor = crHandPoint
- Caption = 'http://www.usercontrol.net'
- Font.Charset = ANSI_CHARSET
- Font.Color = clBlue
- Font.Height = -11
- Font.Name = 'Verdana'
- Font.Style = []
- ParentFont = False
- OnClick = Label6Click
- end
- object Label7: TLabel
- Left = 6
- Top = 271
- Width = 68
- Height = 13
- Caption = 'Site oficial :'
- Font.Charset = ANSI_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Verdana'
- Font.Style = []
- ParentFont = False
- end
- object MemoAgrd: TMemo
- Left = 6
- Top = 24
- Width = 463
- Height = 228
- Ctl3D = False
- Font.Charset = ANSI_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Verdana'
- Font.Style = []
- Lines.Strings = (
- 'Alexandre Oliveira Campioni - alexandre.rural@netsite.com.br'
- 'Bernard Grandmougin'
- 'Carlos Guerra'
- 'Daniel Wszelaki'
- 'Everton Ramos [BS2 Internet]'
- 'Francisco Due'#241'as - fduenas@flashmail.com'
- 'Germ'#225'n H. Cravero'
- 'Luciano Almeida Pimenta [ClubeDelphi.net]'
- 'Luiz Benevenuto - luiz@siffra.com'
- 'Luiz Fernando Severnini'
- 'Peter van Mierlo'
- 'Rodolfo Ferezin Moreira - rodolfo.fm@bol.com.br'
- 'Rodrigo Palhano (WertherOO)'
- 'Ronald Marconi '
- 'Sergiy Sekela (Dr.Web)'
- 'Stefan Nawrath'
- 'Vicente Barros Leonel [ Fknyght ]')
- ParentCtl3D = False
- ParentFont = False
- ReadOnly = True
- TabOrder = 1
- end
- object BitBtn1: TBitBtn
- Left = 395
- Top = 264
- Width = 75
- Height = 25
- TabOrder = 0
- Kind = bkOK
- end
- end
- end
- end
-end
diff --git a/internal/2.31RC1/1/Source/UCAbout.pas b/internal/2.31RC1/1/Source/UCAbout.pas
deleted file mode 100644
index 5c99bb4..0000000
--- a/internal/2.31RC1/1/Source/UCAbout.pas
+++ /dev/null
@@ -1,115 +0,0 @@
-unit UCAbout;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- Messages,
- Buttons,
- Classes,
- Controls,
- ExtCtrls,
- Forms,
- jpeg,
- StdCtrls;
-
-type
- TAboutForm = class(TForm)
- Panel1: TPanel;
- Image1: TImage;
- Image2: TImage;
- lblVersao: TLabel;
- Panel2: TPanel;
- Label2: TLabel;
- Label3: TLabel;
- Label8: TLabel;
- Label4: TLabel;
- Label5: TLabel;
- Label11: TLabel;
- Panel3: TPanel;
- Label9: TLabel;
- Label6: TLabel;
- Label7: TLabel;
- MemoAgrd: TMemo;
- Label1: TLabel;
- Image3: TImage;
- Label12: TLabel;
- BitBtn1: TBitBtn;
- pnlFundo: TPanel;
- pnlComponentes: TPanel;
- Image4: TImage;
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
- procedure Label4Click(Sender: TObject);
- procedure Label6Click(Sender: TObject);
- procedure Image2Click(Sender: TObject);
- procedure Image3Click(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure FormShow(Sender: TObject);
- private
- procedure WMNChitTest(var M: TWMNchitTest);message WM_NCHITTEST;
- { Private declarations }
- public
- { Public declarations }
- end;
-
-{
-var
- AboutForm: TAboutForm;
-}
-
-implementation
-
-uses
- ShellAPI,
- UCBase,
- Windows;
-
-{$R *.dfm}
-
-procedure TAboutForm.FormClose(Sender: TObject; var Action: TCloseAction);
-begin
- Action := caFree;
-end;
-
-procedure TAboutForm.Label4Click(Sender: TObject);
-begin
- //ShellExecute(0, 'open', 'mailto:qmd@usercontrol.com.br', '', '', SW_SHOW);
-end;
-
-procedure TAboutForm.Label6Click(Sender: TObject);
-begin
- //ShellExecute(0, 'open', 'http://www.usercontrol.net', '', '', SW_SHOW);
-end;
-
-procedure TAboutForm.Image2Click(Sender: TObject);
-begin
- //ShellExecute(0, 'open', 'http://delphiland.dyns.cx', nil, nil, SW_SHOW);
-end;
-
-procedure TAboutForm.Image3Click(Sender: TObject);
-begin
- //ShellExecute(0, 'open', 'http://www.curitiba.pr.gov.br/', nil, nil, SW_SHOW);
-end;
-
-procedure TAboutForm.FormCreate(Sender: TObject);
-begin
- Self.BorderStyle := bsNone;
- lblVersao.Caption := 'Versão ' + UCVersion;
-end;
-
-procedure TAboutForm.FormShow(Sender: TObject);
-begin
-// pnlComponentes.Top := Round((pnlFundo.Height - pnlComponentes.Height) / 2);
-// pnlComponentes.Left := Round((pnlFundo.Width - pnlComponentes.Width) / 2);
-end;
-
-procedure TAboutForm.WMNChitTest(var M: TWMNchitTest);
-begin
- inherited;
- if M.result = htclient then
- M.result := htCaption;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/UCAboutXpStyle_U.dfm b/internal/2.31RC1/1/Source/UCAboutXpStyle_U.dfm
deleted file mode 100644
index 966218a..0000000
--- a/internal/2.31RC1/1/Source/UCAboutXpStyle_U.dfm
+++ /dev/null
@@ -1,768 +0,0 @@
-object UCAboutXpStyle: TUCAboutXpStyle
- Left = 245
- Top = 225
- BorderStyle = bsDialog
- Caption = 'About TUCXpStyle'
- ClientHeight = 315
- ClientWidth = 510
- Color = clGray
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- OldCreateOrder = False
- Position = poDesktopCenter
- PixelsPerInch = 96
- TextHeight = 13
- object Image1: TImage
- Left = -1
- Top = 0
- Width = 510
- Height = 151
- AutoSize = True
- Picture.Data = {
- 0A544A504547496D616765F54C0000FFD8FFE000104A46494600010101006000
- 600000FFDB0043000302020302020303030304030304050805050404050A0707
- 06080C0A0C0C0B0A0B0B0D0E12100D0E110E0B0B1016101113141515150C0F17
- 1816141812141514FFDB00430103040405040509050509140D0B0D1414141414
- 1414141414141414141414141414141414141414141414141414141414141414
- 14141414141414141414141414FFC0001108009701FE03012200021101031101
- FFC4001E000100020301010101010000000000000000070805060904030A0201
- FFC4006A10000103030204020505080610110C03000102030400051106120708
- 21311341091422325115617181911618234254A1B1C138A2B2B3B4D117333637
- 4352556272737475769293D2192425262734355364848594A3A4C2C3E1283946
- 476365828395B5C4F0D3E2F1FFC4001B01000203010101000000000000000000
- 000003010204050607FFC4002F11000202010302050305000203000000000001
- 021103041221053113223241513361D1141571A1C12353424381FFDA000C0301
- 0002110311003F00E9738E2196D4B716942123254A380056264EB2B0C26FC491
- 7AB7C74633B9E928401F69AF5DE5D0C5A65B8AF752DA89E80F97C0D561E235FA
- 3A19214CB0A013B49F0539CF7AE5CA51846DF73AB8F1BC8E913B4AE3670F6115
- 7AC6B9D3AC6DEFE25D184E3ED55798F1FF008623BF10F4BFFF00588FFE7D5174
- DA205F6F9E2FA9C6280A395A994F4E9FD8D652E3656448663A2D709008202FC1
- 6FE1FD857267D4B163E25DCEDE3E94F246D32EB7F27DE191008E21E9639E9D2F
- 11FF00CFA238F7C3471CD89E2069852F3B768BBB19CFF8F54E34FE92B6352521
- C87094E673D5A6C63ED456957DD4D618F26732CDBA0ADE123C341532DABDACFC
- 366690BAA29729705FF6895D597FFF0093B70E338FBBCD39DF6FFBA8CE33FE35
- 15C76E1C2319D7BA6C67B7FAAAC75FDB55129F668B6F8B1643916DE1A7901650
- DC64A55BBE19DBD2B2AC3365D5B692C376F61A92C607BA91D73F1F0E96FAB457
- B0FF00D91FCB2EEB5C6BE1F3E406F5B69F709EC137264FFDAAFBB7C5CD10EA82
- 51ABAC8B51380133DA3FF6AA8459AD6B5CB7633B1A3A10DAB614A425473FE27E
- BA99B41F0E60458C64AE3B2E3A06E095B68C7E8A44FAD6D7492172E8FB5D5967
- C71034C28029D416C502768299683D7EA35FD7DDDE9CF2BE5BCFD12507F5D562
- B8C88D69BAAD8716DB51969CA709091BBCFF0017A563634C8525C5A187512413
- D46E49FCC40CD57F7A6FB240BA3DFB96D11AC6C4E0CA6ED0D43E67926BFD6F57
- D91DCEDBAC538FFDA8155A6D96F5BECF8AC846D1FD0D4D006B60B3E9BD892EBC
- 184ACF64A9BC83F652A5D724A554BFBFC959F4A8C78B764F4753DA4027E528C4
- 0F30E835FE7DD45A3FAA51B1F1F105549E33EBA8F60868B4DA0B4BB83982B759
- 4E437839FD58FAEBC9C24E27196DBD0EF31824A13B9525491848F2FA727A7D74
- E7D626D5C52FEFF2443A4EE8DB6CB83F75367FEAA44FF2C9FE3AF92B59D852B0
- 937885B8F978E9CFE9A8463AADD7C64B915C5141F34242143F58FB2B0726D2EC
- 175C54656F5792DC73247ED6B37EFB91774BFBFC911E957EE586775DE9C61652
- E5F6DE850EE152503F5D7C871134B904FDD0DB7A7FC291FC755851A6E3DE1F58
- 9EA5A64FE3786B391FB5C57B9BD096FB7462F02EF5F74B8B041FA462A575E7EE
- 97F7F918BA3DFB96355C4BD26804AB51DB001E66523F8EBFDFE495A4CA41FBA4
- B5907FE168FE3AAC31EC51D9716B90DA568CF61839FDAD6B770532DDCA5210DE
- F69006D6B03AFD7B6991EB97EC86AE8A9FBB2E08E25E93270351DB3FE748FE3A
- 0E25E933FF00A476CFF9D23F8EA8ECE8724C80E368F0D39F733FFF005AF43B18
- 21090B52724754E707F73575D6EDD522FF00B1C6AF732F0C5D7DA6A6AC263DFA
- DCF28F64A24A09FD35916AF76F7D7B1A9AC38AF821C06B9FECDF9EB5CA546491
- BC00BF0FCC8CFD18FCF52568BE27ADB948695B4277241F670475F8D7574FD423
- 99D1CBD4F4E783B170B70DC13E66BFDAC5E9EB80B94469C42F202015271594AE
- C3AF6389CFB8AAF3CCDF3B3A2396C5C7B3BCD49D57AE26FB30B4C5A0853E54A0
- 7C32F2BAF84952B6A47452CEECA50A00E242E61B8BB1780FC17D59AEA5A03DF2
- 4432B61950514BD216436C3676F5014EAD0927C8127CAB983E8E9B34BE38F1BF
- 5BF10B544A7AFBAB58530512E504AB0B925DDEE818F65494B2109DB84A52A500
- 318C3611B56CA4A4D3A458AB87359CDADEE4C3B958381DA7AD36390DA5C106F5
- 7342A6804E4856E90C96CE3036A9A0410723C8677417A4C2D96CD64DE8FE34E8
- B9FC2BBDAC27C39CE3864C1741253E21504828415020293BD1D0E56306ADCDAB
- 435AEDD1D285B097DCEEA52C773518F329CA9E95E61787770B0CC8CDC4B906D4
- BB74F08DCA89236E12B1D412338CA73ED0C8E9DC4DC5F0D11525CD9F0639D0E1
- BDCB980B1F08AD32E4DF2FB7688263574B7782EDB5B498EB9294A9EF1324A9A4
- 2540A12A49F111D7A9C4EF5C1CE4E74E5C742F3B5A72C1734F8174B4DC2E3024
- A10AC843ADC79085804771B927AD7772092614724E496D3D7EAA89C547B13093
- 9773EF4A5292305294A8014A528014A528014A528014A528014A528014A52801
- 4A528014A528014A528014A528014A528014A528014A52A40C06BE9420E88BF4
- 927686613CE67E184135456F3A8A45E9294A944E427775ECAC76FCE2AEDF174A
- 870BF5484F552ADCFA40F89282055046E4FABB016BE8A24287CE0A40FD46B87D
- 432CA12DABE0F45D330A9C1CBEFF008363D3D6C5379DC8C255D4AAB292105525
- AC273B54304F4AC7596F01684A428249E80D643504B8F63B248B94A7C283693B
- 5BC1F695E5F9EBCDA4E72ED6CF53CE38F0423C52D633CEAA94CC77D715B8FECE
- 5B3DCD66B86ECC2976EDEF2A0BCEE7D616E3C83E20FAF1519CA71ED65A8F6B08
- 5788FE54A48EFE67F40ACD9B3DC6C501515511E8E5E3B52EA8E06D1D7F557665
- 0C7186D6B9150C9293E495AE136DD7E69F93EB43C409D8D3683EC835F7D22A8F
- 02F315B65C0E2D6D1DE8FEBB06A0F4F8D6C4A521E586F3EF673D6B60D352661B
- B09515F52D4C9DCAF2C0F3EFF366B93934D149C91D14DB4582B459D8877F75E7
- 46E69C0167033ED549D1AECEBE8D90E394242701407CD5A3D8E47CA91A0BAD37
- E1A1C4654AEE55D3E1DEB3D7176E08B4BD1E23A88CE280C3CB38090082AEBF46
- 457127EAA664CA9B9A56642668F87AB6D2B44E0ACA8F5711F8BD73DFCAA37BE7
- 09665910F3B67F582A410A4A93ED63A8ACDE9BBB7C88EACC490A929DE80E23C4
- 2B42C9501DBEBCD4AEECC75B92E3214B6C2D093840C63EDAB37E1F090A92941D
- 27C118692E233B6AB53CD6A080B624B40203D903C539C0FA3AFC6BEB7DE26DC5
- EB67ABC1692C2923F0AE9EA5093F38E9D7B7D7595D53A75B97252DBE12B6DC23
- 25CC7D23B57F08D090EDB6E9E979D2A664B44123DD49C647E7C509C65CC91A61
- 1C6D6E6F923DD37A1AD3ADA4BBE24B79B928214EE1585AC13D719ACF46D1D078
- 7D73F9454DBF3ED2973608CB2327C8124F4E8483F557F4F59CE9FB3D96F30B08
- BA297EAEE20F675B07DEAF67132E4F46D24B9697521C4A90B085F441F686720D
- 31F9DD2EC2E772957646C568E2B5AAF3735C18B1D36F58C270BDA9F13E615B05
- D4088E34F2FD92AEC93E67155DF40CB99A875EDBAE122032E30959DAFA127674
- 49CD4F3799CEDDDF71A1B5B61046C2E7551FEC7E1F5D2B263D8E8A4F1A849462
- CF4BF3E2C58C1F6D285C83EF253D7BF4AC14EBBC99C5D63C3D8063667AF9FC2B
- 0B263A92F80DBBEA8D15ED538B574C8AF72E4A3D7938783AB40CE5A3DFA521C7
- E50F58AA3767D5A8373536579429903AA36E09F877A5B74E371E33B224379794
- 7A823B75ACAB17495290DA83ADA5A1FD0CA7DB557FB72B9AC3186FDB4F4DC318
- 3DEA8DEDE12149BF935CBBC76D8F690D25381DEB587ED91653A875F5F86A27D9
- 3D71F3FE6AD8A715C8960281013D5408AC7CE8C62A5C71080E38EF40850C84D5
- E0EDF61D16DAAB347D496E4A64267B237141DBF4A7B5601529F4294FB0A294EE
- 49C8E9D8835BC5DADAE18BE1B89521D3D7C30462B013EDA96ADAB4A127784924
- 63E6AEC69DB8E44D19B3C13C6D32E1701F52FDD0E978EBDDB949484A8E0F90A9
- 3EA03E529E53BA29A2AF7B7A81FB0D4F95F4387314CF9D64E26D1493D2ED7F97
- 66E5621448CA0966EBA8A243920E7AB61A7DE0075FE9D9477CF6FAEB9C7C9573
- 38E72C9C5B62E935B54AD2B71D91EEF1DB46E70201250EB7D47B4824F4EC52A5
- 8C64823AD3E90AE1C4BE267297AE215BD90FDC6DECB776650491911DC4B8EE00
- 0727C20EE0799C7D35C15ED5BF1D38D18B25A959FA61D25AB2D1AEB4DDBAFF00
- 61B83174B3DC194BF1A5C756E43883D88FD047704107A8ACBD700395BE7275DF
- 2AD7970D85E45D34D4B792ECFD3D3947D5DE3D0296D91D5A74A46378C8384EE4
- AC240AEC8F2D5CDFF0F79A0B378BA66E061DF996CB9334F5C0A5136380424AC2
- 4121C6F253EDA491EDA42B6A8ED09941C47466A4571E2EF2C9A8ACFE908D3DC5
- 5B4598AF474D8BE2DCEE2990D252CCC319E8FB4365616720304909232B273DF1
- 7D607FB463FF006B4FE8A4A84C4E40448692EA41DC028763507733BCDA59B952
- 836A9DA8F4C5EAE7679EB11D99D6C5475243D8512D14ADD4AF2128CE71B7A8EB
- 9C810DB95225251B64F14AA4FC3EF4AAF0F389DAF34D693B3696D48C5C6F5706
- 6087AE098EDB2C85AB0564A5D51381D718ABACDB89750168214923208AAB8B5D
- CB269F63FAA5294B245294A9014A52A005294A005294A9014A52A005294A9014
- A528014A528014A52A005294A005294A00533D71E75E6B95C63DA2DD2A74B752
- C448CD29E79D59C2508482544FCC0035CC2D6DE98FBA41E253ACE9BD136F97A2
- 633CA68AE73CE2674A4838F112A49D8DE7A9DA52BF2EA29AA2E5D8AB928F73A8
- D4AD3F847C53B271A387B66D61A7DD52EDB73603C843980B6CFE321401385039
- 07E8ADC2AB5458D5F8A08F17879A8118CE61B831F55506B9B498D150A2839421
- 00EE49C66AFF00F11491A1AF653DFD5578FB2A8FDFA72E5C4530E3284A425009
- C8F85797EA726B2A5F6FF59EC7A1F38DA7F3FE23496F50AE3BC84B696FBFE28C
- 1AD3788FACA55C18303C5213B8A9601EC3BD66AED67762179F6CA94002AE9E55
- 18C97C4A97BD6A25D51DA5241EC4E3F5D65D142E7B8EEE67CD1BAF082D0CCDD5
- 487CAD4831D9F13281D76E3A9ADBB8D97A61EBAC1619756A6D0D6E08EC14318C
- 9AC6704A422D37B9C879A0ADE9F0867E158CE2ABC976FD25686D450DA7C30AC1
- C0EB56CF52CFC0AC78D7734B952965A6CE7F07BBAA6B6AD117443321F56DC851
- 4A7183D8900D69689252868ED2AEBDB15B169E7DAF5D254141AFC6083839F2FC
- F8AD538258CDB1EC59BE12DC5BBA3B2E329636C5E890839C03D056F1334F9996
- F9B0C3AB0EBE92105CEA9FCD508E81873AD739BB95B66B4C3EE6416CA0942860
- E428799C671F3E2A4699C50865BF010DBD1AE2DA76A5851CA94A3D329C7D35E5
- B3636F25AEC67C89B9AA350976F89A0F5E438D2E629D891D80E3C86158255FF8
- 77FAAA6E8DAC6CF7A6FD6203C5C3E1A7A295920640AAD9AB6DD2A2DE9B7A5BA0
- C998129587BA9482467AF6ED598D28E2F4BCF90B8F95425128539B4E074E9D7E
- 9C52B24177343C4A51B65925D9A3C94B6F78CDAD4A1D947A0AC56A3B00930DB8
- ED3AA703609C21584AAB45D3FF0029CB5154590A74AB0A1B81DA067E7A926DF6
- A2194C85A96EBED8F6920E13D7A79F7EF5CF9368E6497872E089EFBA52F4D371
- 489676A5794A4F66FF00FDED512F10F51DE27DD16C3CE789158F60A3F157F1FC
- DD6ACAF126E6AB7E9E79F61D687868EA85903AF61DEAB55A34FDC3883A83D59C
- 7C223303C678B293920F4EFF005D74F49CC6CD78E52C91B245E0BEA3876DB74C
- 80E7868525A0EB0D8503B727AFDBF0AD9F517146DD6CB4253B10673990907B8F
- A4797D75156A6D00BD0B716E6D9964B6FA3C35B6B3ED363E3F4D78D16599227D
- BE3BD8971E42FDEC12FF00C7DA3E63E8AD3979E467876ED9B1DCB532E021A71C
- F1DF75F4788851FE56927E20D7F568E21DBECF15722E4F2D4EEEC165381D6B2C
- FDB576D7150A486DF75253E0B4B4E709C839FABBFD550E6A4D1D77BAEA7BD214
- 96D3EAE03CB08411B904E011F59149C58B1E54DE47436B8A2CDE8ABB2350DADE
- BBC771B5E07B083DD23FFF002B231A5BD25E03D5B2544E17E5DAA02E1A710646
- 8AB7A218693323A95B5C03A11F6D4C07513B74F01D8CBF05858C8420E0938F8D
- 62CB81C65C7633CA0D3E0CA5E47AB4553AE101EF36D2327BFCD5AE35AA524A90
- 5290A4F62A159B8E82E36B4AD41D4FE31CFB63E18AC24C8ECC4F18A90D023CDC
- 193F6D2A0A99314D2E4F3C5B8B5789EE9791D53D96074AC6EA95B486DE01012A
- 4B6A3803BF4358E8D2DA89752DA1C56C7D5D0A4109E9D7F556735134D9B64A59
- C1CB0AC2BEAAEAE17FF2242B3FA192FF002909F1347B6B07185A958F9B06AC0D
- 57DE51891A45B03DDEB560ABE8F15508FF0007CE327D491FCB8DA5D6D485A429
- 0A182923208AE24F3F3C92DCB97BD633B5469A86ECAE1DDC9F2EB6A6D19F92DC
- 5ABF942F1D9BC9C2147E64925401576E2B17A974CDB357D925DA6F1099B85BA5
- B6A65E8F21B0B438850C292A4904104120823041A7425B5889C7723F33759AD1
- BACEF9C3DD4F6ED45A6EE722CF7BB7BA1E8D362AF6ADB56307E9041208390412
- 08209157DF9BDF460DC74C3F3B5470ADB336DC478AEE9D272E37D7DA31D64FB4
- 3183E1ABAF43B4AB2948E7A4C86FDBE5BD16532E4692CACB6EB2EA4A56850382
- 9503D41046306B626A4B831B4D773BBDC8EF37B0B9A9E1CADC9C86A06B5B3EC6
- 6EF09BE887090763ED0C93B1783D0F54A92A1D4614A83BD32BFCE57447F7FCFF
- 000772A84F22DC5999C20E66B475C1871C10EE9253669AD231875A90A4A13BB3
- E4973C273A7FBDD5F1F4C5C84CAE06E83791EEB97DDC3EB8EE5276ED9AA1FBB7
- 419CE0E58094F30DC3D20E0FCB51BF762BF43763FF0072227F6B15F9DCE5C6E0
- C5AB8F1A0E64A70351D9BBC75AD4AF20162BA1BCDE73DDC66E09BF668563D14D
- E92B2CAC98576BC78525D9C94A46EFC1A16435EF24E15857C40EA2A7245C9D22
- B8E4A2B93A494AA53C897A4097CCA5D24E8FD596E62D7AB634612599114E199A
- 804256769F7140A93ECE4E41E9D8D59CE35718F4F701B87574D65A99E5B76D82
- 90036D0CB8F38A3843681F151E959DC5A7468524D59BD52AAC72DBCCFDD39B5D
- 2B7DBE5AE4A7454589735408B1186D12E5A9094B6E171DDE0A46E4ACA4003A14
- 9393DAA07E237A46F5CF2CDC6EBC684D736881AC6DB0DD42D17185FE9593EAEE
- 00B465006DDE12A008E9D7AD4A836E88DEBB9D1FA5687C15E35696E3E68283AB
- 349CEF5BB7C8CA56D2C6D763B83DE6DC4F9281FA8F7190735E8E2F717B4CF03B
- 42CFD5BAB277A8DA6200094A7738E2CF44A109FC6513D8556B92D6AACDD295CF
- 8E0FFA46AFBCCBF1A62E8CD3F6D8DA1EC8A65E90AB849C4B96EA5006109491B1
- 2A39CE4E4601AFBF335CFA6B3E5278AD6CD2B32145D716D9D6862E6254B6C439
- 08DCEBADAD20363691F822474E9BB0738C9BEC95D15DF1AB2EEDF388FA574CDF
- EDB63BB6A3B5DB6F372514C2812A5B6DBD208EE108272AFAAB63AE50F11B8131
- B9E69BA5F8BBA0351163C42989A8D13B719515F428A89404F4F6429294A7A0DA
- 1273D6A76E6579BCE22728BA43482CDB2CBA921DC774360CFF001D32C065B465
- 6EAF7616A56EEA40152E1ECBB95DFF0025E8A5734B823E955D4DC58E2EE93D31
- 72D2B69B1DAE6BEA4CD92C3CE3AE14A5A5AB080AF32A48C0EA4E70324D65F9DA
- F4836B7E086B4B469DD2A9B645B929A4CE9B124470F96195FF002B69C56EC788
- A00A88481B4148CAB39A8F0E5744F891EE745A955C3928E6FA1735BA0E7CD910
- 9BB3EA4B3BA966E3090E6E4614096DD467AED56D58C1F342AA30E2F7A486D70B
- 8CF69E1670F2345BA5D265CDAB54BD4131798911C5B81076253D5D2924E7A819
- E99EF51B1F62772AB2EF52A9AF321CD76AAE51D9D2B79B9BED6BDB05E652E33E
- CBECB70A535B4056E68A06D50C743B877C7519C558BE07F1C34B7305A0A26ACD
- 2730C880F12DBACBA025E8EE8F79B7139E847E7041A8DAD724A926E8DFE954A7
- 9D6E74B5FF0028F7FB0B08B269CBFC0BE994E45043EDBACB6D29B002CEE214A2
- 1C1D4003A1E9D6B40E58BD26FA9F8F5C70D2DA2EEBA5ED564B7CEF595499315D
- 5AD6AD91DC5A1290AEDED253E756D8DAB237ABA3A2B4AA2FCE7F3E3AE7953E20
- DB6C71B4FE9FBF41BA42F5F8CEB85F6DC6D1BCA36AF0AC28FB24E463BD627947
- F48FEA1E6378CF0F49DDF4D5B6C36F36F7A438EC4756E2DC753B3681BBB0EA7A
- 7D1D68D8EAC37C6E8BFD4AAEBCE5F1F35972D5C3D7B5BD96158EED6969D6232A
- 14E43C1F2E38A20A82D2A09DA063A633DFAD52CB47A627595DA742812345D8AD
- E24496DB727092EED65B2A4852B6ABA741B8E49C7D950A0DF281CD274CEAED2A
- 8473A1CF27143845658371D19A23E4AD3139D4311B545E0B6E7AC38415ED4470
- B2A482942B05C093D0E076AF07243E929B871A75C41D01C41B7C58B7B9CDAFD4
- 6EF086C6DF7120ACB6B47641290A208382538C648A9F0DD591BE3745F7D41648
- BA9AC372B44E6FC585708CE457DB3F8CDAD252A1F5826B8B9C4BF46571334BF1
- 21FB5DA556FB869A79F598F785BE1B0D359E81C6FDEDD8FE942874EE2BAEBC6C
- D4FA934470FAF1A934E7C94B5DA21489F219BA36E2C3A86DA52F6A0A14304EDC
- 64E475AE66C8F4C46AD9ADB9EB5C39B03AF630D2C49786CFA41CE7CBE157C7BB
- D8AE4DBEE5FBE50F85C383FC2CB6E988CA52E1C26B697549DBE2BAA254B5E3CB
- 2A2A3F5D4E951A72DFC47778AFC15D23A9E536D3370B95B999329A613B509716
- 904848F866A4BA4CBBF2323DB835DE22AFC3D0D7B563388AB3F9AA80DEE705CA
- 5A8925B213D079F4AE80EBE478BA32F08C12151963A7D154B752E8D8B19F5361
- C0038842B27A63A66BC8F58938E58B5F1FEB3D7F449349AFBFE08E2ED3242ED3
- 251193ED29381D326A3087A5E4DDEE896DB1BA420A77E081B0E7CEA62BF31F21
- 4079C6543784FB0A3DB3DAB0FA22CE5AB34D94A49F5B93953AEE33BB1D463ECA
- CFA6CEF1C3F93D24E09CB93FDD1F6136F74CF43E85252F96D655D82803D2B50D
- 59735CABCDC587093B95918E8922B69D0115C9B639A1D75494AE528A09CE49FA
- 2B63BD70B53758119D6886E5B60E14A1D17918EBF6D2DE48F896D8463B484CC6
- 298C858649483DC75AF569A608BA171D412D107A1F33838FCF59476D12EDD395
- 6C782912413D4E02079D65EC3A525A2E6CFAC496A3A09C92E754E0FD15B326A1
- 3850D8F637DD3A1C6E3BD295E2376F623F89BD23A6E1D719AD4ECBABA4BBAADA
- BD38D87D80EEC4A8A4E00C1F3FA335B4710B595BED9A7DCB0468921A5A9AD9EB
- 23A32BCF7CFD59FAEB4FBB5E2D32F4841B45B1A75831D616642540070EDC1F9E
- B99096E4EC3FF2245E2AC46EE973B74C65E4BBE234970349EF8FA2B76D3F68B7
- B1A61F4AD45D0E33BB628E46F1D718EFE555EA0DCE52A304C97D4E0424368524
- E56067A60F6AB53C2ED35063E8E86B790E3AEBA3F08B70E4A0115932C631E0D1
- 964A30B3E1A43504455A602D2B4B6ADBED369EC4038FD3523BF2DB910DC5A4F8
- 4360EDD327CBF3D46FA6B45C7B729D4BD1D69DAB5EC513D36EEC8ADA5C92FF00
- 889C84B71074C2FB2AB8F349BA89CBC9152E51AA714624ABBF0FE63694308900
- A4656924F45827A8F9AAB3D9265CED12A5A84B7A1B8EE194ADB5042719F9EACC
- 7102ED161C7B7B725C508AE384BDE1A804E3076F7F9F151D3B7C665DDD82C5B6
- 09B521D0DA9529A39512703AE3E38AE8E9B74214C7E9B7422D334D8EE25F118A
- E5CEB9BAE15655BF294E3DEADF20C8F90E334A6D41B6D61252F38921480481D3
- EDAF91B2C5B45FE0DB5B7E332E3CB5A9C0D9010D82723AFCF5BF5FED90576F2C
- 486D0B4A53B52AC6524791E9F3E299926FB0D9E457C9A6DD3C0BACB75975E2F1
- 28DA24B44EF04F4E847D358C92FB9A4E4AEE2DCD85F846043711209538A48EB9
- AC843D29F73B19D96C3EA7DC07294672939E9F9B39AD3F5469A9BAB1F5C453CC
- 32C21217BF610ADD9EA2931A7C36554AFB183D4776B64C4B66CD11697CEE2F96
- FDD2707AE2B7FE14AA46A0D2ED34F1523C370A50E118DC7CC7D95AB5A786CEC6
- 43715BB8A487B207843DB3819207D952469980DE912CB0B904C46C6F4327DFDF
- E75B32644D28240E6D2B332AB5C9B3DC19DC545B7BA0CF9D7F372652EF8C5C4E
- E493B704742475AFE75BF112D56B87EB8F2C0776FB2D7880907E8A86EEBCC230
- 90B4222AD4950CA5455D0AB3D6918F459323B8995E777C9BA5F6E519EDAC3458
- 69C64FB49030AFAABCF2EE8F2A03ACBA308534A0147B7BA71505EABE3239704E
- F662B319D27AAF2370EBF1AD6E47166F975532C2DFDAC15252427AE7A8F315DA
- C1D372EF527D8C1AAD56C833A31CA4B6A6B49212B183D47C6AC0541FCAB4411B
- 44C6DC72B280AFB454E15ED1764BE0F0B2929C9B4415CE1F33FF007A7F0D6D7A
- B7EE6FEEA3D76EED5ABD53D7BD5366F65E73C4DFE1B99C7838C63F1B39E9D66D
- 81399B9446A4C7712E34E24282927E233546BD317FB19F4D7F85B1BF81CCA95F
- D1F1C558BC53E5AF4C3C891E34FB64745AE6A56E6F703CCA420959EF9527639D
- 4F670536BCB62F779A8B26EB287DB287101683D0850CD523E7AB900B4F19ECB7
- 2D65A3A12626BD8D1F7EC6484A6E6103A36E03D37E3D94AFA1F7428ED036DDFA
- 1191D7B556326B944CA2A4B93F3256AB849B35DA24D8ABF0A5C5790F34BDA15B
- 5695029383D0F503A1AEA3FA5625197CB6F0ED655B88BE919FF8BB955024E8B5
- 6AFF00482DF2C76F61B53035F4E74B4956C488ECCC71D70248EDF836D58C7CD5
- 703D2B51150F96FE1EA0F637E2AFFABB9F0AD6DF28CAB84CE7E72C0A09E61387
- E0A10E055DD84ED706475563B7D7577BD2F36E442D1BC205F7756E5C772B3FD6
- C7E95483961FD90BC3DFEFD46FDD8ABD9E98AFE63B83BFDB2E3FB98F5597AD12
- 979594F79169F22DFCD46845C7756D15C8790B09510149F01C383F11900E3E6A
- EA97A41797CD43CC5F02E044D3323FD57B5C84CE44353A50DCA4ECC292AEF923
- 394E7CEB94BC927ECA4D05FDD4EFEF0E5750F9EBE75DEE57B4A592CFA722C5B8
- EAFBCC62B6552C6F6A2B4001E229208C924F40703A79818A89DEE544C1ADAEC8
- 6BD1A1C0BD79C12D4378BA6A76D56B62EC84C64D9144297B90A3F85731900819
- 09C1390B5671D2AAF7A50483CE56AEC75FF4AC0FE0AD5495C8DF12F577319C78
- BA3DC41D4F77D431A2C33353674CA54684F3BBD081B996B62368CE76E304F706
- A1DF48A69D81A5B9ADD516FB6DB21D9E2A23C258890194B2D24AA33649094800
- 124927A75249A95EBE486FC8592F43A6B59AC5D35B69A2E1F93CA9898119E9E2
- 2C2904E3E86D3FFE8ACA7A66EFD7841E1ED992D2858961F94A787654818484FF
- 008A735A47A1FBF9E46B3FEE789FBB72AF673C1CBA5AB98BE0F3B6D9535BB5DD
- EDCEFACDB26B99294BD8C6C20770AEDE6479551BA98C49BC672B3D1C9FB282CD
- FDC723F722A4BF4C18C7321A540E83EE422FF0B9758CE50F82FAC7803CC1DAEF
- BAF74F4DB1D9DB69F8E272901C682D4001B8A09294919EA7E6ADF3D20FC32D53
- CCDF1F2C379E1FD965DE6C51AC112DCEDDD6D9663078C87D67DA5804801D4E48
- 070723C8D5ED6F17CECA305E88CD5972B5F16755D98341DB1CDB736FC852FAA5
- 0F21D096C0F9D4971CFF00147C2A5EF4CFA128D1FC304A404A44D9B800607B8D
- 5487C8BF296381701C5CA784EBDDC54872E129B528340201D8DA01F24EE575C6
- 4EE39F2023DF4D17F323C30FEEE9BFBDB555BBC85E9AC6ECA1BC9FC2893F993D
- 08CCD8E994C7AE95786B008DE96D6A41C1F82824FD557AB9E4F47F5FB8ABABA2
- F10B464B8EA9F718EC3172832D4500ADB4840792AEB8F6128494E3F173E66A8D
- F267FB27340E7A0F5D57EF4BAFD015B1A43F688C97109524B63A11D3B54E4938
- B54571C54AD3397A787D71E44F94CD6D718171F13575ECB715D9ED82D16D4E1F
- 0D286883DDB4A9C5839EA49F2E9546397B3FECF3C3B27A9FBA1807FEB08AEADF
- A59F45AAEDCABB33E26C659B25F22CD75013EFA54971803ED781FAAB947CBE1C
- 71DF877FE1040FE108AB45DC5B2B35B5D23A0DE978404709B853F1F5E959FF00
- 268A847D15BC639DA138E3234B2E462CD7F8E7C4656B2078C8EA8291DB241232
- 7CAA70F4BD67F913F0AB3DFD7A5FEF68AA6DC8A69C95A83998D2AE465148B72D
- 739DC0FC448DBFA562AB1E71F25A5EBB2D97A6988373E1291D4166E7D7EB8D55
- 5BD1FDFB2BB45F5C7FB6BAFF00C55DAB41E99470B8BE0F150C2BD5AE5919CF9C
- 5AABFE8FF19E6BB467FC6FF82BB52BE9912F593C7A61C7FB2BF0F8F9FDCEFF00
- DFAEA2AF46912399C8641C116D918FB5152AFA61FF009EBF0F7FC1EFFBF5D453
- E8D419E66A263FA9923F4A2A17D3225EA3A19E955EBCA0DD3FBE70BF7CAE32E8
- 477C1D6FA7DC284B811708EAD8B190AC389E847C2BB35E955FD88375FEF9C2FD
- F2B8C5A2FF009B0B1FF7731FBE26AD8FD24CFBA3A93E945B734C728DA49F032B
- 56A88C91E4123D5257415CDBE5FE63D6FE3A70F5F8EEAD97537F823736A29382
- FA01191E44120FCC6BA5DE94DFD879A3BFC298DFC125D732F819FCFAF407F7FE
- 07F08454C3B04FD48EF9F17E4AE5F2E1AE9D70E56AD3370CFF00CD9CAFCEA9EE
- 6BF44BC55FD8D3AE3FC19B87F0672BF3B47B9AA62F72F97D8EF7F2143FF264D0
- E7FF007547FDC5588AAF1C857EC63D0DFDEA8FFB8AB0F59E5EA6361E946035E9
- DBA36EE725204751C838AA8BAB59726F86E2101C616DA13BFCFDDAB6DC474173
- 42DF120804C55E0ABB76AA8F012A9288D15D52C7BA0EDEC3D935E33ADF134FED
- FEB3D5F47928C5BFBFE08C38845943B6EB4994843606F7727AE31D3F3E2BEBA3
- D12373D1B79F56436A20246770DA7CEB70D6DA46DEC843CEB0D3EF9514EE503B
- 80F2AC5E988688D9F0C143D9C16D241183D2B84B23A47AF693E4C470CED8D6E7
- 9125A7A3AD0F29C6D4E7BA52723352DC88A12DC65216971AE870923AE3AD60AD
- B39CB6C971B94C36E282B0DA0A7BA6B291EF81E75D8EA31DB69209C0490479F4
- AA4F74BCC51AA311A9B4369AB94A72F8F4794B7C27DA682BD8E95E16AD369B8C
- F6018E3C30D24A49EC067CEB6393257704B512227C46D632E380744A6BDF1B4D
- C18A5C5C605C46C0929C609EBE59A5AC93F704E8D6B5DE8CB76A48B1E2224350
- C3683B4ABDD5F4F3A898E94BAE9C054D448F3586C93EE7422A739B6684A7D323
- 290F23DD6DCC9049E9D857926C9B75C202E3CA8F21975B3B3647E815D6B4473B
- 8AA2CB976451A4ED364D61203CD30EC3951D60ADB49C209CFC3CEACC599FF538
- 8DB681B17B000DFC00AD1F4F6826ECC80B891501B7C83D46E77BE7A62A428B0C
- B3BBC4C216947627AF6ACD9B26F62F3C9CD6D67C85F95295B8A125B49DA40E84
- F95691C59E249D330D10E2B8CBF31406124FB9D4673F566BE9AEF5D46D0D6E32
- 5A8C1F7D4086C1EC547A7EBCD57C72E53F55BE5E7A1176E7217EDAB19C27BF6A
- AE9F4EE72DC8AE382AB3E3A83575DB5038F225AD4B6B1B928CFB1D3AFEAADAE7
- 3F0ACBA76D4FB2B7A427C2F1DE69E57407CB1F5E2B5E5C1B75AAE8D437E5A64B
- EE25414B6D40A1A3B4E01C7CFD2BD7628726F32A2C59090DC44A94D9757D51B5
- 20AB1F9ABB3971C60BEE6BDADAB4481C3ED191F88F61917BBC05C48EAC6C5215
- B547072307CBB79D48D6E9564D3F6965969A97794B87624A0EF29C7C456034FE
- ABB63D1E3DAE3B6531228214C471BBC6383E43EDACCC2BB3E10E2AD76F7ED2C8
- E8A4BAD8EBF3E7CAB90DCE52A68C192AFCCCFEE64D43C95C78F09E68AF070B09
- F671D7B039F2AD4752EB4B059CA5B75C6D324821CC10950E9F3D681C65E2C8D2
- 5714B16875E7EE2B07C5710E0211F1F3AAE770BDCED4D7171E794644870F449C
- 939FA2BADA7E9B2D42F16E90A79563548B2372E37592D105286007DC49EAA460
- 2D3F41A8F3557196EBA85C2C5B12194AC603BFD113F41ED5A35B7435C1DC3920
- 351D048CEF07A0A9460F0EAD96C80CBEC3A6549233EC7BA3E35BDE1C1A77576C
- BE29CB2AE51174B4DD24202A63EE4A59392544E457898B04EB9C92D31BF67E28
- 524E0D49B798C994E25086835B3B93D2BD8C4B90A4350E3434EE5F40E8181F6D
- 5DEA6B949169E9A37CB2354F09AF13565186DB3DCA9C4F415B3D9B84F02D610F
- 4B53AA92D9DC0A7F95FD62A6FB0E9B459EDAD3D35689925DEBB413ECFDBD2BC9
- AAE3B6A657E06C4A76125208CF6A547A86594D2464CFA786C69969796B5A4693
- 88949CE53D3E8C54CF50372A2F29FD26D15FE2A309A9E6BD7C1DC533C0CD2536
- 9144BD317FB19F4D7F85B1BF81CCAA8BCA8EB6E2B72568B5F1026E97977AE15E
- A561A7AEB1A210B5B2D12A0DC803FA1AC270A055F835A5C4A4A82882DF60B881
- C3AD39C4FB01B46A6B1DB2FD092E07DA62EB0DB94DB6E80521C4A56080A014A1
- 91D70A23CEBCF69E1CDBA15B9C8D250994A73DE591D6B5466946999E506DD91F
- E8CE75381FAE2C6C5D21F13B4E406DD1D63DE27B7024367B14A9B78A54307CF0
- 41EE09183516F329E913D07C3DD3D22CBC38BB45E21F10EE294C6B5C2B19F5C8
- EDBAE129438B7500A1783D9A412B5129184856E1B17107900E146B998A912747
- 5A94B5385D52E32150D6B51CE4AD4C290559273D49C9EB59DE1AF297A538641A
- 3A7B4DD96C0F21A31FD722454996A6CE32953EADCE281C0CE54724026A3C9DC9
- 7BCAC9C8BF28D76D117093ABF581764EBABD0529EF15D2EAA234B505AC2D59F6
- 9D5A802A51CE30003EFEEF67A62971A3706342DBDB79BF1DBBD6FF0004286FD9
- E03A376DEF8C83D6AFE58B4FC5D3F17C18C8EA7DE591D546B11AD7867A6F5E20
- AEEF63B5DC25F861A4C99B09B79C4A0124242949240C92703E27E346FF0036E6
- 1B3CB47E7F796879B8BC7FD00EBCB4B4D22F31CA96B3B5291BC7524D5E8F4C1C
- F8B2B4A7081966434F3A854F5A9B42C15241447C1207607CAAEDA7954D109567
- E41B3E739EB6E64E3F6B5B4DF782BA5F51406D99F61B3CB7D2D86BD65F80D2DC
- D89184A7714E700761D855DCD3699450693470D392E90D42E677423D21D44765
- 325DDCE3AA094A7F00E7726AD77A5978277A9D7DD2DC51B5479172B03B6B6E04
- C798095B514A49536AE8738585ABDAC63A0EBD6AFAA3957D128712B160B36E07
- 23FD4E6BE39FE96A4C3A4A0C9D309B14A8CC396F434184301B01B4200C252138
- C0007402A1E4F35A058F8A671AFD175A9ACBA738F539BBB4E6A13D32DC598DEB
- 0A0942C8712B5024F4076A49FB6B1FE942B6CBFBEC7505DFD55EF92E7468822C
- DD87C17F6474217B17D95B54920E0F422BA663923E1D41D546FF000B4A59D371
- F13C5F194C0EFDBA27DDFCD5256B4E0B58B88BA5DBB26A2810EE509A4EC6E3BA
- C24B681F374E9F554EF5BB711E1BAA396FE89FD5B66D31C47D50DDCEE4C44953
- 1B88DC48AB24BD29616E652DA002564129181D7DA181560B9D6E76EF9CBBF32F
- A5A3274E2EEF6481675C85C07E4F80879F7CE038140286F6C2149EC461C57CC6
- ACCF0D395BD33C2A92AFB9AB641B2B255B94A88DE16AFAFBFE7F2AAFBE93AE17
- 70F755E9AD30BBCDE26C4D7EA5391EC70AD90D53665C49C1536184904A73B7DA
- C80091DC9C12D4A564D350A21877D2EB6992A52DFE0D975E51CA9DFBA300E73F
- DCB5EA67D2F7699CFC666E7C259061255EDA9BD4016A4A7E212632771F98A87D
- 3D2ABD593D1C7C5CBB5B5326422CD699273BA04C98A53C8C123AF8485A3CB3EF
- 798F3E95EF6FD19FC57712B3EBDA751B4765497F2AFA3F014CA80BB99D40E56B
- 9C9E18F324D49B769372459EFB15BF15EB25D1B4B720B7D8B88DAA525C483807
- 69C8C8C84E466ABFA66AE5125E9BE1BC662532F496274DF1596DC0A5B7F836BD
- E03A8FAEAA6702741EBBE5D39C4E1FDBEE56C544BC09E82929505B6F467029B7
- 1C428770105CF9C104100F4AED0DFB84FA4F5E45F5D99A6ECCFCB969DEF4A7ED
- ECADD59C6325452493F49F2A534A124C626E71699C2AE4F64350F994D08F3EE2
- 1865135454E38A0948FC12FB935FA06B13EDC9B24075A712EB4B610A4AD07214
- 368C10477A899BE55F44216951D3F66560E71F2735D7F6B52CD8ED4DD8ED5160
- 3096DA8F19B4B4D34D20210842461290074000E981F0AACE4A45A10DA61789FC
- 3DB5F15B87F7ED257A643D6EBB44722B830329DC301493E4A07041F222B876CF
- 2FFAA7976E6BB4558B53C65B1199D490FD5AEA50511E534242085A547A038EE9
- 27A7D1D4F7B2B53D7DC33B17116DEA8B78811E6248C61E6C2863EBFD22A213A2
- 650DDC9CFDF4B7B427F0CF851122A9322699D20222B432EAC29B48CA52339191
- 8FA48AF9FA3AF959BAE81439A9B50C27225FAE8021A88F2005468E0E7DACF50A
- 51C1C74E83AD5DAB6F002C368095C6B64633520A44E90A5BEF246EC909538545
- 033D7A56FDA6F4AC4D36C6D65214E9F79C3DEADBFCB446CF35B2877A5F784172
- D4BC32D1FACAD8C3F2DAD3521D8B2DB693BBC361F08FC2ABA760B6909FFE3EDD
- 3239EDCA26BFB2F0C3980D31A8F50BEE46B54453C975C6D853CA056CAD09F612
- 093D543B03F457E82EE76D8F7780FC296D21F8CFA0A1C6D690A4A81F883DEA01
- 85C96E81D3FAB1DD4166D376A8771714A529F4B03764904E01E83A807A54C722
- 4A995941B95A39F7E956BBC8D67ABF87FA99986E46B149B41620392D0E3325F0
- 17B94B5B2B4852139574DD851EB903A546DE8E09D1EDBCCA447A53ED456BE4D9
- 09DEF2C2139CA3A64D765AFBC18D3DAA6D6D46BD5BE1DDDE6861B7674643BE18
- F827703815ABC7E56744C7790E0D3F66514A82B06DCD63F7346F5B688F0DDD90
- D7A556E90FEF50B94232D8F5D5DC612D31FC41E214F89DC2739C7CF5C6BD1A76
- 6AEB2295ECA44E60927B0FC20AFD196A2E1969FD56D21577B15A2E7343619F59
- 9905A75610338485292481D4F4F9CD6887956D13924582CC3273D2DACFF9B446
- 6A2A8B4A0DBB2A97A51EE70E4F289A2D86A532EBCBD4B19E4B687015291EA92C
- 6E03CC67A67B5734B822E258E33E8371C506DB45FA0A94B51C0481211924D7E8
- 11FE0B69699618F6C9560B44B4C668311D6FC0697E0B79276A729F64649381D3
- A9AD4C72A7A201CFC8367F8FFB9CD7F9B531C8A2A825072767AB8B17CB6A3963
- D60EAA7C54B5234DDC10CACBC9DAEABD5DCE8939EA7E615F9E820E4F435FA486
- 3861601A621D924D92D3320C2C98B19F84DAD960924929494E06727B0AD2E5F2
- BBA265CA53C74F595009CED45B9903E8C6CA884D4499C1CA8D4F902B84695CB5
- 68D61990D3AF316B8C1D6D0B0A52328E9B80EDD8F7F8558FAD2B87BC2DB470D4
- 48459604180DC9C78DEA9190D1736E76EE290338C9EFF1ADD6932E5D978AA546
- 075DB064E8FBB343DE5B0A48FA4D40568D3AC8F0FD8CA80415123B6075AB0BAA
- 97E1E9F9AAC818479FD22A1B430E04890CA82C6CF7479D78DEB5CE44BEDFEB3D
- 0F4EE22DFDFF000469C42D2D21F056DE47B794E3AF4A8EA05B5DB65D545D52D0
- B3EEA87C71560E5296FB690EB7B5C190323351C6ACD312E09764A8EF49F68015
- E69499EB70E5B7B59ABDCED4BD42036CC85B17103D951248E9D7CAB4AF90F5CC
- 6B8069B5C4CEEDA54A049DA7A7E8ADC61DC4C675A7C2B6AC1C28F6C7956CAC4C
- 7234DCA02DF5A91E275ED8EFDE98B234A8DD91453460AC56C9DEA0B79B92E264
- 36EF86E241DA838F98F7A932D8526D8DA9CDA878FB215904FCFD2A20D493EF2F
- CF44DB7A434DB6A2E142BDD52B18EA2A46B1EA06751DB1B717222A5D4B290EA5
- A385B6BC8F2A5B7625D7B1F57ECCD37710EB6A53EA47B6AE8401F6D78AF210AB
- 489259282B7463C3EAA3D6B2CF5CA1426D2B6A5A1D73042D25D4E7B7C3351DEA
- 2E22B16B095A55E3785B8A5B477CE0FE8EFF0055536EE95168F62414EB26B4DB
- 31BC429502318CE1C1918158F9F3DDBA9F15996A0E39DD1BC6F03E6A86237106
- 35D58F94A5B894BC85FB6B50EE3B002BC175E34B6B9454CB0F96D92925C6801D
- 323CEB47E8F237C149C6D998E3BDC936F62D0CA4BA5D2A20AD7D810335127DDE
- 5CA338EFAB492DB8A1B14FB430540F4207D5595E24F18236BC8AC45540290DAF
- 295EF1BC8A8E9FBB4661B221C57BC6F252BA81F1AF45A2D34B1C36BF914F22C6
- A8D96E9291608495C8012978152024E54B57CF8AFB49E374D8F65896D80D23C2
- 6D395AD43A951AD420D96E3A84B9225BCA4B0D8F63776AFE2D5A3644894B0B51
- 2D249CABCBEDAEBF83812B9F73064CD9E52A8AE0DCF4B73037FD26F9718896D9
- 009C9F19A2A359EBE736BAB6ED0D71D98B6B8285A76A9E69ADAA4FD1D7EAAD25
- 9E1FADD24B3B8A867A94E4564F4C707255E9D5F8CE214D8392903E1D7F552251
- D2A8B97B95587513971D8C1698B3CDD613DD9329C5F84A512E388EAA593DB1F5
- E2A65D2BC3762D308489296D2C647B5B70FF007F23FA7E6CD7A2CDA45D622B71
- 6325A6100819C104E3E7AD96269E98971E66E03C4013F82752B3815C2CDAA6E5
- 51748EB62D36C5E7EE79A559A3788B545417929006D7BDA1D7A7956305BDD4C7
- 7A4B6EE108596FF03D81F318EF5F55DBAED6A7169873025D5E410B1B8015F1B5
- 3F2E2C59169212B716ADE5D48F694A3F0AC4E519BDD26687517C231A887016DA
- D5214E3AEA88C249C67AF5ACD69C7DA8B316AF60464FB892324D6B33346498ED
- B9233216FA578DBDF049C76FAEB69D37A4A47AB054A0E3408CE542A6538BE2CA
- CDEF76CCE4C9C9237A5FC23EBE95AC5CDE6990F292B538B52158575C0E86B3FF
- 0020998957B64251F0F3AC0DE6DE5B42D08F68849EFD28C35BD519B341786D96
- BB946255A35B2AEE062A7FA807946FE6347F646A7EAFA1C3D11FE0F9964FA921
- 4A52AE505294A005294A005294A005294A005294A005519E6F783FA96C7CCFF0
- F78D56D66E379B05B11EA772890925E7618295A3C56DA1D549C39956D04FB39C
- 1ABCD5F1971199CC2997DB4B8DABB850ABC5B44356A8D4B8773F4AEAAD350EEB
- 629D06F111E4058951DD4BA32476241E87E20F6ACC5EAF160D3EDA55707A2462
- BC86DA5005C74FF4A840F6967E64826B5CD41C16D2BA9B6A6EDA76C97C6D2772
- 5176B7352424FCDBD2AC56534EE81B76958498567B6DB2C91123019B6C36D940
- 1F3250902A6C1264097CE09A3887C7E81C529F00DB3E4F81F24D8EDEB6CA5F52
- 54A517253E93EE1216A4A53DF69CAB04E059E83184386CB00E76240CD7CE2DB1
- A8CB2E7575D3DDC59C9AF5D0DD90950A5294B2C294A500294A500294A500294A
- 500294A500294A500294A500294A50061759A928D2F7152FDC4B5B8FD00D4536
- D094C36C01B55D539CE7A8C13FA6A4AE26BC63F0FF00503A06E2986E1007D150
- 0E93D64CC88C9641C8751BC2CE7A13B7F88D792EB4AA4A5F6FF59E87A745BC6D
- AF9FC1B8CC82F83BB72719F88AC75DED8BB8475B2B50248DB8FA6BE0DCF74C9F
- 0DB73C504E48CF6AD8ED90038FF8EB57D44F7AF25B99D872943CC45323844A72
- 5B496DE050D2F77B43A107BFD82B6563872988B5A83EA505109C818484FD1527
- 46B7894F2CB48E87F1ABD4EDA17E0293DD5E4314394AAD165AC72F59114FE1F3
- 125E7192AF61092404E01271D3F3D47772E14DD6E0E25F8321105C4AF0E390B2
- 85AC76EF8AB17234C17D1B8AB63A7B8CD63B502E3E9EB5AB0A2DB8D23C4596B0
- 57B7CF148597237543F1EA377088465F0625C1611211707D6A09CAC3CF95E7A7
- C315A35E786CE5BA24C9CFC86DD696DA89C1F7303F356EFA8B983B4B897530E3
- 4D71D40C05A969083E5D7AF4A87B5C6B7BCDF6DAB67C12D32B077223FBB8FEB8
- D74F041B96E3A11DFF001C119DB2C73EEF1A4356FDCF0F13A0292411B87956FB
- 6BD0931FB64982FC35A54E246E52505206083E7F4564780D3A340BE2AD325487
- 172523C270F749EF8FD5539B16B7A15D253CF603493B02493D4D6FCFA89E392A
- 468DB17DCAD13B84EAB7C7019610EAB3951DBED8FA2BCCDE9B8AC29A48692144
- E09574C7C7BD4F7A99952D7907C34AD5B029033D7E15EB621166D4A8CEDB6049
- 46DDCE296DFE100EFD0D57F5F92A986CC776411728DE1C736C80D21C6C81F860
- 9CA4FC6BED074D14458F11390A1925450769E9E7527A349B4C237C75B6DB2FFB
- 4D343F13E35F1718F0169492168070ADA30695FAB95558F5084B948D3A158A53
- 8EA5090E32067DB48C2718AD86D6D31684A51112B0F38704A8F43F1FCD9ACDCD
- 2861A436DB8A2A5FF43C649AF569CD3E89EB744869C094F54FB26B2CF3B7EE3A
- D2E0F8B4F2E24A694908527FAE4E466BF9D42F495CD4A565480E0F6423DD3D2B
- D77584843DB4BBE12500E100FB47A5639B5ED8895788B71F493EF9E82937BB91
- 52767DBE4F6A24065730A92E28FB5B4E4FCDD6B73B4E99B71B5098CB0953F8C9
- 594E542B44811244B77129D25A51F2EBF4548365BA2AD519705921C514F53DF1
- 4A92E444BB9AE5CD80E4B75236B6D14E4AD408015FA6BE36A49948719714D9F8
- 14A8D7875219720C95FAC018EBB3B5602C825021DF115B15920E69908DA2866A
- E6DFC9C54E256A0D1E84A4E0D609E71C9D16586D9DC94A09538A1D47D75B14A7
- E3CE88862602000494A7B9C751F9C5787C2C5A6429A5ADB6CA140B6AFC6E95BF
- 02A92179BE932C3728BD34627FB3353FD401CA41C68C40F3F115FA0D4FF5F458
- 7A23FC1F2EC9F525FC8A5295728294A500294A500294A500294A500294A50029
- 4A500294A500294A500294A500294A500294A500294A500294A500294A500294
- A500294A500294A5006B1C4D5251C3FBF15FBBEA8BCFD18AAA5C3228951DF380
- F488CB082C248CEDC60FD99156A78AEDA9EE1AEA54273B8C07718F8ED38AA43A
- 56FB2B44EA489BB608D311B96E7E30240C75F2ED5E5FAC477349FC7E4F5BD1D2
- 78A49FCFF88B2B6C8515A65C7DB8E42881952BA63EAAC8C209796144FE081F68
- 76AF85AA78BDD892B8CE32F367016A4104823AF715E28125D91352DE0A101452
- 7E720578E51B36E5B69D9245B222584A0B4E8008F748F9ABECF3AB49242C2F1E
- 5DABCD063295190A4ABA247527A57D5961A5255E23A0FC46698934A91C19F2CF
- 8B6CA663A3AF5EBECF6A87B8AAFB835E5BADD1D5B1A90CFB6547A6D1DFF8AA6A
- 73C04290A092DAD27A7CF51DEADD29F2B712EC929C6C94351561431D0939C0A2
- 38D2E59AB4B2719591C6BBE15427ADE972345851B6A14A56D6CA52B0013957E9
- AAC1799EE5A4391D92B5B8EA8B692DF540CF4EDDFCEACEF1D353B4D990C21C79
- 8311B536B40384E48C0FA7BD41FC2BB65926872FD7A9495C588B3B230580B715
- E400F98F5FAABA586548F658B33943947CA3F0D17A1F48D9F50B4A5BB7832029
- E23AF868CFEBCE3EBA9B34DDE6F9AD6229366B626330A482E3D756D5B56AF9B0
- 3350D6A2D613F5C3F2DE65D4DBA034E6D6620E81783D323BF7C558CE5EF52AF5
- 3E8E48949025425968A50AE99EDD479FD354D4BDFE7663D44DE3568C02F83E13
- 706E6DCEE9297B30B31E36030547A1C83D7A6735919765F54448F05490CA8040
- 52939560900D4877665725D5C7D981E6723A79D6BD756550E3292B47B27A83DF
- B1CFEAAE0CB236C5432CA4AD9A7C6D35062C5FC232A76436BC85760135AAEA4D
- 1AFCA96EC98ABF0D0E63281F8BD6A5D5BAD5D2CCDBA86D2951E87C89C1AC34E6
- 5A84C871E412938C04F73429B66DC5964A2476CE920CA1A5CB4B892923F083A6
- 3EBADB61C584C4C65B8CF3CB6D430A5EE181D2BED73BB34F470969054823DC70
- 74358180E21943886095BAE286327D91D727A7D1436D969E46D59F5D5F62696F
- A0B2C6E27FA2F98FAEB5A7EC186D3E1A56777C106A594C56E5DA92B0145C0076
- E89FCF5AD5C24CA8AF2DBE9EAC074DA3AD5E3371542B1E693746A8842ADB1490
- 9C383B6EFCFF009ABC5659A9B7EA17945EF11D713B8157400115994C59375277
- ED4344F52AF7B1E7F9AB55BEA3E4DBB21D4A01009432C9EBD08233D3E9A747CE
- AD9A5BB327A890268714846545272B4F6AD43D6DD8A434C7B8848055F039ADB1
- 4FA9AB4B697595B4B4F5049C24E7E35AB4E770E2B6202B77C2B4E35EC4A56659
- 9485B4DBAE0CA88E8A0735F39D7667D49D654A4B6B6D0ACA7CFB1AC0499EF426
- 9B6D454A49C93B14322BC4BB8B0603EB736A5C2850255D55DB03B56FC70A9AA1
- 59D56365B2E5246747B5FD9295F560D580A8039483FEB39AFA3153FD7D0609A8
- 46FE0F9664FA92FE45294AB1414A528014AE5EFA49A0F183972E21DA389DA178
- 8BAAE0E89BACC6C39017A85F7E3C3B982B77C34C57145263B886F706C85A014B
- A921082DA0E2B8FF00E909D59CCFD93879C3EE02337DB2EAFD45F84BDC78396E
- 6477D2AF623332C29386C6C71D71D0103C3F0F72903C66C35636E9A16E695A67
- 55E95CEEE7CADBABF95BE4CF4740B17137594FD4AAD511D171D4F22F7244D98A
- 5C4925690AF1096D9CA11B590768DA09DCBDCB5437A27835C75D77C9E48E39C0
- E64B5932FB16E9D73569F93729A9496A23CEA1D0240924EE28656A48F0F05442
- 49032B0285ABB073A75475D6954AFD197CDB6B2E663486ADB6EB9F027DEB4CBD
- 188BD32DA1954C6A4178A52E348484254D9648DC900292A4829CA4A97637992B
- ACDB172EFC50B95B65BF6FB8C3D2F73911A5C570B6EB0EA22B8A42D0B49052A4
- 900820E4100D51C5A7B5964D35648F4AE3B7A36F9C5D748E632DFA4B5CEB5BB6
- A3B06A96570507515DD4F2624B4A4AD85B6A7B71DCB295321B4A93BD4F233B8A
- 102B29E934E73753AF8E2D68AE1D6AFBB69EB76946551EE12EC17272319739CD
- AA750A5B2EE169682508C2929521CF1D27CA99E1BDDB4A788AACEBAD2AAA7259
- C656ACDC88696E21712B55BEE311599EFDC6FB7B94E4875494CF7D080A5A8A96
- B560210848CA89DA94824815A1DD3D30DC13B7DCE5C68F66D65738EC3CB6913A
- 2DBE38664242880E2039212B09501901694AB07A80722A9B1DB48BEE556CBCF4
- A8935BF343A1B46F2FAF719A3CB7F53689432C3E87AC894B8EBA975F430004B8
- A461495AF0B4ACA5492950202814D57DFF0045EB81DF72FF002AFA9EABF5DF5C
- F56F917E4D6BD6BC3D9BBD63778DE0F879F631E26FCFE26DF6A85193EC81C92E
- ECBBB4A893487341A1B5F700AE7C5DD3F2DFB9E9BB65BA4DC26C56509F5D8CA6
- 1A2EBD19C6CA804BC903B156D3B92A0A285254743E0D73F9C3EE38685E23EABB
- 159F5244B7683B70B9DC9AB846610EBCD16DF730C843CA0A5623AFA28A464A7A
- F7C46D64EE4597A540DCADF395A2F9B6FBA5FB90B65F6DDF207AB7AD7CB4C32D
- 6FF1FC5D9B3C375CCE3C156738EE319EB89E6A1A69D304EF94294A5412294A50
- 0294A500294A500294A500294A500294A500294A5006075DA3C4D1D7841190A8
- CB49FA08AA8970D3312E311E8786D5236A437B8F6E991F9EADFEB48EE4BD2776
- 659197571D6940F8AB1D07DB549A6DECE9DB9AD17561C6969202D49F6B181FD6
- E7CEB87D474F2CCEE3F077FA7678E1836DFB990B16A5D43C342C5BA7C45BF6EF
- 7CC98682129FECAA66D29AA1AB9418CFB2B8E1A7145654A58C80474EBF4E2A2F
- 83C74E1E26198F7CBE3F1D246C5B6B84FB8920F43EEB66A3ABDF10787B6E79C5
- E99D62EC5677E531DC852C003E390D1AF28F459E2EB6367565A9C59179A49174
- E0C97E4B4A08701481D723D9FB6BE4FEA3B4C47C32F488A873CD45C0923EDAAB
- 3A6B8DFA063C46D778E22DD5D91E6CB0C4C2D7D60B2335B943E3DF01D0905EBE
- 29F7F1FCB9FB64C511FF0045578E9F3C552C6CE6CE5A784AB75FF04D53B8A5A6
- E3A92DCC9B19948E9BBC618FB7B0AC5DE3891A74C03259B934EA8E705A792484
- 8EBDF3508DD38AFC03BC2D5E3EA379B07FDEAD72C7FDCD69772D51C1D9D24B49
- E21DCDAB66E196116F95850CF6FE52287A7D43FF00D6C662CDA58F36CC6F18EE
- 32757EA57DBB0BCBB9879BDEB6A37E1979CF6C27269A7B8497F5DB9B6A458DD8
- 65B6FC525E6168EA7B64918A96348F1C7805A350916CBAA23BE93B4C85DA2592
- B1F1386B35B24CE6C783F2D95EED4A03AA504EE4DA660F673FDAE991D3EA231E
- 31B37FEEB8A1C47B1A5E8BE0E263479F7ABCBB1DF8ECC3594B4D8DBB17B48ACC
- F0D25AB4EDFEDF2E02A3FC99758C5A7191EF25690559FCD5EA47339C1C69F798
- 46A2DD01D1871B72D730A57F5785580BAF1E782698CA6A25E5C002BF0662DBA5
- 20A3CF232D0ACD3C5AA9AAF0990F5F8F3AF33268B8CF4B296C24A54F3FDC67A8
- F3AC4DD3470BA21878CB7D0E039F0C2BD9350CDB3997D090E4786ABF95C727DA
- 75DB7C92E11E58FC1F4EB8ADC3EFAFE1686523EE916481DBE4D97FFF001573DE
- 83537C63647EAF1C784CCD5C63C1B2A1F5B6FAD4E23A6D27201F3E9E75849F7E
- 79E5C64BAC91849500474208EF5A6CCE62386931609BC389714F1529C3064901
- 3F47875E8FBE63876C3636DDC3EA41DA90AB7C9C14FF0093AB4743A9F7C6CD18
- F5B8D2E59B17AC7AE16C784521215BB03B7435F2D37604DCAE0CA90BF612A255
- E5E46B553CC0F0DA4AD4E397E7985107D96E049C7EF75F4B5F319C3CB1361B8D
- 7B2E851CA96AB7C9DC3FE8EADFA1D47FD6CB4B5F8FB5937784DA5B75A48C3490
- 024E3B9CD6BD7AB7A0C27A42405049DB9F9EB4A739A4E1D2E3A922FCB0A23FA9
- F27BF97F43AF223996E1CAE3069CBF28823242ADF248DDFE4E8FD0EA3FEB62E1
- ADC49F73F9BADE531DBF063F57067200ED5ABCB65E425A90FB8572B3F83707E2
- 67FF000C8AFE6FFC6DE1FCA709897A0927F1C5BE4823FE8EB4DBBF16B4D3BE08
- 8777504A540AF7447BAFED29D8F49A85C3C6CE8AD6616B99A465EFD3A6BA95A1
- C756BD98CA770F8D79E1CD21AC21A517FC891D3E7FCD9AD66E3C47B1AEE46435
- 784B8823AA4C37F07F6958FBBF106D32168F57BB3A3E21B8CEA47E74D7461A1C
- AB9DAD0D8EAF057D446C37D4A5C5EC657E1EEF7C28E0D6A6A5F86F2925DC8F85
- 7CA66ADB5CD6FDAB8A8280E998EEEE3F5EDAFE74D5B266A0B935E1B2B5B255D1
- 58C647D75D3D3E9726E4E48C9ABD76358DA84932F77294D291A359DC31DFF454
- FD51372F361167D30849053848C0352CD7AB4DB493F63E7926DC9B6294A5040A
- 5294014D7D273CC5693E18F01AF7A12588378D61AB627ABC2B3C960480CB2560
- 2A6389DC3C3D9B545A5F53E3210529506D653CE5E59B555EB91AE6834C5CB895
- A2FE4B6A6C469120DEE2AC3F0214BDB99B1F6A54A0E213B92A48495603EC9095
- 956DEA6EB2E40F87FC4CE3935C50D6F78D49ACEE2CBC1C66C97892C2ED6DB49C
- 96A38650CA4F8282776C2A216725CF137AF76D1CCFF281A179B2B5D862EB076E
- B05FB23CEB90E6D9E4A5A752971290E3642D0B414A8A1B3D53B816C60805414F
- 8CA296D1328C9BB2B97A5FAEB0AFDCA868DB95B65B170B74CD510E4469715C4B
- 8D3ED2E14B521685A490A4A8104107041CD40DCBCF0039A4E34728F67B368FE2
- 5E9BB2F0AEF2CCB8ED5965294C4A0D7ADBA1F42DD6E229CDAB712E6407485216
- 527D9253577B54F219A475BF00AC3C22BF6B1D6574D3762B8A2E16E952264654
- D6128696D223073D5F05948757B4149527A242821294896F817C1AB2F2FDC2DB
- 2E82D3D2674CB3DA7C6F01EB93885BEAF15E5BCADCA421093ED38A03091D00EF
- DEA37A51A44ED6E56CD0B93CE52ECBCA3F0F26D8615CBEE82F1729665DC6F4E4
- 34465BF81B5A6929054A0DA139212A5ABDA71D50C6FDA368E69FF6327173FC11
- BB7F0376A51AC0EBFD1B0B88DA1751694B93AFB16EBEDBA45B24BB15412EA1A7
- 9B536B282A040500A3824119C7434BBB76C6552A4715F859C05D4DC4EE4691AD
- B42A6EB2359687D7F2644489660E2A538D3F1ADC952D843485385E6DC6D85821
- 4909425D5752134E29F0175370C791A5EB6D749BAC7D65AE35FC6912E25E4389
- 94DB4C46B8A52B7D0EA12E079C71C7D649528290A695D095575AF968E5A34C72
- AFA167694D293AEB70B74CB8AEE6E3B7875B71D0EADB6DB2016DB40DB8693D31
- 9C93D7E0E65F968D31CD468583A5355CEBADBEDD0EE28B9B6ED9DD6DB74BA86D
- C6C025C6D636E1D574C672075F8BBC4E7EC27C3E0E6DF11FE5AFF41E385DF25F
- AF7A8FDD13DF2AFAA6FF000FD5BD72E1B7C7DBD3C3F1FD5F1BBA6FF0FF001B6D
- 64B93FE5E6F5CCEF2A137465938ED6FB069F725937FD1AC6928AEC88EFF8FE23
- 2E3B277B6F39BC32D292E67184784090D148E8E70CB970D17C34E08DBB851EA5
- F753A421789FE96D48D332FC7DF21523F0A9F0C215B5C5653ECF4DA9F319AAE9
- A9BD10DC0EBEDF24CF81335669B8AF6DD96CB65C9B547670900ED2FB2E387241
- 51DCB3D547181800DEB941B1F0C8B389BC06B2F2E7E8D5E34E90B2EBD83C400D
- EA28EECC9905A435EA7244BB7B4E45710975CDAE23C20482411BC0291DCC35C2
- 148FF42278D87033F75D1FAFFF0036D55D116B91BE1A5BF973BC705ED68BB5A7
- 4BDE1E6255C25C799BE6C892DA985178ADD4AD0952CC66F704A023BED4A7358B
- D37C81F0FB4C72E5AA382F16F1A91CD2FA8AE28B9CA96F4960CD43A9547500DA
- C32101398ADF42827AABAF51814D57FF0049707FD154F913FF00CD91CC0FFCBF
- FF00D9D8A8BBD1E4A03964E6FB240FF5A29FE0772AE97F2FBCA968BE5D38637A
- D03665CED41A76F12DE97358D445993E2F8ACB6CB8D29296D0953650D0052527
- 3956720E04231BD123C098F74BECA527523EC5C597DB8F09CB980D5B14E2B287
- 1829405A94D8E890F29D491EF859EB46F8F21B5F041FE84AFF00D71FFC8FFF00
- E6D750EA06E56F935D17CA4FDD2FDC85CEFB71F97FD5BD6BE5A7D9776781E2EC
- D9E1B4DE33E32B39CF618C75CCF34B9B5295A2F0551A6294A52CB8A529400A52
- 9400A529400A529400A529400A529400A529401F390C890CADB3D943151C5F38
- 1F69BDC871E79B4952CF5E94A55E2E88B6BB1AACDE5534F4D7095B0820FCC2BC
- AAE50F4D1491E023EC14A5129C976E03629F323E7F7A069BFC9D1F60A7DE81A6
- FF002747D8294AAF893F921C547843EF40D37F93A3EC14FBD034DFE4E8FB0529
- 47893F92C90FBD034DFE4E8FB053EF40D37F93A3EC14A54F8B3AAB21AA1F7A06
- 9BFC9D1F60A7DE81A6FF002747D8294AAC6725EE2DFD98FBD034DFE4E8FB053E
- F40D37F93A3EC14A53565922C9B5EE3EF40D37F93A3EC14FBD034DFE4E8FB052
- 950F2C98393F91F7A069BFC9D1F60A7DE81A6FF2747D8294AAF8922ADB7EE3EF
- 40D37F93A3EC14FBD034DFE4E8FB052947892215A7DC7DE81A6FF2747D829F7A
- 069BFC9D1F60A52AAE72BBB34A4A7CC87DE81A6FF2747D82BFD4F283A6C281F5
- 747D8294A66E73E6459422BD8FA7DE8DA691D4474123CB02B61B0F2F365B2ED2
- 88C8494F6E8294A2EBD85CBCAF824EB3DA1BB347430C3612D81DC57BE94AA5D8
- 376294A5410294A500294A500294A500294A500294A500294A500294A500294A
- 500294A500294A500294A500294A500294A500294A500294A500294A500294A5
- 007FFFD9}
- end
- object Label1: TLabel
- Left = 40
- Top = 192
- Width = 377
- Height = 57
- AutoSize = False
- Caption =
- 'XP Menu is a none-visual component that changes the visual aspec' +
- 'ts of menus, toolbars and many other controls to nearly the same' +
- ' look and feel of MS Office XP. No code required, you do not hav' +
- 'e to reconstruct menus or toolbars using controls other than tho' +
- 'se shipped with Delphi.'
- Color = clGray
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clSilver
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- ParentColor = False
- ParentFont = False
- WordWrap = True
- end
- object Label2: TLabel
- Left = 48
- Top = 160
- Width = 218
- Height = 13
- Caption = 'TUCXpStyle component is based in TXPMenu'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clSilver
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- ParentFont = False
- end
- object Label3: TLabel
- Left = 40
- Top = 264
- Width = 236
- Height = 13
- Cursor = crHandPoint
- Caption = 'Author: Khaled Shagrouni khaled@shagrouni.com'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWhite
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- ParentFont = False
- OnClick = Label3Click
- end
- object Label4: TLabel
- Left = 40
- Top = 288
- Width = 274
- Height = 13
- Cursor = crHandPoint
- Caption = 'http://www.shagrouni.com/english/software/xpmenu.html'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = 16634037
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = [fsUnderline]
- ParentFont = False
- OnClick = Label4Click
- end
- object SpeedButton1: TSpeedButton
- Left = 424
- Top = 282
- Width = 75
- Height = 25
- Caption = '&Close'
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFC066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40198E40198E40198E40
- 198E40198E4019FF00FF8888886969696969696969696969696969696A6A6A69
- 69696969696969696A6A6A6969696969696A6A6A696969FF00FFC06614F9F5F4
- C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2
- A5C3B2A58E4019FF00FF888888F8F8F8C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6
- C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6696969FF00FFC06614FCFAFA
- F9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCDFD0C7DFD0C7DCCB
- C1C3B2A58E4019FF00FF888888FCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEAEAEAE7
- E7E7E4E4E4E0E0E0DDDDDDDDDDDDD9D9D9C6C6C6696969FF00FFC06614FFFFFF
- FCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCE2D4CCDFD0
- C7C3B2A58E4019FF00FF888888FFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEA
- EAEAE7E7E7E3E3E3E0E0E0E0E0E0DDDDDDC6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E5D9D1E2D4
- CCC3B2A58E4019FF00FF888888FFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EE
- EEEEEAEAEAE7E7E7E3E3E3E3E3E3E0E0E0C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E9DED7E5D9
- D1C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1
- F1F1EEEEEEEAEAEAE7E7E7E7E7E7E3E3E3C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F2EBE8EEE6E2ECE2DCECE2DCE9DE
- D7C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFBF7
- F7F7F1F1F1EEEEEEEAEAEAEAEAEAE7E7E7C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF0E9E5F0E9E5EDE4
- DFC3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFB
- FBFBF7F7F7F3F3F3F0F0F0F0F0F0ECECECC6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF4EEEBF0E9
- E5C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
- FEFEFBFBFBF7F7F7F3F3F3F3F3F3F0F0F0C6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F78A9DE92546CD1D3F
- C9193BC8183BC88194E1898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFEFEFEFAFAFAC6C6C6979797929292929292929292C0C0C0C06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFD3355DBF2F4FD4E6B
- D94A67D8F2F4FD183BC8888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFEFEFEA1A1A1FAFAFAAAAAAAA8A8A8F9F9F9929292C066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40193C5CDD8296E4D9DF
- F9CDD5F74C69D81A3CC88888886969696969696969696A6A6A69696969696969
- 6969696969696969A5A5A5C1C1C1EDEDEDE7E7E7A8A8A8929292C06614ED9733
- ED9733ED9733ED9733ED9733ED9733ED9733F6CA9AED97334563E16980E2E4E8
- FBD8DEF9516DDA1F40C9888888ACACACACACACADADADADADADADADADACACACAD
- ADADD5D5D5ADADADA8A8A8B6B6B6F2F2F2ECECECABABAB939393F810DCC06614
- C06614C06614C06614C06614C06614C06614C06614C066144D6AE3F2F4FD667D
- E26E85E2F2F4FD2749CEEF14EF88888888888888888888888889898988888888
- 8888888888898989ACACACF9F9F9B5B5B5B9B9B9F9F9F9989898FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF9AABEF4D6AE34563
- E14463DF3E5EDE8FA2EBFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFCFCFCFACACACA8A8A8A8A8A8A6A6A6C9C9C9}
- NumGlyphs = 2
- OnClick = SpeedButton1Click
- end
-end
diff --git a/internal/2.31RC1/1/Source/UCAboutXpStyle_U.pas b/internal/2.31RC1/1/Source/UCAboutXpStyle_U.pas
deleted file mode 100644
index 5cba471..0000000
--- a/internal/2.31RC1/1/Source/UCAboutXpStyle_U.pas
+++ /dev/null
@@ -1,46 +0,0 @@
-unit UCAboutXpStyle_U;
-
-interface
-
-uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, Jpeg, ExtCtrls, StdCtrls, ShellApi, Buttons;
-
-type
- TUCAboutXpStyle = class(TForm)
- Image1: TImage;
- Label1: TLabel;
- Label2: TLabel;
- Label3: TLabel;
- Label4: TLabel;
- SpeedButton1: TSpeedButton;
- procedure Label3Click(Sender: TObject);
- procedure SpeedButton1Click(Sender: TObject);
- procedure Label4Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
-
-
-implementation
-
-{$R *.dfm}
-
-procedure TUCAboutXpStyle.Label3Click(Sender: TObject);
-begin
- ShellExecute(0, 'open', 'mailto:khaled@shagrouni.com', nil, nil, sw_show);
-end;
-
-procedure TUCAboutXpStyle.SpeedButton1Click(Sender: TObject);
-begin
- Close;
-end;
-
-procedure TUCAboutXpStyle.Label4Click(Sender: TObject);
-begin
- ShellExecute(0, 'open', 'http://www.shagrouni.com/english/software/xpmenu.html', nil, nil, sw_show);
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/UCBase.pas b/internal/2.31RC1/1/Source/UCBase.pas
deleted file mode 100644
index 005af76..0000000
--- a/internal/2.31RC1/1/Source/UCBase.pas
+++ /dev/null
@@ -1,4080 +0,0 @@
-{
------------------------------------------------------------------------------
- Unit Name: UCBase
- Author: QmD
- changed: 06-dez-2004
- Purpose: Main Unit
- History: included delphi 2005 support
------------------------------------------------------------------------------}
-
-(*
-
- Vesões do Delphi
-
- VER120 = Delphi4
- VER130 = Delphi5
- VER140 = Delphi6
- VER150 = Delphi7
- VER160 = Delphi8
- VER170 = BDS2005
- VER180 = BDS2006
-
-*)
-
-unit UCBase;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- ActnList,
- ActnMan,
- ActnMenus,
- Classes,
- Controls,
- DB,
- ExtActns,
- Forms,
- Graphics,
- md5,
- Menus,
- StdCtrls,
- SysUtils,
- UcConsts_Language,
- UCDataConnector,
- UCDataInfo,
- UCMail,
- UCMessages,
- UCSettings,
- Variants,
- Windows;
-
-const
- llBaixo = 0;
- llNormal = 1;
- llMedio = 2;
- llCritico = 3;
-
-// Version
-const
- UCVersion = '2.31 RC1';
-
-type
- // Pensando em usar GUID para gerar a chave das tabelas !!!!
- TUCGUID = class
- //Creates and returns a new globally unique identifier
- class function NovoGUID: TGUID;
- //sometimes we need to have an "empty" value, like NULL
- class function EmptyGUID: TGUID;
- //Checks whether a Guid is EmptyGuid
- class function IsEmptyGUID(GUID: TGUID): Boolean;
- //Convert to string
- class function ToString(GUID: TGUID): String;
- //convert to quoted string
- class function ToQuotedString(GUID: TGUID): String;
- //return a GUID from string
- class function FromString(Value: String): TGUID;
- //Indicates whether two TGUID values are the same
- class function EqualGUIDs(GUID1, GUID2: TGUID): Boolean;
- //Creates and returns a new globally unique identifier string
- class function NovoGUIDString: String;
- end;
-
- TUCAboutVar = String;
-
- //classe para armazenar usuario logado = currentuser
- TUCCurrentUser = class(TComponent)
- private
- FPerfilUsuario: TDataSet;
- FPerfilGrupo: TDataSet;
- public
- UserID: Integer;
- Profile: Integer;
- UserIDOld: Integer;
- IdLogon: String;
- UserName: String;
- UserLogin: String;
- Password: String;
- Email: String;
- DateExpiration: TDateTime;
- Privileged: Boolean;
- UserNotExpired: Boolean;
- UserDaysExpired: Integer;
- constructor Create(AOwner: TComponent); override;
- destructor Destroy; override;
- published
- { TODO 1 -oLuiz -cUpgrade : Terminar a implementação dos DataSets para os Perfis de Usuario Loggado }
- property PerfilUsuario: TDataSet read FPerfilUsuario write FPerfilUsuario; //Cadastro de Usuarios
- property PerfilGrupo: TDataSet read FPerfilGrupo write FPerfilGrupo; //Cadastro de Perfil
- end;
-
- TUCUser = class(TPersistent) // armazenar menuitem ou action responsavel pelo controle de usuarios
- private
- FAction: TAction;
- FMenuItem: TMenuItem;
- FUsePrivilegedField: Boolean;
- FProtectAdministrator: Boolean;
- procedure SetAction(const Value: TAction);
- procedure SetMenuItem(const Value: TMenuItem);
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property Action: TAction read FAction write SetAction;
- property MenuItem: TMenuItem read FMenuItem write SetMenuItem;
- property UsePrivilegedField: Boolean read FUsePrivilegedField write FUsePrivilegedField default False;
- property ProtectAdministrator: Boolean read FProtectAdministrator write FProtectAdministrator default True;
- end;
-
- TUCUserProfile = class(TPersistent) // armazenar menuitem ou action responsavel pelo Perfil de usuarios
- private
- FAtive: Boolean;
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property Active: Boolean read FAtive write FAtive default True;
- end;
-
- TUCUserPasswordChange = class(TPersistent) // armazenar menuitem ou action responsavel pelo Form trocar senha
- private
- FForcePassword: Boolean;
- FMinPasswordLength: Integer;
- FAction: TAction;
- FMenuItem: TMenuItem;
- procedure SetAction(const Value: TAction);
- procedure SetMenuItem(const Value: TMenuItem);
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property Action: TAction read FAction write SetAction;
- property MenuItem: TMenuItem read FMenuItem write SetMenuItem;
- property ForcePassword: Boolean read FForcePassword write FForcePassword default False;
- property MinPasswordLength: Integer read FMinPasswordLength write FMinPasswordLength default 0;
- end;
-
- TUCUserLogoff = class(TPersistent) // armazenar menuitem ou action responsavel pelo logoff
- private
- FAction: TAction;
- FMenuItem: TMenuItem;
- procedure SetAction(const Value: TAction);
- procedure SetMenuItem(const Value: TMenuItem);
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property Action: TAction read FAction write SetAction;
- property MenuItem: TMenuItem read FMenuItem write SetMenuItem;
- end;
-
- TUCAutoLogin = class(TPersistent) // armazenar configuracao de Auto-Logon
- private
- FActive: Boolean;
- FUser: String;
- FPassword: String;
- FMessageOnError: Boolean;
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property Active: Boolean read FActive write FActive default False;
- property User: String read FUser write FUser;
- property Password: String read FPassword write FPassword;
- property MessageOnError: Boolean read FMessageOnError write FMessageOnError default True;
- end;
-
- TUCInitialLogin = class(TPersistent) // armazenar Dados do Login que sera criado na primeira execucao do programa.
- private
- FUser: String;
- FPassword: String;
- FInitialRights: TStrings;
- FEmail: String;
- procedure SetInitialRights(const Value: TStrings);
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property User: String read FUser write FUser;
- property Email: String read FEmail write FEmail;
- property Password: String read FPassword write FPassword;
- property InitialRights: TStrings read FInitialRights write SetInitialRights;
- end;
-
- TUCGetLoginName = (lnNone, lnUserName, lnMachineName);
-
- TUCLogin = class(TPersistent)
- private
- FAutoLogin: TUCAutoLogin;
- FMaxLoginAttempts: Integer;
- FInitialLogin: TUCInitialLogin;
- FGetLoginName: TUCGetLoginName;
- fCharCaseUser: TEditCharCase;
- fCharCasePass: TEditCharCase;
- fDateExpireActive: Boolean;
- fDaysOfSunExpired: Word;
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property AutoLogin: TUCAutoLogin read FAutoLogin write FAutoLogin;
- property InitialLogin: TUCInitialLogin read FInitialLogin write FInitialLogin;
- property MaxLoginAttempts: Integer read FMaxLoginAttempts write FMaxLoginAttempts;
- property GetLoginName: TUCGetLoginName read FGetLoginName write FGetLoginName default lnNone;
- property CharCaseUser: TEditCharCase read fCharCaseUser write fCharCaseUser default ecNormal; { By Vicente Barros leonel }
- property CharCasePass: TEditCharCase read fCharCasePass write fCharCasePass default ecNormal; { By Vicente Barros leonel }
- property ActiveDateExpired: Boolean read fDateExpireActive write fDateExpireActive default False; { By Vicente Barros leonel }
- property DaysOfSunExpired: Word read fDaysOfSunExpired write fDaysOfSunExpired default 30; { By Vicente Barros leonel }
- end;
-
- TUCNotAllowedItems = class(TPersistent) // Ocultar e/ou Desabilitar os itens que o usuario nao tem acesso
- private
- FMenuVisible: Boolean;
- FActionVisible: Boolean;
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property MenuVisible: Boolean read FMenuVisible write FMenuVisible default True;
- property ActionVisible: Boolean read FActionVisible write FActionVisible default True;
- end;
-
- TUCLogControl = class(TPersistent) // Responsavel pelo Controle de Log
- private
- FActive: Boolean;
- FTableLog: String;
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property Active: Boolean read FActive write FActive default True;
- property TableLog: String read FTableLog write FTableLog;
- end;
-
- TUCControlRight = class(TPersistent) // Menu / ActionList/ActionManager ou ActionMainMenuBar a serem Controlados
- private
- FActionList: TActionList;
- FActionManager: TActionManager;
- FActionMainMenuBar: TActionMainMenuBar;
- FMainMenu: TMenu;
- procedure SetActionList(const Value: TActionList);
- procedure SetActionManager(const Value: TActionManager);
- procedure SetActionMainMenuBar(const Value: TActionMainMenuBar);
- procedure SetMainMenu(const Value: TMenu);
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property ActionList: TActionList read FActionList write SetActionList;
- property MainMenu: TMenu read FMainMenu write SetMainMenu;
- property ActionManager: TActionManager read FActionManager write SetActionManager;
- property ActionMainMenuBar: TActionMainMenuBar read FActionMainMenuBar write SetActionMainMenuBar;
- end;
-
- TOnLogin = procedure(Sender: TObject; var User, Password: String) of object;
- TOnLoginSucess = procedure(Sender: TObject; IdUser: Integer; Usuario, Nome, Senha, Email: String; Privileged: Boolean) of object;
- TOnLoginError = procedure(Sender: TObject; Usuario, Senha: String) of object;
- TOnApplyRightsMenuItem = procedure(Sender: TObject; MenuItem: TMenuItem) of object;
- TOnApllyRightsActionItem = procedure(Sender: TObject; Action: TAction) of object;
- TCustomUserForm = procedure(Sender: TObject; var CustomForm: TCustomForm) of object;
- TCustomUserProfileForm = procedure(Sender: TObject; var CustomForm: TCustomForm) of object;
- TCustomLoginForm = procedure(Sender: TObject; var CustomForm: TCustomForm) of object;
- TCustomUserPasswordChangeForm = procedure(Sender: TObject; var CustomForm: TCustomForm) of object;
- TCustomLogControlForm = procedure(Sender: TObject; var CustomForm: TCustomForm) of object;
- TCustomInitialMessage = procedure(Sender: TObject; var CustomForm: TCustomForm; var Msg: TStrings) of object;
- TCustomUserLoggedForm = procedure(Sender: TObject; var CustomForm: TCustomForm) of object; //Cesar: 13/07/2005
- TOnAddUser = procedure(Sender: TObject; var Login, Password, Name, Mail: String; var Profile: Integer; var Privuser: Boolean) of object;
- TOnChangeUser = procedure(Sender: TObject; IDUser: Integer; var Login, Name, Mail: String; var Profile: Integer; var Privuser: Boolean) of object;
- TOnDeleteUser = procedure(Sender: TObject; IDUser: Integer; var CanDelete: Boolean; var ErrorMsg: String) of object;
- TOnAddProfile = procedure(Sender: TObject; var Profile: String) of object;
- TOnDeleteProfile = procedure(Sender: TObject; IDProfile: Integer; var CanDelete: Boolean; var ErrorMsg: String) of object;
- TOnChangePassword = procedure(Sender: TObject; IDUser: Integer; Login, CurrentPassword, NewPassword: String) of object;
- TOnLogoff = procedure(Sender: TObject; IDUser: Integer) of object;
-
- TUCExtraRights = class;
- TUCExecuteThread = class;
- TUCApplicationMessage = class;
- TUCControls = class;
- TUCUsersLogged = class; //Cesar: 12/07/2005
-
- TUCLoginMode = (lmActive, lmPassive);
- TUCCriptografia = (cPadrao, cMD5);
-
- TUserControl = class(TComponent) // Classe principal
- private
- FCurrentUser: TUCCurrentUser;
- FUserSettings: TUCUserSettings;
- FApplicationID: String;
- FNotAllowedItems: TUCNotAllowedItems;
- FOnLogin: TOnLogin;
- FOnStartApplication: TNotifyEvent;
- FOnLoginError: TOnLoginError;
- FOnLoginSucess: TOnLoginSucess;
- FOnApplyRightsActionIt: TOnApllyRightsActionItem;
- FOnApplyRightsMenuIt: TOnApplyRightsMenuItem;
- FLogControl: TUCLogControl;
- FEncrytKey: Word;
- FUser: TUCUser;
- FLogin: TUCLogin;
- FUserProfile: TUCUserProfile;
- FUserPasswordChange: TUCUserPasswordChange;
- FControlRight: TUCControlRight;
- FOnCustomCadUsuarioForm: TCustomUserForm;
- FCustomLogControlForm: TCustomLogControlForm;
- FCustomLoginForm: TCustomLoginForm;
- FCustomPerfilUsuarioForm: TCustomUserProfileForm;
- FCustomTrocarSenhaForm: TCustomUserPasswordChangeForm;
- FOnAddProfile: TOnAddProfile;
- FOnAddUser: TOnAddUser;
- FOnChangePassword: TOnChangePassword;
- FOnChangeUser: TOnChangeUser;
- FOnDeleteProfile: TOnDeleteProfile;
- FOnDeleteUser: TOnDeleteUser;
- FOnLogoff: TOnLogoff;
- FCustomInicialMsg: TCustomInitialMessage;
- FAbout: TUCAboutVar;
- FExtraRights: TUCExtraRights;
- FThUCRun: TUCExecuteThread;
- FAutoStart: Boolean;
- FTableRights: TUCTableRights;
- FTableUsers: TUCTableUsers;
- FLoginMode: TUCLoginMode;
- FControlList: TList;
- FDataConnector: TUCDataConnector;
- FLoginMonitorList: TList;
- FAfterLogin: TNotifyEvent;
- FCheckValidationKey: Boolean;
- FCriptografia: TUCCriptografia;
- FUsersLogged: TUCUsersLogged;
- FTableUsersLogged: TUCTableUsersLogged;
- FUsersLogoff: TUCUserLogoff;
- fLanguage: TUCLanguage;
- FMailUserControl: TMailUserControl;
- procedure SetExtraRights(Value: TUCExtraRights);
- procedure ActionCadUser(Sender: TObject);
- procedure ActionTrocaSenha(Sender: TObject);
- procedure ActionOKLogin(Sender: TObject);
- procedure TestaFecha(Sender: TObject; var CanClose: Boolean);
- procedure ApplySettings(SourceSettings: TUCSettings);
- procedure UnlockEX(FormObj: TCustomForm; ObjName: String);
- procedure LockEX(FormObj: TCustomForm; ObjName: String; naInvisible: Boolean);
- {.$IFDEF UCACTMANAGER}
- procedure TrataActMenuBarIt(IT: TActionClientItem; ADataset: TDataset);
- procedure IncPermissActMenuBar(idUser: Integer; Act: TAction);
- {.$ENDIF}
- procedure SetDataConnector(const Value: TUCDataConnector);
- procedure DoCheckValidationField;
- procedure SetfLanguage(const Value: TUCLanguage);
- procedure SetFMailUserControl(const Value: TMailUserControl);
- procedure ActionEsqueceuSenha(Sender: TObject);
- protected
- FRetry: Integer;
- // Formulários
- FFormTrocarSenha: TCustomForm;
- FFormLogin: TCustomForm;
- FFormGeral: TCustomForm;
- // -----
-
- procedure Loaded; override;
- // Criar Formulários
- procedure CriaFormTrocarSenha; dynamic;
- // -----
-
- procedure ActionLogoff(Sender: TObject); dynamic;
- procedure ActionTSBtGrava(Sender: TObject);
- procedure SetUserSettings(const Value: TUCUserSettings);
- procedure SetfrmLoginWindow(Form: TCustomForm);
- procedure Notification(AComponent: TComponent; AOperation: TOperation); override;
- procedure RegistraCurrentUser(Dados: TDataset);
- procedure ApplyRightsObj(ADataset: TDataset; FProfile: Boolean = False);
- procedure ShowLogin;
- procedure ApplyRights;
-
- // Criar Tabelas
- procedure CriaTabelaLog;
- procedure CriaTabelaRights(ExtraRights: Boolean = False);
- procedure CriaTabelaUsuarios(TableExists: Boolean);
- procedure CriaTabelaMsgs(const TableName: String);
- // -----
-
- // Atualiza Versao
- procedure AtualizarVersao;
- //--------
-
- procedure TryAutoLogon;
- procedure AddUCControlMonitor(UCControl: TUCControls);
- procedure DeleteUCControlMonitor(UCControl: TUCControls);
- procedure ApplyRightsUCControlMonitor;
- procedure LockControlsUCControlMonitor;
- procedure AddLoginMonitor(UCAppMessage: TUCApplicationMessage);
- procedure DeleteLoginMonitor(UCAppMessage: TUCApplicationMessage);
- procedure NotificationLoginMonitor;
- procedure ShowNewConfig;
- public
- procedure Logoff;
- procedure Execute;
- procedure StartLogin;
- procedure ShowChangePassword;
- procedure ChangeUser(IDUser: Integer; Login, Name, Mail: String; Profile, UserExpired, UserDaysSun, Status: Integer; PrivUser: Boolean);
- procedure ChangePassword(IDUser: Integer; NewPassword: String);
- procedure AddRight(idUser: Integer; ItemRight: TObject; FullPath: Boolean = True); overload;
- procedure AddRight(idUser: Integer; ItemRight: String); overload;
- procedure AddRightEX(idUser: Integer; Module, FormName, ObjName: String);
- procedure HideField(Sender: TField; var Text: String; DisplayText: Boolean);
- procedure Log(MSG: String; Level: Integer = llNormal);
- function VerificaLogin(User, Password: String): Integer;//Boolean;
- function GetLocalUserName: String;
- function GetLocalComputerName: String;
- function AddUser(Login, Password, Name, Mail: String; Profile, UserExpired, DaysExpired: Integer; PrivUser: Boolean): Integer;
- function ExisteUsuario(Login: String): Boolean;
- property CurrentUser: TUCCurrentUser read FCurrentUser write FCurrentUser;
- property UserSettings: TUCUserSettings read FUserSettings write SetUserSettings;
- constructor Create(AOwner: TComponent); override;
- destructor Destroy; override;
- published
- property About: TUCAboutVar read FAbout write FAbout;
- property Criptografia: TUCCriptografia read FCriptografia write FCriptografia default cPadrao;
- property AutoStart: Boolean read FAutoStart write FAutoStart default False;
- property ApplicationID: String read FApplicationID write FApplicationID;
- property ControlRight: TUCControlRight read FControlRight write FControlRight;
- // Controle dos formularios
- property User: TUCUser read FUser write FUser;
- property UserProfile: TUCUserProfile read FUserProfile write FUserProfile;
- property UserPasswordChange: TUCUserPasswordChange read FUserPasswordChange write FUserPasswordChange;
- property UsersLogged: TUCUsersLogged read FUsersLogged write FUsersLogged;
- property UsersLogoff: TUCUserLogoff read FUsersLogoff write FUsersLogoff; //by vicente barros leonel
- property LogControl: TUCLogControl read FLogControl write FLogControl;
-
- property MailUserControl: TMailUserControl read FMailUserControl write SetFMailUserControl; // by vicente barros leonel
-
- property Language: TUCLanguage read fLanguage write SetfLanguage;
-
- property EncryptKey: Word read FEncrytKey write FEncrytKey;
- property NotAllowedItems: TUCNotAllowedItems read FNotAllowedItems write FNotAllowedItems;
- property Login: TUCLogin read FLogin write FLogin;
- property ExtraRights: TUCExtraRights read FExtraRights write SetExtraRights;
- property LoginMode: TUCLoginMode read FLoginMode write FLoginMode default lmActive;
- // Tabelas
- property TableUsers: TUCTableUsers read FTableUsers write FTableUsers;
- property TableRights: TUCTableRights read FTableRights write FTableRights;
- property TableUsersLogged: TUCTableUsersLogged read FTableUsersLogged write FTableUsersLogged;
-
- property DataConnector: TUCDataConnector read FDataConnector write SetDataConnector;
- property CheckValidationKey: Boolean read FCheckValidationKey write FCheckValidationKey default False;
- // Eventos
- property OnLogin: TOnLogin read FOnLogin write FOnLogin;
- property OnStartApplication: TNotifyEvent read FOnStartApplication write FOnStartApplication;
- property OnLoginSucess: TOnLoginSucess read FOnLoginSucess write FOnLoginSucess;
- property OnLoginError: TOnLoginError read FOnLoginError write FOnLoginError;
- property OnApplyRightsMenuIt: TOnApplyRightsMenuItem read FOnApplyRightsMenuIt write FOnApplyRightsMenuIt;
- property OnApplyRightsActionIt: TOnApllyRightsActionItem read FOnApplyRightsActionIt write FOnApplyRightsActionIt;
- property OnCustomUsersForm: TCustomUserForm read FOnCustomCadUsuarioForm write FOnCustomCadUsuarioForm;
- property OnCustomUsersProfileForm: TCustomUserProfileForm read FCustomPerfilUsuarioForm write FCustomPerfilUsuarioForm;
- property OnCustomLoginForm: TCustomLoginForm read FCustomLoginForm write FCustomLoginForm;
- property OnCustomChangePasswordForm: TCustomUserPasswordChangeForm read FCustomTrocarSenhaForm write FCustomTrocarSenhaForm;
- property OnCustomLogControlForm: TCustomLogControlForm read FCustomLogControlForm write FCustomLogControlForm;
- property OnCustomInitialMsg: TCustomInitialMessage read FCustomInicialMsg write FCustomInicialMsg;
- property OnCustomUserLoggedForm: TCustomUserForm read FOnCustomCadUsuarioForm write FOnCustomCadUsuarioForm; //Cesar: 13/07/2005
- property OnAddUser: TOnAddUser read FOnAddUser write FOnAddUser;
- property OnChangeUser: TOnChangeUser read FOnChangeUser write FOnChangeUser;
- property OnDeleteUser: TOnDeleteUser read FOnDeleteUser write FOnDeleteUser;
- property OnAddProfile: TOnAddProfile read FOnAddProfile write FOnAddProfile;
- property OnDeleteProfile: TOnDeleteProfile read FOnDeleteProfile write FOnDeleteProfile;
- property OnChangePassword: TOnChangePassword read FOnChangePassword write FOnChangePassword;
- property OnLogoff: TOnLogoff read FOnLogoff write FOnLogoff;
- property OnAfterLogin: TNotifyEvent read FAfterLogin write FAfterLogin;
- end;
-
- TUCExtraRightsItem = class(TCollectionItem)
- private
- FFormName: String;
- FCompName: String;
- FCaption: String;
- FGroupName: String;
- procedure SetFormName(const Value: String);
- procedure SetCompName(const Value: String);
- procedure SetCaption(const Value: String);
- procedure SetGroupName(const Value: String);
- protected
- function GetDisplayName: String; override;
- public
- published
- property FormName: String read FFormName write SetFormName;
- property CompName: String read FCompName write SetCompName;
- property Caption: String read FCaption write SetCaption;
- property GroupName: String read FGroupName write SetGroupName;
- end;
-
- TUCExtraRights = class(TCollection)
- private
- FUCBase: TUserControl;
- function GetItem(Index: Integer): TUCExtraRightsItem;
- procedure SetItem(Index: Integer; Value: TUCExtraRightsItem);
- protected
- function GetOwner: TPersistent; override;
- public
- constructor Create(UCBase: TUserControl);
- function Add: TUCExtraRightsItem;
- property Items[Index: Integer]: TUCExtraRightsItem read GetItem write SetItem; default;
- end;
-
- TUCVerificaMensagemThread = class(TThread)
- private
- procedure VerNovaMansagem;
- public
- AOwner: TComponent;
- protected
- procedure Execute; override;
- end;
-
- TUCExecuteThread = class(TThread)
- private
- procedure UCStart;
- public
- AOwner: TComponent;
- protected
- procedure Execute; override;
- end;
-
- TUCApplicationMessage = class(TComponent)
- private
- FActive: Boolean;
- FReady: Boolean;
- FInterval: Integer;
- FUserControl: TUserControl;
- FVerifThread: TUCVerificaMensagemThread;
- FTableMessages: String;
- procedure SetActive(const Value: Boolean);
- procedure SetUserControl(const Value: TUserControl);
- protected
- procedure Loaded; override;
- procedure Notification(AComponent: TComponent; AOperation: TOperation); override;
- public
- constructor Create(AOWner: TComponent); override;
- destructor Destroy; override;
- procedure ShowMessages(Modal: Boolean = True);
- procedure SendAppMessage(ToUser: Integer; Subject, Msg: String);
- procedure DeleteAppMessage(IdMsg: Integer);
- procedure CheckMessages;
- published
- property Active: Boolean read FActive write SetActive;
- property Interval: Integer read FInterval write FInterval;
- property TableMessages: String read FTableMessages write FTableMessages;
- property UserControl: TUserControl read FUserControl write SetUserControl;
- end;
-
- TUCComponentsVar = String;
-
- TUCNotAllowed = (naInvisible, naDisabled);
-
- TUCControls = class(TComponent)
- private
- FGroupName: String;
- FComponents: TUCComponentsVar;
- FUserControl: TUserControl;
- FNotAllowed: TUCNotAllowed;
- function GetAccessType: String;
- function GetActiveForm: String;
- procedure SetGroupName(const Value: String);
- procedure SetUserControl(const Value: TUserControl);
- protected
- procedure Loaded; override;
- procedure Notification(AComponent: TComponent; AOperation: TOperation); override;
- public
- destructor Destroy; override;
- procedure ApplyRights;
- procedure LockControls;
- procedure ListComponents(Form: String; List: TStrings);
- published
- property AccessType: String read GetAccessType;
- property ActiveForm: String read GetActiveForm;
- property GroupName: String read FGroupName write SetGroupName;
- property UserControl: TUserControl read FUserControl write SetUserControl;
- property Components: TUCComponentsVar read FComponents write FComponents;
- property NotAllowed: TUCNotAllowed read FNotAllowed write FNotAllowed default naInvisible;
- end;
-
- TUCUsersLogged = class(TPersistent)
- //Cesar: 12/07/2005: classe que armazena os usuarios logados no sistema
- private
- FUserControl: TUserControl;
- FAtive: Boolean;
- fMultipleLogin: Boolean;
- procedure AddCurrentUser;
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- procedure DelCurrentUser;
- procedure CriaTableUserLogado;
- function UsuarioJaLogado(ID: Integer): Boolean;
- published
- property Active: Boolean read FAtive write FAtive default True;
- property MultipleLogin: Boolean read fMultipleLogin write fMultipleLogin default True;
- end;
-
-function Decrypt(const S: ansistring; Key: Word): ansistring;
-function Encrypt(const S: ansistring; Key: Word): ansistring;
-function MD5Sum(strValor: String): String;
-
-{ TODO -oLuiz -cUpgrade : Mudar o GetLoginName para a Unit principal }
-
-implementation
-
-{$R UCLock.res}
-
-uses
- DBGrids,
- Dialogs,
- LoginWindow_U,
- MsgRecForm_U,
- MsgsForm_U,
- pUCGeral,
- TrocaSenha_U,
- UserPermis_U;
-
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUSerControl'} {$ENDIF}
-
-{ TUserControl }
-
-constructor TUserControl.Create(AOwner: TComponent);
-begin
- inherited;
- FCurrentUser := TUCCurrentUser.Create(Self);
- FControlRight := TUCControlRight.Create(Self);
- FLogin := TUCLogin.Create(Self);
- FLogControl := TUCLogControl.Create(Self);
- FUser := TUCUser.Create(Self);
- FUserProfile := TUCUserProfile.Create(Self);
- FUserPasswordChange := TUCUserPasswordChange.Create(Self);
- FUsersLogged := TUCUsersLogged.Create(Self);
- FUsersLogoff := TUCUserLogoff.Create(Self);
- FUserSettings := TUCUserSettings.Create(Self);
- FNotAllowedItems := TUCNotAllowedItems.Create(Self);
- FExtraRights := TUCExtraRights.Create(Self);
- FTableUsers := TUCTableUsers.Create(Self);
- FTableRights := TUCTableRights.Create(Self);
- FTableUsersLogged := TUCTableUsersLogged.Create(Self);
-
-
- if csDesigning in ComponentState then
- begin
- with TableUsers do
- begin
- if TableName = '' then
- TableName := RetornaLingua(fLanguage, 'Const_TableUsers_TableName');
- if FieldUserID = '' then
- FieldUserID := RetornaLingua(fLanguage, 'Const_TableUsers_FieldUserID');
- if FieldUserName = '' then
- FieldUserName := RetornaLingua(fLanguage, 'Const_TableUsers_FieldUserName');
- if FieldLogin = '' then
- FieldLogin := RetornaLingua(fLanguage, 'Const_TableUsers_FieldLogin');
- if FieldPassword = '' then
- FieldPassword := RetornaLingua(fLanguage, 'Const_TableUsers_FieldPassword');
- if FieldEmail = '' then
- FieldEmail := RetornaLingua(fLanguage, 'Const_TableUsers_FieldEmail');
- if FieldPrivileged = '' then
- FieldPrivileged := RetornaLingua(fLanguage, 'Const_TableUsers_FieldPrivileged');
- if FieldTypeRec = '' then
- FieldTypeRec := RetornaLingua(fLanguage, 'Const_TableUsers_FieldTypeRec');
- if FieldProfile = '' then
- FieldProfile := RetornaLingua(fLanguage, 'Const_TableUsers_FieldProfile');
- if FieldKey = '' then
- FieldKey := RetornaLingua(fLanguage, 'Const_TableUsers_FieldKey');
-
- if FieldDateExpired = '' then
- FieldDateExpired := RetornaLingua(fLanguage, 'Const_TableUsers_FieldDateExpired'); {Vicente Barros Leonel}
-
- if FieldUserExpired = '' then
- FieldUserExpired := RetornaLingua(fLanguage, 'Const_TableUser_FieldUserExpired'); {Vicente Barros Leonel}
-
- if FieldUserDaysSun = '' then
- FieldUserDaysSun := RetornaLingua(fLanguage, 'Const_TableUser_FieldUserDaysSun'); { Vicente Barros leoenl }
-
- if FieldUserInative = '' then
- FieldUserInative := RetornaLingua(fLanguage, 'Const_TableUser_FieldUserInative'); { Vicente Barros leoenl }
- end;
-
- with TableRights do
- begin
- if TableName = '' then
- TableName := RetornaLingua(fLanguage, 'Const_TableRights_TableName');
- if FieldUserID = '' then
- FieldUserID := RetornaLingua(fLanguage, 'Const_TableRights_FieldUserID');
- if FieldModule = '' then
- FieldModule := RetornaLingua(fLanguage, 'Const_TableRights_FieldModule');
- if FieldComponentName = '' then
- FieldComponentName := RetornaLingua(fLanguage, 'Const_TableRights_FieldComponentName');
- if FieldFormName = '' then
- FieldFormName := RetornaLingua(fLanguage, 'Const_TableRights_FieldFormName');
- if FieldKey = '' then
- FieldKey := RetornaLingua(fLanguage, 'Const_TableRights_FieldKey');
- end;
-
- with TableUsersLogged do
- begin
- if TableName = '' then
- TableName := RetornaLingua(fLanguage, 'Const_TableUsersLogged_TableName');
- if FieldLogonID = '' then
- FieldLogonID := RetornaLingua(fLanguage, 'Const_TableUsersLogged_FieldLogonID');
- if FieldUserID = '' then
- FieldUserID := RetornaLingua(fLanguage, 'Const_TableUsersLogged_FieldUserID');
- if FieldApplicationID = '' then
- FieldApplicationID := RetornaLingua(fLanguage, 'Const_TableUsersLogged_FieldApplicationID');
- if FieldMachineName = '' then
- FieldMachineName := RetornaLingua(fLanguage, 'Const_TableUsersLogged_FieldMachineName');
- if FieldData = '' then
- FieldData := RetornaLingua(fLanguage, 'Const_TableUsersLogged_FieldData');
- end;
-
-
- if LogControl.TableLog = '' then
- LogControl.TableLog := 'UCLog';
- if ApplicationID = '' then
- ApplicationID := 'ProjetoNovo';
- if Login.InitialLogin.User = '' then
- Login.InitialLogin.User := 'admin';
- if Login.InitialLogin.Password = '' then
- Login.InitialLogin.Password := '123mudar';
- if Login.InitialLogin.Email = '' then
- Login.InitialLogin.Email := 'usercontrol@usercontrol.net';
-
- FLoginMode := lmActive;
- FCriptografia := cPadrao;
- FAutoStart := False;
- FUserProfile.Active := True;
- FLogControl.Active := True;
- FUser.UsePrivilegedField := False;
- FUser.ProtectAdministrator := True;
- FUsersLogged.Active := True;
- NotAllowedItems.MenuVisible := True;
- NotAllowedItems.ActionVisible := True;
- end
- else
- begin
- FControlList := TList.Create;
- FLoginMonitorList := TList.Create;
- end;
-
- UCSettings.IniSettings(UserSettings);
-end;
-
-procedure TUserControl.Loaded;
-var
- Contador: Integer;
-begin
- inherited;
- if not (csDesigning in ComponentState) then
- begin
- if not Assigned(DataConnector) then
- raise Exception.Create(RetornaLingua(fLanguage, 'MsgExceptConnector'));
-
- if ApplicationID = '' then
- raise Exception.Create(RetornaLingua(fLanguage, 'MsgExceptAppID'));
-
- if ((not Assigned(ControlRight.ActionList)) and
- (not Assigned(ControlRight.ActionManager)) and
- (not Assigned(ControlRight.MainMenu)) and
- (not Assigned(ControlRight.ActionMainMenuBar))) then
- raise Exception.Create(Format(RetornaLingua(fLanguage, 'MsgExceptPropriedade'), ['ControlRight']));
-
- for Contador := 0 to Pred(Owner.ComponentCount) do
- if Owner.Components[Contador] is TUCSettings then
- begin
- Language := TUCSettings(Owner.Components[Contador]).Language;// torna a linguage do UCSETTINGS como padrão
- FUserSettings.BancoDados := TUCSettings(Owner.Components[Contador]).BancoDados;
- ApplySettings(TUCSettings(Owner.Components[Contador]));
- end;
-
- if Assigned(User.MenuItem) and (not Assigned(User.MenuItem.OnClick)) then
- User.MenuItem.OnClick := ActionCadUser;
-
- if Assigned(User.Action) and (not Assigned(User.Action.OnExecute)) then
- User.Action.OnExecute := ActionCadUser;
-
- if ((not Assigned(User.Action)) and (not Assigned(User.MenuItem))) then
- raise Exception.Create(Format(RetornaLingua(fLanguage, 'MsgExceptPropriedade'), ['User']));
-
- if Assigned(UserPasswordChange.MenuItem) and (not Assigned(UserPasswordChange.MenuItem.OnClick)) then
- UserPasswordChange.MenuItem.OnClick := ActionTrocaSenha;
-
- if Assigned(UserPasswordChange.Action) and (not Assigned(UserPasswordChange.Action.OnExecute)) then
- UserPasswordChange.Action.OnExecute := ActionTrocaSenha;
-
- { By Vicente Barros Leonel }
- if Assigned(UsersLogoff.MenuItem) and (not Assigned(UsersLogoff.MenuItem.OnClick)) then
- UsersLogoff.MenuItem.OnClick := ActionLogoff;
-
- if Assigned(UsersLogoff.Action) and (not Assigned(UsersLogoff.Action.OnExecute)) then
- UsersLogoff.Action.OnExecute := ActionLogoff;
-
- if ((not Assigned(UserPasswordChange.Action)) and (not Assigned(UserPasswordChange.MenuItem))) then
- raise Exception.Create(Format(RetornaLingua(fLanguage, 'MsgExceptPropriedade'), ['UserPasswordChange']));
-
- if ((not Assigned(UsersLogoff.Action)) and (not Assigned(UsersLogoff.MenuItem))) then
- raise Exception.Create(Format(RetornaLingua(fLanguage, 'MsgExceptPropriedade'), ['UsersLogoff']));
-
- with TableUsers do
- begin
- if TableName = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable'));
- if FieldUserID = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldUserID***');
- if FieldUserName = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldUserName***');
- if FieldLogin = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldLogin***');
- if FieldPassword = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldPassword***');
- if FieldEmail = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldEmail***');
- if FieldPrivileged = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldPrivileged***');
- if FieldTypeRec = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldTypeRec***');
- if FieldKey = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldKey***');
- if FieldProfile = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldProfile***');
-
- if FieldDateExpired = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldDateExpired***');
-
- if FieldUserExpired = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldUserExpired***');
-
- if FieldUserDaysSun = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldUserDaysSun***');
-
- if FieldUserInative = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptUsersTable') + #13 + #10 + 'FieldUserInative***');
-
- end;
-
- with TableRights do
- begin
- if TableName = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptRightsTable'));
- if FieldUserID = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptRightsTable') + #13 + #10 + 'FieldProfile***');
- if FieldModule = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptRightsTable') + #13 + #10 + 'FieldModule***');
- if FieldComponentName = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptRightsTable') + #13 + #10 + 'FieldComponentName***');
- if FieldFormName = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptRightsTable') + #13 + #10 + 'FieldFormName***');
- if FieldKey = '' then
- Exception.Create(RetornaLingua(fLanguage, 'MsgExceptRightsTable') + #13 + #10 + 'FieldKey***');
- end;
-
- if Assigned(OnStartApplication) then
- OnStartApplication(self);
-
- //desviar para thread monitorando conexao ao banco qmd 30/01/2004
- if FAutoStart then
- begin
- FThUCRun := TUCExecuteThread.Create(True);
- FThUCRun.AOwner := Self;
- FThUCRun.FreeOnTerminate := True;
- FThUCRun.Resume;
- end;
- end;
-end;
-
-procedure TUserControl.ActionCadUser(Sender: TObject);
-begin
- ShowNewConfig;
-end;
-
-procedure TUserControl.ActionEsqueceuSenha(Sender: TObject);
-var
- FDataset: TDataset;
-begin
- FDataset := DataConnector.UCGetSQLDataset('Select * from ' + TableUsers.TableName + ' Where ' +
- TableUsers.FieldLogin + ' = ' + QuotedStr(TfrmLoginWindow(FFormLogin).EditUsuario.Text));
- try
- if not FDataset.IsEmpty then
- { TODO -oLuiz -cUpgrade : Consertar o método EnviarEsqueceuSenha para usar a criptografia md5 }
- MailUserControl.EnviaEsqueceuSenha(FDataset.FieldByName(TableUsers.FieldUserName).AsString,
- FDataset.FieldByName(TableUsers.FieldLogin).AsString,
- FDataset.FieldByName(TableUsers.FieldPassword).AsString,
- FDataset.FieldByName(TableUsers.FieldEmail).AsString, '', EncryptKey)
-
- else
- MessageDlg(UserSettings.CommonMessages.InvalidLogin, mtWarning, [mbOK], 0);
- finally
- FDataset.Close;
- FDataset.Free;
- end;
-end;
-
-procedure TUserControl.ActionTrocaSenha(Sender: TObject);
-begin
- if Assigned(OnCustomChangePasswordForm) then
- OnCustomChangePasswordForm(Self, FFormTrocarSenha);
-
- if FFormTrocarSenha = nil then
- CriaFormTrocarSenha;
-
- FFormTrocarSenha.ShowModal;
- FreeAndNil(FFormTrocarSenha);
-end;
-
-function TUserControl.ExisteUsuario(Login: String): Boolean;
-var
- SQLstmt: String;
- DataSet: TDataSet;
-begin
- SQLstmt := Format('SELECT %s.%s FROM %s WHERE %s.%s=%s',
- [Self.TableUsers.TableName,
- Self.TableUsers.FieldLogin,
- Self.TableUsers.TableName,
- Self.TableUsers.TableName,
- Self.TableUsers.FieldLogin,
- QuotedStr(Login)]);
-
- DataSet := Self.DataConnector.UCGetSQLDataset(SQLstmt);
- try
- Result := (Dataset.RecordCount > 0);
- finally
- SysUtils.FreeAndNil(DataSet);
- end;
-end;
-
-function TUserControl.GetLocalComputerName: String;
-var
- Count: DWORD;
- Buffer: String;
-begin
- Count := MAX_COMPUTERNAME_LENGTH + 1;
- SetLength(Buffer, Count);
- if GetComputerName(PChar(Buffer), Count) then
- SetLength(Buffer, StrLen(PChar(Buffer)))
- else
- Buffer := '';
- Result := Buffer;
-end;
-
-function TUserControl.GetLocalUserName: String;
-var
- Count: DWORD;
- Buffer: String;
-begin
- Count := 254;
- SetLength(Buffer, Count);
- if GetUserName(PChar(Buffer), Count) then
- SetLength(Buffer, StrLen(PChar(Buffer)))
- else
- Buffer := '';
- Result := Buffer;
-end;
-
-procedure TUserControl.CriaFormTrocarSenha;
-begin
- FFormTrocarSenha := TTrocaSenha.Create(Self);
- with Self.UserSettings.ChangePassword do
- begin
- TTrocaSenha(FFormTrocarSenha).fUsercontrol := Self;
- TTrocaSenha(FFormTrocarSenha).Caption := WindowCaption;
- TTrocaSenha(FFormTrocarSenha).lbDescricao.Caption := LabelDescription;
- TTrocaSenha(FFormTrocarSenha).lbSenhaAtu.Caption := LabelCurrentPassword;
- TTrocaSenha(FFormTrocarSenha).lbNovaSenha.Caption := LabelNewPassword;
- TTrocaSenha(FFormTrocarSenha).lbConfirma.Caption := LabelConfirm;
- TTrocaSenha(FFormTrocarSenha).btGrava.Caption := BtSave;
- TTrocaSenha(FFormTrocarSenha).btCancel.Caption := BtCancel;
- TTrocaSenha(FFormTrocarSenha).ForcarTroca := False; // Vicente Barros Leonel
- end;
- TTrocaSenha(FFormTrocarSenha).Position := Self.UserSettings.WindowsPosition; // Adicionado por Luiz Benevenuto
-
- TTrocaSenha(FFormTrocarSenha).btGrava.OnClick := ActionTSBtGrava;
- if CurrentUser.Password = '' then
- TTrocaSenha(FFormTrocarSenha).EditAtu.Enabled := False;
-end;
-
-procedure TUserControl.ActionTSBtGrava(Sender: TObject);
-var
- AuxPass: String;
-begin
- { Pelo que eu analizei, a gravação da senha no Banco de Dados e feita criptografada
- Qdo a criptografia e padrão, a funcao RegistraCurrentUser descriptografa a senha atual
- agora quando criptografia e MD5SUM, devemos criptografar a senha atual vinda do formulario de
- troca de senha para podemoscomparar com a senha atual da classe TUCCurrentUser
- Modificação Feita por Vicente Barros Leonel
- }
- case Self.Criptografia of // por Vicente Barros Leonel
- cPadrao: AuxPass := TTrocaSenha(FFormTrocarSenha).EditAtu.Text;
- cMD5: AuxPass := MD5Sum(TTrocaSenha(FFormTrocarSenha).EditAtu.Text);
- end;
-
- if CurrentUser.Password <> AuxPass then //MD5Sum(TTrocaSenha(FFormTrocarSenha).EditAtu.Text) then Vicente Barros Leonel
- begin
- MessageDlg(UserSettings.CommonMessages.ChangePasswordError.InvalidCurrentPassword, mtWarning, [mbOK], 0);
- TTrocaSenha(FFormTrocarSenha).EditAtu.SetFocus;
- Exit;
- end;
-
- if TTrocaSenha(FFormTrocarSenha).EditNova.Text <> TTrocaSenha(FFormTrocarSenha).EditConfirma.Text then
- begin
- MessageDlg(UserSettings.CommonMessages.ChangePasswordError.InvalidNewPassword, mtWarning, [mbOK], 0);
- TTrocaSenha(FFormTrocarSenha).EditNova.SetFocus;
- Exit;
- end;
-
- case Self.Criptografia of // por Vicente Barros Leonel
- cPadrao: AuxPass := TTrocaSenha(FFormTrocarSenha).EditNova.Text;
- cMD5: AuxPass := MD5Sum(TTrocaSenha(FFormTrocarSenha).EditNova.Text);
- end;
-
- if AuxPass = CurrentUser.Password then
- begin
- MessageDlg(UserSettings.CommonMessages.ChangePasswordError.NewEqualCurrent, mtWarning, [mbOK], 0);
- TTrocaSenha(FFormTrocarSenha).EditNova.SetFocus;
- Exit;
- end;
-
- if (UserPasswordChange.ForcePassword) and (TTrocaSenha(FFormTrocarSenha).EditNova.Text = '') then
- begin
- MessageDlg(UserSettings.CommonMessages.ChangePasswordError.PasswordRequired, mtWarning, [mbOK], 0);
- TTrocaSenha(FFormTrocarSenha).EditNova.Text;
- Exit;
- end;
-
- if Length(TTrocaSenha(FFormTrocarSenha).EditNova.Text) < UserPasswordChange.MinPasswordLength then
- begin
- MessageDlg(Format(UserSettings.CommonMessages.ChangePasswordError.MinPasswordLength, [UserPasswordChange.MinPasswordLength]), mtWarning, [mbOK], 0);
- TTrocaSenha(FFormTrocarSenha).EditNova.SetFocus;
- Exit;
- end;
-
- if Pos(LowerCase(TTrocaSenha(FFormTrocarSenha).EditNova.Text), 'abcdeasdfqwerzxcv1234567890321654987teste' + LowerCase(CurrentUser.UserName) + LowerCase(CurrentUser.UserLogin)) > 0 then
- begin
- MessageDlg(UserSettings.CommonMessages.ChangePasswordError.InvalidNewPassword, mtWarning, [mbOK], 0);
- TTrocaSenha(FFormTrocarSenha).EditNova.SetFocus;
- Exit;
- end;
-
- if Assigned(OnChangePassword) then
- OnChangePassword(Self, CurrentUser.UserID, CurrentUser.UserLogin, CurrentUser.Password, TTrocaSenha(FFormTrocarSenha).EditNova.Text);
-
- ChangePassword(CurrentUser.UserID, TTrocaSenha(FFormTrocarSenha).EditNova.Text);
-
- case Self.Criptografia of // Por Vicente Barros Leonel
- cPadrao: CurrentUser.Password := TTrocaSenha(FFormTrocarSenha).EditNova.Text;
- cMD5: CurrentUser.Password := MD5Sum(TTrocaSenha(FFormTrocarSenha).EditNova.Text);
- end;
-
-
- if CurrentUser.Password = '' then
- MessageDlg(Format(UserSettings.CommonMessages.BlankPassword, [CurrentUser.UserLogin]), mtInformation, [mbOK], 0)
- else
- MessageDlg(UserSettings.CommonMessages.PasswordChanged, mtInformation, [mbOK], 0);
-
- if TTrocaSenha(FFormTrocarSenha).ForcarTroca = True then
- TTrocaSenha(FFormTrocarSenha).ForcarTroca := False; // Vicente Barros Leonel
-
-
- if (Assigned(FMailUserControl)) and (FMailUserControl.SenhaTrocada.Ativo) then
- with CurrentUser do
- try
- FMailUserControl.EnviaEmailSenhaTrocada(Username, CurrentUser.UserLogin, TTrocaSenha(FFormTrocarSenha).EditNova.Text, Email, '', EncryptKey);
- except
- on e: Exception do
- Log(e.Message, 2);
- end;
-
-
- TTrocaSenha(FFormTrocarSenha).Close;
-end;
-
-procedure TUserControl.SetUserSettings(const Value: TUCUserSettings);
-begin
- UserSettings := Value;
-end;
-
-procedure TUserControl.SetfrmLoginWindow(Form: TCustomForm);
-begin
- with UserSettings.Login, Form as TfrmLoginWindow do
- begin
- Caption := WindowCaption;
- LbUsuario.Caption := LabelUser;
- LbSenha.Caption := LabelPassword;
- btOK.Caption := UserSettings.Login.BtOk;
- BtCancela.Caption := BtCancel;
- if LeftImage <> nil then
- ImgLeft.Picture.Assign(LeftImage);
- if BottomImage <> nil then
- ImgBottom.Picture.Assign(BottomImage);
- if TopImage <> nil then
- ImgTop.Picture.Assign(TopImage);
-
- if Assigned(FMailUserControl) then
- begin
- lbEsqueci.Visible := FMailUserControl.EsqueceuSenha.Ativo;
- lbEsqueci.Caption := FMailUserControl.EsqueceuSenha.LabelLoginForm;
- end;
-
- StatusBar.Visible := Login.FMaxLoginAttempts > 0; // by vicente barros leonel
- StatusBar.Panels[1].Text := '0'; // by vicente barros leonel
- StatusBar.Panels[3].Text := IntToStr(Login.FMaxLoginAttempts); // by vicente barros leonel
- end;
-end;
-
-procedure TUserControl.Notification(AComponent: TComponent; AOperation: TOperation);
-begin
- if (AOperation = opRemove) then
- begin
- if AComponent = User.MenuItem then
- User.MenuItem := nil;
- if AComponent = User.Action then
- User.Action := nil;
- if AComponent = UserPasswordChange.Action then
- UserPasswordChange.Action := nil;
- if AComponent = UserPasswordChange.MenuItem then
- UserPasswordChange.MenuItem := nil;
-
- { By Vicente Barros Leonel }
- if AComponent = UsersLogoff.Action then
- UsersLogoff.Action := nil;
- if AComponent = UsersLogoff.MenuItem then
- UsersLogoff.MenuItem := nil;
-
-
- if AComponent = ControlRight.MainMenu then
- ControlRight.MainMenu := nil;
- if AComponent = ControlRight.ActionList then
- ControlRight.ActionList := nil;
- {.$IFDEF UCACTMANAGER}
- if AComponent = ControlRight.ActionManager then
- ControlRight.ActionManager := nil;
- if AComponent = ControlRight.ActionMainMenuBar then
- ControlRight.ActionMainMenuBar := nil;
- {.$ENDIF}
-
- if AComponent = FDataConnector then
- begin
- if CurrentUser.UserID <> 0 then
- UsersLogged.DelCurrentUser;
- FDataConnector := nil;
- end;
-
- if AComponent = FMailUserControl then
- FMailUserControl := nil;
-
- end;
- inherited Notification(AComponent, AOperation);
-end;
-
-
-procedure TUserControl.ActionLogoff(Sender: TObject);
-begin
- Self.Logoff;
-end;
-
-procedure TUserControl.Log(MSG: String; Level: Integer);
-begin
- // Adicionado ao log a identificação da Aplicação
- if not LogControl.Active then
- Exit;
-
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL('INSERT INTO ' + LogControl.TableLog +
- '(APPLICATIONID, IDUSER, MSG, DATA, NIVEL) VALUES ( ' +
- QuotedStr(Self.ApplicationID) + ', ' +
- IntToStr(CurrentUser.UserID) + ', ' +
- QuotedStr(Copy(MSG, 1, 250)) + ', ' +
- QuotedStr(FormatDateTime('YYYYMMDDhhmmss', now)) + ', ' +
- IntToStr(Level) + ')');
-end;
-
-procedure TUserControl.RegistraCurrentUser(Dados: TDataset);
-var
- SQLStmt: String;
-begin
- with CurrentUser do
- begin
- UserID := Dados.FieldByName(TableUsers.FieldUserID).AsInteger;
- UserName := Dados.FieldByName(TableUsers.FieldUserName).AsString;
- UserLogin := Dados.FieldByName(TableUsers.FieldLogin).AsString;
- DateExpiration := StrToDateDef(Dados.FieldByName(TableUsers.FieldDateExpired).AsString, Now);
- UserNotExpired := Dados.FieldByName(TableUsers.FieldUserExpired).AsInteger = 1; //by vicente barros leonel
- UserDaysExpired := Dados.FieldByName(TableUsers.FieldUserDaysSun).AsInteger;
-
- case Self.Criptografia of
- cPadrao: Password := Decrypt(Dados.FieldByName(TableUsers.FieldPassword).AsString, EncryptKey);
- cMD5: Password := Dados.FieldByName(TableUsers.FieldPassword).AsString;
- end;
-
- Email := Dados.FieldByName(TableUsers.FieldEmail).AsString;
- Privileged := StrToBool(Dados.FieldByName(TableUsers.FieldPrivileged).AsString);
- Profile := Dados.FieldByName(TableUsers.FieldProfile).AsInteger;
-
- SQLStmt := Format('SELECT %s AS ObjName,' +
- ' %s AS UCKey,' +
- ' %s AS UserID' +
- ' FROM %s' +
- ' WHERE %s = %s AND %s = %s',
- [TableRights.FieldComponentName,
- TableRights.FieldKey,
- TableRights.FieldUserID,
- TableRights.TableName,
- TableRights.FieldUserID,
- IntToStr(UserID),
- TableRights.FieldModule,
- QuotedStr(ApplicationID)]);
-
- PerfilUsuario := DataConnector.UCGetSQLDataset(SQLStmt);
-
- // Aplica Permissoes do Perfil do usuario
- if CurrentUser.Profile > 0 then
- begin
- SQLStmt := Format('SELECT %s AS ObjName,' +
- ' %s AS UCKey,' +
- ' %s AS UserID' +
- ' FROM %s' +
- ' WHERE %s = %s AND %s = %s',
- [TableRights.FieldComponentName,
- TableRights.FieldKey,
- TableRights.FieldUserID,
- TableRights.TableName,
- TableRights.FieldUserID,
- IntToStr(CurrentUser.Profile),
- TableRights.FieldModule,
- QuotedStr(ApplicationID)]);
-
- PerfilGrupo := DataConnector.UCGetSQLDataset(SQLStmt);
- end
- else
- PerfilGrupo := nil;
-
- if Assigned(OnLoginSucess) then
- OnLoginSucess(Self, UserID, UserLogin, UserName, Password, EMail, Privileged);
- end;
-
- //Cesar: 13/07/2005
- if (CurrentUser.UserID <> 0) then
- UsersLogged.AddCurrentUser;
-
- ApplyRightsUCControlMonitor;
- NotificationLoginMonitor;
-
- if ((FLogin.fDateExpireActive = True) and (Date > CurrentUser.DateExpiration) and (CurrentUser.UserNotExpired = False)) then
- begin { By Vicente Barros Leonel }
- MessageDlg(UserSettings.CommonMessages.PasswordExpired, mtInformation, [mbOK], 0);
-
- if FFormTrocarSenha = nil then
- CriaFormTrocarSenha;
- TTrocaSenha(FFormTrocarSenha).ForcarTroca := True;
- FFormTrocarSenha.ShowModal;
- FreeAndNil(FFormTrocarSenha);
- end;
-end;
-
-procedure TUserControl.TryAutoLogon;
-begin
- if VerificaLogin(Login.AutoLogin.User, Login.AutoLogin.Password) <> 0 then
- begin
- if Login.AutoLogin.MessageOnError then
- MessageDlg(UserSettings.CommonMessages.AutoLogonError, mtWarning, [mbOK], 0);
- ShowLogin;
- end;
-end;
-
-function TUserControl.VerificaLogin(User, Password: String): Integer;//Boolean;
-var
- Senha: String;
- Key: String;
- SQLStmt: String;
- Dataset: TDataset;
- VerifKey: String;
-begin
- case Self.Criptografia of
- cPadrao: Senha := TableUsers.FieldPassword + ' = ' + QuotedStr(Encrypt(Password, EncryptKey));
- cMD5: Senha := TableUsers.FieldPassword + ' = ' + QuotedStr(MD5Sum(Password));
- end;
-
- SQLStmt := 'SELECT * FROM ' + TableUsers.TableName + ' WHERE ' +
- TableUsers.FieldLogin + ' = ' + QuotedStr(User) + ' AND ' + Senha;
-
- Dataset := DataConnector.UCGetSQLDataset(SQLStmt);
- with Dataset do
- try
- if not IsEmpty then
- begin
- case Self.Criptografia of
- cPadrao:
- begin
- Key := Decrypt(Dataset.FieldByName(TableUsers.FieldKey).AsString, EncryptKey);
- VerifKey := Dataset.FieldByName(TableUsers.FieldUserID).AsString +
- Dataset.FieldByName(TableUsers.FieldLogin).AsString +
- Decrypt(Dataset.FieldByName(TableUsers.FieldPassword).AsString, EncryptKey);
- end;
- cMD5:
- begin
- Key := Dataset.FieldByName(TableUsers.FieldKey).AsString;
- VerifKey := MD5Sum(Dataset.FieldByName(TableUsers.FieldUserID).AsString +
- Dataset.FieldByName(TableUsers.FieldLogin).AsString +
- Dataset.FieldByName(TableUsers.FieldPassword).AsString);
- end;
- end;
- if Key <> VerifKey then
- begin
- Result := 1;
- if Assigned(OnLoginError) then
- OnLoginError(Self, User, Password);
- end
- else
- begin
- if DataSet.FieldByName(TableUsers.FieldUserInative).AsInteger = 0 then
- begin
-
- if ((fUsersLogged.Active = True) and (fUsersLogged.MultipleLogin = False)) then
- begin
- //verifica se o usuário esta logado
- if fUsersLogged.UsuarioJaLogado(Dataset.FieldByName(TableUsers.FieldUserID).AsInteger) = True then
- begin
- MessageDlg('Atenção: Seu usuário encontra-se logado em outra estação, verifique.', mtInformation, [mbOK], 0);
- RegistraCurrentuser(Dataset);
- Result := 0;
- //Aqui deve-se colocar uma mensagem para derrubar a outra conexão
- //Pensando ainda como fazer :)
- end
- else
- begin
- RegistraCurrentuser(Dataset);
- Result := 0;
- end;
- end
- else
- begin
- RegistraCurrentuser(Dataset); {Para voltar o codigo anterior, basta apagar e colocar esta duas linhas :) }
- Result := 0;
- end;
-
- end
- else
- Result := 2;
- end;
- end
- else
- begin
- Result := 1;
- if Assigned(OnLoginError) then
- OnLoginError(Self, User, Password);
- end;
- finally
- Close;
- Free;
- end;
-end;
-
-procedure TUserControl.Logoff;
-begin
- if Assigned(onLogoff) then
- onLogoff(Self, CurrentUser.UserID);
-
- LockControlsUCControlMonitor;
- UsersLogged.DelCurrentUser;
- CurrentUser.UserID := 0;
- if LoginMode = lmActive then
- ShowLogin;
- ApplyRights;
-end;
-
-function TUserControl.AddUser(Login, Password, Name, Mail: String; Profile, UserExpired, DaysExpired: Integer; PrivUser: Boolean): Integer;
-var
- Key: String;
- SQLStmt: String;
- Senha: String;
-begin
- case Self.Login.CharCasePass of
- ecNormal: ;
- ecUpperCase: Password := UpperCase(Password);
- ecLowerCase: Password := LowerCase(Password);
- end;
-
- case Self.Login.CharCaseUser of
- ecNormal: ;
- ecUpperCase: Login := UpperCase(Login);
- ecLowerCase: Login := LowerCase(Login);
- end;
-
- with DataConnector.UCGetSQLDataset('Select Max(' + TableUsers.FieldUserID + ') as IdUser from ' + TableUsers.TableName) do
- begin
- Result := StrToIntDef(FieldByName('idUser').AsString, 0) + 1;
- Close;
- Free;
- end;
-
- case Self.Criptografia of
- cPadrao:
- begin
- Key := Encrypt(IntToStr(Result) + Login + Password, EncryptKey);
- Senha := Encrypt(Password, EncryptKey);
- end;
- cMD5:
- begin
- Key := MD5Sum(IntToStr(Result) + Login + MD5Sum(Password));
- Senha := MD5Sum(Password);
- end;
- end;
-
- with TableUsers do
- begin
- SQLStmt := Format('INSERT INTO %s( %s, %s, %s, %s, %s, %s, %s, %s, %s , %s , %s , %s , %s ) VALUES(%d, %s, %s, %s, %s, %s, %d, %s, %s , %s , %d , %d , %s )',
- [TableName,
- FieldUserID,
- FieldUserName,
- FieldLogin,
- FieldPassword,
- FieldEmail,
- FieldPrivileged,
- FieldProfile,
- FieldTypeRec,
- FieldKey,
- FieldDateExpired, { By Vicente Barros Leonel }
- FieldUserExpired,
- FieldUserDaysSun,
- FieldUserInative,
- Result,
- QuotedStr(Name),
- QuotedStr(Login),
- QuotedStr(Senha),
- QuotedStr(Mail),
- BoolToStr(PrivUser),
- Profile,
- QuotedStr('U'),
- QuotedStr(Key),
- QuotedStr(FormatDateTime('dd/mm/yyyy', Date + FLogin.fDaysOfSunExpired)), {By vicente Barros Leonel }
- UserExpired,
- DaysExpired, '0']); {By vicente Barros Leonel }
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(SQLStmt);
- end;
-
- if Assigned(OnAddUser) then
- OnAddUser(Self, Login, Password, Name, Mail, Profile, Privuser);
-end;
-
-
-procedure TUserControl.ChangePassword(IDUser: Integer; NewPassword: String);
-var
- Login: String;
- Senha: String;
- Key: String;
- SQLStmt: String;
-begin
- inherited;
-
- case Self.Login.CharCasePass of
- ecNormal: ;
- ecUpperCase: NewPassword := UpperCase(NewPassword);
- ecLowerCase: NewPassword := LowerCase(NewPassword);
- end;
-
- SQLStmt := 'Select ' + TableUsers.FieldLogin + ' as login, ' +
- TableUsers.FieldPassword + ' as senha from ' + TableUsers.TableName + ' ' +
- 'where ' + TableUsers.FieldUserID + ' = ' + IntToStr(IdUser);
-
- with DataConnector.UCGetSQLDataset(SQLStmt) do
- begin
- Login := FieldByName('Login').AsString;
- case Self.Criptografia of
- cPadrao:
- begin
- Key := Encrypt(IntToStr(IDUser) + Login + NewPassword, EncryptKey);
- Senha := Decrypt(FieldByName('Senha').AsString, EncryptKey);
- end;
- cMD5:
- begin
- Key := MD5Sum(IntToStr(IDUser) + Login + MD5Sum(NewPassword));
- Senha := FieldByName('Senha').AsString;
- end;
- end;
-
- Close;
- Free;
- end;
-
- case Self.Criptografia of // Por Vicente Barros Leonel
- cPadrao:
- SQLStmt := 'Update ' + TableUsers.TableName +
- ' Set ' + TableUsers.FieldPassword + ' = ' + QuotedStr(Encrypt(
- NewPassword, EncryptKey)) +
- ', ' + TableUsers.FieldKey + ' = ' + QuotedStr(Key) +
- ', ' + TableUsers.FieldDateExpired + ' = ' +
- QuotedStr(FormatDateTime('dd/mm/yyyy', Date + FCurrentUser.UserDaysExpired)) + // by vicente barros leonel
- ' Where ' + TableUsers.FieldUserID + ' = ' + IntToStr(IdUser);
-
- cMD5: SQLStmt := 'Update ' + TableUsers.TableName +
- ' Set ' + TableUsers.FieldPassword + ' = ' + QuotedStr(MD5Sum(NewPassword)) +
- ', ' + TableUsers.FieldKey + ' = ' + QuotedStr(Key) +
- ', ' + TableUsers.FieldDateExpired + ' = ' +
- QuotedStr(FormatDateTime('dd/mm/yyyy', Date + FCurrentUser.UserDaysExpired)) + // by vicente barros leonel
- ' Where ' + TableUsers.FieldUserID + ' = ' + IntToStr(IdUser);
- end;
-
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(SQLStmt);
-
- if Assigned(onChangePassword) then
- OnChangePassword(Self, IdUser, Login, Senha, NewPassword);
-end;
-
-procedure TUserControl.ChangeUser(IDUser: Integer; Login, Name, Mail: String; Profile, UserExpired, UserDaysSun, Status: Integer; PrivUser: Boolean);
-var
- Key: String;
- Password: String;
- SQLStmt: String;
-begin
- SQLStmt := 'SELECT ' + TableUsers.FieldPassword +
- ' AS SENHA FROM ' + TableUsers.TableName + ' WHERE ' +
- TableUsers.FieldUserID + ' = ' + IntToStr(IdUser);
-
- with DataConnector.UCGetSQLDataset(SQLStmt) do
- begin
- case Self.Criptografia of
- cPadrao:
- begin
- Password := Decrypt(FieldByName('Senha').AsString, EncryptKey);
- Key := Encrypt(IntToStr(IDUser) + Login + Password, EncryptKey);
- end;
- cMD5:
- begin
- Password := FieldByName('Senha').AsString;
- Key := MD5Sum(IntToStr(IDUser) + Login + Password);
- end;
- end;
- Close;
- Free;
- end;
-
- with TableUsers do
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL('Update ' + TableName + ' Set ' +
- FieldUserName + ' = ' + QuotedStr(Name) + ', ' +
- FieldLogin + ' = ' + QuotedStr(Login) + ', ' +
- FieldEmail + ' = ' + QuotedStr(Mail) + ', ' +
- FieldPrivileged + ' = ' + BooltoStr(PrivUser) + ', ' +
- FieldProfile + ' = ' + IntToStr(Profile) + ', ' +
- FieldKey + ' = ' + QuotedStr(Key) + ', ' +
- FieldUserExpired + ' = ' + IntToStr(UserExpired) + ' , ' + // vicente barros leonel
- FieldUserDaysSun + ' = ' + IntToStr(UserDaysSun) + ' , ' +
- FieldUSerInative + ' = ' + IntToStr(Status) +
- ' where ' + FieldUserID + ' = ' + IntToStr(IdUser));
- if Assigned(OnChangeUser) then
- OnChangeUser(Self, IdUser, Login, Name, Mail, Profile, PrivUser);
-end;
-
-procedure TUserControl.CriaTabelaMsgs(const TableName: String);
-begin
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL('CREATE TABLE ' + TableName + ' ( ' +
- 'IdMsg ' + UserSettings.Type_Int + ' , ' +
- 'UsrFrom ' + UserSettings.Type_Int + ' , ' +
- 'UsrTo ' + UserSettings.Type_Int + ' , ' +
- 'Subject ' + UserSettings.Type_VarChar + '(50),' +
- 'Msg ' + UserSettings.Type_Varchar + '(255),' +
- 'DtSend ' + UserSettings.Type_Varchar + '(12),' +
- 'DtReceive ' + UserSettings.Type_Varchar + '(12) )');
-end;
-
-destructor TUserControl.Destroy;
-begin
- if not (csDesigning in ComponentState) then
- fUsersLogged.DelCurrentUser;
-
- FCurrentUser.Free;
- FControlRight.Free;
- FLogin.Free;
- FLogControl.Free;
- FUser.Free;
- FUserProfile.Free;
- FUserPasswordChange.Free;
- FUsersLogoff.Free;
- FUsersLogged.Free;
- FUserSettings.Free;
- FNotAllowedItems.Free;
- FExtraRights.Free;
- FTableUsers.Free;
- FTableRights.Free;
- FTableUsersLogged.Free;
-
- if Assigned(FControlList) then
- FControlList.Free;
-
- if Assigned(FLoginMonitorList) then
- FLoginMonitorList.Free;
-
- inherited Destroy;
-end;
-
-procedure TUserControl.SetExtraRights(Value: TUCExtraRights);
-begin
-
-end;
-
-procedure TUserControl.HideField(Sender: TField; var Text: String; DisplayText: Boolean);
-begin
- Text := '(Campo Bloqueado)';
-end;
-
-procedure TUserControl.StartLogin;
-begin
- CurrentUser.UserID := 0;
- ShowLogin;
- ApplyRights;
-end;
-
-procedure TUserControl.Execute;
-begin
- if Assigned(FThUCRun) then
- FThUCRun.Terminate;
- try
- if not DataConnector.UCFindTable(FTableRights.TableName) then
- CriaTabelaRights;
-
- if not DataConnector.UCFindTable(FTableRights.TableName + 'EX') then
- CriaTabelaRights(True); //extra rights table
-
- if not DataConnector.UCFindTable(TableUsersLogged.TableName) then
- UsersLogged.CriaTableUserLogado;
-
- if LogControl.Active then
- if not DataConnector.UCFindTable(LogControl.TableLog) then
- CriaTabelaLog;
-
- CriaTabelaUsuarios(DataConnector.UCFindTable(FTableUsers.TableName));
-
- //Atualizador de Versoes By vicente barros leonel
- AtualizarVersao;
-
-
- // testa campo KEY qmd 28-02-2005
- if FCheckValidationKey then
- DoCheckValidationField;
-
- finally
- if LoginMode = lmActive then
- if not Login.AutoLogin.Active then
- ShowLogin
- else
- TryAutoLogon;
- ApplyRights;
- end;
-end;
-
-procedure TUserControl.AtualizarVersao; // by vicente barros leonel
-var
- Sql: String;
- DataSet: TDataSet;
-begin
- { Procura o campo FieldUserDaysSun na tabela de usuarios se o mesmo não existi cria }
- try
- Sql := Format('select * from %s', [FTableUsers.TableName]);
- DataSet := DataConnector.UCGetSQLDataset(SQL);
-
- if DataSet.FindField(FTableUsers.FieldDateExpired) = nil then
- begin
- Sql := Format('alter table %s add %s %s(10)',
- [FTableUsers.TableName,
- FTableUsers.FieldDateExpired,
- UserSettings.Type_Char]);
-
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(Sql);
- Sql := Format('update %s set %s = %s where %s = ''U''',
- [FTableUsers.TableName,
- FTableUsers.FieldDateExpired,
- QuotedStr(FormatDateTime('dd/mm/yyyy', Date + FLogin.fDaysOfSunExpired)),
- FTableUsers.FieldTypeRec]);
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(Sql);
- end;
-
- if DataSet.FindField(FTableUsers.FieldUserExpired) = nil then
- begin
- Sql := Format('alter table %s add %s %s',
- [FTableUsers.TableName,
- FTableUsers.FieldUserExpired,
- UserSettings.Type_Int]);
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(Sql);
- Sql := Format('update %s set %s = 1 where %s = ''U''',
- [FTableUsers.TableName,
- FTableUsers.FieldUserExpired,
- FTableUsers.FieldTypeRec]);
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(Sql);
- end;
-
- if DataSet.FindField(FTableUsers.FieldUserDaysSun) = nil then
- begin // Cria campo setado no FieldUserDaysSun na tabela de usuarios
- Sql := Format('alter table %s add %s %s',
- [FTableUsers.TableName,
- FTableUsers.FieldUserDaysSun,
- UserSettings.Type_Int]);
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(Sql);
- Sql := Format('update %s set %s = 30 where %s = ''U''',
- [FTableUsers.TableName,
- FTableUsers.FieldUserDaysSun,
- FTableUsers.FieldTypeRec]);
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(Sql);
- end;
-
-
- if DataSet.FindField(FTableUsers.FieldUserInative) = nil then
- begin // Cria campo setado no FieldUserInative na tabela de usuarios
- Sql := Format('alter table %s add %s %s',
- [FTableUsers.TableName,
- FTableUsers.FieldUserInative,
- UserSettings.Type_Int]);
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(Sql);
-
- Sql := Format('update %s set %s = 0 where %s = ''U''',
- [FTableUsers.TableName,
- FTableUsers.FieldUserInative,
- FTableUsers.FieldTypeRec]);
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(Sql);
- end;
-
- finally
- FreeAndNil(DataSet);
- end;
-
-end;
-
-procedure TUserControl.DoCheckValidationField;
-var
- TempDS: TDataset;
- Key: String;
- Login: String;
- Senha: String;
- UserID: Integer;
-begin
- //verifica tabela de usuarios
- TempDS := DataConnector.UCGetSQLDataset('SELECT * FROM ' + TableUsers.TableName);
-
- if TempDS.FindField(TableUsers.FieldKey) = nil then
- begin
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL('ALTER TABLE ' + TableUsers.TableName + ' ADD ' + TableUsers.FieldKey + ' ' + UserSettings.Type_VarChar + ' (255)');
- TempDS.First;
- with TempDS do
- while not EOF do
- begin
- UserID := TempDS.FieldByName(TableUsers.FieldUserID).AsInteger;
- Login := TempDS.FieldByName(TableUsers.FieldLogin).AsString;
- case Self.Criptografia of
- cPadrao:
- begin
- Senha := Decrypt(TempDS.FieldByName(TableUsers.FieldPassword).AsString, EncryptKey);
- Key := Encrypt(IntToStr(UserID) + Login + Senha, EncryptKey);
- end;
- cMD5:
- begin
- Senha := TempDS.FieldByName(TableUsers.FieldPassword).AsString;
- Key := MD5Sum(IntToStr(UserID) + Login + Senha);
- end;
- end;
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(Format('UPDATE %s SET %s = %s WHERE %s = %d',
- [TableUsers.TableName,
- TableUsers.FieldKey,
- QuotedStr(Key),
- TableUsers.FieldUserID,
- TempDS.FieldByName(TableUsers.FieldUserID).AsInteger]));
- Next;
- end;
- end;
-
- TempDS.Close;
- FreeAndNil(TempDS);
-
- //verifica tabela de permissoes
- TempDS := DataConnector.UCGetSQLDataset('SELECT * FROM ' + TableRights.TableName);
-
- if TempDS.FindField(TableRights.FieldKey) = nil then
- begin
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL('ALTER TABLE ' + TableRights.TableName + ' ADD ' + TableUsers.FieldKey + ' ' + UserSettings.Type_VarChar + ' (255)');
- TempDS.First;
- with TempDS do
- while not EOF do
- begin
- UserID := TempDS.FieldByName(TableRights.FieldUserID).AsInteger;
- Login := TempDS.FieldByName(TableRights.FieldComponentName).AsString;
- case Self.Criptografia of
- cPadrao: Key := Encrypt(IntToStr(UserID) + Login, EncryptKey);
- cMD5: Key := MD5Sum(IntToStr(UserID) + Login);
- end;
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(Format('UPDATE %s SET %s = %s where %s = %d and %s = %s and %s = %s',
- [TableRights.TableName,
- TableRights.FieldKey,
- QuotedStr(Key),
- TableRights.FieldUserID,
- TempDS.FieldByName(TableRights.FieldUserID).AsInteger,
- TableRights.FieldModule,
- QuotedStr(ApplicationID),
- TableRights.FieldComponentName,
- QuotedStr(Login)]));
- Next;
- end;
- end;
- TempDS.Close;
- FreeAndNil(TempDS);
-
- //verifica tabela de permissoes extendidas
- TempDS := DataConnector.UCGetSQLDataset('SELECT * FROM ' + TableRights.TableName + 'EX');
- if TempDS.FindField(TableRights.FieldKey) = nil then
- begin
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL('ALTER TABLE ' + TableRights.TableName + 'EX ADD ' +
- TableUsers.FieldKey + '' + UserSettings.Type_VarChar + ' (255)');
- TempDS.First;
- with TempDS do
- while not EOF do
- begin
- UserID := TempDS.FieldByName(TableRights.FieldUserID).AsInteger;
- Login := TempDS.FieldByName(TableRights.FieldComponentName).AsString; //componentname
- Senha := TempDS.FieldByName(TableRights.FieldFormName).AsString; // formname
- case Self.Criptografia of
- cPadrao: Key := Encrypt(IntToStr(UserID) + Login, EncryptKey);
- cMD5: Key := MD5Sum(IntToStr(UserID) + Login);
- end;
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(Format('UPDATE %s SET %s = %s' +
- ' WHERE %s = %d AND' +
- ' %s = %s AND %s = %s AND' +
- ' %s = %s',
- [TableRights.TableName + 'EX',
- TableRights.FieldKey,
- QuotedStr(Key),
- TableRights.FieldUserID,
- TempDS.FieldByName(TableRights.FieldUserID).AsInteger,
- TableRights.FieldModule,
- QuotedStr(ApplicationID),
- TableRights.FieldComponentName,
- QuotedStr(Login), // componente name
- TableRights.FieldFormName,
- QuotedStr(Senha)])); // formname
- Next;
- end;
- end;
- TempDS.Close;
- FreeAndNil(TempDS);
-end;
-
-procedure TUserControl.ShowChangePassword;
-begin
- ActionTrocaSenha(self);
-end;
-
-procedure TUserControl.ShowNewConfig;
-begin
- FFormGeral := TFormUserPerf.Create(Self);
- with TFormUserPerf(FFormGeral) do
- begin
- Position := UserSettings.WindowsPosition;
- fUserControl := Self;
- ShowModal;
- end;
- FreeAndNil(FFormGeral);
-end;
-
-procedure TUserControl.AddUCControlMonitor(UCControl: TUCControls);
-begin
- FControlList.Add(UCControl);
-end;
-
-procedure TUserControl.ApplyRightsUCControlMonitor;
-var
- Contador: Integer;
-begin
- for Contador := 0 to Pred(FControlList.Count) do
- TUCControls(FControlList.Items[Contador]).ApplyRights;
-end;
-
-procedure TUserControl.DeleteUCControlMonitor(UCControl: TUCControls);
-var
- Contador: Integer;
- SLControls: TStringList;
-begin
- if not Assigned(FControlList) then
- Exit;
- SLControls := TStringList.Create;
- for Contador := 0 to Pred(FControlList.Count) do
- if TUCControls(FControlList.Items[Contador]) = UCControl then
- SLControls.Add(IntToStr(Contador));
-
- for Contador := 0 to Pred(SLControls.Count) do
- FControlList.Delete(StrToInt(SLControls[Contador]));
-
- FreeAndNil(SLControls);
-end;
-
-procedure TUserControl.LockControlsUCControlMonitor;
-var
- Contador: Integer;
-begin
- for Contador := 0 to Pred(FControlList.Count) do
- TUCControls(FControlList.Items[Contador]).LockControls;
-end;
-
-procedure TUserControl.SetDataConnector(const Value: TUCDataConnector);
-begin
- FDataConnector := Value;
- if Assigned(Value) then
- Value.FreeNotification(Self);
-end;
-
-procedure TUserControl.AddLoginMonitor(UCAppMessage: TUCApplicationMessage);
-begin
- FLoginMonitorList.Add(UCAppMessage);
-end;
-
-procedure TUserControl.DeleteLoginMonitor(UCAppMessage: TUCApplicationMessage);
-var
- Contador: Integer;
- SLControls: TStringList;
-begin
- SLControls := TStringList.Create;
- if Assigned(FLoginMonitorList) then
- for Contador := 0 to Pred(FLoginMonitorList.Count) do
- if TUCApplicationMessage(FLoginMonitorList.Items[Contador]) = UCAppMessage then
- SLControls.Add(IntToStr(Contador));
- if assigned(SLControls) then
- for Contador := 0 to Pred(SLControls.Count) do
- FLoginMonitorList.Delete(StrToInt(SLControls[Contador]));
- SysUtils.FreeAndNil(SLControls);
-end;
-
-procedure TUserControl.NotificationLoginMonitor;
-var
- Contador: Integer;
-begin
- for Contador := 0 to Pred(FLoginMonitorList.Count) do
- TUCApplicationMessage(FLoginMonitorList.Items[Contador]).CheckMessages;
-end;
-
-procedure TUserControl.ShowLogin;
-begin
- FRetry := 0;
- if Assigned(onCustomLoginForm) then
- OnCustomLoginForm(Self, FFormLogin);
- if FFormLogin = nil then
- begin
- FFormLogin := TfrmLoginWindow.Create(self);
- with FFormLogin as TfrmLoginWindow do
- begin
- SetfrmLoginWindow(TfrmLoginWindow(FFormLogin));
- FUserControl := Self;
- btOK.onClick := ActionOKLogin;
- onCloseQuery := Testafecha;
- Position := Self.UserSettings.WindowsPosition;
- lbEsqueci.OnClick := ActionEsqueceuSenha;
- end;
- end;
- FFormLogin.ShowModal;
- FreeAndNil(FFormLogin);
-end;
-
-procedure TUserControl.ActionOKLogin(Sender: TObject);
-var
- TempUser: String;
- TempPassword: String;
- retorno: Integer;
-begin
- TempUser := TfrmLoginWindow(FFormLogin).EditUsuario.Text;
- TempPassword := TfrmLoginWindow(FFormLogin).EditSenha.Text;
-
- if Assigned(OnLogin) then
- Onlogin(Self, TempUser, TempPassword);
- retorno := VerificaLogin(TempUser, TempPassword);
- if retorno = 0 then
- TfrmLoginWindow(FFormLogin).Close
- else
- begin
- if Retorno = 1 then
- MessageDlg(UserSettings.CommonMessages.InvalidLogin, mtWarning, [mbOK], 0)
- else if retorno = 2 then
- MessageDlg(UserSettings.CommonMessages.InactiveLogin, mtWarning, [mbOK], 0);
-
- Inc(FRetry);
- if TfrmLoginWindow(FFormLogin).StatusBar.Visible then
- TfrmLoginWindow(FFormLogin).StatusBar.Panels[1].Text := IntToStr(FRetry);
-
- if (Login.MaxLoginAttempts > 0) and (FRetry = Login.MaxLoginAttempts) then
- begin
- MessageDlg(Format(UserSettings.CommonMessages.MaxLoginAttemptsError, [Login.MaxLoginAttempts]), mtError, [mbOK], 0);
- Application.Terminate;
- end;
- end;
-end;
-
-procedure TUserControl.TestaFecha(Sender: TObject; var CanClose: Boolean);
-begin
- CanClose := (CurrentUser.UserID > 0);
-end;
-
-procedure TUserControl.ApplyRights;
-begin
- if Self.CurrentUser.UserID <> 0 then
- begin
- ApplyRightsObj(Self.CurrentUser.PerfilUsuario);
-
- // Aplica Permissoes do Perfil do usuario
- if CurrentUser.Profile > 0 then
- ApplyRightsObj(Self.CurrentUser.PerfilGrupo, True);
-
- if Assigned(FAfterLogin) then
- FAfterLogin(Self);
- end;
-end;
-
-procedure TUserControl.ApplyRightsObj(ADataset: TDataset; FProfile: Boolean = False);
-var
- Contador: Integer;
- Encontrado: Boolean;
- KeyField: String;
- Temp: String;
- ObjetoAction: TObject;
- OwnerMenu: TComponent;
-begin
- //Permissao de Menus QMD
- Encontrado := False;
-
- if ADataset.State = dsInactive then
- ADataset.Open;
-
- if Assigned(ControlRight.MainMenu) then
- begin
- OwnerMenu := ControlRight.MainMenu.Owner;
- for Contador := 0 to Pred(OwnerMenu.ComponentCount) do
- if (OwnerMenu.Components[Contador].ClassType = TMenuItem) and (TMenuItem(OwnerMenu.Components[Contador]).GetParentMenu = ControlRight.MainMenu) then
- begin
- if not FProfile then
- begin
- Encontrado := ADataset.Locate('ObjName', OwnerMenu.Components[Contador].Name, []);
- KeyField := ADataset.FindField('UCKey').AsString;
- //verifica key
- if Encontrado then
- case Self.Criptografia of
- cPadrao:
- Encontrado := (KeyField = Encrypt(ADataset.FieldByName('UserID').AsString + ADataset.FieldByName('ObjName').AsString, EncryptKey));
- cMD5:
- Encontrado := (KeyField = MD5Sum(ADataset.FieldByName('UserID').AsString + ADataset.FieldByName('ObjName').AsString));
- end;
- TMenuItem(OwnerMenu.Components[Contador]).Enabled := Encontrado;
- if not Encontrado then
- TMenuItem(OwnerMenu.Components[Contador]).Visible := NotAllowedItems.MenuVisible
- else
- TMenuItem(OwnerMenu.Components[Contador]).Visible := True;
- end
- else
- if ADataset.Locate('ObjName', OwnerMenu.Components[Contador].Name, []) then
- begin
- KeyField := ADataset.FindField('UCKey').AsString;
- case Self.Criptografia of
- cPadrao:
- Encontrado := (KeyField = Encrypt(ADataset.FieldByName('UserID').AsString + ADataset.FieldByName('ObjName').AsString, EncryptKey));
- cMD5:
- Encontrado := (KeyField = MD5Sum(ADataset.FieldByName('UserID').AsString + ADataset.FieldByName('ObjName').AsString));
- end;
- TMenuItem(OwnerMenu.Components[Contador]).Enabled := Encontrado;
- TMenuItem(OwnerMenu.Components[Contador]).Visible := Encontrado;
- end;
- if Assigned(OnApplyRightsMenuIt) then
- OnApplyRightsMenuIt(Self, TMenuItem(OwnerMenu.Components[Contador]));
- end;
- end; // Fim do controle do MainMenu
-
- //Permissao de Actions
- if (Assigned(ControlRight.ActionList))
- {.$IFDEF UCACTMANAGER} or (Assigned(ControlRight.ActionManager)) {.$ENDIF} then
- begin
- if Assigned(ControlRight.ActionList) then
- ObjetoAction := ControlRight.ActionList
- {.$IFDEF UCACTMANAGER}
- else
- ObjetoAction := ControlRight.ActionManager
- {.$ENDIF};
- for Contador := 0 to TActionList(ObjetoAction).ActionCount - 1 do
- begin
- if not FProfile then
- begin
- Encontrado := ADataset.Locate('ObjName', TActionList(ObjetoAction).Actions[contador].Name, []);
- KeyField := ADataset.FindField('UCKey').AsString;
- //verifica key
- if Encontrado then
- case Self.Criptografia of
- cPadrao: Encontrado := (KeyField = Encrypt(ADataset.FieldByName('UserID').AsString + ADataset.FieldByName('ObjName').AsString, EncryptKey));
- cMD5: Encontrado := (KeyField = MD5Sum(ADataset.FieldByName('UserID').AsString + ADataset.FieldByName('ObjName').AsString));
- end;
-
- TAction(TActionList(ObjetoAction).Actions[contador]).Enabled := Encontrado;
-
- if not Encontrado then
- TAction(TActionList(ObjetoAction).Actions[contador]).Visible := NotAllowedItems.ActionVisible
- else
- TAction(TActionList(ObjetoAction).Actions[contador]).Visible := True;
- end
- else
- if ADataset.Locate('ObjName', TActionList(ObjetoAction).Actions[contador].Name, []) then
- begin
- KeyField := ADataset.FindField('UCKey').AsString;
- case Self.Criptografia of
- cPadrao: Encontrado := (KeyField = Encrypt(ADataset.FieldByName('UserID').AsString + ADataset.FieldByName('ObjName').AsString, EncryptKey));
- cMD5: Encontrado := (KeyField = MD5Sum(ADataset.FieldByName('UserID').AsString + ADataset.FieldByName('ObjName').AsString));
- end;
- TAction(TActionList(ObjetoAction).Actions[contador]).Enabled := Encontrado;
- TAction(TActionList(ObjetoAction).Actions[contador]).Visible := Encontrado;
- end;
-
- if Assigned(OnApplyRightsActionIt) then
- OnApplyRightsActionIt(Self, TAction(TActionList(ObjetoAction).Actions[contador]));
- end;
- end; // Fim das permissões de Actions
-
- {.$IFDEF UCACTMANAGER}
- if Assigned(ControlRight.ActionMainMenuBar) then
- for Contador := 0 to ControlRight.ActionMainMenuBar.ActionClient.Items.Count - 1 do
- begin
- Temp := IntToStr(Contador);
- if ControlRight.ActionMainMenuBar.ActionClient.Items[StrToInt(Temp)].Items.Count > 0 then
- begin
- if Self.Criptografia = cPadrao then
- ControlRight.ActionMainMenuBar.ActionClient.Items[StrToInt(Temp)].Visible :=
- (ADataset.Locate('ObjName', #1 + 'G' + ControlRight.ActionMainMenuBar.ActionClient.Items[StrToInt(Temp)].Caption, [])) and
- (ADataset.FieldByName('UCKey').AsString = Encrypt(ADataset.FieldByName('UserID').AsString + ADataset.FieldByName('ObjName').AsString, EncryptKey));
-
- if Self.Criptografia = cMD5 then
- ControlRight.ActionMainMenuBar.ActionClient.Items[StrToInt(Temp)].Visible :=
- (ADataset.Locate('ObjName', #1 + 'G' + ControlRight.ActionMainMenuBar.ActionClient.Items[StrToInt(Temp)].Caption, [])) and
- (ADataset.FieldByName('UCKey').AsString = MD5Sum(ADataset.FieldByName('UserID').AsString + ADataset.FieldByName('ObjName').AsString));
-
- TrataActMenuBarIt(ControlRight.ActionMainMenuBar.ActionClient.Items[StrToInt(Temp)], ADataset);
- end;
- end;
- {.$ENDIF}
-end;
-
-procedure TUserControl.UnlockEX(FormObj: TCustomForm; ObjName: String);
-begin
- if FormObj.FindComponent(ObjName) = nil then
- Exit;
-
- if FormObj.FindComponent(ObjName) is TControl then
- begin
- TControl(FormObj.FindComponent(ObjName)).Enabled := True;
- TControl(FormObj.FindComponent(ObjName)).Visible := True;
- end;
-
- if FormObj.FindComponent(ObjName) is TMenuItem then // TMenuItem
- begin
- TMenuItem(FormObj.FindComponent(ObjName)).Enabled := True;
- TMenuItem(FormObj.FindComponent(ObjName)).Visible := True;
- //chama evento OnApplyRightsMenuIt
- if Assigned(OnApplyRightsMenuIt) then
- OnApplyRightsMenuIt(self, FormObj.FindComponent(ObjName) as TMenuItem);
- end;
-
- if FormObj.FindComponent(ObjName) is TAction then // TAction
- begin
- TAction(FormObj.FindComponent(ObjName)).Enabled := True;
- TAction(FormObj.FindComponent(ObjName)).Visible := True;
- //chama evento OnApplyRightsMenuIt
- if Assigned(OnApplyRightsActionIt) then
- OnApplyRightsActionIt(self, FormObj.FindComponent(ObjName) as TAction);
- end;
-
- if FormObj.FindComponent(ObjName) is TField then // TField
- begin
- TField(FormObj.FindComponent(ObjName)).ReadOnly := False;
- TField(FormObj.FindComponent(ObjName)).Visible := True;
- TField(FormObj.FindComponent(ObjName)).onGetText := nil;
- end;
-end;
-
-procedure TUserControl.LockEX(FormObj: TCustomForm; ObjName: String; naInvisible: Boolean);
-begin
- if FormObj.FindComponent(ObjName) = nil then
- Exit;
-
- if FormObj.FindComponent(ObjName) is TControl then
- begin
- TControl(FormObj.FindComponent(ObjName)).Enabled := False;
- TControl(FormObj.FindComponent(ObjName)).Visible := not naInvisible;
- end;
-
- if FormObj.FindComponent(ObjName) is TMenuItem then // TMenuItem
- begin
- TMenuItem(FormObj.FindComponent(ObjName)).Enabled := False;
- TMenuItem(FormObj.FindComponent(ObjName)).Visible := not naInvisible;
- //chama evento OnApplyRightsMenuIt
- if Assigned(OnApplyRightsMenuIt) then
- OnApplyRightsMenuIt(self, FormObj.FindComponent(ObjName) as TMenuItem);
- end;
-
- if FormObj.FindComponent(ObjName) is TAction then // TAction
- begin
- TAction(FormObj.FindComponent(ObjName)).Enabled := False;
- TAction(FormObj.FindComponent(ObjName)).Visible := not naInvisible;
- //chama evento OnApplyRightsMenuIt
- if Assigned(OnApplyRightsActionIt) then
- OnApplyRightsActionIt(self, FormObj.FindComponent(ObjName) as TAction);
- end;
-
- if FormObj.FindComponent(ObjName) is TField then // TField
- begin
- TField(FormObj.FindComponent(ObjName)).ReadOnly := True;
- TField(FormObj.FindComponent(ObjName)).Visible := not naInvisible;
- TField(FormObj.FindComponent(ObjName)).onGetText := HideField;
- end;
-end;
-
-{.$IFDEF UCACTMANAGER}
-procedure TUserControl.TrataActMenuBarIt(IT: TActionClientItem; ADataset: TDataset);
-var
- Contador: Integer;
-begin
- for contador := 0 to IT.Items.Count - 1 do
- if IT.Items[Contador].Caption <> '-' then
- if IT.Items[Contador].Items.Count > 0 then
- begin
- IT.Items[Contador].Visible := (ADataset.Locate('ObjName', #1 + 'G' + IT.Items[Contador].Caption, []));
- TrataActMenuBarIt(IT.Items[Contador], ADataset);
- end;
-end;
-
-{.$ENDIF}
-
-procedure TUserControl.CriaTabelaRights(ExtraRights: Boolean = False);
-var
- SQLStmt: String;
- TipoCampo: String;
-begin
- case Self.Criptografia of
- cPadrao: TipoCampo := UserSettings.Type_Varchar + '(250)';
- cMD5: TipoCampo := UserSettings.Type_Varchar + '(32)';
- end;
-
- with TableRights do
- if not ExtraRights then
- begin
- SQLStmt := Format('CREATE TABLE %s( %s %s, %s %s(50), %s %s(50), %s %s )',
- [TableName,
- FieldUserID,
- UserSettings.Type_Int,
- FieldModule,
- UserSettings.Type_VarChar,
- FieldComponentName,
- UserSettings.Type_Varchar,
- FieldKey,
- TipoCampo]);
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(SQLStmt);
- end
- else
- begin
- SQLStmt := Format('CREATE TABLE %sEX( %s %s, %s %s(50), %s %s(50), %s %s(50), %s %s )',
- [TableName,
- FieldUserID,
- UserSettings.Type_Int,
- FieldModule,
- UserSettings.Type_VarChar,
- FieldComponentName,
- UserSettings.Type_VarChar,
- FieldFormName,
- UserSettings.Type_VarChar,
- FieldKey,
- TipoCampo]);
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(SQLStmt);
- end;
-end;
-
-procedure TUserControl.AddRightEX(idUser: Integer; Module, FormName, ObjName: String);
-var
- KeyField: String;
- SQLStmt: String;
-begin
- case Self.Criptografia of
- cPadrao: KeyField := Encrypt(IntToStr(idUser) + ObjName, EncryptKey);
- cMD5: KeyField := MD5Sum(IntToStr(idUser) + ObjName);
- end;
-
- with TableRights do
- SQLStmt := Format('INSERT INTO %sEX( %s, %s, %s, %s, %s) VALUES (%d, %s, %s, %s, %s)',
- [TableName,
- FieldUserID,
- FieldModule,
- FieldFormName,
- FieldComponentName,
- FieldKey,
- IdUser,
- QuotedStr(Module),
- QuotedStr(FormName),
- QuotedStr(ObjName),
- QuotedStr(KeyField)]);
-
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(SQLStmt);
-end;
-
-procedure TUserControl.AddRight(idUser: Integer; ItemRight: String);
-var
- KeyField: String;
- SQLStmt: String;
-begin
- if ItemRight = '' then
- Exit;
-
- case Self.Criptografia of
- cPadrao: KeyField := Encrypt(IntToStr(idUser) + ItemRight, EncryptKey);
- cMD5: KeyField := MD5Sum(IntToStr(idUser) + ItemRight);
- end;
-
- SQLStmt := Format('Insert into %s( %s, %s, %s, %s) Values( %d, %s, %s, %s)',
- [TableRights.TableName,
- TableRights.FieldUserID,
- TableRights.FieldModule,
- TableRights.FieldComponentName,
- TableRights.FieldKey,
- idUser,
- QuotedStr(ApplicationID),
- QuotedStr(ItemRight),
- QuotedStr(KeyField)]);
-
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(SQLStmt);
-end;
-
-procedure TUserControl.AddRight(idUser: Integer; ItemRight: TObject; FullPath: Boolean = True);
-var
- Obj: TObject;
-begin
- if ItemRight = nil then
- Exit;
-
- Obj := ItemRight;
-
- if Obj.ClassType = TMenuItem then
- while Assigned(Obj) and (Obj.ClassType = TMenuItem) and (TComponent(Obj).Name <> '') do
- begin
- AddRight(idUser, TComponent(Obj).Name);
- if FullPath then
- Obj := TMenuItem(Obj).Parent
- else
- Obj := nil;
- end
- else
- AddRight(idUser, TComponent(Obj).Name);
-end;
-
-procedure TUserControl.CriaTabelaLog;
-begin
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(
- Format('CREATE TABLE %S (APPLICATIONID %s(250), IDUSER %s , MSG %s(250), DATA %s(14), NIVEL %s)',
- [
- LogControl.TableLog,
- UserSettings.Type_VarChar,
- UserSettings.Type_Int,
- UserSettings.Type_Varchar,
- UserSettings.Type_Varchar,
- UserSettings.Type_Int
- ]));
-end;
-
-{.$IFDEF UCACTMANAGER}
-procedure TUserControl.IncPermissActMenuBar(idUser: Integer; Act: TAction);
-var
- Temp: TActionClientItem;
-begin
- if Act = nil then
- Exit;
-
- Temp := ControlRight.ActionMainMenuBar.ActionManager.FindItemByAction(Act);
- while Temp <> nil do
- begin
- AddRight(idUser, #1 + 'G' + Temp.Caption);
- Temp := (TActionClientItem(Temp).ParentItem as TActionClientItem);
- end;
-end;
-
-{.$ENDIF}
-
-procedure TUserControl.CriaTabelaUsuarios(TableExists: Boolean);
-var
- Contador: Integer;
- IDUsuario: Integer;
- CustomForm: TCustomForm;
- Mensagens: TStrings;
- DataSetUsuario: TDataSet;
- DataSetPermissao: TDataSet;
- SQLStmt: String;
- TipoCampo: String;
- UsuarioInicial: String;
- PasswordInicial: String;
-begin
- case Self.Criptografia of
- cPadrao: TipoCampo := UserSettings.Type_VarChar + '(250)';
- cMD5: TipoCampo := UserSettings.Type_Varchar + '(32)';
- end;
-
- if not TableExists then
- with TableUsers do
- begin
- SQLStmt := Format('Create Table %s ' + // TableName
- '( ' +
- '%s %s, ' + // FieldUserID
- '%s %s(30), ' + // FieldUserName
- '%s %s(30), ' + // FieldLogin
- '%s %s, ' + // FieldPassword
- '%s %s(10), ' + // FieldDateExpired Vicente Barros Leonel
- '%s %s , ' + //FieldUserExpired Vicente Barros Leonel
- '%s %s , ' + //FieldUserDaysSun Vicente Barros Leonel
- '%s %s(150), ' +
- '%s %s, ' +
- '%s %s(1), ' +
- '%s %s, ' +
- '%s %s,' + // FieldKey
- '%s %s )',
- [TableName,
- FieldUserID,
- UserSettings.Type_Int,
-
- FieldUserName,
- UserSettings.Type_VarChar,
-
- FieldLogin,
- UserSettings.Type_VarChar,
-
- FieldPassword,
- TipoCampo,
-
- FieldDateExpired,
- UserSettings.Type_Char,
-
- FieldUserExpired,
- UserSettings.Type_Int,
-
- FieldUserDaysSun,
- UserSettings.Type_Int,
-
- FieldEmail,
- UserSettings.Type_Varchar,
-
- FieldPrivileged,
- UserSettings.Type_Int,
-
- FieldTypeRec,
- UserSettings.Type_Char,
-
- FieldProfile,
- UserSettings.Type_Int,
-
- FieldKey,
- TipoCampo,
-
- FieldUserInative,
- UserSettings.Type_Int
- ]);
-
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(SQLstmt);
- end;
-
- case Self.Login.CharCaseUser of
- ecNormal: UsuarioInicial := Self.Login.InitialLogin.User;
- ecUpperCase: UsuarioInicial := UpperCase(Self.Login.InitialLogin.User);
- ecLowerCase: UsuarioInicial := LowerCase(Self.Login.InitialLogin.User);
- end;
-
- case Self.Login.CharCasePass of
- ecNormal: PasswordInicial := Self.Login.InitialLogin.Password;
- ecUpperCase: PasswordInicial := UpperCase(Self.Login.InitialLogin.Password);
- ecLowerCase: PasswordInicial := LowerCase(Self.Login.InitialLogin.Password);
- end;
-
- SQLStmt := 'SELECT ' + TableUsers.FieldUserID + ' as idUser ' +
- 'FROM ' + TableUsers.TableName + ' ' +
- 'WHERE ' + TableUsers.FieldLogin + ' = ' + QuotedStr(UsuarioInicial);
-
- try
- DataSetUsuario := DataConnector.UCGetSQLDataset(SQLstmt);
-
- // Inserir login inicial
- if DataSetUsuario.IsEmpty then
- IDUsuario := AddUser(UsuarioInicial,
- PasswordInicial,
- Login.InitialLogin.User,
- Login.InitialLogin.Email,
- 0, 0, Login.DaysOfSunExpired,
- True)
- else
- IDUsuario := DataSetUsuario.FieldByName('idUser').AsInteger;
-
- finally
- DataSetUsuario.Close;
- FreeAndNil(DataSetUsuario);
- end;
-
- SQLStmt := 'SELECT ' + TableRights.FieldUserID + ' AS IDUSER ' +
- 'FROM ' + TableRights.TableName + ' ' +
- 'WHERE ' + TableRights.FieldUserID + ' = ' + IntToStr(IDUsuario) + ' ' +
- 'AND ' + TableRights.FieldModule + ' = ' + QuotedStr(ApplicationID);
-
- try
- DataSetPermissao := DataConnector.UCGetSQLDataset(SQLStmt);
-
- if not DataSetPermissao.IsEmpty then
- Exit;
-
- finally
- DataSetPermissao.Close;
- FreeAndNil(DataSetPermissao);
- end;
-
- AddRight(IDUsuario, User.MenuItem);
- AddRight(IDUsuario, User.Action);
-
- AddRight(IDUsuario, UserPasswordChange.MenuItem);
- AddRight(IDUsuario, UserPasswordChange.Action);
-
- AddRight(IDUsuario, UsersLogoff.MenuItem);
- AddRight(IDUsuario, UsersLogoff.Action);
-
- {.$IFDEF UCACTMANAGER}
- if Assigned(ControlRight.ActionMainMenuBar) then
- IncPermissActMenuBar(IDUsuario, User.Action);
-
- if Assigned(ControlRight.ActionMainMenuBar) then
- IncPermissActMenuBar(IDUsuario, UserPasswordChange.Action);
- {.$ENDIF}
-
- for Contador := 0 to Pred(Login.InitialLogin.InitialRights.Count) do
- if Owner.FindComponent(Login.InitialLogin.InitialRights[contador]) <> nil then
- begin
- AddRight(IDUsuario, Owner.FindComponent(Login.InitialLogin.InitialRights[contador]));
- AddRightEX(IDUsuario, ApplicationID, TcustomForm(Owner).Name, Login.InitialLogin.InitialRights[contador]);
- end;
-
- try
- Mensagens := TStringList.Create;
- Mensagens.Assign(UserSettings.CommonMessages.InitialMessage);
- Mensagens.Text := StringReplace(Mensagens.Text, ':user', UsuarioInicial, [rfReplaceAll]);
- Mensagens.Text := StringReplace(Mensagens.Text, ':password', PasswordInicial, [rfReplaceAll]);
-
- if Assigned(OnCustomInitialMsg) then
- OnCustomInitialMsg(Self, CustomForm, Mensagens);
-
- if CustomForm <> nil then
- CustomForm.ShowModal
- else
- MessageDlg(Mensagens.Text, mtInformation, [mbOK], 0);
-
- finally
- FreeAndNil(Mensagens);
- end;
-end;
-
-procedure TUserControl.SetfLanguage(const Value: TUCLanguage);
-begin
- fLanguage := Value;
- Self.UserSettings.Language := Value;
- UCSettings.AlterLanguage(Self.UserSettings);
-end;
-
-
-procedure TUserControl.SetFMailUserControl(const Value: TMailUserControl);
-begin // By Vicente Barros Leonel
- FMailUserControl := Value;
- if Value <> nil then
- Value.FreeNotification(Self);
-end;
-
-procedure TUserControl.ApplySettings(SourceSettings: TUCSettings);
-begin
- with UserSettings.CommonMessages do
- begin
- BlankPassword := SourceSettings.CommonMessages.BlankPassword;
- PasswordChanged := SourceSettings.CommonMessages.PasswordChanged;
- InitialMessage.Text := SourceSettings.CommonMessages.InitialMessage.Text;
- MaxLoginAttemptsError := SourceSettings.CommonMessages.MaxLoginAttemptsError;
- InvalidLogin := SourceSettings.CommonMessages.InvalidLogin;
- InactiveLogin := SourceSettings.CommonMessages.InactiveLogin;
- AutoLogonError := SourceSettings.CommonMessages.AutoLogonError;
- UsuarioExiste := SourceSettings.CommonMessages.UsuarioExiste; // Luiz Benevenuto 20/04/06
- PasswordExpired := SourceSettings.CommonMessages.PasswordExpired; // vicente barros leonel
- ForcaTrocaSenha := SourceSettings.CommonMessages.ForcaTrocaSenha;
- end;
-
- with UserSettings.Login do
- begin
- BtCancel := SourceSettings.Login.BtCancel;
- BtOK := SourceSettings.Login.BtOK;
- LabelPassword := SourceSettings.Login.LabelPassword;
- LabelUser := SourceSettings.Login.LabelUser;
- WindowCaption := SourceSettings.Login.WindowCaption;
- LabelTentativa := SourceSettings.Login.LabelTentativa;
- LabelTentativas := SourceSettings.Login.LabelTentativas;
-
- if Assigned(SourceSettings.Login.LeftImage.Bitmap) then
- LeftImage.Bitmap := SourceSettings.Login.LeftImage.Bitmap
- else
- LeftImage.Bitmap := nil;
-
- if Assigned(SourceSettings.Login.TopImage.Bitmap) then
- TopImage.Bitmap := SourceSettings.Login.TopImage.Bitmap
- else
- TopImage.Bitmap := nil;
-
- if Assigned(SourceSettings.Login.BottomImage.Bitmap) then
- BottomImage.Bitmap := SourceSettings.Login.BottomImage.Bitmap
- else
- BottomImage.Bitmap := nil;
- end;
-
- with UserSettings.UsersForm do
- begin
- WindowCaption := SourceSettings.UsersForm.WindowCaption;
- LabelDescription := SourceSettings.UsersForm.LabelDescription;
- ColName := SourceSettings.UsersForm.ColName;
- ColLogin := SourceSettings.UsersForm.ColLogin;
- ColEmail := SourceSettings.UsersForm.ColEmail;
- BtAdd := SourceSettings.UsersForm.BtAdd;
- BtChange := SourceSettings.UsersForm.BtChange;
- BtDelete := SourceSettings.UsersForm.BtDelete;
- BtRights := SourceSettings.UsersForm.BtRights;
- BtPassword := SourceSettings.UsersForm.BtPassword;
- BtClose := SourceSettings.UsersForm.BtClose;
- PromptDelete := SourceSettings.UsersForm.PromptDelete;
- PromptDelete_WindowCaption := SourceSettings.UsersForm.PromptDelete_WindowCaption; //added by fduenas
- end;
-
- with UserSettings.UsersProfile do
- begin
- WindowCaption := SourceSettings.UsersProfile.WindowCaption;
- LabelDescription := SourceSettings.UsersProfile.LabelDescription;
- ColProfile := SourceSettings.UsersProfile.ColProfile;
- BtAdd := SourceSettings.UsersProfile.BtAdd;
- BtChange := SourceSettings.UsersProfile.BtChange;
- BtDelete := SourceSettings.UsersProfile.BtDelete;
- BtRights := SourceSettings.UsersProfile.BtRights; //added by fduenas
- BtClose := SourceSettings.UsersProfile.BtClose;
- PromptDelete := SourceSettings.UsersProfile.PromptDelete;
- PromptDelete_WindowCaption := SourceSettings.UsersProfile.PromptDelete_WindowCaption; //added by fduenas
- end;
-
- with UserSettings.AddChangeUser do
- begin
- WindowCaption := SourceSettings.AddChangeUser.WindowCaption;
- LabelAdd := SourceSettings.AddChangeUser.LabelAdd;
- LabelChange := SourceSettings.AddChangeUser.LabelChange;
- LabelName := SourceSettings.AddChangeUser.LabelName;
- LabelLogin := SourceSettings.AddChangeUser.LabelLogin;
- LabelEmail := SourceSettings.AddChangeUser.LabelEmail;
- CheckPrivileged := SourceSettings.AddChangeUser.CheckPrivileged;
- BtSave := SourceSettings.AddChangeUser.BtSave;
- BtCancel := SourceSettings.AddChangeUser.BtCancel;
- CheckExpira := SourceSettings.AddChangeUser.CheckExpira;
- Day := SourceSettings.AddChangeUser.Day;
- ExpiredIn := SourceSettings.AddChangeUser.ExpiredIn;
- end;
-
- with UserSettings.AddChangeProfile do
- begin
- WindowCaption := SourceSettings.AddChangeProfile.WindowCaption;
- LabelAdd := SourceSettings.AddChangeProfile.LabelAdd;
- LabelChange := SourceSettings.AddChangeProfile.LabelChange;
- LabelName := SourceSettings.AddChangeProfile.LabelName;
- BtSave := SourceSettings.AddChangeProfile.BtSave;
- BtCancel := SourceSettings.AddChangeProfile.BtCancel;
- end;
-
- with UserSettings.Rights do
- begin
- WindowCaption := SourceSettings.Rights.WindowCaption;
- LabelUser := SourceSettings.Rights.LabelUser;
- LabelProfile := SourceSettings.Rights.LabelProfile;
- PageMenu := SourceSettings.Rights.PageMenu;
- PageActions := SourceSettings.Rights.PageActions;
- PageControls := SourceSettings.Rights.PageControls;
- BtUnlock := SourceSettings.Rights.BtUnlock;
- BtLock := SourceSettings.Rights.BtLock;
- BtSave := SourceSettings.Rights.BtSave;
- BtCancel := SourceSettings.Rights.BtCancel;
- end;
-
- with UserSettings.ChangePassword do
- begin
- WindowCaption := SourceSettings.ChangePassword.WindowCaption;
- LabelDescription := SourceSettings.ChangePassword.LabelDescription;
- LabelCurrentPassword := SourceSettings.ChangePassword.LabelCurrentPassword;
- LabelNewPassword := SourceSettings.ChangePassword.LabelNewPassword;
- LabelConfirm := SourceSettings.ChangePassword.LabelConfirm;
- BtSave := SourceSettings.ChangePassword.BtSave;
- BtCancel := SourceSettings.ChangePassword.BtCancel;
- end;
-
- with UserSettings.CommonMessages.ChangePasswordError do
- begin
- InvalidCurrentPassword := SourceSettings.CommonMessages.ChangePasswordError.InvalidCurrentPassword;
- NewPasswordError := SourceSettings.CommonMessages.ChangePasswordError.NewPasswordError;
- NewEqualCurrent := SourceSettings.CommonMessages.ChangePasswordError.NewEqualCurrent;
- PasswordRequired := SourceSettings.CommonMessages.ChangePasswordError.PasswordRequired;
- MinPasswordLength := SourceSettings.CommonMessages.ChangePasswordError.MinPasswordLength;
- InvalidNewPassword := SourceSettings.CommonMessages.ChangePasswordError.InvalidNewPassword;
- end;
-
- with UserSettings.ResetPassword do
- begin
- WindowCaption := SourceSettings.ResetPassword.WindowCaption;
- LabelPassword := SourceSettings.ResetPassword.LabelPassword;
- end;
-
- with UserSettings.Log do
- begin
- WindowCaption := SourceSettings.Log.WindowCaption;
- LabelDescription := SourceSettings.Log.LabelDescription;
- LabelUser := SourceSettings.Log.LabelUser;
- LabelDate := SourceSettings.Log.LabelDate;
- LabelLevel := SourceSettings.Log.LabelLevel;
- ColLevel := SourceSettings.Log.ColLevel;
- ColMessage := SourceSettings.Log.ColMessage;
- ColUser := SourceSettings.Log.ColUser;
- ColDate := SourceSettings.Log.ColDate;
- BtFilter := SourceSettings.Log.BtFilter;
- BtDelete := SourceSettings.Log.BtDelete;
- BtClose := SourceSettings.Log.BtClose;
- PromptDelete := SourceSettings.Log.PromptDelete;
- PromptDelete_WindowCaption := SourceSettings.Log.PromptDelete_WindowCaption; //added by fduenas
- OptionUserAll := SourceSettings.Log.OptionUserAll; //added by fduenas
- OptionLevelLow := SourceSettings.Log.OptionLevelLow; //added by fduenas
- OptionLevelNormal := SourceSettings.Log.OptionLevelNormal; //added by fduenas
- OptionLevelHigh := SourceSettings.Log.OptionLevelHigh; //added by fduenas
- OptionLevelCritic := SourceSettings.Log.OptionLevelCritic; //added by fduenas
- DeletePerformed := SourceSettings.Log.DeletePerformed; //added by fduenas
- end;
-
- with UserSettings.AppMessages do
- begin
- MsgsForm_BtNew := SourceSettings.AppMessages.MsgsForm_BtNew;
- MsgsForm_BtReplay := SourceSettings.AppMessages.MsgsForm_BtReplay;
- MsgsForm_BtForward := SourceSettings.AppMessages.MsgsForm_BtForward;
- MsgsForm_BtDelete := SourceSettings.AppMessages.MsgsForm_BtDelete;
- MsgsForm_BtClose := SourceSettings.AppMessages.MsgsForm_BtClose; //added by fduenas
- MsgsForm_WindowCaption := SourceSettings.AppMessages.MsgsForm_WindowCaption;
- MsgsForm_ColFrom := SourceSettings.AppMessages.MsgsForm_ColFrom;
- MsgsForm_ColSubject := SourceSettings.AppMessages.MsgsForm_ColSubject;
- MsgsForm_ColDate := SourceSettings.AppMessages.MsgsForm_ColDate;
- MsgsForm_PromptDelete := SourceSettings.AppMessages.MsgsForm_PromptDelete;
- MsgsForm_PromptDelete_WindowCaption := SourceSettings.AppMessages.MsgsForm_PromptDelete_WindowCaption; //added by fduenas
- MsgsForm_NoMessagesSelected := SourceSettings.AppMessages.MsgsForm_NoMessagesSelected; //added by fduenas
- MsgsForm_NoMessagesSelected_WindowCaption := SourceSettings.AppMessages.MsgsForm_NoMessagesSelected_WindowCaption; //added by fduenas
-
- MsgRec_BtClose := SourceSettings.AppMessages.MsgRec_BtClose;
- MsgRec_WindowCaption := SourceSettings.AppMessages.MsgRec_WindowCaption;
- MsgRec_Title := SourceSettings.AppMessages.MsgRec_Title;
- MsgRec_LabelFrom := SourceSettings.AppMessages.MsgRec_LabelFrom;
- MsgRec_LabelDate := SourceSettings.AppMessages.MsgRec_LabelDate;
- MsgRec_LabelSubject := SourceSettings.AppMessages.MsgRec_LabelSubject;
- MsgRec_LabelMessage := SourceSettings.AppMessages.MsgRec_LabelMessage;
- MsgSend_BtSend := SourceSettings.AppMessages.MsgSend_BtSend;
- MsgSend_BtCancel := SourceSettings.AppMessages.MsgSend_BtCancel;
- MsgSend_WindowCaption := SourceSettings.AppMessages.MsgSend_WindowCaption;
- MsgSend_Title := SourceSettings.AppMessages.MsgSend_Title;
- MsgSend_GroupTo := SourceSettings.AppMessages.MsgSend_GroupTo;
- MsgSend_RadioUser := SourceSettings.AppMessages.MsgSend_RadioUser;
- MsgSend_RadioAll := SourceSettings.AppMessages.MsgSend_RadioAll;
- MsgSend_GroupMessage := SourceSettings.AppMessages.MsgSend_GroupMessage;
- MsgSend_LabelSubject := SourceSettings.AppMessages.MsgSend_LabelSubject; //added by fduenas
- MsgSend_LabelMessageText := SourceSettings.AppMessages.MsgSend_LabelMessageText; //added by fduenas
- end;
-
-{ with UserSettings.TypeFieldsDB do
- begin
- Type_VarChar := SourceSettings.Type_VarChar;
- Type_Char := SourceSettings.Type_Char;
- Type_Int := SourceSettings.Type_Int;
- end; atenção mudar aqui }
-
- UserSettings.WindowsPosition := SourceSettings.WindowsPosition;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'Criptografia'} {$ENDIF}
-
-const
- Codes64 = '0A1B2C3D4E5F6G7H89IjKlMnOPqRsTuVWXyZabcdefghijkLmNopQrStUvwxYz+/';
- C1 = 52845;
- C2 = 22719;
-
-function Decode(const S: ansistring): ansistring;
-const
-{$IFDEF DELPHI12}
- Map: array[AnsiChar] of byte = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 63, 52, 53,
- 54, 55, 56, 57, 58, 59, 60, 61, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2,
- 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
- 20, 21, 22, 23, 24, 25, 0, 0, 0, 0, 0, 0, 26, 27, 28, 29, 30,
- 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
- 46, 47, 48, 49, 50, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0);
-{$ELSE}
- Map: array[char] of byte = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 63, 52, 53,
- 54, 55, 56, 57, 58, 59, 60, 61, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2,
- 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
- 20, 21, 22, 23, 24, 25, 0, 0, 0, 0, 0, 0, 26, 27, 28, 29, 30,
- 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
- 46, 47, 48, 49, 50, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0);
-{$ENDIF}
-
-var
- I: longint;
-begin
- case Length(S) of
- 2:
- begin
- I := Map[S[1]] + (Map[S[2]] shl 6);
- SetLength(Result, 1);
- Move(I, Result[1], Length(Result));
- end;
- 3:
- begin
- I := Map[S[1]] + (Map[S[2]] shl 6) + (Map[S[3]] shl 12);
- SetLength(Result, 2);
- Move(I, Result[1], Length(Result));
- end;
- 4:
- begin
- I := Map[S[1]] + (Map[S[2]] shl 6) + (Map[S[3]] shl 12) + (Map[S[4]] shl 18);
- SetLength(Result, 3);
- Move(I, Result[1], Length(Result));
- end
- end;
-end;
-
-function Encode(const S: ansistring): ansistring;
-const
- Map: array[0..63] of char = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
-var
- I: longint;
-begin
- I := 0;
- Move(S[1], I, Length(S));
- case Length(S) of
- 1:
- Result := Map[I mod 64] + Map[(I shr 6) mod 64];
- 2:
- Result := Map[I mod 64] + Map[(I shr 6) mod 64] + Map[(I shr 12) mod 64];
- 3:
- Result := Map[I mod 64] + Map[(I shr 6) mod 64] + Map[(I shr 12) mod 64] + Map[(I shr 18) mod 64];
- end;
-end;
-
-function InternalDecrypt(const S: ansistring; Key: Word): ansistring;
-var
- I: Word;
- Seed: int64;
-begin
- Result := S;
- Seed := Key;
- for I := 1 to Length(Result) do
- begin
- {$IFDEF DELPHI12}
- Result[I] := AnsiChar(byte(Result[I]) xor (Seed shr 8));
- Seed := (byte(S[I]) + Seed) * Word(C1) + Word(C2);
- {$ELSE}
- Result[I] := char(byte(Result[I]) xor (Seed shr 8));
- Seed := (byte(S[I]) + Seed) * Word(C1) + Word(C2);
- {$ENDIF}
- end;
-end;
-
-function PreProcess(const S: ansistring): ansistring;
-var
- SS: ansistring;
-begin
- SS := S;
- Result := '';
- while SS <> '' do
- begin
- Result := Result + Decode(Copy(SS, 1, 4));
- Delete(SS, 1, 4);
- end;
-end;
-
-function Decrypt(const S: ansistring; Key: Word): ansistring;
-begin
- Result := InternalDecrypt(PreProcess(S), Key);
-end;
-
-function PostProcess(const S: ansistring): ansistring;
-var
- SS: ansistring;
-begin
- SS := S;
- Result := '';
- while SS <> '' do
- begin
- Result := Result + Encode(Copy(SS, 1, 3));
- Delete(SS, 1, 3);
- end;
-end;
-
-function InternalEncrypt(const S: ansistring; Key: Word): ansistring;
-var
- I: Word;
- Seed: int64;
-begin
- Result := S;
- Seed := Key;
- for I := 1 to Length(Result) do
- begin
- {$IFDEF DELPHI12}
- Result[I] := AnsiChar(byte(Result[I]) xor (Seed shr 8));
- Seed := (byte(Result[I]) + Seed) * Word(C1) + Word(C2);
- {$ELSE}
- Result[I] := Char(byte(Result[I]) xor (Seed shr 8));
- Seed := (byte(Result[I]) + Seed) * Word(C1) + Word(C2);
- {$ENDIF}
- end;
-end;
-
-function Encrypt(const S: ansistring; Key: Word): ansistring;
-begin
- Result := PostProcess(InternalEncrypt(S, Key));
-end;
-
-function MD5Sum(strValor: String): String;
-begin
- Result := md5.MD5Print(md5.MD5String(strValor));
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUCAutoLogin'} {$ENDIF}
-
-{ TUCAutoLogin }
-
-procedure TUCAutoLogin.Assign(Source: TPersistent);
-begin
- if Source is TUCAutoLogin then
- begin
- Self.Active := TUCAutoLogin(Source).Active;
- Self.User := TUCAutoLogin(Source).User;
- Self.Password := TUCAutoLogin(Source).Password;
- end
- else
- inherited;
-end;
-
-constructor TUCAutoLogin.Create(AOwner: TComponent);
-begin
- inherited Create;
- Self.Active := False;
- Self.MessageOnError := True;
-end;
-
-destructor TUCAutoLogin.Destroy;
-begin
- inherited Destroy;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TNaoPermitidos'} {$ENDIF}
-
-{ TNaoPermitidos }
-
-procedure TUCNotAllowedItems.Assign(Source: TPersistent);
-begin
- if Source is TUCNotAllowedItems then
- begin
- Self.MenuVisible := TUCNotAllowedItems(Source).MenuVisible;
- Self.ActionVisible := TUCNotAllowedItems(Source).ActionVisible; // Consertado Luiz Benvenuto
- end
- else
- inherited;
-end;
-
-constructor TUCNotAllowedItems.Create(AOwner: TComponent);
-begin
- inherited Create;
- Self.MenuVisible := True;
- Self.ActionVisible := True;
-end;
-
-destructor TUCNotAllowedItems.Destroy;
-begin
- inherited Destroy;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TLogControl'} {$ENDIF}
-
-{ TLogControl }
-
-constructor TUCLogControl.Create(AOwner: TComponent);
-begin
- inherited Create;
- Self.Active := True;
-end;
-
-destructor TUCLogControl.Destroy;
-begin
- inherited Destroy;
-end;
-
-procedure TUCLogControl.Assign(Source: TPersistent);
-begin
- if Source is TUCLogControl then
- begin
- Self.Active := TUCLogControl(Source).Active;
- Self.TableLog := TUCLogControl(Source).TableLog;
- end
- else
- inherited;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TCadastroUsuarios'} {$ENDIF}
-
-{ TCadastroUsuarios }
-
-procedure TUCUser.Assign(Source: TPersistent);
-begin
- if Source is TUCUser then
- begin
- Self.MenuItem := TUCUser(Source).MenuItem;
- Self.Action := TUCUser(Source).Action;
- end
- else
- inherited;
-end;
-
-constructor TUCUser.Create(AOwner: TComponent);
-begin
- inherited Create;
- Self.FProtectAdministrator := True;
- Self.FUsePrivilegedField := False;
-end;
-
-destructor TUCUser.Destroy;
-begin
- inherited Destroy;
-end;
-
-procedure TUCUser.SetAction(const Value: TAction);
-begin
- FAction := Value;
- if Value <> nil then
- begin
- Self.FMenuItem := nil;
- Value.FreeNotification(Self.Action);
- end;
-end;
-
-procedure TUCUser.SetMenuItem(const Value: TMenuItem);
-begin
- FMenuItem := Value;
- if Value <> nil then
- begin
- Self.Action := nil;
- Value.FreeNotification(Self.MenuItem);
- end;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TLogin'} {$ENDIF}
-
-{ TLogin }
-
-constructor TUCLogin.Create(AOwner: TComponent);
-begin
- inherited Create;
- AutoLogin := TUCAutoLogin.Create(nil);
- InitialLogin := TUCInitialLogin.Create(nil);
- if not AutoLogin.MessageOnError then
- AutoLogin.MessageOnError := True;
-
- fDateExpireActive := False; { By Vicente Barros Leonel }
- fDaysOfSunExpired := 30; { By Vicente Barros Leonel }
-end;
-
-destructor TUCLogin.Destroy;
-begin
- SysUtils.FreeAndNil(Self.FAutoLogin);
- SysUtils.FreeAndNil(Self.FInitialLogin);
-
- inherited Destroy;
-end;
-
-procedure TUCLogin.Assign(Source: TPersistent);
-begin
- if Source is TUCLogin then
- Self.MaxLoginAttempts := TUCLogin(Source).MaxLoginAttempts
- else
- inherited;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TPerfilUsuarios'} {$ENDIF}
-
-{ TPerfilUsuarios }
-
-constructor TUCUserProfile.Create(AOwner: TComponent);
-begin
- inherited Create;
- Self.Active := True;
-end;
-
-destructor TUCUserProfile.Destroy;
-begin
- inherited Destroy;
-end;
-
-procedure TUCUserProfile.Assign(Source: TPersistent);
-begin
- if Source is TUCUserProfile then
- Self.Active := TUCUserProfile(Source).Active
- else
- inherited;
-end;
-
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TTrocarSenha'} {$ENDIF}
-
-{ TTrocarSenha }
-
-procedure TUCUserPasswordChange.Assign(Source: TPersistent);
-begin
- if Source is TUCUserPasswordChange then
- begin
- Self.MenuItem := TUCUserPasswordChange(Source).MenuItem;
- Self.Action := TUCUserPasswordChange(Source).Action;
- Self.ForcePassword := TUCUserPasswordChange(Source).ForcePassword;
- Self.MinPasswordLength := TUCUserPasswordChange(Source).MinPasswordLength;
- end
- else
- inherited;
-end;
-
-constructor TUCUserPasswordChange.Create(AOwner: TComponent);
-begin
- inherited Create;
- Self.ForcePassword := False;
-end;
-
-destructor TUCUserPasswordChange.Destroy;
-begin
- inherited Destroy;
-end;
-
-procedure TUCUserPasswordChange.SetAction(const Value: TAction);
-begin
- FAction := Value;
- if Value <> nil then
- begin
- Self.MenuItem := nil;
- Value.FreeNotification(Self.Action);
- end;
-end;
-
-procedure TUCUserPasswordChange.SetMenuItem(const Value: TMenuItem);
-begin
- FMenuItem := Value;
- if Value <> nil then
- begin
- Self.Action := nil;
- Value.FreeNotification(Self.MenuItem);
- end;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TInitialLogin'} {$ENDIF}
-
-{ TInitialLogin }
-
-procedure TUCInitialLogin.Assign(Source: TPersistent);
-begin
- if Source is TUCInitialLogin then
- begin
- Self.User := TUCInitialLogin(Source).User;
- Self.Password := TUCInitialLogin(Source).Password;
- end
- else
- inherited;
-end;
-
-constructor TUCInitialLogin.Create(AOwner: TComponent);
-begin
- inherited Create;
- FInitialRights := TStringList.Create;
-end;
-
-destructor TUCInitialLogin.Destroy;
-begin
- if Assigned(Self.FInitialRights) then
- Self.InitialRights.Free;
- inherited Destroy;
-end;
-
-procedure TUCInitialLogin.SetInitialRights(const Value: TStrings);
-begin
- FInitialRights.Assign(Value);
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUCControlRight'} {$ENDIF}
-
-{ TUCControlRight }
-
-procedure TUCControlRight.Assign(Source: TPersistent);
-begin
- if Source is TUCControlRight then
- Self.ActionList := TUCControlRight(Source).ActionList
- {.$IFDEF UCACTMANAGER}
- {.$ENDIF}
- else
- inherited;
-end;
-
-constructor TUCControlRight.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCControlRight.Destroy;
-begin
- inherited Destroy;
-end;
-
-procedure TUCControlRight.SetActionList(const Value: TActionList);
-begin
- FActionList := Value;
- if Value <> nil then
- Value.FreeNotification(Self.ActionList);
-end;
-
-{.$IFDEF UCACTMANAGER}
-procedure TUCControlRight.SetActionMainMenuBar(const Value: TActionMainMenuBar);
-begin
- FActionMainMenuBar := Value;
- if Value <> nil then
- Value.FreeNotification(Self.ActionMainMenuBar);
-end;
-
-procedure TUCControlRight.SetActionManager(const Value: TActionManager);
-begin
- FActionManager := Value;
- if Value <> nil then
- Value.FreeNotification(Self.ActionManager);
-end;
-
-{.$ENDIF}
-
-procedure TUCControlRight.SetMainMenu(const Value: TMenu);
-begin
- FMainMenu := Value;
- if Value <> nil then
- Value.FreeNotification(Self.MainMenu);
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUCAppMessage'} {$ENDIF}
-
-{ TUCAppMessage }
-
-procedure TUCApplicationMessage.CheckMessages;
-
- function FmtDtHr(dt: String): String;
- begin
- Result := Copy(dt, 7, 2) + '/' + Copy(dt, 5, 2) + '/' + Copy(dt, 1, 4) + ' ' + Copy(dt, 9, 2) + ':' + Copy(dt, 11, 2);
- end;
-
-begin
- if not FReady then
- Exit;
-
- with Self.UserControl.DataConnector.UCGetSQLDataset('SELECT UCM.IdMsg, ' +
- 'UCC.' + Self.UserControl.TableUsers.FieldUserName + ' AS De, ' +
- 'UCC_1.' + Self.UserControl.TableUsers.FieldUserName + ' AS Para, ' +
- 'UCM.Subject, ' +
- 'UCM.Msg, ' +
- 'UCM.DtSend, ' +
- 'UCM.DtReceive ' +
- 'FROM (' + Self.TableMessages + ' UCM INNER JOIN ' + Self.UserControl.TableUsers.TableName + ' UCC ON UCM.UsrFrom = UCC.' + Self.UserControl.TableUsers.FieldUserID + ') INNER JOIN ' +
- Self.UserControl.TableUsers.TableName + ' UCC_1 ON UCM.UsrTo = UCC_1.' + Self.UserControl.TableUsers.FieldUserID + ' where UCM.DtReceive is NULL and UCM.UsrTo = ' + IntToStr(Self.UserControl.CurrentUser.UserID)) do
- begin
- while not EOF do
- begin
- MsgRecForm := TMsgRecForm.Create(Self);
- MsgRecForm.stDe.Caption := FieldByName('De').AsString;
- MsgRecForm.stData.Caption := FmtDtHr(FieldByName('DtSend').AsString);
- MsgRecForm.stAssunto.Caption := FieldByName('Subject').AsString;
- MsgRecForm.MemoMsg.Text := FieldByName('msg').AsString;
- if Assigned(Self.UserControl.DataConnector) then
- Self.UserControl.DataConnector.UCExecSQL('Update ' + Self.TableMessages + ' set DtReceive = ' +
- QuotedStr(FormatDateTime('YYYYMMDDhhmm', now)) +
- ' Where idMsg = ' + FieldByName('idMsg').AsString);
- MsgRecForm.Show;
- Next;
- end;
- Close;
- Free;
- end;
-end;
-
-constructor TUCApplicationMessage.Create(AOWner: TComponent);
-begin
- inherited Create(AOWner);
- FReady := False;
- if csDesigning in ComponentState then
- begin
- if Self.TableMessages = '' then
- Self.TableMessages := 'UCTABMESSAGES';
- Interval := 60000;
- Active := True;
- end;
- Self.FVerifThread := TUCVerificaMensagemThread.Create(False);
- Self.FVerifThread.AOwner := Self;
- Self.FVerifThread.FreeOnTerminate := True;
-end;
-
-destructor TUCApplicationMessage.Destroy;
-begin
-
- if not (csDesigning in ComponentState) then
- if Assigned(UserControl) then
- Usercontrol.DeleteLoginMonitor(Self);
-
- Self.FVerifThread.Terminate;
- // FreeAndNil(FVerifThread);
- inherited Destroy;
-end;
-
-procedure TUCApplicationMessage.DeleteAppMessage(IdMsg: Integer);
-begin
- if MessageDlg(FUserControl.UserSettings.AppMessages.MsgsForm_PromptDelete, mtConfirmation, [mbYes, mbNo], 0) <> mrYes then
- Exit;
- if Assigned(UserControl.DataConnector) then
- UserControl.DataConnector.UCExecSQL('Delete from ' + TableMessages + ' where IdMsg = ' + IntToStr(idMsg));
-end;
-
-procedure TUCApplicationMessage.Loaded;
-begin
- inherited;
- if not (csDesigning in ComponentState) then
- begin
- if not Assigned(FUserControl) then
- raise Exception.Create('Component UserControl not defined!');
- Usercontrol.AddLoginMonitor(Self);
- if not FUserControl.DataConnector.UCFindTable(TableMessages) then
- FUserControl.CriaTabelaMsgs(TableMessages);
- end;
- FReady := True;
-end;
-
-procedure TUCApplicationMessage.Notification(AComponent: TComponent; AOperation: TOperation);
-begin
- if AOperation = opRemove then
- if AComponent = FUserControl then
- FUserControl := nil;
- inherited Notification(AComponent, AOperation);
-end;
-
-procedure TUCApplicationMessage.SendAppMessage(ToUser: Integer; Subject, Msg: String);
-var
- UltId: Integer;
-begin
- with UserControl.DataConnector.UCGetSQLDataset('Select Max(idMsg) as nr from ' + TableMessages) do
- begin
- UltID := FieldByName('nr').AsInteger + 1;
- Close;
- Free;
- end;
- if Assigned(UserControl.DataConnector) then
- UserControl.DataConnector.UCExecSQL('Insert into ' + TableMessages + '( idMsg, UsrFrom, UsrTo, Subject, Msg, DtSend) Values (' +
- IntToStr(UltId) + ', ' +
- IntToStr(UserControl.CurrentUser.UserID) + ', ' +
- IntToStr(toUser) + ', ' +
- QuotedStr(Subject) + ', ' +
- QuotedStr(Msg) + ', ' +
- QuotedStr(FormatDateTime('YYYYMMDDHHMM', now)) + ')');
-
-end;
-
-procedure TUCApplicationMessage.SetActive(const Value: Boolean);
-begin
- FActive := Value;
- if (csDesigning in ComponentState) then
- Exit;
- if FActive then
- FVerifThread.Resume
- else
- FVerifThread.Suspend;
-end;
-
-procedure TUCApplicationMessage.SetUserControl(const Value: TUserControl);
-begin
- FUserControl := Value;
- if Value <> nil then
- Value.FreeNotification(self);
-end;
-
-procedure TUCApplicationMessage.ShowMessages;
-begin
- try
- MsgsForm := TMsgsForm.Create(self);
- with FUserControl.UserSettings.AppMessages do
- begin
- MsgsForm.Caption := MsgsForm_WindowCaption;
- MsgsForm.btnova.Caption := MsgsForm_BtNew;
- MsgsForm.btResponder.Caption := MsgsForm_BtReplay;
- MsgsForm.btEncaminhar.Caption := MsgsForm_BtForward;
- MsgsForm.btExcluir.Caption := MsgsForm_BtDelete;
- MsgsForm.btClose.Caption := MsgsForm_BtClose;
-
- MsgsForm.ListView1.Columns[0].Caption := MsgsForm_ColFrom;
- MsgsForm.ListView1.Columns[1].Caption := MsgsForm_ColSubject;
- MsgsForm.ListView1.Columns[2].Caption := MsgsForm_ColDate;
- end;
-
- MsgsForm.DSMsgs := UserControl.DataConnector.UCGetSQLDataset('SELECT UCM.IdMsg, UCM.UsrFrom, UCC.' + Self.UserControl.TableUsers.FieldUserName + ' AS De, UCC_1.' + Self.UserControl.TableUsers.FieldUserName + ' AS Para, UCM.Subject, UCM.Msg, UCM.DtSend, UCM.DtReceive ' +
- 'FROM (' + TableMessages + ' UCM INNER JOIN ' + UserControl.TableUsers.TableName + ' UCC ON UCM.UsrFrom = UCC.' + Self.UserControl.TableUsers.FieldUserID + ') ' +
- ' INNER JOIN ' + UserControl.TableUsers.TableName + ' UCC_1 ON UCM.UsrTo = UCC_1.' + Self.UserControl.TableUsers.FieldUserID + ' WHERE UCM.UsrTo = ' + IntToStr(UserControl.CurrentUser.UserID) + ' ORDER BY UCM.DtReceive DESC');
- MsgsForm.DSMsgs.Open;
- MsgsForm.DSUsuarios := UserControl.DataConnector.UCGetSQLDataset('SELECT ' +
- UserControl.TableUsers.FieldUserID + ' as idUser, ' +
- UserControl.TableUsers.FieldLogin + ' as Login, ' +
- UserControl.TableUsers.FieldUserName + ' as Nome, ' +
- UserControl.TableUsers.FieldPassword + ' as Senha, ' +
- UserControl.TableUsers.FieldEmail + ' as Email, ' +
- UserControl.TableUsers.FieldPrivileged + ' as Privilegiado, ' +
- UserControl.TableUsers.FieldTypeRec + ' as Tipo, ' +
- UserControl.TableUsers.FieldProfile + ' as Perfil ' +
- ' FROM ' + UserControl.TableUsers.TableName +
- ' WHERE ' + UserControl.TableUsers.FieldUserID + ' <> ' + IntToStr(UserControl.CurrentUser.UserID) +
- ' AND ' + UserControl.TableUsers.FieldTypeRec + ' = ' + QuotedStr('U') +
- ' ORDER BY ' + UserControl.TableUsers.FieldUserName);
- MsgsForm.DSUsuarios.Open;
-
- MsgsForm.Position := Self.FUserControl.UserSettings.WindowsPosition;
- MsgsForm.ShowModal;
- finally
- end;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TVerifThread'} {$ENDIF}
-
-{ TVerifThread }
-
-procedure TUCVerificaMensagemThread.Execute;
-begin
- if (Assigned(TUCApplicationMessage(AOwner).UserControl)) and (TUCApplicationMessage(AOwner).UserControl.CurrentUser.UserID <> 0) then
- Synchronize(VerNovaMansagem);
- Sleep(TUCApplicationMessage(AOwner).Interval);
-end;
-
-procedure TUCVerificaMensagemThread.VerNovaMansagem;
-begin
- TUCApplicationMessage(AOwner).CheckMessages;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUCCollectionItem'} {$ENDIF}
-
-{ TUCCollectionItem }
-
-function TUCExtraRightsItem.GetDisplayName: String;
-begin
- Result := FormName + '.' + CompName;
- if Result = '' then
- Result := inherited GetDisplayName;
-end;
-
-procedure TUCExtraRightsItem.SetFormName(const Value: String);
-begin
- if FFormName <> Value then
- FFormName := Value;
-end;
-
-procedure TUCExtraRightsItem.SetCompName(const Value: String);
-begin
- if FCompName <> Value then
- FCompName := Value;
-end;
-
-procedure TUCExtraRightsItem.SetCaption(const Value: String);
-begin
- if FCaption <> Value then
- FCaption := Value;
-end;
-
-procedure TUCExtraRightsItem.SetGroupName(const Value: String);
-begin
- if FGroupName <> Value then
- FGroupname := Value;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUCCollection'} {$ENDIF}
-
-{ TUCCollection }
-
-constructor TUCExtraRights.Create(UCBase: TUserControl);
-begin
- inherited Create(TUCExtraRightsItem);
- FUCBase := UCBase;
-end;
-
-function TUCExtraRights.Add: TUCExtraRightsItem;
-begin
- Result := TUCExtraRightsItem(inherited Add);
-end;
-
-function TUCExtraRights.GetItem(Index: Integer): TUCExtraRightsItem;
-begin
- Result := TUCExtraRightsItem(inherited GetItem(Index));
-end;
-
-procedure TUCExtraRights.SetItem(Index: Integer; Value: TUCExtraRightsItem);
-begin
- inherited SetItem(Index, Value);
-end;
-
-function TUCExtraRights.GetOwner: TPersistent;
-begin
- Result := FUCBase;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUCRun'} {$ENDIF}
-
-{ TUCRun }
-
-procedure TUCExecuteThread.Execute;
-begin
- while not self.Terminated do
- begin
- if TUserControl(AOwner).DataConnector.UCFindDataConnection then
- Synchronize(UCStart);
- Sleep(50);
- end;
-end;
-
-procedure TUCExecuteThread.UCStart;
-begin
- TUserControl(AOwner).Execute;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUControls'} {$ENDIF}
-
-{ TUCControls }
-
-function TUCControls.GetActiveForm: String;
-begin
- Result := Owner.Name;
-end;
-
-function TUCControls.GetAccessType: String;
-begin
- if not Assigned(UserControl) then
- Result := ''
- else
- Result := UserControl.ClassName;
-end;
-
-procedure TUCControls.ListComponents(Form: String; List: TStrings);
-var
- Contador: Integer;
-begin
- List.Clear;
- if not Assigned(UserControl) then
- Exit;
- for Contador := 0 to Pred(UserControl.ExtraRights.Count) do
- if UpperCase(UserControl.ExtraRights[Contador].FormName) = UpperCase(Form) then
- List.Append(UserControl.ExtraRights[Contador].CompName);
-end;
-
-procedure TUCControls.ApplyRights;
-var
- FListObj: TStringList;
- TempDS: TDataset;
- Contador: Integer;
- SQLStmt: String;
- ExisteObj: Boolean;
- String1: String;
- String2: String;
-begin
- // Apply Extra Rights
-
- if not Assigned(UserControl) then
- Exit;
- with UserControl do
- begin
- if (UserControl.LoginMode = lmActive) and (CurrentUser.UserID = 0) then
- Exit;
-
- FListObj := TStringList.Create;
- Self.ListComponents(Self.Owner.Name, FListObj);
-
- if UserControl.DataConnector.UCFindDataConnection then
- begin
- // permissoes do usuario
- SQLStmt := Format('SELECT %s AS UserID,' +
- ' %s AS ObjName,' +
- ' %s AS UCKey ' +
- 'FROM %sEX ' +
- 'WHERE %s = %d AND ' +
- ' %s = %s AND ' +
- ' %s = %s',
- [TableRights.FieldUserID,
- TableRights.FieldComponentName,
- TableRights.FieldKey,
- TableRights.TableName,
- TableRights.FieldUserID,
- CurrentUser.UserID,
- TableRights.FieldModule,
- QuotedStr(ApplicationID),
- TableRights.FieldFormName,
- QuotedStr(Self.Owner.Name)]);
-
- TempDS := DataConnector.UCGetSQLDataset(SQLStmt);
-
- for Contador := 0 to Pred(FListObj.Count) do
- begin
- UnlockEX(TCustomForm(Self.Owner), FListObj[Contador]);
-
- ExisteObj := (TempDS.Locate('ObjName', FListObj[Contador], []));
-
- case Self.UserControl.Criptografia of
- cPadrao:
- begin
- String1 := Decrypt(TempDS.FieldByName('UCKey').AsString, EncryptKey);
- String2 := TempDS.FieldByName('UserID').AsString + TempDS.FieldByName('ObjName').AsString;
- end;
- cMD5:
- begin
- String1 := TempDS.FieldByName('UCKey').AsString;
- String2 := MD5Sum(TempDS.FieldByName('UserID').AsString + TempDS.FieldByName('ObjName').AsString);
- end;
- end;
-
- if not ExisteObj or (String1 <> String2) then
- LockEX(TCustomForm(Self.Owner), FListObj[Contador], NotAllowed = naInvisible);
- end;
- TempDS.Close;
-
- //permissoes do grupo
- SQLStmt := Format('SELECT' +
- ' %s AS UserID,' +
- ' %s AS ObjName,' +
- ' %s AS UCKey ' +
- 'FROM %sEX ' +
- 'WHERE %s = %d AND ' +
- ' %s = %s AND ' +
- ' %s = %s',
- [TableRights.FieldUserID,
- TableRights.FieldComponentName,
- TableRights.FieldKey,
- TableRights.TableName,
- TableRights.FieldUserID,
- CurrentUser.Profile,
- TableRights.FieldModule,
- QuotedStr(ApplicationID),
- TableRights.FieldFormName,
- QuotedStr(Self.Owner.Name)]);
-
- TempDS := DataConnector.UCGetSQLDataset(SQLStmt);
-
- for contador := 0 to Pred(FListObj.Count) do
- begin
- ExisteObj := (TempDS.Locate('ObjName', FListObj[Contador], []));
-
- case Self.UserControl.Criptografia of
- cPadrao:
- begin
- String1 := Decrypt(TempDS.FieldByName('UCKey').AsString, EncryptKey);
- String2 := TempDS.FieldByName('UserID').AsString + TempDS.FieldByName('ObjName').AsString;
- end;
- cMD5:
- begin
- String1 := TempDS.FieldByName('UCKey').AsString;
- String2 := MD5Sum(TempDS.FieldByName('UserID').AsString + TempDS.FieldByName('ObjName').AsString);
- end;
- end;
-
- if ExisteObj and (String1 = String2) then
- UnlockEX(TCustomForm(Self.Owner), FListObj[Contador]);
- end;
- TempDS.Close;
- end
- else
- LockControls;
- end;
-
- FreeAndNil(FListObj);
-end;
-
-procedure TUCControls.LockControls;
-var
- Contador: Integer;
- FListObj: TStringList;
-begin
- FListObj := TStringList.Create;
- Self.ListComponents(Self.Owner.Name, FListObj);
- for Contador := 0 to Pred(FListObj.Count) do
- UserControl.LockEX(TCustomForm(Self.Owner), FListObj[Contador], NotAllowed = naInvisible);
- FreeAndNil(FListObj);
-end;
-
-procedure TUCControls.Loaded;
-begin
- inherited;
- if not (csDesigning in ComponentState) then
- begin
- ApplyRights;
- UserControl.AddUCControlMonitor(Self);
- end;
-end;
-
-procedure TUCControls.SetGroupName(const Value: String);
-var
- Contador: Integer;
-begin
- if FGroupName = Value then
- Exit;
- FGroupName := Value;
- if Assigned(UserControl) then
- for Contador := 0 to Pred(UserControl.ExtraRights.Count) do
- if UpperCase(UserControl.ExtraRights[Contador].FormName) = UpperCase(Owner.Name) then
- UserControl.ExtraRights[Contador].GroupName := Value;
-end;
-
-destructor TUCControls.Destroy;
-begin
- if not (csDesigning in ComponentState) then
- if Assigned(UserControl) then
- UserControl.DeleteUCControlMonitor(Self);
-
- inherited Destroy;
-end;
-
-procedure TUCControls.SetUserControl(const Value: TUserControl);
-begin
- FUserControl := Value;
- if Value <> nil then
- Value.FreeNotification(self.UserControl);
-end;
-
-procedure TUCControls.Notification(AComponent: TComponent; AOperation: TOperation);
-begin
- if AOperation = opRemove then
- if AComponent = FUserControl then
- FUserControl := nil;
-
- inherited Notification(AComponent, AOperation);
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUCGUID'} {$ENDIF}
-
-{ TUCGUID }
-
-class function TUCGUID.EmptyGUID: TGUID;
-begin
- Result := FromString('{00000000-0000-0000-0000-000000000000}');
-end;
-
-class function TUCGUID.EqualGUIDs(GUID1, GUID2: TGUID): Boolean;
-begin
- Result := IsEqualGUID(Guid1, Guid2);
-end;
-
-class function TUCGUID.FromString(Value: String): TGUID;
-begin
- Result := StringToGuid(Value);
-end;
-
-class function TUCGUID.IsEmptyGUID(GUID: TGUID): Boolean;
-begin
- Result := EqualGuids(Guid, EmptyGuid);
-end;
-
-class function TUCGUID.NovoGUID: TGUID;
-var
- GUID: TGUID;
-begin
- CreateGUID(GUID);
- Result := GUID;
-end;
-
-class function TUCGUID.NovoGUIDString: String;
-begin
- Result := ToString(NovoGUID);
-end;
-
-class function TUCGUID.ToQuotedString(GUID: TGUID): String;
-begin
- Result := QuotedStr(ToString(Guid));
-end;
-
-class function TUCGUID.ToString(GUID: TGUID): String;
-begin
- Result := GuidToString(Guid);
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUSERLOGGED'} {$ENDIF}
-{ TUserLogged }
-
-procedure TUCUsersLogged.AddCurrentUser;
-var
- SQLStmt: String;
-begin
- if not Active then
- Exit;
-
- with FUserControl do
- begin
- CurrentUser.IDLogon := TUCGUID.NovoGUIDString;
- SQLStmt := Format('INSERT INTO %s (%s, %s, %s, %s, %s) Values( %s, %d, %s, %s, %s)',
- [TableUsersLogged.TableName,
- TableUsersLogged.FieldLogonID,
- TableUsersLogged.FieldUserID,
- TableUsersLogged.FieldApplicationID,
- TableUsersLogged.FieldMachineName,
- TableUsersLogged.FieldData,
- QuotedStr(CurrentUser.IDLogon),
- CurrentUser.UserID,
- QuotedStr(ApplicationID),
- QuotedStr(GetLocalComputerName),
- QuotedStr(FormatDateTime('dd/mm/yy hh:mm', now))]);
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(SQLStmt);
- end;
-end;
-
-procedure TUCUsersLogged.Assign(Source: TPersistent);
-begin
- if Source is TUCUsersLogged then
- begin
- Self.Active := TUCUsersLogged(Source).Active;
- Self.MultipleLogin := TUCUsersLogged(Source).MultipleLogin;
- end
- else
- inherited;
-end;
-
-constructor TUCUsersLogged.Create(AOwner: TComponent);
-begin
- inherited Create;
- FUserControl := TUserControl(AOwner);
- Self.FAtive := True;
- Self.fMultipleLogin := True;
-end;
-
-procedure TUCUsersLogged.CriaTableUserLogado;
-var
- SQLStmt: String;
-begin
- if not Active then
- Exit;
-
- with FUserControl.TableUsersLogged do
- SQLStmt := Format('CREATE TABLE %s (%s %s(38), %s %s, %s %s(50), %s %s(50), %s %s(14))',
- [TableName,
- FieldLogonID,
- FUserControl.UserSettings.Type_Char,
-
- FieldUserID,
- FUserControl.UserSettings.Type_Int,
-
- FieldApplicationID,
- FUserControl.UserSettings.Type_VarChar,
-
- FieldMachineName,
- FUserControl.UserSettings.Type_VarChar,
-
- FieldData,
- FUserControl.UserSettings.Type_VarChar]);
- if Assigned(FUserControl.DataConnector) then
- FUserControl.DataConnector.UCExecSQL(SQLStmt);
-end;
-
-procedure TUCUsersLogged.DelCurrentUser;
-var
- SQLStmt: String;
-begin
- if not Active then
- Exit;
-
- if Assigned(FUserControl.DataConnector) = False then
- Exit;
-
- with FUserControl do
- begin
- SQLStmt := Format('DELETE FROM %s WHERE %s = %s',
- [TableUsersLogged.TableName,
- TableUsersLogged.FieldLogonID,
- QuotedStr(CurrentUser.IdLogon)]);
-
- if Assigned(DataConnector) then
- DataConnector.UCExecSQL(SQLStmt);
- end;
-end;
-
-destructor TUCUsersLogged.Destroy;
-begin
- inherited Destroy;
-end;
-
-function TUCUsersLogged.UsuarioJaLogado(ID: Integer): Boolean;
-var
- SQLStmt: String;
- FDataset: TDataset;
-begin
- Result := False;
- if Assigned(FUserControl.DataConnector) = False then
- Exit;
-
- with FUserControl do
- begin
- SQLStmt := Format('SELECT * FROM %s WHERE %s = %s',
- [TableUsersLogged.TableName,
- TableUsersLogged.FieldUserID,
- QuotedStr(IntToStr(ID))]);
-
- if Assigned(DataConnector) then
- begin
- fDataSet := DataConnector.UCGetSQLDataset(SQLStmt);
- Result := not (fDataSet.IsEmpty);
- end;
- end;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUCUserLogoff'} {$ENDIF}
-
-{ TUCUserLogoff Por Vicente Barros Leonel }
-
-procedure TUCUserLogoff.Assign(Source: TPersistent);
-begin
- if Source is TUCUserLogoff then
- begin
- Self.MenuItem := TUCUserLogoff(Source).MenuItem;
- Self.Action := TUCUserLogoff(Source).Action;
- end
- else
- inherited;
-end;
-
-constructor TUCUserLogoff.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCUserLogoff.Destroy;
-begin
- inherited Destroy;
-end;
-
-procedure TUCUserLogoff.SetAction(const Value: TAction);
-begin
- FAction := Value;
- if Value <> nil then
- begin
- Self.MenuItem := nil;
- Value.FreeNotification(Self.Action);
- end;
-end;
-
-procedure TUCUserLogoff.SetMenuItem(const Value: TMenuItem);
-begin
- FMenuItem := Value;
- if Value <> nil then
- begin
- Self.Action := nil;
- Value.FreeNotification(Self.MenuItem);
- end;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUCCurrentUser'} {$ENDIF}
-{ TUCCurrentUser }
-
-constructor TUCCurrentUser.Create(AOwner: TComponent);
-begin
- inherited Create(AOwner);
-end;
-
-destructor TUCCurrentUser.Destroy;
-begin
- if Assigned(FPerfilUsuario) then
- SysUtils.FreeAndNil(FPerfilUsuario);
- if Assigned(FPerfilGrupo) then
- SysUtils.FreeAndNil(FPerfilGrupo);
- inherited;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-end.
diff --git a/internal/2.31RC1/1/Source/UCDataConnector.pas b/internal/2.31RC1/1/Source/UCDataConnector.pas
deleted file mode 100644
index 5c73a01..0000000
--- a/internal/2.31RC1/1/Source/UCDataConnector.pas
+++ /dev/null
@@ -1,25 +0,0 @@
-unit UCDataConnector;
-
-interface
-
-{.$I 'UserControl.inc'}
-
-uses
- Classes,
- DB;
-
-type
- TUCDataConnector = class(TComponent)
- public
- procedure UCExecSQL(FSQL: String); virtual; abstract;
- function UCGetSQLDataset(FSQL: String): TDataset; dynamic; abstract;
- function UCFindTable(const Tablename: String): Boolean; virtual; abstract;
- function UCFindDataConnection: Boolean; virtual; abstract;
- function GetDBObjectName: String; virtual; abstract;
- function GetTransObjectName: String; virtual; abstract;
- end;
-
-implementation
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/UCDataInfo.pas b/internal/2.31RC1/1/Source/UCDataInfo.pas
deleted file mode 100644
index 3ac4572..0000000
--- a/internal/2.31RC1/1/Source/UCDataInfo.pas
+++ /dev/null
@@ -1,247 +0,0 @@
-unit UCDataInfo;
-
-interface
-
-uses
- Classes;
-
-type
- TUCTableUsers = class(TPersistent)
- private
- FEmail: String;
- FTypeRec: String;
- FUserID: String;
- FPrivileged: String;
- FUserName: String;
- FTable: String;
- FProfile: String;
- FLogin: String;
- FPassword: String;
- FKey: String;
- fDateExpired: String;
- fUserExpired: String;
- fFieldUserDaysSun: String;
- fFieldUserInative: String;
- protected
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property FieldUserID: String read FUserID write FUserID;
- property FieldUserName: String read FUserName write FUserName;
- property FieldLogin: String read FLogin write FLogin;
- property FieldPassword: String read FPassword write FPassword;
- property FieldEmail: String read FEmail write FEmail;
- property FieldPrivileged: String read FPrivileged write FPrivileged;
- property FieldTypeRec: String read FTypeRec write FTypeRec;
- property FieldProfile: String read FProfile write FProfile;
- property FieldKey: String read FKey write FKey;
- property FieldDateExpired: String read fDateExpired write fDateExpired; { By Vicente Barros Leonel }
- property FieldUserExpired: String read fUserExpired write fUserExpired; { By vicente barros leonel }
- property FieldUserDaysSun: String read fFieldUserDaysSun write fFieldUserDaysSun; { By vicente barros leonel }
- property FieldUserInative: String read fFieldUserInative write fFieldUserInative; { By vicente barros leonel }
- property TableName: String read FTable write FTable;
- end;
-
- TUCTableRights = class(TPersistent)
- private
- FUserID: String;
- FFormName: String;
- FModule: String;
- FTable: String;
- FComponentName: String;
- FKey: String;
- protected
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property FieldUserID: String read FUserID write FUserID;
- property FieldModule: String read FModule write FModule;
- property FieldComponentName: String read FComponentName write FComponentName;
- property FieldFormName: String read FFormName write FFormName;
- property FieldKey: String read FKey write FKey;
- property TableName: String read FTable write FTable;
- end;
-
- TUCTableUsersLogged = class(TPersistent)
- private
- FTableName: String;
- FData: String;
- FApplicationID: String;
- FUserID: String;
- FLogonID: String;
- FMachineName: String;
- { private declarations }
- protected
- { protected declarations }
- public
- { public declarations }
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- { published declarations }
- property FieldLogonID: String read FLogonID write FLogonID;
- property FieldUserID: String read FUserID write FUserID;
- property FieldApplicationID: String read FApplicationID write FApplicationID;
- property FieldMachineName: String read FMachineName write FMachineName;
- property FieldData: String read FData write FData;
- property TableName: String read FTableName write FTableName;
- end;
-
- TUCTableHistorico = class(TPersistent)
- private
- FTable: String;
- FApplicationID: String;
- FUserID: String;
- fDateEvent: String;
- fFieldForm: String;
- fFieldEvent: String;
- fFieldObs: String;
- fCaptionForm: string;
- fEventTime: String;
- fFieldTableName: String;
- protected
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property TableName : String read FTable write FTable; // nome da tabela
- property FieldApplicationID : String read FApplicationID write FApplicationID;
- property FieldUserID : String read FUserID write FUserID;
- property FieldEventDate : String read fDateEvent write fDateEvent;
- property FieldEventTime : String read fEventTime Write fEventTime;
- property FieldForm : String read fFieldForm write fFieldForm;
- property FieldCaptionForm : string read fCaptionForm write fCaptionForm;
- Property FieldEvent : String read fFieldEvent write fFieldEvent;
- property FieldObs : String read fFieldObs write fFieldObs;
- property FieldTableName : String read fFieldTableName write fFieldTableName; // grava o nome da tabela monitorada
- end;
-
-implementation
-
-{ TUCTableRights }
-
-procedure TUCTableRights.Assign(Source: TPersistent);
-begin
- if Source is TUCTableRights then
- begin
- Self.FieldUserID := TUCTableRights(Source).FieldUserID;
- Self.FieldModule := TUCTableRights(Source).FieldModule;
- Self.FieldComponentName := TUCTableRights(Source).FieldComponentName;
- Self.FieldFormName := TUCTableRights(Source).FieldFormName;
- Self.FieldKey := TUCTableRights(Source).FieldKey;
- end
- else
- inherited;
-end;
-
-constructor TUCTableRights.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCTableRights.Destroy;
-begin
-
- inherited;
-end;
-
-{ TUCTableUsers }
-
-procedure TUCTableUsers.Assign(Source: TPersistent);
-begin
- if Source is TUCTableUsers then
- begin
- Self.FieldUserID := TUCTableUsers(Source).FieldUserID;
- Self.FieldUserName := TUCTableUsers(Source).FieldUserName;
- Self.FieldLogin := TUCTableUsers(Source).FieldLogin;
- Self.FieldPassword := TUCTableUsers(Source).FieldPassword;
- Self.FieldEmail := TUCTableUsers(Source).FieldEmail;
- Self.FieldPrivileged := TUCTableUsers(Source).FieldPrivileged;
- Self.FieldProfile := TUCTableUsers(Source).FieldProfile;
- Self.FieldKey := TUCTableUsers(Source).FieldKey;
- Self.FieldDateExpired := TUCTableUsers(Source).FieldDateExpired; {By Vicente Barros Leonel}
- Self.FieldUserExpired := TUCTableUsers(Source).FieldUserExpired; {By Vicente Barros Leonel}
- Self.FieldUserDaysSun := TUCTableUsers(Source).FieldUserDaysSun; { By vicente barros leonel }
- Self.FieldUserInative := TUCTableUsers(Source).FieldUserInative; { By vicente barros leonel }
- Self.TableName := TUCTableUsers(Source).TableName;
- end
- else
- inherited;
-end;
-
-constructor TUCTableUsers.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCTableUsers.Destroy;
-begin
- inherited;
-end;
-
-{ TUCTableUsersLogged }
-
-procedure TUCTableUsersLogged.Assign(Source: TPersistent);
-begin
- if Source is TUCTableUsersLogged then
- begin
- Self.FieldLogonID := TUCTableUsersLogged(Source).FieldLogonID;
- Self.FieldUserID := TUCTableUsersLogged(Source).FieldUserID;
- Self.FieldApplicationID := TUCTableUsersLogged(Source).FieldApplicationID;
- Self.FieldMachineName := TUCTableUsersLogged(Source).FieldMachineName;
- Self.FieldData := TUCTableUsersLogged(Source).FieldData;
- Self.TableName := TUCTableUsersLogged(Source).TableName;
- end
- else
- inherited;
-end;
-
-constructor TUCTableUsersLogged.Create(AOwner: TComponent);
-begin
-
-end;
-
-destructor TUCTableUsersLogged.Destroy;
-begin
- inherited;
-end;
-
-{ TUCTableHistorico }
-
-procedure TUCTableHistorico.Assign(Source: TPersistent);
-begin
- if Source is TUCTableHistorico then
- begin
- Self.FieldApplicationID := TUCTableHistorico(Source).FieldApplicationID;
- Self.FieldUserID := TUCTableHistorico(Source).FieldUserID;
- Self.FieldEventDate := TUCTableHistorico(Source).FieldEventDate;
- Self.TableName := TUCTableHistorico(Source).TableName;
- Self.FieldForm := TUCTableHistorico(Source).FieldForm;
- Self.FieldEvent := TUCTableHistorico(Source).FieldEvent;
- Self.FieldObs := TUCTableHistorico(Source).FieldObs;
- Self.FieldCaptionForm := TUCTableHistorico(Source).FieldCaptionForm;
- Self.FieldEventTime := TUCTableHistorico(Source).FieldEventTime;
- Self.FieldTableName := TUCTableHistorico(Source).FieldTableName;
- end
- else
- inherited;
-end;
-
-constructor TUCTableHistorico.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCTableHistorico.Destroy;
-begin
- inherited;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/UCEMailForm_U.dfm b/internal/2.31RC1/1/Source/UCEMailForm_U.dfm
deleted file mode 100644
index 2abfdac..0000000
--- a/internal/2.31RC1/1/Source/UCEMailForm_U.dfm
+++ /dev/null
@@ -1,151 +0,0 @@
-object UCEMailForm: TUCEMailForm
- Left = 450
- Top = 464
- BorderStyle = bsDialog
- Caption = 'Envio de Email'
- ClientHeight = 34
- ClientWidth = 303
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- FormStyle = fsStayOnTop
- OldCreateOrder = False
- Position = poScreenCenter
- PixelsPerInch = 96
- TextHeight = 13
- object Panel1: TPanel
- Left = 0
- Top = 0
- Width = 303
- Height = 34
- Align = alClient
- BevelOuter = bvLowered
- Color = clWhite
- TabOrder = 0
- object img: TImage
- Left = 8
- Top = 3
- Width = 28
- Height = 28
- AutoSize = True
- Picture.Data = {
- 07544269746D6170760C0000424D760C00000000000036000000280000001C00
- 00001C0000000100200000000000400C00000000000000000000000000000000
- 0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0098300000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF009830000098300000FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00D76733009830000098300000983000009830000098300000DB8D
- 630098300000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D7673300FBC4A100FFB3
- 8B00FCAF8800F8AB8300F0A27A00E89A7100E092680098300000FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00D7673300FBC4A100FFB38B00FFB38B00FFB38B00F8AB8300F0A2
- 7A00E89A7100E092680098300000FFFFFF00C7B2A30069473100694731006947
- 3100694731006947310069473100694731006947310069473100694731006947
- 310069473100694731006947310069473100B7A29300D7673300FBC4A100FFB3
- 8B00FFB38B00FFB38B00FFB38B00F8AB8300F0A27A00E89A7100E09268009830
- 0000C7B2A300DBC9BF00B7A29300B7A29300B7A29300B7A29300B7A29300B7A2
- 9300B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A29300B7A2
- 9300DDC5C200D7673300FBC4A100FFB38B00FFB38B00FFB38B00FFB38B00FFB3
- 8B00F8AB8300F0A27A0098300000FFFFFF00C7B2A300DBC9BF00B7A29300E4D7
- CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7
- CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00E4D7CF00D7673300FBC4A100FBC4
- A100FBC4A100FBC4A100FBC4A100FBC4A100FFB38B0098300000FFFFFF00FFFF
- FF00C7B2A300DECEC500DECEC500B7A29300E9DED700E9DED700E9DED700E9DE
- D700E9DED700E9DED700E9DED700E9DED700E9DED700E9DED700E9DED700E9DE
- D700E9DED700D7673300D7673300D7673300D7673300D7673300D7673300FBC4
- A10098300000FFFFFF00FFFFFF00FFFFFF00C7B2A300E2D4CC00E2D4CC00E2D4
- CC00B7A29300EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4
- DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4
- DF00DDC5C200E2D4CC00D767330098300000B7A29300FFFFFF00FFFFFF00FFFF
- FF00C7B2A300E6D9D200E6D9D200E6D9D200E6D9D200B7A29300F0E9E500F0E9
- E500F0E9E500F0E9E500F0E9E500F0E9E500F0E9E500F0E9E500F0E9E500F0E9
- E500F0E9E500F0E9E500F0E9E500B7A29300E6D9D200E6D9D20098300000DDC5
- C20069473100FFFFFF00FFFFFF00FFFFFF00C7B2A300EADFD900EADFD900EADF
- D900EADFD900EADFD900B7A29300F4EFEC00F4EFEC00F4EFEC00F4EFEC00F4EF
- EC00F4EFEC00F4EFEC00F4EFEC00F4EFEC00F4EFEC00F4EFEC00B7A29300EADF
- D900EADFD900EADFD900EADFD900B7A2930069473100FFFFFF00FFFFFF00FFFF
- FF00C7B2A300EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00B7A2
- 9300F8F4F200F8F4F200F8F4F200F8F4F200F8F4F200F8F4F200F8F4F200F8F4
- F200F8F4F200B7A29300EDE4DF00EDE4DF00EDE4DF00EDE4DF00EDE4DF00B7A2
- 930069473100FFFFFF00FFFFFF00FFFFFF00C7B2A300F0E8E400F0E8E400F0E8
- E400F0E8E400F0E8E400F0E8E400B7A29300B7A29300FCFAF900FCFAF900FCFA
- F900FCFAF900FCFAF900FCFAF900FCFAF900B7A29300B7A29300F0E8E400F0E8
- E400F0E8E400F0E8E400F0E8E400B7A2930069473100FFFFFF00FFFFFF00FFFF
- FF00C7B2A300F3EDE900F3EDE900F3EDE900F3EDE900F3EDE900B7A29300DDC5
- C200DDC5C200B7A29300DDC5C200FFFFFF00FFFFFF00FFFFFF00DDC5C200B7A2
- 9300DDC5C200DDC5C200B7A29300F3EDE900F3EDE900F3EDE900F3EDE900B7A2
- 930069473100FFFFFF00FFFFFF00FFFFFF00C7B2A300F6F1EF00F6F1EF00F6F1
- EF00F6F1EF00B7A29300DDC5C200AFE0FB00A7DDFB00A0DAFC00C7B2A300B7A2
- 9300B7A29300B7A29300C7B2A300DDC5C2006AC4FD0062C0FD005ABDFD00B7A2
- 9300F6F1EF00F6F1EF00F6F1EF00B7A2930069473100FFFFFF00FFFFFF00FFFF
- FF00C7B2A300F9F6F400F9F6F400F9F6F400B7A29300DDC5C200BDE7FB00B6E3
- FB00AFE0FB00A7DDFB00A0DAFC0099D7FC0091D4FC008AD1FC0082CEFC007ACA
- FD0072C7FD006AC4FD0062C0FD005ABDFD00B7A29300F9F6F400F9F6F400B7A2
- 930069473100FFFFFF00FFFFFF00FFFFFF00C7B2A300FCFBFA00FCFBFA00B7A2
- 9300C8B3A400CCEDFA00C5EAFB00BDE7FB00B6E3FB00AFE0FB00A7DDFB00A0DA
- FC0099D7FC0091D4FC008AD1FC0082CEFC007ACAFD0072C7FD006AC4FD0062C0
- FD005ABDFD00B7A29300FCFBFA00B7A2930069473100FFFFFF00FFFFFF00FFFF
- FF00C7B2A300FFFFFF00B8A39400DDC5C200DBF3FA00D3F0FA00CCEDFA00C5EA
- FB00BDE7FB00B6E3FB00AFE0FB00A7DDFB00A0DAFC0099D7FC0091D4FC008AD1
- FC0082CEFC007ACAFD0072C7FD006AC4FD0062C0FD005ABDFD00B7A29300FFFF
- FF0069473100FFFFFF00FFFFFF00FFFFFF00C7B2A300B7A29300DDC5C200DBF3
- FA00DBF3FA00DBF3FA00D3F0FA00CCEDFA00C5EAFB00BDE7FB00B6E3FB00AFE0
- FB00A7DDFB00A0DAFC0099D7FC0091D4FC008AD1FC0082CEFC007ACAFD0072C7
- FD006AC4FD0062C0FD005ABDFD00B7A2930069473100FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00C7B2A300DBF3FA00DBF3FA00DBF3FA00DBF3FA00DBF3FA00D7F2
- FA00D0EFFA00C8EBFA00C1E8FB00BAE5FB00B2E2FB00A7DDFB00A0DAFC0099D7
- FC0091D4FC008AD1FC0082CEFC007ACAFD0072C7FD006AC4FD0062C0FD00B7A2
- 930069473100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C7B2A300DBF3
- FA00DBF3FA00DBF3FA00DBF3FA00DBF3FA00D7F2FA00D0EFFA00C8EBFA00C1E8
- FB00BAE5FB00B2E2FB00ABDFFB00A4DBFC009CD8FC0095D6FC008ED3FC0086CF
- FC007ECCFD0076C9FD00B7A2930069473100FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00C7B2A300DBF3FA00DBF3FA00DBF3FA00DBF3
- FA00DBF3FA00D7F2FA00D0EFFA00C8EBFA00C1E8FB00BAE5FB00B2E2FB00ABDF
- FB00A4DBFC009CD8FC0095D6FC008ED3FC0086CFFC00BCA7980069473100FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00C7B2A300DBF3FA00DBF3FA00DBF3FA00DBF3FA00DBF3FA00D7F2FA00D0EF
- FA00C8EBFA00C1E8FB00BAE5FB00B2E2FB00ABDFFB00A4DBFC009CD8FC0095D6
- FC00BBA6970073533E00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C7B2A300DBF3FA00DBF3
- FA00DBF3FA00DBF3FA00DBF3FA00D7F2FA00D0EFFA00C8EBFA00C1E8FB00BAE5
- FB00B2E2FB00ABDFFB00A4DBFC00B7A2930069473100FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00C7B2A300DBF3FA00DBF3FA00DBF3FA00DBF3FA00DBF3
- FA00D7F2FA00D0EFFA00C8EBFA00C1E8FB00BAE5FB00B2E2FB00B7A293006947
- 3100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C7B2
- A300DBF3FA00DBF3FA00DBF3FA00DBF3FA00DBF3FA00D7F2FA00D0EFFA00C8EB
- FA00C1E8FB00B7A2930069473100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C7B2A300C7B2A300C7B2A300C7B2
- A300C7B2A300C7B2A300C7B2A300C7B2A300B7A2930069473100FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00}
- end
- object lbStatus: TLabel
- Left = 48
- Top = 14
- Width = 66
- Height = 14
- Caption = 'Status email'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -12
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- end
-end
diff --git a/internal/2.31RC1/1/Source/UCEMailForm_U.pas b/internal/2.31RC1/1/Source/UCEMailForm_U.pas
deleted file mode 100644
index 79101cb..0000000
--- a/internal/2.31RC1/1/Source/UCEMailForm_U.pas
+++ /dev/null
@@ -1,34 +0,0 @@
-unit UCEMailForm_U;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- Classes,
- Controls,
- ExtCtrls,
- Forms,
- Graphics,
- StdCtrls;
-
-type
- TUCEMailForm = class(TForm)
- Panel1: TPanel;
- img: TImage;
- lbStatus: TLabel;
- private
- { Private declarations }
- public
- { Public declarations }
- end;
-
-var
- UCEMailForm: TUCEMailForm;
-
-implementation
-
-{$R *.dfm}
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/UCEditorForm_U.dfm b/internal/2.31RC1/1/Source/UCEditorForm_U.dfm
deleted file mode 100644
index 53cd4ad..0000000
--- a/internal/2.31RC1/1/Source/UCEditorForm_U.dfm
+++ /dev/null
@@ -1,1585 +0,0 @@
-object UCEditorForm: TUCEditorForm
- Left = 237
- Top = 128
- BorderStyle = bsDialog
- Caption = 'Configura'#231#227'o UserControl'
- ClientHeight = 524
- ClientWidth = 594
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- OldCreateOrder = False
- Position = poMainFormCenter
- OnClose = FormClose
- OnCreate = FormCreate
- PixelsPerInch = 96
- TextHeight = 13
- object pnlBotoes: TPanel
- Left = 0
- Top = 479
- Width = 594
- Height = 45
- Align = alBottom
- BevelOuter = bvNone
- TabOrder = 0
- object btnOK: TBitBtn
- Left = 219
- Top = 7
- Width = 75
- Height = 25
- TabOrder = 0
- Kind = bkOK
- end
- object btnClose: TBitBtn
- Left = 299
- Top = 7
- Width = 75
- Height = 25
- Caption = '&Fechar'
- TabOrder = 1
- Kind = bkClose
- end
- end
- object Panel2: TPanel
- Left = 0
- Top = 0
- Width = 594
- Height = 73
- Align = alTop
- BevelOuter = bvNone
- Color = clWhite
- TabOrder = 1
- object lbComponente: TLabel
- Left = 5
- Top = 27
- Width = 230
- Height = 19
- Alignment = taCenter
- AutoSize = False
- Caption = 'Configura'#231#227'o B'#225'sica'
- Font.Charset = ANSI_CHARSET
- Font.Color = clBlack
- Font.Height = -16
- Font.Name = 'Tahoma'
- Font.Style = [fsBold]
- ParentFont = False
- end
- object Image1: TImage
- Left = 220
- Top = 0
- Width = 374
- Height = 73
- Align = alRight
- AutoSize = True
- Picture.Data = {
- 0A544A504547496D616765FE200000FFD8FFE000104A46494600010101004800
- 480000FFDB0043000302020302020303030304030304050805050404050A0707
- 06080C0A0C0C0B0A0B0B0D0E12100D0E110E0B0B1016101113141515150C0F17
- 1816141812141514FFDB00430103040405040509050509140D0B0D1414141414
- 1414141414141414141414141414141414141414141414141414141414141414
- 14141414141414141414141414FFC00011080050017603012200021101031101
- FFC4001F0000010501010101010100000000000000000102030405060708090A
- 0BFFC400B5100002010303020403050504040000017D01020300041105122131
- 410613516107227114328191A1082342B1C11552D1F02433627282090A161718
- 191A25262728292A3435363738393A434445464748494A535455565758595A63
- 6465666768696A737475767778797A838485868788898A92939495969798999A
- A2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6
- D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F01000301
- 01010101010101010000000000000102030405060708090A0BFFC400B5110002
- 0102040403040705040400010277000102031104052131061241510761711322
- 328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728
- 292A35363738393A434445464748494A535455565758595A636465666768696A
- 737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7
- A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3
- E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F00FD52
- DA2968A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2
- 800A28A280129314EA2801980690A8A7919A6918A0040A29703DE8A5C52B00A3
- 18A5A414B4C0422A3755352D3185260549A38D8739ACBBB82D70776EAD891335
- 977908C1AC66B4378339CBE834C19DFE67E15CF5F43A1027779D5D06A76FC371
- 5C86A96F8278AF36ABB743D3A4AFD4A772BE1B04EE37159D31F0B8CE5AE47E35
- 46FE2C678AE7EF58464F19AF32752DD11EA429DFED33A573E14EED723F1A88BF
- 84FF00BD75F9D7097BAC476F9DD139C7A62B3EF3C516569A72DE3966466D8100
- F9B77A1F4AE7757FBA8E85497F333D2B7F84FF00BD75F9D1BFC27FDEBAFCEBC8
- 1BE22582FF00CBB5D9FA22FF00F1552699E3FD3753BF8ACD56686690E17CD500
- 13E9C1A9F6DFDD43F64BF999EB7BFC27FDEBAFCE8DFE13FEF5D7E75E47A87C43
- D1F4FBD92D5A5925963387F2937007D2A23F12F460325A751D7988D1EDBFBA83
- D92FE667B0EFF09FF7AEBF3A37F84FFBD75F9D7954FE39D1EDB4A8B507B922DE
- 5E170A771F5E2AAC7F137C3EE3FE3EE45FADBC9FE147B6FEEA0F64BF999EBFBF
- C27FDEBAFCE8DFE13FEF5D7E75E5FA678CB47D61E45B5BD5768D4BB0652B803A
- 9E40A84F8FFC3C1CAFF6ADBE41C7DEA3DB7F7507B15FCCFEF3D5B7F84FFBD75F
- 9D1BFC27FDEBAFCEBCD2CFC57A3DFCAB1C1A9DAC9231C2A0946E27D00A9E7D77
- 4DB598C336A16D14A3AA3CCA187E19A3DB7F7507B15FCCFEF3D1E27F0A6E386B
- AE9EB4579D5BF88F4A0E4FF695A631FF003D97FC68AB557FBA84E8FF00799F6F
- D14515F667C48578AFED47FB58F843F64AF0BE8FAEF8BEC757D42DB54BC36504
- 3A34514B287085CB1124B18DB85C6413C91C57B557E667FC16CF5069BC35F08B
- 41882B5C5FEA779346A7824A2429D4F006661D7DBDE803F49347D622D6742B2D
- 5638E5B782EAD92E563B850AE8ACA18061938201E79AF1CFD96BF6BDF08FED71
- A46BFA978434AD774DB5D1AE23B69DB5B82188C8EEA5BE4F2E59338039CE3A8E
- B5DFFC43BB83C1DF077C4B72A425B697A15CC80C996C2476EC79EE785AFCB9FD
- 85F46F88FF00F0EF5F8D3A97C286963F1B5C6BE21B56B363F6A31C515B3CC21F
- 493CB91F6E3924903E6DB401FAF1457E7A7FC13CEC3C3BE25D3EC7C6F17C70F8
- 87ACF8CB44B694F8C3C19E24D51A4B7498C6EAE4DB3297DAAE772C9B9892B83B
- 492A3C93E14FC51D5FF6CAD5BC69E37F1EF8B3E31693A1C7A8BD8E83A1FC32D3
- 2FDED2C91515834B25BC32234A1644E1BE6E493F2B28A00FD67A2BF29A4F8C1F
- 1E3C3DFB0B7C7AB3F185CF8E344D47C2F7FA58F0D78BF58B6BBD2F52BCB59B50
- 4460257092310A9F31C96027DAC71815EFFF00B047C1DF889ACF87BC13F193C7
- FF00167C41E26BBD4745096DE1E9EE5E4B38ED9D0089E42CC77CC400ECE46496
- 20938CD007D91E24F12E95E0ED06FB5BD7350B6D2B48B189A7BABDBB90471428
- 064B331E00AF8E6EBFE0AADF0FF56D5EEED3C0FE03F1F7C42B5B46227D4743D1
- F740076203307C1E7EF2AF6FC392FF0082CF78BF57D13F67EF0BE8963349069B
- AD6BAA97EC9902448E26748D8FA17C363D631E86BECDF82BF0DFC35F0A3E1778
- 73C33E13B6B78744B2B2896192DD028B825413331FE2673F31249249EB4009F0
- 57E2F693F1D3E1D69BE31D1AC752D2ECEF5E68CD8EB10082EEDDE295A3749630
- CC15B284E327820F7AEE335F17FF00C144BF683F1B7C3DBCF865F0C3E1BEA3FD
- 85E2CF885AA8B01AC0452D6B1192288042DC2B33CCBF375011B182411E47FB4F
- 7C16F887FB117C2FB5F8B3E09F8E5E3AF10EADA75EDB26B361E28D40DE595F89
- 1F696111E9F391C3163866C303C900FD2DA4AFCCBFDB1BE36FC4AF1F7C4AFD95
- D3E17F89F56F085FF8DAC2DB54FB35B5ECB1DA319DADDD3ED31290264405B72B
- 020AEE183922B8BFDB17E1FF00C62FD892F3C13F12346F8EFE2DF19EA1A96A62
- CEEECF549A4F265976F981443E632344C10AF9647181827B007E9BFC48F8C1E0
- EF84506972F8BF5EB7D15755BB5B1B1598333DCCEC40088AA092791D05762391
- 5F969FF0534F86773AEFED57F01ED23F1BF88ADCF8C75986D16CD6EDBECFA291
- 35A42B7166BD23918BB3B11CEE45356FF6EDB7F897FB3AFF00C339F81FC0DF16
- 3C657DAB6A5AAEA513EABABEB33196FA469ECBC95BA2A40963432950AC080A48
- C726803F5069335F9BDFB456ADF12BF61BF83DA7787343F893ACF8E3E23FC4BD
- 6E3B74D775C3BFEC0422897ECE1CB040CD246173C28662390083F685FD9BBE24
- 7ECABF042EFE2D785FE3F78F759F19E83E45CEAD0EB5A89B8D3EFD5A54470903
- 676805C1C397C80470482003EBFF00DA37F6A3F0BFECC96BE179BC4BA66B5AA7
- FC245A80D32CE3D1608A57129008DC1E44E39ED93ED5EC40EE00FAD7E5D7ED95
- F14A4F8E3E0FFD8D3C4374134F9FC4FAD4379736711E165DF6A92140792AACED
- 827B30CF5AFD451C28FA5007C6BE23FF0082A37C3BD03E2078ABC1F0780FE226
- BDAA786B51B8D32F9F46D22DEE2212452B44CCA45C03B4B2360B0048EC3A57AC
- 7ECC7FB63FC3DFDABACF566F07C9A8596A5A5328BCD27598161BA895890AF856
- 752A4823218E08E71919F80BF65EF8A7E36F02FED0DFB53788FC01F0EA6F88FA
- A5DF8A5D1F468AF85AC90C4F777CDE76E28DB82B0452A00CEFCE462BDC7F634F
- D9DBC69F0C75BF8C5F1BFE30DCE9FF000DF57F1847707ECF1DC4489A5C72C865
- 92777DC5130DB3682C4FCA77726803EFEC8CE296BF217F68DF8A3F0E349F873A
- EDFF00C26F8C7F19BC75E3ED29A37FF84861D5EF64B0B502450E6E242B1C4232
- ACC079631B99474241EE3E287ED25F17BE21F81FF664F857E1EF14CFE1CF177C
- 45D2ADEF75AF135B7EEEE7C973B15D597054ED59246D855890002B93900FD41C
- F04D78EFECF9FB517863F692BAF1941E1AD3359B0FF845B51FECCBC93568228D
- 25972C0F945247C81B3BED3F30E39AE6BE05FEC872FC09F13C5ADDBFC5AF883E
- 2B46B5782EF4AF12EAA2EACA66603122C7B46C652383927048CF35F99BF077F6
- 88F137C38F83DE38F0A783E5934CF1DFC4EF1FCFA45B7882590DB5B69EB88449
- 209BA47266E0004728096E0AAE403F6D5D720D52B88F703C57CFDAAF8234AF81
- 3FB2F47E1FF881F1B3C43A34AE623A978E6F35A73A8CB3EE5774B692732140C1
- 0A2A2293B37705896AFCF4F8FDF1D74CF056A3E0DF107ECF7F10FE2B6B178DAA
- ADADE6B5E23BFBC9748BF623E58D85C01E63B1524AEDC60138CE312D5CA4EC7E
- B6EA30641E335C9EAD66E413B49AF953E367C4AF885FB467ED8D3FECFF00E02F
- 175E7C3FF0DF8774F1A9788F5CD24EDBE986D898AC520C1400CF120008F9998B
- 6E002D79978CFE19EB3FB3EFEDA1F03BC1BE1AF8AFE3ED6348F105D25CEA969A
- FEBCF32CCB14A494288114C6EAAC36B03DF9AE49D1E6D2E75C2B72EB63EC8D42
- D5D890149FA5731AADAC9129DC8471DEBE5FF881F14F52F8E3FB58F8DBC0B7BA
- EF8EF41F875E0D4F25ECFE1DE9D753DEDF5D0655633BDBC6EC91EEDE0646308B
- 8192586A7ECFD71F107C3DF1C7C55E10B88FE206BBF0926D3FED3A46B7E3AD2E
- EE1B8B49D550F95E74D1AE464C8BB78076A900739F3AA60DA8B95CF4A963173A
- 8DB4D8F55D6530589FA570177765361203C6AECE14F4278AF40D7ADCBB380E40
- 071D6B86D6745DD1A8128048DC0AB7415E1BDCF711CD6A17AD711A284085776E
- 61DF3D3F2ACCFB535A5CDA4A8C77ACE9839E4722AD5E6892C793F6E7EBCE0D63
- B69ACB9B87BB6985BCE8BB59F1927E607F4350C64F1EADE5CD70CD1ABC924E58
- B9EA0066CE3EA71F954324E6595DB2CB131385CF41DA9B2F872EA646BC8A6115
- BC929032C383DFF0EB43F873528ECBED4D707C8CECDF818CF5C50324D52F19B4
- 9B488A868E3B99064807AAA9C7EA6A2BBD596E632208DA06F309C87E36E381D3
- B63AD2CFA705F0FB34B3B3CA6E7098C7DEDA327F2C7D6A80D12F0410CEB3AEC9
- 7215830EB9C629202DDADE4B0A4C530ED246C8FB8F6EA7F90FCAAB69D7F6B15A
- 8596373212C77AB7418C0E3A7506A44D2AE6D512E259C3444942A1C020E3BFF9
- E6B3EE74B9AD4C5FBC0AB28CA96C607247269812C37522CA926F3BD1832F3DFA
- 8A20BCB792FEE1EEFCDD8DF364364E4E3D7E8696E743BFB7754255B70CA32302
- AC0F420FF9EB556F6C26B3BC68DDB6C8A76B0E281D84D4DD3CD7113EE8836109
- E0E314555786691701867D4D154897B9FB25451457DD9F0615F317EDD9FB175B
- FED87E09D16D6DB595D07C4BA04D2CDA6DDCD11920612851245201C80DE5C677
- 0CE0AF435F4ED1401F9EBE29F811FB6E7C4CF8793FC37F11F8EBC056BE1FBAB6
- FB05FEB56E66379796F80ACACDE4F3BD7838542C0904F273EC3E05FD98FC7BFB
- 2FFECD5A47827E08EB9A15E78BADB52FED1D46F7C556EE969A8EF5612AED8B73
- 47D220B839C4782DC935F54D1401F10FECFF00FB22FC545FDA9F56F8E5F162FB
- C27A6EA177A7BD89D0BC211CBE45CEE411969BCC1D3033C972C7192028159BF0
- E7F655F8F7FB21F8A7C516DF04F56F077897E1D6B77CD7D1685E2B7B8867B291
- 8019568860E15550B6EF9828F941E47DE145007C9BF1BBE04FC6DFDA23F647F1
- 2F813C59AAF836D3C7BACEA104CBFD96D7316970DAC734522C459A3794B7EEC9
- 2769E4819C0AF79F817E04BBF85FF05BC09E0FD40DABEA1A168765A6DD3D9126
- 179A28112474255490CCA4E4804E7919AEE68A00F2BFDA5FF677F0E7ED3FF0A6
- FF00C11E23696DA19644B9B4BFB700CB677299D92A83C1E199483D55D8646723
- E5BF03FC14FDB53E07787ED7C19E14F1D780BC59E19B2416FA75EEBF1CEB736B
- 08E1548099C28E80B49800007000AFBE28A00F8FBE3AFEC6DE38FDA0BE0FFC3F
- 9FC41E34B0B4F8E1E0EBA7D46D3C49676FB6C8CCD207F2B68452117643B5F612
- 0C5920EE6CF0DF107F65BFDA63F6AD8744F09FC67F15782BC3FE01D3AEE3B9BD
- 4F08473B5DEA6C80804F98368C827BAA82C1B6315007DF545007C99F127F643F
- 10F89BF6B3F833E3DD12E747B2F87FE01D2D6C8E9B35CCC2EF728982F95188CA
- 1500C2325C13B4E470337BF6E6FD967C51FB4FC7F0DED7C3F79A3DA59F87F5B1
- A96A3FDA9712C4D245F28DB17971BE588DDD4AF6E79E3EA5A2803E36FDB7FF00
- 651F88FF0018BE25FC2DF88BF0CB55D1A0D7FC1571E72D8EB8EE90BB09525460
- 555B23298653B72318354BE337ECA5F17BE3D78E3F677F17789753F080D43C0F
- A9FF0069F88ACA092E12DE4DD7704CD1DAA989F70114213F78C3240C9E49AFB5
- A8A00F9FBF6CEFD94ADFF6ADF86F65A4DBEAC7C3DE26D1AEC6A3A36ADB4B2C33
- 01828E01076B71C8E54AA919C60F827C41FD9B3F6AEFDA4FC2B65F0EBE2878C7
- C0BA2F81E39E27D4F52F0EC33BDF6A8B1B065DC8EA13EF2AB607963201C1C62B
- EFCA2803E3BF8F7FB13EB1E39F1BFECD83C1B2E8963E0AF8557B0BDCDA6A934A
- 2E27B7496D09540B132BB14B539DC572CDC9E491F6191C114B45007C7FFB177E
- C89E36FD9E7E2FFC5FF1778AB52D0AF6D3C6579F6AB38B489E6778BF7F348448
- 248900E255E85BA1FC7D4BF6C9F801A87ED33F0075EF02695AC268BA8DDC90DC
- 5BCF3EEF21DE29038497682761C7500E08070718AF6EA2803E0ED7FF00661F8E
- FE3FFD8FF50F8217DA5FC38F0CC70DA69F656979A6DE5CAA5CF913C723CB2010
- 1D8CDE502700966624EDEFB1F1C7F60FF1378BFC13F05754F01F896C3C35F143
- E18E996561697571BDECAE4411C63696DA5800E848250EE0CC1979E3ED9A2803
- C1BE04C7FB464F79A8CBF175FC07159476061B0B5F0C8B9F366B9CAFEF676932
- 02E01184EEC78E057CE5F0C3FE09A3AB59FEC65E32F845E38D4342B8F135EEBD
- 36BFA26ABA6492CB0D9CFF006682388B33C48C3262757014FC8FC64F4FD06A28
- 03F3DFE2E7EC47F1C7E32FC12F85FA6F8ABC45E13D5FC75F0FAF9DE159EEAE67
- D3F5BB5222DBF6ADD0AB79A3C90872A430662581635D67C6DFD9A3E32FED1BA6
- FC243E20B5F03785FF00E114F118D4AF74ED36FAE5A33669E408D623E472E42C
- FF002FCAA0797C9C9DBF6D9E9514BF769303E1AF8CDFB2D7C48F0EFED5B77F1A
- 3E077893C370789753B14835AF0EF8919C45345B563DDFBB058A3F90848CA9DD
- 19218E481E05FD9DE339BFE0A9FF000B2D7C63E26D3FC4FE2B834B7B8D461D1A
- 268AC34B3F67BC7FB3401C96D823D8FB9FE66694FA8AFB9FE3CFEC8FF0FF00E3
- D789AC3C49E211AC69FE22B0B4FB0DBEABA26A525A4EB0EE66D9C641019D8F23
- F88D731F06BF643F861FB386B97FAFF85B4EBEBDF135EC4F0CBAD6B578D75721
- 18E5829202A93C6485C90304F5CE529A8ABB368C1C9D91E47E36FD9C7E22780B
- F685F107C59F82FAFF0087E1B9F114623D6FC37E2712A5B5C1F972F1BC609C96
- 50FC952096E483B6BB7F07FF00C2D478B56B9F89771E11B64758D74ED3FC2AF7
- 1214396F31E7798724FC9B42718273CD7A9EAEE497393CD71BABBB156E49AF12
- BD76E3CAD1EE50C3A52E64CE1356CF98C73EB5C76B9108A4DAA79C648C743FFE
- AAEBF5C0E992B9CF3DABCF35ABABB47202E49E9953CD78EF73D8455D5EC05B5B
- C6FE62E48E54BF24FB0F4FA135C4DE122F2E0E401F684079C7F09ABBA86A57A5
- C8FBB838E10D6588A67B69A4663E679AAFEE7823A566CA35E5898E9913FDA588
- DC40889E14FA819FE9DFE99D58F4991FC30938BA2A4B31F21BEE151CE47E22B8
- B13DE200426476CA77A57BEBBCED2BB4F4236907E94EC05DD409FB2F04802688
- F5F50C3FA5422DDA4D29A6FB50C472045B6CF232324E3F21F89A8E232DD59DD8
- 98FCC4C65401D704E40FFBEAA9949F3900B0ED94CD219B1656F14BA44EED2482
- 58183E09FDDE0F18FA9FE40D65EA058980EEC0194C7EBFFB3547299E2E1F838E
- 8463FCFF00F5E9E13CFB52F23E595C6D53D48C75FE5400B730CCBA7DADC79EF2
- 2312A149202107A0E7F954FABD835B7932995A7124633213BB6B775CFB7071D7
- 9ACE5858703201F6C7144B1B4726D7C061C1C60E3FFD540CA52B10872790DDA8
- A9EFAD96354084485802483800E3A73455AD897B9FB1F451457DD1F061505EDE
- DBE9D6B2DD5DCF1DB5B44A5E49A670888A3A924F0054F5F3CFED75309DBE1DE9
- 3A94EF6DE13D475E8A3D5E40FB10A0236ABB7653973CF1F2E7B567527C91722A
- 2B99D8F4DD1FE3978035FD5E3D2F4FF17693757F236C8E14B95CC8D9C00A4F0C
- 4F60339AD2F157C4EF09F81EF21B5D7FC43A7E9173347E6C715DCEA8CCB92320
- 1ED906BCCFF69CF0C78374EF80FADB4FA769D66B6D6E3FB35A18923649F23CB1
- 1631D4F503A8CF6AF318E7F10EAFF17BE1C4573A559EB3E251E038A792DF5872
- 91CB2B3B06F30ED62AC0027A1E78E3AD73CAACE0F95EFA1A2826AE7D253FC5EF
- 055B6836FADC9E29D297499E5304579F6A431348064A6ECFDE039C75A5F0F7C5
- BF0678B2F64B4D1BC4DA6EA7751C4D33456D70AEC11719620761915F20FC5FF8
- 4BA9FC2FF04682B7EFA75C6B9AEF8CC6A274FB2056CA12CADB6240403B464027
- 1C020638C9FA374EB6F10E97E14F15DEF893C33E1DD0441A64CD04DA1C86491B
- F76C5C3651703818C511AD37269AB581C2295D1E8BE17F19E85E36B192F740D5
- AD357B48E4313CD67289155C004A923A1C107F1AB1A078934BF15581BDD22FE0
- D46D048D119ADDC3AEE5386191DC1AF8EFE10492FECEBA6782FC5D24931F05F8
- BEC92DF5757FBB6979F318A6F6565E3E9B89ED5ED1FB1B44E3F67FD0EE2460CF
- 753DDCC5BB93F6891493EFF2D3A559CDA8B5ADBFCBFCC528249B477B75F187C1
- 365E275F0ECDE27D363D6DA5100B3338DE2427010F60D9E3079C9157BC5DF11B
- C31E028E27F10EBB63A479BFEAD2E660AEFEEABD48F702BC06DEC3FE19ABE234
- B1EAB616BADF81BC61AC0787546895AEAC2EE424AA3E7974E3208E98247390D7
- FE09E9FA778A3E3C7C57BFF12C50DE7892C75116B6305E00E60B205846D1AB67
- 01805C91EA3A6EE45564DF2F5BFDDFE63E45BF43DC7C37F10BC35E30D2EE352D
- 175CB1D4ECAD8133CB6D32B08B8CFCE3AAF009E7156B45F1768DE22D0CEB3A66
- A76D7DA500E7ED90481A3C2E777CC3D3073F4AF997E274567E1CFDA32E3FE111
- 8A18257F0A6A12EBF6F66A044408643099157A3171175E71B7D79DAFD9F751B5
- D1FF00633B8BD17118686C753925F318611C3CD853E991B4E3AF3EF446B37271
- 7D2FF8581C15AE7B45CFC5FF000559E8569AD4FE27D322D26EE468A0BC6B8511
- 4AEBF7955BB918ABBE15F887E18F1C19D7C3FAF69FAC3C1CCA96770B2320EC48
- 07207BD7C6DE15B655F85DFB3C59FD923964BCD7EEE631DC83E5B9170C006183
- C1057B7415D1E836FA86B7A7FC54F899A7C36DE1BF14E9BA65CE88DE1FD2A3D8
- F66C982F2BB0C6E7C2E548007CBDCAD66B11276D3FAB5C6E9A3E8FD77E38F807
- C33AA49A76A5E2DD2AD6FA36DB2406E0168DBD1B19DA7D8E2A5D6BE33F817C39
- A949A7EA9E2BD2AC2FA20ACF6F3DCAABA8650CA48F75607E84571DFB35F83BC2
- 2BF05BC3971A7D8D8DEBDFD9A4D7F71246B23CB70C3F7A1D8E492AFB9707A018
- AF2436BAD5D7ED7BF118786F43D135D923B0B557875890A431A886DC654856F9
- B2318FAD5CAACD4632D35128C5B6BB1F56786FC51A478C34C5D4744D46DF54B1
- 66282E2D640E85875191E95A958BE0FB4B9B3F0ED9A5F69F63A5DF32EEB8B5D3
- 7FD4239EBB4E067B738ADAAEB57B6A64F70A2909C526EA621D45341A5CE68016
- 8A28A0028A28A0043504C78A998D5699F8352CA4665F3F06B94D59F83CD747A8
- 4A0035C8EAD36735C1599DF451CA6ACFF7AB92D4D861ABA5D525C93CFE15C96A
- 92F04F7AF12AB3DDA48E4B597C0635E6FE2AB968A7B62A7E6DE4835E89AADD22
- AB2B1C0279E33FE7BD79778AAE55AE611B8654312076E2B86476A29E9F756696
- 98BB505C901495CF0E0066FC3191EF5957BA82C9772F908A232C4AA8E38CF1FA
- 556B8B8263554E46DC649E9515B5F3DA5CA4E84ABA1CF071F5E6A063F509644B
- 59B7864CC6C57231EBCF35957B7B25C5ECF2311BCED3D38FBA2AF6B3A925DBDC
- CA5A42B22127CD604E7078CD624B701667E832A98CFF00BB40D1D16BFACDAC97
- 28F64D09888236A2ED201C75F917FA9AAD7B7A9733FEEE268543124375E79C7B
- 77FD2B0924000CB2E07239E95A775AF89558222A091104A0BEEDCCBFC43D3D3F
- 1340CADA85DBC97A189C1F25003F4007F4AD1D5BC4C97D690C691324D16D1B88
- CEEF9403D4F1C8381D0E7B62B1AEE50E6091082BB5813D7F88FF0088AABBC11C
- 9183C60D03355ADEF0DB2DCC90CA203C6FDA42FE759AD73279ACCAC438C1DC09
- CE6AECFAE3CDA65B59BB02B0B3156279C1C71598CE59B78FBA473ED4016F58D6
- 66D426131762C5543193E6390B83C9F53CD1599338F2C73DF3CD156B621EE7EC
- DD14515F747C18565789BC2DA478CF469F4AD6F4F8353D3E61F3C170BB94FA11
- E847623915AB452693D181E57A47ECC7F0EF47BFB5BB5D124BC366C1AD60BFBD
- 9EE61B7C74DB1C8E57D3A83D0576327C3CD025F1CC5E306B027C4515AFD892F3
- CE93E58724EDD9BB675279C679AE8E8A954E0B6453937BB393F883F0AFC31F14
- AD2CEDBC4DA69D461B394CD001712C251C8C6731B29E9EB597E1DF80DE09F0AC
- 3AA45A669771047A9DA3D8DD07D46E64DF0BFDE51BE43B4FFB4B823B1AF40A28
- 708B7CCD6A1CCED6B9CBDE7C32F0CEA1E034F065CE9693F869204B75B1791C80
- 8841501F76EC82010739E3AD5DF07783747F00786ED340D06D3EC3A4DA6FF26D
- FCC7936EE72EDF3392C72CC4F27BD6DD14F9527748577B1E61A57ECDBF0FF47D
- 76CF55834691E6B193CEB382E2F26960B67C83BA38D9CA8E4647181DB1815A7E
- 37F821E0EF883AAC5AAEADA511ABC4BB1351B3B892DA70BE85E3605B8C8E73C1
- AEF28A9F670B5AC87CD2DEE721E07F849E13F87305DC7A0E8F15ABDDFF00C7CC
- F2B34D34FECF2392C47278CE39E95C8CFF00B297C339EEA693FB06486DA6904B
- 2D8417D3C76AEE3A1312B85F4E071C74AF5DA2874E0D59A41CD2EE723A87C28F
- 0A6A571E199A6D1E356F0D36FD252091E24B53F2F44460A7EE2F0C0F4F735634
- 9F86FE1DD0FC53ACF88AC74FF2356D65556FE513485270A00198CB6C078EA141
- E4FA9CF4B9A322AB963BD8576795DC7ECC3F0EE5BF9AE61D1E6B18E77F327B3B
- 1BE9E0B694FBC48E171DB0001567C43FB387C3DF15788AF75DD4B43965D56F48
- 6B8B88B50B988C840007092003803A0AF4BDD499351ECA9FF2A1F34BB995E14F
- 0AE99E09D06D745D1E07B6D3ADB779514933CA5773163F3392C7962793FA56A9
- 3484D34B815A68B442DC7526EA85A5A6F99CF5A571D8B19A51CD5712548AF9A2
- E1627A2981A9D9AA245A43416A8D9F14003BE0550BA97683534B2ED15937B738
- 06B194AC6D0899FA95C601E6B8FD5AE3EF56D6A775D6B91D4EE09CF5AF2EB48F
- 528C0C4D465C96FEB5CAEA90BCB9DA466B7AF9C9278358B73B893F29FCABC99B
- B9ECD3470DAC786AF2EC10850E7D4D7253FC38D4AE2E49263452319DD5EB32AB
- 7A1FCAABB23127E53F957233A923C3753F841AD198883CB9A3ECDBC0FE66B264
- F83DE24278B65FC254FF001AFA17637F74FE546C6FEE9FCAA752AC7CEEBF073C
- 4593BACF23DA58F9FF00C7AAFC9F07B57B848BFD1E48A5C618B49195FD1ABDE7
- 637F74FE546C6FEE9FCA9582C7CEF71F077C41148CA962F30ECEB2C401FCDB35
- 10F841E23FFA0549FF008110FF00F155F46EC6FEE9FCA8D8DFDD3F951619F3DB
- FC2AF109B348468EFBD5890DF6A8BBFE3504FF00077C43184F2F4D798B282D99
- E25DA7D3EF735F45EC6FEE9FCA8D8DFDD3F951603E71FF008543E25500FF0064
- 06CF6FB4C7C7FE3D5249F0ABC4CF6EB18D0C295E770BA8B27FF1EAFA2B637F74
- FE546C6FEE9FCA8B01F355CFC1EF15CBB443A2F18C906E62EBFF007D515F4D5B
- A36F3F29E9E945689684B3FFD9}
- ExplicitHeight = 80
- end
- end
- object pnlCentro: TPanel
- Left = 0
- Top = 73
- Width = 594
- Height = 406
- Align = alClient
- BevelOuter = bvNone
- TabOrder = 2
- object PageControl: TPageControl
- Left = 0
- Top = 0
- Width = 594
- Height = 406
- ActivePage = tabPrincipal
- Align = alClient
- Style = tsFlatButtons
- TabOrder = 0
- object tabPrincipal: TTabSheet
- Caption = 'Principal'
- object Panel5: TPanel
- Left = 0
- Top = 0
- Width = 586
- Height = 375
- Align = alClient
- BevelOuter = bvNone
- TabOrder = 0
- object Label5: TLabel
- Left = 64
- Top = 20
- Width = 115
- Height = 13
- Caption = 'Identifica'#231#227'o Programa :'
- end
- object Label6: TLabel
- Left = 47
- Top = 276
- Width = 132
- Height = 13
- Caption = 'Tabela de Usuarios/Perfis : '
- end
- object Label7: TLabel
- Left = 69
- Top = 213
- Width = 110
- Height = 13
- Caption = 'Tabela de Permiss'#245'es :'
- end
- object Label29: TLabel
- Left = 120
- Top = 107
- Width = 59
- Height = 13
- Alignment = taRightJustify
- Caption = 'Criptografia :'
- end
- object Label30: TLabel
- Left = 116
- Top = 142
- Width = 63
- Height = 13
- Alignment = taRightJustify
- Caption = 'Encrypt Key :'
- end
- object Label32: TLabel
- Left = 117
- Top = 178
- Width = 62
- Height = 13
- Alignment = taRightJustify
- Caption = 'Login Mode :'
- end
- object edtApplicationID: TEdit
- Left = 182
- Top = 17
- Width = 220
- Height = 21
- TabOrder = 0
- end
- object edtTableUsers: TEdit
- Left = 182
- Top = 268
- Width = 220
- Height = 21
- TabOrder = 1
- end
- object edtTableRights: TEdit
- Left = 182
- Top = 205
- Width = 220
- Height = 21
- TabOrder = 2
- OnChange = edtTableRightsChange
- end
- object edtTabelaPermissoesEX: TEdit
- Left = 182
- Top = 233
- Width = 220
- Height = 21
- Enabled = False
- TabOrder = 3
- Text = 'EX'
- end
- object ckAutoStart: TCheckBox
- Left = 182
- Top = 44
- Width = 220
- Height = 21
- Caption = 'Iniciar Automaticamente'
- TabOrder = 4
- end
- object btnTabelasPadrao: TButton
- Left = 182
- Top = 344
- Width = 220
- Height = 21
- Caption = 'Tabelas Padr'#227'o'
- TabOrder = 5
- OnClick = btnTabelasPadraoClick
- end
- object ckValidationKey: TCheckBox
- Left = 182
- Top = 71
- Width = 220
- Height = 21
- Caption = 'CheckValidationKey'
- TabOrder = 6
- end
- object cbCriptografia: TComboBox
- Left = 182
- Top = 99
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 13
- TabOrder = 7
- Items.Strings = (
- 'cPadrao'
- 'cMD5')
- end
- object cbLoginMode: TComboBox
- Left = 182
- Top = 170
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 13
- TabOrder = 8
- Items.Strings = (
- 'lmActive'
- 'lmPassive')
- end
- object GroupBox3: TGroupBox
- Left = 425
- Top = 9
- Width = 113
- Height = 78
- Caption = 'Not Allowed Items'
- TabOrder = 9
- object ckActionVisible: TCheckBox
- Left = 12
- Top = 24
- Width = 89
- Height = 17
- Caption = 'Action Visible'
- Checked = True
- State = cbChecked
- TabOrder = 0
- end
- object ckMenuVisible: TCheckBox
- Left = 12
- Top = 47
- Width = 89
- Height = 17
- Caption = 'Menu Visible'
- Checked = True
- State = cbChecked
- TabOrder = 1
- end
- end
- object spedtEncryptKey: TSpinEdit
- Left = 182
- Top = 133
- Width = 220
- Height = 22
- MaxValue = 0
- MinValue = 0
- TabOrder = 10
- Value = 0
- end
- end
- end
- object tabControlRights: TTabSheet
- Caption = 'Control Rights'
- ImageIndex = 6
- ExplicitLeft = 0
- ExplicitTop = 0
- ExplicitWidth = 0
- ExplicitHeight = 0
- object Label33: TLabel
- Left = 179
- Top = 117
- Width = 52
- Height = 13
- Alignment = taRightJustify
- Caption = 'ActionList :'
- end
- object Label34: TLabel
- Left = 129
- Top = 159
- Width = 102
- Height = 13
- Alignment = taRightJustify
- Caption = 'ActionMainMenuBar :'
- end
- object Label35: TLabel
- Left = 153
- Top = 202
- Width = 78
- Height = 13
- Alignment = taRightJustify
- Caption = 'ActionManager :'
- end
- object Label36: TLabel
- Left = 175
- Top = 245
- Width = 56
- Height = 13
- Alignment = taRightJustify
- Caption = 'MainMenu :'
- end
- object SpeedButton5: TSpeedButton
- Left = 463
- Top = 112
- Width = 23
- Height = 22
- Flat = True
- Glyph.Data = {
- 36050000424D3605000000000000360400002800000010000000100000000100
- 08000000000000010000EE0E0000EE0E000000010000000100006B6B6B008484
- 8400C6C6C600DEDEDE00FF00FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00040404040404
- 0404040404040404040404040404040404040404040404040404040404040404
- 0404040404040404040404010000000000000104040404040404040002020202
- 0202000004040404040404000202020202020001000404040404040100020202
- 0202000101000404040404040003030303030300010100040404040404000303
- 0303030300010100040404040404000303030303030001010004040404040400
- 0303030303030001000404040404040400030303030303000004040404040404
- 0400030303030303000404040404040404040100000000010104040404040404
- 0404040404040404040404040404040404040404040404040404}
- OnClick = SpeedButton5Click
- end
- object SpeedButton6: TSpeedButton
- Tag = 1
- Left = 463
- Top = 155
- Width = 23
- Height = 22
- Flat = True
- Glyph.Data = {
- 36050000424D3605000000000000360400002800000010000000100000000100
- 08000000000000010000EE0E0000EE0E000000010000000100006B6B6B008484
- 8400C6C6C600DEDEDE00FF00FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00040404040404
- 0404040404040404040404040404040404040404040404040404040404040404
- 0404040404040404040404010000000000000104040404040404040002020202
- 0202000004040404040404000202020202020001000404040404040100020202
- 0202000101000404040404040003030303030300010100040404040404000303
- 0303030300010100040404040404000303030303030001010004040404040400
- 0303030303030001000404040404040400030303030303000004040404040404
- 0400030303030303000404040404040404040100000000010104040404040404
- 0404040404040404040404040404040404040404040404040404}
- OnClick = SpeedButton5Click
- end
- object SpeedButton7: TSpeedButton
- Tag = 2
- Left = 463
- Top = 197
- Width = 23
- Height = 22
- Flat = True
- Glyph.Data = {
- 36050000424D3605000000000000360400002800000010000000100000000100
- 08000000000000010000EE0E0000EE0E000000010000000100006B6B6B008484
- 8400C6C6C600DEDEDE00FF00FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00040404040404
- 0404040404040404040404040404040404040404040404040404040404040404
- 0404040404040404040404010000000000000104040404040404040002020202
- 0202000004040404040404000202020202020001000404040404040100020202
- 0202000101000404040404040003030303030300010100040404040404000303
- 0303030300010100040404040404000303030303030001010004040404040400
- 0303030303030001000404040404040400030303030303000004040404040404
- 0400030303030303000404040404040404040100000000010104040404040404
- 0404040404040404040404040404040404040404040404040404}
- OnClick = SpeedButton5Click
- end
- object SpeedButton8: TSpeedButton
- Tag = 3
- Left = 463
- Top = 241
- Width = 23
- Height = 22
- Flat = True
- Glyph.Data = {
- 36050000424D3605000000000000360400002800000010000000100000000100
- 08000000000000010000EE0E0000EE0E000000010000000100006B6B6B008484
- 8400C6C6C600DEDEDE00FF00FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00040404040404
- 0404040404040404040404040404040404040404040404040404040404040404
- 0404040404040404040404010000000000000104040404040404040002020202
- 0202000004040404040404000202020202020001000404040404040100020202
- 0202000101000404040404040003030303030300010100040404040404000303
- 0303030300010100040404040404000303030303030001010004040404040400
- 0303030303030001000404040404040400030303030303000004040404040404
- 0400030303030303000404040404040404040100000000010104040404040404
- 0404040404040404040404040404040404040404040404040404}
- OnClick = SpeedButton5Click
- end
- object cbActionList: TComboBox
- Left = 237
- Top = 113
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 0
- OnChange = ComboRightsChange
- end
- object cbActionMainMenuBar: TComboBox
- Left = 237
- Top = 155
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 1
- OnChange = ComboRightsChange
- OnClick = ComboRightsChange
- end
- object cbActionManager: TComboBox
- Left = 237
- Top = 198
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 2
- OnChange = ComboRightsChange
- end
- object cbMainMenu: TComboBox
- Left = 237
- Top = 241
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 3
- OnChange = ComboRightsChange
- end
- end
- object tabUser: TTabSheet
- Caption = 'User'
- ImageIndex = 3
- ExplicitLeft = 0
- ExplicitTop = 0
- ExplicitWidth = 0
- ExplicitHeight = 0
- object Label2: TLabel
- Left = 172
- Top = 122
- Width = 36
- Height = 13
- Caption = 'Action :'
- end
- object Label27: TLabel
- Left = 152
- Top = 161
- Width = 56
- Height = 13
- Caption = 'Menu Item :'
- end
- object cbUserAction: TComboBox
- Left = 214
- Top = 118
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 0
- OnChange = ComboActionMenuItem
- OnClick = ComboActionMenuItem
- end
- object cbUserMenuItem: TComboBox
- Left = 214
- Top = 157
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 1
- OnChange = ComboActionMenuItem
- OnClick = ComboActionMenuItem
- end
- object ckUserProtectAdministrator: TCheckBox
- Left = 214
- Top = 196
- Width = 220
- Height = 21
- Caption = 'User Protect Administrator'
- TabOrder = 2
- end
- object ckUserUsePrivilegedField: TCheckBox
- Left = 214
- Top = 236
- Width = 220
- Height = 21
- Caption = 'Use Privileged Field'
- TabOrder = 3
- end
- end
- object tabUserProfile: TTabSheet
- Caption = 'User Profile'
- ImageIndex = 4
- ExplicitLeft = 0
- ExplicitTop = 0
- ExplicitWidth = 0
- ExplicitHeight = 0
- object Label3: TLabel
- Left = 174
- Top = 128
- Width = 36
- Height = 13
- Alignment = taRightJustify
- Caption = 'Action :'
- Visible = False
- end
- object Label28: TLabel
- Left = 154
- Top = 181
- Width = 56
- Height = 13
- Alignment = taRightJustify
- Caption = 'Menu Item :'
- Visible = False
- end
- object cbUserProfileAction: TComboBox
- Left = 213
- Top = 124
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 0
- Visible = False
- OnChange = ComboActionMenuItem
- OnClick = ComboActionMenuItem
- end
- object cbUserProfileMenuItem: TComboBox
- Left = 213
- Top = 177
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 1
- Visible = False
- OnChange = ComboActionMenuItem
- OnClick = ComboActionMenuItem
- end
- object ckUserProfileActive: TCheckBox
- Left = 213
- Top = 230
- Width = 220
- Height = 21
- Caption = 'Active'
- TabOrder = 2
- end
- end
- object tabUserPasswordChange: TTabSheet
- Caption = 'User Password Change'
- ImageIndex = 5
- ExplicitLeft = 0
- ExplicitTop = 0
- ExplicitWidth = 0
- ExplicitHeight = 0
- object Label4: TLabel
- Left = 126
- Top = 252
- Width = 108
- Height = 13
- Alignment = taRightJustify
- Caption = 'Min Password Length :'
- end
- object Label31: TLabel
- Left = 198
- Top = 110
- Width = 36
- Height = 13
- Alignment = taRightJustify
- Caption = 'Action :'
- end
- object Label37: TLabel
- Left = 178
- Top = 157
- Width = 56
- Height = 13
- Alignment = taRightJustify
- Caption = 'Menu Item :'
- end
- object cbUserPasswordChangeAction: TComboBox
- Left = 239
- Top = 106
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 0
- OnChange = ComboActionMenuItem
- OnClick = ComboActionMenuItem
- end
- object cbUserPasswordChangeMenuItem: TComboBox
- Left = 239
- Top = 153
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 1
- OnChange = ComboActionMenuItem
- OnClick = ComboActionMenuItem
- end
- object ckUserPassowrdChangeForcePassword: TCheckBox
- Left = 239
- Top = 200
- Width = 220
- Height = 21
- Caption = 'Force Password'
- TabOrder = 2
- end
- object spedtUserPasswordChangeMinPasswordLength: TSpinEdit
- Left = 239
- Top = 247
- Width = 220
- Height = 22
- MaxValue = 0
- MinValue = 0
- TabOrder = 3
- Value = 0
- end
- end
- object tabLogControl: TTabSheet
- Caption = 'Log Control'
- ImageIndex = 1
- ExplicitLeft = 0
- ExplicitTop = 0
- ExplicitWidth = 0
- ExplicitHeight = 0
- object Label25: TLabel
- Left = 140
- Top = 115
- Width = 80
- Height = 13
- Alignment = taRightJustify
- Caption = 'Tabela de Logs :'
- end
- object Label1: TLabel
- Left = 164
- Top = 75
- Width = 56
- Height = 13
- Alignment = taRightJustify
- Caption = 'Menu Item :'
- Visible = False
- end
- object Label26: TLabel
- Left = 184
- Top = 35
- Width = 36
- Height = 13
- Alignment = taRightJustify
- Caption = 'Action :'
- Visible = False
- end
- object Panel4: TPanel
- Left = 0
- Top = 205
- Width = 586
- Height = 170
- Align = alBottom
- BevelOuter = bvNone
- Color = clWhite
- TabOrder = 0
- object Image4: TImage
- Left = 20
- Top = 28
- Width = 25
- Height = 24
- Picture.Data = {
- 07544269746D617076060000424D760600000000000036040000280000001800
- 000018000000010008000000000040020000C40E0000C40E0000000100000000
- 00000800000008080800310010004A08180031101800391821005A1821004A18
- 290063292900522131006B21310039314200843142001042420018394A001042
- 4A008C524A0031395200084252006B4A5200085252005A525200845252005A5A
- 5A00635A5A006B5A5A00845A5A008C5A5A00635A6300845A63005A6363008463
- 6300946363008C6B6B00A56B6B00086B7300426B730094737300396B7B009C7B
- 7B00A57B7B00AD848400187B9400188C9C00298C9C0029949C002994A500B5A5
- A500218CAD00089CAD0021A5AD0021ADAD009CA5B5007BB5B500089CBD00219C
- BD0021B5BD00089CC60008BDC60010A5CE0018B5CE0008BDD60000B5DE0008B5
- DE0010B5DE0008DEDE0000BDE70008BDE70000C6E70008C6E70018C6E70008CE
- E70052CEE70000D6E70000DEE70018E7E70000BDEF0000C6EF0000CEEF0000D6
- EF0018D6EF0000DEEF0008DEEF0063DEEF0000E7EF0008E7EF0010E7EF004AE7
- EF0063E7EF0000EFEF004AEFEF0000C6F70000CEF7006BDEF70000E7F70094E7
- F7009CE7F70000EFF70008F7F70010F7F700FF00FF0000D6FF0000DEFF0008DE
- FF0000E7FF0008E7FF0000EFFF0008EFFF0010EFFF0000F7FF0008F7FF0010F7
- FF0018F7FF0000FFFF0008FFFF0010FFFF0018FFFF0031FFFF0052FFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF007777777777777777777777777777777777777777777777777777772F1F1A
- 1D1D1D1D1D1D1D1D1D1D1D1D1D1D161B77777777483B36363636363636393636
- 36363636363930081B7777483F3E42424242424D3F37404C4242424242425B26
- 10777753434D655C5C5C654E0F073446655C5C5C655C5C2429777777464D6765
- 656565440104093C656565656C65431377777777534467676565654F12000E47
- 656565676C5C2C277777777777464E69666565665E495E666565667067451C77
- 77777777775D4E6769666666662A666666666970662E2977777777777777504F
- 6C666666490B4F68666670674F1977777777777777775344676966683A063D6A
- 666C6C662C28777777777777777777474F6B686A310C2B6A686F694715777777
- 7777777777777753496B6B61230A26616B70682D287777777777777777777777
- 505E6E540F0311496F6C5418777777777777777777777777585162410102053A
- 706A322277777777777777777777777777526141000204386E52177777777777
- 77777777777777777757515514010D4B6D332177777777777777777777777777
- 777756616E4A746E551E7777777777777777777777777777777758546E72746D
- 382077777777777777777777777777777777774B627573611E77777777777777
- 77777777777777777777775A5975713825777777777777777777777777777777
- 77777777636E6335777777777777777777777777777777777777777753765377
- 7777777777777777777777777777777777777777775377777777777777777777
- 7777}
- end
- object Label19: TLabel
- Left = 60
- Top = 28
- Width = 320
- Height = 13
- Caption = 'O Componente n'#227'o grava nenhum log automaticamente!'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = [fsBold]
- ParentFont = False
- end
- object Label20: TLabel
- Left = 60
- Top = 52
- Width = 505
- Height = 13
- Caption =
- 'Utilize o Metodo: Log(msg : String; nivel : Integer {0..3} = 0) ' +
- 'para gravar registros no Log de mensagens'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Label21: TLabel
- Left = 68
- Top = 76
- Width = 16
- Height = 13
- Caption = 'Ex:'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Label22: TLabel
- Left = 92
- Top = 76
- Width = 175
- Height = 13
- Caption = 'UserControl1.Log('#39'Exemplo de Log'#39');'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Label23: TLabel
- Left = 280
- Top = 76
- Width = 285
- Height = 65
- Caption =
- 'try'#13#10' ..'#13#10'except'#13#10' on e : Exception do ADOUserControl1.Log(e.M' +
- 'essage, 3);'#13#10'end;'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Label24: TLabel
- Left = 92
- Top = 108
- Width = 162
- Height = 13
- Caption = 'UserControl1.Log('#39'Exemplo 2'#39', 1);'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- end
- object edtLogControlTableLog: TEdit
- Left = 226
- Top = 112
- Width = 220
- Height = 21
- TabOrder = 1
- end
- object ckLogControlActive: TCheckBox
- Left = 226
- Top = 152
- Width = 220
- Height = 21
- Caption = 'Active'
- Checked = True
- State = cbChecked
- TabOrder = 2
- end
- object cbLogControlAction: TComboBox
- Left = 226
- Top = 32
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 3
- Visible = False
- OnChange = ComboActionMenuItem
- OnClick = ComboActionMenuItem
- end
- object cbLogControlMenuItem: TComboBox
- Left = 226
- Top = 72
- Width = 220
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- TabOrder = 4
- Visible = False
- OnChange = ComboActionMenuItem
- OnClick = ComboActionMenuItem
- end
- end
- object tabLogin: TTabSheet
- Caption = 'Login'
- ImageIndex = 2
- ExplicitLeft = 0
- ExplicitTop = 0
- ExplicitWidth = 0
- ExplicitHeight = 0
- object Label14: TLabel
- Left = 115
- Top = 25
- Width = 149
- Height = 13
- Alignment = taRightJustify
- Caption = 'N'#250'mero m'#225'ximo de Tentativas :'
- end
- object Label15: TLabel
- Left = 181
- Top = 52
- Width = 83
- Height = 13
- Alignment = taRightJustify
- Caption = 'Get Login Name :'
- end
- object Label16: TLabel
- Left = 136
- Top = 350
- Width = 79
- Height = 13
- Caption = 'Imagem Superior'
- end
- object Label17: TLabel
- Left = 288
- Top = 350
- Width = 85
- Height = 13
- Caption = 'Imagem Esquerda'
- end
- object Label18: TLabel
- Left = 440
- Top = 350
- Width = 72
- Height = 13
- Caption = 'Imagem Inferior'
- end
- object SpeedButton1: TSpeedButton
- Left = 19
- Top = 288
- Width = 73
- Height = 40
- Caption = 'Visualizar'
- Flat = True
- Glyph.Data = {
- 36030000424D3603000000000000360000002800000010000000100000000100
- 18000000000000030000420B0000420B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFCC6701CC6701CC6701CC6701CC6701CC6701CC
- 6701CC6701CC6701CC6701CC6701CC6701CC6701CC6701CC6701FF00FFCC6701
- FFFFFFFFFFFFFFFAF5FFF3E6FEEBD5FEE3C3FEDCB5FED7ABFED7ABFED7ABFED7
- ABFED7ABFED7ABCC6701FF00FFCC6701FFFFFFFFFFFFFFFFFFFFFAF5FFF3E6FE
- EBD5FEE3C4FEDCB500C0C000C0C000C0C000C0C0FED7ABCC6701FF00FFCC6701
- FFFFFFFFFFFFFFFFFFFFFFFFFFFAF5FFF3E6FFEBD5FEE3C4FFFFFFFFFFFFFFFF
- FF00C0C0FED7ABCC6701FF00FFCC6701FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FAF5FFF3E6FFEBD5FEE3C4FEDCB5FED7ABFED7ABFED7ABCC6701FF00FFCC6701
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF5FFF3E6FFEBD5FEE3C4FEDC
- B5FED7ABFED7ABCC6701FF00FFCC6701FFFFFFFFFFFFFFFFFF80808080808080
- 8080FFFFFF808080FFF3E6808080808080808080FED7ABCC6701FF00FFCC6701
- 8080FF0000FF8080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF5FFF3E6FFEB
- D5FEE3C4FEDCB5CC6701FF00FFCC67010000FF0000FF0000FFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFAF5FFF3E6FFEBD5FEE3C4CC6701FF00FFCC6701
- 8080FF0000FF8080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA
- F5FFF3E6FFEBD5CC6701FF00FFCC6701FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF5FFF3E6CC6701FF00FFCC6701
- CC6701CC6701CC6701CC6701CC6701CC6701CC6701CC6701CC6701CC6701CC67
- 01CC6701CC6701CC6701FF00FFFF00FFCC6701CC6701CC6701CC6701CC6701CC
- 6701CC6701CC6701CC6701CC6701CC6701CC6701CC6701FF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- Layout = blGlyphTop
- OnClick = SpeedButton1Click
- end
- object SpeedButton2: TSpeedButton
- Left = 211
- Top = 322
- Width = 48
- Height = 22
- Caption = 'Limpar'
- Flat = True
- OnClick = SpeedButton2Click
- end
- object SpeedButton3: TSpeedButton
- Left = 365
- Top = 322
- Width = 48
- Height = 22
- Caption = 'Limpar'
- Flat = True
- OnClick = SpeedButton3Click
- end
- object SpeedButton4: TSpeedButton
- Left = 517
- Top = 322
- Width = 48
- Height = 22
- Caption = 'Limpar'
- Flat = True
- OnClick = SpeedButton4Click
- end
- object GroupBox1: TGroupBox
- Left = 2
- Top = 88
- Width = 290
- Height = 185
- Caption = 'Login Inicial'
- TabOrder = 0
- object Label8: TLabel
- Left = 14
- Top = 24
- Width = 42
- Height = 13
- Caption = 'Usu'#225'rio :'
- end
- object Label9: TLabel
- Left = 19
- Top = 55
- Width = 37
- Height = 13
- Caption = 'Senha :'
- end
- object Label12: TLabel
- Left = 25
- Top = 87
- Width = 31
- Height = 13
- Caption = 'Email :'
- end
- object lblInitialRights: TLabel
- Left = -7
- Top = 115
- Width = 63
- Height = 13
- Alignment = taRightJustify
- Caption = 'Initial Rights :'
- end
- object edtInitialLoginUser: TEdit
- Left = 64
- Top = 20
- Width = 220
- Height = 21
- TabOrder = 0
- end
- object edtInitialLoginPassword: TEdit
- Left = 64
- Top = 51
- Width = 220
- Height = 21
- TabOrder = 1
- end
- object edtInitialLoginEmail: TEdit
- Left = 64
- Top = 83
- Width = 220
- Height = 21
- TabOrder = 2
- end
- object mmInitialRights: TMemo
- Left = 64
- Top = 115
- Width = 220
- Height = 62
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGreen
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- ParentFont = False
- TabOrder = 3
- end
- end
- object GroupBox2: TGroupBox
- Left = 295
- Top = 88
- Width = 290
- Height = 185
- Caption = 'Login Autom'#225'tico'
- TabOrder = 1
- object Label10: TLabel
- Left = 13
- Top = 44
- Width = 42
- Height = 13
- Alignment = taRightJustify
- Caption = 'Usu'#225'rio :'
- end
- object Label11: TLabel
- Left = 18
- Top = 81
- Width = 37
- Height = 13
- Alignment = taRightJustify
- Caption = 'Senha :'
- end
- object edtLoginAutoLoginUser: TEdit
- Left = 56
- Top = 40
- Width = 220
- Height = 21
- TabOrder = 0
- end
- object edtLoginAutoLoginPassword: TEdit
- Left = 56
- Top = 77
- Width = 220
- Height = 21
- TabOrder = 1
- end
- object ckLoginAutologinActive: TCheckBox
- Left = 56
- Top = 104
- Width = 65
- Height = 17
- Caption = 'Ativo'
- Checked = True
- State = cbChecked
- TabOrder = 2
- end
- object ckLoginAutoLoginMessageOnError: TCheckBox
- Left = 33
- Top = 127
- Width = 225
- Height = 17
- Caption = 'Exibir mensagem padr'#227'o de erro se falhar ?'
- TabOrder = 3
- end
- end
- object cbGetLoginName: TComboBox
- Left = 270
- Top = 48
- Width = 201
- Height = 21
- Style = csDropDownList
- ItemHeight = 0
- ItemIndex = 0
- TabOrder = 2
- Text = 'lnNone'
- Items.Strings = (
- 'lnNone'
- 'lnUserName'
- 'lnMachineName')
- end
- object Panel6: TPanel
- Left = 143
- Top = 280
- Width = 65
- Height = 65
- BevelOuter = bvLowered
- Color = clGray
- TabOrder = 3
- object imgTop: TImage
- Left = 1
- Top = 1
- Width = 63
- Height = 63
- Cursor = crHandPoint
- Align = alClient
- Center = True
- Proportional = True
- Stretch = True
- OnClick = ActionsExecute
- end
- end
- object Panel7: TPanel
- Left = 295
- Top = 280
- Width = 65
- Height = 65
- BevelOuter = bvLowered
- Color = clGray
- TabOrder = 4
- object imgLeft: TImage
- Left = 1
- Top = 1
- Width = 63
- Height = 63
- Cursor = crHandPoint
- Align = alClient
- Center = True
- Proportional = True
- Stretch = True
- OnClick = ActionsExecute
- end
- end
- object Panel8: TPanel
- Left = 447
- Top = 280
- Width = 65
- Height = 65
- BevelOuter = bvLowered
- Color = clGray
- TabOrder = 5
- object imgBottom: TImage
- Left = 1
- Top = 1
- Width = 63
- Height = 63
- Cursor = crHandPoint
- Align = alClient
- Center = True
- Proportional = True
- Stretch = True
- OnClick = ActionsExecute
- end
- end
- object spedtMaxLoginAttempts: TSpinEdit
- Left = 270
- Top = 20
- Width = 121
- Height = 22
- MaxValue = 0
- MinValue = 0
- TabOrder = 6
- Value = 0
- end
- end
- end
- end
- object OpenPictureDialog: TOpenPictureDialog
- Left = 512
- Top = 240
- end
- object ActionList: TActionList
- Left = 545
- Top = 240
- object acCarregarFigura: TAction
- Caption = 'Carregar Figura'
- OnExecute = ActionsExecute
- end
- object acVisualizarTelaLogin: TAction
- Caption = 'acVisualizarTelaLogin'
- OnExecute = ActionsExecute
- end
- end
-end
diff --git a/internal/2.31RC1/1/Source/UCEditorForm_U.pas b/internal/2.31RC1/1/Source/UCEditorForm_U.pas
deleted file mode 100644
index cb7e1fe..0000000
--- a/internal/2.31RC1/1/Source/UCEditorForm_U.pas
+++ /dev/null
@@ -1,469 +0,0 @@
-unit UCEditorForm_U;
-
-interface
-
-{.$I 'UserControl.inc'}
-
-uses
- ActnCtrls,
- ActnList,
- ActnMan,
- ActnMenus,
- Buttons,
- Classes,
- ComCtrls,
- Contnrs,
- Controls,
- Dialogs,
- ExtCtrls,
- ExtDlgs,
- Forms,
- Graphics,
- jpeg,
- Menus,
- Spin,
- StdCtrls,
- ToolWin,
- UCBase;
-
-type
- TUCEditorForm = class(TForm)
- pnlBotoes: TPanel;
- Panel2: TPanel;
- lbComponente: TLabel;
- pnlCentro: TPanel;
- PageControl: TPageControl;
- tabPrincipal: TTabSheet;
- tabLogin: TTabSheet;
- Label14: TLabel;
- Label15: TLabel;
- Label16: TLabel;
- Label17: TLabel;
- Label18: TLabel;
- SpeedButton1: TSpeedButton;
- GroupBox1: TGroupBox;
- Label8: TLabel;
- Label9: TLabel;
- Label12: TLabel;
- lblInitialRights: TLabel;
- edtInitialLoginUser: TEdit;
- edtInitialLoginPassword: TEdit;
- edtInitialLoginEmail: TEdit;
- mmInitialRights: TMemo;
- GroupBox2: TGroupBox;
- Label10: TLabel;
- Label11: TLabel;
- edtLoginAutoLoginUser: TEdit;
- edtLoginAutoLoginPassword: TEdit;
- ckLoginAutologinActive: TCheckBox;
- ckLoginAutoLoginMessageOnError: TCheckBox;
- cbGetLoginName: TComboBox;
- tabLogControl: TTabSheet;
- Label25: TLabel;
- Panel4: TPanel;
- Image4: TImage;
- Label19: TLabel;
- Label20: TLabel;
- Label21: TLabel;
- Label22: TLabel;
- Label23: TLabel;
- Label24: TLabel;
- edtLogControlTableLog: TEdit;
- ckLogControlActive: TCheckBox;
- cbLogControlAction: TComboBox;
- cbLogControlMenuItem: TComboBox;
- Panel6: TPanel;
- imgTop: TImage;
- Panel7: TPanel;
- imgLeft: TImage;
- Panel8: TPanel;
- imgBottom: TImage;
- Panel5: TPanel;
- Label5: TLabel;
- Label6: TLabel;
- Label7: TLabel;
- edtApplicationID: TEdit;
- edtTableUsers: TEdit;
- edtTableRights: TEdit;
- edtTabelaPermissoesEX: TEdit;
- ckAutoStart: TCheckBox;
- btnTabelasPadrao: TButton;
- btnOK: TBitBtn;
- btnClose: TBitBtn;
- ckValidationKey: TCheckBox;
- cbCriptografia: TComboBox;
- Label29: TLabel;
- Label30: TLabel;
- Label32: TLabel;
- cbLoginMode: TComboBox;
- GroupBox3: TGroupBox;
- ckActionVisible: TCheckBox;
- ckMenuVisible: TCheckBox;
- tabUser: TTabSheet;
- tabUserProfile: TTabSheet;
- tabUserPasswordChange: TTabSheet;
- cbUserAction: TComboBox;
- cbUserMenuItem: TComboBox;
- Label3: TLabel;
- cbUserProfileAction: TComboBox;
- cbUserProfileMenuItem: TComboBox;
- Label4: TLabel;
- cbUserPasswordChangeAction: TComboBox;
- cbUserPasswordChangeMenuItem: TComboBox;
- Label1: TLabel;
- Label26: TLabel;
- tabControlRights: TTabSheet;
- Label33: TLabel;
- Label34: TLabel;
- Label35: TLabel;
- Label36: TLabel;
- cbActionList: TComboBox;
- cbActionMainMenuBar: TComboBox;
- cbActionManager: TComboBox;
- cbMainMenu: TComboBox;
- spedtEncryptKey: TSpinEdit;
- ckUserProtectAdministrator: TCheckBox;
- ckUserUsePrivilegedField: TCheckBox;
- Label2: TLabel;
- Label27: TLabel;
- Label28: TLabel;
- ckUserProfileActive: TCheckBox;
- Label31: TLabel;
- Label37: TLabel;
- ckUserPassowrdChangeForcePassword: TCheckBox;
- spedtUserPasswordChangeMinPasswordLength: TSpinEdit;
- spedtMaxLoginAttempts: TSpinEdit;
- OpenPictureDialog: TOpenPictureDialog;
- ActionList: TActionList;
- acCarregarFigura: TAction;
- acVisualizarTelaLogin: TAction;
- SpeedButton2: TSpeedButton;
- SpeedButton3: TSpeedButton;
- SpeedButton4: TSpeedButton;
- Image1: TImage;
- SpeedButton5: TSpeedButton;
- SpeedButton6: TSpeedButton;
- SpeedButton7: TSpeedButton;
- SpeedButton8: TSpeedButton;
- procedure SpeedButton4Click(Sender: TObject);
- procedure SpeedButton3Click(Sender: TObject);
- procedure SpeedButton2Click(Sender: TObject);
- procedure SpeedButton1Click(Sender: TObject);
-
- procedure ComboRightsChange(Sender: TObject);
-
- procedure ComboActionMenuItem(Sender: TObject);
-
- procedure btnTabelasPadraoClick(Sender: TObject);
- procedure edtTableRightsChange(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
-
- procedure ActionsExecute(Sender: TObject);
- procedure SpeedButton5Click(Sender: TObject);
- private
- { Private declarations }
- FUserControl: TUserControl;
- public
- constructor Create(AOwner: TComponent; UserControl: TUserControl); reintroduce;
- end;
-
-implementation
-
-uses
- LoginWindow_U,
- ShellAPI,
- SysUtils,
- UcConsts_Language,
- UCMessages,
- Windows;
-
-{$R *.dfm}
-
-procedure TUCEditorForm.edtTableRightsChange(Sender: TObject);
-begin
- edtTabelaPermissoesEX.Text := edtTableRights.Text + 'EX';
-end;
-
-procedure TUCEditorForm.ActionsExecute(Sender: TObject);
-begin
- if Sender = imgTop then
- if OpenPictureDialog.Execute then
- imgTop.Picture.LoadFromFile(OpenPictureDialog.FileName);
-
- if Sender = imgBottom then
- if OpenPictureDialog.Execute then
- imgBottom.Picture.LoadFromFile(OpenPictureDialog.FileName);
-
- if Sender = imgLeft then
- if OpenPictureDialog.Execute then
- imgLeft.Picture.LoadFromFile(OpenPictureDialog.FileName);
-end;
-
-procedure TUCEditorForm.btnTabelasPadraoClick(Sender: TObject);
-begin
- edtTableUsers.Text := RetornaLingua( FUserControl.Language,'Const_TableUsers_TableName');
- edtTableRights.Text := RetornaLingua( FUserControl.Language,'Const_TableRights_TableName');
-end;
-
-procedure TUCEditorForm.ComboActionMenuItem(Sender: TObject);
-begin
- // Combo USER
- if (Sender = cbUserAction) and (cbUserAction.ItemIndex >= 0) then
- cbUserMenuItem.ItemIndex := -1;
-
- if (Sender = cbUserMenuItem) and (cbUserMenuItem.ItemIndex >= 0) then
- cbUserAction.ItemIndex := -1;
-
- // Combo USERPROFILE
- if (Sender = cbUserProfileAction) and (cbUserProfileAction.ItemIndex >= 0) then
- cbUserProfileMenuItem.ItemIndex := -1;
-
- if (Sender = cbUserProfileMenuItem) and (cbUserProfileMenuItem.ItemIndex >= 0) then
- cbUserProfileAction.ItemIndex := -1;
-
- // Combo USERPASSWORDCHANGE
- if (Sender = cbUserPasswordChangeAction) and (cbUserPasswordChangeAction.ItemIndex >= 0) then
- cbUserPasswordChangeMenuItem.ItemIndex := -1;
-
- if (Sender = cbUserPasswordChangeMenuItem) and (cbUserPasswordChangeMenuItem.ItemIndex >= 0) then
- cbUserPasswordChangeAction.ItemIndex := -1;
-
- // Combo LOGCONTROL
- if (Sender = cbLogControlAction) and (cbLogControlAction.ItemIndex >= 0) then
- cbLogControlMenuItem.ItemIndex := -1;
-
- if (Sender = cbLogControlMenuItem) and (cbLogControlMenuItem.ItemIndex >= 0) then
- cbLogControlAction.ItemIndex := -1;
-end;
-
-procedure TUCEditorForm.ComboRightsChange(Sender: TObject);
-begin
-{ if Sender = cbActionList then
- if cbActionList.ItemIndex >= 0 then
- begin
- cbActionMainMenuBar.ItemIndex := -1;
- cbActionManager.ItemIndex := -1;
- cbMainMenu.ItemIndex := -1;
- end;
-
- if Sender = cbActionMainMenuBar then
- if cbActionMainMenuBar.ItemIndex >= 0 then
- begin
- cbActionList.ItemIndex := -1;
- cbActionManager.ItemIndex := -1;
- cbMainMenu.ItemIndex := -1;
- end;
-
- if Sender = cbActionManager then
- if cbActionManager.ItemIndex >= 0 then
- begin
- cbActionList.ItemIndex := -1;
- cbActionMainMenuBar.ItemIndex := -1;
- cbMainMenu.ItemIndex := -1;
- end;
-
- if Sender = cbMainMenu then
- if cbMainMenu.ItemIndex >= 0 then
- begin
- cbActionList.ItemIndex := -1;
- cbActionMainMenuBar.ItemIndex := -1;
- cbActionManager.ItemIndex := -1;
- end; }
-
-end;
-
-constructor TUCEditorForm.Create(AOwner: TComponent; UserControl: TUserControl);
-begin
- inherited Create(AOwner);
- FUserControl := UserControl;
-end;
-
-procedure TUCEditorForm.FormClose(Sender: TObject; var Action: TCloseAction);
-begin
- Action := caFree;
-end;
-
-procedure TUCEditorForm.FormCreate(Sender: TObject);
-var
- I: Integer;
- Formulario: TForm;
-begin
- lblInitialRights.Caption := 'Initial ' + #13 + 'Rights :';
- PageControl.ActivePage := tabPrincipal;
-
- with FUserControl do
- begin
- edtApplicationID.Text := ApplicationID;
- ckAutoStart.Checked := AutoStart;
- ckValidationKey.Checked := CheckValidationKey;
- spedtEncryptKey.Value := EncryptKey;
- edtTableRights.Text := TableRights.TableName;
- edtTableUsers.Text := TableUsers.TableName;
- ckActionVisible.Checked := NotAllowedItems.ActionVisible;
- ckMenuVisible.Checked := NotAllowedItems.MenuVisible;
- cbCriptografia.ItemIndex := integer(Criptografia);
- cbLoginMode.ItemIndex := integer(LoginMode);
- end;
-
- Formulario := TForm(FUserControl.Owner);
-
- for I := 0 to Formulario.ComponentCount - 1 do
- begin
- if Formulario.Components[I] is TAction then
- begin
- cbUserAction.Items.Add(TAction(Formulario.Components[I]).Name);
- cbUserProfileAction.Items.Add(TAction(Formulario.Components[I]).Name);
- cbLogControlAction.Items.Add(TAction(Formulario.Components[I]).Name);
- cbUserPasswordChangeAction.Items.Add(TAction(Formulario.Components[I]).Name);
- end;
-
- if Formulario.Components[I] is TMenuItem then
- begin
- cbUserMenuItem.Items.Add(Formulario.Components[I].Name);
- cbUserProfileMenuItem.Items.Add(Formulario.Components[I].Name);
- cbLogControlMenuItem.Items.Add(Formulario.Components[I].Name);
- cbUserPasswordChangeMenuItem.Items.Add(Formulario.Components[I].Name);
- end;
-
- // Adicionar os valores dos "ControlRights"
- if Formulario.Components[I] is TActionList then
- cbActionList.Items.Add(Formulario.Components[I].Name);
-
- if Formulario.Components[I] is TActionMainMenuBar then
- cbActionMainMenuBar.Items.Add(Formulario.Components[I].Name);
-
- if Formulario.Components[I] is TActionManager then
- cbActionManager.Items.Add(Formulario.Components[I].Name);
-
- if Formulario.Components[I] is TMainMenu then
- cbMainMenu.Items.Add(Formulario.Components[I].Name);
- end;
-
- with FUserControl.ControlRight do
- begin
- if Assigned(ActionList) then
- cbActionList.ItemIndex := (cbActionList.Items.IndexOf(ActionList.Name));
-
- if Assigned(MainMenu) then
- cbMainMenu.ItemIndex := (cbMainMenu.Items.IndexOf(MainMenu.Name));
-
- if Assigned(ActionMainMenuBar) then
- cbActionMainMenuBar.ItemIndex := (cbActionMainMenuBar.Items.IndexOf(ActionMainMenuBar.Name));
-
- if Assigned(ActionManager) then
- cbActionManager.ItemIndex := (cbActionManager.Items.IndexOf(ActionManager.Name));
- end;
-
- // Action e MenuItem USER
- if Assigned(FUserControl.User.Action) then
- cbUserAction.ItemIndex := (cbUserAction.Items.IndexOf(FUserControl.User.Action.Name));
-
- if Assigned(FUserControl.User.MenuItem) then
- cbUserMenuItem.ItemIndex := (cbUserMenuItem.Items.IndexOf(FUserControl.User.MenuItem.Name));
-
- // Action e MenuItem USERPROFILE
-{ if Assigned(FUserControl.UserProfile.Action) then
- cbUserProfileAction.ItemIndex := (cbUserProfileAction.Items.IndexOf(FUserControl.UserProfile.Action.Name));
-
- if Assigned(FUserControl.UserProfile.MenuItem) then
- cbUserProfileMenuItem.ItemIndex := (cbUserProfileMenuItem.Items.IndexOf(FUserControl.UserProfile.MenuItem.Name)); }
-
- // Action e MenuItem USERPASSWORDCHANGE
- if Assigned(FUserControl.UserPasswordChange.Action) then
- cbUserPasswordChangeAction.ItemIndex := (cbUserPasswordChangeAction.Items.IndexOf(FUserControl.UserPasswordChange.Action.Name));
-
- if Assigned(FUserControl.UserPasswordChange.MenuItem) then
- cbUserPasswordChangeMenuItem.ItemIndex := (cbUserPasswordChangeMenuItem.Items.IndexOf(FUserControl.UserPasswordChange.MenuItem.Name));
-
- // Action e MenuItem LOGCONTROL
-{ if Assigned(FUserControl.LogControl.Action) then
- cbLogControlAction.ItemIndex := (cbLogControlAction.Items.IndexOf(FUserControl.LogControl.Action.Name));
-
- if Assigned(FUserControl.LogControl.MenuItem) then
- cbLogControlMenuItem.ItemIndex := (cbLogControlMenuItem.Items.IndexOf(FUserControl.LogControl.MenuItem.Name)); }
-
- ckUserProtectAdministrator.Checked := FUserControl.User.ProtectAdministrator;
- ckUserUsePrivilegedField.Checked := FUserControl.User.UsePrivilegedField;
-
- ckUserProfileActive.Checked := FUserControl.UserProfile.Active;
-
- ckUserPassowrdChangeForcePassword.Checked := FUserControl.UserPasswordChange.ForcePassword;
- spedtUserPasswordChangeMinPasswordLength.Value := FUserControl.UserPasswordChange.MinPasswordLength;
-
- edtLogControlTableLog.Text := FUserControl.LogControl.TableLog;
- ckLogControlActive.Checked := FUserControl.LogControl.Active;
-
- // Login
- spedtMaxLoginAttempts.Value := FUserControl.Login.MaxLoginAttempts;
- cbGetLoginName.ItemIndex := integer(FUserControl.Login.GetLoginName);
- // login inicial
- edtInitialLoginUser.Text := FUserControl.Login.InitialLogin.User;
- edtInitialLoginPassword.Text := FUserControl.Login.InitialLogin.Password;
- edtInitialLoginEmail.Text := FUserControl.Login.InitialLogin.Email;
- mmInitialRights.Lines := FUserControl.Login.InitialLogin.InitialRights;
- // AutoLogin
- edtLoginAutoLoginUser.Text := FUserControl.Login.AutoLogin.User;
- edtLoginAutoLoginPassword.Text := FUserControl.Login.AutoLogin.Password;
- ckLoginAutologinActive.Checked := FUserControl.Login.AutoLogin.Active;
- ckLoginAutoLoginMessageOnError.Checked := FUserControl.Login.AutoLogin.MessageOnError;
- // Figuras
- imgTop.Picture.Bitmap := FUserControl.UserSettings.Login.TopImage.Bitmap;
- imgLeft.Picture.Bitmap := FUserControl.UserSettings.Login.LeftImage.Bitmap;
- imgBottom.Picture.Bitmap := FUserControl.UserSettings.Login.BottomImage.Bitmap;
-end;
-
-procedure TUCEditorForm.SpeedButton1Click(Sender: TObject);
-var
- frmLogin: TfrmLoginWindow;
-begin
- try
- frmLogin := TfrmLoginWindow.Create(nil);
- with frmLogin do
- begin
- FUserControl := Self.FUserControl;
- btOK.onClick := BotoesClickVisualizacao;
- BtCancela.OnClick := BotoesClickVisualizacao;
- Caption := Self.FUserControl.UserSettings.Login.WindowCaption;
- LbUsuario.Caption := Self.FUserControl.UserSettings.Login.LabelUser;
- LbSenha.Caption := Self.FUserControl.UserSettings.Login.LabelPassword;
- ImgTop.Picture := Self.ImgTop.Picture;
- imgLeft.Picture := Self.imgLeft.Picture;
- ImgBottom.Picture := Self.imgBottom.Picture;
- btOK.Caption := Self.FUserControl.UserSettings.Login.BtOk;
- BtCancela.Caption := Self.FUserControl.UserSettings.Login.BtCancel;
- Position := Self.FUserControl.UserSettings.WindowsPosition;
- ShowModal;
- end;
- finally
- SysUtils.FreeAndNil(frmLogin);
- end;
-end;
-
-procedure TUCEditorForm.SpeedButton2Click(Sender: TObject);
-begin
- imgTop.Picture := nil;
-end;
-
-procedure TUCEditorForm.SpeedButton3Click(Sender: TObject);
-begin
- imgLeft.Picture := nil;
-end;
-
-procedure TUCEditorForm.SpeedButton4Click(Sender: TObject);
-begin
- imgBottom.Picture := nil;
-end;
-
-procedure TUCEditorForm.SpeedButton5Click(Sender: TObject);
-begin
- Case TSpeedButton(Sender).Tag of
- 0 : cbActionList.ItemIndex := -1;
- 1 : cbActionMainMenuBar.ItemIndex := -1;
- 2 : cbActionManager.ItemIndex := -1;
- 3 : cbMainMenu.ItemIndex := -1;
- End;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/UCIdle.pas b/internal/2.31RC1/1/Source/UCIdle.pas
deleted file mode 100644
index 847719b..0000000
--- a/internal/2.31RC1/1/Source/UCIdle.pas
+++ /dev/null
@@ -1,138 +0,0 @@
-unit UCIdle;
-
-interface
-
-uses Classes, UCBase, Dialogs, Windows, Forms, ExtCtrls, Messages,SysUtils;
-
-type
-
- TUCIdle = class;
- TUCIdleTimeLeft = procedure (TimeLeft : Integer) of Object;
-
- TThUCIdle = class(TThread)
- private
- procedure DoIdle;
- procedure TimeLeftSinc;
- protected
- procedure Execute; override;
- public
- CurrentMilisec : Integer;
- UCIdle : TUCIdle;
- end;
-
- TUCIdle = class(TComponent)
- private
- FThIdle : TThUCIdle;
- FTimeOut: Integer;
- FOnIdle: TNotifyEvent;
- FUserControl: TUserControl; //changed from FUCComp to FUserControl
- FOnAppMessage : TMessageEvent;
- FTimeLeftNotify: TUCIdleTimeLeft;
- procedure UCAppMessage(var Msg: TMsg; var Handled: Boolean);
- procedure SetUserControl(const Value: TUserControl);
- protected
- procedure Loaded; override;
- procedure Notification(AComponent: TComponent;
- AOperation: TOperation); override; //added by fduenas
- public
- constructor Create(AOwner: TComponent); override;
- destructor Destroy; override;
- procedure DoIdle;
- published
- property UserControl : TUserControl read FUserControl write SetUserControl; //changed by fduenas
- property OnIdle : TNotifyEvent read FOnIdle write FOnIdle;
- property OnTimeLeftNotify : TUCIdleTimeLeft read FTimeLeftNotify write FTimeLeftNotify;
- property Timeout : Integer read FTimeOut write FTimeOut;
- end;
-
-
-implementation
-
-{ TUCIdle }
-
-constructor TUCIdle.Create(AOwner: TComponent);
-begin
- inherited Create(AOwner);
-end;
-
-destructor TUCIdle.Destroy;
-begin
- FreeAndNil( FThIdle );
- inherited;
-end;
-
-procedure TUCIdle.DoIdle;
-begin
- if Assigned(UserControl) and (UserControl.CurrentUser.UserID <> 0 ) then
- UserControl.Logoff;
- if Assigned(OnIdle) then OnIdle(Self);
-end;
-
-procedure TUCIdle.Loaded;
-begin
- inherited;
- if not (csDesigning in ComponentState) then
- if (Assigned(UserControl)) or (Assigned(OnIdle))then
- begin
- if Assigned(Application.OnMessage) then FOnAppMessage := Application.OnMessage;
- Application.OnMessage := UCAppMessage;
- FThIdle := TThUCIdle.Create(True);
- FThIdle.CurrentMilisec := 0;
- FThIdle.UCIdle := Self;
- FThIdle.Resume;
- end;
-end;
-
-procedure TUCIdle.Notification(AComponent: TComponent;
- AOperation: TOperation);
-begin
- If AOperation = opRemove then
- If AComponent = FUserControl then
- FUserControl := nil;
- inherited Notification(AComponent, AOperation) ;
-
-end;
-
-procedure TUCIdle.SetUserControl(const Value: TUserControl);
-begin
- FUserControl := Value;
- if Value <> nil then
- Value.FreeNotification(self);
-end;
-
-procedure TUCIdle.UCAppMessage(var Msg: TMsg; var Handled: Boolean);
-begin
- if (msg.message = wm_mousemove) or (msg.message = wm_keydown) then FThIdle.CurrentMilisec := 0;
-
- if Assigned(FOnAppMessage) then FOnAppMessage(Msg, Handled);
-end;
-
-{ TThUCIdle }
-
-procedure TThUCIdle.DoIdle;
-begin
- UCIdle.DoIdle;
-end;
-
-procedure TThUCIdle.TimeLeftSinc;
-begin
- if Assigned(UCIdle.OnTimeLeftNotify) then UCIdle.OnTimeLeftNotify(UCIdle.Timeout - CurrentMilisec);
-end;
-
-procedure TThUCIdle.Execute;
-begin
- while not Terminated do
- begin
- Sleep(1000);
- if UCIdle.Timeout <= CurrentMilisec then
- begin
- CurrentMilisec := 0;
- Synchronize(DoIdle);
- end else begin
- Inc(CurrentMilisec, 1000);
- Synchronize(TimeLeftSinc);
- end;
- end;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/UCLock.res b/internal/2.31RC1/1/Source/UCLock.res
deleted file mode 100644
index 4a1f3ae..0000000
Binary files a/internal/2.31RC1/1/Source/UCLock.res and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/UCMail.pas b/internal/2.31RC1/1/Source/UCMail.pas
deleted file mode 100644
index 0511b30..0000000
--- a/internal/2.31RC1/1/Source/UCMail.pas
+++ /dev/null
@@ -1,317 +0,0 @@
-{-----------------------------------------------------------------------------
- Unit Name: UCMail
- Author: QmD
- Date: 09-nov-2004
- Purpose: Send Mail messages (forget password, user add/change/password force/etc)
- History: included indy 10 support
------------------------------------------------------------------------------}
-
-
-unit UCMail;
-
-interface
-
-{.$I 'UserControl.inc'}
-
-
-uses
- Classes,
- Dialogs,
- UCALSMTPClient,
- SysUtils,
- UcConsts_Language;
-
-type
- TUCMailMessage = class(TPersistent)
- private
- FAtivo: Boolean;
- FTitulo: String;
- FLines: TStrings;
- procedure SetLines(const Value: TStrings);
- protected
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property Ativo: Boolean read FAtivo write FAtivo;
- property Titulo: String read FTitulo write FTitulo;
- property Mensagem: TStrings read FLines write SetLines;
- end;
-
- TUCMEsqueceuSenha = class(TUCMailMessage)
- private
- FLabelLoginForm: String;
- FMailEnviado: String;
- protected
- public
- published
- property LabelLoginForm: String read FLabelLoginForm write FLabelLoginForm;
- property MensagemEmailEnviado: String read FMailEnviado write FMailEnviado;
- end;
-
- TMessageTag = procedure(Tag: String; var ReplaceText: String) of object;
-
- TMailUserControl = class(TComponent)
- private
- FPorta: Integer;
- FEmailRemetente: String;
- FUsuario: String;
- FNomeRemetente: String;
- FSenha: String;
- FSMTPServer: String;
- FAdicionaUsuario: TUCMailMessage;
- FSenhaTrocada: TUCMailMessage;
- FAlteraUsuario: TUCMailMessage;
- FSenhaForcada: TUCMailMessage;
- FEsqueceuSenha: TUCMEsqueceuSenha;
- fAuthType: TAlSmtpClientAuthType;
- function ParseMailMSG(Nome, Login, Senha, Email, Perfil, txt: String): String;
- function TrataSenha(Senha: String; Key: Word): String;
- procedure onStatus(Status: String);
- protected
- procedure EnviaEmailTp(Nome, Login, USenha, Email, Perfil: String; UCMSG: TUCMailMessage);
- public
- constructor Create(AOwner: TComponent); override;
- destructor Destroy; override;
- procedure EnviaEmailAdicionaUsuario(Nome, Login, Senha, Email, Perfil: String; Key: Word);
- procedure EnviaEmailAlteraUsuario(Nome, Login, Senha, Email, Perfil: String; Key: Word);
- procedure EnviaEmailSenhaForcada(Nome, Login, Senha, Email, Perfil: String);
- procedure EnviaEmailSenhaTrocada(Nome, Login, Senha, Email, Perfil: String; Key: Word);
- procedure EnviaEsqueceuSenha(Nome, Login, Senha, Email, Perfil: String; Key: Word);
- published
- property AuthType : TAlSmtpClientAuthType read fAuthType write fAuthType;
- property ServidorSMTP: String read FSMTPServer write FSMTPServer;
- property Usuario: String read FUsuario write FUsuario;
- property Senha: String read FSenha write FSenha;
- property Porta: Integer read FPorta write FPorta default 0;
- property NomeRemetente: String read FNomeRemetente write FNomeRemetente;
- property EmailRemetente: String read FEmailRemetente write FEmailRemetente;
- property AdicionaUsuario: TUCMailMessage read FAdicionaUsuario write FAdicionaUsuario;
- property AlteraUsuario: TUCMailMessage read FAlteraUsuario write FAlteraUsuario;
- property EsqueceuSenha: TUCMEsqueceuSenha read FEsqueceuSenha write FEsqueceuSenha;
- property SenhaForcada: TUCMailMessage read FSenhaForcada write FSenhaForcada;
- property SenhaTrocada: TUCMailMessage read FSenhaTrocada write FSenhaTrocada;
- end;
-
-implementation
-
-uses
- UCBase,
- UCEMailForm_U;
-
-{ TMailAdicUsuario }
-
-procedure TUCMailMessage.Assign(Source: TPersistent);
-begin
- if Source is TUCMailMessage then
- begin
- Self.Ativo := TUCMailMessage(Source).Ativo;
- Self.Titulo := TUCMailMessage(Source).Titulo;
- Self.Mensagem.Assign(TUCMailMessage(Source).Mensagem);
- end
- else
- inherited;
-end;
-
-constructor TUCMailMessage.Create(AOwner: TComponent);
-begin
- FLines := TStringList.Create;
-end;
-
-destructor TUCMailMessage.Destroy;
-begin
- SysUtils.FreeAndNil(FLines);
- inherited;
-end;
-
-procedure TUCMailMessage.SetLines(const Value: TStrings);
-begin
- FLines.Assign(Value);
-end;
-
-{ TMailUserControl }
-
-constructor TMailUserControl.Create(AOwner: TComponent);
-begin
- inherited;
- AdicionaUsuario := TUCMailMessage.Create(self);
- AdicionaUsuario.FLines.Add('Inclusão de usuário');
- AdicionaUsuario.FLines.Add('');
- AdicionaUsuario.fLines.Add('Nome...: :nome');
- AdicionaUsuario.fLines.Add('Login..: :login');
- AdicionaUsuario.fLines.Add('Senha..: :senha');
- AdicionaUsuario.fLines.Add('Email..: :email');
- AdicionaUsuario.fLines.Add('Perfil.: :perfil');
- AdicionaUsuario.fTitulo := 'Inclusão de usuário';
-
-
- AlteraUsuario := TUCMailMessage.Create(self);
- AlteraUsuario.FLines.Add('Alteração de usuário');
- AlteraUsuario.FLines.Add('');
- AlteraUsuario.fLines.Add('Nome...: :nome');
- AlteraUsuario.fLines.Add('Login..: :login');
- AlteraUsuario.fLines.Add('Senha..: :senha');
- AlteraUsuario.fLines.Add('Email..: :email');
- AlteraUsuario.fLines.Add('Perfil.: :perfil');
- AlteraUsuario.fTitulo := 'Alteração de usuário';
-
- EsqueceuSenha := TUCMEsqueceuSenha.Create(self);
- EsqueceuSenha.FLines.Add('Esquecia a senha');
- EsqueceuSenha.FLines.Add('');
- EsqueceuSenha.fLines.Add('Nome...: :nome');
- EsqueceuSenha.fLines.Add('Login..: :login');
- EsqueceuSenha.fLines.Add('Senha..: :senha');
- EsqueceuSenha.fLines.Add('Email..: :email');
- EsqueceuSenha.fLines.Add('Perfil.: :perfil');
- EsqueceuSenha.fTitulo := 'Lembrete de senha';
-
- SenhaForcada := TUCMailMessage.Create(self);
- SenhaForcada.FLines.Add('Troca de senha forçada');
- SenhaForcada.FLines.Add('');
- SenhaForcada.fLines.Add('Nome...: :nome');
- SenhaForcada.fLines.Add('Login..: :login');
- SenhaForcada.fLines.Add('Senha..: :senha');
- SenhaForcada.fLines.Add('Email..: :email');
- SenhaForcada.fLines.Add('Perfil.: :perfil');
- SenhaForcada.fTitulo := 'Troca de senha forçada';
-
- SenhaTrocada := TUCMailMessage.Create(self);
- SenhaTrocada.FLines.Add('Alteração de senha');
- SenhaTrocada.FLines.Add('');
- SenhaTrocada.fLines.Add('Nome...: :nome');
- SenhaTrocada.fLines.Add('Login..: :login');
- SenhaTrocada.fLines.Add('Senha..: :senha');
- SenhaTrocada.fLines.Add('Email..: :email');
- SenhaTrocada.fLines.Add('Perfil.: :perfil');
- SenhaTrocada.fTitulo := 'Alteração de senha';
-
- fAuthType := alsmtpClientAuthPlain;
- if csDesigning in ComponentState then
- begin
- Porta := 25;
- AdicionaUsuario.Ativo := True;
- AlteraUsuario.Ativo := True;
- EsqueceuSenha.Ativo := True;
- SenhaForcada.Ativo := True;
- SenhaTrocada.Ativo := True;
- EsqueceuSenha.LabelLoginForm := RetornaLingua( ucPortuguesBr, 'Const_Log_LbEsqueciSenha');
- EsqueceuSenha.MensagemEmailEnviado := RetornaLingua( ucPortuguesBr,'Const_Log_MsgMailSend');
- end;
-
-end;
-
-destructor TMailUserControl.Destroy;
-begin
- SysUtils.FreeAndNil(FAdicionaUsuario);
- SysUtils.FreeAndNil(FAlteraUsuario);
- SysUtils.FreeAndNil(FEsqueceuSenha);
- SysUtils.FreeAndNil(FSenhaForcada);
- SysUtils.FreeAndNil(FSenhaTrocada);
-
- inherited;
-end;
-
-procedure TMailUserControl.EnviaEmailAdicionaUsuario(Nome, Login, Senha, Email, Perfil: String; Key: Word);
-begin
- Senha := TrataSenha(Senha, Key);
- EnviaEmailTP(Nome, Login, Senha, Email, Perfil, AdicionaUsuario);
-end;
-
-procedure TMailUserControl.EnviaEmailAlteraUsuario(Nome, Login, Senha, Email, Perfil: String; Key: Word);
-begin
- Senha := TrataSenha(Senha, Key);
- EnviaEmailTP(Nome, Login, Senha, Email, Perfil, AlteraUsuario);
-end;
-
-procedure TMailUserControl.EnviaEmailSenhaForcada(Nome, Login, Senha, Email, Perfil: String);
-begin
- EnviaEmailTP(Nome, Login, Senha, Email, Perfil, SenhaForcada);
-end;
-
-procedure TMailUserControl.EnviaEmailSenhaTrocada(Nome, Login, Senha, Email, Perfil: String; Key: Word);
-begin
- EnviaEmailTP(Nome, Login, Senha, Email, Perfil, SenhaTrocada);
-end;
-
-function TMailUserControl.ParseMailMSG(Nome, Login, Senha, Email, Perfil, txt: String): String;
-begin
- Txt := StringReplace(txt, ':nome', nome, [rfReplaceAll]);
- Txt := StringReplace(txt, ':login', login, [rfReplaceAll]);
- Txt := StringReplace(txt, ':senha', senha, [rfReplaceAll]);
- Txt := StringReplace(txt, ':email', email, [rfReplaceAll]);
- Txt := StringReplace(txt, ':perfil', perfil, [rfReplaceAll]);
- Result := Txt;
-end;
-
-procedure TMailUserControl.onStatus( Status : String );
-begin
- if not Assigned(UCEMailForm) then Exit;
- UCEMailForm.lbStatus.Caption := Status;
- UCEMailForm.Update;
-end;
-
-procedure TMailUserControl.EnviaEmailTp(Nome, Login, USenha, Email, Perfil: String; UCMSG: TUCMailMessage);
-var
- MailMsg : TAlSmtpClient;
- MailRecipients : TStringlist;
- MailHeader : TALSMTPClientHeader;
-begin
- if Trim(Email) = '' then
- Exit;
- MailMsg := TAlSmtpClient.Create;
- MailMsg.OnStatus := OnStatus;
- MailRecipients := TStringlist.Create;
- MailHeader := TALSMTPClientHeader.Create;
- MailHeader.From := EmailRemetente; //'rodrigo@oxio.com.br';
- MailHeader.SendTo := Email ;
- MailRecipients.Append(Email);
- MailHeader.Subject := UCMSG.Titulo;
-
- try
- try
- UCEMailForm := TUCEMailForm.Create(Self);
- UCEMailForm.lbStatus.Caption := '';
- UCEMailForm.Show;
- UCEMailForm.Update;
-
- MailMsg.SendMail(ServidorSMTP, FPorta, NomeRemetente ,
- MailRecipients, Usuario, Senha, fAuthType , MailHeader.RawHeaderText,
- ParseMailMSG(Nome, Login, USenha, Email, Perfil, UCMSG.Mensagem.Text));
-
- UCEMailForm.Update;
- except
- on e: Exception do
- begin
- Beep;
- UCEMailForm.Close;
- MessageDlg(E.Message,mtWarning,[mbok],0);
- raise;
- end;
- end;
- finally
- FreeAndNil(MailMsg);
- FreeAndNil(MailHeader);
- FreeAndNil(MailRecipients);
- FreeAndNil(UCEMailForm);
- end;
-end;
-
-procedure TMailUserControl.EnviaEsqueceuSenha(Nome, Login, Senha, Email, Perfil: String; Key: Word);
-begin
- if Trim(Email) = '' then
- Exit;
- try
- Senha := TrataSenha(Senha, Key);
- EnviaEmailTP(Nome, Login, Senha, Email, Perfil, EsqueceuSenha);
- MessageDlg(EsqueceuSenha.MensagemEmailEnviado, mtInformation, [mbOK], 0);
- except
- end;
-end;
-
-function TmailUserControl.TrataSenha(Senha: String; Key: Word): String;
-begin
- Result := Decrypt(Senha, Key);
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/UCMessages.pas b/internal/2.31RC1/1/Source/UCMessages.pas
deleted file mode 100644
index 4ef209c..0000000
--- a/internal/2.31RC1/1/Source/UCMessages.pas
+++ /dev/null
@@ -1,1137 +0,0 @@
-unit UCMessages;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- Classes,
- Dialogs,
- Forms,
- Graphics,
- SysUtils,
- UCConsts_language;
-
-type
- TUCAppMessagesMSG = class(TPersistent)
- private
- FMsgRec_LabelDate: String;
- FMsgsForm_BtBtForward: String;
- Fmsgsform_btnew: String;
- FMsgSend_GroupTo: String;
- FMsgSend_WindowCaption: String;
- FMsgSend_GroupMessage: String;
- FMsgsForm_ColFrom: String;
- FMsgsForm_BtDelete: String;
- FMsgsForm_BtClose: String; //added by fduenas
- FMsgRec_LabelMessage: String;
- FMsgRec_Title: String;
- FMsgSend_RadioAll: String;
- FMsgSend_RadioUser: String;
- FMsgSend_Title: String;
- FMsgsForm_ColSubject: String;
- FMsgRec_LabelFrom: String;
- FMsgsForm_WindowCaption: String;
- FMsgRec_LabelSubject: String;
- FMsgRec_WindowCaption: String;
- FMsgSend_BtSend: String;
- FMsgSend_BtCancel: String;
- FMsgsForm_BtReplay: String;
- FMsgRec_BtClose: String;
- FMsgSend_LabelSubject: String; //added by fduenas
- FMsgSend_LabelMessageText: String; //added by fduenas
- FMsgsForm_PromptDelete: String;
- FMsgsForm_PromptDelete_WindowCaption: String; //added by fduenas
- FMsgsForm_ColDate: String;
- FMsgsForm_NoMessagesSelected: String; //added by fduenas
- FMsgsForm_NoMessagesSelected_WindowCaption: String; //added by fduenas
- protected
- public
- constructor Create(Aowner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property MsgsForm_BtNew: String read Fmsgsform_btnew write Fmsgsform_btnew;
- property MsgsForm_BtReplay: String read FMsgsForm_BtReplay write FMsgsForm_BtReplay;
- property MsgsForm_BtForward: String read FMsgsForm_BtBtForward write FMsgsForm_BtBtForward;
- property MsgsForm_BtDelete: String read FMsgsForm_BtDelete write FMsgsForm_BtDelete;
- property MsgsForm_BtClose: String read FMsgsForm_BtClose write FMsgsForm_BtClose; //added By fduenas
- property MsgsForm_WindowCaption: String read FMsgsForm_WindowCaption write FMsgsForm_WindowCaption;
- property MsgsForm_ColFrom: String read FMsgsForm_ColFrom write FMsgsForm_ColFrom;
- property MsgsForm_ColSubject: String read FMsgsForm_ColSubject write FMsgsForm_ColSubject;
- property MsgsForm_ColDate: String read FMsgsForm_ColDate write FMsgsForm_ColDate;
- property MsgsForm_PromptDelete: String read FMsgsForm_PromptDelete write FMsgsForm_PromptDelete;
- property MsgsForm_PromptDelete_WindowCaption: String read FMsgsForm_PromptDelete_WindowCaption write FMsgsForm_PromptDelete_WindowCaption; //added by fduenas
- property MsgsForm_NoMessagesSelected: String read FMsgsForm_NoMessagesSelected write FMsgsForm_NoMessagesSelected; //added by fduenas
- property MsgsForm_NoMessagesSelected_WindowCaption: String read FMsgsForm_NoMessagesSelected_WindowCaption write FMsgsForm_NoMessagesSelected_WindowCaption; //added by fduenas
-
- property MsgRec_BtClose: String read FMsgRec_BtClose write FMsgRec_BtClose;
- property MsgRec_WindowCaption: String read FMsgRec_WindowCaption write FMsgRec_WindowCaption;
- property MsgRec_Title: String read FMsgRec_Title write FMsgRec_Title;
- property MsgRec_LabelFrom: String read FMsgRec_LabelFrom write FMsgRec_LabelFrom;
- property MsgRec_LabelDate: String read FMsgRec_LabelDate write FMsgRec_LabelDate;
- property MsgRec_LabelSubject: String read FMsgRec_LabelSubject write FMsgRec_LabelSubject;
- property MsgRec_LabelMessage: String read FMsgRec_LabelMessage write FMsgRec_LabelMessage;
-
- property MsgSend_BtSend: String read FMsgSend_BtSend write FMsgSend_BtSend;
- property MsgSend_BtCancel: String read FMsgSend_BtCancel write FMsgSend_BtCancel;
- property MsgSend_WindowCaption: String read FMsgSend_WindowCaption write FMsgSend_WindowCaption;
- property MsgSend_Title: String read FMsgSend_Title write FMsgSend_Title;
- property MsgSend_GroupTo: String read FMsgSend_GroupTo write FMsgSend_GroupTo;
- property MsgSend_RadioUser: String read FMsgSend_RadioUser write FMsgSend_RadioUser;
- property MsgSend_RadioAll: String read FMsgSend_RadioAll write FMsgSend_RadioAll;
- property MsgSend_GroupMessage: String read FMsgSend_GroupMessage write FMsgSend_GroupMessage;
- property MsgSend_LabelSubject: String read FMsgSend_LabelSubject write FMsgSend_LabelSubject; //added by fduenas
- property MsgSend_LabelMessageText: String read FMsgSend_LabelMessageText write FMsgSend_LabelMessageText; //added by fduenas
- end;
-
- TUCChangePassError = class(TPersistent)
- private
- FInvalidCurrentPassword: String;
- FNewPasswordError: String;
- FNewEqualCurrent: String;
- FPasswordRequired: String;
- FMinPasswordLength: String;
- FInvalidNewPassword: String;
- protected
- public
- constructor Create(Aowner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property InvalidCurrentPassword: String read FInvalidCurrentPassword write FInvalidCurrentPassword;
- property NewPasswordError: String read FNewPasswordError write FNewPasswordError;
- property NewEqualCurrent: String read FNewEqualCurrent write FNewEqualCurrent;
- property PasswordRequired: String read FPasswordRequired write FPasswordRequired;
- property MinPasswordLength: String read FMinPasswordLength write FMinPasswordLength;
- property InvalidNewPassword: String read FInvalidNewPassword write FInvalidNewPassword;
- end;
-
- TUCUserCommonMSG = class(TPersistent)
- private
- FPasswordOFF: String;
- FPasswordChanged: String;
- FInvalidUserPass: String;
- FMaxLoginTry: String;
- FAutoLogonError: String;
- FFirstMSG: TStrings;
- FChangePasswordError: TUCChangePassError;
- FUsuarioExiste: String;
- fPasswordExpired: String;
- fForcaTrocaSenha: String;
- fInactiveLogin: String;
- procedure SetFErroTrocaSenha(const Value: TUCChangePassError);
- procedure SetFFirstMSG(const Value: TStrings);
- protected
-
- public
- constructor Create(Aowner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property AutoLogonError: String read FAutoLogonError write FAutoLogonError;
- property ChangePasswordError: TUCChangePassError read FChangePasswordError write SetFErroTrocaSenha;
- property InvalidLogin: String read FInvalidUserPass write FInvalidUserPass;
- property InactiveLogin: String read fInactiveLogin write fInactiveLogin;
- property InitialMessage: TStrings read FFirstMSG write SetFFirstMSG;
- property MaxLoginAttemptsError: String read FMaxLoginTry write FMaxLoginTry;
- property PasswordChanged: String read FPasswordChanged write FPasswordChanged;
- property BlankPassword: String read FPasswordOFF write FPasswordOFF;
- property UsuarioExiste: String read FUsuarioExiste write FUsuarioExiste;
- property PasswordExpired : String read fPasswordExpired write fPasswordExpired;
- property ForcaTrocaSenha : String read fForcaTrocaSenha write fForcaTrocaSenha;
- end;
-
- TUCLoginFormMSG = class(TPersistent)
- private
- FWindowCaption: String;
- FLabelUser: String;
- FLabelPassword: String;
- FBtOk: String;
- FBtCancel: String;
- FBottomImage: TPicture;
- FLeftImage: TPicture;
- FTopImage: TPicture;
- fLabelTentativas: String;
- fLabelTentativa: String;
- procedure SetFBottomImage(const Value: TPicture);
- procedure SetFLeftImage(const Value: TPicture);
- procedure SetFTopImage(const Value: TPicture);
- protected
-
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property WindowCaption: String read FWindowCaption write FWindowCaption;
- property LabelUser: String read FLabelUser write FLabelUser;
- property LabelPassword: String read FLabelPassword write FLabelPassword;
- property BtOk: String read FBtOk write FBtOk;
- property BtCancel: String read FBtCancel write FBtCancel;
- property TopImage: TPicture read FTopImage write SetFTopImage;
- property LeftImage: TPicture read FLeftImage write SetFLeftImage;
- property BottomImage: TPicture read FBottomImage write SetFBottomImage;
- property LabelTentativa : String read fLabelTentativa write fLabelTentativa; // by vicente barros leonel
- property LabelTentativas : String read fLabelTentativas write fLabelTentativas; // by vicente barros leonel
- end;
-
- TUCCadUserFormMSG = class(TPersistent)
- private
- FWindowCaption: String;
- FLabelDescricao: String;
- FColNome: String;
- FColLogin: String;
- FColEmail: String;
- FBtAdic: String;
- FBtAlt: String;
- FBtExc: String;
- FBtAccess: String;
- FBtPass: String;
- FBtClose: String;
- FConfExc: String;
- FPromptDelete_WindowCaption: String; //added by fduenas
- protected
-
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property WindowCaption: String read FWindowCaption write FWindowCaption;
- property LabelDescription: String read FLabelDescricao write FLabelDescricao;
- property ColName: String read FColNome write FColNome;
- property ColLogin: String read FColLogin write FColLogin;
- property ColEmail: String read FColEmail write FColEmail;
- property BtAdd: String read FBtAdic write FBtAdic;
- property BtChange: String read FBtAlt write FBtAlt;
- property BtDelete: String read FBtExc write FBtExc;
- property PromptDelete: String read FConfExc write FConfExc;
- property PromptDelete_WindowCaption: String read FPromptDelete_WindowCaption write FPromptDelete_WindowCaption; //added by fduenas
- property BtRights: String read FBtAccess write FBtAccess;
- property BtPassword: String read FBtPass write FBtPass;
- property BtClose: String read FBtClose write FBtClose;
- end;
-
- TUCLogControlFormMSG = class(TPersistent)
- private
- FColAppID: String;
- FColData: String;
- FColNivel: String;
- FColUsuario: String;
- FColMensagem: String;
- FLabelDescription: String;
- FWindowCaption: String;
- FLabelLevel: String;
- FBtClose: String;
- FConfExc: String;
- FLabelUser: String;
- FBtFilt: String;
- FLabelDate: String;
- FBtExc: String;
- FOptionUserAll: String; //added by fduenas
- FOptionLevelLow: String; //added by fduenas
- FOptionLevelNormal: String; //added by fduenas
- FOptionLevelHigh: String; //added by fduenas
- FOptionLevelCritic: String; //added by fduenas
- FPromptDelete_WindowCaption: String; //added by fduenas
- FDeletePerformed: String;
- protected
-
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property WindowCaption: String read FWindowCaption write FWindowCaption;
- property LabelDescription: String read FLabelDescription write FLabelDescription;
- property LabelUser: String read FLabelUser write FLabelUser;
- property LabelDate: String read FLabelDate write FLabelDate;
- property LabelLevel: String read FLabelLevel write FLabelLevel;
- property ColAppID: String read FColAppID write FColAppID;
- property ColLevel: String read FColNivel write FColNivel;
- property ColMessage: String read FColMensagem write FColMensagem;
- property ColUser: String read FColUsuario write FColUsuario;
- property ColDate: String read FColData write FColData;
- property BtFilter: String read FBtFilt write FBtFilt;
- property BtDelete: String read FBtExc write FBtExc;
- property BtClose: String read FBtClose write FBtClose;
- property PromptDelete: String read FConfExc write FConfExc;
- property PromptDelete_WindowCaption: String read FPromptDelete_WindowCaption write FPromptDelete_WindowCaption; //added by fduenas
- property OptionUserAll: String read FOptionUserAll write FOptionUserAll; //added by fduenas
- property OptionLevelLow: String read FOptionLevelLow write FOptionLevelLow; //added by fduenas
- property OptionLevelNormal: String read FOptionLevelNormal write FOptionLevelNormal; //added by fduenas
- property OptionLevelHigh: String read FOptionLevelHigh write FOptionLevelHigh; //added by fduenas
- property OptionLevelCritic: String read FOptionLevelCritic write FOptionLevelCritic; //added by fduenas
- property DeletePerformed: String read FDeletePerformed write FDeletePerformed; //added by fduenas
- end;
-
- TUCProfileUserFormMSG = class(TPersistent)
- private
- FWindowCaption: String;
- FLabelDescription: String;
- FColPerfil: String;
- FBtAdic: String;
- FBtAlt: String;
- FBtExc: String;
- FBtAcess: String;
- FBtClose: String;
- FConfExc: String;
- FPromptDelete_WindowCaption: String; //added by fduenas
- protected
-
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property WindowCaption: String read FWindowCaption write FWindowCaption;
- property LabelDescription: String read FLabelDescription write FLabelDescription;
- property ColProfile: String read FColPerfil write FColPerfil;
- property BtAdd: String read FBtAdic write FBtAdic;
- property BtChange: String read FBtAlt write FBtAlt;
- property BtDelete: String read FBtExc write FBtExc;
- property BtRights: String read FBtAcess write FBtAcess; //BGM
- property PromptDelete: String read FConfExc write FConfExc;
- property PromptDelete_WindowCaption: String read FPromptDelete_WindowCaption write FPromptDelete_WindowCaption; //added by fduenas
- property BtClose: String read FBtClose write FBtClose;
- end;
-
- TUCAddUserFormMSG = class(TPersistent)
- private
- FWindowCaption: String;
- FLabelAdd: String;
- FLabelChange: String;
- FLabelNome: String;
- FLabelLogin: String;
- FLabelEmail: String;
- FCheckPriv: String;
- FBtSave: String;
- FBtCancelar: String;
- FLabelPerfil: String;
- fCheckExpira: String;
- fExpiredIn: string;
- fDay: String;
- fLabelStatus: String;
- fStatusDisabled: string;
- fStatusActive: String;
- protected
-
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property WindowCaption: String read FWindowCaption write FWindowCaption;
- property LabelAdd: String read FLabelAdd write FLabelAdd;
- property LabelChange: String read FLabelChange write FLabelChange;
- property LabelName: String read FLabelNome write FLabelNome;
- property LabelLogin: String read FLabelLogin write FLabelLogin;
- property LabelEmail: String read FLabelEmail write FLabelEmail;
- property LabelPerfil: String read FLabelPerfil write FLabelPerfil;
- property CheckPrivileged: String read FCheckPriv write FCheckPriv;
- property BtSave: String read FBtSave write FBtSave;
- property BtCancel: String read FBtCancelar write FBtCancelar;
- property CheckExpira: String read fCheckExpira write fCheckExpira;
- property Day : String read fDay write fDay;
- property ExpiredIn : string read fExpiredIn write fExpiredIn;
- property LabelStatus : String read fLabelStatus write fLabelStatus;
- property StatusActive : String read fStatusActive write fStatusActive;
- property StatusDisabled : string read fStatusDisabled write fStatusDisabled;
- end;
-
- TUCAddProfileFormMSG = class(TPersistent)
- private
- FWindowCaption, FLabelAdd, FLabelChange, FLabelName, FBtGravar, FBtCancel: String;
- protected
-
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property WindowCaption: String read FWindowCaption write FWindowCaption;
- property LabelAdd: String read FLabelAdd write FLabelAdd;
- property LabelChange: String read FLabelChange write FLabelChange;
- property LabelName: String read FLabelName write FLabelName;
- property BtSave: String read FBtGravar write FBtGravar;
- property BtCancel: String read FBtCancel write FBtCancel;
- end;
-
- TUCPermissFormMSG = class(TPersistent)
- private
- FWindowCaption: String;
- FBtCancela: String;
- FBtGrava: String;
- FBtLock: String;
- FBtUnlock: String;
- FPageActions: String;
- FPageMenu: String;
- FLabelProfile: String;
- FLabelUser: String;
- fPageControls: string;
- protected
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property WindowCaption: String read FWindowCaption write FWindowCaption;
- property LabelUser: String read FLabelUser write FLabelUser;
- property LabelProfile: String read FLabelProfile write FLabelProfile;
- property PageMenu: String read FPageMenu write FPageMenu;
- property PageActions: String read FPageActions write FPageActions;
- property PageControls: string read fPageControls write fPageControls;
- property BtUnlock: String read FBtUnlock write FBtUnlock;
- property BtLock: String read FBtLock write FBtLock;
- property BtSave: String read FBtGrava write FBtGrava;
- property BtCancel: String read FBtCancela write FBtCancela;
- end;
-
- TUCTrocaSenhaFormMSG = class(TPersistent)
- private
- FWindowCaption: String;
- FBtCancel: String;
- FBtSave: String;
- FLabelConfirm: String;
- FLabelNewPassword: String;
- FLabelCurrentPassword: String;
- FLabelDescription: String;
- protected
-
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property WindowCaption: String read FWindowCaption write FWindowCaption;
- property LabelDescription: String read FLabelDescription write FLabelDescription;
- property LabelCurrentPassword: String read FLabelCurrentPassword write FLabelCurrentPassword;
- property LabelNewPassword: String read FLabelNewPassword write FLabelNewPassword;
- property LabelConfirm: String read FLabelConfirm write FLabelConfirm;
- property BtSave: String read FBtSave write FBtSave;
- property BtCancel: String read FBtCancel write FBtCancel;
- end;
-
- TUCResetPassword = class(TPersistent)
- private
- FWindowCaption: String;
- FLabelPassword: String;
- protected
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property WindowCaption: String read FWindowCaption write FWindowCaption;
- property LabelPassword: String read FLabelPassword write FLabelPassword;
- end;
-
- TUCCadUserLoggedMSG = Class( TPersistent )
- private
- fBtnMessage: String;
- fBtnRefresh: String;
- fBtnClose: String;
- fLabelDescricao: String;
- fLabelCaption: String;
- FColLogin: String;
- FColData: String;
- FColNome: String;
- FColComputer: String;
- fInputCaption: String;
- fInputText: String;
- fMsgSystem: String;
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property BtnMessage : String read fBtnMessage write fBtnMessage;
- property BtnRefresh : String read fBtnRefresh write fBtnRefresh;
- property BtnClose : String read fBtnClose write fBtnClose;
- property LabelDescricao : String read fLabelDescricao write fLabelDescricao;
- property LabelCaption : String read fLabelCaption write fLabelCaption;
- property ColName : String read FColNome write FColNome;
- property ColLogin : String read FColLogin write FColLogin;
- property ColComputer : String read FColComputer write FColComputer;
- property ColData : String read FColData write FColData;
-
- property InputCaption : String read fInputCaption write fInputCaption;
- property InputText : String read fInputText write fInputText;
- property MsgSystem : String read fMsgSystem write fMsgSystem;
- End;
-
- TUCTypeBancoDados = ( Interbase , Firebird , MySql , PARADOX, Oracle , SqlServer, PostgreSQL );
-
- TUCUserSettings = class(TPersistent)
- private
- FUserCommomMSG: TUCUserCommonMSG;
- FLoginFormMSG: TUCLoginFormMSG;
- FCadUserFormMSG: TUCCadUserFormMSG;
- FAddUserFormMSG: TUCAddUserFormMSG;
- FPermissFormMSG: TUCPermissFormMSG;
- FTrocaSenhaFormMSG: TUCTrocaSenhaFormMSG;
- FResetPassword: TUCResetPassword;
- FProfileUserFormMSG: TUCProfileUserFormMSG;
- FAddProfileFormMSG: TUCAddProfileFormMSG;
- FLogControlFormMSG: TUCLogControlFormMSG;
- FAppMessagesMSG: TUCAppMessagesMSG;
- FPosition: TPosition;
- fLanguage: TUCLanguage;
- fUsersLogged: TUCCadUserLoggedMSG;
- fBancoDados: TUCTypeBancoDados;
- procedure SetFResetPassword(const Value: TUCResetPassword);
- procedure SetFProfileUserFormMSG(const Value: TUCProfileUserFormMSG);
- procedure SetFAddProfileFormMSG(const Value: TUCAddProfileFormMSG);
- procedure SetFLogControlFormMSG(const Value: TUCLogControlFormMSG);
- procedure SetAppMessagesMSG(const Value: TUCAppMessagesMSG);
- procedure SetfUsersLogged(const Value: TUCCadUserLoggedMSG);
- procedure SetfBancoDados(const Value: TUCTypeBancoDados);
- protected
- procedure SetFUserCommonMsg(const Value: TUCUserCommonMSG);
- procedure SetFFormLoginMsg(const Value: TUCLoginFormMSG);
- procedure SetFCadUserFormMSG(const Value: TUCCadUserFormMSG);
- procedure SetFAddUserFormMSG(const Value: TUCAddUserFormMSG);
- procedure SetFPermissFormMSG(const Value: TUCPermissFormMSG);
- procedure SetFTrocaSenhaFormMSG(const Value: TUCTrocaSenhaFormMSG);
- public
- Type_Int ,
- Type_Char ,
- Type_VarChar ,
- Type_Memo : String;
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
-
- published
- property AppMessages: TUCAppMessagesMSG read FAppMessagesMSG write SetAppMessagesMSG;
- property CommonMessages: TUCUserCommonMSG read FUserCommomMSG write SetFUserCommonMSg;
- property Login: TUCLoginFormMSG read FLoginFormMSG write SetFFormLoginMsg;
- property Log: TUCLogControlFormMSG read FLogControlFormMSG write SetFLogControlFormMSG;
- property UsersForm: TUCCadUserFormMSG read FCadUserFormMSG write SetFCadUserFormMSG;
- property AddChangeUser: TUCAddUserFormMSG read FAddUserFormMSG write SetFAddUserFormMSG;
- property AddChangeProfile: TUCAddProfileFormMSG read FAddProfileFormMSG write SetFAddProfileFormMSG;
- property UsersProfile: TUCProfileUserFormMSG read FProfileUserFormMSG write SetFProfileUserFormMSG;
- property Rights: TUCPermissFormMSG read FPermissFormMSG write SetFPermissFormMSG;
- property ChangePassword: TUCTrocaSenhaFormMSG read FTrocaSenhaFormMSG write SetFTrocaSenhaFormMSG;
- property ResetPassword: TUCResetPassword read FResetPassword write SetFResetPassword;
- property WindowsPosition: TPosition read FPosition write FPosition;
- Property BancoDados : TUCTypeBancoDados read fBancoDados write SetfBancoDados;
- property Language : TUCLanguage read fLanguage write fLanguage;
- property UsersLogged : TUCCadUserLoggedMSG read fUsersLogged write SetfUsersLogged;
- end;
-
-
-implementation
-
-uses UCSettings;
-
-{ TUserSettings }
-
-procedure TUCUserSettings.Assign(Source: TPersistent);
-begin
- if Source is TUCUserSettings then
- Self.CommonMessages.Assign(TUCUserSettings(Source).CommonMessages)
- else
- inherited;
-end;
-
-constructor TUCUserSettings.Create(AOwner: TComponent);
-begin
- inherited Create;
- FAppMessagesMSG := TUCAppMessagesMSG.Create(nil);
- FLoginFormMSG := TUCLoginFormMSG.Create(nil);
- FUserCommomMSG := TUCUserCommonMSG.Create(nil);
- FCadUserFormMSG := TUCCadUserFormMSG.Create(nil);
- FAddUserFormMSG := TUCAddUserFormMSG.Create(nil);
- FAddProfileFormMSG := TUCAddProfileFormMSG.Create(nil);
- FPermissFormMSG := TUCPermissFormMSG.Create(nil);
- FProfileUserFormMSG := TUCProfileUserFormMSG.Create(nil);
- FTrocaSenhaFormMSG := TUCTrocaSenhaFormMSG.Create(nil);
- FResetPassword := TUCResetPassword.Create(nil);
- FLogControlFormMSG := TUCLogControlFormMSG.Create(nil);
- FPosition := poMainFormCenter;
- fBancoDados := FireBird;
- fUsersLogged := TUCCadUserLoggedMSG.Create(nil);
- RetornaSqlBancoDados( fBancoDados, Type_Int,Type_Char,Type_VarChar,Type_Memo );
-end;
-
-destructor TUCUserSettings.Destroy;
-begin
- SysUtils.FreeAndNil(FAppMessagesMSG);
- SysUtils.FreeAndNil(FLoginFormMSG);
- SysUtils.FreeAndNil(FUserCommomMSG);
- SysUtils.FreeAndNil(FCadUserFormMSG);
- SysUtils.FreeAndNil(FAddUserFormMSG);
- SysUtils.FreeAndNil(FAddProfileFormMSG);
- SysUtils.FreeAndNil(FPermissFormMSG);
- SysUtils.FreeAndNil(FProfileUserFormMSG);
- SysUtils.FreeAndNil(FTrocaSenhaFormMSG);
- SysUtils.FreeAndNil(FResetPassword);
- SysUtils.FreeAndNil(FLogControlFormMSG);
- SysUtils.FreeAndNil(fUsersLogged);
- inherited;
-end;
-
-procedure TUCUserSettings.SetAppMessagesMSG(const Value: TUCAppMessagesMSG);
-begin
- FAppMessagesMSG := Value;
-end;
-
-procedure TUCUserSettings.SetFAddProfileFormMSG(const Value: TUCAddProfileFormMSG);
-begin
- FAddProfileFormMSG := Value;
-end;
-
-procedure TUCUserSettings.SetFAddUserFormMSG(const Value: TUCAddUserFormMSG);
-begin
- AddChangeUser := Value;
-end;
-
-procedure TUCUserSettings.SetfBancoDados(const Value: TUCTypeBancoDados);
-begin
- fBancoDados := Value;
- RetornaSqlBancoDados( fBancoDados , Type_Int,Type_Char,Type_VarChar,Type_Memo );
-end;
-
-procedure TUCUserSettings.SetFCadUserFormMSG(const Value: TUCCadUserFormMSG);
-begin
- UsersForm := Value;
-end;
-
-procedure TUCUserSettings.SetFFormLoginMsg(const Value: TUCLoginFormMSG);
-begin
- Login := Value;
-end;
-
-procedure TUCUserSettings.SetFLogControlFormMSG(const Value: TUCLogControlFormMSG);
-begin
- FLogControlFormMSG := Value;
-end;
-
-procedure TUCUserSettings.SetFPermissFormMSG(const Value: TUCPermissFormMSG);
-begin
- Rights := Value;
-end;
-
-procedure TUCUserSettings.SetFProfileUserFormMSG(const Value: TUCProfileUserFormMSG);
-begin
- FProfileUserFormMSG := Value;
-end;
-
-procedure TUCUserSettings.SetFResetPassword(const Value: TUCResetPassword);
-begin
- FResetPassword := Value;
-end;
-
-procedure TUCUserSettings.SetFTrocaSenhaFormMSG(const Value: TUCTrocaSenhaFormMSG);
-begin
- ChangePassword := Value;
-end;
-
-procedure TUCUserSettings.SetFUserCommonMsg(const Value: TUCUserCommonMSG);
-begin
- CommonMessages := Value;
-end;
-
-procedure TUCUserSettings.SetfUsersLogged(const Value: TUCCadUserLoggedMSG);
-begin
- fUsersLogged := Value;
-end;
-
-{ TUserCommonMSG }
-
-procedure TUCUserCommonMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCUserCommonMSG then
- begin
- Self.BlankPassword := TUCUserCommonMSG(Source).BlankPassword;
- Self.PasswordChanged := TUCUserCommonMSG(Source).PasswordChanged;
- Self.InitialMessage := TUCUserCommonMSG(Source).InitialMessage;
- Self.InvalidLogin := TUCUserCommonMSG(Source).InvalidLogin;
- Self.InactiveLogin := TUCUserCommonMSG(Source).InactiveLogin;
- Self.MaxLoginAttemptsError := TUCUserCommonMSG(Source).MaxLoginAttemptsError;
- Self.ChangePasswordError := TUCUserCommonMSG(Source).ChangePasswordError;
- Self.UsuarioExiste := TUCUserCommonMSG(Source).UsuarioExiste;
- Self.PasswordExpired := TUCUserCommonMSG(Source).PasswordExpired;
- Self.ForcaTrocaSenha := TUCUserCommonMSG(Source).ForcaTrocaSenha;
- end
- else
- inherited;
-end;
-
-constructor TUCUserCommonMSG.Create(Aowner: TComponent);
-begin
- inherited Create;
- ChangePasswordError := TUCChangePassError.Create(nil);
- FFirstMSG := TStringList.Create;
-end;
-
-destructor TUCUserCommonMSG.Destroy;
-begin
- SysUtils.FreeAndNil(FChangePasswordError);
- SysUtils.FreeAndNil(FFirstMSG);
- inherited;
-end;
-
-procedure TUCUserCommonMSG.SetFErroTrocaSenha(const Value: TUCChangePassError);
-begin
- FChangePasswordError := Value;
-end;
-
-procedure TUCUserCommonMSG.SetFFirstMSG(const Value: TStrings);
-begin
- FFirstMSG.Assign(Value);
-end;
-
-{ TLoginFormMSG }
-
-procedure TUCLoginFormMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCLoginFormMSG then
- with Source as TUCLoginFormMSG do
- begin
- Self.WindowCaption := WindowCaption;
- Self.LabelUser := LabelUser;
- Self.LabelPassword := LabelPassword;
- Self.BtOk := BtOK;
- Self.BtCancel := BtCancel;
- end
- else
- inherited;
-end;
-
-constructor TUCLoginFormMSG.Create(AOwner: TComponent);
-begin
- inherited Create;
- FTopImage := TPicture.Create;
- FLeftImage := TPicture.Create;
- FBottomImage := TPicture.Create;
-end;
-
-destructor TUCLoginFormMSG.Destroy;
-begin
- SysUtils.FreeAndNil(FTopImage);
- SysUtils.FreeAndNil(FLeftImage);
- SysUtils.FreeAndNil(FBottomImage);
- inherited;
-end;
-
-procedure TUCLoginFormMSG.SetFBottomImage(const Value: TPicture);
-begin
- FBottomImage.Assign(Value);
-end;
-
-procedure TUCLoginFormMSG.SetFLeftImage(const Value: TPicture);
-begin
- FLeftImage.Assign(Value);
-end;
-
-procedure TUCLoginFormMSG.SetFTopImage(const Value: TPicture);
-begin
- FTopImage.Assign(Value);
-end;
-
-{ TCadUserFormMSG }
-
-procedure TUCCadUserFormMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCCadUserFormMSG then
- with Source as TUCCadUserFormMSG do
- begin
- Self.WindowCaption := WindowCaption;
- Self.LabelDescription := LabelDescription;
- Self.ColName := ColName;
- Self.ColLogin := ColLogin;
- Self.ColEmail := ColEmail;
- Self.BtAdd := BtAdd;
- Self.BtChange := BtChange;
- Self.BtDelete := BtDelete;
- Self.BtRights := BtRights;
- Self.BtPassword := BtPassword;
- Self.BtClose := BtClose;
- Self.PromptDelete := PromptDelete;
- Self.PromptDelete_WindowCaption := PromptDelete_WindowCaption; //added by fduenas
- end
- else
- inherited;
-end;
-
-constructor TUCCadUserFormMSG.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCCadUserFormMSG.Destroy;
-begin
- inherited;
-end;
-
-{ TAddUserFormMSG }
-
-procedure TUCAddUserFormMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCAddUserFormMSG then
- with Source as TUCAddUserFormMSG do
- begin
- Self.WindowCaption := WindowCaption;
- Self.LabelAdd := LabelAdd;
- Self.LabelChange := LabelChange;
- Self.LabelName := LabelName;
- Self.LabelLogin := LabelLogin;
- Self.LabelEmail := LabelEmail;
- Self.LabelPerfil := LabelPerfil;
- Self.CheckPrivileged := CheckPrivileged;
- Self.BtSave := BtSave;
- Self.BtCancel := BtCancel;
- Self.CheckExpira := CheckExpira;
- Self.Day := Day;
- Self.ExpiredIn := ExpiredIn;
- Self.LabelStatus := LabelStatus;
- Self.StatusDisabled := StatusDisabled;
- Self.StatusActive := StatusActive;
- end
- else
- inherited;
-end;
-
-constructor TUCAddUserFormMSG.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCAddUserFormMSG.Destroy;
-begin
- inherited;
-end;
-
-{ TPermissFormMSG }
-
-procedure TUCPermissFormMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCPermissFormMSG then
- with Source as TUCPermissFormMSG do
- begin
- Self.WindowCaption := WindowCaption;
- Self.LabelUser := LabelUser;
- Self.LabelProfile := LabelProfile;
- Self.PageMenu := PageMenu;
- Self.PageActions := PageActions;
- Self.BtUnlock := BtUnlock;
- Self.BtLock := BtLock;
- Self.BtSave := BtSave;
- Self.BtCancel := BtCancel;
- Self.PageControls := PageControls;
- end
- else
- inherited;
-end;
-
-constructor TUCPermissFormMSG.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCPermissFormMSG.Destroy;
-begin
- inherited;
-end;
-
-{ TTrocaSenhaFormMSG }
-
-procedure TUCTrocaSenhaFormMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCTrocaSenhaFormMSG then
- with Source as TUCTrocaSenhaFormMSG do
- begin
- Self.WindowCaption := WindowCaption;
- Self.LabelDescription := LabelDescription;
- Self.LabelCurrentPassword := LabelCurrentPassword;
- Self.LabelNewPassword := LabelNewPassword;
- Self.LabelConfirm := LabelConfirm;
- Self.BtSave := BtSave;
- Self.BtCancel := BtCancel;
- end
- else
- inherited;
-end;
-
-constructor TUCTrocaSenhaFormMSG.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCTrocaSenhaFormMSG.Destroy;
-begin
- inherited;
-end;
-
-{ TChangePassError }
-
-procedure TUCChangePassError.Assign(Source: TPersistent);
-begin
- if Source is TUCChangePassError then
- with Source as TUCChangePassError do
- begin
- Self.InvalidCurrentPassword := InvalidCurrentPassword;
- Self.NewPasswordError := NewPasswordError;
- Self.NewEqualCurrent := NewEqualCurrent;
- Self.PasswordRequired := PasswordRequired;
- Self.MinPasswordLength := MinPasswordLength;
- end
- else
- inherited;
-end;
-
-constructor TUCChangePassError.Create(Aowner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCChangePassError.Destroy;
-begin
- inherited;
-end;
-
-{ TResetPassword }
-
-procedure TUCResetPassword.Assign(Source: TPersistent);
-begin
- if Source is TUCResetPassword then
- begin
- Self.WindowCaption := TUCResetPassword(Source).WindowCaption;
- Self.LabelPassword := TUCResetPassword(Source).LabelPassword;
- end
- else
- inherited;
-end;
-
-constructor TUCResetPassword.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCResetPassword.Destroy;
-begin
- inherited;
-end;
-
-{ TProfileUserFormMSG }
-
-procedure TUCProfileUserFormMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCProfileUserFormMSG then
- with Source as TUCProfileUserFormMSG do
- begin
- Self.WindowCaption := WindowCaption;
- Self.LabelDescription := LabelDescription;
- Self.ColProfile := ColProfile;
- Self.BtAdd := BtAdd;
- Self.BtChange := BtChange;
- Self.BtDelete := BtDelete;
- Self.BtRights := BtRights; //BGM
- Self.BtClose := BtClose;
- Self.PromptDelete := PromptDelete;
- Self.PromptDelete_WindowCaption := PromptDelete_WindowCaption; //added by fduenas
- end
- else
- inherited;
-end;
-
-constructor TUCProfileUserFormMSG.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCProfileUserFormMSG.Destroy;
-begin
- inherited;
-end;
-
-{ TAddProfileFormMSG }
-
-procedure TUCAddProfileFormMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCAddProfileFormMSG then
- with Source as TUCAddProfileFormMSG do
- begin
- Self.WindowCaption := WindowCaption;
- Self.LabelAdd := LabelAdd;
- Self.LabelChange := LabelChange;
- Self.LabelName := LabelName;
- Self.BtSave := BtSave;
- Self.BtCancel := BtCancel;
- end
- else
- inherited;
-end;
-
-constructor TUCAddProfileFormMSG.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCAddProfileFormMSG.Destroy;
-begin
- inherited;
-end;
-
-{ TLogControlFormMSG }
-
-procedure TUCLogControlFormMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCLogControlFormMSG then
- with Source as TUCLogControlFormMSG do
- begin
- Self.WindowCaption := WindowCaption;
- Self.LabelDescription := LabelDescription;
- Self.LabelUser := LabelUser;
- Self.LabelDate := LabelDate;
- Self.LabelLevel := LabelLevel;
- Self.ColLevel := ColLevel;
- Self.ColAppID := ColAppID;
- Self.ColMessage := ColMessage;
- Self.ColUser := ColUser;
- Self.ColDate := ColDate;
- Self.BtFilter := BtFilter;
- Self.BtDelete := BtDelete;
- Self.BtClose := BtClose;
- Self.PromptDelete := PromptDelete;
- Self.PromptDelete_WindowCaption := PromptDelete_WindowCaption; //added by fduenas
- Self.OptionUserAll := OptionUserAll; //added by fduenas
- Self.OptionLevelLow := OptionLevelLow; //added by fduenas
- Self.OptionLevelNormal := OptionLevelNormal; //added by fduenas
- Self.OptionLevelHigh := OptionLevelHigh; //added by fduenas
- Self.OptionLevelCritic := OptionLevelCritic; //added by fduenas
- Self.DeletePerformed := DeletePerformed; //added by fduenas
- end
- else
- inherited;
-end;
-
-constructor TUCLogControlFormMSG.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCLogControlFormMSG.Destroy;
-begin
- inherited;
-end;
-
-{ TAppMessagesMSG }
-
-procedure TUCAppMessagesMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCAppMessagesMSG then
- with Source as TUCAppMessagesMSG do
- begin
- Self.MsgsForm_BtNew := MsgsForm_BtNew;
- Self.MsgsForm_BtReplay := MsgsForm_BtReplay;
- Self.MsgsForm_BtForward := MsgsForm_BtForward;
- Self.MsgsForm_BtDelete := MsgsForm_BtDelete;
- Self.MsgsForm_WindowCaption := MsgsForm_WindowCaption;
- Self.MsgsForm_ColFrom := MsgsForm_ColFrom;
- Self.MsgsForm_ColSubject := MsgsForm_ColSubject;
- Self.MsgsForm_ColDate := MsgsForm_ColDate;
- Self.MsgsForm_PromptDelete := MsgsForm_PromptDelete;
- Self.MsgsForm_PromptDelete_WindowCaption := MsgsForm_PromptDelete_WindowCaption; //added by fduenas
- Self.MsgsForm_BtClose := MsgsForm_BtClose; //added by fduenas
- Self.MsgsForm_NoMessagesSelected := MsgsForm_NoMessagesSelected; //added by fduenas
- Self.MsgsForm_NoMessagesSelected_WindowCaption := MsgsForm_NoMessagesSelected_WindowCaption; //added by fduenas
-
- Self.MsgRec_BtClose := MsgRec_BtClose;
- Self.MsgRec_WindowCaption := MsgRec_WindowCaption;
- Self.MsgRec_Title := MsgRec_Title;
- Self.MsgRec_LabelFrom := MsgRec_LabelFrom;
- Self.MsgRec_LabelDate := MsgRec_LabelDate;
- Self.MsgRec_LabelSubject := MsgRec_LabelSubject;
- Self.MsgRec_LabelMessage := MsgRec_LabelMessage;
-
- Self.MsgSend_BtSend := MsgSend_BtSend;
- Self.MsgSend_BtCancel := MsgSend_BtCancel;
- Self.MsgSend_WindowCaption := MsgSend_WindowCaption;
- Self.MsgSend_Title := MsgSend_Title;
- Self.MsgSend_GroupTo := MsgSend_GroupTo;
- Self.MsgSend_RadioUser := MsgSend_RadioUser;
- Self.MsgSend_RadioAll := MsgSend_RadioAll;
- Self.MsgSend_GroupMessage := MsgSend_GroupMessage;
- Self.MsgSend_LabelSubject := MsgSend_LabelSubject;
- Self.MsgSend_LabelMessageText := MsgSend_LabelMessageText;
- end
- else
- inherited;
-end;
-
-constructor TUCAppMessagesMSG.Create(Aowner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCAppMessagesMSG.Destroy;
-begin
- inherited;
-end;
-
-{ TUCHistoryMSG }
-
-{ TUCFieldType }
- {
-procedure TUCFieldType.Assign(Source: TPersistent);
-begin
- if Source is TUCFieldType then
- Begin
- Self.Type_VarChar := TUCFieldType(Source).Type_VarChar;
- Self.Type_Char := TUCFieldType(Source).Type_Char;
- Self.Type_Int := TUCFieldType(Source).Type_Int;
- end
- else
- inherited;
-end;
-
-constructor TUCFieldType.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCFieldType.Destroy;
-begin
-
- inherited;
-end; }
-
-{ TUCCadUserLoggedMSG }
-
-procedure TUCCadUserLoggedMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCCadUserLoggedMSG then
- Begin
- BtnMessage := TUCCadUserLoggedMSG(Source).BtnMessage;
- BtnRefresh := TUCCadUserLoggedMSG(Source).BtnRefresh;
- BtnClose := TUCCadUserLoggedMSG(Source).BtnClose;
- LabelDescricao := TUCCadUserLoggedMSG(Source).LabelDescricao;
- LabelCaption := TUCCadUserLoggedMSG(Source).LabelCaption;
- ColName := TUCCadUserLoggedMSG(Source).ColName;
- ColLogin := TUCCadUserLoggedMSG(Source).ColLogin;
- ColComputer := TUCCadUserLoggedMSG(Source).ColComputer;
- ColData := TUCCadUserLoggedMSG(Source).ColData;
- InputCaption := TUCCadUserLoggedMSG(Source).InputCaption;
- InputText := TUCCadUserLoggedMSG(Source).InputText;
- MsgSystem := TUCCadUserLoggedMSG(Source).MsgSystem
- End
- else
- inherited;
-end;
-
-constructor TUCCadUserLoggedMSG.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCCadUserLoggedMSG.Destroy;
-begin
- inherited;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/UCObjSel_U.dfm b/internal/2.31RC1/1/Source/UCObjSel_U.dfm
deleted file mode 100644
index 4da08b2..0000000
Binary files a/internal/2.31RC1/1/Source/UCObjSel_U.dfm and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/UCObjSel_U.pas b/internal/2.31RC1/1/Source/UCObjSel_U.pas
deleted file mode 100644
index eff55e1..0000000
--- a/internal/2.31RC1/1/Source/UCObjSel_U.pas
+++ /dev/null
@@ -1,334 +0,0 @@
-unit UCObjSel_U;
-
-interface
-
-uses
- {$IFDEF VER130}
- {$ELSE}
- Variants,
- {$ENDIF}
- ActnList,
- Buttons,
- Classes,
- ComCtrls,
- Controls,
- DB,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Menus,
- Messages,
- StdCtrls,
- SysUtils,
- UCBase,
- UcConsts_Language,
- Windows;
-
-type
- TQControl = class(TControl)
- published
- property Caption;
- end;
-
- TUCObjSel = class(TForm)
- ListaCompsDisponiveis: TListView;
- ListaCompsSelecionados: TListView;
- Panel1: TPanel;
- lbForm: TLabel;
- Image1: TImage;
- lbTitle: TLabel;
- lbCompDisp: TLabel;
- lbCompSel: TLabel;
- btsellall: TSpeedButton;
- btsel: TSpeedButton;
- btunsel: TSpeedButton;
- btunselall: TSpeedButton;
- BtOK: TBitBtn;
- btCancel: TBitBtn;
- lbGrupo: TLabel;
- lbGroup: TLabel;
- cbFilter: TComboBox;
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
- procedure FormShow(Sender: TObject);
- procedure btsellallClick(Sender: TObject);
- procedure btunselallClick(Sender: TObject);
- procedure btselClick(Sender: TObject);
- procedure btunselClick(Sender: TObject);
- procedure ListaCompsDisponiveisDblClick(Sender: TObject);
- procedure ListaCompsSelecionadosDblClick(Sender: TObject);
- procedure btCancelClick(Sender: TObject);
- procedure BtOKClick(Sender: TObject);
- procedure FormActivate(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure cbFilterClick(Sender: TObject);
- procedure cbFilterKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
- private
- FListaBotoes: TStringList;
- FListaLabelsEdits: TStringList;
- procedure MakeDispItems;
- public
- FForm: TCustomForm;
- FUserControl: TUserControl;
- FInitialObjs: TStringList;
- end;
-
-implementation
-
-{$R *.dfm}
-
-procedure TUCObjSel.FormClose(Sender: TObject; var Action: TCloseAction);
-begin
- Action := caFree;
-end;
-
-procedure TUCObjSel.FormShow(Sender: TObject);
-begin
- lbForm.Left := lbTitle.Left + lbTitle.Width + 10; //added by fduenas to adjust window name
- lbgroup.Left := lbGrupo.Left + lbGrupo.Width + 10; //added by fduenas to adjust window name
- lbForm.Caption := FForm.Name;
- FInitialObjs.Text := UpperCase(FInitialObjs.Text);
- ListaCompsSelecionados.Items.Clear;
- MakeDispItems;
-end;
-
-procedure TUCObjSel.MakeDispItems;
-var
- Componente: TComponent;
- Classe: String;
- Contador: Integer;
-begin
-{
-All 0
-Buttons 1
-Fields 2
-Edits 3
-Labels 4
-MenuItems 5
-Actions 6
-}
- ListaCompsDisponiveis.Items.Clear;
- for Contador := 0 to Pred(FForm.ComponentCount) do
- begin
- Componente := FForm.Components[Contador];
- Classe := UpperCase(Componente.ClassName);
- if (Componente is TControl) or (Componente is TMenuItem) or (Componente is TField) or (Componente is TAction) then
- if (cbFilter.ItemIndex <= 0) or
- ((cbFilter.ItemIndex = 1) and (Componente is TButtonControl){(FListaBotoes.IndexOf(Classe) > -1)}) or
- ((cbFilter.ItemIndex = 2) and (Componente is TField)) or
- ((cbFilter.ItemIndex = 3) and (Componente is TCustomEdit){(FListaLabelsEdits.IndexOf(Classe) > -1)}) or
- ((cbFilter.ItemIndex = 4) and (Componente is TCustomLabel)) or
- ((cbFilter.ItemIndex = 5) and (Componente is TMenuItem)) or
- ((cbFilter.ItemIndex = 6) and (Componente is TCustomAction)) then
- if FInitialObjs.IndexOf(UpperCase(Componente.Name)) = -1 then
- with ListaCompsDisponiveis.Items.Add do
- begin
- Caption := Componente.ClassName;
- SubItems.Add(Componente.Name);
- if Componente is TMenuItem then
- SubItems.Add(StringReplace(TMenuItem(Componente).Caption, '&', '', [rfReplaceAll]))
- else
- if Componente is TAction then
- SubItems.Add(StringReplace(TAction(Componente).Caption, '&', '', [rfReplaceAll]))
- else
- if Componente is TField then
- SubItems.Add(TField(Componente).DisplayName)
- else
- SubItems.Add(StringReplace(TQControl(FForm.Components[Contador]).Caption, '&', '', [rfReplaceAll]));
- end;
- end;
-end;
-
-procedure TUCObjSel.btsellallClick(Sender: TObject);
-var
- Contador: Integer;
-begin
- for Contador := 0 to Pred(ListaCompsDisponiveis.Items.Count) do
- begin
- FInitialObjs.Add(ListaCompsDisponiveis.Items[Contador].SubItems[0]);
- with ListaCompsSelecionados.Items.Add do
- begin
- Caption := ListaCompsDisponiveis.Items[Contador].SubItems[1];
- SubItems.Add(ListaCompsDisponiveis.Items[Contador].SubItems[0]);
- SubItems.Add(ListaCompsDisponiveis.Items[Contador].Caption);
- end;
- end;
- ListaCompsDisponiveis.Items.Clear;
-end;
-
-procedure TUCObjSel.btunselallClick(Sender: TObject);
-begin
- ListaCompsSelecionados.Items.Clear;
- FInitialObjs.Clear;
- MakeDispItems;
-end;
-
-procedure TUCObjSel.btselClick(Sender: TObject);
-var
- Contador: Integer;
-begin
- for Contador := 0 to ListaCompsDisponiveis.Items.Count - 1 do
- if ListaCompsDisponiveis.Items.Item[Contador].Selected then
- begin
- FInitialObjs.Add(ListaCompsDisponiveis.Items[Contador].SubItems[0]);
- with ListaCompsSelecionados.Items.Add do
- begin
- Caption := ListaCompsDisponiveis.Items[Contador].SubItems[1];
- SubItems.Add(ListaCompsDisponiveis.Items[Contador].SubItems[0]);
- SubItems.Add(ListaCompsDisponiveis.Items[Contador].Caption);
- end;
- end;
-
- Contador := 0;
- while Contador <= Pred(ListaCompsDisponiveis.Items.Count) do
- if ListaCompsDisponiveis.Items[Contador].Selected then
- ListaCompsDisponiveis.Items[Contador].Delete
- else
- Inc(Contador);
-end;
-
-procedure TUCObjSel.btunselClick(Sender: TObject);
-var
- Contador: Integer;
- Obj: TComponent;
-begin
- if ListaCompsSelecionados.SelCount = 0 then
- Exit;
- for Contador := 0 to Pred(ListaCompsSelecionados.Items.Count) do
- if ListaCompsSelecionados.Items.Item[Contador].Selected then
- begin
- if FInitialObjs.IndexOf(ListaCompsSelecionados.Items[Contador].SubItems[0]) > -1 then
- FInitialObjs.Delete(FInitialObjs.IndexOf(ListaCompsSelecionados.Items[Contador].SubItems[0]));
-
- if ListaCompsSelecionados.Items[Contador].SubItems.Count > 1 then
- with ListaCompsDisponiveis.Items.Add do
- begin
- if ListaCompsSelecionados.Items[Contador].SubItems.Count > 1 then
- Caption := ListaCompsSelecionados.Items[Contador].SubItems[1];
- SubItems.Add(ListaCompsSelecionados.Items[Contador].SubItems[0]);
-
- Obj := FForm.FindComponent(ListaCompsSelecionados.Items[Contador].SubItems[0]);
- if Obj is TMenuItem then
- SubItems.Add(TMenuItem(Obj).Caption)
- else
- if Obj is TAction then
- SubItems.Add(TMenuItem(Obj).Caption)
- else
- if Obj is TField then
- SubItems.Add(TField(Obj).DisplayName)
- else
- SubItems.Add(TQControl(Obj).Caption);
- end;
- end;
-
- Contador := 0;
- while Contador <= Pred(ListaCompsSelecionados.Items.Count) do
- if ListaCompsSelecionados.Items[Contador].Selected then
- ListaCompsSelecionados.Items[Contador].Delete
- else
- Inc(Contador);
-end;
-
-procedure TUCObjSel.ListaCompsDisponiveisDblClick(Sender: TObject);
-begin
- btsel.Click;
-end;
-
-procedure TUCObjSel.ListaCompsSelecionadosDblClick(Sender: TObject);
-begin
- if ListaCompsSelecionados.Items.Count = 0 then
- Exit;
- if ListaCompsSelecionados.SelCount = 1 then
- ListaCompsSelecionados.Selected.EditCaption;
-end;
-
-procedure TUCObjSel.btCancelClick(Sender: TObject);
-begin
- Close;
-end;
-
-procedure TUCObjSel.BtOKClick(Sender: TObject);
-var
- Contador: Integer;
-begin
- if FUserControl.ExtraRights.Count > 0 then
- begin
- Contador := 0;
- while Contador <= Pred(FUserControl.ExtraRights.Count) do
- if UpperCase(FUserControl.ExtraRights[Contador].FormName) = UpperCase(FForm.Name) then
- FUserControl.ExtraRights.Delete(Contador)
- else
- Inc(Contador);
- end;
-
- for Contador := 0 to Pred(ListaCompsSelecionados.Items.Count) do
- with FUserControl.ExtraRights.Add do
- begin
- Caption := ListaCompsSelecionados.Items[Contador].Caption;
- CompName := ListaCompsSelecionados.Items[Contador].SubItems[0];
- FormName := FForm.Name;
- GroupName := lbGroup.Caption;
- end;
- Close;
-end;
-
-procedure TUCObjSel.FormActivate(Sender: TObject);
-var
- Contador: Integer;
-begin
- for Contador := 0 to Pred(FUserControl.ExtraRights.Count) do
- if UpperCase(FUserControl.ExtraRights[Contador].FormName) = UpperCase(FForm.Name) then
- if FForm.FindComponent(FUserControl.ExtraRights[Contador].CompName) <> nil then
- with ListaCompsSelecionados.Items.Add do
- begin
- Caption := FUserControl.ExtraRights[Contador].Caption;
- SubItems.Add(FUserControl.ExtraRights[Contador].CompName);
- if FForm.FindComponent(FUserControl.ExtraRights[Contador].CompName) <> nil then
- SubItems.Add(FForm.FindComponent(FUserControl.ExtraRights[Contador].CompName).ClassName);
- end;
-
- lbTitle.Caption := RetornaLingua( FUserControl.Language,'Const_Contr_TitleLabel');
- lbGrupo.Caption := RetornaLingua( FUserControl.Language,'Const_Contr_GroupLabel');
- lbCompDisp.Caption := RetornaLingua( FUserControl.Language,'Const_Contr_CompDispLabel');
- lbCompSel.Caption := RetornaLingua( FUserControl.Language,'Const_Contr_CompSelLabel');
- ListaCompsSelecionados.Columns[0].Caption := RetornaLingua( FUserControl.Language,'Const_Contr_DescCol');
- btCancel.Caption := RetornaLingua( FUserControl.Language,'Const_Contr_BTCancel');
- BtOK.Caption := RetornaLingua( FUserControl.Language,'Const_Contr_BtOK');
-
- //Lines Bellow added by fduenas
- btSellAll.Hint := RetornaLingua( FUserControl.Language,'Const_Contr_BtSellAllHint');
- btSel.Hint := RetornaLingua( FUserControl.Language,'Const_Contr_BtSelHint');
- btUnSel.Hint := RetornaLingua( FUserControl.Language,'Const_Contr_BtUnSelHint');
- btUnSelAll.Hint := RetornaLingua( FUserControl.Language,'Const_Contr_BtUnSelAllHint');
-
- lbForm.Left := lbTitle.Width + 66;
-end;
-
-procedure TUCObjSel.FormCreate(Sender: TObject);
-begin
- cbFilter.ItemIndex := 0;
- FListaBotoes := TStringList.Create;
- FListaBotoes.CommaText := 'TButton,TSpeedButton,TBitBtn,TRxSpeedButton,' +
- 'TRxSpinButton,TRxSwitch,TLMDButton,TLMDMMButton,TLMDShapeButton,' +
- 'TLMD3DEffectButton,TLMDWndButtonShape,TJvHTButton,TJvBitBtn,TJvImgBtn,' +
- 'TJvArrowButton,TJvTransparenftButton,TJvTransparentButton2,TJvSpeedButton';
- FListaBotoes.Text := UpperCase(FListaBotoes.Text);
- FListaLabelsEdits := TStringList.Create;
- FListaLabelsEdits.CommaText := 'TEdit,TLabel,TStaticText,TLabeledEdit,' +
- 'TRxLabel,TComboEdit,TFileNamefEdit,TDirectoryEdit,TDateEdit,' +
- 'TDateTimePicker,TRxCalcEdit,TCurrencyEdit,TRxSpinEdit';
- FListaLabelsEdits.Text := UpperCase(FListaLabelsEdits.Text);
-end;
-
-procedure TUCObjSel.cbFilterClick(Sender: TObject);
-begin
- MakeDispItems;
-end;
-
-procedure TUCObjSel.cbFilterKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
-begin
- MakeDispItems;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/UCReg.dcr b/internal/2.31RC1/1/Source/UCReg.dcr
deleted file mode 100644
index 137f24a..0000000
Binary files a/internal/2.31RC1/1/Source/UCReg.dcr and /dev/null differ
diff --git a/internal/2.31RC1/1/Source/UCReg.pas b/internal/2.31RC1/1/Source/UCReg.pas
deleted file mode 100644
index c156ceb..0000000
--- a/internal/2.31RC1/1/Source/UCReg.pas
+++ /dev/null
@@ -1,348 +0,0 @@
-unit UCReg;
-
-interface
-
-{.$I 'UserControl.inc'}
-
-uses
- Classes,
- Controls,
- DesignEditors,
- DesignIntf,
- ToolsAPI,
- TypInfo,
- UCBase;
-
-type
- TUCComponentsVarProperty = class(TStringProperty)
- function GetAttributes: TPropertyAttributes; override;
- procedure Edit; override;
- function GetValue: String; override;
- end;
-
-
- TUCControlsEditor = class(TComponentEditor)
- procedure Edit; override;
- procedure ExecuteVerb(Index: Integer); override;
- function GetVerb(Index: Integer): String; override;
- function GetVerbCount: Integer; override;
- end;
-
- TUserControlEditor = class(TComponentEditor)
- procedure Edit; override;
- procedure ExecuteVerb(Index: Integer); override;
- function GetVerb(Index: Integer): String; override;
- function GetVerbCount: Integer; override;
- end;
-
- TUCAboutVarProperty = class(TStringProperty)
- function GetAttributes: TPropertyAttributes; override;
- procedure Edit; override;
- function GetValue: String; override;
- end;
-
-procedure Register;
-procedure ShowControlsEditor(Componente: TUCControls);
-procedure ShowUserControlsEditor(Componente: TUserControl);
-
-implementation
-
-uses
- Dialogs,
- Forms,
- SysUtils,
- UCAbout,
- UCIdle,
- UCObjSel_U,
- UCEditorForm_U,
- ActnList,
- ActnMan,
- ActnMenus,
- Menus,
- StdCtrls,
- UCSettings,
- Variants,
- UcMail;
-
-procedure Register;
-begin
- RegisterComponents('UC Main',
- [TUserControl,
- TUCSettings,
- TUCControls,
- TUCApplicationMessage,
- TUCIdle,
- TMailUserControl
- ]);
-
- RegisterPropertyEditor(TypeInfo(TUCAboutVar), TUserControl, 'About', TUCAboutVarProperty);
- RegisterPropertyEditor(TypeInfo(TUCComponentsVar), TUserControl, 'Components', TUCComponentsVarProperty);
- RegisterComponentEditor(TUCcontrols, TUCControlsEditor);
- RegisterComponentEditor(TUserControl, TUserControlEditor);
-end;
-
-{ TUCComponentsVarProperty }
-procedure TUCComponentsVarProperty.Edit;
-begin
- ShowControlsEditor(TUCControls(GetComponent(0)));
-end;
-
-function TUCComponentsVarProperty.GetAttributes: TPropertyAttributes;
-begin
- Result := [paDialog, paReadOnly];
-end;
-
-function TUCComponentsVarProperty.GetValue: String;
-begin
- Result := 'Components...';
-end;
-
-{ TUCAboutVarProperty }
-
-procedure TUCAboutVarProperty.Edit;
-begin
- with TAboutForm.Create(nil) do
- begin
- ShowModal;
- Free;
- end;
-end;
-
-function TUCAboutVarProperty.GetAttributes: TPropertyAttributes;
-begin
- Result := [paDialog, paReadOnly];
-end;
-
-function TUCAboutVarProperty.GetValue: String;
-begin
- Result := 'Versao ' + UCVersion;
-end;
-
-procedure ShowUserControlsEditor(Componente: TUserControl);
-var
- Editor: IOTAEditor;
- Modulo: IOTAModule;
- FormEditor: IOTAFormEditor;
- I: Integer;
- Formulario: TUCEditorForm;
- UserControl: TUserControl;
- Controle_Action ,
- Controle_MainMenu ,
- Controle_ActionManager,
- Controle_ActionMainMenuBar : String;
- UserActionMenuItem: String;
- UserProfileActionMenuItem: String;
- LogControlActionMeuItem: String;
- UserPasswordChangeActionMenuItem: String;
- FormularioDono: TForm;
-begin
- UserControl := Componente;
- FormularioDono := TForm(UserControl.Owner);
- try
- Formulario := TUCEditorForm.Create(nil, UserControl);
-
- if Formulario.ShowModal = mrOk then
- begin
- with UserControl do
- begin
- ApplicationID := Formulario.edtApplicationID.Text;
- AutoStart := Formulario.ckAutoStart.Checked;
- CheckValidationKey := Formulario.ckValidationKey.Checked;
- EncryptKey := Formulario.spedtEncryptKey.Value;
- TableRights.TableName := Formulario.edtTableRights.Text;
- TableUsers.TableName := Formulario.edtTableUsers.Text;
- NotAllowedItems.ActionVisible := Formulario.ckActionVisible.Checked;
- NotAllowedItems.MenuVisible := Formulario.ckMenuVisible.Checked;
- Criptografia := TUCCriptografia(Formulario.cbCriptografia.ItemIndex);
- LoginMode := TUCLoginMode(Formulario.cbLoginMode.ItemIndex);
-
- if Formulario.cbActionList.ItemIndex >= 0 then
- Controle_action := Formulario.cbActionList.Text;
-
- if Formulario.cbActionMainMenuBar.ItemIndex >= 0 then
- Controle_ActionMainMenuBar := Formulario.cbActionMainMenuBar.Text;
-
- if Formulario.cbActionManager.ItemIndex >= 0 then
- Controle_ActionManager := Formulario.cbActionManager.Text;
-
- if Formulario.cbMainMenu.ItemIndex >= 0 then
- Controle_MainMenu := Formulario.cbMainMenu.Text;
-
- if Formulario.cbUserAction.ItemIndex >= 0 then
- UserActionMenuItem := Formulario.cbUserAction.Text;
-
- if Formulario.cbUserMenuItem.ItemIndex >= 0 then
- UserActionMenuItem := Formulario.cbUserMenuItem.Text;
-
- if Formulario.cbUserProfileAction.ItemIndex >= 0 then
- UserProfileActionMenuItem := Formulario.cbUserProfileAction.Text;
- if Formulario.cbUserProfileMenuItem.ItemIndex >= 0 then
- UserProfileActionMenuItem := Formulario.cbUserProfileMenuItem.Text;
-
- if Formulario.cbLogControlAction.ItemIndex >= 0 then
- LogControlActionMeuItem := Formulario.cbLogControlAction.Text;
- if Formulario.cbLogControlMenuItem.ItemIndex >= 0 then
- LogControlActionMeuItem := Formulario.cbLogControlMenuItem.Text;
-
- if Formulario.cbUserPasswordChangeAction.ItemIndex >= 0 then
- UserPasswordChangeActionMenuItem := Formulario.cbUserPasswordChangeAction.Text;
- if Formulario.cbUserPasswordChangeMenuItem.ItemIndex >= 0 then
- UserPasswordChangeActionMenuItem := Formulario.cbUserPasswordChangeMenuItem.Text;
-
-
- for I := 0 to FormularioDono.ComponentCount - 1 do
- begin
- if (FormularioDono.Components[I].Name = Controle_Action) and (Formulario.cbActionList.ItemIndex >= 0) then
- ControlRight.ActionList := TActionList(FormularioDono.Components[I]);
-
- if (FormularioDono.Components[I].Name = Controle_ActionMainMenuBar ) and (Formulario.cbActionMainMenuBar.ItemIndex >= 0) then
- ControlRight.ActionMainMenuBar := TActionMainMenuBar(UserControl.Owner.Components[I]);
-
- if (FormularioDono.Components[I].Name = Controle_ActionManager) and (Formulario.cbActionManager.ItemIndex >= 0) then
- ControlRight.ActionManager := TActionManager(FormularioDono.Components[I]);
-
- if (FormularioDono.Components[I].Name = Controle_MainMenu) and (Formulario.cbMainMenu.ItemIndex >= 0) then
- ControlRight.MainMenu := TMainMenu(FormularioDono.Components[I]);
-
- if (FormularioDono.Components[I].Name = UserActionMenuItem) and (Formulario.cbUserAction.ItemIndex >= 0) then
- User.Action := TAction(FormularioDono.Components[I]);
- if (FormularioDono.Components[I].Name = UserActionMenuItem) and (Formulario.cbUserMenuItem.ItemIndex >= 0) then
- User.MenuItem := TMenuItem(FormularioDono.Components[I]);
- if (FormularioDono.Components[I].Name = UserPasswordChangeActionMenuItem) and (Formulario.cbUserPasswordChangeAction.ItemIndex >= 0) then
- UserPasswordChange.Action := TAction(FormularioDono.Components[I]);
- if (FormularioDono.Components[I].Name = UserPasswordChangeActionMenuItem) and (Formulario.cbUserPasswordChangeMenuItem.ItemIndex >= 0) then
- UserPasswordChange.MenuItem := TMenuItem(FormularioDono.Components[I]);
- end;
-
- User.UsePrivilegedField := Formulario.ckUserUsePrivilegedField.Checked;
- User.ProtectAdministrator := Formulario.ckUserProtectAdministrator.Checked;
- UserProfile.Active := Formulario.ckUserProfileActive.Checked;
- UserPasswordChange.ForcePassword := Formulario.ckUserPassowrdChangeForcePassword.Checked;
- UserPasswordChange.MinPasswordLength := Formulario.spedtUserPasswordChangeMinPasswordLength.Value;
-
- LogControl.TableLog := Formulario.edtLogControlTableLog.Text;
- LogControl.Active := Formulario.ckLogControlActive.Checked;
-
- Login.MaxLoginAttempts := Formulario.spedtMaxLoginAttempts.Value;
- Login.GetLoginName := TUCGetLoginName(Formulario.cbGetLoginName.ItemIndex);
- Login.InitialLogin.User := Formulario.edtInitialLoginUser.Text;
- Login.InitialLogin.Password := Formulario.edtInitialLoginPassword.Text;
- Login.InitialLogin.Email := Formulario.edtInitialLoginEmail.Text;
- Login.InitialLogin.InitialRights := Formulario.mmInitialRights.Lines;
- Login.AutoLogin.Active := Formulario.ckLoginAutologinActive.Checked;
- Login.AutoLogin.User := Formulario.edtLoginAutoLoginUser.Text;
- Login.AutoLogin.Password := Formulario.edtLoginAutoLoginPassword.Text;
- Login.AutoLogin.MessageOnError := Formulario.ckLoginAutoLoginMessageOnError.Checked;
- UserSettings.Login.TopImage := Formulario.imgTop.Picture;
- UserSettings.Login.LeftImage := Formulario.imgLeft.Picture;
- UserSettings.Login.BottomImage := Formulario.imgBottom.Picture;
- end;
-
- Modulo := (BorlandIDEServices as IOTAModuleServices).CurrentModule;
- for I := 0 to Modulo.GetModuleFileCount - 1 do
- begin
- Editor := Modulo.GetModuleFileEditor(I);
- Editor.QueryInterface(IOTAFormEditor, FormEditor);
- if FormEditor <> nil then
- begin
- FormEditor.MarkModified;
- Break;
- end;
- end;
- end;
- finally
- SysUtils.FreeAndNil(Formulario);
- end;
-end;
-
-procedure ShowControlsEditor(Componente: TUCControls);
-var
- FUCControl: TUCControls;
- FEditor: IOTAEditor;
- FModulo: IOTAModule;
- FFormEditor: IOTAFormEditor;
- I: Integer;
-begin
- FUCControl := Componente;
- if not Assigned(FUCControl.UserControl) then
- begin
- MessageDlg('A propriedade UserControl tem que ser informada e o componente ' + #13 + #10 + 'tem que estar visível!', mtInformation, [mbOK], 0);
- Exit;
- end;
-
- with TUCObjSel.Create(nil) do
- begin
- FForm := TCustomForm(FUCControl.Owner);
- FUserControl := FUCControl.UserControl;
- FInitialObjs := TStringList.Create;
- TUCControls(Componente).ListComponents(FForm.Name, FInitialObjs);
- lbGroup.Caption := TUCControls(Componente).GroupName;
- ShowModal;
- Free;
- end;
-
- FModulo := (BorlandIDEServices as IOTAModuleServices).FindFormModule(FUCControl.UserControl.Owner.Name);
- if FModulo = nil then
- begin
- ShowMessage('Modulo ' + FUCControl.UserControl.Owner.Name + ' não encontrado!');
- Exit;
- end
- else
- for I := 0 to FModulo.GetModuleFileCount - 1 do
- begin
- FEditor := FModulo.GetModuleFileEditor(I);
- FEditor.QueryInterface(IOTAFormEditor, FFormEditor);
- if FFormEditor <> nil then
- begin
- FFormEditor.MarkModified;
- Break;
- end;
- end;
-end;
-
-{TUCControlsEditor}
-
-procedure TUCControlsEditor.Edit;
-begin
- ShowControlsEditor(TUCControls(Component));
-end;
-
-procedure TUCControlsEditor.ExecuteVerb(Index: Integer);
-begin
- Edit;
-end;
-
-function TUCControlsEditor.GetVerb(Index: Integer): String;
-begin
- Result := '&Selecionar Componentes...';
-end;
-
-function TUCControlsEditor.GetVerbCount: Integer;
-begin
- Result := 1;
-end;
-
-{ TUserControlEditor }
-
-procedure TUserControlEditor.Edit;
-begin
- ShowUserControlsEditor(TUserControl(Component));
-end;
-
-procedure TUserControlEditor.ExecuteVerb(Index: Integer);
-begin
- Edit;
-end;
-
-function TUserControlEditor.GetVerb(Index: Integer): String;
-begin
- Result := 'Configurar...';
-end;
-
-function TUserControlEditor.GetVerbCount: Integer;
-begin
- Result := 1;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/UCSettings.pas b/internal/2.31RC1/1/Source/UCSettings.pas
deleted file mode 100644
index bb9e447..0000000
--- a/internal/2.31RC1/1/Source/UCSettings.pas
+++ /dev/null
@@ -1,1425 +0,0 @@
-unit UCSettings;
-
-interface
-
-uses
- Classes,
- Forms,
- UCMessages,
- UcConsts_Language;
-
-type
- TUCSettings = class(TComponent)
- private
- FAddProfileFormMSG: TUCAddProfileFormMSG;
- FAddUserFormMSG: TUCAddUserFormMSG;
- FCadUserFormMSG: TUCCadUserFormMSG;
- FLogControlFormMSG: TUCLogControlFormMSG;
- FLoginFormMSG: TUCLoginFormMSG;
- FPermissFormMSG: TUCPermissFormMSG;
- FProfileUserFormMSG: TUCProfileUserFormMSG;
- FResetPassword: TUCResetPassword;
- FTrocaSenhaFormMSG: TUCTrocaSenhaFormMSG;
- FUserCommomMSG: TUCUserCommonMSG;
- FAppMessagesMSG: TUCAppMessagesMSG;
- FPosition: TPosition;
- fLanguage: TUCLanguage;
- fUsersLogged: TUCCadUserLoggedMSG;
- fBancoDados: TUCTypeBancoDados;
- procedure SetFAddProfileFormMSG(const Value: TUCAddProfileFormMSG);
- procedure SetFAddUserFormMSG(const Value: TUCAddUserFormMSG);
- procedure SetFCadUserFormMSG(const Value: TUCCadUserFormMSG);
- procedure SetFFormLoginMsg(const Value: TUCLoginFormMSG);
- procedure SetFLogControlFormMSG(const Value: TUCLogControlFormMSG);
- procedure SetFPermissFormMSG(const Value: TUCPermissFormMSG);
- procedure SetFProfileUserFormMSG(const Value: TUCProfileUserFormMSG);
- procedure SetFResetPassword(const Value: TUCResetPassword);
- procedure SetFTrocaSenhaFormMSG(const Value: TUCTrocaSenhaFormMSG);
- procedure SetFUserCommonMSg(const Value: TUCUserCommonMSG);
- procedure SetAppMessagesMSG(const Value: TUCAppMessagesMSG);
- procedure SetfLanguage(const Value: TUCLanguage);
- procedure SetfUsersLogged(const Value: TUCCadUserLoggedMSG);
- procedure SetfBancoDados(const Value: TUCTypeBancoDados);
- protected
- public
- Type_Int ,
- Type_Char ,
- Type_VarChar ,
- Type_Memo : String;
- constructor Create(AOwner: TComponent); override;
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property AppMessages: TUCAppMessagesMSG read FAppMessagesMSG write SetAppMessagesMSG;
- property CommonMessages: TUCUserCommonMSG read FUserCommomMSG write SetFUserCommonMSg;
- property Login: TUCLoginFormMSG read FLoginFormMSG write SetFFormLoginMsg;
- property Log: TUCLogControlFormMSG read FLogControlFormMSG write SetFLogControlFormMSG;
- property UsersForm: TUCCadUserFormMSG read FCadUserFormMSG write SetFCadUserFormMSG;
- property AddChangeUser: TUCAddUserFormMSG read FAddUserFormMSG write SetFAddUserFormMSG;
- property AddChangeProfile: TUCAddProfileFormMSG read FAddProfileFormMSG write SetFAddProfileFormMSG;
- property UsersProfile: TUCProfileUserFormMSG read FProfileUserFormMSG write SetFProfileUserFormMSG;
- property Rights: TUCPermissFormMSG read FPermissFormMSG write SetFPermissFormMSG;
- property ChangePassword: TUCTrocaSenhaFormMSG read FTrocaSenhaFormMSG write SetFTrocaSenhaFormMSG;
- property ResetPassword: TUCResetPassword read FResetPassword write SetFResetPassword;
- Property BancoDados : TUCTypeBancoDados read fBancoDados write SetfBancoDados;
- property WindowsPosition: TPosition read FPosition write FPosition default poMainFormCenter;
- Property Language : TUCLanguage read fLanguage write SetfLanguage;
- property UsersLogged : TUCCadUserLoggedMSG read fUsersLogged write SetfUsersLogged;
- end;
-
-procedure IniSettings (DestSettings: TUCUserSettings);
-procedure IniSettings2(DestSettings: TUCSettings);
-
-procedure AlterLanguage(DestSettings: TUCUserSettings);
-procedure AlterLanguage2(DestSettings: TUCSettings);
-
-procedure RetornaSqlBancoDados( fBanco : TUCTypeBancoDados ; var Int, Char, VarChar,
- Memo: String);
-
-implementation
-
-uses
- Graphics,
- SysUtils,
- UCBase;
-// UCConsts;
-
-{$IFDEF DELPHI9_UP} {$REGION 'Inicializacao'} {$ENDIF}
-
-procedure RetornaSqlBancoDados( fBanco : TUCTypeBancoDados ; var Int, Char, VarChar,
- Memo: String);
-begin
- Int := 'INT';
- Char := 'CHAR';
- VarChar := 'VARCHAR';
-
- Case fBanco of
- Firebird : Memo := 'BLOB SUB_TYPE 1 SEGMENT SIZE 1024';
- Interbase : Memo := 'BLOB SUB_TYPE 1 SEGMENT SIZE 1024';
- MySql : Memo := 'MEDIUMBLOB';
- PARADOX : Memo := 'BLOB(1024,1)';
- Oracle : Memo := 'LONG RAW';
- SqlServer : Memo := 'NTEXT';
- PostgreSQL : Memo := 'TEXT';
- End;
-end;
-
-procedure IniSettings(DestSettings: TUCUserSettings);
-var
- tmp: TBitmap;
-begin
- with DestSettings.CommonMessages do
- begin
- if BlankPassword = '' then
- BlankPassword := RetornaLingua( ucPortuguesBr ,'Const_Men_SenhaDesabitada');
- if PasswordChanged = '' then
- PasswordChanged := RetornaLingua( ucPortuguesBr ,'Const_Men_SenhaAlterada');
- if InitialMessage.Text = '' then
- InitialMessage.Text := RetornaLingua( ucPortuguesBr ,'Const_Men_MsgInicial');
- if MaxLoginAttemptsError = '' then
- MaxLoginAttemptsError := RetornaLingua( ucPortuguesBr ,'Const_Men_MaxTentativas');
- if InvalidLogin = '' then
- InvalidLogin := RetornaLingua( ucPortuguesBr ,'Const_Men_LoginInvalido');
- if InactiveLogin = '' then
- InactiveLogin := RetornaLingua( ucPortuguesBr ,'Const_Men_LoginInativo');
-
- if AutoLogonError = '' then
- AutoLogonError := RetornaLingua( ucPortuguesBr ,'Const_Men_AutoLogonError');
- if UsuarioExiste = '' then
- UsuarioExiste := RetornaLingua( ucPortuguesBr ,'Const_Men_UsuarioExiste');
- if PasswordExpired = '' then
- PasswordExpired := RetornaLingua( ucPortuguesBr ,'Const_Men_PasswordExpired');
- If ForcaTrocaSenha = '' then
- ForcaTrocaSenha := RetornaLingua( ucPortuguesBr ,'Const_ErrPass_ForcaTrocaSenha');
- end;
-
- with DestSettings.Login do
- begin
- if BtCancel = '' then
- BtCancel := RetornaLingua( ucPortuguesBr ,'Const_Log_BtCancelar');
- if BtOK = '' then
- BtOK := RetornaLingua( ucPortuguesBr ,'Const_Log_BtOK');
- if LabelPassword = '' then
- LabelPassword := RetornaLingua( ucPortuguesBr ,'Const_Log_LabelSenha');
- if LabelUser = '' then
- LabelUser := RetornaLingua( ucPortuguesBr ,'Const_Log_LabelUsuario');
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_Log_WindowCaption');
-
- if LabelTentativa = '' then
- LabelTentativa := RetornaLingua( ucPortuguesBr ,'Const_Log_LabelTentativa');
- if LabelTentativas = '' then
- LabelTentativas := RetornaLingua( ucPortuguesBr ,'Const_Log_LabelTentativas');
-
-
- try
- Tmp := TBitmap.Create;
- Tmp.LoadFromResourceName(HInstance, 'UCLOCKLOGIN');
- LeftImage.Assign(tmp);
- finally
- FreeAndNil(tmp);
- end;
- end;
-
- with DestSettings.UsersForm do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_Cad_WindowCaption');
- if LabelDescription = '' then
- LabelDescription := RetornaLingua( ucPortuguesBr ,'Const_Cad_LabelDescricao');
- if ColName = '' then
- ColName := RetornaLingua( ucPortuguesBr ,'Const_Cad_ColunaNome');
- if ColLogin = '' then
- ColLogin := RetornaLingua( ucPortuguesBr ,'Const_Cad_ColunaLogin');
- if ColEmail = '' then
- ColEmail := RetornaLingua( ucPortuguesBr ,'Const_Cad_ColunaEmail');
- if BtAdd = '' then
- BtAdd := RetornaLingua( ucPortuguesBr ,'Const_Cad_BtAdicionar');
- if BtChange = '' then
- BtChange := RetornaLingua( ucPortuguesBr ,'Const_Cad_BtAlterar');
- if BtDelete = '' then
- BtDelete := RetornaLingua( ucPortuguesBr ,'Const_Cad_BtExcluir');
- if BtRights = '' then
- BtRights := RetornaLingua( ucPortuguesBr ,'Const_Cad_BtPermissoes');
- if BtPassword = '' then
- BtPassword := RetornaLingua( ucPortuguesBr ,'Const_Cad_BtSenha');
- if BtClose = '' then
- BtClose := RetornaLingua( ucPortuguesBr ,'Const_Cad_BtFechar');
- if PromptDelete = '' then
- PromptDelete := RetornaLingua( ucPortuguesBr ,'Const_Cad_ConfirmaExcluir');
- if PromptDelete_WindowCaption = '' then
- PromptDelete_WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_Cad_ConfirmaDelete_WindowCaption'); //added by fduenas
- end;
-
- with DestSettings.UsersProfile do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_Prof_WindowCaption');
- if LabelDescription = '' then
- LabelDescription := RetornaLingua( ucPortuguesBr ,'Const_Prof_LabelDescricao');
- if ColProfile = '' then
- ColProfile := RetornaLingua( ucPortuguesBr ,'Const_Prof_ColunaNome');
- if BtAdd = '' then
- BtAdd := RetornaLingua( ucPortuguesBr ,' Const_Prof_BtAdicionar');
- if BtChange = '' then
- BtChange := RetornaLingua( ucPortuguesBr ,'Const_Prof_BtAlterar');
- if BtDelete = '' then
- BtDelete := RetornaLingua( ucPortuguesBr ,'Const_Prof_BtExcluir');
- if BtRights = '' then
- BtRights := RetornaLingua( ucPortuguesBr ,'Const_Prof_BtPermissoes');
- if BtClose = '' then
- BtClose := RetornaLingua( ucPortuguesBr ,'Const_Prof_BtFechar');
- if PromptDelete = '' then
- PromptDelete := RetornaLingua( ucPortuguesBr ,'Const_Prof_ConfirmaExcluir');
- if PromptDelete_WindowCaption = '' then
- PromptDelete_WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_Prof_ConfirmaDelete_WindowCaption'); //added by fduenas
- end;
-
- with DestSettings.AddChangeUser do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_Inc_WindowCaption');
- if LabelAdd = '' then
- LabelAdd := RetornaLingua( ucPortuguesBr ,'Const_Inc_LabelAdicionar');
- if LabelChange = '' then
- LabelChange := RetornaLingua( ucPortuguesBr ,'Const_Inc_LabelAlterar');
- if LabelName = '' then
- LabelName := RetornaLingua( ucPortuguesBr ,'Const_Inc_LabelNome');
- if LabelLogin = '' then
- LabelLogin := RetornaLingua( ucPortuguesBr ,'Const_Inc_LabelLogin');
- if LabelEmail = '' then
- LabelEmail := RetornaLingua( ucPortuguesBr ,'Const_Inc_LabelEmail');
- if LabelPerfil = '' then
- LabelPerfil := RetornaLingua( ucPortuguesBr ,'Const_Inc_LabelPerfil');
- if CheckPrivileged = '' then
- CheckPrivileged := RetornaLingua( ucPortuguesBr ,'Const_Inc_CheckPrivilegiado');
-
- if BtSave = '' then
- BtSave := RetornaLingua( ucPortuguesBr ,'Const_Inc_BtGravar');
- if BtCancel = '' then
- BtCancel := RetornaLingua( ucPortuguesBr ,'Const_Inc_BtCancelar');
-
- if CheckExpira = '' then
- CheckExpira := RetornaLingua( ucPortuguesBr ,'Const_Inc_CheckEspira');
- If Day = '' then
- Day := RetornaLingua( ucPortuguesBr ,'Const_Inc_Dia');
- If ExpiredIn = '' then
- ExpiredIn := RetornaLingua( ucPortuguesBr ,'Const_Inc_ExpiraEm');
-
- If LabelStatus = '' then
- LabelStatus := RetornaLingua( ucPortuguesBr ,'Const_Inc_LabelStatus');
-
- If StatusActive = '' then
- StatusActive := RetornaLingua( ucPortuguesBr ,'Const_Inc_StatusActive');
-
- If StatusDisabled = '' then
- StatusDisabled := RetornaLingua( ucPortuguesBr ,'Const_Inc_StatusDisabled');
- end;
-
- with DestSettings.AddChangeProfile do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_PInc_WindowCaption');
- if LabelAdd = '' then
- LabelAdd := RetornaLingua( ucPortuguesBr ,'Const_PInc_LabelAdicionar');
- if LabelChange = '' then
- LabelChange := RetornaLingua( ucPortuguesBr ,'Const_PInc_LabelAlterar');
- if LabelName = '' then
- LabelName := RetornaLingua( ucPortuguesBr ,'Const_PInc_LabelNome');
- if BtSave = '' then
- BtSave := RetornaLingua( ucPortuguesBr ,'Const_PInc_BtGravar');
- if BtCancel = '' then
- BtCancel := RetornaLingua( ucPortuguesBr ,'Const_PInc_BtCancelar');
- end;
-
- with DestSettings.Rights do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_Perm_WindowCaption');
- if LabelUser = '' then
- LabelUser := RetornaLingua( ucPortuguesBr ,'Const_Perm_LabelUsuario');
- if LabelProfile = '' then
- LabelProfile := RetornaLingua( ucPortuguesBr ,'Const_Perm_LabelPerfil');
- if PageMenu = '' then
- PageMenu := RetornaLingua( ucPortuguesBr ,'Const_Perm_PageMenu');
- if PageActions = '' then
- PageActions := RetornaLingua( ucPortuguesBr ,'Const_Perm_PageActions');
- If PageControls = '' then
- PageControls := RetornaLingua( ucPortuguesBr ,'Const_Perm_PageControls'); // by vicente barros leonel
- if BtUnlock = '' then
- BtUnlock := RetornaLingua( ucPortuguesBr ,'Const_Perm_BtLibera');
- if BtLock = '' then
- BtLock := RetornaLingua( ucPortuguesBr ,'Const_Perm_BtBloqueia');
- if BtSave = '' then
- BtSave := RetornaLingua( ucPortuguesBr ,'Const_Perm_BtGravar');
- if BtCancel = '' then
- BtCancel := RetornaLingua( ucPortuguesBr ,'Const_Perm_BtCancelar');
- end;
-
- with DestSettings.ChangePassword do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_Troc_WindowCaption');
- if LabelDescription = '' then
- LabelDescription := RetornaLingua( ucPortuguesBr ,'Const_Troc_LabelDescricao');
- if LabelCurrentPassword = '' then
- LabelCurrentPassword := RetornaLingua( ucPortuguesBr ,'Const_Troc_LabelSenhaAtual');
- if LabelNewPassword = '' then
- LabelNewPassword := RetornaLingua( ucPortuguesBr ,'Const_Troc_LabelNovaSenha');
- if LabelConfirm = '' then
- LabelConfirm := RetornaLingua( ucPortuguesBr ,'Const_Troc_LabelConfirma');
- if BtSave = '' then
- BtSave := RetornaLingua( ucPortuguesBr ,'Const_Troc_BtGravar');
- if BtCancel = '' then
- BtCancel := RetornaLingua( ucPortuguesBr ,'Const_Troc_BtCancelar');
- end;
-
- with DestSettings.CommonMessages.ChangePasswordError do
- begin
- if InvalidCurrentPassword = '' then
- InvalidCurrentPassword := RetornaLingua( ucPortuguesBr ,'Const_ErrPass_SenhaAtualInvalida');
- if NewPasswordError = '' then
- NewPasswordError := RetornaLingua( ucPortuguesBr ,'Const_ErrPass_ErroNovaSenha');
- if NewEqualCurrent = '' then
- NewEqualCurrent := RetornaLingua( ucPortuguesBr ,'Const_ErrPass_NovaIgualAtual');
- if PasswordRequired = '' then
- PasswordRequired := RetornaLingua( ucPortuguesBr ,'Const_ErrPass_SenhaObrigatoria');
- if MinPasswordLength = '' then
- MinPasswordLength := RetornaLingua( ucPortuguesBr ,'Const_ErrPass_SenhaMinima');
- if InvalidNewPassword = '' then
- InvalidNewPassword := RetornaLingua( ucPortuguesBr ,'Const_ErrPass_SenhaInvalida');
- end;
-
- with DestSettings.ResetPassword do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_DefPass_WindowCaption');
- if LabelPassword = '' then
- LabelPassword := RetornaLingua( ucPortuguesBr ,'Const_DefPass_LabelSenha');
- end;
-
- with DestSettings.Log do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_LogC_WindowCaption');
- if LabelDescription = '' then
- LabelDescription := RetornaLingua( ucPortuguesBr ,'Const_LogC_LabelDescricao');
- if LabelUser = '' then
- LabelUser := RetornaLingua( ucPortuguesBr ,'Const_LogC_LabelUsuario');
- if LabelDate = '' then
- LabelDate := RetornaLingua( ucPortuguesBr ,'Const_LogC_LabelData');
- if LabelLevel = '' then
- LabelLevel := RetornaLingua( ucPortuguesBr ,'Const_LogC_LabelNivel');
- if ColLevel = '' then
- ColLevel := RetornaLingua( ucPortuguesBr ,'Const_LogC_ColunaNivel');
- if ColAppID = '' then
- ColAppID := RetornaLingua( ucPortuguesBr ,'Const_LogC_ColunaAppID');
- if ColMessage = '' then
- ColMessage := RetornaLingua( ucPortuguesBr ,'Const_LogC_ColunaMensagem');
- if ColUser = '' then
- ColUser := RetornaLingua( ucPortuguesBr ,'Const_LogC_ColunaUsuario');
- if ColDate = '' then
- ColDate := RetornaLingua( ucPortuguesBr ,'Const_LogC_ColunaData');
- if BtFilter = '' then
- BtFilter := RetornaLingua( ucPortuguesBr ,'Const_LogC_BtFiltro');
- if BtDelete = '' then
- BtDelete := RetornaLingua( ucPortuguesBr ,'Const_LogC_BtExcluir');
- if BtClose = '' then
- BtClose := RetornaLingua( ucPortuguesBr ,'Const_LogC_BtFechar');
- if PromptDelete = '' then
- PromptDelete := RetornaLingua( ucPortuguesBr ,'Const_LogC_ConfirmaExcluir');
- if PromptDelete_WindowCaption = '' then
- PromptDelete_WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_LogC_ConfirmaDelete_WindowCaption'); //added by fduenas
- if OptionUserAll = '' then
- OptionUserAll := RetornaLingua( ucPortuguesBr ,'Const_LogC_Todos'); //added by fduenas
- if OptionLevelLow = '' then
- OptionLevelLow := RetornaLingua( ucPortuguesBr ,'Const_LogC_Low'); //added by fduenas
- if OptionLevelNormal = '' then
- OptionLevelNormal := RetornaLingua( ucPortuguesBr ,'Const_LogC_Normal'); //added by fduenas
- if OptionLevelHigh = '' then
- OptionLevelHigh := RetornaLingua( ucPortuguesBr ,'Const_LogC_High'); //added by fduenas
- if OptionLevelCritic = '' then
- OptionLevelCritic := RetornaLingua( ucPortuguesBr ,'Const_LogC_Critic'); //added by fduenas
- if DeletePerformed = '' then
- DeletePerformed := RetornaLingua( ucPortuguesBr ,'Const_LogC_ExcluirEfectuada'); //added by fduenas
- end;
-
- with DestSettings.AppMessages do
- begin
- if MsgsForm_BtNew = '' then
- MsgsForm_BtNew := RetornaLingua( ucPortuguesBr ,'Const_Msgs_BtNew');
- if MsgsForm_BtReplay = '' then
- MsgsForm_BtReplay := RetornaLingua( ucPortuguesBr ,'Const_Msgs_BtReplay');
- if MsgsForm_BtForward = '' then
- MsgsForm_BtForward := RetornaLingua( ucPortuguesBr ,'Const_Msgs_BtForward');
- if MsgsForm_BtDelete = '' then
- MsgsForm_BtDelete := RetornaLingua( ucPortuguesBr ,'Const_Msgs_BtDelete');
- if MsgsForm_BtClose = '' then
- MsgsForm_BtDelete := RetornaLingua( ucPortuguesBr ,'Const_Msgs_BtClose'); //added by fduenas
- if MsgsForm_WindowCaption = '' then
- MsgsForm_WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_Msgs_WindowCaption');
- if MsgsForm_ColFrom = '' then
- MsgsForm_ColFrom := RetornaLingua( ucPortuguesBr ,'Const_Msgs_ColFrom');
- if MsgsForm_ColSubject = '' then
- MsgsForm_ColSubject := RetornaLingua( ucPortuguesBr ,'Const_Msgs_ColSubject');
- if MsgsForm_ColDate = '' then
- MsgsForm_ColDate := RetornaLingua( ucPortuguesBr ,'Const_Msgs_ColDate');
- if MsgsForm_PromptDelete = '' then
- MsgsForm_PromptDelete := RetornaLingua( ucPortuguesBr ,'Const_Msgs_PromptDelete');
- if MsgsForm_PromptDelete_WindowCaption = '' then
- MsgsForm_PromptDelete_WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_Msgs_PromptDelete_WindowCaption');
- if MsgsForm_NoMessagesSelected = '' then
- MsgsForm_NoMessagesSelected := RetornaLingua( ucPortuguesBr ,'Const_Msgs_NoMessagesSelected');
- if MsgsForm_NoMessagesSelected_WindowCaption = '' then
- MsgsForm_NoMessagesSelected_WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_Msgs_NoMessagesSelected_WindowCaption');
- if MsgRec_BtClose = '' then
- MsgRec_BtClose := RetornaLingua( ucPortuguesBr ,'Const_MsgRec_BtClose');
- if MsgRec_WindowCaption = '' then
- MsgRec_WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_MsgRec_WindowCaption');
- if MsgRec_Title = '' then
- MsgRec_Title := RetornaLingua( ucPortuguesBr ,'Const_MsgRec_Title');
- if MsgRec_LabelFrom = '' then
- MsgRec_LabelFrom := RetornaLingua( ucPortuguesBr ,'Const_MsgRec_LabelFrom');
- if MsgRec_LabelDate = '' then
- MsgRec_LabelDate := RetornaLingua( ucPortuguesBr ,'Const_MsgRec_LabelDate');
- if MsgRec_LabelSubject = '' then
- MsgRec_LabelSubject := RetornaLingua( ucPortuguesBr ,'Const_MsgRec_LabelSubject');
- if MsgRec_LabelMessage = '' then
- MsgRec_LabelMessage := RetornaLingua( ucPortuguesBr ,'Const_MsgRec_LabelMessage');
- if MsgSend_BtSend = '' then
- MsgSend_BtSend := RetornaLingua( ucPortuguesBr ,'Const_MsgSend_BtSend');
- if MsgSend_BtCancel = '' then
- MsgSend_BtCancel := RetornaLingua( ucPortuguesBr ,'Const_MsgSend_BtCancel');
- if MsgSend_WindowCaption = '' then
- MsgSend_WindowCaption := RetornaLingua( ucPortuguesBr ,'Const_MsgSend_WindowCaption');
- if MsgSend_Title = '' then
- MsgSend_Title := RetornaLingua( ucPortuguesBr ,'Const_MsgSend_Title');
- if MsgSend_GroupTo = '' then
- MsgSend_GroupTo := RetornaLingua( ucPortuguesBr ,'Const_MsgSend_GroupTo');
- if MsgSend_RadioUser = '' then
- MsgSend_RadioUser := RetornaLingua( ucPortuguesBr ,'Const_MsgSend_RadioUser');
- if MsgSend_RadioAll = '' then
- MsgSend_RadioAll := RetornaLingua( ucPortuguesBr ,'Const_MsgSend_RadioAll');
- if MsgSend_GroupMessage = '' then
- MsgSend_GroupMessage := RetornaLingua( ucPortuguesBr ,'Const_MsgSend_GroupMessage');
- if MsgSend_LabelSubject = '' then
- MsgSend_LabelSubject := RetornaLingua( ucPortuguesBr ,'Const_MsgSend_LabelSubject'); //added by fduenas
- if MsgSend_LabelMessageText = '' then
- MsgSend_LabelMessageText := RetornaLingua( ucPortuguesBr ,'Const_MsgSend_LabelMessageText'); //added by fduenas
- end;
-
- DestSettings.WindowsPosition := poMainFormCenter;
- { mudar aqui
- With DestSettings.TypeFieldsDB do
- Begin
- If Type_VarChar = '' then
- Type_VarChar := 'VarChar';
- if Type_Char = '' then
- Type_Char := 'Char';
- if Type_Int = '' then
- Type_Int := 'Int';
- end; }
-
-
- with DestSettings.UsersLogged do
- Begin
- If BtnMessage = '' then
- BtnMessage := RetornaLingua( ucPortuguesBr ,'Const_UserLogged_BtnMsg' );
- if BtnRefresh = '' then
- BtnRefresh := RetornaLingua( ucPortuguesBr ,'Const_UserLogged_Refresh');
- if Btnclose = '' then
- BtnClose := RetornaLingua( ucPortuguesBr ,'Const_Msgs_BtClose');
- if LabelDescricao = '' then
- LabelDescricao := RetornaLingua( ucPortuguesBr ,'Const_UserLogged_LabelDescricao');
- if LabelCaption = '' then
- LabelCaption := RetornaLingua( ucPortuguesBr ,'Const_UserLogged_LabelCaption');
- if ColName = '' then
- ColName := RetornaLingua( ucPortuguesBr ,'Const_Cad_ColunaNome');
- if colLogin = '' then
- ColLogin := RetornaLingua( ucPortuguesBr ,'Const_Cad_ColunaLogin');
- if ColComputer = '' then
- ColComputer := RetornaLingua( ucPortuguesBr ,'Const_CadColuna_Computer');
- if ColData = '' then
- ColData := RetornaLingua( ucPortuguesBr ,'Const_CadColuna_Data');
- if InputCaption = '' then
- InputCaption := RetornaLingua( ucPortuguesBr ,'Const_UserLogged_InputCaption');
- If InputText = '' then
- InputText := RetornaLingua( ucPortuguesBr ,'Const_UserLogged_InputText');
- If MsgSystem = '' then
- MsgSystem := RetornaLingua( ucPortuguesBr ,'Const_UserLogged_MsgSystem');
- End;
-
-end;
-
-procedure IniSettings2(DestSettings: TUCSettings);
-var
- tmp: TBitmap;
-begin
- with DestSettings.CommonMessages do
- begin
- if BlankPassword = '' then
- BlankPassword := RetornaLingua( DestSettings.fLanguage , 'Const_Men_SenhaDesabitada');
- if PasswordChanged = '' then
- PasswordChanged := RetornaLingua( DestSettings.fLanguage , 'Const_Men_SenhaAlterada');
- if InitialMessage.Text = '' then
- InitialMessage.Text := RetornaLingua( DestSettings.fLanguage , 'Const_Men_MsgInicial');
- if MaxLoginAttemptsError = '' then
- MaxLoginAttemptsError := RetornaLingua( DestSettings.fLanguage , 'Const_Men_MaxTentativas');
- if InvalidLogin = '' then
- InvalidLogin := RetornaLingua( DestSettings.fLanguage , 'Const_Men_LoginInvalido');
- if InactiveLogin = '' then
- InactiveLogin := RetornaLingua( DestSettings.fLanguage ,'Const_Men_LoginInativo');
- if AutoLogonError = '' then
- AutoLogonError := RetornaLingua( DestSettings.fLanguage , 'Const_Men_AutoLogonError');
- if UsuarioExiste = '' then
- UsuarioExiste := RetornaLingua( DestSettings.fLanguage , 'Const_Men_UsuarioExiste');
- if PasswordExpired = '' then
- PasswordExpired := RetornaLingua( DestSettings.fLanguage , 'Const_Men_PasswordExpired');
- If ForcaTrocaSenha = '' then
- ForcaTrocaSenha := RetornaLingua( DestSettings.fLanguage , 'Const_ErrPass_ForcaTrocaSenha');
- end;
-
- with DestSettings.Login do
- begin
- if BtCancel = '' then
- BtCancel := RetornaLingua( DestSettings.fLanguage , 'Const_Log_BtCancelar');
- if BtOK = '' then
- BtOK := RetornaLingua( DestSettings.fLanguage , 'Const_Log_BtOK');
- if LabelPassword = '' then
- LabelPassword := RetornaLingua( DestSettings.fLanguage , 'Const_Log_LabelSenha');
- if LabelUser = '' then
- LabelUser := RetornaLingua( DestSettings.fLanguage , 'Const_Log_LabelUsuario');
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_Log_WindowCaption');
-
- if LabelTentativa = '' then
- LabelTentativa := RetornaLingua( DestSettings.fLanguage , 'Const_Log_LabelTentativa');
- if LabelTentativas = '' then
- LabelTentativas := RetornaLingua( DestSettings.fLanguage , 'Const_Log_LabelTentativas');
-
- try
- Tmp := TBitmap.Create;
- Tmp.LoadFromResourceName(HInstance, 'UCLOCKLOGIN');
- LeftImage.Assign(tmp);
- finally
- FreeAndNil(tmp);
- end;
- end;
-
- with DestSettings.UsersForm do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_WindowCaption');
- if LabelDescription = '' then
- LabelDescription := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_LabelDescricao');
- if ColName = '' then
- ColName := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_ColunaNome');
- if ColLogin = '' then
- ColLogin := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_ColunaLogin');
- if ColEmail = '' then
- ColEmail := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_ColunaEmail');
- if BtAdd = '' then
- BtAdd := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_BtAdicionar');
- if BtChange = '' then
- BtChange := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_BtAlterar');
- if BtDelete = '' then
- BtDelete := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_BtExcluir');
- if BtRights = '' then
- BtRights := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_BtPermissoes');
- if BtPassword = '' then
- BtPassword := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_BtSenha');
- if BtClose = '' then
- BtClose := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_BtFechar');
- if PromptDelete = '' then
- PromptDelete := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_ConfirmaExcluir');
- if PromptDelete_WindowCaption = '' then
- PromptDelete_WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_Cad_ConfirmaDelete_WindowCaption');
- end;
-
- with DestSettings.UsersProfile do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_Prof_WindowCaption');
- if LabelDescription = '' then
- LabelDescription := RetornaLingua( DestSettings.fLanguage , 'Const_Prof_LabelDescricao');
- if ColProfile = '' then
- ColProfile := RetornaLingua( DestSettings.fLanguage , 'Const_Prof_ColunaNome');
- if BtAdd = '' then
- BtAdd := RetornaLingua( DestSettings.Language,'Const_Prof_BtAdicionar');
- if BtChange = '' then
- BtChange := RetornaLingua( DestSettings.fLanguage , 'Const_Prof_BtAlterar');
- if BtDelete = '' then
- BtDelete := RetornaLingua( DestSettings.fLanguage , 'Const_Prof_BtExcluir');
- if BtRights = '' then
- BtRights := RetornaLingua( DestSettings.fLanguage , 'Const_Prof_BtPermissoes');
- if BtClose = '' then
- BtClose := RetornaLingua( DestSettings.fLanguage , 'Const_Prof_BtFechar');
- if PromptDelete = '' then
- PromptDelete := RetornaLingua( DestSettings.fLanguage , 'Const_Prof_ConfirmaExcluir');
- if PromptDelete_WindowCaption = '' then
- PromptDelete_WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_Prof_ConfirmaDelete_WindowCaption'); //added by fduenas
- end;
-
- with DestSettings.AddChangeUser do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_WindowCaption');
- if LabelAdd = '' then
- LabelAdd := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_LabelAdicionar');
- if LabelChange = '' then
- LabelChange := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_LabelAlterar');
- if LabelName = '' then
- LabelName := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_LabelNome');
- if LabelLogin = '' then
- LabelLogin := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_LabelLogin');
- if LabelEmail = '' then
- LabelEmail := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_LabelEmail');
- if CheckPrivileged = '' then
- CheckPrivileged := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_CheckPrivilegiado');
- if BtSave = '' then
- BtSave := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_BtGravar');
- if BtCancel = '' then
- BtCancel := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_BtCancelar');
- if LabelPerfil = '' then
- LabelPerfil := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_LabelPerfil');
-
- if CheckExpira = '' then
- CheckExpira := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_CheckEspira');
- If Day = '' then
- Day := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_Dia');
- If ExpiredIn = '' then
- ExpiredIn := RetornaLingua( DestSettings.fLanguage , 'Const_Inc_ExpiraEm');
- If LabelStatus = '' then
- LabelStatus := RetornaLingua( DestSettings.fLanguage ,'Const_Inc_LabelStatus');
- If StatusActive = '' then
- StatusActive := RetornaLingua( DestSettings.fLanguage ,'Const_Inc_StatusActive');
-
- If StatusDisabled = '' then
- StatusDisabled := RetornaLingua( DestSettings.fLanguage ,'Const_Inc_StatusDisabled');
-
- end;
-
- with DestSettings.AddChangeProfile do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_PInc_WindowCaption');
- if LabelAdd = '' then
- LabelAdd := RetornaLingua( DestSettings.fLanguage , 'Const_PInc_LabelAdicionar');
- if LabelChange = '' then
- LabelChange := RetornaLingua( DestSettings.fLanguage , 'Const_PInc_LabelAlterar');
- if LabelName = '' then
- LabelName := RetornaLingua( DestSettings.fLanguage , 'Const_PInc_LabelNome');
- if BtSave = '' then
- BtSave := RetornaLingua( DestSettings.fLanguage , 'Const_PInc_BtGravar');
- if BtCancel = '' then
- BtCancel := RetornaLingua( DestSettings.fLanguage , 'Const_PInc_BtCancelar');
- end;
-
- with DestSettings.Rights do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_Perm_WindowCaption');
- if LabelUser = '' then
- LabelUser := RetornaLingua( DestSettings.fLanguage , 'Const_Perm_LabelUsuario');
- if LabelProfile = '' then
- LabelProfile := RetornaLingua( DestSettings.fLanguage , 'Const_Perm_LabelPerfil');
- if PageMenu = '' then
- PageMenu := RetornaLingua( DestSettings.fLanguage , 'Const_Perm_PageMenu');
- if PageActions = '' then
- PageActions := RetornaLingua( DestSettings.fLanguage , 'Const_Perm_PageActions');
- If PageControls = '' then
- PageControls := RetornaLingua( DestSettings.fLanguage , 'Const_Perm_PageControls'); // by vicente barros leonel
- if BtUnlock = '' then
- BtUnlock := RetornaLingua( DestSettings.fLanguage , 'Const_Perm_BtLibera');
- if BtLock = '' then
- BtLock := RetornaLingua( DestSettings.fLanguage , 'Const_Perm_BtBloqueia');
- if BtSave = '' then
- BtSave := RetornaLingua( DestSettings.fLanguage , 'Const_Perm_BtGravar');
- if BtCancel = '' then
- BtCancel := RetornaLingua( DestSettings.fLanguage , 'Const_Perm_BtCancelar');
- end;
-
- with DestSettings.ChangePassword do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_Troc_WindowCaption');
- if LabelDescription = '' then
- LabelDescription := RetornaLingua( DestSettings.fLanguage , 'Const_Troc_LabelDescricao');
- if LabelCurrentPassword = '' then
- LabelCurrentPassword := RetornaLingua( DestSettings.fLanguage , 'Const_Troc_LabelSenhaAtual');
- if LabelNewPassword = '' then
- LabelNewPassword := RetornaLingua( DestSettings.fLanguage , 'Const_Troc_LabelNovaSenha');
- if LabelConfirm = '' then
- LabelConfirm := RetornaLingua( DestSettings.fLanguage , 'Const_Troc_LabelConfirma');
- if BtSave = '' then
- BtSave := RetornaLingua( DestSettings.fLanguage , 'Const_Troc_BtGravar');
- if BtCancel = '' then
- BtCancel := RetornaLingua( DestSettings.fLanguage , 'Const_Troc_BtCancelar');
- end;
-
- with DestSettings.CommonMessages.ChangePasswordError do
- begin
- if InvalidCurrentPassword = '' then
- InvalidCurrentPassword := RetornaLingua( DestSettings.fLanguage , 'Const_ErrPass_SenhaAtualInvalida');
- if NewPasswordError = '' then
- NewPasswordError := RetornaLingua( DestSettings.fLanguage , 'Const_ErrPass_ErroNovaSenha');
- if NewEqualCurrent = '' then
- NewEqualCurrent := RetornaLingua( DestSettings.fLanguage , 'Const_ErrPass_NovaIgualAtual');
- if PasswordRequired = '' then
- PasswordRequired := RetornaLingua( DestSettings.fLanguage , 'Const_ErrPass_SenhaObrigatoria');
- if MinPasswordLength = '' then
- MinPasswordLength := RetornaLingua( DestSettings.fLanguage , 'Const_ErrPass_SenhaMinima');
- if InvalidNewPassword = '' then
- InvalidNewPassword := RetornaLingua( DestSettings.fLanguage , 'Const_ErrPass_SenhaInvalida');
- end;
-
- with DestSettings.ResetPassword do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_DefPass_WindowCaption');
- if LabelPassword = '' then
- LabelPassword := RetornaLingua( DestSettings.fLanguage , 'Const_DefPass_LabelSenha');
- end;
-
- with DestSettings.Log do
- begin
- if WindowCaption = '' then
- WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_WindowCaption');
- if LabelDescription = '' then
- LabelDescription := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_LabelDescricao');
- if LabelUser = '' then
- LabelUser := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_LabelUsuario');
- if LabelDate = '' then
- LabelDate := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_LabelData');
- if LabelLevel = '' then
- LabelLevel := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_LabelNivel');
- if ColLevel = '' then
- ColLevel := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_ColunaNivel');
- if ColAppID = '' then
- ColAppID := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_ColunaAppID');
- if ColMessage = '' then
- ColMessage := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_ColunaMensagem');
- if ColUser = '' then
- ColUser := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_ColunaUsuario');
- if ColDate = '' then
- ColDate := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_ColunaData');
- if BtFilter = '' then
- BtFilter := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_BtFiltro');
- if BtDelete = '' then
- BtDelete := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_BtExcluir');
- if BtClose = '' then
- BtClose := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_BtFechar');
- if PromptDelete = '' then
- PromptDelete := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_ConfirmaExcluir');
- if PromptDelete_WindowCaption = '' then
- PromptDelete_WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_ConfirmaDelete_WindowCaption'); //added by fduenas
- if OptionUserAll = '' then
- OptionUserAll := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_Todos'); //added by fduenas
- if OptionLevelLow = '' then
- OptionLevelLow := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_Low'); //added by fduenas
- if OptionLevelNormal = '' then
- OptionLevelNormal := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_Normal'); //added by fduenas
- if OptionLevelHigh = '' then
- OptionLevelHigh := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_High'); //added by fduenas
- if OptionLevelCritic = '' then
- OptionLevelCritic := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_Critic'); //added by fduenas
- if DeletePerformed = '' then
- DeletePerformed := RetornaLingua( DestSettings.fLanguage , 'Const_LogC_ExcluirEfectuada'); //added by fduenas
- end;
-
- with DestSettings.AppMessages do
- begin
- if MsgsForm_BtNew = '' then
- MsgsForm_BtNew := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_BtNew');
- if MsgsForm_BtReplay = '' then
- MsgsForm_BtReplay := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_BtReplay');
- if MsgsForm_BtForward = '' then
- MsgsForm_BtForward := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_BtForward');
- if MsgsForm_BtDelete = '' then
- MsgsForm_BtDelete := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_BtDelete');
- if MsgsForm_BtClose = '' then
- MsgsForm_BtClose := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_BtClose'); //added by fduenas
- if MsgsForm_WindowCaption = '' then
- MsgsForm_WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_WindowCaption');
- if MsgsForm_ColFrom = '' then
- MsgsForm_ColFrom := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_ColFrom');
- if MsgsForm_ColSubject = '' then
- MsgsForm_ColSubject := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_ColSubject');
- if MsgsForm_ColDate = '' then
- MsgsForm_ColDate := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_ColDate');
- if MsgsForm_PromptDelete = '' then
- MsgsForm_PromptDelete := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_PromptDelete');
- if MsgsForm_PromptDelete_WindowCaption = '' then
- MsgsForm_PromptDelete_WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_PromptDelete_WindowCaption'); //added by fduenas
- if MsgsForm_NoMessagesSelected = '' then
- MsgsForm_NoMessagesSelected := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_NoMessagesSelected'); //added by fduenas
- if MsgsForm_NoMessagesSelected_WindowCaption = '' then
- MsgsForm_NoMessagesSelected_WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_Msgs_NoMessagesSelected_WindowCaption'); //added by fduenas
- if MsgRec_BtClose = '' then
- MsgRec_BtClose := RetornaLingua( DestSettings.fLanguage , 'Const_MsgRec_BtClose');
- if MsgRec_WindowCaption = '' then
- MsgRec_WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_MsgRec_WindowCaption');
- if MsgRec_Title = '' then
- MsgRec_Title := RetornaLingua( DestSettings.fLanguage , 'Const_MsgRec_Title');
- if MsgRec_LabelFrom = '' then
- MsgRec_LabelFrom := RetornaLingua( DestSettings.fLanguage , 'Const_MsgRec_LabelFrom');
- if MsgRec_LabelDate = '' then
- MsgRec_LabelDate := RetornaLingua( DestSettings.fLanguage , 'Const_MsgRec_LabelDate');
- if MsgRec_LabelSubject = '' then
- MsgRec_LabelSubject := RetornaLingua( DestSettings.fLanguage , 'Const_MsgRec_LabelSubject');
- if MsgRec_LabelMessage = '' then
- MsgRec_LabelMessage := RetornaLingua( DestSettings.fLanguage , 'Const_MsgRec_LabelMessage');
- if MsgSend_BtSend = '' then
- MsgSend_BtSend := RetornaLingua( DestSettings.fLanguage , 'Const_MsgSend_BtSend');
- if MsgSend_BtCancel = '' then
- MsgSend_BtCancel := RetornaLingua( DestSettings.fLanguage , 'Const_MsgSend_BtCancel');
- if MsgSend_WindowCaption = '' then
- MsgSend_WindowCaption := RetornaLingua( DestSettings.fLanguage , 'Const_MsgSend_WindowCaption');
- if MsgSend_Title = '' then
- MsgSend_Title := RetornaLingua( DestSettings.fLanguage , 'Const_MsgSend_Title');
- if MsgSend_GroupTo = '' then
- MsgSend_GroupTo := RetornaLingua( DestSettings.fLanguage , 'Const_MsgSend_GroupTo');
- if MsgSend_RadioUser = '' then
- MsgSend_RadioUser := RetornaLingua( DestSettings.fLanguage , 'Const_MsgSend_RadioUser');
- if MsgSend_RadioAll = '' then
- MsgSend_RadioAll := RetornaLingua( DestSettings.fLanguage , 'Const_MsgSend_RadioAll');
- if MsgSend_GroupMessage = '' then
- MsgSend_GroupMessage := RetornaLingua( DestSettings.fLanguage , 'Const_MsgSend_GroupMessage');
- if MsgSend_LabelSubject = '' then
- MsgSend_LabelSubject := RetornaLingua( DestSettings.fLanguage , 'Const_MsgSend_LabelSubject'); //added by fduenas
- if MsgSend_LabelMessageText = '' then
- MsgSend_LabelMessageText := RetornaLingua( DestSettings.fLanguage , 'Const_MsgSend_LabelMessageText'); //added by fduenas
- end;
-
- DestSettings.WindowsPosition := poMainFormCenter;
-
- { With DestSettings.TypeFieldsDB do
- Begin
- If Type_VarChar = '' then
- Type_VarChar := 'VarChar';
- if Type_Char = '' then
- Type_Char := 'Char';
- if Type_Int = '' then
- Type_Int := 'Int';
- end; mudar aqui }
-
- with DestSettings.UsersLogged do
- Begin
- If BtnMessage = '' then
- BtnMessage := RetornaLingua( DestSettings.fLanguage ,'Const_UserLogged_BtnMsg' );
- if BtnRefresh = '' then
- BtnRefresh := RetornaLingua( DestSettings.fLanguage ,'Const_UserLogged_Refresh');
- if Btnclose = '' then
- BtnClose := RetornaLingua( DestSettings.fLanguage ,'Const_Msgs_BtClose');
- if LabelDescricao = '' then
- LabelDescricao := RetornaLingua( DestSettings.fLanguage ,'Const_UserLogged_LabelDescricao');
- if LabelCaption = '' then
- LabelCaption := RetornaLingua( DestSettings.fLanguage ,'Const_UserLogged_LabelCaption');
- if ColName = '' then
- ColName := RetornaLingua( DestSettings.fLanguage ,'Const_Cad_ColunaNome');
- if colLogin = '' then
- ColLogin := RetornaLingua( DestSettings.fLanguage ,'Const_Cad_ColunaLogin');
- if ColComputer = '' then
- ColComputer := RetornaLingua( DestSettings.fLanguage ,'Const_CadColuna_Computer');
- if ColData = '' then
- ColData := RetornaLingua( DestSettings.fLanguage ,'Const_CadColuna_Data');
- if InputCaption = '' then
- InputCaption := RetornaLingua( DestSettings.fLanguage ,'Const_UserLogged_InputCaption');
- If InputText = '' then
- InputText := RetornaLingua( DestSettings.fLanguage ,'Const_UserLogged_InputText');
- If MsgSystem = '' then
- MsgSystem := RetornaLingua( DestSettings.fLanguage ,'Const_UserLogged_MsgSystem');
- End;
-end;
-
-{-------------------------------------------------------------------------------}
-
-procedure AlterLanguage(DestSettings: TUCUserSettings);
-begin
- with DestSettings.CommonMessages do
- begin
- BlankPassword := RetornaLingua( DestSettings.Language,'Const_Men_SenhaDesabitada');
- PasswordChanged := RetornaLingua( DestSettings.Language,'Const_Men_SenhaAlterada');
- InitialMessage.Text := RetornaLingua( DestSettings.Language,'Const_Men_MsgInicial');
- MaxLoginAttemptsError := RetornaLingua( DestSettings.Language,'Const_Men_MaxTentativas');
- InvalidLogin := RetornaLingua( DestSettings.Language,'Const_Men_LoginInvalido');
- InactiveLogin := RetornaLingua( DestSettings.Language ,'Const_Men_LoginInativo');
- AutoLogonError := RetornaLingua( DestSettings.Language,'Const_Men_AutoLogonError');
- UsuarioExiste := RetornaLingua( DestSettings.Language,'Const_Men_UsuarioExiste');
- PasswordExpired := RetornaLingua( DestSettings.Language,'Const_Men_PasswordExpired');
- end;
-
- with DestSettings.Login do
- begin
- BtCancel := RetornaLingua( DestSettings.Language,'Const_Log_BtCancelar');
- BtOK := RetornaLingua( DestSettings.Language,'Const_Log_BtOK');
- LabelPassword := RetornaLingua( DestSettings.Language,'Const_Log_LabelSenha');
- LabelUser := RetornaLingua( DestSettings.Language,'Const_Log_LabelUsuario');
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Log_WindowCaption');
- LabelTentativa := RetornaLingua( DestSettings.Language,'Const_Log_LabelTentativa');
- LabelTentativas := RetornaLingua( DestSettings.Language,'Const_Log_LabelTentativas');
- end;
-
- with DestSettings.UsersForm do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Cad_WindowCaption');
- LabelDescription := RetornaLingua( DestSettings.Language,'Const_Cad_LabelDescricao');
- ColName := RetornaLingua( DestSettings.Language,'Const_Cad_ColunaNome');
- ColLogin := RetornaLingua( DestSettings.Language,'Const_Cad_ColunaLogin');
- ColEmail := RetornaLingua( DestSettings.Language,'Const_Cad_ColunaEmail');
- BtAdd := RetornaLingua( DestSettings.Language,'Const_Cad_BtAdicionar');
- BtChange := RetornaLingua( DestSettings.Language,'Const_Cad_BtAlterar');
- BtDelete := RetornaLingua( DestSettings.Language,'Const_Cad_BtExcluir');
- BtRights := RetornaLingua( DestSettings.Language,'Const_Cad_BtPermissoes');
- BtPassword := RetornaLingua( DestSettings.Language,'Const_Cad_BtSenha');
- BtClose := RetornaLingua( DestSettings.Language,'Const_Cad_BtFechar');
- PromptDelete := RetornaLingua( DestSettings.Language,'Const_Cad_ConfirmaExcluir');
- PromptDelete_WindowCaption := RetornaLingua( DestSettings.Language,'Const_Cad_ConfirmaDelete_WindowCaption');
- end;
-
- with DestSettings.UsersProfile do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Prof_WindowCaption');
- LabelDescription := RetornaLingua( DestSettings.Language,'Const_Prof_LabelDescricao');
- ColProfile := RetornaLingua( DestSettings.Language,'Const_Prof_ColunaNome');
- BtAdd := RetornaLingua( DestSettings.Language,'Const_Prof_BtAdicionar');
- BtChange := RetornaLingua( DestSettings.Language,'Const_Prof_BtAlterar');
- BtDelete := RetornaLingua( DestSettings.Language,'Const_Prof_BtExcluir');
- BtRights := RetornaLingua( DestSettings.Language,'Const_Prof_BtPermissoes');
- BtClose := RetornaLingua( DestSettings.Language,'Const_Prof_BtFechar');
- PromptDelete := RetornaLingua( DestSettings.Language,'Const_Prof_ConfirmaExcluir');
- PromptDelete_WindowCaption := RetornaLingua( DestSettings.Language,'Const_Prof_ConfirmaDelete_WindowCaption');
- end;
-
- with DestSettings.AddChangeUser do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Inc_WindowCaption');
- LabelAdd := RetornaLingua( DestSettings.Language,'Const_Inc_LabelAdicionar');
- LabelChange := RetornaLingua( DestSettings.Language,'Const_Inc_LabelAlterar');
- LabelName := RetornaLingua( DestSettings.Language,'Const_Inc_LabelNome');
- LabelLogin := RetornaLingua( DestSettings.Language,'Const_Inc_LabelLogin');
- LabelEmail := RetornaLingua( DestSettings.Language,'Const_Inc_LabelEmail');
- CheckPrivileged := RetornaLingua( DestSettings.Language,'Const_Inc_CheckPrivilegiado');
- BtSave := RetornaLingua( DestSettings.Language,'Const_Inc_BtGravar');
- BtCancel := RetornaLingua( DestSettings.Language,'Const_Inc_BtCancelar');
- LabelPerfil := RetornaLingua( DestSettings.Language,'Const_Inc_LabelPerfil');
- CheckExpira := RetornaLingua( DestSettings.Language,'Const_Inc_CheckEspira');
- Day := RetornaLingua( DestSettings.Language,'Const_Inc_Dia');
- ExpiredIn := RetornaLingua( DestSettings.Language,'Const_Inc_ExpiraEm');
- LabelStatus := RetornaLingua( DestSettings.Language ,'Const_Inc_LabelStatus');
- StatusActive := RetornaLingua( DestSettings.Language ,'Const_Inc_StatusActive');
- StatusDisabled := RetornaLingua( DestSettings.Language ,'Const_Inc_StatusDisabled');
- end;
-
- with DestSettings.AddChangeProfile do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_PInc_WindowCaption');
- LabelAdd := RetornaLingua( DestSettings.Language,'Const_PInc_LabelAdicionar');
- LabelChange := RetornaLingua( DestSettings.Language,'Const_PInc_LabelAlterar');
- LabelName := RetornaLingua( DestSettings.Language,'Const_PInc_LabelNome');
- BtSave := RetornaLingua( DestSettings.Language,'Const_PInc_BtGravar');
- BtCancel := RetornaLingua( DestSettings.Language,'Const_PInc_BtCancelar');
- end;
-
- with DestSettings.Rights do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Perm_WindowCaption');
- LabelUser := RetornaLingua( DestSettings.Language,'Const_Perm_LabelUsuario');
- LabelProfile := RetornaLingua( DestSettings.Language,'Const_Perm_LabelPerfil');
- PageMenu := RetornaLingua( DestSettings.Language,'Const_Perm_PageMenu');
- PageActions := RetornaLingua( DestSettings.Language,'Const_Perm_PageActions');
- PageControls := RetornaLingua( DestSettings.Language,'Const_Perm_PageControls');
- BtUnlock := RetornaLingua( DestSettings.Language,'Const_Perm_BtLibera');
- BtLock := RetornaLingua( DestSettings.Language,'Const_Perm_BtBloqueia');
- BtSave := RetornaLingua( DestSettings.Language,'Const_Perm_BtGravar');
- BtCancel := RetornaLingua( DestSettings.Language,'Const_Perm_BtCancelar');
- end;
-
- with DestSettings.ChangePassword do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Troc_WindowCaption');
- LabelDescription := RetornaLingua( DestSettings.Language,'Const_Troc_LabelDescricao');
- LabelCurrentPassword := RetornaLingua( DestSettings.Language,'Const_Troc_LabelSenhaAtual');
- LabelNewPassword := RetornaLingua( DestSettings.Language,'Const_Troc_LabelNovaSenha');
- LabelConfirm := RetornaLingua( DestSettings.Language,'Const_Troc_LabelConfirma');
- BtSave := RetornaLingua( DestSettings.Language,'Const_Troc_BtGravar');
- BtCancel := RetornaLingua( DestSettings.Language,'Const_Troc_BtCancelar');
- end;
-
- with DestSettings.CommonMessages.ChangePasswordError do
- begin
- InvalidCurrentPassword := RetornaLingua( DestSettings.Language,'Const_ErrPass_SenhaAtualInvalida');
- NewPasswordError := RetornaLingua( DestSettings.Language,'Const_ErrPass_ErroNovaSenha');
- NewEqualCurrent := RetornaLingua( DestSettings.Language,'Const_ErrPass_NovaIgualAtual');
- PasswordRequired := RetornaLingua( DestSettings.Language,'Const_ErrPass_SenhaObrigatoria');
- MinPasswordLength := RetornaLingua( DestSettings.Language,'Const_ErrPass_SenhaMinima');
- InvalidNewPassword := RetornaLingua( DestSettings.Language,'Const_ErrPass_SenhaInvalida');
- end;
-
- with DestSettings.ResetPassword do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_DefPass_WindowCaption');
- LabelPassword := RetornaLingua( DestSettings.Language,'Const_DefPass_LabelSenha');
- end;
-
- with DestSettings.Log do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_LogC_WindowCaption');
- LabelDescription := RetornaLingua( DestSettings.Language,'Const_LogC_LabelDescricao');
- LabelUser := RetornaLingua( DestSettings.Language,'Const_LogC_LabelUsuario');
- LabelDate := RetornaLingua( DestSettings.Language,'Const_LogC_LabelData');
- LabelLevel := RetornaLingua( DestSettings.Language,'Const_LogC_LabelNivel');
- ColLevel := RetornaLingua( DestSettings.Language,'Const_LogC_ColunaNivel');
- ColAppID := RetornaLingua( DestSettings.Language,'Const_LogC_ColunaAppID');
- ColMessage := RetornaLingua( DestSettings.Language,'Const_LogC_ColunaMensagem');
- ColUser := RetornaLingua( DestSettings.Language,'Const_LogC_ColunaUsuario');
- ColDate := RetornaLingua( DestSettings.Language,'Const_LogC_ColunaData');
- BtFilter := RetornaLingua( DestSettings.Language,'Const_LogC_BtFiltro');
- BtDelete := RetornaLingua( DestSettings.Language,'Const_LogC_BtExcluir');
- BtClose := RetornaLingua( DestSettings.Language,'Const_LogC_BtFechar');
- PromptDelete := RetornaLingua( DestSettings.Language,'Const_LogC_ConfirmaExcluir');
- PromptDelete_WindowCaption := RetornaLingua( DestSettings.Language,'Const_LogC_ConfirmaDelete_WindowCaption');
- OptionUserAll := RetornaLingua( DestSettings.Language,'Const_LogC_Todos');
- OptionLevelLow := RetornaLingua( DestSettings.Language,'Const_LogC_Low');
- OptionLevelNormal := RetornaLingua( DestSettings.Language,'Const_LogC_Normal');
- OptionLevelHigh := RetornaLingua( DestSettings.Language,'Const_LogC_High');
- OptionLevelCritic := RetornaLingua( DestSettings.Language,'Const_LogC_Critic');
- DeletePerformed := RetornaLingua( DestSettings.Language,'Const_LogC_ExcluirEfectuada');
- end;
-
- with DestSettings.AppMessages do
- begin
- MsgsForm_BtNew := RetornaLingua( DestSettings.Language,'Const_Msgs_BtNew');
- MsgsForm_BtReplay := RetornaLingua( DestSettings.Language,'Const_Msgs_BtReplay');
- MsgsForm_BtForward := RetornaLingua( DestSettings.Language,'Const_Msgs_BtForward');
- MsgsForm_BtDelete := RetornaLingua( DestSettings.Language,'Const_Msgs_BtDelete');
- MsgsForm_BtClose := RetornaLingua( DestSettings.Language,'Const_Msgs_BtClose'); //added by fduenas
- MsgsForm_WindowCaption := RetornaLingua( DestSettings.Language,'Const_Msgs_WindowCaption');
- MsgsForm_ColFrom := RetornaLingua( DestSettings.Language,'Const_Msgs_ColFrom');
- MsgsForm_ColSubject := RetornaLingua( DestSettings.Language,'Const_Msgs_ColSubject');
- MsgsForm_ColDate := RetornaLingua( DestSettings.Language,'Const_Msgs_ColDate');
- MsgsForm_PromptDelete := RetornaLingua( DestSettings.Language,'Const_Msgs_PromptDelete');
- MsgsForm_PromptDelete_WindowCaption := RetornaLingua( DestSettings.Language,'Const_Msgs_PromptDelete_WindowCaption'); //added by fduenas
- MsgsForm_NoMessagesSelected := RetornaLingua( DestSettings.Language,'Const_Msgs_NoMessagesSelected'); //added by fduenas
- MsgsForm_NoMessagesSelected_WindowCaption := RetornaLingua( DestSettings.Language,'Const_Msgs_NoMessagesSelected_WindowCaption'); //added by fduenas
- MsgRec_BtClose := RetornaLingua( DestSettings.Language,'Const_MsgRec_BtClose');
- MsgRec_WindowCaption := RetornaLingua( DestSettings.Language,'Const_MsgRec_WindowCaption');
- MsgRec_Title := RetornaLingua( DestSettings.Language,'Const_MsgRec_Title');
- MsgRec_LabelFrom := RetornaLingua( DestSettings.Language,'Const_MsgRec_LabelFrom');
- MsgRec_LabelDate := RetornaLingua( DestSettings.Language,'Const_MsgRec_LabelDate');
- MsgRec_LabelSubject := RetornaLingua( DestSettings.Language,'Const_MsgRec_LabelSubject');
- MsgRec_LabelMessage := RetornaLingua( DestSettings.Language,'Const_MsgRec_LabelMessage');
- MsgSend_BtSend := RetornaLingua( DestSettings.Language,'Const_MsgSend_BtSend');
- MsgSend_BtCancel := RetornaLingua( DestSettings.Language,'Const_MsgSend_BtCancel');
- MsgSend_WindowCaption := RetornaLingua( DestSettings.Language,'Const_MsgSend_WindowCaption');
- MsgSend_Title := RetornaLingua( DestSettings.Language,'Const_MsgSend_Title');
- MsgSend_GroupTo := RetornaLingua( DestSettings.Language,'Const_MsgSend_GroupTo');
- MsgSend_RadioUser := RetornaLingua( DestSettings.Language,'Const_MsgSend_RadioUser');
- MsgSend_RadioAll := RetornaLingua( DestSettings.Language,'Const_MsgSend_RadioAll');
- MsgSend_GroupMessage := RetornaLingua( DestSettings.Language,'Const_MsgSend_GroupMessage');
- MsgSend_LabelSubject := RetornaLingua( DestSettings.Language,'Const_MsgSend_LabelSubject'); //added by fduenas
- MsgSend_LabelMessageText := RetornaLingua( DestSettings.Language,'Const_MsgSend_LabelMessageText'); //added by fduenas
- end;
-
- DestSettings.WindowsPosition := poMainFormCenter;
-
- with DestSettings.UsersLogged do
- Begin
- BtnMessage := RetornaLingua( DestSettings.Language ,'Const_UserLogged_BtnMsg' );
- BtnRefresh := RetornaLingua( DestSettings.Language ,'Const_UserLogged_Refresh');
- BtnClose := RetornaLingua( DestSettings.Language ,'Const_Msgs_BtClose');
- LabelDescricao := RetornaLingua( DestSettings.Language ,'Const_UserLogged_LabelDescricao');
- LabelCaption := RetornaLingua( DestSettings.Language ,'Const_UserLogged_LabelCaption');
- ColName := RetornaLingua( DestSettings.Language ,'Const_Cad_ColunaNome');
- ColLogin := RetornaLingua( DestSettings.Language ,'Const_Cad_ColunaLogin');
- ColComputer := RetornaLingua( DestSettings.Language ,'Const_CadColuna_Computer');
- ColData := RetornaLingua( DestSettings.Language ,'Const_CadColuna_Data');
- InputCaption := RetornaLingua( DestSettings.Language ,'Const_UserLogged_InputCaption');
- InputText := RetornaLingua( DestSettings.Language ,'Const_UserLogged_InputText');
- MsgSystem := RetornaLingua( DestSettings.Language ,'Const_UserLogged_MsgSystem');
- End;
-end;
-
-procedure AlterLanguage2(DestSettings: TUCSettings);
-begin
- with DestSettings.CommonMessages do
- begin
- BlankPassword := RetornaLingua( DestSettings.Language,'Const_Men_SenhaDesabitada');
- PasswordChanged := RetornaLingua( DestSettings.Language,'Const_Men_SenhaAlterada');
- InitialMessage.Text := RetornaLingua( DestSettings.Language,'Const_Men_MsgInicial');
- MaxLoginAttemptsError := RetornaLingua( DestSettings.Language,'Const_Men_MaxTentativas');
- InvalidLogin := RetornaLingua( DestSettings.Language,'Const_Men_LoginInvalido');
- InactiveLogin := RetornaLingua( DestSettings.fLanguage ,'Const_Men_LoginInativo');
- AutoLogonError := RetornaLingua( DestSettings.Language,'Const_Men_AutoLogonError');
- UsuarioExiste := RetornaLingua( DestSettings.Language,'Const_Men_UsuarioExiste');
- PasswordExpired := RetornaLingua( DestSettings.Language,'Const_Men_PasswordExpired');
- end;
-
- with DestSettings.Login do
- begin
- BtCancel := RetornaLingua( DestSettings.Language,'Const_Log_BtCancelar');
- BtOK := RetornaLingua( DestSettings.Language,'Const_Log_BtOK');
- LabelPassword := RetornaLingua( DestSettings.Language,'Const_Log_LabelSenha');
- LabelUser := RetornaLingua( DestSettings.Language,'Const_Log_LabelUsuario');
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Log_WindowCaption');
- LabelTentativa := RetornaLingua( DestSettings.Language,'Const_Log_LabelTentativa');
- LabelTentativas := RetornaLingua( DestSettings.Language,'Const_Log_LabelTentativas');
- end;
-
- with DestSettings.UsersForm do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Cad_WindowCaption');
- LabelDescription := RetornaLingua( DestSettings.Language,'Const_Cad_LabelDescricao');
- ColName := RetornaLingua( DestSettings.Language,'Const_Cad_ColunaNome');
- ColLogin := RetornaLingua( DestSettings.Language,'Const_Cad_ColunaLogin');
- ColEmail := RetornaLingua( DestSettings.Language,'Const_Cad_ColunaEmail');
- BtAdd := RetornaLingua( DestSettings.Language,'Const_Cad_BtAdicionar');
- BtChange := RetornaLingua( DestSettings.Language,'Const_Cad_BtAlterar');
- BtDelete := RetornaLingua( DestSettings.Language,'Const_Cad_BtExcluir');
- BtRights := RetornaLingua( DestSettings.Language,'Const_Cad_BtPermissoes');
- BtPassword := RetornaLingua( DestSettings.Language,'Const_Cad_BtSenha');
- BtClose := RetornaLingua( DestSettings.Language,'Const_Cad_BtFechar');
- PromptDelete := RetornaLingua( DestSettings.Language,'Const_Cad_ConfirmaExcluir');
- PromptDelete_WindowCaption := RetornaLingua( DestSettings.Language,'Const_Cad_ConfirmaDelete_WindowCaption');
- end;
-
- with DestSettings.UsersProfile do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Prof_WindowCaption');
- LabelDescription := RetornaLingua( DestSettings.Language,'Const_Prof_LabelDescricao');
- ColProfile := RetornaLingua( DestSettings.Language,'Const_Prof_ColunaNome');
- BtAdd := RetornaLingua( DestSettings.Language,'Const_Prof_BtAdicionar');
- BtChange := RetornaLingua( DestSettings.Language,'Const_Prof_BtAlterar');
- BtDelete := RetornaLingua( DestSettings.Language,'Const_Prof_BtExcluir');
- BtRights := RetornaLingua( DestSettings.Language,'Const_Prof_BtPermissoes');
- BtClose := RetornaLingua( DestSettings.Language,'Const_Prof_BtFechar');
- PromptDelete := RetornaLingua( DestSettings.Language,'Const_Prof_ConfirmaExcluir');
- PromptDelete_WindowCaption := RetornaLingua( DestSettings.Language,'Const_Prof_ConfirmaDelete_WindowCaption');
- end;
-
- with DestSettings.AddChangeUser do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Inc_WindowCaption');
- LabelAdd := RetornaLingua( DestSettings.Language,'Const_Inc_LabelAdicionar');
- LabelChange := RetornaLingua( DestSettings.Language,'Const_Inc_LabelAlterar');
- LabelName := RetornaLingua( DestSettings.Language,'Const_Inc_LabelNome');
- LabelLogin := RetornaLingua( DestSettings.Language,'Const_Inc_LabelLogin');
- LabelEmail := RetornaLingua( DestSettings.Language,'Const_Inc_LabelEmail');
- CheckPrivileged := RetornaLingua( DestSettings.Language,'Const_Inc_CheckPrivilegiado');
- BtSave := RetornaLingua( DestSettings.Language,'Const_Inc_BtGravar');
- BtCancel := RetornaLingua( DestSettings.Language,'Const_Inc_BtCancelar');
- LabelPerfil := RetornaLingua( DestSettings.Language,'Const_Inc_LabelPerfil');
- CheckExpira := RetornaLingua( DestSettings.Language,'Const_Inc_CheckEspira');
- Day := RetornaLingua( DestSettings.Language,'Const_Inc_Dia');
- ExpiredIn := RetornaLingua( DestSettings.Language,'Const_Inc_ExpiraEm');
- LabelStatus := RetornaLingua( DestSettings.Language ,'Const_Inc_LabelStatus');
- StatusActive := RetornaLingua( DestSettings.Language ,'Const_Inc_StatusActive');
- StatusDisabled := RetornaLingua( DestSettings.Language ,'Const_Inc_StatusDisabled');
- end;
-
- with DestSettings.AddChangeProfile do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_PInc_WindowCaption');
- LabelAdd := RetornaLingua( DestSettings.Language,'Const_PInc_LabelAdicionar');
- LabelChange := RetornaLingua( DestSettings.Language,'Const_PInc_LabelAlterar');
- LabelName := RetornaLingua( DestSettings.Language,'Const_PInc_LabelNome');
- BtSave := RetornaLingua( DestSettings.Language,'Const_PInc_BtGravar');
- BtCancel := RetornaLingua( DestSettings.Language,'Const_PInc_BtCancelar');
- end;
-
- with DestSettings.Rights do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Perm_WindowCaption');
- LabelUser := RetornaLingua( DestSettings.Language,'Const_Perm_LabelUsuario');
- LabelProfile := RetornaLingua( DestSettings.Language,'Const_Perm_LabelPerfil');
- PageMenu := RetornaLingua( DestSettings.Language,'Const_Perm_PageMenu');
- PageActions := RetornaLingua( DestSettings.Language,'Const_Perm_PageActions');
- PageControls := RetornaLingua( DestSettings.Language,'Const_Perm_PageControls');
- BtUnlock := RetornaLingua( DestSettings.Language,'Const_Perm_BtLibera');
- BtLock := RetornaLingua( DestSettings.Language,'Const_Perm_BtBloqueia');
- BtSave := RetornaLingua( DestSettings.Language,'Const_Perm_BtGravar');
- BtCancel := RetornaLingua( DestSettings.Language,'Const_Perm_BtCancelar');
- end;
-
- with DestSettings.ChangePassword do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_Troc_WindowCaption');
- LabelDescription := RetornaLingua( DestSettings.Language,'Const_Troc_LabelDescricao');
- LabelCurrentPassword := RetornaLingua( DestSettings.Language,'Const_Troc_LabelSenhaAtual');
- LabelNewPassword := RetornaLingua( DestSettings.Language,'Const_Troc_LabelNovaSenha');
- LabelConfirm := RetornaLingua( DestSettings.Language,'Const_Troc_LabelConfirma');
- BtSave := RetornaLingua( DestSettings.Language,'Const_Troc_BtGravar');
- BtCancel := RetornaLingua( DestSettings.Language,'Const_Troc_BtCancelar');
- end;
-
- with DestSettings.CommonMessages.ChangePasswordError do
- begin
- InvalidCurrentPassword := RetornaLingua( DestSettings.Language,'Const_ErrPass_SenhaAtualInvalida');
- NewPasswordError := RetornaLingua( DestSettings.Language,'Const_ErrPass_ErroNovaSenha');
- NewEqualCurrent := RetornaLingua( DestSettings.Language,'Const_ErrPass_NovaIgualAtual');
- PasswordRequired := RetornaLingua( DestSettings.Language,'Const_ErrPass_SenhaObrigatoria');
- MinPasswordLength := RetornaLingua( DestSettings.Language,'Const_ErrPass_SenhaMinima');
- InvalidNewPassword := RetornaLingua( DestSettings.Language,'Const_ErrPass_SenhaInvalida');
- end;
-
- with DestSettings.ResetPassword do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_DefPass_WindowCaption');
- LabelPassword := RetornaLingua( DestSettings.Language,'Const_DefPass_LabelSenha');
- end;
-
- with DestSettings.Log do
- begin
- WindowCaption := RetornaLingua( DestSettings.Language,'Const_LogC_WindowCaption');
- LabelDescription := RetornaLingua( DestSettings.Language,'Const_LogC_LabelDescricao');
- LabelUser := RetornaLingua( DestSettings.Language,'Const_LogC_LabelUsuario');
- LabelDate := RetornaLingua( DestSettings.Language,'Const_LogC_LabelData');
- LabelLevel := RetornaLingua( DestSettings.Language,'Const_LogC_LabelNivel');
- ColLevel := RetornaLingua( DestSettings.Language,'Const_LogC_ColunaNivel');
- ColAppID := RetornaLingua( DestSettings.Language,'Const_LogC_ColunaAppID');
- ColMessage := RetornaLingua( DestSettings.Language,'Const_LogC_ColunaMensagem');
- ColUser := RetornaLingua( DestSettings.Language,'Const_LogC_ColunaUsuario');
- ColDate := RetornaLingua( DestSettings.Language,'Const_LogC_ColunaData');
- BtFilter := RetornaLingua( DestSettings.Language,'Const_LogC_BtFiltro');
- BtDelete := RetornaLingua( DestSettings.Language,'Const_LogC_BtExcluir');
- BtClose := RetornaLingua( DestSettings.Language,'Const_LogC_BtFechar');
- PromptDelete := RetornaLingua( DestSettings.Language,'Const_LogC_ConfirmaExcluir');
- PromptDelete_WindowCaption := RetornaLingua( DestSettings.Language,'Const_LogC_ConfirmaDelete_WindowCaption');
- OptionUserAll := RetornaLingua( DestSettings.Language,'Const_LogC_Todos');
- OptionLevelLow := RetornaLingua( DestSettings.Language,'Const_LogC_Low');
- OptionLevelNormal := RetornaLingua( DestSettings.Language,'Const_LogC_Normal');
- OptionLevelHigh := RetornaLingua( DestSettings.Language,'Const_LogC_High');
- OptionLevelCritic := RetornaLingua( DestSettings.Language,'Const_LogC_Critic');
- DeletePerformed := RetornaLingua( DestSettings.Language,'Const_LogC_ExcluirEfectuada');
- end;
-
- with DestSettings.AppMessages do
- begin
- MsgsForm_BtNew := RetornaLingua( DestSettings.Language,'Const_Msgs_BtNew');
- MsgsForm_BtReplay := RetornaLingua( DestSettings.Language,'Const_Msgs_BtReplay');
- MsgsForm_BtForward := RetornaLingua( DestSettings.Language,'Const_Msgs_BtForward');
- MsgsForm_BtDelete := RetornaLingua( DestSettings.Language,'Const_Msgs_BtDelete');
- MsgsForm_BtClose := RetornaLingua( DestSettings.Language,'Const_Msgs_BtClose'); //added by fduenas
- MsgsForm_WindowCaption := RetornaLingua( DestSettings.Language,'Const_Msgs_WindowCaption');
- MsgsForm_ColFrom := RetornaLingua( DestSettings.Language,'Const_Msgs_ColFrom');
- MsgsForm_ColSubject := RetornaLingua( DestSettings.Language,'Const_Msgs_ColSubject');
- MsgsForm_ColDate := RetornaLingua( DestSettings.Language,'Const_Msgs_ColDate');
- MsgsForm_PromptDelete := RetornaLingua( DestSettings.Language,'Const_Msgs_PromptDelete');
- MsgsForm_PromptDelete_WindowCaption := RetornaLingua( DestSettings.Language,'Const_Msgs_PromptDelete_WindowCaption'); //added by fduenas
- MsgsForm_NoMessagesSelected := RetornaLingua( DestSettings.Language,'Const_Msgs_NoMessagesSelected'); //added by fduenas
- MsgsForm_NoMessagesSelected_WindowCaption := RetornaLingua( DestSettings.Language,'Const_Msgs_NoMessagesSelected_WindowCaption'); //added by fduenas
- MsgRec_BtClose := RetornaLingua( DestSettings.Language,'Const_MsgRec_BtClose');
- MsgRec_WindowCaption := RetornaLingua( DestSettings.Language,'Const_MsgRec_WindowCaption');
- MsgRec_Title := RetornaLingua( DestSettings.Language,'Const_MsgRec_Title');
- MsgRec_LabelFrom := RetornaLingua( DestSettings.Language,'Const_MsgRec_LabelFrom');
- MsgRec_LabelDate := RetornaLingua( DestSettings.Language,'Const_MsgRec_LabelDate');
- MsgRec_LabelSubject := RetornaLingua( DestSettings.Language,'Const_MsgRec_LabelSubject');
- MsgRec_LabelMessage := RetornaLingua( DestSettings.Language,'Const_MsgRec_LabelMessage');
- MsgSend_BtSend := RetornaLingua( DestSettings.Language,'Const_MsgSend_BtSend');
- MsgSend_BtCancel := RetornaLingua( DestSettings.Language,'Const_MsgSend_BtCancel');
- MsgSend_WindowCaption := RetornaLingua( DestSettings.Language,'Const_MsgSend_WindowCaption');
- MsgSend_Title := RetornaLingua( DestSettings.Language,'Const_MsgSend_Title');
- MsgSend_GroupTo := RetornaLingua( DestSettings.Language,'Const_MsgSend_GroupTo');
- MsgSend_RadioUser := RetornaLingua( DestSettings.Language,'Const_MsgSend_RadioUser');
- MsgSend_RadioAll := RetornaLingua( DestSettings.Language,'Const_MsgSend_RadioAll');
- MsgSend_GroupMessage := RetornaLingua( DestSettings.Language,'Const_MsgSend_GroupMessage');
- MsgSend_LabelSubject := RetornaLingua( DestSettings.Language,'Const_MsgSend_LabelSubject'); //added by fduenas
- MsgSend_LabelMessageText := RetornaLingua( DestSettings.Language,'Const_MsgSend_LabelMessageText'); //added by fduenas
- end;
-
- DestSettings.WindowsPosition := poMainFormCenter;
-
-
- with DestSettings.UsersLogged do
- Begin
- BtnMessage := RetornaLingua( DestSettings.Language ,'Const_UserLogged_BtnMsg' );
- BtnRefresh := RetornaLingua( DestSettings.Language ,'Const_UserLogged_Refresh');
- BtnClose := RetornaLingua( DestSettings.Language ,'Const_Msgs_BtClose');
- LabelDescricao := RetornaLingua( DestSettings.Language ,'Const_UserLogged_LabelDescricao');
- LabelCaption := RetornaLingua( DestSettings.Language ,'Const_UserLogged_LabelCaption');
- ColName := RetornaLingua( DestSettings.Language ,'Const_Cad_ColunaNome');
- ColLogin := RetornaLingua( DestSettings.Language ,'Const_Cad_ColunaLogin');
- ColComputer := RetornaLingua( DestSettings.Language ,'Const_CadColuna_Computer');
- ColData := RetornaLingua( DestSettings.Language ,'Const_CadColuna_Data');
- InputCaption := RetornaLingua( DestSettings.Language ,'Const_UserLogged_InputCaption');
- InputText := RetornaLingua( DestSettings.Language ,'Const_UserLogged_InputText');
- MsgSystem := RetornaLingua( DestSettings.Language ,'Const_UserLogged_MsgSystem');
- End;
-
-end;
-
-{-------------------------------------------------------------------------------}
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-{$IFDEF DELPHI9_UP} {$REGION 'TUCSettings'} {$ENDIF}
-
-{ TUCSettings }
-
-procedure TUCSettings.Assign(Source: TPersistent);
-begin
- if Source is TUCUserSettings then
- begin
- Self.CommonMessages.Assign(TUCUserSettings(Source).CommonMessages); //modified by fduenas
- Self.AppMessages.Assign(TUCUserSettings(Source).AppMessages); //modified by fduenas
- Self.WindowsPosition := WindowsPosition;
- end
- else
- inherited;
-end;
-
-constructor TUCSettings.Create(AOwner: TComponent);
-begin
- inherited;
- fLanguage := ucPortuguesBr;
- FAppMessagesMSG := TUCAppMessagesMSG.Create(nil);
- FLoginFormMSG := TUCLoginFormMSG.Create(nil);
- FUserCommomMSG := TUCUserCommonMSG.Create(nil);
- FCadUserFormMSG := TUCCadUserFormMSG.Create(nil);
- FAddUserFormMSG := TUCAddUserFormMSG.Create(nil);
- FAddProfileFormMSG := TUCAddProfileFormMSG.Create(nil);
- FPermissFormMSG := TUCPermissFormMSG.Create(nil);
- FProfileUserFormMSG := TUCProfileUserFormMSG.Create(nil);
- FTrocaSenhaFormMSG := TUCTrocaSenhaFormMSG.Create(nil);
- FResetPassword := TUCResetPassword.Create(nil);
- FLogControlFormMSG := TUCLogControlFormMSG.Create(nil);
- fBancoDados := FireBird;
- RetornaSqlBancoDados( fBancoDados, Type_Int,Type_Char,Type_VarChar,Type_Memo );
- fUsersLogged := TUCCadUserLoggedMSG.Create(Nil);
- if csDesigning in ComponentState then
- IniSettings2(Self);
-end;
-
-destructor TUCSettings.Destroy;
-begin
- //added by fduenas
- FAppMessagesMSG.Free;
- FLoginFormMSG.Free;
- FUserCommomMSG.Free;
- FCadUserFormMSG.Free;
- FAddUserFormMSG.Free;
- FAddProfileFormMSG.Free;
- FPermissFormMSG.Free;
- FProfileUserFormMSG.Free;
- FTrocaSenhaFormMSG.Free;
- FResetPassword.Free;
- FLogControlFormMSG.Free;
- fUsersLogged.Free;
- inherited;
-end;
-
-procedure TUCSettings.SetAppMessagesMSG(const Value: TUCAppMessagesMSG);
-begin
- FAppMessagesMSG := Value;
-end;
-
-procedure TUCSettings.SetFAddProfileFormMSG(const Value: TUCAddProfileFormMSG);
-begin
- FAddProfileFormMSG := Value;
-end;
-
-procedure TUCSettings.SetFAddUserFormMSG(const Value: TUCAddUserFormMSG);
-begin
- FAddUserFormMSG := Value;
-end;
-
-procedure TUCSettings.SetfBancoDados(const Value: TUCTypeBancoDados);
-begin
- fBancoDados := Value;
- RetornaSqlBancoDados( fBancoDados, Type_Int,Type_Char,Type_VarChar,Type_Memo );
-end;
-
-procedure TUCSettings.SetFCadUserFormMSG(const Value: TUCCadUserFormMSG);
-begin
- FCadUserFormMSG := Value;
-end;
-
-procedure TUCSettings.SetFFormLoginMsg(const Value: TUCLoginFormMSG);
-begin
- FLoginFormMSG := Value;
-end;
-
-procedure TUCSettings.SetfLanguage(const Value: TUCLanguage);
-begin
- fLanguage := Value;
- AlterLanguage2(Self);
-end;
-
-procedure TUCSettings.SetFLogControlFormMSG(const Value: TUCLogControlFormMSG);
-begin
- FLogControlFormMSG := Value;
-end;
-
-procedure TUCSettings.SetFPermissFormMSG(const Value: TUCPermissFormMSG);
-begin
- FPermissFormMSG := Value;
-end;
-
-procedure TUCSettings.SetFProfileUserFormMSG(const Value: TUCProfileUserFormMSG);
-begin
- FProfileUserFormMSG := Value;
-end;
-
-procedure TUCSettings.SetFResetPassword(const Value: TUCResetPassword);
-begin
- FResetPassword := Value;
-end;
-
-procedure TUCSettings.SetFTrocaSenhaFormMSG(const Value: TUCTrocaSenhaFormMSG);
-begin
- FTrocaSenhaFormMSG := Value;
-end;
-
-procedure TUCSettings.SetFUserCommonMSg(const Value: TUCUserCommonMSG);
-begin
- FUserCommomMSG := Value;
-end;
-
-procedure TUCSettings.SetfUsersLogged(const Value: TUCCadUserLoggedMSG);
-begin
- fUsersLogged := Value;
-end;
-
-{$IFDEF DELPHI9_UP} {$ENDREGION} {$ENDIF}
-
-end.
diff --git a/internal/2.31RC1/1/Source/UCXPSettings.pas b/internal/2.31RC1/1/Source/UCXPSettings.pas
deleted file mode 100644
index 89ed10d..0000000
--- a/internal/2.31RC1/1/Source/UCXPSettings.pas
+++ /dev/null
@@ -1,446 +0,0 @@
-{
-Class UCXPSettings:
-Based on XPMenu 3.1 for Delphi
-
-XPMenu for Delphi
-Author: Khaled Shagrouni
-URL: http://www.shagrouni.com/english/software/xpmenu.html
-e-mail: khaled@shagrouni.com
-
-Version 3.1 - 22.02.2004
-
-
-
-XPMenu is a Delphi component to mimic Office XP menu and toolbar style.
-Copyright (C) 2001, 2003 Khaled Shagrouni.
-
-This component is FREEWARE with source code. I still hold the copyright, but
-you can use it for whatever you like: freeware, shareware or commercial software.
-If you have any ideas for improvement or bug reports, don't hesitate to e-mail
-me (Please state the XPMenu version and OS information).
-
---------------------------------------------------------------------------------
-changes by QmD 30/11/2003 - qmd@usercontrol.com.br
-* Add BitBtnColor / BitBtnSelectColor by QmD 30/11/2003 - qmd@usercontrol.com.br
-* BitBtn Button multi-line corrected
-* 29/03/2004 - XPmenu 2.21 incorporated in User Control Package. Class renamed to UCXPMenu to prevent conflicts (http://usercontrol.sourceforge.net)
-
-changes by fduenas 29/12/2004 - fduenas@outm.net, fduenas@flashmail.com
-* XPMenu.pas 3.1 Ported to UCXPStyle.pas by Francisco Dueñas fduenas@outm.net.
-* File UCXPMenu.pas renamed to UCXPStyle.pas
-* Class UCXPSet renamed to UCXPSettings
-* File UCXPSet.pas renamed to UCXPSettings.pas
-
-}
-{$IFDEF VER130}
-{$DEFINE VER5U}
-{$ENDIF}
-
-{$IFDEF VER140}
-{$DEFINE VER5U}
-{$DEFINE VER6U}
-{$ENDIF}
-
-{$IFDEF VER150}
-{$DEFINE VER5U}
-{$DEFINE VER6U}
-{$DEFINE VER7U}
-{$ENDIF}
-
-unit UCXPSettings;
-
-interface
-uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, ComCtrls, Forms,
- Menus, Commctrl, ExtCtrls, StdCtrls, Buttons;
-
- type
- TUCXPContainer = (xccForm, xccFrame, xccToolbar, xccCoolbar, xccControlbar, xccPanel,
- xccScrollBox, xccGroupBox, xccTabSheet, xccPageScroller);
- TUCXPContainers = set of TUCXPContainer;
-
- TUCXPControl = (xcMainMenu, xcPopupMenu, xcToolbar, xcControlbar, xcCombo, xcListBox,
- xcEdit, xcMaskEdit, xcMemo, xcRichEdit, xcMiscEdit, xcCheckBox,
- xcRadioButton, xcButton, xcBitBtn, xcSpeedButton, xcUpDown, xcPanel,
- xcGroupBox, xcTreeView, xcListView, xcProgressBar, xcHotKey);
- {xcStringGrid, xcDrawGrid, xcDBGrid)}
-
- TUCXPControls = set of TUCXPControl;
-
- TUCXPSettings = class(TPersistent)
- private
- {from UCXPStyle class}
- FFont: TFont;
- FColor: TColor;
- FIconBackColor: TColor;
- FMenuBarColor: TColor;
- FCheckedColor: TColor;
- FSeparatorColor: TColor;
- FSelectBorderColor: TColor;
- FSelectColor: TColor;
- FDisabledColor: TColor;
- FSelectFontColor: TColor;
- FIconWidth: integer;
- FDrawSelect: boolean;
- FUseSystemColors: boolean;
- FColorsChanged: boolean; // +jt
- {END from UCXPStyle class}
-
- {from UCXPStyle class}
- FOverrideOwnerDraw: boolean;
- FGradient: boolean;
- FFlatMenu: boolean;
- FAutoDetect: boolean;
- FUCXPContainers: TUCXPContainers;
- FUCXPControls: TUCXPControls;
- FGrayLevel: byte;
- FDimLevel: byte;
- FDrawMenuBar: boolean;
- FUseDimColor: boolean;
- {END from UCXPStyle class}
-
- FBitBtnColor: TColor; //qmd
-
- {from UCXPStyle class}
- procedure SetFont(const Value: TFont);
- procedure SetColor(const Value: TColor);
- procedure SetIconBackColor(const Value: TColor);
- procedure SetMenuBarColor(const Value: TColor);
- procedure SetCheckedColor(const Value: TColor);
- procedure SetDisabledColor(const Value: TColor);
- procedure SetSelectColor(const Value: TColor);
- procedure SetSelectBorderColor(const Value: TColor);
- procedure SetSeparatorColor(const Value: TColor);
- procedure SetSelectFontColor(const Value: TColor);
- procedure SetIconWidth(const Value: integer);
- procedure SetDrawSelect(const Value: boolean);
- procedure SetUseSystemColors(const Value: boolean);
-
- procedure SetOverrideOwnerDraw(const Value: boolean);
- procedure SetGradient(const Value: boolean);
- procedure SetFlatMenu(const Value: boolean);
- procedure SetDrawMenuBar(const Value: boolean);
- procedure SetUseDimColor(const Value: boolean);
- procedure SetAutoDetect(const Value: boolean);
- procedure SetUCXPContainers(const Value: TUCXPContainers);
- procedure SetUCXPControls(const Value: TUCXPControls);
- {END from UCXPStyle class}
- procedure SetBitBtnColor( const Value: TColor);
- procedure SetColorsChanged(const Value: boolean);
-
- protected
- public
- constructor Create(AOwner: TComponent);// override;
- procedure Assign(Source: TPersistent);override;
- destructor Destroy; override;
- published
- { from UCXPStyle class}
- property DimLevel: Byte read FDimLevel write FDimLevel;
- property GrayLevel: Byte read FGrayLevel write FGrayLevel;
- property Font: TFont read FFont write SetFont;
- property Color: TColor read FColor write SetColor;
- property DrawMenuBar: boolean read FDrawMenuBar write SetDrawMenuBar;
- property IconBackColor: TColor read FIconBackColor write SetIconBackColor;
- property MenuBarColor: TColor read FMenuBarColor write SetMenuBarColor;
- property SelectColor: TColor read FSelectColor write SetSelectColor;
- property SelectBorderColor: TColor read FSelectBorderColor
- write SetSelectBorderColor;
- property SelectFontColor: TColor read FSelectFontColor
- write SetSelectFontColor;
- property DisabledColor: TColor read FDisabledColor write SetDisabledColor;
- property SeparatorColor: TColor read FSeparatorColor
- write SetSeparatorColor;
- property CheckedColor: TColor read FCheckedColor write SetCheckedColor;
- property IconWidth: integer read FIconWidth write SetIconWidth;
- property DrawSelect: boolean read FDrawSelect write SetDrawSelect;
- property UseSystemColors: boolean read FUseSystemColors
- write SetUseSystemColors;
- property UseDimColor: boolean read FUseDimColor write SetUseDimColor;
- property OverrideOwnerDraw: boolean read FOverrideOwnerDraw
- write SetOverrideOwnerDraw;
- property Gradient: boolean read FGradient write SetGradient;
- property FlatMenu: boolean read FFlatMenu write SetFlatMenu;
- property AutoDetect: boolean read FAutoDetect write SetAutoDetect;
-
- property XPContainers: TUCXPContainers read FUCXPContainers write SetUCXPContainers
- default [xccForm, xccFrame, xccToolbar, xccCoolbar, xccControlbar, xccPanel,
- xccScrollBox, xccGroupBox, xccTabSheet, xccPageScroller];
- property XPControls :TUCXPControls read FUCXPControls write SetUCXPControls
- default [xcMainMenu, xcPopupMenu, xcToolbar, xcControlbar, xcCombo, xcListBox,
- xcEdit, xcMaskEdit, xcMemo, xcRichEdit, xcMiscEdit, xcCheckBox,
- xcRadioButton, xcButton, xcBitBtn, xcSpeedButton, xcUpDown, xcPanel,
- xcGroupBox, xcTreeView, xcListView, xcProgressBar, xcHotKey];
- {xcStringGrid, xcDrawGrid, xcDBGrid];}
-
- { END from UCXPStyle class}
- property BitBtnColor: TColor read FBitBtnColor write SetBitBtnColor; {qmd}
- property ColorsChanged: boolean read FColorsChanged write SetColorsChanged;
-
- end;
-
-procedure GetSystemMenuFont(Font: TFont);
-
-implementation
-
-
-{ TUCXPSettings }
-
-procedure TUCXPSettings.Assign(Source: TPersistent);
-begin
- if Source is TUCXPSettings then
- begin
- {Based on UCXPStyle.Create method}
- Self.Font := TUCXPSettings(Source).Font;
- Self.Color := TUCXPSettings(Source).Color;
- Self.IconBackColor := TUCXPSettings(Source).IconBackColor;
- Self.MenuBarColor := TUCXPSettings(Source).MenuBarColor;
- Self.CheckedColor := TUCXPSettings(Source).CheckedColor;
- Self.SeparatorColor := TUCXPSettings(Source).SeparatorColor;
- Self.SelectBorderColor := TUCXPSettings(Source).SelectBorderColor;
- Self.SelectColor := TUCXPSettings(Source).SelectColor;
- Self.DisabledColor := TUCXPSettings(Source).DisabledColor;
- Self.SelectFontColor := TUCXPSettings(Source).SelectFontColor;
- Self.IconWidth := TUCXPSettings(Source).IconWidth;
- Self.DrawSelect := TUCXPSettings(Source).DrawSelect;
- Self.UseSystemColors := TUCXPSettings(Source).UseSystemColors;
-
- Self.OverrideOwnerDraw := TUCXPSettings(Source).OverrideOwnerDraw;
- Self.Gradient := TUCXPSettings(Source).Gradient;
- Self.FlatMenu := TUCXPSettings(Source).FlatMenu;
- Self.AutoDetect := TUCXPSettings(Source).AutoDetect;
- Self.XPContainers := TUCXPSettings(Source).XPContainers;
- Self.XPControls := TUCXPSettings(Source).XPControls;
- Self.GrayLevel := TUCXPSettings(Source).GrayLevel;
- Self.DimLevel := TUCXPSettings(Source).DimLevel;
- Self.DrawMenuBar := TUCXPSettings(Source).DrawMenuBar;
- Self.UseDimColor := TUCXPSettings(Source).UseDimColor;
- {END from UCXPStyle class}
-
- Self.BitBtnColor := TUCXPSettings(Source).BitBtnColor; //qmd
-
-
- end else inherited;
-end;
-
-constructor TUCXPSettings.Create(AOwner: TComponent);
-begin
- inherited Create;//(AOwner);
-{ if csDesigning in ComponentState then
- begin}
- {FROM to UCXPSettings}
- FFont := TFont.Create;
-
- {$IFDEF VER5U}
- FFont.Assign(Screen.MenuFont);
- {$ELSE}
- GetSystemMenuFont(FFont);
- {$ENDIF}
-
- FUseSystemColors := true;
-
- FColor := clBtnFace;
- FIconBackColor := clBtnFace;
- FSelectColor := clHighlight;
- FSelectBorderColor := clHighlight;
- FMenuBarColor := clBtnFace;
- FDisabledColor := clInactiveCaption;
- FSeparatorColor := clBtnFace;
- FCheckedColor := clHighlight;
- FSelectFontColor := FFont.Color;
- FGrayLevel := 10;
- FDimLevel := 30;
- FIconWidth := 24;
- FDrawSelect := true;
- XPContainers := [xccForm, xccFrame, xccToolbar, xccCoolbar, xccControlbar, xccPanel,
- xccScrollBox, xccGroupBox, xccTabSheet, xccPageScroller];
- XPControls := [xcMainMenu, xcPopupMenu, xcToolbar, xcControlbar, xcCombo, xcListBox,
- xcEdit, xcMaskEdit, xcMemo, xcRichEdit, xcMiscEdit, xcCheckBox,
- xcRadioButton, xcButton, xcBitBtn, xcSpeedButton, xcUpDown, xcPanel,
- xcGroupBox, xcTreeView, xcListView, xcProgressBar, xcHotKey];
- {xcStringGrid, xcDrawGrid, xcDBGrid];}
-
- {END FROM to UCXPSettings}
- FBitBtnColor := clBtnFace;
-// end;
-
-end;
-
-
-destructor TUCXPSettings.Destroy;
-begin
- FreeAndNil(FFont);
- inherited;
-end;
-
-{END from UCXPStyle}
-procedure TUCXPSettings.SetFont(const Value: TFont);
-begin
- FFont.Assign(Value);
- //Windows.DrawMenuBar(FForm.Handle);
-
-end;
-
-procedure TUCXPSettings.SetColor(const Value: TColor);
-begin
- FColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPSettings.SetIconBackColor(const Value: TColor);
-begin
- FIconBackColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPSettings.SetMenuBarColor(const Value: TColor);
-begin
- FMenuBarColor := Value;
- FColorsChanged := true; // +jt
- //Windows.DrawMenuBar(FForm.Handle);
-end;
-
-procedure TUCXPSettings.SetCheckedColor(const Value: TColor);
-begin
- FCheckedColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPSettings.SetSeparatorColor(const Value: TColor);
-begin
- FSeparatorColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPSettings.SetSelectBorderColor(const Value: TColor);
-begin
- FSelectBorderColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPSettings.SetSelectColor(const Value: TColor);
-begin
- FSelectColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPSettings.SetDisabledColor(const Value: TColor);
-begin
- FDisabledColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPSettings.SetSelectFontColor(const Value: TColor);
-begin
- FSelectFontColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPSettings.SetIconWidth(const Value: integer);
-begin
- FIconWidth := Value;
-end;
-
-procedure TUCXPSettings.SetDrawSelect(const Value: boolean);
-begin
- FDrawSelect := Value;
-end;
-
-procedure TUCXPSettings.SetOverrideOwnerDraw(const Value: boolean);
-begin
- FOverrideOwnerDraw := Value;
- {
- if FActive then
- Active := True;
- }
-end;
-
-procedure TUCXPSettings.SetUseSystemColors(const Value: boolean);
-begin
- FUseSystemColors := Value;
- {Windows.DrawMenuBar(FForm.Handle);}
-end;
-
-procedure TUCXPSettings.SetGradient(const Value: boolean);
-begin
- FGradient := Value;
-end;
-
-procedure TUCXPSettings.SetFlatMenu(const Value: boolean);
-begin
- FFlatMenu := Value;
-end;
-
-procedure TUCXPSettings.SetUCXPContainers(const Value: TUCXPContainers);
-begin
- if Value <> FUCXPContainers then
- begin
- {if FActive then
- begin
- FActive := false;
- InitItems(FForm, false, true);
- FActive := true;
- FUCXPContainers := Value;
- InitItems(FForm, true, true);
- end;}
- end;
- FUCXPContainers := Value;
-
-end;
-
-procedure TUCXPSettings.SetUCXPControls(const Value: TUCXPControls);
-begin
- if Value <> FUCXPControls then
- begin
- { if FActive then
- begin
- FActive := false;
- InitItems(FForm, false, true);
- FActive := true;
- FUCXPControls := Value;
- InitItems(FForm, true, true);
- end;}
- end;
- FUCXPControls := Value;
-
-end;
-
-procedure TUCXPSettings.SetDrawMenuBar(const Value: boolean);
-begin
- FDrawMenuBar := Value;
-end;
-
-procedure TUCXPSettings.SetUseDimColor(const Value: boolean);
-begin
- FUseDimColor := Value;
-end;
-
-procedure TUCXPSettings.SetAutoDetect(const Value: boolean);
-begin
- FAutoDetect := Value;
-end;
-{END from UCXPStyle}
-procedure TUCXPSettings.SetBitBtnColor( const Value: TColor);
-begin
- FBitBtnColor := Value;
-end;
-
-procedure TUCXPSettings.SetColorsChanged(const Value: boolean);
-begin
- FColorsChanged := Value;
-end;
-
-//generic
-procedure GetSystemMenuFont(Font: TFont);
-var
- FNonCLientMetrics: TNonCLientMetrics;
-begin
- FNonCLientMetrics.cbSize := Sizeof(TNonCLientMetrics);
- if SystemParametersInfo(SPI_GETNONCLIENTMETRICS, 0, @FNonCLientMetrics,0) then
- begin
- Font.Handle := CreateFontIndirect(FNonCLientMetrics.lfMenuFont);
- Font.Color := clMenuText;
- end;
-end;
-
-
-end.
diff --git a/internal/2.31RC1/1/Source/UCXPStyle.pas b/internal/2.31RC1/1/Source/UCXPStyle.pas
deleted file mode 100644
index 694f11b..0000000
--- a/internal/2.31RC1/1/Source/UCXPStyle.pas
+++ /dev/null
@@ -1,5183 +0,0 @@
-{
-Class UCXPStyle:
-Based on XPMenu 3.1 for Delphi
-
-
-XPMenu for Delphi
-Author: Khaled Shagrouni
-URL: http://www.shagrouni.com/english/software/xpmenu.html
-e-mail: khaled@shagrouni.com
-
-Version 3.1 - 22.02.2004
-
-
-
-XPMenu is a Delphi component to mimic Office XP menu and toolbar style.
-Copyright (C) 2001, 2003 Khaled Shagrouni.
-
-This component is FREEWARE with source code. I still hold the copyright, but
-you can use it for whatever you like: freeware, shareware or commercial software.
-If you have any ideas for improvement or bug reports, don't hesitate to e-mail
-me (Please state the XPMenu version and OS information).
-
---------------------------------------------------------------------------------
-changes by QmD 30/11/2003 - qmd@usercontrol.com.br
-* Add BitBtnColor / BitBtnSelectColor by QmD 30/11/2003 - qmd@usercontrol.com.br
-* BitBtn Button multi-line corrected
-* 29/03/2004 - XPmenu 2.21 incorporated in User Control Package. Class renamed to UCXPMenu to prevent conflicts (http://usercontrol.sourceforge.net)
-
-changes by fduenas 29/12/2004 - fduenas@outm.net, fduenas@flashmail.com
-* XPMenu.pas 3.1 Ported to UCXPStyle.pas by Francisco Dueñas fduenas@outm.net.
-* File UCXPMenu.pas renamed to UCXPStyle.pas
-* Class UCXPSet renamed to UCXPSettings
-* File UCXPSet.pas renamed to UCXPSettings.pas
-}
-
-{$IFDEF VER130}
-{$DEFINE VER5U}
-{$ENDIF}
-
-{$IFDEF VER140}
-{$DEFINE VER5U}
-{$DEFINE VER6U}
-{$ENDIF}
-
-{$IFDEF VER150}
-{$DEFINE VER5U}
-{$DEFINE VER6U}
-{$DEFINE VER7U}
-{$ENDIF}
-
-unit UCXPStyle;
-
-interface
-
-uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, ComCtrls, Forms,
- Menus, Commctrl, ExtCtrls, StdCtrls, Buttons, UCXPSettings, UCBase, UCSettings;
-
-type
- { moved to UCXPSettings.pas and renamed TXP* to TUCXP*
- TXPContainer = (xccForm, xccFrame, xccToolbar, xccCoolbar, xccControlbar, xccPanel,
- xccScrollBox, xccGroupBox, xccTabSheet, xccPageScroller);
- TXPContainers = set of TXPContainer;
-
- TXPControl = (xcMainMenu, xcPopupMenu, xcToolbar, xcControlbar, xcCombo, xcListBox,
- xcEdit, xcMaskEdit, xcMemo, xcRichEdit, xcMiscEdit, xcCheckBox,
- xcRadioButton, xcButton, xcBitBtn, xcSpeedButton, xcUpDown, xcPanel,
- xcGroupBox, xcTreeView, xcListView, xcProgressBar, xcHotKey);
- {xcStringGrid, xcDrawGrid, xcDBGrid);
- }
-
-
- TUCAboutXpStyleVar=String[10];
-
- TUCXPStyle = class;
-
- TControlSubClass = class(TComponent) //: "Fabian Jakubowski"
- private
- Control: TControl;
- FBuilding: boolean;
- FMouseInControl: boolean;
- FLButtonBressed: boolean;
- FBressed: boolean;
- FIsKeyDown: boolean;
- FIsFocused: boolean;
- orgWindowProc: TWndMethod;
- FXPStyle: TUCXPStyle;
- FCtl3D: boolean;
- FBorderStyle: TBorderStyle;
- {FOnDrawCell: TDrawCellEvent;}
- FDefaultDrawing: boolean;
- FSelCol, FSelRow: integer;
- FMsg: Cardinal;
- procedure ControlSubClass(var Message: TMessage);
- procedure PaintControlXP;
- procedure PaintCombo;
- procedure PaintDBLookupCombo;
- procedure PaintEdit;
- procedure PaintRichEdit;
- procedure PaintCheckBox;
- procedure PaintRadio;
- procedure PaintButton;
- procedure PaintBitButn;
- procedure PaintUpDownButton;
- procedure PaintSpeedButton;
- procedure PaintPanel;
- procedure PaintGroupBox;
- procedure PaintNCWinControl;
- procedure PaintProgressBar;
- procedure PaintHotKey;
- end;
-
- TUCXPStyle = class(TComponent)
- private
- FActive: boolean;
- {Changes MMK FForm to TScrollingWinControl}
- FForm: TScrollingWinControl;
-
- {moved to UCXPsettings
- FFont: TFont;
- FColor: TColor;
- FIconBackColor: TColor;
- FMenuBarColor: TColor;
- FCheckedColor: TColor;
- FSeparatorColor: TColor;
- FSelectBorderColor: TColor;
- FSelectColor: TColor;
- FDisabledColor: TColor;
- FSelectFontColor: TColor;
- FIconWidth: integer;
- FDrawSelect: boolean;
- FUseSystemColors: boolean;
- FColorsChanged: boolean; // +jt
- }
-
- FFColor, FFIconBackColor, FFSelectColor, FFSelectBorderColor,
- FFSelectFontColor, FCheckedAreaColor, FCheckedAreaSelectColor,
- FFCheckedColor, FFMenuBarColor, FFDisabledColor, FFSeparatorColor,
- FMenuBorderColor, FMenuShadowColor: TColor;
-
- Is16Bit: boolean;
- { moved to UCXPSettings.pas
- FOverrideOwnerDraw: boolean;
- FGradient: boolean;
- FFlatMenu: boolean;
- FAutoDetect: boolean;
- FUCXPContainers: TUCXPContainers;
- FUCXPControls: TUCXPControls;
- FGrayLevel: byte;
- FDimLevel: byte;
- FDrawMenuBar: boolean;
- FUseDimColor: boolean;
- }
-
- FDimParentColor, FDimParentColorSelect: integer;
-
- FAutoDetect: boolean;
- // FUseParentClor: boolean;
-
- FSettingWindowRng: boolean;
- FIsW2k: boolean;
- FIsWXP: boolean;
- FIsWNT: boolean;
-// FTransparentColor: TColor;
- // Do not allow the component to be used for subclassing
- FDisableSubclassing: boolean;
-
- FUCSettings: TUCSettings;
- FUCXPSettings: TUCXPSettings;
- FUCAboutXpStyleVar: TUCAboutXpStyleVar; {+qmd}
-
- procedure SetDisableSubclassing(const Value: boolean);
-
- procedure SetActive(const Value: boolean);
-
- procedure SetForm(const Value: TScrollingWinControl);
- { moved to UCXPSettings
- procedure SetFont(const Value: TFont);
- procedure SetColor(const Value: TColor);
- procedure SetIconBackColor(const Value: TColor);
- procedure SetMenuBarColor(const Value: TColor);
- procedure SetCheckedColor(const Value: TColor);
- procedure SetDisabledColor(const Value: TColor);
- procedure SetSelectColor(const Value: TColor);
- procedure SetSelectBorderColor(const Value: TColor);
- procedure SetSeparatorColor(const Value: TColor);
- procedure SetSelectFontColor(const Value: TColor);
- procedure SetIconWidth(const Value: integer);
- procedure SetDrawSelect(const Value: boolean);
- procedure SetUseSystemColors(const Value: boolean);
- procedure SetOverrideOwnerDraw(const Value: boolean);
- procedure SetGradient(const Value: boolean);
- procedure SetFlatMenu(const Value: boolean);
- procedure SetUCXPContainers(const Value: TUCXPContainers);
- procedure SetUCXPControls(const Value: TUCXPControls);
- procedure SetDrawMenuBar(const Value: boolean);
- procedure SetUseDimColor(const Value: boolean);
- }
-
- procedure SetUCSettings(const Value: TUCSettings); {+qmd}
- protected
- procedure Loaded; override; //add by Cunha, liyang.
- procedure InitItems(wForm: TWinControl; Enable, Update: boolean);
- procedure InitItem(Comp: TComponent; Enable, Update: boolean); // Tom: "Thomas Knoblauch" 27.08
- procedure DrawItem(Sender: TObject; ACanvas: TCanvas; ARect: TRect;
- Selected: Boolean);
- procedure MenueDrawItem(Sender: TObject; ACanvas: TCanvas; ARect: TRect;
- Selected: Boolean);
- {$IFDEF VER5U}
- procedure ToolBarDrawButton(Sender: TToolBar; Button: TToolButton; State: TCustomDrawState; var DefaultDraw: Boolean);
- {$ENDIF}
- procedure ControlBarPaint(Sender: TObject; Control: TControl;
- Canvas: TCanvas; var ARect: TRect; var Options: TBandPaintOptions);
-
- procedure SetGlobalColor(ACanvas: TCanvas);
- procedure DrawTopMenuItem(Sender: TObject; ACanvas: TCanvas; ARect: TRect;
- BckColor:Tcolor; IsRightToLeft: boolean);
- procedure DrawCheckedItem(FMenuItem: TMenuItem; Selected, Enabled,
- HasImgLstBitmap: boolean; ACanvas: TCanvas; CheckedRect: TRect);
- procedure DrawTheText(Sender: TObject; txt, ShortCuttext: string;
- ACanvas: TCanvas; TextRect: TRect;
- Selected, Enabled, Default, TopMenu, IsRightToLeft: boolean;
- var TxtFont: TFont; TextFormat: integer);
- procedure DrawIcon(Sender: TObject; ACanvas: TCanvas; B: TBitmap;
- IconRect: Trect; Hot, Selected, Enabled, Checked, FTopMenu,
- IsRightToLeft: boolean);
-
- procedure MeasureItem(Sender: TObject; ACanvas: TCanvas;
- var Width, Height: Integer);
-
- //function GetImageExtent(MenuItem: TMenuItem): TPoint;
- function GetImageExtent(MenuItem: TMenuItem; FTopMenu: TMenu): TPoint; // +jt
- function TopMenuFontColor(ACanvas: TCanvas; Color: TColor): TColor;
- procedure DrawGradient(ACanvas: TCanvas; ARect: TRect;
- IsRightToLeft: boolean);
-
- procedure DrawWindowBorder(hWnd: HWND; IsRightToLeft: boolean);
-
- procedure Notification(AComponent: TComponent;
- AOperation: TOperation); override;
- public
- constructor Create(AOwner: TComponent); override;
- destructor Destroy; override;
- procedure InitComponent(Comp: TComponent); // Tom: Added for usage by the main program ."Thomas Knoblauch" 27.08
- procedure ActivateMenuItem(MenuItem: TMenuItem; SubMenus: boolean); // +jt
- property Form: TScrollingWinControl read FForm write SetForm;// +jt
- property IsWXP: boolean read FIsWXP;
- property IsW2k: boolean read FIsW2k;
- property IsWNT: boolean read FIsWNT;
-{ property TransparentColor: TColor read FTransparentColor write FTransparentColor;}
published
{moved to UCXPSettings
- property DimLevel: Byte read FDimLevel write FDimLevel;
- property GrayLevel: Byte read FGrayLevel write FGrayLevel;
- property Font: TFont read FFont write SetFont;
- property Color: TColor read FColor write SetColor;
- property DrawMenuBar: boolean read FDrawMenuBar write SetDrawMenuBar;
- property IconBackColor: TColor read FIconBackColor write SetIconBackColor;
- property MenuBarColor: TColor read FMenuBarColor write SetMenuBarColor;
- property SelectColor: TColor read FSelectColor write SetSelectColor;
- property SelectBorderColor: TColor read FSelectBorderColor
- write SetSelectBorderColor;
- property SelectFontColor: TColor read FSelectFontColor
- write SetSelectFontColor;
- property DisabledColor: TColor read FDisabledColor write SetDisabledColor;
- property SeparatorColor: TColor read FSeparatorColor
- write SetSeparatorColor;
- property CheckedColor: TColor read FCheckedColor write SetCheckedColor;
- property IconWidth: integer read FIconWidth write SetIconWidth;
- property DrawSelect: boolean read FDrawSelect write SetDrawSelect;
- property UseSystemColors: boolean read FUseSystemColors
- write SetUseSystemColors;
- property UseDimColor: boolean read FUseDimColor write SetUseDimColor;
- property OverrideOwnerDraw: boolean read FOverrideOwnerDraw
- write SetOverrideOwnerDraw;
-
- property Gradient: boolean read FGradient write SetGradient;
- property FlatMenu: boolean read FFlatMenu write SetFlatMenu;
- property AutoDetect: boolean read FAutoDetect write SetAutoDetect;
-
- property XPContainers: TUCXPContainers read FUCXPContainers write SetUCXPContainers
- default [xccForm, xccFrame, xccToolbar, xccCoolbar, xccControlbar, xccPanel,
- xccScrollBox, xccGroupBox, xccTabSheet, xccPageScroller];
- property XPControls :TUCXPControls read FUCXPControls write SetUCXPControls
- default [xcMainMenu, xcPopupMenu, xcToolbar, xcControlbar, xcCombo, xcListBox,
- xcEdit, xcMaskEdit, xcMemo, xcRichEdit, xcMiscEdit, xcCheckBox,
- xcRadioButton, xcButton, xcBitBtn, xcSpeedButton, xcUpDown, xcPanel,
- xcGroupBox, xcTreeView, xcListView, xcProgressBar, xcHotKey];
- {xcStringGrid, xcDrawGrid, xcDBGrid];
- }
- property About: TUCAboutXpStyleVar read FUCAboutXpStyleVar write FUCAboutXpStyleVar;
- property Active: boolean read FActive write SetActive;
- property DisableSubclassing: boolean read FDisableSubclassing write SetDisablesubclassing
- default false;
- property XPSettings : TUCXPSettings read FUCXPSettings write FUCXPSettings;
- property UCSettings : TUCSettings read FUCSettings write SetUCSettings;
- end;
-
- TUCXPStyleManager = class(TPersistent)
- private
- FXPStyleList: TList;
- FPendingFormsList: TList;
- FFormList: TList;
- FActiveXPStyle: TUCXPStyle;
- FDisableSubclassing: boolean;
-
- function MainWindowHook(var Message: TMessage): boolean;
- procedure CollectForms;
- procedure RemoveChildSubclassing(AForm: TCustomForm);
- procedure SetDisableSubclassing(AValue: boolean);
- function FindSubclassingXPStyle(Exclude: TUCXPStyle): TUCXPStyle;
-
- protected
- procedure Notification(AComponent: TComponent;
- AOperation: TOperation);
-
- public
- constructor Create;
- destructor Destroy; override;
- procedure Add(AXPStyle: TUCXPStyle);
- procedure Delete(AXPStyle: TUCXPStyle);
- procedure UpdateActiveXPStyle(AXPStyle: TUCXPStyle);
- procedure AddForm(AForm: TCustomForm);
- procedure RemoveForm(AForm: TCustomForm);
- function IsFormSubclassed(AForm: TCustomForm): boolean;
- function IsComponentSubclassed(AComponent: TComponent): boolean;
-
- property ActiveXPStyle: TUCXPStyle read FActiveXPStyle;
- property DisableSubclassing: boolean read FDisableSubclassing write SetDisableSubclassing
- default false;
- end;
-
-function GetShadeColor(ACanvas: TCanvas; clr: TColor; Value: integer): TColor;
-function MergColor(Colors: Array of TColor): TColor;
-function NewColor(ACanvas: TCanvas; clr: TColor; Value: integer): TColor;
-procedure DimBitmap(ABitmap: TBitmap; Value: integer);
-
-procedure DrawArrow(ACanvas: TCanvas; X, Y: integer); overload;
-procedure DrawArrow(ACanvas: TCanvas; X, Y, Orientation: integer); overload;
-function GrayColor(ACanvas: TCanvas; clr: TColor; Value: integer): TColor;
-function GetInverseColor(AColor: TColor): TColor;
-
-procedure GrayBitmap(ABitmap: TBitmap; Value: integer);
-procedure DrawBitmapShadow(B: TBitmap; ACanvas: TCanvas; X, Y: integer; ShadowColor: TColor);
-procedure DrawCheckMark(ACanvas: TCanvas; X, Y: integer);
-
-procedure GetSystemMenuFont(Font: TFont);
-//procedure Register;
-
-const
- WM_DRAWMENUBORDER = CN_NOTIFY + 101; // +jt
- WM_DRAWMENUBORDER2 = CN_NOTIFY + 102; // +jt
-
-// Gloabal access to the UCXPStyleManager
-var
- UCXPStyleManager: TUCXPStyleManager;
-
-implementation
-
-{ moved to UCReg.pas
-procedure Register;
-begin
- RegisterComponents('XP', [TUCXPStyle]);
-end;
-}
-// Set up the global variable that represents the UCXPStyleManager
-procedure InitControls;
-begin
- //added by fduenas
- if (csDesigning in Application.ComponentState) then
- exit;
-
- if (Not assigned(UCXPStyleManager)) or
- (UCXPStyleManager = nil) then
- UCXPStyleManager := TUCXPStyleManager.Create;
-end;
-
-// Delete the global variable that represents the UCXPStyleManager
-procedure DoneControls;
-begin
- FreeAndNil(UCXPStyleManager);
- {
- if (UCXPStyleManager <> nil) then
- begin
- UCXPStyleManager.Free;
- UCXPStyleManager := nil;
- end;
- }
-end;
-
-// Test if mouse cursor is in the given rect of the application's main form
-function IsMouseInRect(TheForm: TScrollingWinControl; DestRect: TRect): boolean;
-var
- p: TPoint;
-
-begin
-
- if Assigned(TheForm) then
- begin
- p := Mouse.CursorPos;
- p.x := p.x - TheForm.Left;
- p.y := p.y - TheForm.Top;
-
- Dec(DestRect.Right);
- Dec(DestRect.Bottom, 2);
- Result := (p.x >= DestRect.Left) and (p.x <= DestRect.Right) and
- (p.y >= DestRect.Top) and (p.y <= DestRect.Bottom);
- end
- else Result := false;
-end;
-
-{ TUCXPStyle }
-
-constructor TUCXPStyle.Create(AOwner: TComponent);
-var
- OSVersionInfo: TOSVersionInfo; // +jt
-begin
- inherited Create(AOwner);
- {moved to UCXPSettings
- FFont := TFont.Create;
- }
- FDisableSubclassing := false; // enable XPStyle to be used for global subclassing
-
-{moved to UCXPSettings
- {$IFDEF VER5U
- FFont.Assign(Screen.MenuFont);
- {$ELSE
- GetSystemMenuFont(FFont);
- {$ENDIF
-}
-
- FForm := (Owner as TScrollingWinControl);
- FUCXPSettings := TUCXPSettings.create(self); //added by fduenas
- {moved to UCXPSettings
- FUseSystemColors := true;
-
- FColor := clBtnFace;
- FIconBackColor := clBtnFace;
- FSelectColor := clHighlight;
- FSelectBorderColor := clHighlight;
- FMenuBarColor := clBtnFace;
- FDisabledColor := clInactiveCaption;
- FSeparatorColor := clBtnFace;
- FCheckedColor := clHighlight;
- FSelectFontColor := FFont.Color;
- FGrayLevel := 10;
- FDimLevel := 30;
- FIconWidth := 24;
- FDrawSelect := true;
- UCXPContainers := [xccForm, xccFrame, xccToolbar, xccCoolbar, xccControlbar, xccPanel,
- xccScrollBox, xccGroupBox, xccTabSheet, xccPageScroller];
- UCXPControls := [xcMainMenu, xcPopupMenu, xcToolbar, xcControlbar, xcCombo, xcListBox,
- xcEdit, xcMaskEdit, xcMemo, xcRichEdit, xcMiscEdit, xcCheckBox,
- xcRadioButton, xcButton, xcBitBtn, xcSpeedButton, xcUpDown, xcPanel,
- xcGroupBox, xcTreeView, xcListView, xcProgressBar, xcHotKey];
- {xcStringGrid, xcDrawGrid, xcDBGrid];
-
- }
- if Assigned(FForm) then
- SetGlobalColor(TForm(FForm).Canvas);
-
-// +jt
-// FTransparentColor := clFuchsia;
- FUCXPSettings.ColorsChanged := false;
- OSVersionInfo.dwOSVersionInfoSize := sizeof(OSVersionInfo);
- GetVersionEx(OSVersionInfo);
- FIsWXP:=false;
- FIsW2k:=false;
- FIsWNT:=false;
- if OSVersionInfo.dwPlatformId = VER_PLATFORM_WIN32_NT then
- begin
- FIsWNT:=true;
- if (OSVersionInfo.dwMajorVersion = 5) and (OSVersionInfo.dwMinorVersion = 0) then FIsW2k:=true;
- if (OSVersionInfo.dwMajorVersion = 5) and (OSVersionInfo.dwMinorVersion = 1) then FIsWXP:=true;
- end;
// +jt
-
- {moved to initialization section
- if not(csDesigning in ComponentState) then
- InitControls
- else
- exit;
- }
- if FActive then
- Self.Active := FActive;
-
- //if FForm.Handle <> 0 then
- // Windows.DrawMenuBar(FForm.Handle);
-end;
-
-destructor TUCXPStyle.Destroy;
-begin
- if Assigned(FForm) then //oleg oleg@vdv-s.ru Mon Oct 7
- InitItems(FForm, false, false);
-
-// Remove XPStyle from UCXPStyleManager
- if Assigned(UCXPStyleManager) and not(csDesigning in ComponentState) then
- begin
- UCXPStyleManager.Delete(Self);
- FForm.Update;
- {moved to finalization section
- if UCXPStyleManager.FXPStyleList.Count = 0 then
- DoneControls;
- }
- end;
-
- //FFont.Free; moved to TCXPSettings
- FreeAndNil(FUCXPSettings); {added by fduenas}
- inherited Destroy;
-end;
-
-//add by:
-//liyang ,2002-07-19
-//Pedro Miguel Cunha - 02 Apr 2002
-procedure TUCXPStyle.Loaded;
-begin
- inherited Loaded;
-
-// Add the XPStyle to the UCXPStyleManager
- if Assigned(UCXPStyleManager) and not(csDesigning in ComponentState) then
- UCXPStyleManager.Add(Self);
-end;
-
-{to check for new sub items}
-procedure TUCXPStyle.ActivateMenuItem(MenuItem: TMenuItem; SubMenus: boolean); // +jt
-
- procedure Activate(MenuItem: TMenuItem);
- begin
- if (MenuItem.Tag <> 999) then
- if addr(MenuItem.OnDrawItem) <> addr(TUCXPStyle.DrawItem) then
- begin
- if (not assigned(MenuItem.OnDrawItem)) or (FUCXPSettings.OverrideOwnerDraw) then
- MenuItem.OnDrawItem := DrawItem;
- if (not assigned(MenuItem.OnMeasureItem)) or (FUCXPSettings.OverrideOwnerDraw) then
- MenuItem.OnMeasureItem := MeasureItem;
- end
- end;
-
-var
- i{, j}: integer;
-begin
-
- Activate(MenuItem);
- if (SubMenus=true) then // +jt
- begin
- for i := 0 to MenuItem.Count -1 do
- begin
- ActivateMenuItem(MenuItem.Items[i],true);
- end;
- end;
-end;
-
-procedure TUCXPStyle.InitItems(wForm: TWinControl; Enable, Update: boolean );
-var
- i: integer;
- Comp: TComponent;
-begin
- for i := 0 to wForm.ComponentCount - 1 do
- begin
- Comp := wForm.Components[i];
- InitItem(Comp, Enable, Update); // Tom: "Thomas Knoblauch" 27.08
- end;
-end;
-
-procedure TUCXPStyle.InitComponent(Comp: TComponent); // Tom: for external (by the main program) use without parameters. "Thomas Knoblauch" 27.08
-begin
- if FActive then InitItem(Comp, true, true);
-end;
-
-
-
-// Tom: "Thomas Knoblauch" 27.08
-procedure TUCXPStyle.InitItem(Comp: TComponent; Enable, Update: boolean );
- procedure Activate(MenuItem: TMenuItem);
- begin
- if Enable then
- begin
- if (MenuItem.Tag <> 999) then
- begin
- if (not assigned(MenuItem.OnDrawItem)) or (FUCXPSettings.OverrideOwnerDraw) then
- MenuItem.OnDrawItem := DrawItem;
- if (not assigned(MenuItem.OnMeasureItem)) or (FUCXPSettings.OverrideOwnerDraw) then
- MenuItem.OnMeasureItem := MeasureItem;
- end;
- end
- else
- begin
- if addr(MenuItem.OnDrawItem) = addr(TUCXPStyle.DrawItem) then
- MenuItem.OnDrawItem := nil;
- if addr(MenuItem.OnMeasureItem) = addr(TUCXPStyle.MeasureItem) then
- MenuItem.OnMeasureItem := nil;
- end;
- end;
-
- procedure ItrateMenu(MenuItem: TMenuItem);
- var
- i: integer;
- begin
- Activate(MenuItem);
- for i := 0 to MenuItem.Count - 1 do
- begin
- ItrateMenu(MenuItem.Items[i]);
- end;
- end;
-
-var
- x: integer;
- s: string;
-
-begin
- if (Comp is TMainMenu) and (xcMainMenu in FUCXPSettings.XPControls) and (TMainMenu(Comp).Tag <> 999)then
- begin
- for x := 0 to TMainMenu(Comp).Items.Count - 1 do
- begin
- TMainMenu(Comp).OwnerDraw := Enable;
- //Activate(TMainMenu(Comp).Items[x]);
- ItrateMenu(TMainMenu(Comp).Items[x]);
- end;
- // Selly way to force top menu in other forms to repaint
- S := TMainMenu(Comp).Items[0].Caption;
- TMainMenu(Comp).Items[0].Caption := '';
- TMainMenu(Comp).Items[0].Caption := S;
- end;
-
- if (Comp is TPopupMenu) and (xcPopupMenu in FUCXPSettings.XPControls) then
- begin
- for x := 0 to TPopupMenu(Comp).Items.Count - 1 do
- begin
- TPopupMenu(Comp).OwnerDraw := Enable;
- ItrateMenu(TPopupMenu(Comp).Items[x]);
-
- end;
- end;
-
- {$IFDEF VER5U}
- if (Comp is TToolBar) and (xcToolBar in FUCXPSettings.XPControls) then
- if not (csDesigning in ComponentState) then
- begin
- if not TToolBar(Comp).Flat then
- TToolBar(Comp).Flat := true;
-
- if Enable then
- begin
- for x := 0 to TToolBar(Comp).ButtonCount - 1 do
- if (not assigned(TToolBar(Comp).OnCustomDrawButton))
- or (FUCXPSettings.OverrideOwnerDraw) then
- begin
- TToolBar(Comp).OnCustomDrawButton :=
- ToolBarDrawButton;
-
- end;
- end
- else
- begin
- if addr(TToolBar(Comp).OnCustomDrawButton) =
- addr(TUCXPStyle.ToolBarDrawButton) then
- TToolBar(Comp).OnCustomDrawButton := nil;
- end;
- if Update then
- TToolBar(Comp).Invalidate;
- end;
- {$ENDIF}
-
- if (Comp is TControlBar) and (xcControlBar in FUCXPSettings.XPControls) then
- if not (csDesigning in ComponentState) then
- begin
- if Enable then
- begin
- if (not assigned(TControlBar(Comp).OnBandPaint))
- or (FUCXPSettings.OverrideOwnerDraw) then
- begin
- TControlBar(Comp).OnBandPaint := ControlBarPaint;
- end;
- end
- else
- begin
- if addr(TControlBar(Comp).OnBandPaint) =
- addr(TUCXPStyle.ControlBarPaint) then
- TControlBar(Comp).OnBandPaint := nil;
- end;
- if Update then
- TControlBar(Comp).Invalidate;
- end;
-
- if not (csDesigning in ComponentState) then
- if {$IFDEF VER6U}
- ((Comp is TCustomCombo) and (xcCombo in FUCXPSettings.XPControls)) or
- ((Comp is TCustomLabeledEdit) and (xcEdit in FUCXPSettings.XPControls)) or
-
- {$ELSE}
- ((Comp is TCustomComboBox) and (xcCombo in FUCXPSettings.XPControls)) or
- {$ENDIF}
- ((Comp is TEdit) and (xcEdit in FUCXPSettings.XPControls)) or
- ((Comp.ClassName = 'TMaskEdit') and (xcMaskEdit in FUCXPSettings.XPControls)) or
- ((Comp.ClassName = 'TDBEdit') and (xcMaskEdit in FUCXPSettings.XPControls)) or
- ((Comp is TCustomMemo) and (xcMemo in FUCXPSettings.XPControls)) or
- ((Comp is TCustomRichEdit) and (xcRichEdit in FUCXPSettings.XPControls)) or
- ((Comp is TCustomCheckBox) and (xcCheckBox in FUCXPSettings.XPControls)) or
- ((Comp is TRadioButton) and (xcRadioButton in FUCXPSettings.XPControls)) or
- ((Comp.ClassName = 'TBitBtn') and (xcBitBtn in FUCXPSettings.XPControls)) or
- ((Comp.ClassName = 'TButton') and (xcButton in FUCXPSettings.XPControls)) or
- ((Comp.ClassName = 'TUpDown') and (xcUpDown in FUCXPSettings.XPControls)) or
- ((Comp is TSpeedButton) and (xcSpeedButton in FUCXPSettings.XPControls)) or
- ((Comp is TCustomPanel) and (xcPanel in FUCXPSettings.XPControls)) or
- ((Comp.ClassName = 'TDBNavigator') and (xcButton in FUCXPSettings.XPControls)) or
- ((Comp.ClassName = 'TDBLookupComboBox') and (xcButton in FUCXPSettings.XPControls)) or
- ((Comp is TCustomGroupBox) and (xcGroupBox in FUCXPSettings.XPControls)) or
- ((Comp is TCustomListBox) and (xcListBox in FUCXPSettings.XPControls)) or
- ((Comp is TCustomTreeView) and (xcTreeView in FUCXPSettings.XPControls)) or
- ((Comp is TCustomListView) and (xcListView in FUCXPSettings.XPControls)) or
- ((Comp is TProgressBar) and (xcProgressBar in FUCXPSettings.XPControls)) or
- ((Comp is TCustomHotKey) and (xcHotKey in FUCXPSettings.XPControls))
- then
- if ((TControl(Comp).Parent is TToolbar) and (xccToolBar in FUCXPSettings.XPContainers))or
- ((TControl(Comp).Parent is TCoolbar) and (xccCoolbar in FUCXPSettings.XPContainers)) or
- ((TControl(Comp).Parent is TCustomPanel) and (xccPanel in FUCXPSettings.XPContainers)) or
- ((TControl(Comp).Parent is TControlbar) and (xccControlbar in FUCXPSettings.XPContainers)) or
- ((TControl(Comp).Parent is TScrollBox) and (xccScrollBox in FUCXPSettings.XPContainers)) or
- ((TControl(Comp).Parent is TCustomGroupBox) and (xccGroupBox in FUCXPSettings.XPContainers)) or
- ((TControl(Comp).Parent is TTabSheet) and (xccTabSheet in FUCXPSettings.XPContainers)) or
- ((TControl(Comp).Parent is TTabControl) and (xccTabSheet in FUCXPSettings.XPContainers)) or
- ((TControl(Comp).Parent.ClassName = 'TdxTabSheet') and (xccTabSheet in FUCXPSettings.XPContainers)) or //DeveloperExpress
- ((TControl(Comp).Parent is TPageScroller) and (xccPageScroller in FUCXPSettings.XPContainers)) or
- {$IFDEF VER5U}
- ((TControl(Comp).Parent is TCustomFrame) and (xccFrame in FUCXPSettings.XPContainers)) or
- {$ENDIF}
- ((TControl(Comp).Parent.ClassName = 'TDBCtrlPanel') and (xccFrame in FUCXPSettings.XPContainers)) or
- ((TControl(Comp).Parent is TCustomForm) and (xccForm in FUCXPSettings.XPContainers))
-
-
- then
- begin
- if (Enable) and (Comp.Tag <> 999) and (TControl(Comp).Parent.Tag <> 999) then
- {skip if Control/Control.parent.tag = 999}
- with TControlSubClass.Create(Self) do
- begin
- Control := TControl(Comp);
- if Addr(Control.WindowProc) <> Addr(TControlSubClass.ControlSubClass) then
- begin
- orgWindowProc := Control.WindowProc;
- Control.WindowProc := ControlSubClass;
- end;
- FXPStyle := self;
-
- if (Control is TCustomEdit) then
- begin
- FCtl3D := TEdit(Control).Ctl3D;
- FBorderStyle := TRichEdit(Control).BorderStyle;
- end;
- if Control.ClassName = 'TDBLookupComboBox' then
- begin
- FCtl3D := TComboBox(Control).Ctl3D;
- end;
- if (Control is TCustomListBox) then
- begin
- FCtl3D := TListBox(Control).Ctl3D;
- FBorderStyle := TListBox(Control).BorderStyle;
- end;
- if (Control is TCustomListView) then begin
- FCtl3D := TListView(Control).Ctl3D;
- FBorderStyle := TListView(Control).BorderStyle;
- end;
- if (Control is TCustomTreeView) then begin
- FCtl3D := TTreeView(Control).Ctl3D;
- FBorderStyle := TTreeView(Control).BorderStyle;
- end;
-
- end;
-
- if Update then
- begin
- TControl(Comp).invalidate //in TControlSubClass.ControlSubClass
- end;
-
- end;
-
- // Recursive call for possible containers.
-
-
- // Do recursive call for RadioGroups
- if (((Comp is TCustomRadioGroup)) and (xccGroupBox in FUCXPSettings.XPContainers)) then
- self.InitItems(Comp as TWinControl, Enable, Update);
-
-
- if {$IFDEF VER5U}((Comp is TCustomFrame) and (xccFrame in FUCXPSettings.XPContainers))
- or {$ENDIF}(Comp.ClassName = 'TDBNavigator')
- or (Comp is TCustomForm) then //By Geir Wikran
- self.InitItems(Comp as TWinControl, Enable, Update);
-
-
-end;
-
-procedure TUCXPStyle.DrawItem(Sender: TObject; ACanvas: TCanvas; ARect: TRect;
- Selected: Boolean);
-begin
- try //"Steve Rice"
- if FActive then
- MenueDrawItem(Sender, ACanvas, ARect, Selected);
- except
- end;
-end;
-
-function TUCXPStyle.GetImageExtent(MenuItem: TMenuItem; FTopMenu: TMenu): TPoint;
-var
- HasImgLstBitmap: boolean;
- B: TBitmap;
-begin
- B := TBitmap.Create;
- try
- B.Width := 0;
- B.Height := 0;
- Result.x := 0;
- Result.Y := 0;
- HasImgLstBitmap := false;
-// +jt
- if Assigned(FTopMenu) then
- begin
- if FTopMenu.Images <> nil then
- if MenuItem.ImageIndex <> -1 then
- HasImgLstBitmap := true;
- end;
- if (MenuItem.Parent.GetParentMenu.Images <> nil)
- {$IFDEF VER5U}
- or (MenuItem.Parent.SubMenuImages <> nil)
- {$ENDIF}
- then
- begin
- if MenuItem.ImageIndex <> -1 then
- HasImgLstBitmap := true
- else
- HasImgLstBitmap := false;
- end;
-
- if HasImgLstBitmap then
- begin
- {$IFDEF VER5U}
- if MenuItem.Parent.SubMenuImages <> nil then
- MenuItem.Parent.SubMenuImages.GetBitmap(MenuItem.ImageIndex, B)
- else
- {$ENDIF}
- MenuItem.Parent.GetParentMenu.Images.GetBitmap(MenuItem.ImageIndex, B)
- end
- else
- if MenuItem.Bitmap.Width > 0 then
- B.Assign(TBitmap(MenuItem.Bitmap));
-
- Result.x := B.Width;
- Result.Y := B.Height;
-
- if not Assigned(FTopMenu) then // +jt
- if Result.x < FUCXPSettings.IconWidth then
- Result.x := FUCXPSettings.IconWidth;
- finally
- B.Free;
- end;
-end;
-
-procedure TUCXPStyle.MeasureItem(Sender: TObject; ACanvas: TCanvas;
- var Width, Height: Integer);
-var
- s: string;
- W, H: integer;
- P: TPoint;
- IsLine: boolean;
- FTopMenu: boolean; // +jt
- FMenu: TMenu; // +jt
- i: integer; // +jt
-begin
-
- FTopMenu:=false; //+jt
- if FActive then
- begin
- S := TMenuItem(Sender).Caption;
-
- if S = '-' then IsLine := true else IsLine := false;
- if IsLine then
- S := '';
-
- if Trim(ShortCutToText(TMenuItem(Sender).ShortCut)) <> '' then
- S := S + ShortCutToText(TMenuItem(Sender).ShortCut) + 'WWW';
-
- ACanvas.Font.Assign(FUCXPSettings.Font);
- W := ACanvas.TextWidth(s);
- Inc(W, 5);
- if pos('&', s) > 0 then
- W := W - ACanvas.TextWidth('&');
-
-// +jt
- FMenu := TMenuItem(Sender).Parent.GetParentMenu;
- if FMenu is TMainMenu then
- begin
- for i := 0 to TMenuItem(Sender).GetParentMenu.Items.Count - 1 do
- if TMenuItem(Sender).GetParentMenu.Items[i] = TMenuItem(Sender) then
- begin
- FTopMenu := True;
- break;
- end
- end;
- if not FTopMenu then FMenu := nil;
- if(not FTopMenu) and (TMenuItem(Sender).Count>0) then Inc(W,6); // +jt
-// +jt
-
- P := GetImageExtent(TMenuItem(Sender), FMenu); // +jt
- W := W + P.x ;
-
-
- if Width < W then
- Width := W;
-
- if IsLine then
- Height := 4
- else
- begin
- H := ACanvas.TextHeight(s) + Round(ACanvas.TextHeight(s) * 0.75);
- if P.y + 6 > H then
- H := P.y + 6;
-
- if Height < H then
- Height := H;
- end;
- end;
-
-end;
-
-procedure TUCXPStyle.MenueDrawItem(Sender: TObject; ACanvas: TCanvas; ARect: TRect;
- Selected: Boolean);
-var
- txt: string;
- B: TBitmap;
- IconRect, TextRect, CheckedRect: TRect;
- FillRect: TRect; // +jt
- i, X1, X2: integer;
- TextFormat: integer;
- HasImgLstBitmap: boolean;
- HasBitmap: boolean;
- FMenuItem: TMenuItem;
- FMenu: TMenu;
- FTopMenu: boolean;
- IsLine: boolean;
- ImgListHandle: HImageList; {Commctrl.pas}
- ImgIndex: integer;
- hWndM: HWND;
- hDcM: HDC;
- DrawTopMenuBorder: boolean;
- msg: TMSG; // +jt
- buff: TBitmap; // +jt
- OrigRect: TRect; // +jt
- OrigCanvas: TCanvas; // +jt
- FFontSettings: TFont;
-begin
-
-
- OrigCanvas:= nil;
-
- FTopMenu := false;
- FMenuItem := TMenuItem(Sender);
-
-// +jt
- B := TBitmap.Create;
- buff := TBitmap.Create;
- try
- origrect:= ARect;
- Dec(origrect.Left,4);
- origcanvas:=ACanvas;
- ARect.Right:=(ARect.Right-ARect.Left)+4;
- ARect.Bottom:=ARect.Bottom-ARect.Top;
- ARect.Left:=4;
- ARect.Top:=0;
- buff.Width := ARect.Right;
- buff.Height := ARect.Bottom;
- ACanvas:=buff.Canvas;
// +jt
- //SetGlobalColor(ACanvas);
-
- if FMenuItem.Caption = '-' then IsLine := true else IsLine := false;
-
- FMenu := FMenuItem.Parent.GetParentMenu;
-
- if FMenu is TMainMenu then
- for i := 0 to FMenuItem.GetParentMenu.Items.Count - 1 do
- if FMenuItem.GetParentMenu.Items[i] = FMenuItem then
- begin
- FTopMenu := True;
- // +jt
- ARect.Left:=0;
- Inc(origrect.Left,4);
- Dec(ARect.Right,4);
- buff.Width:=ARect.Right;
- Dec(ARect.Bottom,1);
// +jt
- break;
- end;
- if(FUCXPSettings.ColorsChanged) then SetGlobalColor(ACanvas); // +jt
-
- ACanvas.Font.Assign(FUCXPSettings.Font);
-
- Inc(ARect.Bottom, 1);
- TextRect := ARect;
- txt := ' ' + FMenuItem.Caption;
-
-// B := TBitmap.Create; //Leslie Cutting lesnes@absamail.co.za Jul 8 2003
- HasBitmap := false;
- HasImgLstBitmap := false;
-
-
- if (FMenuItem.Parent.GetParentMenu.Images <> nil)
- {$IFDEF VER5U}
- or (FMenuItem.Parent.SubMenuImages <> nil)
- {$ENDIF}
- then
- begin
- if FMenuItem.ImageIndex <> -1 then
- HasImgLstBitmap := true
- else
- HasImgLstBitmap := false;
- end;
-
- if FMenuItem.Bitmap.Width > 0 then
- HasBitmap := true;
-
- //-------
- if HasBitmap then
- begin
- B.Width := FMenuItem.Bitmap.Width;
- B.Height := FMenuItem.Bitmap.Height;
- // +jt
- //B.Canvas.Brush.Color := FTransparentColor; // ACanvas.Brush.Color;
- B.Canvas.Brush.Color := B.Canvas.Pixels[0, B.Height - 1];//"Todd Asher"
- B.Canvas.FillRect(Rect(0, 0, B.Width, B.Height));
- FMenuItem.Bitmap.Transparent := true;
- FMenuItem.Bitmap.TransparentMode := tmAuto;
- B.Canvas.Draw(0,0,FMenuItem.Bitmap);
// +jt
- end;
-
-
- if HasImgLstBitmap then
- begin
- {$IFDEF VER5U}
- if FMenuItem.Parent.SubMenuImages <> nil then
- begin
- ImgListHandle := FMenuItem.Parent.SubMenuImages.Handle;
- ImgIndex := FMenuItem.ImageIndex;
-
- B.Width := FMenuItem.Parent.SubMenuImages.Width;
- B.Height := FMenuItem.Parent.SubMenuImages.Height;
- // B.Canvas.Brush.Color := FTransparentColor; // ACanvas.Brush.Color; // +jt
- B.Canvas.Brush.Color := B.Canvas.Pixels[0, B.Height - 1];//"Todd Asher"
- B.Canvas.FillRect(Rect(0, 0, B.Width, B.Height));
- ImageList_DrawEx(ImgListHandle, ImgIndex,
- B.Canvas.Handle, 0, 0, 0, 0, clNone, clNone, ILD_Transparent);
-
- end
- else
- {$ENDIF}
- if FMenuItem.Parent.GetParentMenu.Images <> nil then
- begin
- ImgListHandle := FMenuItem.Parent.GetParentMenu.Images.Handle;
- ImgIndex := FMenuItem.ImageIndex;
-
- B.Width := FMenuItem.Parent.GetParentMenu.Images.Width;
- B.Height := FMenuItem.Parent.GetParentMenu.Images.Height;
- //B.Canvas.Brush.Color := FTransparentColor; //ACanvas.Pixels[2,2]; // +jt
- B.Canvas.Brush.Color := B.Canvas.Pixels[0, B.Height - 1];//"Todd Asher"
- B.Canvas.FillRect(Rect(0, 0, B.Width, B.Height));
- ImageList_DrawEx(ImgListHandle, ImgIndex,
- B.Canvas.Handle, 0, 0, 0, 0, clNone, clNone, ILD_Transparent);
-
- end;
-
- end;
-
- //-----
-
- if FMenu.IsRightToLeft then
- begin
- X1 := ARect.Right - FUCXPSettings.IconWidth;
- X2 := ARect.Right;
- end
- else
- begin
- X1 := ARect.Left;
- X2 := ARect.Left + FUCXPSettings.IconWidth;
- end;
- IconRect := Rect(X1, ARect.Top, X2, ARect.Bottom);
-
-
- if HasImgLstBitmap or HasBitmap then
- begin
- CheckedRect := IconRect;
- Inc(CheckedRect.Left, 1);
- Inc(CheckedRect.Top, 2);
- Dec(CheckedRect.Right, 3);
- Dec(CheckedRect.Bottom, 2);
- end
- else
- begin
- CheckedRect.Left := IconRect.Left +
- (IConRect.Right - IconRect.Left - 10) div 2;
- CheckedRect.Top := IconRect.Top +
- (IConRect.Bottom - IconRect.Top - 10) div 2;
- CheckedRect.Right := CheckedRect.Left + 10;
- CheckedRect.Bottom := CheckedRect.Top + 10;
- end;
-
- if B.Width > FUCXPSettings.IconWidth then
- if FMenu.IsRightToLeft then
- CheckedRect.Left := CheckedRect.Right - B.Width
- else
- CheckedRect.Right := CheckedRect.Left + B.Width;
-
- if FTopMenu then Dec(CheckedRect.Top, 1);
-
-
- if FMenu.IsRightToLeft then
- begin
- X1 := ARect.Left;
- if not FTopMenu then
- Dec(X2, FUCXPSettings.IconWidth)
- else
- Dec(X2, 4);
- if (ARect.Right - B.Width) < X2 then
- X2 := ARect.Right - B.Width - 8;
- end
- else
- begin
- X1 := ARect.Left ;
- if not FTopMenu then
- Inc(X1, FUCXPSettings.IconWidth)
- else
- Inc(X1, 4);
-
- if (ARect.Left + B.Width) > X1 then
- X1 := ARect.Left + B.Width + 4;
- X2 := ARect.Right;
- end;
-
- TextRect := Rect(X1, ARect.Top, X2, ARect.Bottom);
- // +jt
- FillRect := ARect;
- Dec(FillRect.Left,4);
// +jt
-
- if FTopMenu then
- begin
- if not (HasImgLstBitmap or HasBitmap) then
- begin
- TextRect := ARect;
- end
- else
- begin
- if FMenu.IsRightToLeft then
- TextRect.Right := TextRect.Right + 5
- else
- TextRect.Left := TextRect.Left - 5;
- end
-
- end;
-
- if FTopMenu then
- begin
- if FUCXPSettings.DrawMenuBar then
- FFMenuBarColor := FUCXPSettings.MenuBarColor;
- ACanvas.brush.color := FFMenuBarColor;
- ACanvas.Pen.Color := FFMenuBarColor;
- // Inc(ARect.Bottom, 2);
- ACanvas.FillRect(ARect);
-
- //--
- if FUCXPSettings.DrawMenuBar then
- begin
- if FMenuItem.GetParentMenu.Items[FMenuItem.GetParentMenu.Items.Count-1] =
- FMenuItem then
- begin
- if FMenu.IsRightToLeft then
- ACanvas.Rectangle(3, ARect.Top, ARect.Right, ARect.Bottom)
- else
- ACanvas.Rectangle(ARect.Left, ARect.Top, TScrollingWinControl(FMenu.Owner).ClientWidth+5{FForm.ClientWidth+5},
- ARect.Bottom);
- end
- else
- if FMenu.IsRightToLeft then
- ACanvas.Rectangle(ARect.Left, ARect.Top, ARect.Right+7, ARect.Bottom);
- end;
- //--
- end
- else
- begin
- if (Is16Bit and FUCXPSettings.Gradient) then
- begin
- inc(ARect.Right,2); //needed for RightToLeft
- DrawGradient(ACanvas, ARect, FMenu.IsRightToLeft);
- Dec(ARect.Right,2);
-
- end
- else
- begin
- ACanvas.brush.color := FFColor;
- ACanvas.FillRect(FillRect); // +jt
- ACanvas.brush.color := FFIconBackColor;
- ACanvas.FillRect(IconRect);
- end;
-
-
- //------------
- end;
-
-
- if FMenuItem.Enabled then
- ACanvas.Font.Color := FUCXPSettings.Font.Color
- else
- ACanvas.Font.Color := FUCXPSettings.DisabledColor;
-
- DrawTopMenuBorder := false;
- if Selected and FUCXPSettings.DrawSelect then
- begin
- ACanvas.brush.Style := bsSolid;
- if FTopMenu then
- begin
- DrawTopMenuItem(FMenuItem, ACanvas, ARect, FUCXPSettings.MenuBarColor, FMenu.IsRightToLeft);
- end
- else
- if FMenuItem.Enabled then
- begin
- Inc(ARect.Top, 1);
- Dec(ARect.Bottom, 1);
- if FUCXPSettings.FlatMenu then
- Dec(ARect.Right, 1);
- ACanvas.brush.color := FFSelectColor;
- ACanvas.FillRect(ARect);
- ACanvas.Pen.color := FFSelectBorderColor;
- ACanvas.Brush.Style := bsClear;
- ACanvas.RoundRect(Arect.Left, Arect.top, Arect.Right, Arect.Bottom, 0, 0);
- Dec(ARect.Top, 1);
- Inc(ARect.Bottom, 1);
- if FUCXPSettings.FlatMenu then
- Inc(ARect.Right, 1);
- end;
- DrawTopMenuBorder := true;
- end
-
- // Draw the menubar in XP Style when hovering over an main menu item
- else
- begin
- //if FMenuItem.Enabled and FTopMenu and IsMouseInRect( TScrollingWinControl(FMenu.Owner), ARect) then
- if FMenuItem.Enabled and FTopMenu and IsWNT and
- IsMouseInRect( TScrollingWinControl(FMenu.Owner), origrect) then // +jt
- begin
- ACanvas.brush.Style := bsSolid;
- ACanvas.brush.color := FFSelectColor;
- DrawTopMenuBorder := true;
- ACanvas.Pen.color := FFSelectBorderColor;
- ACanvas.Rectangle(ARect.Left, ARect.Top, ARect.Right - 7, ARect.Bottom);
- end;
- end;
-
-
- if (FMenuItem.Checked) or (FMenuItem.RadioItem ) then //x
- DrawCheckedItem(FMenuItem, Selected, FMenuItem.Enabled, HasImgLstBitmap or HasBitmap,
- ACanvas, CheckedRect);
-
- if (B <> nil) and (B.Width > 0) then // X
- DrawIcon(FMenuItem, ACanvas, B, IconRect,
- Selected or DrawTopMenuBorder, False, FMenuItem.Enabled, FMenuItem.Checked,
- FTopMenu, FMenu.IsRightToLeft);
-
-
-
- if not IsLine then
- begin
-
- if FMenu.IsRightToLeft then
- begin
- TextFormat := DT_RIGHT + DT_RTLREADING;
- Dec(TextRect.Right, 3);
- end
- else
- begin
- TextFormat := 0;
- Inc(TextRect.Left, 3);
- end;
- TextRect.Top := TextRect.Top +
- ((TextRect.Bottom - TextRect.Top) - ACanvas.TextHeight('W')) div 2;
- FFontSettings := FUCXPSettings.Font;
- DrawTheText(FMenuItem, txt, ShortCutToText(FMenuItem.ShortCut),
- ACanvas, TextRect,
- Selected, FMenuItem.Enabled, FMenuItem.Default,
- FTopMenu, FMenu.IsRightToLeft, FFontSettings, TextFormat);
- FUCXPSettings.Font := FFontSettings;
- end
- else
- begin
- if FMenu.IsRightToLeft then
- begin
- X1 := TextRect.Left;
- X2 := TextRect.Right - 7;
- end
- else
- begin
- X1 := TextRect.Left + 7;
- X2 := TextRect.Right;
- end;
-
- ACanvas.Pen.Color := FFSeparatorColor;
- ACanvas.MoveTo(X1,
- TextRect.Top +
- Round((TextRect.Bottom - TextRect.Top) / 2));
- ACanvas.LineTo(X2,
- TextRect.Top +
- Round((TextRect.Bottom - TextRect.Top) / 2))
- end;
-
- // +jt
- BitBlt(origcanvas.Handle,origrect.Left,origrect.Top,buff.Width,buff.Height,ACanvas.Handle,0,0,SRCCOPY);
- finally
- B.free;
- buff.free;
- ACanvas := OrigCanvas;
- ARect:=origrect;
- end;
// +jt
- if not (csDesigning in ComponentState) then
- begin
- if (FUCXPSettings.FlatMenu) and (not FTopMenu) then
- begin
- hDcM := ACanvas.Handle;
- hWndM := WindowFromDC(hDcM);
-// +jt
- if (hWndM=0) and (Application.Handle<>0) then
- begin
- if not PeekMessage(msg,Application.Handle,WM_DRAWMENUBORDER,WM_DRAWMENUBORDER2,PM_NOREMOVE) then
- PostMessage(Application.Handle,WM_DRAWMENUBORDER,0,Integer(FMenuItem));
- end
- else
- if hWndM <> FForm.Handle then
- begin
- if not PeekMessage(msg,Application.Handle,WM_DRAWMENUBORDER,WM_DRAWMENUBORDER2,PM_NOREMOVE) then
- PostMessage(Application.Handle,WM_DRAWMENUBORDER2,integer(FMenu.IsRightToLeft),Integer(hWndM));
- end;
- end;
- end;
-
-//-----
-
-end;
-
-{$IFDEF VER5U}
-procedure TUCXPStyle.ToolBarDrawButton(Sender: TToolBar;
- Button: TToolButton; State: TCustomDrawState; var DefaultDraw: Boolean);
-
-var
- ACanvas: TCanvas;
-
- ARect, HoldRect: TRect;
- B: TBitmap;
- HasBitmap: boolean;
- {Sylvain ...}
- HasHotBitMap : Boolean;
- HasDisBitMap : Boolean;
- ImglstHand : THandle;
- CanDraw : Boolean;
- {... Sylvain}
- BitmapWidth: integer;
- TextFormat: integer;
- XButton: TToolButton;
- HasBorder: boolean;
- HasBkg: boolean;
- IsTransparent: boolean;
- FBSelectColor: TColor;
- FFontSettings: TFont; {fduenas}
- procedure DrawBorder;
- var
- BRect, WRect: TRect;
- procedure DrawRect;
- begin
- ACanvas.Pen.color := FFSelectBorderColor;
- ACanvas.MoveTo(WRect.Left, WRect.Top);
- ACanvas.LineTo(WRect.Right, WRect.Top);
- ACanvas.LineTo(WRect.Right, WRect.Bottom);
- ACanvas.LineTo(WRect.Left, WRect.Bottom);
- ACanvas.LineTo(WRect.Left, WRect.Top);
- end;
-
- begin
- BRect := HoldRect;
- Dec(BRect.Bottom, 1);
- Inc(BRect.Top, 1);
- Dec(BRect.Right, 1);
-
- WRect := BRect;
- if Button.Style = tbsDropDown then
- begin
- Dec(WRect.Right, 13);
- DrawRect;
-
- WRect := BRect;
- Inc(WRect.Left, WRect.Right - WRect.Left - 13);
- DrawRect;
- end
- else
- begin
-
- DrawRect;
- end;
- end;
-
-begin
-
- B := nil;
-
- {Added By Sylvain ...}
- HasHotBitmap := (Sender.HotImages <> nil) and
- (Button.ImageIndex <> -1) and
- (Button.ImageIndex <= Sender.HotImages.Count - 1);
-
-
- HasDisBitmap := (Sender.DisabledImages <> nil) and
- (Button.ImageIndex <> -1) and
- (Button.ImageIndex <= Sender.DisabledImages.Count - 1);
- {...Sylvain}
-
- HasBitmap := (Sender.Images <> nil) and
- (Button.ImageIndex <> -1) and
- (Button.ImageIndex <= Sender.Images.Count - 1);
-
-
- IsTransparent := Sender.Transparent;
-
- ACanvas := Sender.Canvas;
-
- //SetGlobalColor(ACanvas);
- if (FUCXPSettings.ColorsChanged) then SetGlobalColor(ACanvas); // +jt
-
- if (Is16Bit) and (not FUCXPSettings.UseSystemColors) then
- FBSelectColor := NewColor(ACanvas, FUCXPSettings.SelectColor, 68)
- else
- FBSelectColor := FFSelectColor;
-
-
- HoldRect := Button.BoundsRect;
-
- ARect := HoldRect;
-
- if Is16Bit then
- ACanvas.brush.color := NewColor(ACanvas, Sender.Color, 16)
- else
- ACanvas.brush.color := Sender.Color;
-
- if not IsTransparent then
- ACanvas.FillRect(ARect);
-
- HasBorder := false;
- HasBkg := false;
-
- if (cdsHot in State) then
- begin
- if (cdsChecked in State) or (Button.Down) or (cdsSelected in State) then
- ACanvas.Brush.Color := FCheckedAreaSelectColor
- else
- ACanvas.brush.color := FBSelectColor;
- HasBorder := true;
- HasBkg := true;
- end;
-
- if ((cdsChecked in State) and not (cdsHot in State)) then
- begin
- ACanvas.Brush.Color := FCheckedAreaColor;
- HasBorder := true;
- HasBkg := true;
- end;
-
- if (cdsIndeterminate in State) and not (cdsHot in State) then
- begin
- ACanvas.Brush.Color := FBSelectColor;
- HasBkg := true;
- end;
-
-
- if (Button.MenuItem <> nil) and (State = []) then
- begin
- ACanvas.brush.color := Sender.Color;
- if not IsTransparent then
- HasBkg := true;
- end;
-
-
- Inc(ARect.Top, 1);
-
-
-
- if HasBkg then
- ACanvas.FillRect(ARect);
-
- if HasBorder then
- DrawBorder;
-
-
- if ((Button.MenuItem <> nil) or (Button.DropdownMenu <> nil))
- and (cdsSelected in State) then
- begin
- DrawTopMenuItem(Button, ACanvas, ARect, Sender.Color ,false);
- DefaultDraw := false;
- end;
-
- ARect := HoldRect;
- DefaultDraw := false;
-
-
- if Button.Style = tbsDropDown then
- begin
- ACanvas.Pen.Color := clBlack;
- DrawArrow(ACanvas, (ARect.Right - 14) + ((14 - 5) div 2),
- ARect.Top + ((ARect.Bottom - ARect.Top - 3) div 2) + 1);
- end;
-
- BitmapWidth := 0;
-{ Rem by Sylvain ...
- if HasBitmap then
- begin
-... Sylvain}
- try
- B := TBitmap.Create;
- CanDraw := False;
- ImglstHand:=0;
- if (cdsHot in State) AND HasHotBitmap then
- begin
- B.Width := Sender.HotImages.Width;
- B.Height := Sender.HotImages.Height;
- ImglstHand := Sender.HotImages.Handle;
- CanDraw := True;
- end
- else if (cdsDisabled in State) and HasDisBitmap then
- begin
- B.Width := Sender.DisabledImages.Width;
- B.Height := Sender.DisabledImages.Height;
- ImglstHand := Sender.DisabledImages.Handle;
- CanDraw := True;
- end
- else if HasBitMap then
- begin
- B.Width := Sender.Images.Width;
- B.Height := Sender.Images.Height;
- ImglstHand := Sender.Images.Handle;
- CanDraw := True;
- end;
- if CanDraw then
- begin {CanDraw}
- // B.Canvas.Brush.Color := TransparentColor; // ACanvas.Brush.Color; // +jt
- B.Canvas.Brush.Color := B.Canvas.Pixels[0, B.Height - 1];//"Todd Asher"
- B.Canvas.FillRect(Rect(0, 0, B.Width, B.Height));
- ImageList_DrawEx(ImglstHand, Button.ImageIndex,
- B.Canvas.Handle, 0, 0, 0, 0, clNone, clNone, ILD_Transparent);
-
- BitmapWidth := b.Width;
-
- if Button.Style = tbsDropDown then
- Dec(ARect.Right, 12);
-
-
- if TToolBar(Button.Parent).List then
- begin
-
- if Button.BiDiMode = bdRightToLeft then
- begin
- Dec(ARect.Right, 3);
- ARect.Left := ARect.Right - BitmapWidth;
-
- end
- else
- begin
- Inc(ARect.Left, 3);
- ARect.Right := ARect.Left + BitmapWidth
- end
-
-
- end
- else
- ARect.Left := Round(ARect.Left + (ARect.Right - ARect.Left - B.Width)/2);
-
- inc(ARect.Top, 2);
- ARect.Bottom := ARect.Top + B.Height + 6;
-
- DrawIcon(Button, ACanvas, B, ARect, (cdsHot in State),
- (cdsSelected in State), Button.Enabled, (cdsChecked in State), false,
- false);
-
- end; {CanDraw}
- finally
- B.Free;
- end;
- ARect := HoldRect;
- DefaultDraw := false;
-{rem by sylvain ...
- end;
-...Sylvain}
-//-----------
-
- if Sender.ShowCaptions then
- begin
-
- if Button.Style = tbsDropDown then
- Dec(ARect.Right, 12);
-
-
- if not TToolBar(Button.Parent).List then
- begin
- TextFormat := DT_Center;
-
- ARect.Top := ARect.Bottom - ACanvas.TextHeight(Button.Caption) - 6;
- end
- else
- begin
- TextFormat := DT_VCENTER;
- if Button.BiDiMode = bdRightToLeft then
- begin
- TextFormat := TextFormat + DT_Right;
- Dec(ARect.Right, BitmapWidth + 7);
- end
- else
- begin
- if BitmapWidth > 0 then //"Dan Downs"
- if Sender.List then //Michaël Moreno
- Inc(ARect.Left, BitmapWidth + 6)
- else
- Inc(ARect.Left, BitmapWidth);
- end
-
- end;
-
- if (Button.MenuItem <> nil) then
- begin
- TextFormat := DT_Center;
- //Inc(ARect.Left, 1);
- end;
-
- if Button.BiDiMode = bdRightToLeft then
- TextFormat := TextFormat + DT_RTLREADING;
-
- if Button.Down and not Button.Enabled then //"felix" 23/5
- InflateRect(ARect, -1, -1);
-
- {alexs alexs75@hotbox.ru}
- ARect.Top := ARect.Top + ((ARect.Bottom - ARect.Top) - ACanvas.TextHeight('W')) div 2;
- FFontSettings := FUCXPSettings.Font;
- DrawTheText(Button, Button.Caption, '',
- ACanvas, ARect,
- (cdsSelected in State), Button.Enabled, false,
- (Button.MenuItem <> nil),
- (Button.BidiMode = bdRightToLeft), FFontSettings, TextFormat);
- FUCXPSettings.Font := FFontSettings;
- ARect := HoldRect;
- DefaultDraw := false;
- end;
-
-
- if Button.Index > 0 then
- begin
- XButton := {TToolBar(Button.Parent)}Sender.Buttons[Button.Index - 1];
- if (XButton.Style = tbsDivider) or (XButton.Style = tbsSeparator) then
- begin
- ARect := XButton.BoundsRect;
- if Is16Bit then
- ACanvas.brush.color := NewColor(ACanvas, Sender.Color, 16)
- else
- ACanvas.brush.color := Sender.Color;
-
- if not IsTransparent then
- ACanvas.FillRect(ARect);
- // if (XButton.Style = tbsDivider) then // Can't get it.
- if XButton.Tag > 0 then
- begin
- Inc(ARect.Top, 2);
- Dec(ARect.Bottom, 1);
-
- ACanvas.Pen.color := GetShadeColor(ACanvas,Sender.Color,30);
- ARect.Left := ARect.Left + (ARect.Right - ARect.Left) div 2;
- ACanvas.MoveTo(ARect.Left, ARect.Top);
- ACanvas.LineTo(ARect.Left, ARect.Bottom);
-
- end;
- ARect := Button.BoundsRect;
- DefaultDraw := false;
- end;
-
- end;
-
- {if Button.MenuItem <> nil then
- if (xcMainMenu in UCXPControls) then
- ActivateMenuItem(Button.MenuItem);}
-end;
-{$ENDIF}
-
-// Controlbar Paint. Added by Michiel van Oudheusden (27 sep 2001)
-// Paints the bands of a controlbar like the office XP style
-procedure TUCXPStyle.ControlBarPaint(Sender: TObject; Control: TControl;
- Canvas: TCanvas; var ARect: TRect; var Options: TBandPaintOptions);
-var
- i: Integer;
- intInc: integer;
-begin
-
- if(FUCXPSettings.ColorsChanged) then SetGlobalColor(Canvas); // +jt
- // No frame and grabber drawing. We do it ourselfes
- Options := [];
-
- // First background
-
- if Is16Bit then
- Canvas.brush.color := NewColor(Canvas, TControlBar(Sender).Color , 6)
- else
- Canvas.brush.color := TControlBar(Sender).Color;
-
- Canvas.FillRect(ARect);
-
- intInc := 30;
- for i := (ARect.Top + 5) to (ARect.Bottom - 5)do
- begin
- Canvas.Pen.Color := GetShadeColor(Canvas, TControlBar(Sender).Color, intInc);
- if i mod 2 = 0 then
- begin
- Canvas.MoveTo(ARect.Left + 3, i);
- Canvas.LineTo(ARect.Left + 6, i);
- Inc(intInc, 7);
- end;
- end;
-
-end;
-
-procedure TUCXPStyle.SetGlobalColor(ACanvas: TCanvas);
-begin
-//-----
- FUCXPSettings.ColorsChanged:=false; // +jt
-
- if GetDeviceCaps(ACanvas.Handle, BITSPIXEL) < 16 then
- Is16Bit := false
- else
- Is16Bit := true;
-
-
- FDimParentColor := 16;
- FDimParentColorSelect := 40;
-
- FFColor := FUCXPSettings.Color;
- FFIconBackColor := FUCXPSettings.IconBackColor;
-
- if Is16Bit then
- begin
- if FUCXPSettings.UseDimColor then
- begin
- FFSelectColor := NewColor(ACanvas, FUCXPSettings.SelectColor, 68);
- FCheckedAreaColor := NewColor(ACanvas, FUCXPSettings.SelectColor, 80);
- FCheckedAreaSelectColor := NewColor(ACanvas, FUCXPSettings.SelectColor, 50);
- end
- else
- begin
- FFSelectColor := FUCXPSettings.SelectColor;
- FCheckedAreaColor := FUCXPSettings.SelectColor;
- FCheckedAreaSelectColor := FUCXPSettings.SelectColor;
- end;
-
- FMenuBorderColor := GetShadeColor(ACanvas, clBtnFace, 90);
- FMenuShadowColor := GetShadeColor(ACanvas, clBtnFace, 76);
- end
- else
- begin
- FFSelectColor := FUCXPSettings.SelectColor;
- FCheckedAreaColor := clWhite;
- FCheckedAreaSelectColor := clSilver;
- FMenuBorderColor := clBtnShadow;
- FMenuShadowColor := clBtnShadow;
- end;
-
- FFSelectBorderColor := FUCXPSettings.SelectBorderColor;
- FFSelectFontColor := FUCXPSettings.SelectFontColor;
- FFMenuBarColor := FUCXPSettings.MenuBarColor;
- FFDisabledColor := FUCXPSettings.DisabledColor;
- FFCheckedColor := FUCXPSettings.CheckedColor;
- FFSeparatorColor := FUCXPSettings.SeparatorColor;
-
-
-
- if FUCXPSettings.UseSystemColors then
- begin
-// GetSystemMenuFont(FUCXPSettings.Font);
- FFSelectFontColor := FUCXPSettings.Font.Color;
- if not Is16Bit then
- begin
- FFColor := clWhite;
- FFIconBackColor := clBtnFace;
- FFSelectColor := clWhite;
- FFSelectBorderColor := clHighlight;
- FFMenuBarColor := FFIconBackColor;
- FFDisabledColor := clBtnShadow;
- FFCheckedColor := clHighlight;
- FFSeparatorColor := clBtnShadow;
- FCheckedAreaColor := clWhite;
- FCheckedAreaSelectColor := clWhite;
-
- end
- else
- begin
- FFColor := NewColor(ACanvas, clBtnFace, 86);
- FFIconBackColor := NewColor(ACanvas, clBtnFace, 16);
- FFSelectColor := NewColor(ACanvas, clHighlight, 68);
- FFSelectBorderColor := clHighlight;
- FFMenuBarColor := clBtnFace;
-
- FFDisabledColor := NewColor(ACanvas, clBtnShadow, 10);
- FFSeparatorColor := NewColor(ACanvas, clBtnShadow, 25);
- FFCheckedColor := clHighlight;
- FCheckedAreaColor := NewColor(ACanvas, clHighlight, 80);
- FCheckedAreaSelectColor := NewColor(ACanvas, clHighlight, 50);
-
- end;
- end;
-
-end;
-
-procedure TUCXPStyle.DrawTopMenuItem(Sender: TObject; ACanvas: TCanvas;
- ARect: TRect; BckColor:Tcolor; IsRightToLeft: boolean);
-var
- X1, X2: integer;
- DefColor, HoldColor: TColor;
-begin
- X1 := ARect.Left;
- X2 := ARect.Right;
-
-
- ACanvas.brush.Style := bsSolid;
- ACanvas.brush.color := FFSelectColor;
-
- ACanvas.FillRect(ARect);
- ACanvas.Pen.Color := FFSelectBorderColor;
-
- if (not IsRightToLeft) and (Is16Bit) and (Sender is TMenuItem) then
- begin
- ACanvas.MoveTo(X1, ARect.Bottom - 1);
- ACanvas.LineTo(X1, ARect.Top);
- ACanvas.LineTo(X2 - 8, ARect.Top);
- ACanvas.LineTo(X2 - 8, ARect.Bottom);
-// ACanvas.LineTo(X1, ARect.Bottom);
-
- DefColor := FFMenuBarColor;
-
-
- HoldColor := GetShadeColor(ACanvas, DefColor, 10);
- ACanvas.Brush.Style := bsSolid;
- ACanvas.Brush.Color := HoldColor;
- ACanvas.Pen.Color := HoldColor;
-
- ACanvas.FillRect(Rect(X2 - 7, ARect.Top, X2, ARect.Bottom));
-
- HoldColor := GetShadeColor(ACanvas, DefColor, 30);
- ACanvas.Brush.Color := HoldColor;
- ACanvas.Pen.Color := HoldColor;
- ACanvas.FillRect(Rect(X2 - 7, ARect.Top + 3, X2 - 2, ARect.Bottom));
-
- HoldColor := GetShadeColor(ACanvas, DefColor, 40 + 20);
- ACanvas.Brush.Color := HoldColor;
- ACanvas.Pen.Color := HoldColor;
- ACanvas.FillRect(Rect(X2 - 7, ARect.Top + 5, X2 - 3, ARect.Bottom));
-
- HoldColor := GetShadeColor(ACanvas, DefColor, 60 + 40);
- ACanvas.Brush.Color := HoldColor;
- ACanvas.Pen.Color := HoldColor;
- ACanvas.FillRect(Rect(X2 - 7, ARect.Top + 6, X2 - 5, ARect.Bottom));
-
- //---
-
- ACanvas.Pen.Color := DefColor;
- ACanvas.MoveTo(X2 - 5, ARect.Top + 1);
- ACanvas.LineTo(X2 - 1, ARect.Top + 1);
- ACanvas.LineTo(X2 - 1, ARect.Top + 6);
-
- ACanvas.MoveTo(X2 - 3, ARect.Top + 2);
- ACanvas.LineTo(X2 - 2, ARect.Top + 2);
- ACanvas.LineTo(X2 - 2, ARect.Top + 3);
- ACanvas.LineTo(X2 - 3, ARect.Top + 3);
-
-
-
- ACanvas.Pen.Color := GetShadeColor(ACanvas, DefColor, 10);
- ACanvas.MoveTo(X2 - 6, ARect.Top + 3);
- ACanvas.LineTo(X2 - 3, ARect.Top + 3);
- ACanvas.LineTo(X2 - 3, ARect.Top + 6);
- ACanvas.LineTo(X2 - 4, ARect.Top + 6);
- ACanvas.LineTo(X2 - 4, ARect.Top + 3);
-
- ACanvas.Pen.Color := GetShadeColor(ACanvas, DefColor, 30);
- ACanvas.MoveTo(X2 - 5, ARect.Top + 5);
- ACanvas.LineTo(X2 - 4, ARect.Top + 5);
- ACanvas.LineTo(X2 - 4, ARect.Top + 9);
-
- ACanvas.Pen.Color := GetShadeColor(ACanvas, DefColor, 40);
- ACanvas.MoveTo(X2 - 6, ARect.Top + 5);
- ACanvas.LineTo(X2 - 6, ARect.Top + 7);
-
- end
- else
- begin
-
- ACanvas.Pen.Color := FFSelectBorderColor;
- ACanvas.Brush.Color := GetShadeColor(ACanvas, BckColor, 70);
-
- ACanvas.MoveTo(X1, ARect.Bottom - 1);
- ACanvas.LineTo(X1, ARect.Top);
- ACanvas.LineTo(X2 - 3, ARect.Top);
- ACanvas.LineTo(X2 - 3, ARect.Bottom);
-
-
- ACanvas.Pen.Color := ACanvas.Brush.Color;
- ACanvas.FillRect(Rect(X2 - 2, ARect.Top + 2, X2, ARect.Bottom));
-
- ACanvas.Brush.Color := BckColor;
- ACanvas.FillRect(Rect(X2 - 2, ARect.Top , X2, ARect.Top + 2));
-
-
- end;
-
-end;
-
-
-procedure TUCXPStyle.DrawCheckedItem(FMenuItem: TMenuItem; Selected, Enabled,
- HasImgLstBitmap: boolean; ACanvas: TCanvas; CheckedRect: TRect);
-var
- X1, X2: integer;
-begin
- if FMenuItem.RadioItem then
- begin
- if FMenuItem.Checked then
- begin
- if Enabled then
- begin
- ACanvas.Pen.color := FFSelectBorderColor;
- if selected then
- ACanvas.Brush.Color := FCheckedAreaSelectColor
- else
- ACanvas.Brush.Color := FCheckedAreaColor;
- end
- else
- ACanvas.Pen.color := FFDisabledColor;
-
- ACanvas.Brush.Style := bsSolid;
- if HasImgLstBitmap then
- begin
- ACanvas.RoundRect(CheckedRect.Left, CheckedRect.Top,
- CheckedRect.Right, CheckedRect.Bottom,
- 6, 6);
- end
- else
- begin
- ACanvas.Ellipse(CheckedRect.Left, CheckedRect.Top,
- CheckedRect.Right, CheckedRect.Bottom);
-// +jt
- InflateRect(CheckedRect, -2, -2);
- ACanvas.Brush.color := ACanvas.Pen.Color;
- ACanvas.Ellipse(CheckedRect.Left, CheckedRect.Top,
- CheckedRect.Right, CheckedRect.Bottom);
// +jt
- end;
- end;
- end
- else
- begin
- if (FMenuItem.Checked) then
- if (not HasImgLstBitmap) then
- begin
- if Enabled then
- begin
- ACanvas.Pen.color := FFCheckedColor;
- if selected then
- ACanvas.Brush.Color := FCheckedAreaSelectColor
- else
- ACanvas.Brush.Color := FCheckedAreaColor; ;
- end
- else
- ACanvas.Pen.color := FFDisabledColor;
-
- ACanvas.Brush.Style := bsSolid;
- ACanvas.Rectangle(CheckedRect.Left, CheckedRect.Top,
- CheckedRect.Right, CheckedRect.Bottom);
- if Enabled then
- ACanvas.Pen.color := clBlack
- else
- ACanvas.Pen.color := FFDisabledColor;
- x1 := CheckedRect.Left + 1;
- x2 := CheckedRect.Top + 5;
- ACanvas.MoveTo(x1, x2);
-
- x1 := CheckedRect.Left + 4;
- x2 := CheckedRect.Bottom - 2;
- ACanvas.LineTo(x1, x2);
- //--
- x1 := CheckedRect.Left + 2;
- x2 := CheckedRect.Top + 5;
- ACanvas.MoveTo(x1, x2);
-
- x1 := CheckedRect.Left + 4;
- x2 := CheckedRect.Bottom - 3;
- ACanvas.LineTo(x1, x2);
- //--
- x1 := CheckedRect.Left + 2;
- x2 := CheckedRect.Top + 4;
- ACanvas.MoveTo(x1, x2);
-
- x1 := CheckedRect.Left + 5;
- x2 := CheckedRect.Bottom - 3;
- ACanvas.LineTo(x1, x2);
- //-----------------
-
- x1 := CheckedRect.Left + 4;
- x2 := CheckedRect.Bottom - 3;
- ACanvas.MoveTo(x1, x2);
-
- x1 := CheckedRect.Right + 2;
- x2 := CheckedRect.Top - 1;
- ACanvas.LineTo(x1, x2);
- //--
- x1 := CheckedRect.Left + 4;
- x2 := CheckedRect.Bottom - 2;
- ACanvas.MoveTo(x1, x2);
-
- x1 := CheckedRect.Right - 2;
- x2 := CheckedRect.Top + 3;
- ACanvas.LineTo(x1, x2);
-
- end
- else
- begin
-
-
- if Enabled then
- begin
- ACanvas.Pen.color := FFSelectBorderColor;
- if selected then
- ACanvas.Brush.Color := FCheckedAreaSelectColor
- else
- ACanvas.Brush.Color := FCheckedAreaColor; ;
- end
- else
- ACanvas.Pen.color := FFDisabledColor;
-
- ACanvas.Brush.Style := bsSolid;
- ACanvas.Rectangle(CheckedRect.Left, CheckedRect.Top,
- CheckedRect.Right, CheckedRect.Bottom);
- end;
- end;
-
-end;
-
-procedure TUCXPStyle.DrawTheText(Sender: TObject; txt, ShortCuttext: string;
- ACanvas: TCanvas; TextRect: TRect;
- Selected, Enabled, Default, TopMenu, IsRightToLeft: boolean;
- var TxtFont: TFont; TextFormat: integer);
-var
- DefColor: TColor;
- B: TBitmap;
- BRect: TRect;
-begin
- TextFormat := TextFormat + DT_EXPANDTABS;
- DefColor := TxtFont.Color;
-
- ACanvas.Font.Assign (TxtFont);
-
- if Selected then
- DefColor := FFSelectFontColor;
-
- If not Enabled then
- begin
- DefColor := FFDisabledColor;
-
- if (Sender is TToolButton) then
- begin
- TextRect.Top := TextRect.Top +
- ((TextRect.Bottom - TextRect.Top) - ACanvas.TextHeight('W')) div 2;
- B := TBitmap.Create;
- try
- B.Width := TextRect.Right - TextRect.Left;
- B.Height := TextRect.Bottom - TextRect.Top;
- BRect := Rect(0,0,B.Width, B.Height);
-
-
- B.Canvas.Brush.Color := ACanvas.Brush.Color;
- B.Canvas.FillRect (BRect);
- // B.Canvas.Font := FUCXPSettings.Font; //felix added for resolving font problems in Win98
- //27.08
- B.Canvas.Font.color := DefColor;
-
- DrawtextEx(B.Canvas.Handle,
- PChar(txt),
- Length(txt),
- BRect, TextFormat + DT_VCENTER, nil);
- ACanvas.CopyRect(TextRect, B.Canvas, BRect);
- finally
- B.Free;
- end;
- exit;
- end;
-
- end;
-
- if (TopMenu and Selected) then
- if FUCXPSettings.UseSystemColors then
- DefColor := TopMenuFontColor(ACanvas, FFIconBackColor);
-
- ACanvas.Font.color := DefColor; // will not affect Buttons
-
- SetBkMode(ACanvas.Handle, TRANSPARENT);
-
-
- if Default and Enabled then
- begin
-
- Inc(TextRect.Left, 1);
- ACanvas.Font.color := GetShadeColor(ACanvas,
- ACanvas.Pixels[TextRect.Left, TextRect.Top], 30);
- DrawtextEx(ACanvas.Handle,
- PChar(txt),
- Length(txt),
- TextRect, TextFormat, nil);
- Dec(TextRect.Left, 1);
-
-
- Inc(TextRect.Top, 2);
- Inc(TextRect.Left, 1);
- Inc(TextRect.Right, 1);
-
-
- ACanvas.Font.color := GetShadeColor(ACanvas,
- ACanvas.Pixels[TextRect.Left, TextRect.Top], 30);
- DrawtextEx(ACanvas.Handle,
- PChar(txt),
- Length(txt),
- TextRect, TextFormat, nil);
-
-
- Dec(TextRect.Top, 1);
- Dec(TextRect.Left, 1);
- Dec(TextRect.Right, 1);
-
- ACanvas.Font.color := GetShadeColor(ACanvas,
- ACanvas.Pixels[TextRect.Left, TextRect.Top], 40);
- DrawtextEx(ACanvas.Handle,
- PChar(txt),
- Length(txt),
- TextRect, TextFormat, nil);
-
-
- Inc(TextRect.Left, 1);
- Inc(TextRect.Right, 1);
-
- ACanvas.Font.color := GetShadeColor(ACanvas,
- ACanvas.Pixels[TextRect.Left, TextRect.Top], 60);
- DrawtextEx(ACanvas.Handle,
- PChar(txt),
- Length(txt),
- TextRect, TextFormat, nil);
-
- Dec(TextRect.Left, 1);
- Dec(TextRect.Right, 1);
- Dec(TextRect.Top, 1);
-
- ACanvas.Font.color := DefColor;
- end;
-
- DrawtextEx(ACanvas.Handle,
- PChar(txt),
- Length(txt),
- TextRect, TextFormat, nil);
-
-
- txt := ShortCutText + ' ';
- {
- if not Is16Bit then
- ACanvas.Font.color := DefColor
- else
- ACanvas.Font.color := GetShadeColor(ACanvas, DefColor, -40);
- }
-
-
- if IsRightToLeft then
- begin
- Inc(TextRect.Left, 10);
- TextFormat := DT_LEFT
- end
- else
- begin
- Dec(TextRect.Right, 10);
- TextFormat := DT_RIGHT;
- end;
-
-
- DrawtextEx(ACanvas.Handle,
- PChar(txt),
- Length(txt),
- TextRect, TextFormat, nil);
-
-end;
-
-procedure TUCXPStyle.DrawIcon(Sender: TObject; ACanvas: TCanvas; B: TBitmap;
- IconRect: Trect; Hot, Selected, Enabled, Checked, FTopMenu,
- IsRightToLeft: boolean);
-var
- DefColor: TColor;
- X, Y: integer;
-begin
-
- if (B <> nil) and (B.Width > 0) then
- begin
- X := IconRect.Left;
- Y := IconRect.Top + 1;
-
- if (Sender is TMenuItem) then
- begin
- inc(Y, 2);
- if FUCXPSettings.IconWidth > B.Width then
- X := X + ((FUCXPSettings.IconWidth - B.Width) div 2) - 1
- else
- begin
- if IsRightToLeft then
- X := IconRect.Right - b.Width - 2
- else
- X := IconRect.Left + 2;
- end;
- end;
-
- if FTopMenu then
- begin
- if IsRightToLeft then
- X := IconRect.Right - b.Width - 5
- else
- X := IconRect.Left + 1;
- end;
-
- if (Hot) and (FTopMenu) and (Enabled) then
- if not Selected then
- begin
- dec(X, 1);
- dec(Y, 2);
- end;
-
- if (Hot) and (not FTopMenu) and (Enabled) and (not Checked) then
- if not Selected then
- begin
- dec(X, 1);
- dec(Y, 1);
- end;
-
- if (not Hot) and (Enabled) and (not Checked) then
- if Is16Bit then
- DimBitmap(B, FUCXPSettings.DimLevel{30});
-
-
- if not Enabled then
- begin
- GrayBitmap(B, FUCXPSettings.GrayLevel );
- DimBitmap(B, 40);
- end;
-
- if (Hot) and (Enabled) and (not Checked) then
- begin
- if (Is16Bit) and (not FUCXPSettings.UseSystemColors) and (Sender is TToolButton) then
- DefColor := NewColor(ACanvas, FUCXPSettings.SelectColor, 68)
- else
- DefColor := FFSelectColor;
-
- DefColor := GetShadeColor(ACanvas, DefColor, 50);
- DrawBitmapShadow(B, ACanvas, X + 2, Y + 2, DefColor);
- end;
-
- B.Transparent := true;
- ACanvas.Draw(X, Y, B);
- end;
-
-end;
-
-
-function TUCXPStyle.TopMenuFontColor(ACanvas: TCanvas; Color: TColor): TColor;
-var
- r, g, b, avg: integer;
-begin
-
- Color := ColorToRGB(Color);
- r := Color and $000000FF;
- g := (Color and $0000FF00) shr 8;
- b := (Color and $00FF0000) shr 16;
-
- Avg := (r + b) div 2;
-
- if (Avg > 150) or (g > 200) then
- Result := FUCXPSettings.Font.Color
- else
- Result := NewColor(ACanvas, Color, 90);
-
-end;
-
-procedure TUCXPStyle.SetDisableSubclassing(const Value: boolean);
-begin
- if Value = FDisableSubclassing then Exit;
- FDisableSubClassing := Value;
- if UCXPStyleManager.ActiveXPStyle = Self then
- UCXPStyleManager.UpdateActiveXPStyle(Self)
- else
- if (UCXPStyleManager.ActiveXPStyle = nil) and not(FDisableSubclassing) then
- UCXPStyleManager.UpdateActiveXPStyle(nil);
-end;
-
-
-procedure TUCXPStyle.SetActive(const Value: boolean);
-begin
- //if Value = FActive then exit;
-
- FActive := Value;
- if FActive then
- InitItems(FForm, true, true)
- else
- InitItems(FForm, false, true);
-
- if FForm.Handle <> 0 then
- Windows.DrawMenuBar(FForm.Handle);
-end;
-
-procedure TUCXPStyle.SetForm(const Value: TScrollingWinControl);
-var
- Hold: boolean;
-begin
- if Value <> FForm then
- begin
- Hold := Active;
- Active := false;
- FForm := Value;
- if Hold then
- Active := True;
- end;
-end;
-
-{moved to UCXPSettings
-
-procedure TUCXPStyle.SetFont(const Value: TFont);
-begin
- FFont.Assign(Value);
- Windows.DrawMenuBar(FForm.Handle);
-
-end;
-
-procedure TUCXPStyle.SetColor(const Value: TColor);
-begin
- FColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPStyle.SetIconBackColor(const Value: TColor);
-begin
- FIconBackColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPStyle.SetMenuBarColor(const Value: TColor);
-begin
- FMenuBarColor := Value;
- FColorsChanged := true; // +jt
- Windows.DrawMenuBar(FForm.Handle);
-end;
-
-procedure TUCXPStyle.SetCheckedColor(const Value: TColor);
-begin
- FCheckedColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPStyle.SetSeparatorColor(const Value: TColor);
-begin
- FSeparatorColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPStyle.SetSelectBorderColor(const Value: TColor);
-begin
- FSelectBorderColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPStyle.SetSelectColor(const Value: TColor);
-begin
- FSelectColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPStyle.SetDisabledColor(const Value: TColor);
-begin
- FDisabledColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPStyle.SetSelectFontColor(const Value: TColor);
-begin
- FSelectFontColor := Value;
- FColorsChanged := true; // +jt
-end;
-
-procedure TUCXPStyle.SetIconWidth(const Value: integer);
-begin
- FIconWidth := Value;
-end;
-
-procedure TUCXPStyle.SetDrawSelect(const Value: boolean);
-begin
- FDrawSelect := Value;
-end;
-
-
-
-procedure TUCXPStyle.SetOverrideOwnerDraw(const Value: boolean);
-begin
- FOverrideOwnerDraw := Value;
- if FActive then
- Active := True;
-end;
-
-
-procedure TUCXPStyle.SetUseSystemColors(const Value: boolean);
-begin
- FUseSystemColors := Value;
- Windows.DrawMenuBar(FForm.Handle);
-end;
-
-procedure TUCXPStyle.SetGradient(const Value: boolean);
-begin
- FGradient := Value;
-end;
-
-procedure TUCXPStyle.SetFlatMenu(const Value: boolean);
-begin
- FFlatMenu := Value;
-end;
-
-procedure TUCXPStyle.SetUCXPContainers(const Value: TUCXPContainers);
-begin
- if Value <> FXPContainers then
- begin
- if FActive then
- begin
- FActive := false;
- InitItems(FForm, false, true);
- FActive := true;
- FXPContainers := Value;
- InitItems(FForm, true, true);
- end;
- end;
- FXPContainers := Value;
-
-end;
-
-procedure TUCXPStyle.SetUCXPControls(const Value: TUCXPControls);
-begin
- if Value <> FXPControls then
- begin
- if FActive then
- begin
- FActive := false;
- InitItems(FForm, false, true);
- FActive := true;
- FXPControls := Value;
- InitItems(FForm, true, true);
- end;
- end;
- FXPControls := Value;
-
-end;
-
-procedure TUCXPStyle.SetDrawMenuBar(const Value: boolean);
-begin
- FDrawMenuBar := Value;
-end;
-
-procedure TUCXPStyle.SetUseDimColor(const Value: boolean);
-begin
- FUseDimColor := Value;
-end;
-}{END moved to UCXPSettings}
-
-procedure GetSystemMenuFont(Font: TFont);
-var
- FNonCLientMetrics: TNonCLientMetrics;
-begin
- FNonCLientMetrics.cbSize := Sizeof(TNonCLientMetrics);
- if SystemParametersInfo(SPI_GETNONCLIENTMETRICS, 0, @FNonCLientMetrics,0) then
- begin
- Font.Handle := CreateFontIndirect(FNonCLientMetrics.lfMenuFont);
- Font.Color := clMenuText;
- end;
-end;
-
-procedure TUCXPStyle.SetUCSettings(const Value: TUCSettings);
-begin
- FUCSettings := Value;
- if Value <> nil then Value.FreeNotification(self); //changed by fduenas
-end;
-
-procedure TUCXPStyle.DrawGradient(ACanvas: TCanvas; ARect: TRect;
- IsRightToLeft: boolean);
-var
- i: integer;
- v: integer;
- FRect: TRect;
-begin
-
- fRect := ARect;
- V := 0;
- if IsRightToLeft then
- begin
- fRect.Left := fRect.Right - 1;
- for i := ARect.Right Downto ARect.Left do
- begin
- if (fRect.Left < ARect.Right)
- and (fRect.Left > ARect.Right - FUCXPSettings.IconWidth + 5) then
- inc(v, 3)
- else
- inc(v, 1);
-
- if v > 96 then v := 96;
- ACanvas.Brush.Color := NewColor(ACanvas, FFIconBackColor, v);
- ACanvas.FillRect(fRect);
-
- fRect.Left := fRect.Left - 1;
- fRect.Right := fRect.Left - 1;
- end;
- end
- else
- begin
- fRect.Right := fRect.Left + 1;
- for i := ARect.Left to ARect.Right do
- begin
- if (fRect.Left > ARect.Left)
- and (fRect.Left < ARect.Left + FUCXPSettings.IconWidth + 5) then
- inc(v, 3)
- else
- inc(v, 1);
-
- if v > 96 then v := 96;
- ACanvas.Brush.Color := NewColor(ACanvas, FFIconBackColor, v);
- ACanvas.FillRect(fRect);
-
- fRect.Left := fRect.Left + 1;
- fRect.Right := fRect.Left + 1;
- end;
- end;
-end;
-
-function MenuWindowProc(hwnd: HWND; uMsg: integer; WParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
-var
- oldproc: integer;
- r: TRect;
- pt: TPoint;
begin
- if(uMsg=WM_ERASEBKGND) then
- begin
- Result:=1;
- exit;
-end;
- if((uMsg=WM_SHOWWINDOW) and (not Boolean(WParam))) or (uMsg=WM_CLOSE) or (uMsg=WM_DESTROY) then
- begin
- SetWindowRgn(hwnd, 0,false);
- oldproc:=GetWindowLong(hWnd,GWL_USERDATA);
- SetWindowLong(hWnd,GWL_WNDPROC,oldproc);
- SetWindowLong(hWnd,GWL_USERDATA,0);
- Result:=CallWindowProc(Pointer(oldproc), hwnd, uMsg, wParam, lParam);
- GetWindowRect(hWnd, r);
- pt.x:=r.Right+2;
- pt.y:=r.Top+2;
- hWnd :=WindowFromPoint(pt);
- if GetWindowLong(hWnd,GWL_WNDPROC)<>integer(@MenuWindowProc) then
- begin
- pt.x:=r.Right+2;
- pt.y:=r.Bottom-2;
- hWnd :=WindowFromPoint(pt);
- if GetWindowLong(hWnd,GWL_WNDPROC)<>integer(@MenuWindowProc) then exit;
- end;
- InvalidateRect(hwnd,nil,false);
- end
- else Result:=CallWindowProc(Pointer(GetWindowLong(hWnd,GWL_USERDATA)), hwnd, uMsg, wParam, lParam);
end;
-procedure TUCXPStyle.DrawWindowBorder(hWnd: HWND; IsRightToLeft: boolean);
-var
- WRect: TRect;
- dCanvas: TCanvas;
- wDC: HDC; // +jt
-
- regiontype: integer; // +jt
- r1,r2,wr,region: HRGN; // +jt
- rgnr: TRect; // +jt
-begin
-
-
- if (hWnd <= 0) or (FSettingWindowRng) then
- begin
- exit;
- end;
-// +jt
- wDC := GetWindowDC(hWnd); //GetDesktopWindow
- if wDC=0 then exit;
// +jt
- FSettingWindowRng :=true; // +jt
- dCanvas := TCanvas.Create;
- try
- dCanvas.Handle := wDC; // +jt
- GetWindowRect(hWnd, WRect);
- // +jt
- WRect.Right := WRect.Right-WRect.Left;
- WRect.Bottom := WRect.Bottom-WRect.Top;
- WRect.Top:=0;
- WRect.Left:=0;
- if GetWindowLong(hWnd,GWL_WNDPROC)<>integer(@MenuWindowProc) then
- begin
- SetWindowLong(hWnd,GWL_USERDATA,GetWindowLong(hWnd,GWL_WNDPROC));
- SetWindowLong(hWnd,GWL_WNDPROC,integer(@MenuWindowProc));
- end;
- if not IsWXP then
- begin
- wr:= CreateRectRgn(0,0,0,0);
- regiontype := GetWindowRgn(hWnd, wr);
- GetRgnBox(wr,rgnr);
- DeleteObject(wr);
- if (regionType = ERROR) or (abs(rgnr.Right-WRect.Right)>5) or (abs(rgnr.Bottom-WRect.Bottom)>5) then
- begin
- region:= CreateRectRgn(0,0,0,0);
- r1:=CreateRectRgn(WRect.Left,WRect.Top,WRect.Right-2,WRect.Bottom-2);
- r2:=CreateRectRgn(WRect.Left+2,WRect.Top+2,WRect.Right,WRect.Bottom);
- CombineRgn(region,r1,r2,RGN_OR);
- DeleteObject(r1);
- DeleteObject(r2);
- SetWindowRgn(hWnd,region,true);
- end;
- // +jt
- Dec(WRect.Right, 2);
- Dec(WRect.Bottom, 2);
- end; // +jt
- dCanvas.Brush.Style := bsClear;
- dCanvas.Pen.Color := FMenuBorderColor;
- dCanvas.Rectangle(WRect.Left, WRect.Top, WRect.Right, WRect.Bottom);
- if IsRightToLeft then
- begin
- dCanvas.Pen.Color := FFIconBackColor;
- dCanvas.MoveTo(WRect.Right - 3, WRect.Top + 2);
- dCanvas.LineTo(WRect.Right - 2, WRect.Bottom - 1);
- end
- else
- begin
- dCanvas.Pen.Color := FFIconBackColor;
- dCanvas.Rectangle(WRect.Left + 1, WRect.Top + 2,
- WRect.Left + 3, WRect.Bottom - 1);
- end;
-// +jt
- StretchBlt(dCanvas.Handle,WRect.Left + 1,WRect.Top + 1,WRect.Right - WRect.Left-1,2,
- dCanvas.Handle,WRect.Left + 1,WRect.Top + 3,WRect.Right - WRect.Left-1,1,SRCCOPY);
- if IsWXP then
- begin
- StretchBlt(dCanvas.Handle,WRect.Left + 1,WRect.Bottom - 3,WRect.Right - WRect.Left-1,2,
- dCanvas.Handle,WRect.Left + 1,WRect.Top + 3,WRect.Right - WRect.Left-1,1, SRCCOPY);
- dCanvas.Pen.Color := FFColor;
- dCanvas.Rectangle(WRect.Right - 3, WRect.Top+1, WRect.Right - 1,
- WRect.Bottom-1);
- end;
// +jt
- Inc(WRect.Right, 2);
- Inc(WRect.Bottom, 2);
- if not IsWXP then // +jt
- begin // +jt
- dCanvas.Pen.Color := FMenuShadowColor;
- dCanvas.Rectangle(WRect.Left + 2, WRect.Bottom, WRect.Right, WRect.Bottom - 2);
- dCanvas.Rectangle(WRect.Right - 2, WRect.Bottom, WRect.Right, WRect.Top + 2);
- end; // +jt
-
- finally
- ReleaseDC(hWnd, wDC); // +jt
- dCanvas.Free;
- FSettingWindowRng :=false;
- end;
-end;
-
-procedure TUCXPStyle.Notification(AComponent: TComponent;
- AOperation: TOperation);
-begin
- //added by fduenas
- inherited Notification(AComponent, AOperation); //changed by fduenas
- if AOperation = opRemove then
- If AComponent = FUCSettings then
- FUCSettings := nil;
-
- if not Assigned(UCXPStyleManager) then Exit;
-// Pass the notification information to the UCXPStyleManager
- if not(csDesigning in ComponentState) then
- UCXPStyleManager.Notification(AComponent, AOperation);
-
- if not FActive then exit;
- if not FAutoDetect then exit;
- if (AOperation = opInsert) and
- ((AComponent is TMenuItem) or (AComponent is TToolButton) or
- (AComponent is TControlBar)) then
- begin
- if not (csDesigning in ComponentState) then
- InitItem(AComponent, true, true); // Tom: This will process this new component
- end;
-
-end;
-
-
-function GetShadeColor(ACanvas: TCanvas; clr: TColor; Value: integer): TColor;
-var
- r, g, b: integer;
-
-begin
- clr := ColorToRGB(clr);
- r := Clr and $000000FF;
- g := (Clr and $0000FF00) shr 8;
- b := (Clr and $00FF0000) shr 16;
-
- r := (r - value);
- if r < 0 then r := 0;
- if r > 255 then r := 255;
-
- g := (g - value) + 2;
- if g < 0 then g := 0;
- if g > 255 then g := 255;
-
- b := (b - value);
- if b < 0 then b := 0;
- if b > 255 then b := 255;
-
- //Result := Windows.GetNearestColor(ACanvas.Handle, RGB(r, g, b));
- Result := RGB(r, g, b);
-end;
-
-function MergColor(Colors: Array of TColor): TColor;
-var
- r, g, b, i: integer;
- clr: TColor;
-begin
- r := 0; g:= 0; b:= 0;
-
- for i := 0 to High(Colors) do
- begin
-
- clr := ColorToRGB(Colors[i]);
- r := r + (Clr and $000000FF) div High(Colors);
- g := g + ((Clr and $0000FF00) shr 8) div High(Colors);
- b := b + ((Clr and $00FF0000) shr 16) div High(Colors);
- end;
-
- Result := RGB(r, g, b);
-
-end;
-function NewColor(ACanvas: TCanvas; clr: TColor; Value: integer): TColor;
-var
- r, g, b: integer;
-
-begin
- if Value > 100 then Value := 100;
- clr := ColorToRGB(clr);
- r := Clr and $000000FF;
- g := (Clr and $0000FF00) shr 8;
- b := (Clr and $00FF0000) shr 16;
-
-
- r := r + Round((255 - r) * (value / 100));
- g := g + Round((255 - g) * (value / 100));
- b := b + Round((255 - b) * (value / 100));
-
- //Result := Windows.GetNearestColor(ACanvas.Handle, RGB(r, g, b));
- Result := RGB(r, g, b);
-
-end;
-
-function GetInverseColor(AColor: TColor): TColor;
-begin
- Result := ColorToRGB(AColor) xor $FFFFFF;
-end;
-
-function GrayColor(ACanvas: TCanvas; Clr: TColor; Value: integer): TColor;
-var
- r, g, b, avg: integer;
-
-begin
-
- clr := ColorToRGB(clr);
- r := Clr and $000000FF;
- g := (Clr and $0000FF00) shr 8;
- b := (Clr and $00FF0000) shr 16;
-
- Avg := (r + g + b) div 3;
- Avg := Avg + Value;
-
- if Avg > 240 then Avg := 240;
- //if ACanvas <> nil then
- // Result := Windows.GetNearestColor (ACanvas.Handle,RGB(Avg, avg, avg));
- Result := RGB(Avg, avg, avg);
-end;
-
-procedure GrayBitmap(ABitmap: TBitmap; Value: integer);
-var
- x, y: integer;
- LastColor1, LastColor2, Color: TColor;
-begin
- LastColor1 := 0;
- LastColor2 := 0;
-
- for y := 0 to ABitmap.Height do
- for x := 0 to ABitmap.Width do
- begin
- Color := ABitmap.Canvas.Pixels[x, y];
- if Color = LastColor1 then
- ABitmap.Canvas.Pixels[x, y] := LastColor2
- else
- begin
- LastColor2 := GrayColor(ABitmap.Canvas , Color, Value);
- ABitmap.Canvas.Pixels[x, y] := LastColor2;
- LastColor1 := Color;
- end;
- end;
-end;
-{Modified by felix@unidreamtech.com}
-{
-procedure GrayBitmap(ABitmap: TBitmap; Value: integer);
-var
- Pixel: PRGBTriple;
- w, h: Integer;
- x, y: Integer;
- avg: integer;
-begin
- ABitmap.PixelFormat := pf24Bit;
- w := ABitmap.Width;
- h := ABitmap.Height;
- for y := 0 to h - 1 do
- begin
- Pixel := ABitmap.ScanLine[y];
- for x := 0 to w - 1 do
- begin
- avg := ((Pixel^.rgbtRed + Pixel^.rgbtGreen + Pixel^.rgbtBlue) div 3)
- + Value;
- if avg > 240 then avg := 240;
- Pixel^.rgbtRed := avg;
- Pixel^.rgbtGreen := avg;
- Pixel^.rgbtBlue := avg;
- Inc(Pixel);
- end;
- end;
-end;
-}
-
-procedure DimBitmap(ABitmap: TBitmap; Value: integer);
-var
- x, y: integer;
- LastColor1, LastColor2, Color: TColor;
begin
- if Value > 100 then Value := 100;
- LastColor1 := -1;
- LastColor2 := -1;
- for y := 0 to ABitmap.Height - 1 do
- for x := 0 to ABitmap.Width - 1 do
- begin
- Color := ABitmap.Canvas.Pixels[x, y];
- if Color = LastColor1 then
- ABitmap.Canvas.Pixels[x, y] := LastColor2
- else
- begin
- LastColor2 := NewColor(ABitmap.Canvas, Color, Value);
- ABitmap.Canvas.Pixels[x, y] := LastColor2;
- LastColor1 := Color;
- end;
- end;
end;
-
-// LIne 2647
-{Modified by felix@unidreamtech.com}
-{works fine for 24 bit color
-procedure DimBitmap(ABitmap: TBitmap; Value: integer);
-var
- Pixel: PRGBTriple;
- w, h: Integer;
- x, y, c1, c2: Integer;
-begin
- ABitmap.PixelFormat := pf24Bit;
- w := ABitmap.Width;
- h := ABitmap.Height;
-
- c1 := Value * 255;
- c2 := 100 - Value;
- for y := 0 to h - 1 do
- begin
- Pixel := ABitmap.ScanLine[y];
- for x := 0 to w - 1 do
- begin
- Pixel^.rgbtRed := ((c2 * Pixel^.rgbtRed) + c1) div 100;
- Pixel^.rgbtGreen := ((c2 * Pixel^.rgbtGreen) + c1) div 100;
- Pixel^.rgbtBlue := ((c2 * Pixel^.rgbtBlue) + c1) div 100;
- Inc(Pixel);
- end;
- end;
-end;
-}
-procedure DrawArrow(ACanvas: TCanvas; X, Y: integer);
begin
- ACanvas.MoveTo(X, Y);
- ACanvas.LineTo(X + 5, Y);
-
- ACanvas.MoveTo(X + 1, Y + 1);
- ACanvas.LineTo(X + 4, Y);
-
- ACanvas.MoveTo(X + 2, Y + 2);
- ACanvas.LineTo(X + 3, Y);
-
-end;
-
-procedure DrawArrow(ACanvas: TCanvas; X, Y, Orientation: integer);
-begin
- case Orientation of
- 0:
- begin
-
- ACanvas.MoveTo(X, Y);
- ACanvas.LineTo(X, Y-1);
-
- ACanvas.MoveTo(X + 1, Y + 1);
- ACanvas.LineTo(X + 4, Y + 4);
-
- ACanvas.MoveTo(X, Y + 1);
- ACanvas.LineTo(X + 3, Y + 4);
-
- ACanvas.MoveTo(X, Y + 2);
- ACanvas.LineTo(X + 2, Y + 4);
-
-
- ACanvas.MoveTo(X - 1, Y + 1);
- ACanvas.LineTo(X - 4, Y + 4);
-
- ACanvas.MoveTo(X, Y + 2);
- ACanvas.LineTo(X - 3, Y + 4);
-
- ACanvas.MoveTo(X, Y + 1);
- ACanvas.LineTo(X - 2, Y + 4);
-
- end;
- 1:
- begin
- ACanvas.MoveTo(X, Y+3);
- ACanvas.LineTo(X, Y+4);
-
- ACanvas.MoveTo(X + 1, Y + 2);
- ACanvas.LineTo(X + 4, Y - 1);
-
- ACanvas.MoveTo(X, Y + 2);
- ACanvas.LineTo(X + 3, Y - 1);
-
- ACanvas.MoveTo(X, Y + 1);
- ACanvas.LineTo(X + 2, Y + 0);
-
-
-
- ACanvas.MoveTo(X - 1, Y + 2);
- ACanvas.LineTo(X - 4, Y - 1);
-
- ACanvas.MoveTo(X, Y + 2);
- ACanvas.LineTo(X - 3, Y - 1);
-
- ACanvas.MoveTo(X, Y + 1);
- ACanvas.LineTo(X - 2, Y + 0);
-
-
- end;
- end;
-end;
-procedure DrawBitmapShadow(B: TBitmap; ACanvas: TCanvas; X, Y: integer;
- ShadowColor: TColor);
var
- BX, BY: integer;
- TransparentColor: TColor;
begin
- TransparentColor := B.Canvas.Pixels[0, B.Height - 1];
- for BY := 0 to B.Height - 1 do
- for BX := 0 to B.Width - 1 do
- begin
- if B.Canvas.Pixels[BX, BY] <> TransparentColor then
- ACanvas.Pixels[X + BX, Y + BY] := ShadowColor;
- end;
end;
-
-procedure DrawCheckMark(ACanvas: TCanvas; X, Y: integer);
-begin
- Inc(X, 2);
- Dec(Y, 3);
- ACanvas.MoveTo(X , Y - 2);
- ACanvas.LineTo(X + 2, Y );
- ACanvas.LineTo(X + 7, Y - 5);
-
- ACanvas.MoveTo(X , Y - 3);
- ACanvas.LineTo(X + 2, Y - 1);
- ACanvas.LineTo(X + 7, Y - 6);
-
- ACanvas.MoveTo(X , Y - 4);
- ACanvas.LineTo(X + 2, Y - 2);
- ACanvas.LineTo(X + 7, Y - 7);
-end;
-
{ TCustomComboSubClass }
-//By Heath Provost (Nov 20, 2001)
-// ComboBox Subclass WndProc.
-// Message processing to allow control to repond to
-// messages needed to paint using Office XP style.
-procedure TControlSubClass.ControlSubClass(var Message: TMessage);
-
-begin
- //Call original WindowProc FIRST. We are trying to emulate inheritance, so
- //original WindowProc must handle all messages before we do.
-
-
- if ((Message.Msg = WM_PAINT) and ((Control is TGraphicControl))) or
- ((Control.ClassName = 'TDBLookupComboBox') and (Message.Msg = WM_NCPAINT)) then
- Message.Result := 1
- else
- //: "Marcus Paulo Tavares"
- orgWindowProc(Message);
-
- if (FXPStyle <> nil) and (not FXPStyle.FActive) then
- begin
- try
- Message.Result := 1;
- if Control <> nil then
- begin
- Control.WindowProc := orgWindowProc;
- if Control is TCustomEdit then
- TEdit(Control).Ctl3D := FCtl3D;
- if Control is TCustomRichEdit then
- TRichEdit(Control).BorderStyle := FBorderStyle;
- if Control.ClassName = 'TDBLookupComboBox' then
- TComboBox(Control).Ctl3D := FCtl3D;
- if Control is TCustomListBox then
- TListBox(Control).BorderStyle := FBorderStyle;
- if Control is TCustomListView then
- TListView(Control).BorderStyle := FBorderStyle;
- if Control is TCustomTreeView then
- TTreeView(Control).BorderStyle := FBorderStyle;
- Control := nil;
- Free;
- end;
- exit;
- except
- exit;
- end;
- end;
-
- FMsg := Message.Msg;
- case Message.Msg of
-
-
- EM_GETMODIFY, // For edit
- CM_INVALIDATE:
- begin
- FBuilding := true
- end;
-
- CM_PARENTCOLORCHANGED:
- begin
- PaintControlXP;
- end;
-
- WM_DESTROY:
- begin
- if not FBuilding then
- begin
- try
- if Control <> nil then
- begin
- Control.WindowProc := orgWindowProc;
- FBuilding := false;
- Free;
- end;
- except
- end;
- //FBuilding := false;
- end;
- Exit;
- end;
-
- WM_PAINT:
- begin
- FBuilding := false;
- PaintControlXP;
- end;
-
- CM_MOUSEENTER:
- if TControl(Control).Enabled then
- begin
-// if FmouseInControl then exit;
- FmouseInControl := true;
- if Control is TGraphicControl then
- begin
- Control.Repaint;
- exit;
- end;
- PaintControlXP;
-
-
- {if Control is TGraphicControl then
- begin
- if not FMouseInControl and Control.Enabled
- and (GetCapture = 0) then
- begin
- FMouseInControl := True;
- Control.Repaint;
- end;
- end
- else
- begin
- FmouseInControl := true;
- PaintControlXP;
- end;}
-
-
- end;
- CM_MOUSELEAVE:
- if TControl(Control).Enabled then
- begin
- FmouseInControl := false;
- if Control is TGraphicControl then
- begin
- Control.Invalidate;
- exit;
- end;
- PaintControlXP;
-
-
- {if Control is TGraphicControl then
- begin
- if FMouseInControl and Control.Enabled then
- begin
- FMouseInControl := False;
- Control.Invalidate;
- end;
- end
- else
- begin
- FmouseInControl := false;
- PaintControlXP;
- end;}
- end;
-
- WM_MOUSEMOVE:
- begin
- if TControl(Control).Enabled and (Control.ClassName = 'TUpDown') then
- PaintControlXP;
- end;
- WM_LBUTTONDOWN:
- begin
- FLButtonBressed := true;
- PaintControlXP;
- end;
-
- WM_LBUTTONUP:
- begin
- FLButtonBressed := false;
- if Control is TGraphicControl then
- begin
- Control.Repaint;
- exit;
- end;
- PaintControlXP;
- end;
-
- WM_KEYDOWN:
- if Message.WParam = VK_SPACE then
- begin
- FBressed := true;
- if not FIsKeyDown then
- PaintControlXP;
- FIsKeyDown := true;
- end;
-
- WM_KEYUP:
- if Message.WParam = VK_SPACE then
- begin
- FBressed := false;
- FIsKeyDown := false;
- PaintControlXP;
- end;
-
- WM_SETFOCUS:
- begin
- FmouseInControl := true;
- PaintControlXP;
- end;
- WM_KILLFOCUS:
- begin
- FmouseInControl := false;
- PaintControlXP;
- end;
- CM_FOCUSCHANGED: //??
- PaintControlXP;
-
- CM_EXIT:
- begin
- FmouseInControl := false;
- PaintControlXP;
- end;
-
- BM_SETCHECK:
- begin
- FmouseInControl := false;
- PaintControlXP;
- end;
- BM_GETCHECK:
- begin
- FmouseInControl := false;
- PaintControlXP;
- end;
- CM_ENABLEDCHANGED:
- begin
- if (Message.WParam = 0) then FmouseInControl := false;//Dirk Bottcher
- PaintControlXP;
- end;
-
- CM_TEXTCHANGED:
- begin
- PaintControlXP;
- end;
-
-
- CM_CTL3DCHANGED, CM_PARENTCTL3DCHANGED:
- begin
- FBuilding := true;
- end;
- WM_LBUTTONDBLCLK: //for button, check
- begin
- if (Control is TButton) or
- (Control is TSpeedButton) or
- (Control is TCheckBox) then
- Control.Perform(WM_LBUTTONDOWN, Message.WParam , Longint(Message.LParam));
- end;
- {CN_DRAWITEM,} BM_SETSTATE:
- begin
- PaintControlXP; // button
- end;
- WM_WINDOWPOSCHANGED, CN_PARENTNOTIFY: // Moving From parent to other
- begin
- FBuilding := true
- end;
- WM_NCPAINT:
- begin
- if (Control is TCustomListBox) or (Control is TCustomTreeView) or
- (Control is TCustomListBox)
- then
- PaintNCWinControl;
- end;
- end;
-
-end;
-
-// changes added by Heath Provost (Nov 20, 2001)
-{ TCustomComboSubClass }
-// paints an overlay over the control to make it mimic
-// Office XP style.
-
-procedure TControlSubClass.PaintControlXP;
-begin
-
- If Control is TWinControl then
- FIsFocused := TWinControl(Control).Focused
- else
- FIsFocused := false;
- {$IFDEF VER6U}
- if (Control is TCustomCombo) then
- PaintCombo;
- {$ELSE}
- if (Control is TCustomComboBox) then
- PaintCombo;
- {$ENDIF}
- if Control.ClassName = 'TDBLookupComboBox' then
- PaintDBLookupCombo;
-
- if Control is TCustomRichEdit then
- PaintRichEdit
- else
- if Control is TCustomEdit then
- PaintEdit;
-
- if Control is TCustomCheckBox then
- PaintCheckBox;
- if Control is TRadioButton then
- PaintRadio;
-
- if Control is TBitBtn then
- PaintBitButn
- else
- if Control is TButton then
- PaintButton;
-
- if Control is TUpDown then
- PaintUpDownButton;
-
- if Control is TSpeedButton then
- if Control.Visible then
- PaintSpeedButton;
-
- if Control is TCustomPanel then
- PaintPanel;
-
- if Control is TCustomGroupBox then
- PaintGroupBox;
-
- if (Control is TCustomListBox) or (Control is TCustomTreeView) or
- (Control is TCustomListView)
- then
- PaintNCWinControl;
-
- if Control is TProgressBar then
- PaintProgressBar;
-
- if Control is TCustomHotKey then
- PaintHotKey;
-{
- if Control is TDrawGrid then
- PaintGrid;
-}
-end;
-
-procedure TControlSubClass.PaintCombo;
-var
- C: TControlCanvas;
- R: TRect;
- SelectColor, BorderColor, ArrowColor: TColor;
- X: integer;
-begin
-
- C := TControlCanvas.Create;
- try
- C.Control := Control;
-
-// FXPStyle.SetGlobalColor(C);
- if Control.Enabled then ArrowColor := clBlack else ArrowColor := clWhite;
-
-
- if (FmouseinControl) then
- begin
- borderColor := FXPStyle.FFSelectBorderColor;
- SelectColor := FXPStyle.FFSelectColor;
- end
- else
- begin
- borderColor := TComboBox(Control).Color;
- if Control.Tag = 1000 then
- SelectColor := NewColor(C, TControl(Control).Parent.Brush.Color, FXPStyle.FDimParentColor)
- else
- selectColor := clBtnFace;
- end;
-
- if (not FmouseinControl) and (FIsFocused) then
- begin
- borderColor := NewColor(C, FXPStyle.FFSelectBorderColor,60);
- SelectColor := FXPStyle.FCheckedAreaColor;
- end;
-
- R := Control.ClientRect;
-
- C.Brush.Color := Control.Parent.Brush.Color;
- C.FrameRect(R);
- InflateRect(R, -1, -1);
-
- C.Pen.Color := C.Brush.Color;
- C.MoveTo(R.Left, R.Top);
- C.LineTo(R.Right, R.Top);
-
- InflateRect(R, 0, -1);
-
- if ( FmouseinControl or FIsFocused) then
- InflateRect(R, 1, 1);
-
- C.Brush.Color := TComboBox(Control).Color;;
- C.FrameRect(R);
-
- Inc(R.Bottom,1);
- C.Brush.Color := BorderColor;
- C.FrameRect(R);
-
- {$IFDEF VER6U}
- if TCustomCombo(Control).DroppedDown then
- {$ELSE}
- if TCustomComboBox(Control).DroppedDown then
- {$ENDIF}
- begin
- BorderColor := FXPStyle.FFSelectBorderColor;
- ArrowColor := clWhite;
- SelectColor := FXPStyle.FCheckedAreaSelectColor ;
- end;
-
- if TComboBox(Control).style <> csSimple then
- begin
-
- InflateRect(R, -1, -1);
-
- if Control.BiDiMode = bdRightToLeft then
- R.Right := R.Left + GetSystemMetrics(SM_CXHTHUMB) + 1
- else
- R.Left := R.Right - GetSystemMetrics(SM_CXHTHUMB) - 1;
-
- if ( FmouseinControl or FIsFocused) then
- begin
- if Control.BiDiMode = bdRightToLeft then
- Inc(R.Right, 2)
- else
- Dec(R.Left, 1);
- end;
-
- C.Brush.Color := SelectColor;
- C.FillRect(R);
-
- if Control.BiDiMode = bdRightToLeft then
- R.Left := R.Right - 5
- else
- R.Right := R.Left + 5;
-
- C.Brush.Color := TComboBox(Control).Color;
- C.FillRect(R);
-
- C.Pen.Color := BorderColor;
-
- if Control.BiDiMode = bdRightToLeft then
- begin
- C.Moveto(R.Left, R.Top);
- C.LineTo(R.Left, R.Bottom);
- end
- else
- begin
- C.Moveto(R.Right, R.Top);
- C.LineTo(R.Right, R.Bottom);
- end;
- C.Pen.Color := arrowColor;
-
- R := Control.ClientRect;
-
- if Control.BiDiMode = bdRightToLeft then
- X := R.Left + 5
- else
- X := R.Right - 10;
-
- C.Moveto(X + 0, R.Top + 10);
- C.LineTo(X + 5, R.Top + 10);
- C.Moveto(X + 1, R.Top + 11);
- C.LineTo(X + 4, R.Top + 11);
- C.Moveto(X + 2, R.Top + 12);
- C.LineTo(X + 3, R.Top + 12);
- end;
- finally
- C.Free;
- end;
-
-end;
-
-procedure TControlSubClass.PaintDBLookupCombo;
-var
- C: TControlCanvas;
- R: TRect;
- FrameColor, SelectColor, BorderColor, ArrowColor: TColor;
- X: integer;
- DC: HDC;
-
-begin
- C := TControlCanvas.Create;
- DC := GetWindowDC(TWinControl(Control).Handle);
- try
- C.Control := Control;
- C.Handle := DC;
- if TComboBox(Control).Ctl3D then
- begin
- FBuilding := true;
- TComboBox(Control).Ctl3D := false;
- end;
-
- //FXPStyle.SetGlobalColor(C);
- if Control.Enabled then ArrowColor := clBlack else ArrowColor := clWhite;
-
-
- if (FmouseinControl) then
- begin
- FrameColor := FXPStyle.FFSelectBorderColor;
- borderColor := FXPStyle.FFSelectBorderColor;
- SelectColor := FXPStyle.FFSelectColor;
- end
- else
- begin
- FrameColor := GetShadeColor(C, Control.Parent.Brush.Color, 60);
- borderColor := NewColor(C, FXPStyle.FFSelectBorderColor,60);
- selectColor := clBtnFace;
- end;
- if (not FmouseinControl) and (FIsFocused) then
- begin
- FrameColor := GetShadeColor(C, Control.Parent.Brush.Color, 60);
- borderColor := NewColor(C, FXPStyle.FFSelectBorderColor,60);
- SelectColor := FXPStyle.FCheckedAreaColor;
- end;
-
-
- R := Rect(0, 0, Control.Width, Control.Height);
- C.Brush.Color := TComboBox(Control).Color;
- C.Brush.Color := FrameColor;
- C.FrameRect(R);
-
-
- R := Control.ClientRect;
-
- // Move the thumb one pixel to the right and one pixel down
- OffsetRect(R, 1, 1);
-
-
- C.Brush.Color := TComboBox(Control).Color;
- C.FrameRect(R);
-
- {$IFDEF VER6U}
- if TCustomCombo(Control).DroppedDown then
- {$ELSE}
- if TCustomComboBox(Control).DroppedDown then
- {$ENDIF}
- begin
- BorderColor := FXPStyle.FFSelectBorderColor;
- ArrowColor := clWhite;
- SelectColor := FXPStyle.FCheckedAreaSelectColor ;
- end;
-
- if TComboBox(Control).style <> csSimple then
- begin
-
- InflateRect(R, -1, -1);
-
- if Control.BiDiMode = bdRightToLeft then
- R.Right := R.Left + GetSystemMetrics(SM_CXHTHUMB) + 1
- else
- R.Left := R.Right - GetSystemMetrics(SM_CXHTHUMB) - 1;
-
- if ( FmouseinControl or FIsFocused) then
- begin
- if Control.BiDiMode = bdRightToLeft then
- Inc(R.Right, 1)
- else
- Dec(R.Left, 1);
- end;
-
-
- C.Brush.Color := SelectColor;
- C.FillRect(R);
- C.Brush.Color := BorderColor;
- C.FrameRect(R);
-
- if Control.BiDiMode = bdRightToLeft then
- R.Left := R.Right - 5
- else
- R.Right := R.Left + 5;
-
- C.Brush.Color := TComboBox(Control).Color;
- C.FillRect(R);
-
- C.Pen.Color := BorderColor;
-
- if Control.BiDiMode = bdRightToLeft then
- begin
- C.Moveto(R.Left, R.Top);
- C.LineTo(R.Left, R.Bottom);
- end
- else
- begin
- C.Moveto(R.Right, R.Top);
- C.LineTo(R.Right, R.Bottom);
- end;
- C.Pen.Color := arrowColor;
-
- R := Control.ClientRect;
-
- if Control.BiDiMode = bdRightToLeft then
- X := R.Left + 5
- else
- X := R.Right - 9; // Changed by Uwe Runkel, uwe@runkel.info
- // Changed value from 10 to 9 because the thumb has
- // moved one pixel to the right
-
- C.Moveto(X + 0, R.Top + 8);
- C.LineTo(X + 5, R.Top + 8);
- C.Moveto(X + 1, R.Top + 9);
- C.LineTo(X + 4, R.Top + 9);
- C.Moveto(X + 2, R.Top + 10);
- C.LineTo(X + 3, R.Top + 10);
- end;
- finally
- C.Free;
- ReleaseDC(TWinControl(Control).Handle, DC);
- end;
-
-end;
-
-procedure TControlSubClass.PaintEdit;
-var
- C: TControlCanvas;
- R: TRect;
- BorderColor: TColor;
-begin
-
- C := TControlCanvas.Create;
- try
- C.Control := Control;
-
- //FXPStyle.SetGlobalColor(C);
-
- if TEdit(Control).Ctl3D <> false then
- begin
- FBuilding := true;
- TEdit(Control).Ctl3D := false;
- end;
-
- if (FmouseinControl) or (FIsFocused) then
- borderColor := NewColor(C, FXPStyle.FFSelectBorderColor, 60)
- else
- borderColor := GetShadeColor(C, Control.Parent.Brush.Color, 60);
-
-
- if FBorderStyle = bsNone then
- begin
- if (FmouseinControl) and (not FIsFocused) then
- //borderColor := NewColor(C, Control.Parent.Brush.Color, 60)
- borderColor := NewColor(C, MergColor([TEdit(Control).Color,Control.Parent.Brush.Color]), 40)
-
- else
- borderColor := TEdit(Control).Color;
- end;
-
-
- R := Control.ClientRect;
-
- C.Pen.Color := BorderColor;
- C.Brush.Style := bsClear;
-
- C.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
- finally
- C.Free;
- end;
-end;
-
-procedure TControlSubClass.PaintRichEdit;
-var
- C: TControlCanvas;
- R: TRect;
- BorderColor: TColor;
-begin
-
- C := TControlCanvas.Create;
- try
- C.Control := Control.Parent;
-
- R := Control.BoundsRect;
- InflateRect(R, 1, 1);
-
- if FBorderStyle = bsSingle then
- begin
- FBuilding := true;
- TRichEdit(Control).BorderStyle := bsNone;
- if TRichEdit(Control).BorderWidth < 2 then
- TRichEdit(Control).BorderWidth := 2;
- end;
-
- if (FmouseinControl) or (FIsFocused) then
- borderColor := NewColor(C, FXPStyle.FFSelectBorderColor,60)
-
-
- else
- begin
- if FBorderStyle = bsSingle then
- borderColor := GetShadeColor(C, Control.Parent.Brush.Color, 60)
- else
- borderColor := Control.Parent.Brush.Color;
- end;
-
- Frame3D(C, R, borderColor, borderColor, 1);
-
- finally
- C.Free;
- end;
-
-end;
-
-procedure TControlSubClass.PaintCheckBox;
-var
- C: TControlCanvas;
- R: TRect;
- SelectColor, BorderColor: TColor;
-begin
-
- C := TControlCanvas.Create;
- try
- C.Control := Control;
-
- if FMouseInControl then
- begin
- SelectColor := FXPStyle.FFSelectColor;
- BorderColor := FXPStyle.FFSelectBorderColor;
- end
- else
- begin
- SelectColor := clWindow;
- BorderColor := clBtnShadow;
- end;
-
- if (FIsFocused) then
- begin
- SelectColor := FXPStyle.FFSelectColor;
- BorderColor := FXPStyle.FFSelectBorderColor;
- end;
- if (FBressed) or (FLButtonBressed ) then
- SelectColor := FXPStyle.FCheckedAreaSelectColor ;
-
- if TCheckBox(Control).State = cbGrayed then
- SelectColor := clSilver ;
- R := Control.ClientRect;
- InflateRect(R, 0, -3);
- R.Top := R.Top + ((R.Bottom - R.Top - GetSystemMetrics(SM_CXHTHUMB)) div 2);
- R.Bottom := R.Top + GetSystemMetrics(SM_CXHTHUMB);
-
- if ((Control.BiDiMode = bdRightToLeft) and
- (TCheckBox(Control).Alignment = taRightJustify)) or
- ((Control.BiDiMode = bdLeftToRight) and
- (TCheckBox(Control).Alignment = taLeftJustify))
- then
- R.Left := R.Right - GetSystemMetrics(SM_CXHTHUMB) + 1
- else
- if ((Control.BiDiMode = bdLeftToRight) and
- (TCheckBox(Control).Alignment = taRightJustify)) or
- ((Control.BiDiMode = bdRightToLeft) and
- (TCheckBox(Control).Alignment = taLeftJustify)) then
- R.Right := R.Left + GetSystemMetrics(SM_CXHTHUMB) - 1;
-
-
-
- C.Brush.Color := TCheckBox(Control).Color;
- C.FillRect(R);
- InflateRect(R, -2, -2);
- C.Brush.Color := SelectColor;
- C.Pen.Color := BorderColor;
- C.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
-
- if (TCheckBox(Control).Checked) or
- (TCheckBox(Control).State = cbGrayed) then
- begin
- if Control.Enabled then
- begin
- if (FBressed) or (FLButtonBressed ) then
- C.Pen.color := clWindow
- else
- begin
- if TCheckBox(Control).State = cbGrayed then
- C.Pen.color := clGray
- else
- C.Pen.color := clHighlight;
- end;
- end
- else
- C.Pen.color := FXPStyle.FFDisabledColor;
-
- DrawCheckMark(C, R.Left, R.Bottom )
- end;
-
- finally
- C.Free;
- end;
-
-
-end;
-
-procedure TControlSubClass.PaintRadio;
-var
- C: TControlCanvas;
- R: TRect;
- SelectColor, BorderColor: TColor;
-begin
-
- C := TControlCanvas.Create;
- try
- C.Control := Control;
-
- if FMouseInControl then
- begin
- SelectColor := FXPStyle.FFSelectColor;
- BorderColor := FXPStyle.FFSelectBorderColor;;
- end
- else
- begin
- SelectColor := clWindow;
- BorderColor := clBtnShadow;
- end;
- if (FIsFocused) then
- SelectColor := FXPStyle.FFSelectColor;
-
- R := Control.ClientRect;
- InflateRect(R, 0, -4);
-
- R.Top := R.Top + ((R.Bottom - R.Top - GetSystemMetrics(SM_CXHTHUMB)) div 2);
- R.Bottom := R.Top + GetSystemMetrics(SM_CXHTHUMB)-1;
-
-
- if ((Control.BiDiMode = bdRightToLeft) and
- (TCheckBox(Control).Alignment = taRightJustify)) or
- ((Control.BiDiMode = bdLeftToRight) and
- (TCheckBox(Control).Alignment = taLeftJustify))
- then
- R.Left := R.Right - GetSystemMetrics(SM_CXHTHUMB) + 1
- else
- if ((Control.BiDiMode = bdLeftToRight) and
- (TCheckBox(Control).Alignment = taRightJustify)) or
- ((Control.BiDiMode = bdRightToLeft) and
- (TCheckBox(Control).Alignment = taLeftJustify)) then
- R.Right := R.Left + GetSystemMetrics(SM_CXHTHUMB) - 1;
-
- C.Brush.Color := TCheckBox(Control).Color;
- C.FillRect(R);
-
-
- InflateRect(R, -2, -2);
- C.Brush.Color := SelectColor;
- C.Pen.Color := BorderColor;
-
-
- C.Ellipse(R.Left, R.Top, R.Right, R.Bottom);
- if TRadioButton(Control).Checked then
- begin
- InflateRect(R, -2, -2);
-
- if Control.Enabled then
- C.Brush.Color := clHighlight
- else
- C.Brush.color := FXPStyle.FFDisabledColor;
-
- C.Pen.Color := C.Brush.Color;
- C.Ellipse(R.Left, R.Top, R.Right, R.Bottom);
- end;
- finally
- C.Free;
- end;
-
-
-end;
-
-procedure TControlSubClass.PaintButton;
-var
- C: TControlCanvas;
- R: TRect;
- SelectColor, BorderColor: TColor;
- Txt: string;
- TextRect: TRect;
- TxtFont: TFont;
-
- CWidth, CHeight, TWidth, THeight: integer;
- TextFormat: integer;
-
-begin
-
- C := TControlCanvas.Create;
- try
- C.Control := Control;
-
- if (FMouseInControl) then
- begin
- if Control.Tag = 1000 then // UseParentColor
- SelectColor := NewColor(C, TControl(Control).Parent.Brush.Color, FXPStyle.FDimParentColorSelect)
- else
- SelectColor := NewColor(C, clBtnFace, FXPStyle.FDimParentColorSelect);
-
- BorderColor := NewColor(C, FXPStyle.FFSelectBorderColor,60);
- end
- else
- begin
- if Control.Tag = 1000 then
- SelectColor := NewColor(C, TControl(Control).Parent.Brush.Color, FXPStyle.FDimParentColor)
- else
- SelectColor := FXPStyle.FFIconBackColor;
- BorderColor := clBtnShadow;
- end;
-
-
- if (not FmouseinControl) and (FIsFocused) then
- begin
- BorderColor := NewColor(C, FXPStyle.FFSelectBorderColor,60);
- end;
-
- TextFormat := DT_CENTER + DT_VCENTER;
- R := Control.ClientRect;
-
- CWidth := (R.Right - R.Left);
- CHeight := (R.Bottom - R.Top);
-
- C.Brush.Color := Control.Parent.Brush.Color;
- C.FillRect(R);
-
- C.Brush.Color := SelectColor;
-
- C.Pen.Color := NewColor(C, BorderColor, 30);
- C.RoundRect(R.Left, R.Top, R.Right, R.Bottom, 4, 4);
-
- if TControl(Control).Enabled then
- if FBressed or (FLButtonBressed and FmouseinControl) {or FBressed} then
- begin
- C.Pen.Color := GetShadeColor(C, BorderColor, 50);
- C.MoveTo(R.Left , R.Bottom - 2);
- C.LineTo(R.Left , R.Top + 1);
- C.LineTo(R.Left + 1, R.Top );
- C.LineTo(R.Right - 1 , R.Top );
- end
- else
- begin
- C.Pen.Color := GetShadeColor(C, BorderColor, 50);
- C.MoveTo(R.Right - 1, R.Top + 1);
- C.LineTo(R.Right - 1, R.Bottom - 2);
- C.LineTo(R.Right - 2, R.Bottom - 1);
- C.LineTo(R.Left , R.Bottom - 1);
- end;
-
- Txt := TButton(Control).Caption;
-
- TextRect := R;
-
- TxtFont := TButton(Control).Font;
- C.Font.Assign (TxtFont);
-
-
- if TButton(Control).IsRightToLeft then
- TextFormat := TextFormat + DT_RTLREADING;
-
-//--- //"Holger Lembke"
-
- if (Txt <> '') then
- begin
- FillChar(TextRect, SizeOf(TextRect),0);
- DrawText(C.Handle,
- PChar(Txt), Length(Txt),
- TextRect,
- DT_CALCRECT + control.DrawTextBiDiModeFlags(0));
- TWidth := TextRect.Right;
- THeight := TextRect.Bottom;
- end
- else
- begin
- TWidth := 0;
- THeight := 0;
- end;
-
-//---
- TextRect.Left := (CWidth - (TWidth)) div 2;
- TextRect.Right := TextRect.Left + TWidth;
- TextRect.Top := (CHeight - (THeight)) div 2;
- TextRect.Bottom := TextRect.Top + THeight;
-
-
- FXPStyle.DrawTheText(Control,
- Txt, '', C,
- TextRect, false,
- TControl(Control).Enabled,
- TButton(Control).Default,
- false,
- TControl(Control).IsRightToLeft,
- TxtFont,
- TextFormat);
-
- finally
- C.Free;
- end;
-
-end;
-
-procedure TControlSubClass.PaintSpeedButton;
-var
- C: TControlCanvas;
- R: TRect;
- SelectColor, BorderColor: TColor;
- Txt: string;
- TextRect, IconRect: TRect;
- TxtFont: TFont;
- B, BF: TBitmap;
- CWidth, CHeight, BWidth, BHeight, TWidth, THeight, Space,
- NumGlyphs, Offset: integer;
- TextFormat: integer;
- FDown, FFlat, FTransparent: boolean;
- FLayout: TButtonLayout;
- P: TPoint;
-begin
-
- C := TControlCanvas.Create;
- try
- C.Control := Control;
-
- FDown := TSpeedButton(Control).Down;
- FFlat := TSpeedButton(Control).Flat;
- FTransparent := TSpeedButton(Control).Transparent;
- NumGlyphs := TSpeedButton(Control).NumGlyphs;
-
-//----------
- if FFlat then
- if FMouseInControl then
- begin
- p := Mouse.CursorPos;
- P := Control.ScreenToClient(P);
- R := Control.ClientRect;
- FMouseInControl := (p.x >= R.Left) and (p.x <= R.Right) and
- (p.y >= R.Top) and (p.y <= R.Bottom);
- end;
-
-//----------
- if (FMouseInControl) then
- begin
- if Control.Tag = 1000 then // UseParentColor
- begin
- SelectColor := NewColor(C, TControl(Control).Parent.Brush.Color, FXPStyle.FDimParentColorSelect);
- if FFlat then
- SelectColor := FXPStyle.FFSelectColor ;
- end
- else
- begin
- SelectColor := NewColor(C, clBtnFace, FXPStyle.FDimParentColorSelect);
- if FFlat then
- SelectColor := FXPStyle.FFSelectColor ;
- end;
- BorderColor := NewColor(C, FXPStyle.FFSelectBorderColor,60);
- end
- else
- begin
- if Control.Tag = 1000 then
- SelectColor := NewColor(C, TControl(Control).Parent.Brush.Color, FXPStyle.FDimParentColor)
- else
- SelectColor := FXPStyle.FFIconBackColor;
- if FFlat then
- SelectColor := TControl(Control).Parent.Brush.Color;
-
- if (Control.ClassName = 'TNavButton') and FFlat then
- begin
- SelectColor := TControl(Control).Parent.Brush.Color;
- end;
- BorderColor := clBtnShadow;
- end;
-
-
- if FDown then
- begin
- SelectColor := FXPStyle.FCheckedAreaColor;
- BorderColor := FXPStyle.FFSelectBorderColor;
- end;
-
- if FDown and FMouseInControl then
- begin
- SelectColor := FXPStyle.FCheckedAreaSelectColor;
- BorderColor := FXPStyle.FFSelectBorderColor;
- end;
-
- if not TControl(Control).Enabled then
- BorderColor := clBtnShadow;
-
-
- TextFormat := + DT_CENTER + DT_VCENTER;;
- R := Control.ClientRect;
-
- CWidth := (R.Right - R.Left);
- CHeight := (R.Bottom - R.Top);
-
-
- if (FDown or FMouseInControl) and FTransparent then
- begin
- BF := TBitmap.Create;
- try
- BF.Width := R.Right - R.Left;
- BF.Height := R.Bottom - R.Top;
-
- if FFlat then
- begin
- if GetDeviceCaps(C.Handle, BITSPIXEL) > 16 then
- BF.Canvas.Brush.Color := NewColor(C, FXPStyle.FFSelectColor, 20)
- else
- BF.Canvas.Brush.Color := SelectColor;
- end
- else
- begin
- if GetDeviceCaps(C.Handle, BITSPIXEL) > 16 then
- BF.Canvas.Brush.Color := NewColor(C, SelectColor, 5)
- else
- BF.Canvas.Brush.Color := SelectColor;
- end;
- BF.Canvas.FillRect (R);
- BitBlt(C.handle,
- R.Left,
- R.Top,
- R.Right - R.left,
- R.Bottom - R.top,
- BF.Canvas.Handle,
- 0,
- 0,
- SRCAND);
- finally
- BF.Free;
- end;
- end;
-
-
-
-
- C.Brush.Color := SelectColor;
- if not FTransparent then
- c.FillRect (R);
-
- if Control.ClassName = 'TNavButton' then
- begin
- c.FillRect (R);
- end;
- C.Pen.Color := NewColor(C, BorderColor, 30);
-
- if (FFlat) and (not FTransparent) and (not FDown) and (not FMouseInControl) then
- C.Pen.Color := C.Brush.Color;
-
- if FTransparent then
- C.Brush.Style := bsClear;
- if ((FTransparent) and (FMouseInControl)) or
- ((FTransparent) and (FDown)) or
- ((not FTransparent )) or
- ((not FFlat))
- then
- begin
- C.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
- end;
-
- if TControl(Control).Enabled then
- begin
- if (FFlat) then
- begin
- if (FLButtonBressed ) or (FDown) then
- begin
- C.Pen.Color := BorderColor;
- C.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
- C.Pen.Color := GetShadeColor(C, BorderColor, 50);
-
- C.MoveTo(R.Left , R.Bottom - 1);
- C.LineTo(R.Left , R.Top );
- C.LineTo(R.Right , R.Top );
- end
- else
- if (FMouseInControl) then
- begin
- C.Pen.Color := FXPStyle.FFSelectBorderColor;
- C.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
- end;
- end;
-
- if (not FFlat) then
- if (FLButtonBressed ) or (FDown) then
- begin
- C.Pen.Color := GetShadeColor(C, BorderColor, 50);
- C.MoveTo(R.Left , R.Bottom - 1);
- C.LineTo(R.Left , R.Top );
- C.LineTo(R.Right , R.Top );
- end
- else
- begin
- C.Pen.Color := GetShadeColor(C, BorderColor, 50);
- C.MoveTo(R.Right - 1, R.Top );
- C.LineTo(R.Right - 1, R.Bottom - 1);
- C.LineTo(R.Left , R.Bottom - 1);
- end;
- end;
- Txt := TSpeedButton(Control).Caption;
-
- TextRect := R;
-
- TxtFont := TSpeedButton(Control).Font;
- C.Font.Assign (TxtFont);
-
- TWidth := C.TextWidth(Txt);
- //THeight := C.TextHeight(Txt);
- TextRect.Left := (CWidth - TWidth) div 2;
-
-
- if TControl(Control).IsRightToLeft then
- TextFormat := TextFormat + DT_RTLREADING;
-
-//--- //"Holger Lembke"
-
- if (Txt <> '') then
- begin
- FillChar(TextRect, sizeof(TextRect),0);
- DrawText(C.Handle,
- PChar(Txt), Length(Txt),
- TextRect,
- DT_CALCRECT + control.DrawTextBiDiModeFlags(0));
- TWidth := TextRect.Right;
- THeight := TextRect.Bottom;
- end
- else
- begin
- TWidth := 0;
- THeight := 0;
- end;
-
-//---
-
- if (TSpeedButton(Control).Glyph <> nil) then
- begin
- B := TBitmap.Create;
- BWidth := TSpeedButton(Control).Glyph.Width div
- TSpeedButton(Control).NumGlyphs;
-
- BHeight := TSpeedButton(Control).Glyph.Height;
-
- B.Width := BWidth;
- B.Height := BHeight;
- if Length(TSpeedButton(Control).Caption) > 0 then
- Space := TSpeedButton(Control).Spacing
- else
- Space := 0;
-
- IconRect := Rect(R.Left , R.Top, R.Left+BWidth, R.Top + BHeight);
-
-
- // Suggested by : "Holger Lembke"
- Offset := 1;
- if (not Control.Enabled) and (NumGlyphs > 1) then
- Offset := 2;
- if (FLButtonBressed) and (NumGlyphs > 2) then
- Offset := 3;
- if (FDown) and (NumGlyphs > 3) then
- Offset := 4;
-
-
- B.Canvas.CopyRect (Rect(0, 0, BWidth, BHeight),
- TSpeedButton(Control).Glyph.Canvas,
- Rect((BWidth * Offset) - BWidth, 0, BWidth * Offset, BHeight));
-
-
- FLayout := TSpeedButton(Control).Layout;
- if Control.IsRightToLeft then
- begin
- if FLayout = blGlyphLeft then
- FLayout := blGlyphRight
- else
- if FLayout = blGlyphRight then FLayout := blGlyphLeft;
- end;
- case FLayout of
- blGlyphLeft:
- begin
- IconRect.Left := (CWidth - (BWidth + Space + TWidth)) div 2;
- IconRect.Right := IconRect.Left + BWidth;
- IconRect.Top := ((CHeight - (BHeight)) div 2) - 1;
- IconRect.Bottom := IconRect.Top + BHeight;
-
- TextRect.Left := IconRect.Right + Space;
- TextRect.Right := TextRect.Left + TWidth;
- TextRect.Top := (CHeight - (THeight)) div 2;
- TextRect.Bottom := TextRect.Top + THeight;
-
- end;
- blGlyphRight:
- begin
- IconRect.Right := (CWidth + (BWidth + Space + TWidth)) div 2;
- IconRect.Left := IconRect.Right - BWidth;
- IconRect.Top := (CHeight - (BHeight)) div 2;
- IconRect.Bottom := IconRect.Top + BHeight;
-
- TextRect.Right := IconRect.Left - Space;
- TextRect.Left := TextRect.Right - TWidth;
- TextRect.Top := (CHeight - (THeight)) div 2;
- TextRect.Bottom := TextRect.Top + THeight;
-
- end;
- blGlyphTop:
- begin
- IconRect.Left := (CWidth - BWidth) div 2;
- IconRect.Right := IconRect.Left + BWidth;
- IconRect.Top := (CHeight - (BHeight + Space + THeight)) div 2;
- IconRect.Bottom := IconRect.Top + BHeight;
-
- TextRect.Left := (CWidth - (TWidth)) div 2;
- TextRect.Right := TextRect.Left + TWidth;
- TextRect.Top := IconRect.Bottom + Space;
- TextRect.Bottom := TextRect.Top + THeight;
-
- end;
- blGlyphBottom:
- begin
- IconRect.Left := (CWidth - BWidth) div 2;
- IconRect.Right := IconRect.Left + BWidth;
- IconRect.Bottom := (CHeight + (BHeight + Space + THeight)) div 2;
- IconRect.Top := IconRect.Bottom - BHeight;
-
- TextRect.Left := (CWidth - (TWidth)) div 2;
- TextRect.Right := TextRect.Left + TWidth;
- TextRect.Bottom := IconRect.Top - Space;
- TextRect.Top := TextRect.Bottom - THeight;
-
- end;
-
- end;
-
- FXPStyle.DrawIcon(Control, C , B, IconRect,
- FMouseinControl,
- FIsFocused,
- TControl(Control).Enabled,
- FDown or FLButtonBressed,
- false,
- TControl(Control).IsRightToLeft);
-
- B.Free;
- end;
-
- FXPStyle.DrawTheText(Control,
- Txt, '', C,
- TextRect, false,
- TControl(Control).Enabled,
- false,
- false,
- TControl(Control).IsRightToLeft,
- TxtFont,
- TextFormat);
- finally
- C.Free;
- end;
-
-end;
-
-procedure TControlSubClass.PaintBitButn;
-var
- C: TControlCanvas;
- R: TRect;
- SelectColor, BorderColor: TColor;
- Txt: string;
- TextRect, IconRect: TRect;
- TxtFont: TFont;
- B: TBitmap;
- CWidth, CHeight, BWidth, BHeight, TWidth, THeight, Space: integer;
- TextFormat: integer;
-begin
-
- C := TControlCanvas.Create;
- try
- C.Control := Control;
-
- if (FMouseInControl or FBressed) then
- begin
- if (Control.Tag and 1000) = 1000 then
- SelectColor := NewColor(C,
- TControl(Control).Parent.Brush.Color, FXPStyle.FDimParentColorSelect)
- else
- SelectColor := NewColor(C, clBtnFace, FXPStyle.FDimParentColorSelect);
- BorderColor := NewColor(C, FXPStyle.FFSelectBorderColor,60);
- end
- else
- begin
- if (Control.Tag and 1000) = 1000 then
- SelectColor := NewColor(C, TControl(Control).Parent.Brush.Color, FXPStyle.FDimParentColor)
- else
- SelectColor := FXPStyle.FFIconBackColor;
- BorderColor := clBtnShadow;
- end;
-
- if (not FmouseinControl) and (FIsFocused) then
- begin
- BorderColor := NewColor(C, FXPStyle.FFSelectBorderColor,60);
- end;
-
- if (Control.Tag and 1001) = 1001 then
- begin
- BorderColor := SelectColor;
- end;
-
-
- TextFormat := + DT_CENTER + DT_VCENTER;
-
- R := Control.ClientRect;
-
- CWidth := (R.Right - R.Left);
- CHeight := (R.Bottom - R.Top);
-
-
- C.Brush.Color := Control.Parent.Brush.Color;
- C.FillRect(R);
-
- C.Brush.Color := SelectColor;
-
-
- C.Pen.Color := NewColor(C, BorderColor, 30);
- c.RoundRect(R.Left, R.Top, R.Right, R.Bottom, 4, 4);
-
- if (Control.Tag and 1001) <> 1001 then
- begin
- if TControl(Control).Enabled then
- if (FLButtonBressed and FmouseinControl) or (FBressed) then
- begin
- C.Pen.Color := GetShadeColor(C, BorderColor, 50);
- C.MoveTo(R.Left , R.Bottom - 2);
- C.LineTo(R.Left , R.Top + 1);
- C.LineTo(R.Left + 1, R.Top );
- C.LineTo(R.Right - 1 , R.Top );
- end
- else
- begin
- C.Pen.Color := GetShadeColor(C, BorderColor, 50);
- C.MoveTo(R.Right - 1, R.Top + 1);
- C.LineTo(R.Right - 1, R.Bottom - 2);
- C.LineTo(R.Right - 2, R.Bottom - 1);
- C.LineTo(R.Left , R.Bottom - 1);
- end;
- end;
- Txt := TBitBtn(Control).Caption;
-
- TextRect := R;
-
- TxtFont := TBitBtn(Control).Font;
- C.Font.Assign (TxtFont);
-
- TWidth := C.TextWidth(Txt);
-
- TextRect.Left := (CWidth - TWidth) div 2;
-
-
-//--- //"Holger Lembke"
-
- if (Txt <> '') then
- begin
- FillChar(TextRect, sizeof(TextRect),0);
- DrawText(C.Handle,
- PChar(Txt), Length(Txt),
- TextRect,
- DT_CALCRECT + control.DrawTextBiDiModeFlags(0));
- TWidth := TextRect.Right;
- THeight := TextRect.Bottom;
- end
- else
- begin
- TWidth := 0;
- THeight := 0;
- end;
-
-//---
- if TBitBtn(Control).IsRightToLeft then
- TextFormat := TextFormat + DT_RTLREADING;
-
-
- if (TBitBtn(Control).Glyph <> nil) then
- begin
- B := TBitmap.Create;
- BWidth := TBitBtn(Control).Glyph.Width div
- TBitBtn(Control).NumGlyphs;
-
- BHeight := TBitBtn(Control).Glyph.Height;
-
- B.Width := BWidth;
- B.Height := BHeight;
- Space := TBitBtn(Control).Spacing;
- if (Trim(TBitBtn(Control).Caption) = '') then Space := 0; //"Holger Lembke"
- IconRect := Rect(R.Left , R.Top, R.Left+BWidth, R.Top + BHeight);
-
- B.Canvas.CopyRect (Rect(0, 0, BWidth, BHeight),
- TBitBtn(Control).Glyph.Canvas,
- Rect(0, 0, BWidth, BHeight));
-
- case TBitBtn(Control).Layout of
- blGlyphLeft:
- begin
- IconRect.Left := (CWidth - (BWidth + Space + TWidth)) div 2;
- IconRect.Right := IconRect.Left + BWidth;
- IconRect.Top := (CHeight - (BHeight)) div 2;
- IconRect.Bottom := IconRect.Top + BHeight;
-
- TextRect.Left := IconRect.Right + Space;
- TextRect.Right := TextRect.Left + TWidth;
-
- TextRect.Top := (CHeight - (THeight)) div 2;
- TextRect.Bottom := TextRect.Top + THeight;
- end;
- blGlyphRight:
- begin
- IconRect.Right := (CWidth + (BWidth + Space + TWidth)) div 2;
- IconRect.Left := IconRect.Right - BWidth;
- IconRect.Top := (CHeight - (BHeight)) div 2;
- IconRect.Bottom := IconRect.Top + BHeight;
-
- TextRect.Right := IconRect.Left - Space;
- TextRect.Left := TextRect.Right - TWidth;
- TextRect.Top := (CHeight - (THeight)) div 2;
- TextRect.Bottom := TextRect.Top + THeight;
- end;
- blGlyphTop:
- begin
- IconRect.Left := (CWidth - BWidth) div 2;
- IconRect.Right := IconRect.Left + BWidth;
- IconRect.Top := (CHeight - (BHeight + Space + THeight)) div 2;
- IconRect.Bottom := IconRect.Top + BHeight;
-
- TextRect.Left := (CWidth - (TWidth)) div 2;
- TextRect.Right := TextRect.Left + TWidth;
- TextRect.Top := IconRect.Bottom + Space;
- TextRect.Bottom := TextRect.Top + THeight;
-
- end;
- blGlyphBottom:
- begin
- IconRect.Left := (CWidth - BWidth) div 2;
- IconRect.Right := IconRect.Left + BWidth;
- IconRect.Bottom := (CHeight + (BHeight + Space + THeight)) div 2;
- IconRect.Top := IconRect.Bottom - BHeight;
-
- TextRect.Left := (CWidth - (TWidth)) div 2;
- TextRect.Right := TextRect.Left + TWidth;
- TextRect.Bottom := IconRect.Top - Space;
- TextRect.Top := TextRect.Bottom - THeight;
-
- end;
- end;
-
- FXPStyle.DrawIcon(Control, C , B, IconRect,
- FMouseinControl,
- FIsFocused,
- TControl(Control).Enabled,
- false,
- false,
- TControl(Control).IsRightToLeft);
-
- B.Free;
- end;
-
- if (Control.Tag and 1002) = 1002 then
- begin
- if TBitBtn(Control).IsRightToLeft then
- TextFormat := + DT_RIGHT + DT_VCENTER
- else
- TextFormat := + DT_LEFT + DT_VCENTER;
- TextRect := R;
- InflateRect(TextRect, -4,-2);
- end;
-
- FXPStyle.DrawTheText(Control,
- Txt, '', C,
- TextRect, false,
- TControl(Control).Enabled,
- TBitBtn(Control).Default,
- false,
- TControl(Control).IsRightToLeft,
- TxtFont,
- TextFormat);
-
- finally
- C.Free;
- end;
-end;
-
-procedure TControlSubClass.PaintUpDownButton;
-var
- C: TControlCanvas;
- R: TRect;
- SelectColor, BorderColor, ArrowColor: TColor;
- P: TPoint;
- H: integer;
-
- procedure DrawUpDownButton(ARect: TRect; Arrow: integer; Active: boolean);
- begin
- if Control.Enabled then ArrowColor := clBlack else ArrowColor := clWhite;
- if Active then
- begin
- if FLButtonBressed then
- begin
- BorderColor := FXPStyle.FFSelectBorderColor;
- SelectColor := FXPStyle.FCheckedAreaSelectColor ;
- ArrowColor := clWhite;
- end
- else begin
- BorderColor := FXPStyle.FFSelectBorderColor;
- SelectColor := NewColor(C, FXPStyle.FFSelectColor, 60);//FXPStyle.FFSelectColor;
- end;
- end
- else begin
- if Control.Tag = 1000 then
- SelectColor := NewColor(C, TControl(Control).Parent.Brush.Color, FXPStyle.FDimParentColor)
- else
- SelectColor := NewColor(C, FXPStyle.FFSelectColor, FXPStyle.FDimParentColor);//clBtnFace;
- BorderColor := NewColor(C, TControl(Control).Parent.Brush.Color, 80);//SelectColor;
- end;
-
- C.Pen.Color := BorderColor;
- C.Brush.Color := SelectColor;
- C.Font.Color := ArrowColor;
-
- if C.Pixels[ARect.Left, ARect.Top] <> ColorToRGB(BorderColor) then begin
- C.Rectangle(ARect.Left, ARect.Top, ARect.Right, ARect.Bottom);
- C.Pen.Color := ArrowColor;
- DrawArrow(C, ARect.Left + ((ARect.Right - ARect.Left) div 2),
- ARect.Top + ((ARect.Bottom - ARect.Top) div 2) -2, Arrow);
- end;
- end;
-
-begin
- C := TControlCanvas.Create;
- try
- C.Control := Control;
- R := Control.ClientRect;
-
- H := (R.Bottom - R.Top) div 2;
- P := Control.ScreenToClient(Mouse.CursorPos);
- DrawUpDownButton(Rect(R.Left, R.Top, R.Right, R.Top + H), 0,
- TControl(Control).Enabled and FMouseInControl and (P.Y < H));
- DrawUpDownButton(Rect(R.Left, R.Bottom - H, R.Right, R.Bottom), 1,
- TControl(Control).Enabled and FMouseInControl and not(P.Y < H));
- finally
- C.Free;
- end;
-end;
-
-procedure TControlSubClass.PaintGroupBox;
-var
- C: TControlCanvas;
- R, RText: TRect;
- ShadowColor, LightColor: TColor;
- TextHeight, TextWidth: integer;
- Text: string;
-begin
-
- if FMsg <> WM_PAINT then exit;
- C := TControlCanvas.Create;
- try
- C.Control := Control;
-
- R := Control.ClientRect;
- C.Font.Assign (TGroupBox(Control).Font);
- C.Font.Height := TGroupBox(Control).Font.Height;
- Text := TGroupBox(Control).Caption;
-
- TextHeight := C.TextHeight(Text);
- TextWidth := C.TextWidth(Text);
- if Length(Text) = 0 then
- TextHeight := C.TextHeight(' ');
- ShadowColor := GetShadeColor(C, TGroupBox(Control).color, 60);
- LightColor := NewColor(C, TGroupBox(Control).color, 60);
-
- InflateRect(R,-1, -1);
- Inc(R.Top, (TextHeight)-1);
- C.Brush.Style := bsClear;
- C.Pen.Color := TGroupBox(Control).Color; // Control Color;
- C.Rectangle (R.Left, R.Top, R.Right, R.Bottom);
-
-
- //----Draw the outer Frame
- R := Control.ClientRect;
- Inc(R.Top, (TextHeight div 2)-1);
- C.Pen.Color := TGroupBox(Control).Color;
- C.MoveTo(R.Left + 1, R.Top); // Repeat
- C.LineTo(R.Left + 1, R.Bottom);
- if TGroupBox(Control).Ctl3D then
- Frame3D(C, R, LightColor, ShadowColor, 1)
- else
- Frame3D(C, R, ShadowColor, ShadowColor, 1);
-
-
- // Fill Upper part (outside frame)
- R := Control.ClientRect;
- R.Bottom := R.Top + (TextHeight div 2) + 1;
- C.Brush.Style := bsSolid;
- C.Brush.Color := Control.Parent.Brush.Color; // Parent Color;
- C.Pen.Color := C.Brush.Color;
- C.FillRect(R);
-
-
- if Control.IsRightToLeft then
- begin
- C.TextFlags := ETO_RTLREADING;
- RText.Right := R.Right - 9;
- RText.Left := RText.Right - TextWidth;
- end
- else
- begin
- RText.Left := R.Left + 9;
- RText.Right := RText.Left + TextWidth;
- end;
-
- RText.Top := R.Top ;
- RText.Bottom := R.Top + TextHeight;
-
- //(inside frame)
- InflateRect(R, -1, 0);
- R.Top := R.Bottom;
- R.Bottom := R.Top + (TextHeight div 2) + 1;
- C.Brush.Style := bsSolid;
- R.Left := RText.Left;
- R.Right := RText.Right;
- C.Brush.Color := TGroupBox(Control).Color; // Control Color;
- C.Pen.Color := C.Brush.Color;
- C.FillRect(R);
-
- R.Right := Control.ClientRect.Right;
-
- C.MoveTo(R.Right-2, R.Top);
- C.LineTo(R.Right-2, RText.Bottom);
-
- C.Brush.Style := bsClear;
- if Control.IsRightToLeft then
- C.TextFlags := ETO_RTLREADING;
-
- C.TextRect (RText, RText.Left, RText.Top, Text);
-
- // Draw Upper Line
- R := Control.ClientRect;
- Inc(R.Top, (TextHeight div 2) + 1);
- if TGroupBox(Control).Ctl3D then
- C.Pen.Color := LightColor
- else
- C.Pen.Color := ShadowColor;
- C.MoveTo(R.Left, R.Top);
- C.LineTo(RText.Left, R.Top);
-
- C.MoveTo(RText.Right, R.Top);
- C.LineTo(R.Right -1, R.Top);
-
- finally
- C.Free;
- end;
-end;
-
-procedure TControlSubClass.PaintPanel;
-var
- C: TControlCanvas;
- R: TRect;
- ShadowColor, LightColor: TColor;
-begin
- if FMsg <> WM_PAINT then exit;
- C := TControlCanvas.Create;
- try
- C.Control := Control;
-
- R := Control.ClientRect;
- ShadowColor := GetShadeColor(C, TPanel(Control).color, 60);
- LightColor := NewColor(C, TPanel(Control).color, 60);
- if TPanel(Control).BevelOuter <> bvNone then
- begin
- if TPanel(Control).BevelOuter = bvLowered then
- Frame3D(C, R, ShadowColor, LightColor, TPanel(Control).BevelWidth)
- else
- Frame3D(C, R, LightColor, ShadowColor, TPanel(Control).BevelWidth);
- end;
-
- if TPanel(Control).BevelInner <> bvNone then
- begin
- InflateRect(R, -TPanel(Control).BorderWidth, -TPanel(Control).BorderWidth);
-
- if TPanel(Control).BevelInner = bvLowered then
- Frame3D(C, R, ShadowColor, LightColor, TPanel(Control).BevelWidth)
- else
- Frame3D(C, R, LightColor, ShadowColor, TPanel(Control).BevelWidth);
- end;
- finally
- C.Free;
- end;
-
-end;
-
-type
- TCastWinControl = class(TWinControl);
-
-procedure TControlSubClass.PaintNCWinControl;
-var
- DC: HDC;
- C: TControlCanvas;
- R: TRect;
- BorderColor: TColor;
-
-begin
- C := TControlCanvas.Create;
- DC := GetWindowDC(TWinControl(Control).Handle);
- try
- C.Control := Control;
- C.Handle := DC;
-
- FXPStyle.SetGlobalColor(C);
-
- if (FMouseInControl) or (FIsFocused) then
- begin
- if FBorderStyle = bsSingle then
- BorderColor := NewColor(C, FXPStyle.FFSelectBorderColor, 60)
- else
- BorderColor := NewColor(C, FXPStyle.FFSelectBorderColor, 80);
- end
- else
- begin
- if FBorderStyle = bsSingle then
- borderColor := GetShadeColor(C, Control.Parent.Brush.Color, 60)
- else
- borderColor := Control.Parent.Brush.Color;
- end;
-
- if TCastWinControl(Control).Ctl3D <> false then
- begin
- FBuilding := true;
- TCastWinControl(Control).Ctl3D := false;
- end;
-
- C.Pen.Color := BorderColor;
- C.Brush.Style := bsClear;
-
- R := Rect(0, 0, Control.Width, Control.Height);
- C.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
- finally
- C.Free;
- ReleaseDC(TWinControl(Control).Handle, DC);
- end;
-end;
-
-procedure TControlSubClass.PaintProgressBar;
-var
- DC: HDC;
- C: TControlCanvas;
- R: TRect;
- BorderColor: TColor;
-
-begin
- C := TControlCanvas.Create;
- DC := GetWindowDC(TWinControl(Control).Handle);
- try
- C.Control := Control;
- C.Handle := DC;
-
- if (FMouseInControl) then
- BorderColor := FXPStyle.FFSelectBorderColor
- else
- BorderColor := GetShadeColor(C, Control.Parent.Brush.Color, 60);
-
- C.Pen.Color := BorderColor;
- C.Brush.Style := bsClear;
-
- R := Rect(0, 0, Control.Width, Control.Height);
- C.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
- finally
- C.Free;
- ReleaseDC(TWinControl(Control).Handle, DC);
- end;
-end;
-
-procedure TControlSubClass.PaintHotKey;
-var
- DC: HDC;
- C: TControlCanvas;
- R: TRect;
- BorderColor: TColor;
-
-begin
- C := TControlCanvas.Create;
- DC := GetWindowDC(TWinControl(Control).Handle);
- try
- C.Control := Control;
- C.Handle := DC;
-
- FXPStyle.SetGlobalColor(C);
-
- if (FMouseInControl) or (FIsFocused) then
- BorderColor := NewColor(C, FXPStyle.FFSelectBorderColor, 60)
- else
- BorderColor := GetShadeColor(C, Control.Parent.Brush.Color, 60);
-
- C.Pen.Color := BorderColor;
- C.Brush.Style := bsClear;
-
- R := Rect(0, 0, Control.Width, Control.Height);
- C.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
- InflateRect(R, -1, -1);
- C.Pen.Color := clWindow;
- C.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
-
- finally
- C.Free;
- ReleaseDC(TWinControl(Control).Handle, DC);
- end;
-end;
-
-// UCXPStyleManager
-//
-// Uwe Runkel, uwe@runkel.info
-//
-// Enable FXPStyle to be used globally (all windows in the application use XPStyle).
-// Hence you don't need more than one instance in an application. However it is also
-// possible to have more than one instance. But only one instance is used for subclassing.
-// If this instance is destroyed the manager looks if there is another instance which is
-// allowed to subclass.
-
-constructor TUCXPStyleManager.Create;
-begin
- inherited Create;
- FXPStyleList := TList.Create; // list of XPStyle components in the application
- FFormList := TList.Create; // list of subclassed forms
- FPendingFormsList := TList.Create; // list of forms inserted but not subclassed yet
- FDisableSubclassing := false; // This disables the UCXPStyleManager
- FActiveXPStyle := nil; // Currently for subclassing used XPStyle
- // if this is nil no subclassing is done.
- {the If condition was added because sometimes it freezes delphi when
- more than two windows with the UCXPStyle component are opened and the closed}
-
- if not (csDesigning in Application.ComponentState) then
- Application.HookMainWindow(MainWindowHook);
-end;
-
-destructor TUCXPStyleManager.Destroy;
-begin
-{Bret Goldsmith bretg@yahoo.com}
-{alexs }
- {the If condition was added because sometimes it freezes delphi when
- more than two windows with the UCXPStyle component are opened and the closed}
- if not (csDesigning in Application.ComponentState) then
- Application.UnhookMainWindow(MainWindowHook);
-
- FPendingFormsList.Free;
- FXPStyleList.Free;
- FFormList.Free;
- inherited;
-end;
-
-// A component has been inserted or removed, if it is a form and subclassing is
-// allowed then subclass it, so this form doesn't need a XPStyle component as well
-procedure TUCXPStyleManager.Notification(AComponent: TComponent;
- AOperation: TOperation);
-begin
- if (FActiveXPStyle = nil) or FDisableSubclassing then Exit;
- case AOperation of
- opInsert:
- // At this place we cannot subclass the control because it did not yet get its
- // initial window procedure.
- // So we add it to an intermediate list and subclass it at a later moment.
- if (AComponent is TCustomForm) and (FPendingFormsList.IndexOf(AComponent) < 0) then
- FPendingFormsList.Add(AComponent);
- opRemove:
- if (AComponent is TWinControl) then
- begin
- if AComponent is TCustomForm then begin
- // Remove the destroyed form from any form list if it is still there.
- FPendingFormsList.Remove(AComponent);
- FFormList.Remove(AComponent);
- end;
- end;
- end;
-end;
-
-// Add some XPStyle to the manager
-procedure TUCXPStyleManager.Add(AXPStyle: TUCXPStyle);
-begin
- FXPStyleList.Add(AXPStyle);
- FFormList.Add(AXPStyle.Form);
- if (FActiveXPStyle = nil) and AXPStyle.Active and not(AXPStyle.DisableSubclassing) and
- not(FDisableSubclassing) then
- begin
- FActiveXPStyle := AXPStyle;
- CollectForms;
- end;
-end;
-
-// Remove some XPStyle from the manager
-procedure TUCXPStyleManager.Delete(AXPStyle: TUCXPStyle);
-begin
- if AXPStyle = FActiveXPStyle then
- UpdateActiveXPStyle(AXPStyle);
- FXPStyleList.Remove(AXPStyle);
-end;
-
-// Select a new ActiveXPStyle (except the one given in the parameter)
-procedure TUCXPStyleManager.UpdateActiveXPStyle(AXPStyle: TUCXPStyle);
-var
- Cnt : integer;
- XPM : TUCXPStyle;
- Item: TControlSubClass;
- Comp: TControlSubClass;
-
-begin
- XPM := FindSubclassingXPStyle(AXPStyle);
- if XPM = nil then
- begin
- FPendingFormsList.Clear;
- if not Assigned(Application.MainForm) then Exit;
- for Cnt := 0 to FFormList.Count - 1 do
- if (AXPStyle = nil) or (FFormList[Cnt] <> AXPStyle.Form) then
- RemoveChildSubclassing(TCustomForm(FFormList[Cnt]));
- FFormList.Clear;
- FActiveXPStyle := XPM;
- end
- else begin
- if FActiveXPStyle = nil then
- begin
- FActiveXPStyle := XPM;
- CollectForms;
- end
- else begin
- for Cnt := 0 to FActiveXPStyle.ComponentCount - 1 do
- if (FActiveXPStyle.Components[Cnt] is TControlSubClass) then
- begin
- Comp := FActiveXPStyle.Components[Cnt] as TControlSubClass;
- if (AXPStyle <> nil) and not(AXPStyle.Form.ContainsControl(Comp.Control)) then
- begin
- Item := TControlSubClass.Create(XPM);
- Item.Control := Comp.Control;
- Item.orgWindowProc := Comp.orgWindowProc;
- Item.Control.WindowProc := Item.ControlSubClass;
- Item.FXPStyle := XPM;
- Item.FCtl3D := Comp.FCtl3D;
- Item.FBorderStyle := Comp.FBorderStyle;
- {Item.FOnDrawCell := Comp.FOnDrawCell;}
- Item.FDefaultDrawing := Comp.FDefaultDrawing;
- Item.FSelCol := Comp.FSelCol;
- Item.FSelRow := Comp.FSelRow;
- end;
- end;
- FActiveXPStyle := XPM;
- end;
- end;
-end;
-
-// Find an XPStyle which can be used for subclassing
-function TUCXPStyleManager.FindSubclassingXPStyle(Exclude: TUCXPStyle): TUCXPStyle;
-var
- XPM: TUCXPStyle;
- Cnt: integer;
-
-begin
- Result := nil;
- if (FXPStyleList.Count = 0) or FDisableSubclassing then Exit;
- Cnt := 0;
- repeat
- XPM := TUCXPStyle(FXPStyleList[Cnt]);
- if XPM.Active and not(XPM.DisableSubclassing) and (XPM <> Exclude)
- then Result := XPM;
- inc(Cnt);
- until (Result <> nil) or (Cnt = FXPStyleList.Count);
-end;
-
-// Listens to messages sent to the application and looks if a window is inserted.
-function TUCXPStyleManager.MainWindowHook(var Message: TMessage): boolean;
-var
- i: integer;
- NewForm: TCustomForm;
-
- FMenuItem: TMenuItem; // +jt
- FMenu: TMenu; // +jt
- r: TRECT; // +jt
- pt: TPOINT; // +jt
- hWndM: HWND; // +j
-begin
- Result := false;
- // +ahuser// ahuser: "Andreas Hausladen"
- if UCXPStyleManager = nil then // prevent AVs on termination
- Exit;
- // +ahuser
- if Message.Msg = WM_DRAWMENUBORDER then
- begin
- FMenuItem:=TMenuItem(Message.LParam);
- if Assigned(FMenuItem) then
- begin
- GetMenuItemRect(0,FMenuItem.Parent.Handle,FMenuItem.MenuIndex,r);
- FMenu := FMenuItem.Parent.GetParentMenu;
- pt.x:=r.Left+(r.Right-r.Left) div 2;
- pt.y:=r.Top+(r.Bottom-r.Top) div 2;
- hWndM :=WindowFromPoint(pt);
- if (hWndM <> 0) and Assigned(FActiveXPStyle) then //Rappido 2003 09 13
- FActiveXPStyle.DrawWindowBorder(hWndM, FMenu.IsRightToLeft);
- end;
- end;
-
- if Message.Msg = WM_DRAWMENUBORDER2 then
- begin
- hWndM := HWND(Message.LParam);
- if (hWndM <> 0) and Assigned(FActiveXPStyle) then //Rappido 2003 09 13
- FActiveXPStyle.DrawWindowBorder(hWndM, boolean(Message.WParam));
- end;
-
- if (Assigned(FPendingFormsList)) and (FPendingFormsList <> nil) then
- try
- if (FPendingFormsList.Count > 0) then
- begin
- for i := 0 to FPendingFormsList.Count - 1 do begin
- NewForm := TCustomForm(FPendingFormsList[i]);
- if FFormList.IndexOf(NewForm) < 0 then begin
- FFormList.Add(NewForm);
- if not(FDisableSubclassing) then
- FActiveXPStyle.InitItems(NewForm, true, true);
- end;
- end;
- FPendingFormsList.Clear;
- end;
- except
- end;
-
-
-end;
-
-// Collect all forms of the application and subclass them
-procedure TUCXPStyleManager.CollectForms;
-var
- FCnt, CCnt: integer;
- HasXPStyle : boolean;
-
-begin
- if not FDisableSubclassing then
- for FCnt := 0 to Screen.FormCount - 1 do
- if (FFormList.IndexOf(Screen.Forms[FCnt]) < 0) and (Screen.Forms[FCnt].Tag <> 999) then
- begin
- HasXPStyle := false;
- for CCnt := 0 to Screen.Forms[FCnt].ComponentCount - 1 do
- HasXPStyle := HasXPStyle or (Screen.Forms[FCnt].Components[CCnt] is TUCXPStyle);
- if not(HasXPStyle) then
- FPendingFormsList.Add(Screen.Forms[FCnt]);
- end;
-end;
-
-// Remove subclassing from the original components
-procedure TUCXPStyleManager.RemoveChildSubclassing(AForm: TCustomForm);
-var
- Cnt : integer;
- Comp : TComponent;
- Control: TControl;
-
-begin
-//exit;
- for Cnt := FActiveXPStyle.ComponentCount - 1 downto 0 do begin
- Comp := FActiveXPStyle.Components[Cnt];
- if (Comp is TControlSubClass) then begin
- Control := TControlSubClass(Comp).Control;
- if AForm.ContainsControl(Control) then begin
- try
- Control.WindowProc := TControlSubClass(Comp).orgWindowProc;
- if Control is TCustomEdit then begin
- TEdit(Control).Ctl3D := TControlSubClass(Comp).FCtl3D;
- TEdit(Control).BorderStyle := TControlSubClass(Comp).FBorderStyle;
- end;
- if Control.ClassName = 'TDBLookupComboBox' then
- TComboBox(Control).Ctl3D := TControlSubClass(Comp).FCtl3D;
- if Control is TCustomListBox then begin
- TListBox(Control).Ctl3D := TControlSubClass(Comp).FCtl3D;
- TListBox(Control).BorderStyle := TControlSubClass(Comp).FBorderStyle;
- end;
- if Control is TCustomListView then begin
- TListView(Control).Ctl3D := TControlSubClass(Comp).FCtl3D;
- TListView(Control).BorderStyle := TControlSubClass(Comp).FBorderStyle;
- end;
- if Control is TCustomTreeView then begin
- TTreeView(Control).Ctl3D := TControlSubClass(Comp).FCtl3D;
- TTreeView(Control).BorderStyle := TControlSubClass(Comp).FBorderStyle;
- end;
- except
- end;
- end;
- end;
- end;
-end;
-
-// Add a form manually to the current XPStyle
-procedure TUCXPStyleManager.AddForm(AForm: TCustomForm);
-begin
- if FPendingFormsList.IndexOf(AForm) < 0 then
- FPendingFormsList.Add(AForm);
-end;
-
-// Remove a form manually from the current XPStyle
-procedure TUCXPStyleManager.RemoveForm(AForm: TCustomForm);
-begin
- if FPendingFormsList.IndexOf(AForm) >= 0 then
- FPendingFormsList.Remove(AForm);
- if FFormList.IndexOf(AForm) >= 0 then
- FFormList.Remove(AForm);
-end;
-
-// Disable/Enable subclassing by the manager
-procedure TUCXPStyleManager.SetDisableSubclassing(AValue: boolean);
-begin
- if FDisableSubclassing = AValue then Exit;
- FDisableSubclassing := AValue;
- UpdateActiveXPStyle(nil);
-end;
-
-// Check if a Form is subclassed
-function TUCXPStyleManager.IsFormSubclassed(AForm: TCustomForm): boolean;
-begin
- Result := ((FFormList <> nil) and (FFormList.IndexOf(AForm) >= 0)) or
- ((FPendingFormsList <> nil) and (FPendingFormsList.IndexOf(AForm) >= 0));
-end;
-
-// Check if a Component is subclassed
-function TUCXPStyleManager.IsComponentSubclassed(AComponent: TComponent): boolean;
-var
- Cnt: integer;
-
-begin
- Result := false;
- with FActiveXPStyle do
- for Cnt := 0 to ComponentCount - 1 do
- if Components[Cnt] is TControlSubClass then
- if TControlSubClass(Components[Cnt]).Control = TControl(AComponent) then
- begin
- Result := True;
- Break; // ahuser
- end;
-end;
-initialization
- InitControls;
- //else
- // exit;
-finalization
- DoneControls;
-end.
-
diff --git a/internal/2.31RC1/1/Source/UcConsts_Language.pas b/internal/2.31RC1/1/Source/UcConsts_Language.pas
deleted file mode 100644
index c66c247..0000000
--- a/internal/2.31RC1/1/Source/UcConsts_Language.pas
+++ /dev/null
@@ -1,971 +0,0 @@
-unit UcConsts_Language;
-
-interface
-
-Uses SysUtils;
-
-Type TUCLanguage = ( ucPortuguesBr, ucEnglish, ucSpanish, ucFrench );
-
-Const MaxArray = 227;
-
-Const UC_PTBR : Array [0..MaxArray,0..1] of string = (
- ('Const_Contr_TitleLabel','Seleção de Componentes do Form. :'),
- ('Const_Contr_GroupLabel','Grupo :') ,
- ('Const_Contr_CompDispLabel','Componentes Disponíveis :'),
- ('Const_Contr_CompSelLabel','Componentes Selecionados :'),
- ('Const_Contr_BtOK','&OK'),
- ('Const_Contr_BTCancel','&Cancelar'),
- ('Const_Contr_DescCol','Descrição'),
- ('Const_Contr_BtSellAllHint','Selecionar Todos'),
- ('Const_Contr_BtSelHint','Selecionar'),
- ('Const_Contr_BtUnSelHint','Desmarcar'),
- ('Const_Contr_BtUnSelAllHint','Desmarcar Todos'),
- ('Const_Msgs_BtNew','&Nova Mensagem'),
- ('Const_Msgs_BtReplay','&Responder'),
- ('Const_Msgs_BtForward','E&ncaminhar'),
- ('Const_Msgs_BtDelete','&Excluir'),
- ('Const_Msgs_BtClose','&Fechar'),
- ('Const_Msgs_WindowCaption','Mensagens do Sistema'),
- ('Const_Msgs_ColFrom','Remetente'),
- ('Const_Msgs_ColSubject','Assunto'),
- ('Const_Msgs_ColDate','Data'),
- ('Const_Msgs_PromptDelete','Confirma excluir as mensagens selecionadas ?'),
- ('Const_Msgs_PromptDelete_WindowCaption','Apagar mensagens'),
- ('Const_Msgs_NoMessagesSelected','Não existem mensagens selecionadas'),
- ('Const_Msgs_NoMessagesSelected_WindowCaption','Informação'),
- ('Const_MsgRec_BtClose','&Fechar'),
- ('Const_MsgRec_WindowCaption','Mensagem'),
- ('Const_MsgRec_Title','Mensagem Recebida'),
- ('Const_MsgRec_LabelFrom','De :'),
- ('Const_MsgRec_LabelDate','Data'),
- ('Const_MsgRec_LabelSubject','Assunto'),
- ('Const_MsgRec_LabelMessage','Mensagem'),
- ('Const_MsgSend_BtSend','&Enviar'),
- ('Const_MsgSend_BtCancel','&Cancelar'),
- ('Const_MsgSend_WindowCaption','Mensagem'),
- ('Const_MsgSend_Title','Enviar Nova Mensagem'),
- ('Const_MsgSend_GroupTo','Para'),
- ('Const_MsgSend_RadioUser','Usuário :'),
- ('Const_MsgSend_RadioAll','Todos'),
- ('Const_MsgSend_GroupMessage','Mensagem'),
- ('Const_MsgSend_LabelSubject','Assunto'),
- ('Const_MsgSend_LabelMessageText','Texto da mensagem'),
- ('MsgExceptConnection','Não informado o Connection, Transaction ou Database do componente %s'),
- ('MsgExceptTransaction','Não informado o Transaction do componente %s'),
- ('MsgExceptDatabase','Não informado o Database do componente %s'),
- ('MsgExceptPropriedade','Favor informar a propriedade %s'),
- ('MsgExceptUserMngMenu','Informe na propriedade UsersForm.MenuItem ou UsersForm.Action o Item responsável pelo controle de usuários'),
- ('MsgExceptUserProfile','Informe na propriedade UsersProfile.MenuItem ou UsersProfile.Action o Item responsável pelo controle de Perfil de usuários'),
- ('MsgExceptChagePassMenu','Informe na propriedade ChangePasswordForm.MenuItem or .Action o Item que permite ao usuário alterar sua senha'),
- ('MsgExceptAppID','Na propriedade ApplicationID informe um nome para identificar a aplicação na tabela de permissões'),
- ('MsgExceptUsersTable','Na propriedade TableUsers informe o nome da tabela que será criada para armazenar os dados dos usuários'),
- ('MsgExceptRightsTable','Na propriedade TableRights informe o nome da tabela que será criada para armazenar as permissões dos usuários'),
- ('MsgExceptConnector','Propriedade DataConnector não definida!'),
- ('Const_Men_AutoLogonError','Falha de Auto Logon!' + #13 + #10 + 'Informe um usuário e senha válidos.'),
- ('Const_Men_SenhaDesabitada','Retirada senha do Login %s'),
- ('Const_Men_SenhaAlterada','Senha alterada com sucesso!'),
- ('Const_Men_MsgInicial','ATENÇÃO Login Inicial:' + #13 + #10 + #13 + #10 + 'Usuário : :user' + #13 + #10 + 'Senha : :password' + #13 + #10 + #13 + #10 + 'Defina as permissões para este usuário.'),
- ('Const_Men_MaxTentativas','%d Tentativas de login inválido. Por motivos de segurança o ' + #13 + #10 + 'sistema será fechado.'),
- ('Const_Men_LoginInvalido','Usuário ou Senha inválidos!'),
- ('Const_Men_UsuarioExiste','O Usuário "%s" já está cadastrado no sistema !!'),
- ('Const_Men_PasswordExpired','Atenção, sua senha expirou, favor troca-la'),
- ('Const_Log_BtCancelar','&Cancelar'),
- ('Const_Log_BtOK','&OK'),
- ('Const_Log_LabelSenha','Senha :'),
- ('Const_Log_LabelUsuario','Usuário :'),
- ('Const_Log_WindowCaption','Login'),
- ('Const_Log_LbEsqueciSenha','Esqueci a senha'),
- ('Const_Log_MsgMailSend','A senha foi enviada para o seu email.'),
- ('Const_Log_LabelTentativa','Tentativa : '),
- ('Const_Log_LabelTentativas','Máximo de Tentativas : '),
- ('Const_LogC_WindowCaption','Segurança'),
- ('Const_LogC_LabelDescricao','Log do Sistema'),
- ('Const_LogC_LabelUsuario','Usuário :'),
- ('Const_LogC_LabelData','Data :'),
- ('Const_LogC_LabelNivel','Nível mínimo :'),
- ('Const_LogC_ColunaAppID','AppID'),
- ('Const_LogC_ColunaNivel','Nível'),
- ('Const_LogC_ColunaMensagem','Mensagem'),
- ('Const_LogC_ColunaUsuario','Usuário'),
- ('Const_LogC_ColunaData','Data'),
- ('Const_LogC_BtFiltro','&Aplicar Filtro'),
- ('Const_LogC_BtExcluir','&Excluir Log'),
- ('Const_LogC_BtFechar','&Fechar'),
- ('Const_LogC_ConfirmaExcluir','Confirma excluir todos os registros de log selecionados ?'),
- ('Const_LogC_ConfirmaDelete_WindowCaption','Confirma exclusão'),
- ('Const_LogC_Todos','Todos'),
- ('Const_LogC_Low','Baixo'),
- ('Const_LogC_Normal','Normal'),
- ('Const_LogC_High','Alto'),
- ('Const_LogC_Critic','Crítico'),
- ('Const_LogC_ExcluirEfectuada','Exclusão de log´s do sistema : Usuário = "%s" | Data = %s a %s | Nível <= %s'),
- ('Const_Cad_WindowCaption','Segurança'),
- ('Const_Cad_LabelDescricao','Cadastro de Usuários'),
- ('Const_Cad_ColunaNome','Nome'),
- ('Const_Cad_ColunaLogin','Login'),
- ('Const_Cad_ColunaEmail','Email'),
- ('Const_Cad_BtAdicionar','&Adicionar'),
- ('Const_Cad_BtAlterar','A<erar'),
- ('Const_Cad_BtExcluir','&Excluir'),
- ('Const_Cad_BtPermissoes','A&cessos'),
- ('Const_Cad_BtSenha','&Senha'),
- ('Const_Cad_BtFechar','&Fechar'),
- ('Const_Cad_ConfirmaExcluir','Confirma excluir o usuário "%s" ?'),
- ('Const_Cad_ConfirmaDelete_WindowCaption','Excluir usuário'),
- ('Const_Prof_WindowCaption','Segurança'),
- ('Const_Prof_LabelDescricao','Perfil de Usuários'),
- ('Const_Prof_ColunaNome','Perfil'),
- ('Const_Prof_BtAdicionar','&Adicionar'),
- ('Const_Prof_BtAlterar','A<erar'),
- ('Const_Prof_BtExcluir','&Excluir'),
- ('Const_Prof_BtPermissoes','A&cessos'),
- ('Const_Prof_BtSenha','&Senha'),
- ('Const_Prof_BtFechar','&Fechar'),
- ('Const_Prof_ConfirmaExcluir','Existem usuários com o perfil "%s". Confirma excluir?'),
- ('Const_Prof_ConfirmaDelete_WindowCaption','Delete profile'),
- ('Const_Inc_WindowCaption','Cadastro de Usuários'),
- ('Const_Inc_LabelAdicionar','Adicionar Usuário'),
- ('Const_Inc_LabelAlterar','Alterar Usuário'),
- ('Const_Inc_LabelNome','Nome :'),
- ('Const_Inc_LabelLogin','Login :'),
- ('Const_Inc_LabelEmail','Email :'),
- ('Const_Inc_LabelPerfil','Perfil :'),
- ('Const_Inc_CheckPrivilegiado','Usuário privilegiado'),
- ('Const_Inc_BtGravar','&Gravar'),
- ('Const_Inc_BtCancelar','Cancelar'),
- ('Const_Inc_CheckEspira','Senha do usuário não expira'),
- ('Const_Inc_Dia','Dias'),
- ('Const_Inc_ExpiraEm','Expira em'),
- ('Const_PInc_WindowCaption','Perfil de Usuários'),
- ('Const_PInc_LabelAdicionar','Adicionar Perfil'),
- ('Const_PInc_LabelAlterar','Alterar Perfil'),
- ('Const_PInc_LabelNome','Descrição :'),
- ('Const_PInc_BtGravar','&Gravar'),
- ('Const_PInc_BtCancelar','Cancelar'),
- ('Const_Perm_WindowCaption','Segurança'),
- ('Const_Perm_LabelUsuario','Permissões do Usuário :'),
- ('Const_Perm_LabelPerfil','Permissões do Perfil :'),
- ('Const_Perm_PageMenu','Itens do Menu'),
- ('Const_Perm_PageActions','Ações'),
- ('Const_Perm_PageControls','Controles'),
- ('Const_Perm_BtLibera','&Liberar'),
- ('Const_Perm_BtBloqueia','&Bloquear'),
- ('Const_Perm_BtGravar','&Gravar'),
- ('Const_Perm_BtCancelar','&Cancelar'),
- ('Const_Troc_WindowCaption','Segurança'),
- ('Const_Troc_LabelDescricao','Trocar Senha'),
- ('Const_Troc_LabelSenhaAtual','Senha Atual :'),
- ('Const_Troc_LabelNovaSenha','Nova Senha :'),
- ('Const_Troc_LabelConfirma','Confirmação :'),
- ('Const_Troc_BtGravar','&Gravar'),
- ('Const_Troc_BtCancelar','Cancelar'),
- ('Const_ErrPass_SenhaAtualInvalida','Senha Atual não confere!'),
- ('Const_ErrPass_ErroNovaSenha','Os campos: Nova Senha e Confirmação devem ser iguais.'),
- ('Const_ErrPass_NovaIgualAtual','Nova senha igual a senha atual'),
- ('Const_ErrPass_SenhaObrigatoria','A Senha é obrigatória'),
- ('Const_ErrPass_SenhaMinima','A senha deve conter no mínimo %d caracteres'),
- ('Const_ErrPass_SenhaInvalida','Proibido utilizar senhas obvias!'),
- ('Const_ErrPass_ForcaTrocaSenha','Mudança de senha obrigatória'),
- ('Const_DefPass_WindowCaption','Definir senha do usuário : "%s"'),
- ('Const_DefPass_LabelSenha','Senha :'),
- ('Const_TableUsers_FieldUserID','UCIdUser'),
- ('Const_TableUsers_FieldUserName','UCUserName'),
- ('Const_TableUsers_FieldLogin','UCLogin'),
- ('Const_TableUsers_FieldPassword','UCPassword'),
- ('Const_TableUsers_FieldEmail','UCEmail'),
- ('Const_TableUsers_FieldPrivileged','UCPrivileged'),
- ('Const_TableUsers_FieldTypeRec','UCTypeRec'),
- ('Const_TableUsers_FieldProfile','UCProfile'),
- ('Const_TableUsers_FieldKey','UCKey'),
- ('Const_TableUsers_TableName','UCTabUsers'),
- ('Const_TableUsers_FieldDateExpired','UCPASSEXPIRED'),
- ('Const_TableUser_FieldUserExpired','UCUserExpired'),
- ('Const_TableUser_FieldUserDaysSun','UCUserDaysSun'),
- ('Const_TableUser_FieldUserInative','UCInative'),
- ('Const_TableRights_FieldUserID','UCIdUser'),
- ('Const_TableRights_FieldModule','UCModule'),
- ('Const_TableRights_FieldComponentName','UCCompName'),
- ('Const_TableRights_FieldFormName','UCFormName'),
- ('Const_TableRights_FieldKey','UCKey'),
- ('Const_TableRights_TableName','UCTabRights'),
- ('Const_TableUsersLogged_FieldLogonID','UCIdLogon'),
- ('Const_TableUsersLogged_FieldUserID','UCIdUser'),
- ('Const_TableUsersLogged_FieldApplicationID','UCApplicationId'),
- ('Const_TableUsersLogged_FieldMachineName','UCMachineName'),
- ('Const_TableUsersLogged_FieldData','UCData'),
- ('Const_TableUsersLogged_TableName','UCTabUsersLogged'),
- ('Const_Evento_Insert','Inserido'),
- ('Const_Evento_Delete','Apagado'),
- ('Const_Evento_Edit','Editado'),
- ('Const_Evento_NewRecord','Novo registro'),
- ('Const_Hist_All','Todos'),
- ('Const_Msg_LimpHistorico','Excluir todo o conteúdo do histórico ?'),
- ('Const_Msg_MensConfirma','Confirmação'),
- ('Const_Msg_LogEmptyHistory','Usuário %s apagou todo o histórico as %s'),
- ('Const_LabelDescricao','Histórico de tabelas'),
- ('Const_LabelUser','Usuário'),
- ('Const_LabelForm','Formulário'),
- ('Const_LabelEvento','Evento'),
- ('Const_LabelTabela','Tabela'),
- ('Const_LabelDataEvento','Data'),
- ('Const_LabelHoraEvento','Hora'),
- ('Const_Msg_NewRecord','%s inseriu um novo registro'),
- ('Const_Hist_TableName','UCTABHistory'),
- ('Const_Hist_FieldApplicationID','ApplicationID'),
- ('Const_Hist_FieldUserID','UserID'),
- ('Const_Hist_FieldEventDate','EventDate'),
- ('Const_Hist_FieldEventTime','EventTime'),
- ('Const_Hist_FieldForm','Form'),
- ('Const_Hist_FieldCaptionForm','FormCaption'),
- ('Const_Hist_FieldEvent','Event'),
- ('Const_Hist_FieldObs','Obs'),
- ('Const_Hist_FieldTableName','tName'),
- ('Const_Hist_MsgExceptPropr','Favor informar a propriedade %s'),
- ('Const_Hist_BtnFiltro','&Aplicar Filtro'),
- ('Const_Hist_BtnExcluir','&Excluir Histórico'),
- ('Const_Hist_BtnFechar','&Fechar'),
-
- ('Const_UserLogged_BtnMsg','&Mensagem'),
- ('Const_UserLogged_Refresh','&Atualizar'),
- ('Const_UserLogged_LabelDescricao','Usuários Logados'),
- ('Const_UserLogged_LabelCaption','Usuários Logados no sistema'),
- ('Const_CadColuna_Computer','Computador'),
- ('Const_CadColuna_Data','Data'),
- ('Const_UserLogged_InputCaption','Mensagem'),
- ('Const_UserLogged_InputText','Digite sua mensagem'),
- ('Const_UserLogged_MsgSystem','Mensagem do sistema'),
- ('Const_Men_LoginInativo','Atenção, seu login esta inativo'),
- ('Const_Inc_LabelStatus','Status'),
- ('Const_Inc_StatusActive','Ativo'),
- ('Const_Inc_StatusDisabled','Inativo')
- );
-
-{------------------------------------------------------------------------------ }
-
-Const UC_ENGLISH : Array [0..MaxArray,0..1] of string = (
- ('Const_Contr_TitleLabel','Team of Components of the Form. :'),
- ('Const_Contr_GroupLabel','Group:'),
- ('Const_Contr_CompDispLabel','Available components:'),
- ('Const_Contr_CompSelLabel','Selected components:'),
- ('Const_Contr_BtOK','&OK'),
- ('Const_Contr_BTCancel','&Cancel'),
- ('Const_Contr_DescCol','Description'),
- ('Const_Contr_BtSellAllHint','Select All'),
- ('Const_Contr_BtSelHint','Select'),
- ('Const_Contr_BtUnSelHint','Unselect'),
- ('Const_Contr_BtUnSelAllHint','Unselect All'),
- ('Const_Msgs_BtNew','&New Message'),
- ('Const_Msgs_BtReplay','&Replay'),
- ('Const_Msgs_BtForward','F&orward'),
- ('Const_Msgs_BtDelete','&Delete'),
- ('Const_Msgs_BtClose','&Close'),
- ('Const_Msgs_WindowCaption','Messages of the System'),
- ('Const_Msgs_ColFrom','From'),
- ('Const_Msgs_ColSubject','Subject'),
- ('Const_Msgs_ColDate','Date'),
- ('Const_Msgs_PromptDelete','It confirms exclusion of the selected messages?'),
- ('Const_Msgs_PromptDelete_WindowCaption','Delete messages'),
- ('Const_Msgs_NoMessagesSelected','No Messages selected'),
- ('Const_Msgs_NoMessagesSelected_WindowCaption','Information'),
- ('Const_MsgRec_BtClose','&Close'),
- ('Const_MsgRec_WindowCaption','Message'),
- ('Const_MsgRec_Title','Received message'),
- ('Const_MsgRec_LabelFrom','From:'),
- ('Const_MsgRec_LabelDate','Date'),
- ('Const_MsgRec_LabelSubject','Subject'),
- ('Const_MsgRec_LabelMessage','Message'),
- ('Const_MsgSend_BtSend','&Send'),
- ('Const_MsgSend_BtCancel','&Cancel'),
- ('Const_MsgSend_WindowCaption','Message'),
- ('Const_MsgSend_Title','Send New Message'),
- ('Const_MsgSend_GroupTo','To'),
- ('Const_MsgSend_RadioUser','User:'),
- ('Const_MsgSend_RadioAll','All'),
- ('Const_MsgSend_GroupMessage','Message'),
- ('Const_MsgSend_LabelSubject','Subject'),
- ('Const_MsgSend_LabelMessageText','Message text'),
- ('MsgExceptConnection','Done not informed the Connection, Transaction or Database component %s'),
- ('MsgExceptTransaction','Done not informed the Transaction component %s'),
- ('MsgExceptDatabase','Done not informed the Database do component %s'),
- ('MsgExceptPropriedade','Inform the property %s'),
- ('MsgExceptUserMngMenu','Inform in the property UsersForm.MenuItem or UsersForm.Action the item responsible for the users control'),
- ('MsgExceptUserProfile','Inform in the property UsersProfile.MenuItem or UsersProfile.Action the Item responsible for the control of users Profile '),
- ('MsgExceptChagePassMenu','Inform in the property ChangePasswordForm.MenuItem or .Action the Item that allows to a user to alter his password'),
- ('MsgExceptAppID','In the property "ApplicationID" inform a name to identify the application in the chart of permissions'),
- ('MsgExceptUsersTable','In the property "TableUsers" inform the name of the chart that will be created to store the data of the users '),
- ('MsgExceptRightsTable','In the property "TableRights" inform the name of the chart that will be created to store the permissions of the users '),
- ('MsgExceptConnector','The property DataConnector not defined!'),
- ('Const_Men_AutoLogonError','Fault of Car Logon !' + #13 + #10 + 'Inform a valid user and password.'),
- ('Const_Men_SenhaDesabitada','Retired password of the Login %s'),
- ('Const_Men_SenhaAlterada','Password altered with success!'),
- ('Const_Men_MsgInicial','ATTENTION, Inicial Login :' + #13 + #10 + #13 + #10 + 'User: :user' + #13 + #10 + 'Password : :password '+ #13 + #10 + #13 + #10 + 'Define the permissions for this user.'),
- ('Const_Men_MaxTentativas','%d Attempts of login invalid. By reasons of security the system will be closed.'),
- ('Const_Men_LoginInvalido','User invalids or password !'),
- ('Const_Men_UsuarioExiste','The User "%s" is already set up in the system !!'),
- ('Const_Men_PasswordExpired','Attention, his sign died, favor exchanges it '),
- ('Const_Log_BtCancelar','&Cancel'),
- ('Const_Log_BtOK','&OK'),
- ('Const_Log_LabelSenha','Password :'),
- ('Const_Log_LabelUsuario','User :'),
- ('Const_Log_WindowCaption','Login'),
- ('Const_Log_LbEsqueciSenha','I forgot the password'),
- ('Const_Log_MsgMailSend','The password was sent for his email .'),
- ('Const_Log_LabelTentativa','Attempt : '),
- ('Const_Log_LabelTentativas','Max of Attempts: '),
- ('Const_LogC_WindowCaption','Security'),
- ('Const_LogC_LabelDescricao','Log of system'),
- ('Const_LogC_LabelUsuario','User :'),
- ('Const_LogC_LabelData','Date :'),
- ('Const_LogC_LabelNivel','Least level:'),
- ('Const_LogC_ColunaAppID','AppID'),
- ('Const_LogC_ColunaNivel','Level '),
- ('Const_LogC_ColunaMensagem','Message'),
- ('Const_LogC_ColunaUsuario','User'),
- ('Const_LogC_ColunaData','Date'),
- ('Const_LogC_BtFiltro','&Apply Filter'),
- ('Const_LogC_BtExcluir','&Erase Log'),
- ('Const_LogC_BtFechar','&Close'),
- ('Const_LogC_ConfirmaExcluir','It confirms to exclude all the registers of log selected ?'),
- ('Const_LogC_ConfirmaDelete_WindowCaption','Delete confirmation'),
- ('Const_LogC_Todos','All'),
- ('Const_LogC_Low','Low'),
- ('Const_LogC_Normal','Normal'),
- ('Const_LogC_High','High'),
- ('Const_LogC_Critic','Critic'),
- ('Const_LogC_ExcluirEfectuada','Deletion of system log done: User = "%s" | Date = %s a %s | Level <= %s'),
- ('Const_Cad_WindowCaption','Security'),
- ('Const_Cad_LabelDescricao','Users register '),
- ('Const_Cad_ColunaNome','Name'),
- ('Const_Cad_ColunaLogin','Login'),
- ('Const_Cad_ColunaEmail','Email'),
- ('Const_Cad_BtAdicionar','&Add'),
- ('Const_Cad_BtAlterar','A<er'),
- ('Const_Cad_BtExcluir','&Erase'),
- ('Const_Cad_BtPermissoes','A&ccesses'),
- ('Const_Cad_BtSenha','&Password'),
- ('Const_Cad_BtFechar','&Close'),
- ('Const_Cad_ConfirmaExcluir','Confirm erase the user "%s" ?'),
- ('Const_Cad_ConfirmaDelete_WindowCaption','Delete user'),
- ('Const_Prof_WindowCaption','Security'),
- ('Const_Prof_LabelDescricao','Users profile '),
- ('Const_Prof_ColunaNome','Profile'),
- ('Const_Prof_BtAdicionar','&Add'),
- ('Const_Prof_BtAlterar','A<er'),
- ('Const_Prof_BtExcluir','&Delete'),
- ('Const_Prof_BtPermissoes','A&ccesses'),
- ('Const_Prof_BtSenha','&Password'),
- ('Const_Prof_BtFechar','&Close'),
- ('Const_Prof_ConfirmaExcluir','There are users with the profile "%s". Confirm erase ?'),
- ('Const_Prof_ConfirmaDelete_WindowCaption','Delete profile'),
- ('Const_Inc_WindowCaption','Users register '),
- ('Const_Inc_LabelAdicionar','Add User'),
- ('Const_Inc_LabelAlterar','Change User'),
- ('Const_Inc_LabelNome','Name :'),
- ('Const_Inc_LabelLogin','Login :'),
- ('Const_Inc_LabelEmail','Email :'),
- ('Const_Inc_LabelPerfil','Profile :'),
- ('Const_Inc_CheckPrivilegiado','Privileged user '),
- ('Const_Inc_BtGravar','&Save'),
- ('Const_Inc_BtCancelar','Cancel'),
- ('Const_Inc_CheckEspira','Password do not expired'),
- ('Const_Inc_Dia','Day'),
- ('Const_Inc_ExpiraEm','Expired in'),
- ('Const_PInc_WindowCaption','Profile the Users'),
- ('Const_PInc_LabelAdicionar','Add Profile'),
- ('Const_PInc_LabelAlterar','Change Profile '),
- ('Const_PInc_LabelNome','Description :'),
- ('Const_PInc_BtGravar','&Save'),
- ('Const_PInc_BtCancelar','Cancel'),
- ('Const_Perm_WindowCaption','Security'),
- ('Const_Perm_LabelUsuario','Permissions of the User :'),
- ('Const_Perm_LabelPerfil','Permissions of the Profile :'),
- ('Const_Perm_PageMenu','Items of the Menu'),
- ('Const_Perm_PageActions','Actions'),
- ('Const_Perm_PageControls','Controls'),
- ('Const_Perm_BtLibera','&Release'),
- ('Const_Perm_BtBloqueia','&Block'),
- ('Const_Perm_BtGravar','&Save'),
- ('Const_Perm_BtCancelar','&Cancel'),
- ('Const_Troc_WindowCaption','Security'),
- ('Const_Troc_LabelDescricao','Change Password'),
- ('Const_Troc_LabelSenhaAtual','Password :'),
- ('Const_Troc_LabelNovaSenha','New Password :'),
- ('Const_Troc_LabelConfirma','Confirmation :'),
- ('Const_Troc_BtGravar','&Save'),
- ('Const_Troc_BtCancelar','Cancel'),
- ('Const_ErrPass_SenhaAtualInvalida','Current password does not tally!'),
- ('Const_ErrPass_ErroNovaSenha','The Field: New Password and Confirmation must be the same.'),
- ('Const_ErrPass_NovaIgualAtual','New equal password to current password '),
- ('Const_ErrPass_SenhaObrigatoria','The password is compulsory '),
- ('Const_ErrPass_SenhaMinima','The password must contain at least %d characters '),
- ('Const_ErrPass_SenhaInvalida','When to use password was prohibited you obviate !'),
- ('Const_ErrPass_ForcaTrocaSenha','Compulsory change password'),
- ('Const_DefPass_WindowCaption','Define Password of the user : "%s"'),
- ('Const_DefPass_LabelSenha','Password :'),
- ('Const_TableUsers_FieldUserID','UCIdUser'),
- ('Const_TableUsers_FieldUserName','UCUserName'),
- ('Const_TableUsers_FieldLogin','UCLogin'),
- ('Const_TableUsers_FieldPassword','UCPassword'),
- ('Const_TableUsers_FieldEmail','UCEmail'),
- ('Const_TableUsers_FieldPrivileged','UCPrivileged'),
- ('Const_TableUsers_FieldTypeRec','UCTypeRec'),
- ('Const_TableUsers_FieldProfile','UCProfile'),
- ('Const_TableUsers_FieldKey','UCKey'),
- ('Const_TableUsers_TableName','UCTabUsers'),
- ('Const_TableUsers_FieldDateExpired','UCPassExpired'),
- ('Const_TableUser_FieldUserExpired','UCUserExpired'),
- ('Const_TableUser_FieldUserDaysSun','UCUserDaysSun'),
- ('Const_TableUser_FieldUserInative','UCInative'),
- ('Const_TableRights_FieldUserID','UCIdUser'),
- ('Const_TableRights_FieldModule','UCModule'),
- ('Const_TableRights_FieldComponentName','UCCompName'),
- ('Const_TableRights_FieldFormName','UCFormName'),
- ('Const_TableRights_FieldKey','UCKey'),
- ('Const_TableRights_TableName','UCTabRights'),
- ('Const_TableUsersLogged_FieldLogonID','UCIdLogon'),
- ('Const_TableUsersLogged_FieldUserID','UCIdUser'),
- ('Const_TableUsersLogged_FieldApplicationID','UCApplicationId'),
- ('Const_TableUsersLogged_FieldMachineName','UCMachineName'),
- ('Const_TableUsersLogged_FieldData','UCData'),
- ('Const_TableUsersLogged_TableName','UCTabUsersLogged'),
- ('Const_Evento_Insert','Insert'),
- ('Const_Evento_Delete','Delete'),
- ('Const_Evento_Edit','Edit'),
- ('Const_Evento_NewRecord','New record'),
- ('Const_Hist_All','All'),
- ('Const_Msg_LimpHistorico','Clean table history ?'),
- ('Const_Msg_MensConfirma','Confirm'),
- ('Const_Msg_LogEmptyHistory','User %s erase table history in %s'),
- ('Const_LabelDescricao','History of Tables'),
- ('Const_LabelUser','User'),
- ('Const_LabelForm','Form'),
- ('Const_LabelEvento','Event'),
- ('Const_LabelTabela','Table'),
- ('Const_LabelDataEvento','Date'),
- ('Const_LabelHoraEvento','Time'),
- ('Const_Msg_NewRecord','%s insert new record'),
-
- ('Const_Hist_TableName','UCTABHistory'),
- ('Const_Hist_FieldApplicationID','ApplicationID'),
- ('Const_Hist_FieldUserID','UserID'),
- ('Const_Hist_FieldEventDate','EventDate'),
- ('Const_Hist_FieldEventTime','EventTime'),
- ('Const_Hist_FieldForm','Form'),
- ('Const_Hist_FieldCaptionForm','FormCaption'),
- ('Const_Hist_FieldEvent','Event'),
- ('Const_Hist_FieldObs','Obs'),
- ('Const_Hist_FieldTableName','tName'),
- ('Const_Hist_MsgExceptPropr','Inform the property %s'),
- ('Const_Hist_BtnFiltro','&Apply Filter'),
- ('Const_Hist_BtnExcluir','&Erase History'),
- ('Const_Hist_BtnFechar','&Close'),
-
- ('Const_UserLogged_BtnMsg','&Message'),
- ('Const_UserLogged_Refresh','&Refresh'),
- ('Const_UserLogged_LabelDescricao','Active users'),
- ('Const_UserLogged_LabelCaption','Active users in the System'),
- ('Const_CadColuna_Computer','Computer'),
- ('Const_CadColuna_Data','Date'),
- ('Const_UserLogged_InputCaption','Message'),
- ('Const_UserLogged_InputText','Input your message'),
- ('Const_UserLogged_MsgSystem','Message of system'),
- ('Const_Men_LoginInativo','Inactive login'),
- ('Const_Inc_LabelStatus','Status'),
- ('Const_Inc_StatusActive','Active'),
- ('Const_Inc_StatusDisabled','Disabled')
-
- );
-
-{------------------------------------------------------------------------------ }
-
-Const UC_SPANISH : Array [0..MaxArray,0..1] of string = (
- ('Const_Contr_TitleLabel','Seleccionar Componentes del Formulario:'),
- ('Const_Contr_GroupLabel','Grupo:'),
- ('Const_Contr_CompDispLabel','Componentes Disponibles:'),
- ('Const_Contr_CompSelLabel','Componentes Seleccionados:'),
- ('Const_Contr_BtOK','&Aceptar'),
- ('Const_Contr_BTCancel','&Cancelar'),
- ('Const_Contr_DescCol','Descripción'),
- ('Const_Contr_BtSellAllHint','Seleccionar Todo'),
- ('Const_Contr_BtSelHint','Seleccionar'),
- ('Const_Contr_BtUnSelHint','Deseleccionar'),
- ('Const_Contr_BtUnSelAllHint','Deseleccionar Todo'),
- ('Const_Msgs_BtNew','&Nuevo Mensaje'),
- ('Const_Msgs_BtReplay','&Responder'),
- ('Const_Msgs_BtForward','&Reenviar'),
- ('Const_Msgs_BtDelete','&Borrar'),
- ('Const_Msgs_BtClose','&Cerrar'),
- ('Const_Msgs_WindowCaption','Mensajes de Sistema'),
- ('Const_Msgs_ColFrom','Remitente'),
- ('Const_Msgs_ColSubject','Asunto'),
- ('Const_Msgs_ColDate','Fecha'),
- ('Const_Msgs_PromptDelete','¿Está seguro de eliminar los mensajes seleccionados?'),
- ('Const_Msgs_PromptDelete_WindowCaption','Eliminar mensajes'),
- ('Const_Msgs_NoMessagesSelected','!Ningún mensaje seleccionado¡'),
- ('Const_Msgs_NoMessagesSelected_WindowCaption','Información'),
- ('Const_MsgRec_BtClose','&Cerrar'),
- ('Const_MsgRec_WindowCaption','Mensaje'),
- ('Const_MsgRec_Title','Mensaje Recibido'),
- ('Const_MsgRec_LabelFrom','De:'),
- ('Const_MsgRec_LabelDate','Fecha'),
- ('Const_MsgRec_LabelSubject','Asunto'),
- ('Const_MsgRec_LabelMessage','Mensaje'),
- ('Const_MsgSend_BtSend','&Enviar'),
- ('Const_MsgSend_BtCancel','&Cancelar'),
- ('Const_MsgSend_WindowCaption','Mensaje'),
- ('Const_MsgSend_Title','Enviar Nuevo Mensaje'),
- ('Const_MsgSend_GroupTo','Para:'),
- ('Const_MsgSend_RadioUser','Usuario:'),
- ('Const_MsgSend_RadioAll','Todos'),
- ('Const_MsgSend_GroupMessage','Mensaje'),
- ('Const_MsgSend_LabelSubject','Asunto'),
- ('Const_MsgSend_LabelMessageText','Texto del mensaje'),
- ('MsgExceptConnection','¡Valor No Válido para la propiedad Connection del componente %s!'),
- ('MsgExceptTransaction','¡Valor No Válido para la propiedad Transaction del componente %s!'),
- ('MsgExceptDatabase','¡Valor No Válido para la propiedad Database del componente %s!'),
- ('MsgExceptPropriedade','Favor informar a propriedade %s'),
- ('MsgExceptUserMngMenu','Ingrese en la propiedad UsersForm.MenuItem o UsersForm.Action la opción del menu para abrir el Control de Usuarios'),
- ('MsgExceptUserProfile','Ingrese en la propiedad UsersProfile.MenuItem o UsersProfile.Action la opción del menu para abrir el Perfil de Usuarios'),
- ('MsgExceptChagePassMenu','Ingrese en la propiedad ChangePasswordForm.MenuItem o .Action la opción del menú que permite al usuario cambiar su Contraseña'),
- ('MsgExceptAppID','La propiedad ApplicationID requiere el nombre válido de una tabla para el registro de los Permisos de Usuario'),
- ('MsgExceptUsersTable','La propiedad UserTable requiere el nombre válido de una tabla para registrar/seleccionar los datos de los usuarios'),
- ('MsgExceptRightsTable','La propiead RightTable requiere el nombre válido de una tabla para registrar/seleccionar los permisos de los usuarios'),
- ('MsgExceptConnector','Propriedade DataConnector não definida!'),
- ('Const_Men_AutoLogonError','Error de Ingreso Automático!'+#13+#10+ 'Especifique un Usuario y Contraseña Válidos.'),
- ('Const_Men_SenhaDesabitada','Contraseña vacía para el Usuario %s'),
- ('Const_Men_SenhaAlterada','¡Se ha cambiado la Contraseña con éxito!'),
- ('Const_Men_MsgInicial','ATENCION! Conección Inicial:'+#13+#10+#13+#10+'Usuario : :user'+#13+#10+'Contraseña : :password'+#13+#10+#13+#10+'Defina permisos para este usuario'),
- ('Const_Men_MaxTentativas','%d Intentos de conección inválidos !'),
- ('Const_Men_LoginInvalido','Usuario y/o Contraseña Incorrectos!'),
- ('Const_Men_UsuarioExiste','O Usuário "%s" já está cadastrado no sistema !!'),
- ('Const_Men_PasswordExpired','Atenção, sua senha expirou, favor troca-la'),
- ('Const_Log_BtCancelar','&Cancelar'),
- ('Const_Log_BtOK','Aceptar'),
- ('Const_Log_LabelSenha','Contraseña:'),
- ('Const_Log_LabelUsuario','Usuario: '),
- ('Const_Log_WindowCaption','Conección'),
- ('Const_Log_LbEsqueciSenha','Olvidé mi Contraseña'),
- ('Const_Log_MsgMailSend','La contraseña fue enviada a su correo.'),
- ('Const_Log_LabelTentativa','Tentativa : '),
- ('Const_Log_LabelTentativas','Máximo de Tentativas : '),
- ('Const_LogC_WindowCaption','Seguridad'),
- ('Const_LogC_LabelDescricao','Visor de Eventos'),
- ('Const_LogC_LabelUsuario','Usuario:'),
- ('Const_LogC_ColunaAppID','AppID'),
- ('Const_LogC_LabelData','Fecha:'),
- ('Const_LogC_LabelNivel','Nivel Mínimo: '),
- ('Const_LogC_ColunaNivel','Nivel'),
- ('Const_LogC_ColunaMensagem','Mensaje'),
- ('Const_LogC_ColunaUsuario','Usuario'),
- ('Const_LogC_ColunaData','Fecha'),
- ('Const_LogC_BtFiltro','&Aplicar Filtro'),
- ('Const_LogC_BtExcluir','&Borrar Bitácora'),
- ('Const_LogC_BtFechar','&Cerrar'),
- ('Const_LogC_ConfirmaExcluir','¿Está seguro de Eliminar todos todos los registros de Bitácora seleccionados?'),
- ('Const_LogC_ConfirmaDelete_WindowCaption','Confirmación'),
- ('Const_LogC_Todos','Todos'),
- ('Const_LogC_Low','Bajo'),
- ('Const_LogC_Normal','Normal'),
- ('Const_LogC_High','Alto'),
- ('Const_LogC_Critic','Crítico'),
- ('Const_LogC_ExcluirEfectuada','Borrado de registros de bitácora realizado: Usuario = "%s" | Fecha = %s a %s | Nivel <= %s'),
- ('Const_Cad_WindowCaption','Seguridad'),
- ('Const_Cad_LabelDescricao','Administración de Usuarios'),
- ('Const_Cad_ColunaNome','Nombre'),
- ('Const_Cad_ColunaLogin','Usuario'),
- ('Const_Cad_ColunaEmail','Correo'),
- ('Const_Cad_BtAdicionar','&Nuevo'),
- ('Const_Cad_BtAlterar','&Editar'),
- ('Const_Cad_BtExcluir','E&liminar'),
- ('Const_Cad_BtPermissoes','&Accesos'),
- ('Const_Cad_BtSenha','C&ontraseña'),
- ('Const_Cad_BtFechar','&Cerrar'),
- ('Const_Cad_ConfirmaExcluir','¿Está seguro de Eliminar al Usuario "%s"?'),
- ('Const_Cad_ConfirmaDelete_WindowCaption','Eliminar usuario'),
- ('Const_Prof_WindowCaption','Seguridad'),
- ('Const_Prof_LabelDescricao','Perfil de Usuario'),
- ('Const_Prof_ColunaNome','Perfil'),
- ('Const_Prof_BtAdicionar','&Nuevo'),
- ('Const_Prof_BtAlterar','&Editar'),
- ('Const_Prof_BtExcluir','E&liminar'),
- ('Const_Prof_BtPermissoes','&Accesos'),
- ('Const_Prof_BtSenha','C&ontraseña'),
- ('Const_Prof_BtFechar','&Cerrar'),
- ('Const_Prof_ConfirmaExcluir','Existe(n) usuario(s) con el Perfil "%s". ¿Está seguro de eliminar el perfil?'),
- ('Const_Prof_ConfirmaDelete_WindowCaption','Eliminar perfil'),
- ('Const_Inc_WindowCaption','Administración de Usuarios'),
- ('Const_Inc_LabelAdicionar','Nuevo Usuario'),
- ('Const_Inc_LabelAlterar','Editar Usuario'),
- ('Const_Inc_LabelNome','Nombre:'),
- ('Const_Inc_LabelLogin','Usuario: '),
- ('Const_Inc_LabelEmail','Correo: '),
- ('Const_Inc_LabelPerfil','Perfil: '),
- ('Const_Inc_CheckPrivilegiado','Usuario Privilegiado'),
- ('Const_Inc_BtGravar','&Guardar'),
- ('Const_Inc_BtCancelar','Cancelar'),
- ('Const_Inc_CheckEspira','Senha do usuário não expira'),
- ('Const_Inc_Dia','Dias'),
- ('Const_Inc_ExpiraEm','Expira em'),
- ('Const_PInc_WindowCaption','Perfiles de Usuarios'),
- ('Const_PInc_LabelAdicionar','Nuevo Perfil'),
- ('Const_PInc_LabelAlterar','Editar Perfil'),
- ('Const_PInc_LabelNome','Descripción: '),
- ('Const_PInc_BtGravar','&Guardar'),
- ('Const_PInc_BtCancelar','Cancelar'),
- ('Const_Perm_WindowCaption','Seguridad'),
- ('Const_Perm_LabelUsuario','Permisos de Usuario : '),
- ('Const_Perm_LabelPerfil','Permisos del Perfil : '),
- ('Const_Perm_PageMenu','Elementos del Menú'),
- ('Const_Perm_PageActions','Acciones'),
- ('Const_Perm_PageControls','Controles'),
- ('Const_Perm_BtLibera','&Permitir'),
- ('Const_Perm_BtBloqueia','&Bloquear'),
- ('Const_Perm_BtGravar','&Guardar'),
- ('Const_Perm_BtCancelar','&Cancelar'),
- ('Const_Troc_WindowCaption','Seguridad'),
- ('Const_Troc_LabelDescricao','Cambiar Contraseña'),
- ('Const_Troc_LabelSenhaAtual','Contraseña Actual:'),
- ('Const_Troc_LabelNovaSenha','Nueva Contraseña:'),
- ('Const_Troc_LabelConfirma','Confirme Contraseña:'),
- ('Const_Troc_BtGravar','&Guardar'),
- ('Const_Troc_BtCancelar','Cancelar'),
- ('Const_ErrPass_SenhaAtualInvalida','¡Contraseña Actual Incorrecta!'),
- ('Const_ErrPass_ErroNovaSenha','Los campos Contraseña Nueva y Confirme Contraseña deben ser iguales'),
- ('Const_ErrPass_NovaIgualAtual','Nueva Contraseña y Contraseña Actual deben ser diferentes'),
- ('Const_ErrPass_SenhaObrigatoria','¡La Contraseña es obligatoria!'),
- ('Const_ErrPass_SenhaMinima','La Contraseña debe tener un mínimo de %d caracteres'),
- ('Const_ErrPass_SenhaInvalida','¡Prohibido utilizar contraseñas NO Seguras!'),
- ('Const_ErrPass_ForcaTrocaSenha','Mudança de senha obrigatória'),
- ('Const_DefPass_WindowCaption','Ingrese Contraseña de Usuario: "%s"'),
- ('Const_DefPass_LabelSenha','Contraseña: '),
- ('Const_TableUsers_FieldUserID','UCIdUser'),
- ('Const_TableUsers_FieldUserName','UCUserName'),
- ('Const_TableUsers_FieldLogin','UCLogin'),
- ('Const_TableUsers_FieldPassword','UCPassword'),
- ('Const_TableUsers_FieldEmail','UCEmail'),
- ('Const_TableUsers_FieldPrivileged','UCPrivileged'),
- ('Const_TableUsers_FieldTypeRec','UCTypeRec'),
- ('Const_TableUsers_FieldProfile','UCProfile'),
- ('Const_TableUsers_FieldKey','UCKey'),
- ('Const_TableUsers_TableName','UCTabUsers'),
- ('Const_TableUsers_FieldDateExpired','UCPASSEXPIRED'),
- ('Const_TableUser_FieldUserExpired','UCUserExpired'),
- ('Const_TableUser_FieldUserDaysSun','UCUserDaysSun'),
- ('Const_TableUser_FieldUserInative','UCInative'),
- ('Const_TableRights_FieldUserID','UCIdUser'),
- ('Const_TableRights_FieldModule','UCModule'),
- ('Const_TableRights_FieldComponentName','UCCompName'),
- ('Const_TableRights_FieldFormName','UCFormName'),
- ('Const_TableRights_FieldKey','UCKey'),
- ('Const_TableRights_TableName','UCTabRights'),
- ('Const_TableUsersLogged_FieldLogonID','UCIdLogon'),
- ('Const_TableUsersLogged_FieldUserID','UCIdUser'),
- ('Const_TableUsersLogged_FieldApplicationID','UCApplicationId'),
- ('Const_TableUsersLogged_FieldMachineName','UCMachineName'),
- ('Const_TableUsersLogged_FieldData','UCData'),
- ('Const_TableUsersLogged_TableName','UCTabUsersLogged'),
- ('Const_Evento_Insert','Nuevo'),
- ('Const_Evento_Delete','Eliminar'),
- ('Const_Evento_Edit','Editar'),
- ('Const_Evento_NewRecord','Nuevo registro'),
- ('Const_Hist_All','Todos'),
- ('Const_Msg_LimpHistorico','Excluir el contenido entero del histórico ?'),
- ('Const_Msg_MensConfirma','Confirme'),
- ('Const_Msg_LogEmptyHistory','El usuario %s borra la historia de mesa en %s '),
- ('Const_LabelDescricao','Histórico de tabelas'),
- ('Const_LabelUser','Usuario'),
- ('Const_LabelForm','Formulário'),
- ('Const_LabelEvento','Evento'),
- ('Const_LabelTabela','Tabela'),
- ('Const_LabelDataEvento','Data'),
- ('Const_LabelHoraEvento','Hora'),
- ('Const_Msg_NewRecord','%s Inserte el nuevo registro'),
- ('Const_Hist_TableName','UCTABHistory'),
- ('Const_Hist_FieldApplicationID','ApplicationID'),
- ('Const_Hist_FieldUserID','UserID'),
- ('Const_Hist_FieldEventDate','EventDate'),
- ('Const_Hist_FieldEventTime','EventTime'),
- ('Const_Hist_FieldForm','Form'),
- ('Const_Hist_FieldCaptionForm','FormCaption'),
- ('Const_Hist_FieldEvent','Event'),
- ('Const_Hist_FieldObs','Obs'),
- ('Const_Hist_FieldTableName','tName'),
- ('Const_Hist_MsgExceptPropr','Por favor informe la propiedad %s'),
- ('Const_Hist_BtnFiltro','&Aplicar Filtro'),
- ('Const_Hist_BtnExcluir','&Borrar Histórico'),
- ('Const_Hist_BtnFechar','&Cerrar'),
-
- ('Const_UserLogged_BtnMsg','&Mensaje'),
- ('Const_UserLogged_Refresh','&Restaure'),
- ('Const_UserLogged_LabelDescricao','Usuarios activos'),
- ('Const_UserLogged_LabelCaption','Usuarios activos en el sistema'),
- ('Const_CadColuna_Computer','Computadora'),
- ('Const_CadColuna_Data','Data'),
- ('Const_UserLogged_InputCaption','Mensaje'),
- ('Const_UserLogged_InputText','Entre su mensaje'),
- ('Const_UserLogged_MsgSystem','Mensaje del sistema'),
- ('Const_Men_LoginInativo','Atenção, seu login esta inativo'),
- ('Const_Inc_LabelStatus','Status'),
- ('Const_Inc_StatusActive','Ativo'),
- ('Const_Inc_StatusDisabled','Inativo')
-
- );
-
-{------------------------------------------------------------------------------ }
-
-Const UC_FRENCH : Array [0..MaxArray,0..1] of string = (
- ('Const_Contr_TitleLabel','L''équipe de Composantes de la Forme :'),
- ('Const_Contr_GroupLabel','Groupe :'),
- ('Const_Contr_CompDispLabel','Composantes disponibles :'),
- ('Const_Contr_CompSelLabel','Composantes choisies:'),
- ('Const_Contr_BtOK','&OK'),
- ('Const_Contr_BTCancel','&Annuler'),
- ('Const_Contr_DescCol','Description'),//nao
- ('Const_Contr_BtSellAllHint','Choisissez Tous'),
- ('Const_Contr_BtSelHint','Choisir'),
- ('Const_Contr_BtUnSelHint','No Choisir'),
- ('Const_Contr_BtUnSelAllHint','Non choisissez Tous'),
- ('Const_Msgs_BtNew','&Nouveau Message'),
- ('Const_Msgs_BtReplay','&Rejeu'),
- ('Const_Msgs_BtForward','Env&oyer'),
- ('Const_Msgs_BtDelete','&Effacer'),
- ('Const_Msgs_BtClose','&Près'),
- ('Const_Msgs_WindowCaption','Messages du Système'),
- ('Const_Msgs_ColFrom','De'),
- ('Const_Msgs_ColSubject','Sujet'),
- ('Const_Msgs_ColDate','Date'), //nao
- ('Const_Msgs_PromptDelete','Il confirme l''exclusion des messages choisis ?'),
- ('Const_Msgs_PromptDelete_WindowCaption','Effacez des messages'),
- ('Const_Msgs_NoMessagesSelected','Aucun Message choisi'),
- ('Const_Msgs_NoMessagesSelected_WindowCaption','Renseignements'),
- ('Const_MsgRec_BtClose','&Près'),
- ('Const_MsgRec_WindowCaption','Message'),
- ('Const_MsgRec_Title','Message reçu'),
- ('Const_MsgRec_LabelFrom','De:'),
- ('Const_MsgRec_LabelDate','Date'),
- ('Const_MsgRec_LabelSubject','Sujet'),
- ('Const_MsgRec_LabelMessage','Message'),
- ('Const_MsgSend_BtSend','&Envoyer'),
- ('Const_MsgSend_BtCancel','&Annuler'),
- ('Const_MsgSend_WindowCaption','Message'),
- ('Const_MsgSend_Title','Envoyez le Nouveau Message'),
- ('Const_MsgSend_GroupTo','À'),
- ('Const_MsgSend_RadioUser','Utilisateur:'),
- ('Const_MsgSend_RadioAll','Tous'),
- ('Const_MsgSend_GroupMessage','Message'),
- ('Const_MsgSend_LabelSubject','Sujet'),
- ('Const_MsgSend_LabelMessageText','Texte de message'),
- ('MsgExceptConnection','Fait non informé la Connexion, la Transaction ou la composante de Base de données %s'),
- ('MsgExceptTransaction','Fait non informé la composante Transactionnelle %s'),
- ('MsgExceptDatabase','Fait non informé la Base de données font la composante %s'),
- ('MsgExceptPropriedade','Informez la propriété %s'),
- ('MsgExceptUserMngMenu','Informez la propriété UsersForm.MenuItem ou UsersForm.Action l''article responsable du contrôle d''utilisateurs '),
- ('MsgExceptUserProfile','Informez la propriété UsersProfile.MenuItem ou UsersProfile.Action l''Article responsable du contrôle de Profil d''utilisateurs'),
- ('MsgExceptChagePassMenu','Informez la propriété ChangePasswordForm.MenuItem ou .Action l''Article qui permet à un utilisateur de changer son mot de passe'),
- ('MsgExceptAppID','Dans la propriété "ApplicationID" informent un nom pour identifier l''application dans le graphique de permissions'),
- ('MsgExceptUsersTable','Dans la propriété "TableUsers" informent le nom du graphique qui sera créé pour conserver les données des utilisateurs'),
- ('MsgExceptRightsTable','Dans la propriété "TableRights" informent le nom du graphique qui sera créé pour conserver les permissions des utilisateurs'),
- ('MsgExceptConnector','La propriété "DataConnector" non défini!'),
- ('Const_Men_AutoLogonError','Faute de Début de transaction Automobile!' + #13 + #10 + 'Informez un utilisateur valide et un mot de passe.'),
- ('Const_Men_SenhaDesabitada','Mot de passe retraité de l''Ouverture de session %s'),
- ('Const_Men_SenhaAlterada','Le mot de passe changeait avec le succès!'),
- ('Const_Men_MsgInicial','ATTENTION, Ouverture de session d''Inicial :' + #13 + #10 + #13 + #10 + 'Utilisateur : :user + '#13 + #10 + 'Mot de passe : :password ' + #13 + #10 + #13 + #10 + 'Définissez les permissions pour cet utilisateur.'),
- ('Const_Men_MaxTentativas','%d Essais d''infirme d''ouverture de session. Par les raisons de sécurité le système sera fermé.'),
- ('Const_Men_LoginInvalido','L''utilisateur devient infirme ou le mot de passe!'),
- ('Const_Men_UsuarioExiste','L''Utilisateur "%s" est déjà remis sur pied dans le système !!'),
- ('Const_Men_PasswordExpired','L''attention, son signe est mort, la faveur l''échange '),
- ('Const_Log_BtCancelar','&Annuler'),
- ('Const_Log_BtOK','&OK'),
- ('Const_Log_LabelSenha','Passe :'),
- ('Const_Log_LabelUsuario','Utilisateur :'),
- ('Const_Log_WindowCaption','Ouverture de session'),
- ('Const_Log_LbEsqueciSenha','J''ai oublié le mot de passe'),
- ('Const_Log_MsgMailSend','le mot de passe a été envoyé pour son courrier électronique .'),
- ('Const_Log_LabelTentativa','Essais : '),
- ('Const_Log_LabelTentativas','Max d''Essais : '),
- ('Const_LogC_WindowCaption','sécurité'),
- ('Const_LogC_LabelDescricao','Rondin de système'),
- ('Const_LogC_LabelUsuario','Utilisateur :'),
- ('Const_LogC_LabelData','Date :'),
- ('Const_LogC_LabelNivel','La moindre partie de niveau:'),
- ('Const_LogC_ColunaAppID','AppID'),
- ('Const_LogC_ColunaNivel','Niveau '),
- ('Const_LogC_ColunaMensagem','Message'),
- ('Const_LogC_ColunaUsuario','Utilisateur'),
- ('Const_LogC_ColunaData','Date'),
- ('Const_LogC_BtFiltro','&Appliquez le Filtre'),
- ('Const_LogC_BtExcluir','&Effacez le Rondin'),
- ('Const_LogC_BtFechar','&Près'),
- ('Const_LogC_ConfirmaExcluir','Il confirme pour exclure tous les registres de rondin choisi?'),
- ('Const_LogC_ConfirmaDelete_WindowCaption','Effacez la confirmation '),
- ('Const_LogC_Todos','Tous'),
- ('Const_LogC_Low','Bas'),
- ('Const_LogC_Normal','Normal'),
- ('Const_LogC_High','Haut'),
- ('Const_LogC_Critic','Critique'),
- ('Const_LogC_ExcluirEfectuada','L''effacement de rondin de système fait : Utilisateur = "%s" | Date = %s a %s | Niveau <= %s'),
- ('Const_Cad_WindowCaption','Sécurité'),
- ('Const_Cad_LabelDescricao','Les utilisateurs s''inscrivent'),
- ('Const_Cad_ColunaNome','Nom'),
- ('Const_Cad_ColunaLogin','Utilisateur'),
- ('Const_Cad_ColunaEmail','Courrier Électronique'),
- ('Const_Cad_BtAdicionar','&Ajouter'),
- ('Const_Cad_BtAlterar','Ch&anger'),
- ('Const_Cad_BtExcluir','&Effacer'),
- ('Const_Cad_BtPermissoes','A&pproches'),
- ('Const_Cad_BtSenha','&Passe'),
- ('Const_Cad_BtFechar','&Près' ),
- ('Const_Cad_ConfirmaExcluir','Confirmez effacent l''utilisateur "%s" ?'),
- ('Const_Cad_ConfirmaDelete_WindowCaption','Effacez l''utilisateur '),
- ('Const_Prof_WindowCaption','Sécurité'),
- ('Const_Prof_LabelDescricao','Les utilisateurs dressent le portrait'),
- ('Const_Prof_ColunaNome','Profile'),
- ('Const_Prof_BtAdicionar','&Ajouter'),
- ('Const_Prof_BtAlterar','&Ajouter'),
- ('Const_Prof_BtExcluir','&Effacer'),
- ('Const_Prof_BtPermissoes','A&pproches'),
- ('Const_Prof_BtSenha','&Passe'),
- ('Const_Prof_BtFechar','&Près'),
- ('Const_Prof_ConfirmaExcluir','Il y a des utilisateurs avec le profil "%s". Confirmez effacent ?'),
- ('Const_Prof_ConfirmaDelete_WindowCaption','Effacez le profil'),
- ('Const_Inc_WindowCaption','Les utilisateurs s''inscrivent '),
- ('Const_Inc_LabelAdicionar','Ajouter utilisateurs'),
- ('Const_Inc_LabelAlterar','Changer utilisateurs'),
- ('Const_Inc_LabelNome','Nom :'),
- ('Const_Inc_LabelLogin','Login :'),
- ('Const_Inc_LabelEmail','Courrier Électronique :'),
- ('Const_Inc_LabelPerfil','Profil :'),
- ('Const_Inc_CheckPrivilegiado','Utilisateur privilégié'),
- ('Const_Inc_BtGravar','&Sauver'),
- ('Const_Inc_BtCancelar','Annuler'),
- ('Const_Inc_CheckEspira','Le mot de passe ne fait pas expiré'),
- ('Const_Inc_Dia','Jour'),
- ('Const_Inc_ExpiraEm','Expiré dans'),
- ('Const_PInc_WindowCaption','Dressez le portrait des Utilisateurs'),
- ('Const_PInc_LabelAdicionar','Ajouter Profil'),
- ('Const_PInc_LabelAlterar','Ajouter Profil '),
- ('Const_PInc_LabelNome','Description :'),
- ('Const_PInc_BtGravar','&Sauver'),
- ('Const_PInc_BtCancelar','Annuler'),
- ('Const_Perm_WindowCaption','Sécurité'),
- ('Const_Perm_LabelUsuario','Permissions de l''Utilisateur :'),
- ('Const_Perm_LabelPerfil','Permissions de l'' Profil :'),
- ('Const_Perm_PageMenu','Articles du Menu'),
- ('Const_Perm_PageActions','Actions'),
- ('Const_Perm_PageControls','Controls'),
- ('Const_Perm_BtLibera','&Libération'),
- ('Const_Perm_BtBloqueia','&Bloc'),
- ('Const_Perm_BtGravar','&Sauver'),
- ('Const_Perm_BtCancelar','&Annuler'),
- ('Const_Troc_WindowCaption','Sécurité'),
- ('Const_Troc_LabelDescricao','Mot de passe de Changement '),
- ('Const_Troc_LabelSenhaAtual','Passe :'),
- ('Const_Troc_LabelNovaSenha','Nouveau Mot de passe :'),
- ('Const_Troc_LabelConfirma','Confirmation :'),
- ('Const_Troc_BtGravar','&Sauver'),
- ('Const_Troc_BtCancelar','Annuler'),
- ('Const_ErrPass_SenhaAtualInvalida','Le mot de passe actuel ne correspond pas !'),
- ('Const_ErrPass_ErroNovaSenha','Le Champ : le Nouveau Mot de passe et la Confirmation doivent être le même.'),
- ('Const_ErrPass_NovaIgualAtual','Nouveau mot de passe égal au mot de passe actuel'),
- ('Const_ErrPass_SenhaObrigatoria','Le mot de passe est obligatoire'),
- ('Const_ErrPass_SenhaMinima','Le mot de passe doit contenir au moins %d des caractères '),
- ('Const_ErrPass_SenhaInvalida','Quand utiliser le mot de passe a été interdit vous obviez !'),
- ('Const_ErrPass_ForcaTrocaSenha','Mot de passe de changement obligatoire'),
- ('Const_DefPass_WindowCaption','Définissez le Mot de passe de l''utilisateur : "%s"'),
- ('Const_DefPass_LabelSenha','Passe :'),
- ('Const_TableUsers_FieldUserID','UCIdUser'),
- ('Const_TableUsers_FieldUserName','UCUserName'),
- ('Const_TableUsers_FieldLogin','UCLogin'),
- ('Const_TableUsers_FieldPassword','UCPassword'),
- ('Const_TableUsers_FieldEmail','UCEmail'),
- ('Const_TableUsers_FieldPrivileged','UCPrivileged'),
- ('Const_TableUsers_FieldTypeRec','UCTypeRec'),
- ('Const_TableUsers_FieldProfile','UCProfile'),
- ('Const_TableUsers_FieldKey','UCKey'),
- ('Const_TableUsers_TableName','UCTabUsers'),
- ('Const_TableUsers_FieldDateExpired','UCPassExpired'),
- ('Const_TableUser_FieldUserExpired','UCUserExpired'),
- ('Const_TableUser_FieldUserDaysSun','UCUserDaysSun'),
- ('Const_TableUser_FieldUserInative','UCInative'),
- ('Const_TableRights_FieldUserID','UCIdUser'),
- ('Const_TableRights_FieldModule','UCModule'),
- ('Const_TableRights_FieldComponentName','UCCompName'),
- ('Const_TableRights_FieldFormName','UCFormName'),
- ('Const_TableRights_FieldKey','UCKey'),
- ('Const_TableRights_TableName','UCTabRights'),
- ('Const_TableUsersLogged_FieldLogonID','UCIdLogon'),
- ('Const_TableUsersLogged_FieldUserID','UCIdUser'),
- ('Const_TableUsersLogged_FieldApplicationID','UCApplicationId'),
- ('Const_TableUsersLogged_FieldMachineName','UCMachineName'),
- ('Const_TableUsersLogged_FieldData','UCData'),
- ('Const_TableUsersLogged_TableName','UCTabUsersLogged'),
- ('Const_Evento_Insert','Insertion'),
- ('Const_Evento_Delete','Effacer'),
- ('Const_Evento_Edit','Réviser'),
- ('Const_Evento_NewRecord','Nouveau record '),
- ('Const_Hist_All','Tous'),
- ('Const_Msg_LimpHistorico','Histoire de table propre?'),
- ('Const_Msg_MensConfirma','Confirmer'),
- ('Const_Msg_LogEmptyHistory','L''utilisateur %s efface l''histoire de table dans %s '),
- ('Const_LabelDescricao','Histoire de Tables'),
- ('Const_LabelUser','Utilisateur'),
- ('Const_LabelForm','Forme'),
- ('Const_LabelEvento','Événement'),
- ('Const_LabelTabela','Table'),
- ('Const_LabelDataEvento','Date'),
- ('Const_LabelHoraEvento','Temps'),
- ('Const_Msg_NewRecord','%s insérez le nouveau record'),
- ('Const_Hist_TableName','UCTABHistory'),
- ('Const_Hist_FieldApplicationID','ApplicationID'),
- ('Const_Hist_FieldUserID','UserID'),
- ('Const_Hist_FieldEventDate','EventDate'),
- ('Const_Hist_FieldEventTime','EventTime'),
- ('Const_Hist_FieldForm','Form'),
- ('Const_Hist_FieldCaptionForm','FormCaption'),
- ('Const_Hist_FieldEvent','Event'),
- ('Const_Hist_FieldObs','Obs'),
- ('Const_Hist_FieldTableName','tName'),
- ('Const_Hist_MsgExceptPropr','Informez la propriété %s'),
- ('Const_Hist_BtnFiltro','&Appliquez le Filtre'),
- ('Const_Hist_BtnExcluir','&Effacez l''Histoire'),
- ('Const_Hist_BtnFechar','&Près'),
-
- ('Const_UserLogged_BtnMsg','&Régénérez'),
- ('Const_UserLogged_Refresh','&Refresh'),
- ('Const_UserLogged_LabelDescricao','Utilisateurs actifs'),
- ('Const_UserLogged_LabelCaption','Utilisateurs actifs dans le système'),
- ('Const_CadColuna_Computer','Ordinateur'),
- ('Const_CadColuna_Data','Date'),
- ('Const_UserLogged_InputCaption','Message'),
- ('Const_UserLogged_InputText','Entrez votre message'),
- ('Const_UserLogged_MsgSystem','Message de système'),
- ('Const_Men_LoginInativo','Atenção, seu login esta inativo'),
- ('Const_Inc_LabelStatus','Status'),
- ('Const_Inc_StatusActive','Ativo'),
- ('Const_Inc_StatusDisabled','Inativo')
- );
-
-
- Function RetornaLingua( Lingua : TUCLanguage; Prop : String ) : String;
-
-implementation
-
-Function RetornaLingua( Lingua : TUCLanguage; Prop : String ) : String;
-Var I : Integer;
-Begin
- Result := '';
- For I := 0 to MaxArray do
- Begin
- Case Lingua of
- ucPortuguesBr : If UpperCase( UC_PTBR[ I , 0 ] ) = UpperCase( Prop ) then Result := UC_PTBR[ I , 1 ];
- ucEnglish : If UpperCase( UC_ENGLISH[ I , 0 ] ) = UpperCase( Prop ) then Result := UC_ENGLISH[ I , 1 ];
- ucSpanish : if UpperCase( UC_SPANISH[ I , 0 ] ) = UpperCase( Prop ) then Result := UC_SPANISH[ I , 1 ];
- ucFrench : if UpperCase( UC_FRENCH[ I , 0 ] ) = UpperCase( Prop ) then Result := UC_FRENCH[ I , 1 ];
- else
- If UpperCase( UC_PTBR[ I , 0 ] ) = UpperCase( Prop ) then Result := UC_PTBR[ I , 1 ];
- End;
- End;
-End;
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/UserControl.inc b/internal/2.31RC1/1/Source/UserControl.inc
deleted file mode 100644
index bedb276..0000000
--- a/internal/2.31RC1/1/Source/UserControl.inc
+++ /dev/null
@@ -1,192 +0,0 @@
-{------------------------------------------------------------------------------}
-{ VERXXX to DELPHIX }
-{------------------------------------------------------------------------------}
-
-{$IFDEF VER110}
- {$DEFINE DELPHI3}
-{$ENDIF}
-
-{$IFDEF VER120}
- {$DEFINE DELPHI4}
-{$ENDIF}
-
-{$IFDEF VER130}
- {$DEFINE DELPHI5}
-{$ENDIF}
-
-{$IFDEF VER140}
- {$DEFINE DELPHI6}
-{$ENDIF}
-
-{$IFDEF VER150}
- {$DEFINE DELPHI7}
-{$ENDIF}
-
-{$IFDEF VER160}
- {$DEFINE DELPHI8}
-{$ENDIF}
-
-{$IFDEF VER170}
- {$DEFINE DELPHI9}
-{$ENDIF}
-
-{$IFDEF VER180}
- {$DEFINE DELPHI10}
-{$ENDIF}
-
-{$IFDEF VER190}
- {$DEFINE DELPHI11}
-{$ENDIF}
-
-{$IFDEF VER200}
- {$DEFINE DELPHI12}
-{$ENDIF}
-
-{------------------------------------------------------------------------------}
-{ DELPHIX_UP from DELPHIX mappings }
-{------------------------------------------------------------------------------}
-
-{$IFDEF DELPHI12}
- {$DEFINE DELPHI12_UP}
- {$DEFINE DELPHI11_UP}
- {$DEFINE DELPHI10_UP}
- {$DEFINE DELPHI9_UP}
- {$DEFINE DELPHI8_UP}
- {$DEFINE DELPHI7_UP}
- {$DEFINE DELPHI6_UP}
- {$DEFINE DELPHI5_UP}
- {$DEFINE DELPHI4_UP}
- {$DEFINE DELPHI3_UP}
- {$DEFINE DELPHI2_UP}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-{$IFDEF DELPHI11}
- {$DEFINE DELPHI11_UP}
- {$DEFINE DELPHI10_UP}
- {$DEFINE DELPHI9_UP}
- {$DEFINE DELPHI8_UP}
- {$DEFINE DELPHI7_UP}
- {$DEFINE DELPHI6_UP}
- {$DEFINE DELPHI5_UP}
- {$DEFINE DELPHI4_UP}
- {$DEFINE DELPHI3_UP}
- {$DEFINE DELPHI2_UP}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-{$IFDEF DELPHI10}
- {$DEFINE DELPHI10_UP}
- {$DEFINE DELPHI9_UP}
- {$DEFINE DELPHI8_UP}
- {$DEFINE DELPHI7_UP}
- {$DEFINE DELPHI6_UP}
- {$DEFINE DELPHI5_UP}
- {$DEFINE DELPHI4_UP}
- {$DEFINE DELPHI3_UP}
- {$DEFINE DELPHI2_UP}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-{$IFDEF DELPHI9}
- {$DEFINE DELPHI9_UP}
- {$DEFINE DELPHI8_UP}
- {$DEFINE DELPHI7_UP}
- {$DEFINE DELPHI6_UP}
- {$DEFINE DELPHI5_UP}
- {$DEFINE DELPHI4_UP}
- {$DEFINE DELPHI3_UP}
- {$DEFINE DELPHI2_UP}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-{$IFDEF DELPHI8}
- {$DEFINE DELPHI8_UP}
- {$DEFINE DELPHI7_UP}
- {$DEFINE DELPHI6_UP}
- {$DEFINE DELPHI5_UP}
- {$DEFINE DELPHI4_UP}
- {$DEFINE DELPHI3_UP}
- {$DEFINE DELPHI2_UP}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-{$IFDEF DELPHI7}
- {$DEFINE DELPHI7_UP}
- {$DEFINE DELPHI6_UP}
- {$DEFINE DELPHI5_UP}
- {$DEFINE DELPHI4_UP}
- {$DEFINE DELPHI3_UP}
- {$DEFINE DELPHI2_UP}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-{$IFDEF DELPHI6}
- {$DEFINE DELPHI6_UP}
- {$DEFINE DELPHI5_UP}
- {$DEFINE DELPHI4_UP}
- {$DEFINE DELPHI3_UP}
- {$DEFINE DELPHI2_UP}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-{$IFDEF DELPHI5}
- {$DEFINE DELPHI5_UP}
- {$DEFINE DELPHI4_UP}
- {$DEFINE DELPHI3_UP}
- {$DEFINE DELPHI2_UP}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-{$IFDEF DELPHI4}
- {$DEFINE DELPHI4_UP}
- {$DEFINE DELPHI3_UP}
- {$DEFINE DELPHI2_UP}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-{$IFDEF DELPHI3}
- {$DEFINE DELPHI3_UP}
- {$DEFINE DELPHI2_UP}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-{$IFDEF DELPHI2}
- {$DEFINE DELPHI2_UP}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-{$IFDEF DELPHI1}
- {$DEFINE DELPHI1_UP}
-{$ENDIF}
-
-(*
-
- Definições de funcionamento
-
-*)
-
-{$IFDEF DELPHI7_UP}
- {$WARN UNSAFE_TYPE OFF}
- {$WARN UNSAFE_CODE OFF}
- {$WARN UNSAFE_CAST OFF}
- {$WARN SYMBOL_DEPRECATED OFF}
- {$WARN SYMBOL_LIBRARY OFF}
- {$WARN SYMBOL_PLATFORM OFF}
- {$WARN UNIT_LIBRARY OFF}
- {$WARN UNIT_PLATFORM OFF}
- {$WARN UNIT_DEPRECATED OFF}
- {$WARN CONSTRUCTING_ABSTRACT OFF}
- {$WARN IMPLICIT_IMPORT OFF}
-
- {$DEFINE UCACTMANAGER}
-{$ENDIF}
-
-{$IFDEF DELPHI9_UP}
- {$WARN SYMBOL_EXPERIMENTAL OFF}
- {$WARN UNIT_EXPERIMENTAL OFF}
-{$ENDIF}
-
-(*
- Definições do Usuario
-*)
diff --git a/internal/2.31RC1/1/Source/UserPermis_U.dfm b/internal/2.31RC1/1/Source/UserPermis_U.dfm
deleted file mode 100644
index 5640f06..0000000
--- a/internal/2.31RC1/1/Source/UserPermis_U.dfm
+++ /dev/null
@@ -1,636 +0,0 @@
-object UserPermis: TUserPermis
- Left = 255
- Top = 154
- BorderStyle = bsDialog
- Caption = 'Seguran'#231'a'
- ClientHeight = 522
- ClientWidth = 542
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- OldCreateOrder = False
- OnDestroy = FormDestroy
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object Panel1: TPanel
- Left = 0
- Top = 0
- Width = 542
- Height = 35
- Align = alTop
- BevelOuter = bvNone
- Color = clWhite
- TabOrder = 0
- object LbDescricao: TLabel
- Left = 44
- Top = 12
- Width = 205
- Height = 18
- Caption = 'Permiss'#245'es do Usu'#225'rio:'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -16
- Font.Name = 'Verdana'
- Font.Style = [fsBold]
- ParentFont = False
- end
- object Image1: TImage
- Left = 8
- Top = 4
- Width = 28
- Height = 28
- AutoSize = True
- Picture.Data = {
- 07544269746D6170760C0000424D760C00000000000036000000280000001C00
- 00001C0000000100200000000000400C00000000000000000000000000000000
- 0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FEFEFE00F9F9F900F1F1F100EAEA
- EA00E3E3E300E0E0E000DEDEDE00DFDFDF00E1E1E100E4E4E400E8E8E800ECEC
- EC00F0F0F000F5F5F500FAFAFA00FEFEFE00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00F6F6F600C5C7
- C5008E9F91006E8A70005E815C00527B4F004E7C4A004B7C48004A7C47004B7B
- 48004C7C4A004E7B4C0050795000557854005B7A5C00677F6A007C897E00A2A2
- A200D4D4D400FAFAFA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00F2F4F30074967100487638004E7C35004E8334004B893300488E
- 31004592300044962F0043972F0043982F0043972F004494300047903100498C
- 32004C863400507F35004E7A360047703900526C5200A9A9A900FAFAFA00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0094B3910058743900537B
- 36004E8334004A8A33004690310043962F00409B2E003E9F2D003DA12D003DA1
- 2D003DA02D003F9D2E0042992F0045933000488D32004C863400517F35005577
- 3700567039005A725A00E6E6E600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00688D5B0055783700508035004B8833004790310043982F003F9E
- 2D003BA42C0039A82B0037AB2A0037AB2A0038AA2B003AA62C003DA12D00419B
- 2E0045943000498C32004D843400527C36005773380054724D00DEDEDE00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005E875100527C36004D84
- 3400488D320044962F003F9E2E003BA52C0037AC2A0034B1290032B4280032B5
- 280033B3280035AE290039A82B003DA12D00419A2F00469131004B8933005080
- 35005577370056775100E4E4E400FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00729A6800507F35004B88330046913100419A2E003CA32C0037AB
- 2A0033B328002FB927002DBE25002CBF25002EBC260031B6270035AF29003AA7
- 2B003F9E2D0044953000498C32004E833400537A37006F8C6E00F2F2F200FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00A5C6A700508136004A8A
- 3300449330003F9D2E003AA62B0035AF290030B827002BBF250035B237002BBB
- 2B0029C324002DBC260033B4280037AB2A003DA12D0042982F00478F31004D85
- 34004A7B3600B0BCB200FDFDFD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00F6FAF70058904D00498B3200449530003E9E2D0039A82B0034B2
- 28002EBB26004BA34E00DEE0DF00DDEADF0044BB47002BC0250031B6270036AD
- 2A003CA32C00419A2F00479031004C86340072997100F1F1F100FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D4E4D6004A8E
- 3D00449530003E9E2D0039A82B0034B129002FA92C00A4B0A700E5E6E600E8E9
- E900CFDED20035B3340031B6270036AC2A003CA32C0041992F00468F31005E95
- 5B00E5E7E500FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00D2E4D4004E984500409C2E003AA52C0035AE
- 2900518B5400989B9F00798A96006B7F8C00757E85005B7F5D002D9E240038A9
- 2A003DA12D0040952F0070A46F00E9ECEA00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00EDF4EF007BB57B003A9D2E00319131004F7C93004992C5004A98CF004897
- CE004592C800437DA400235437002C7F22004B9B4500AECAB000F9F9F900FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BDD3C7004C90
- AF0052A0D60052A0D500519FD4004F9DD3004C9AD1004997CE00438CBF004363
- 6700C1C2C100FDFDFD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00F5F6F70072ABD00056A4D90056A4D90056A4D90055A3D80054A2
- D70052A0D5004F9DD3004B99D000468DC000727D8400E7E7E700FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00A2C4DC005AA6DB005BA8
- DC005BA8DC005BA8DC005AA7DB0058A5DA0056A4D90053A1D600509ED4004B9A
- D0004C7FA500ADADAD00FDFDFD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00E9EEF4005FA7D7005EABDF005FACE0005FACE0005FACE0005EABDF005CA9
- DD005AA7DB0057A4D90054A2D700509ED4004A95CA0076828B00F0F0F000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00ADCDE20060ACE00061AEE20063B0
- E30063B0E30063B0E30061AEE2005FACE0005DAADE005AA7DC0056A4D90053A1
- D600B7A293006947310069473100694731006947310069473100694731006947
- 3100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF007EB5DA0063B0E30065B2E50067B4E70068B4E70067B4E60065B2E50063B0
- E30060ADE1005DAADE0059A7DB0055A3D800B7A29300FFFFFF00FCFDFF005476
- FF00E4E9FF00FFFFFF00FFFFFF0069473100FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FAFBFC0064AAD80066B3E60069B5E8006BB7
- E9006CB8EA006BB7E90069B5E80066B3E60062AFE3005FACE0005BA8DC0057A5
- DA00B7A29300FFFFFF00B4C3FF000033FF002450FF00FCFDFF00FFFFFF006947
- 3100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00EDF2
- F50062A9D9005696BF00538EB5005E9FC9006BB4E3006EBAEC006CB8EA0069B5
- E70064B1E40060ADE1005DAADE0059A6DB00B7A29300FFFFFF004066FF000C3D
- FF000033FF009CB0FF00FFFFFF0069473100FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00F1F5F9004F8FB9004385AF004485AE003F79
- 9D003E708F004B7FA00062A5D10069B5E60066B3E60062AFE2005EABDF0059A7
- DB00B7A293008CA3FF000033FF00708DFF006483FF001846FF00F0F3FF006947
- 3100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF005490B8004D94C1004F96C3005097C3004E95C200488BB5003D7192004375
- 95005B9FCD0061AEE1005DAADE004C8FBC00B7A2930088A0FF001C49FF00E4E9
- FF00F0F3FF00204DFF006080FF0069473100FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0084B1CD00569ECB0058A0CE0059A1
- CE00579FCC00539BC8004E95C2004689B300386A8A00447B9F004786B0003C7F
- A900B7A29300FFFFFF00FFFFFF00FFFFFF00FFFFFF009CB0FF000C3DFF006080
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00C3D8E5005EA5D30061AAD80062ABD9005FA8D6005BA3D100559DCA004E95
- C200478DB9003D7DA6003C7FAA003D82AD00B7A29300B7A29300B7A29300B7A2
- 9300B7A29300B7A293009CB0FF001443FF006080FF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCFDFE0079B1D5006AB4E2006AB5
- E30067B1DF0062ABD9005BA3D000539AC7004B91BE004388B4003D82AD003C81
- AC0062849A00ECECEC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF009CB0
- FF00345DFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00DDE9F00075B9E40073BEED006EB9E80067B1DF005FA7D500569E
- CB004D94C100458BB7003D82AE005584A200D8DBDD00FEFEFE00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF009CB0FF00486DFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D8E7F1007FBF
- E80072BDEC0069B3E20061A9D70058A0CD004F96C2004689B5006994B000DCDF
- E300FEFEFE00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF009CB0FF007893FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00F4F7FA00B2D0E30085B8D80070A9CE0071A6
- C70087AFC900C3D1DB00FAFAFA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00}
- end
- object lbUser: TLabel
- Left = 257
- Top = 12
- Width = 54
- Height = 18
- Caption = 'Admin'
- Font.Charset = ANSI_CHARSET
- Font.Color = clBlue
- Font.Height = -16
- Font.Name = 'Verdana'
- Font.Style = [fsBold]
- ParentFont = False
- end
- end
- object Panel3: TPanel
- Left = 445
- Top = 35
- Width = 97
- Height = 487
- Align = alRight
- BevelOuter = bvNone
- TabOrder = 1
- object BtLibera: TBitBtn
- Left = 8
- Top = 80
- Width = 81
- Height = 25
- Caption = '&Liberar'
- TabOrder = 0
- OnClick = BtLiberaClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000C8D0D4C8D0D4
- C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8
- D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D49FBFD0
- 0060900060900060900060900060900060900060900060900060900060900060
- 909FBFD0C8D0D4C8D0D4C8D0D4C2C8CB8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D
- 8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8DC2C8CBC8D0D4C8D0D4C8D0D40090C8
- 98D8F80090C80090C80090C80090C80090C80090C80090C80090C80090C80090
- C8006090C8D0D4C8D0D4C8D0D4B5B5B5E7E7E7B6B6B6B5B5B5B5B5B5B5B5B5B5
- B5B5B5B5B5B6B6B6B5B5B5B5B5B5B5B5B58D8D8DC8D0D4C8D0D4C8D0D40090C8
- D7EFFD7ACEF774CCF66EC9F55494A840404045879B4EBBF146B7EF42B5EF0090
- C8006090C8D0D4C8D0D4C8D0D4B5B5B5F5F5F5E1E1E1E0E0E0DDDDDDB1B1B166
- 6666A7A7A7D5D5D5D3D3D3D2D2D2B5B5B58D8D8DC8D0D4C8D0D4C8D0D40090C8
- D7EFFD83D2F87DD0F777CDF671CAF540404063C5F45AC1F352BDF14AB9F00090
- C8006090C8D0D4C8D0D4C8D0D4B5B5B5F5F5F5E3E3E3E2E2E2E0E0E0DFDFDF66
- 6666DBDBDBD8D8D8D7D7D7D4D4D4B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
- D7EFFD89D5F983D2F87DD0F740404040404040404063C5F45AC1F352BDF10090
- C8006090C8D0D4C8D0D4C8D0D4B5B5B5F6F6F6E5E5E5E3E3E3E2E2E267676766
- 6666666666DCDCDCD9D9D9D6D6D6B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
- D7EFFD8FD8FA89D5F983D2F862AABE40404062AABE6BC8F563C5F45AC1F30090
- C8006090C8D0D4C8D0D4C8D0D4B5B5B5F6F6F6E7E7E7E5E5E5E3E3E3C2C2C266
- 6666C2C2C2DDDDDDDCDCDCD9D9D9B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
- D7EFFD95DBFB8FD8FA89D5F983D2F87DD0F777CDF671CAF56BC8F563C5F40090
- C8006090C8D0D4C8D0D4C8D0D4B6B6B6F5F5F5E9E9E9E7E7E7E5E5E5E3E3E3E2
- E2E2E0E0E0DFDFDFDDDDDDDCDCDCB5B5B58D8D8DC8D0D4C8D0D4C8D0D40090C8
- 98D8F8D7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFD98D8
- F8006090C8D0D4C8D0D4C8D0D4B5B5B5E7E7E7F6F6F6F6F6F6F6F6F6F6F6F6F6
- F6F6F6F6F6F6F6F6F6F6F6F5F5F5E7E7E78D8D8DC8D0D4C8D0D4C8D0D49FBFD0
- 028DC70090C80090C80090C80090C80090C80090C80090C80090C80090C80090
- C89FBFD0C8D0D4C8D0D4C8D0D4C2C8CBB4B4B4B6B6B6B6B6B6B6B6B6B5B5B5B5
- B5B5B5B5B5B6B6B6B6B6B6B5B5B5B5B5B5C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D40090C860C8F8006090C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8
- D0D4C8D0D4B6B6B6DDDDDD8D8D8DC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D40090C8006090006090C8D0D4C8D0D4C8D0D40090C860C8F8006090C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4B6B6B68D8D8D8D8D8DC8D0D4C8
- D0D4C8D0D4B6B6B6DDDDDD8D8D8DC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D40090C8D7EFFD0060909FBFD0C8D0D49FBFD00090C860C8F8006090C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4B5B5B5F6F6F68D8D8DC2C8CBC8
- D0D4C2C8CBB5B5B5DDDDDD8D8D8DC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D47FB1CDD7EFFD98D8F800609000609000609098D8F860C8F8367EA3C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4BDC2C4F5F5F5E7E7E78D8D8D8E
- 8E8E8D8D8DE7E7E7DDDDDD9EA0A1C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D49FBFD07FB1CDD7EFFDD7EFFDD7EFFDD7EFFD4DB9EC367EA39FBFD0C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C2C8CBBDC2C4F6F6F6F6F6F6F6
- F6F6F6F6F6D3D3D39EA0A1C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D4C8D0D49FBFD07FB1CD0090C80090C80090C87FB1CD9FBFD0C8D0D4C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C2C8CBBDC2C4B5B5B5B5
- B5B5B5B5B5BDC2C4C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4}
- NumGlyphs = 2
- end
- object BtBloqueia: TBitBtn
- Left = 8
- Top = 133
- Width = 81
- Height = 25
- Caption = '&Bloquear'
- TabOrder = 1
- OnClick = BtBloqueiaClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000C8D0D4C8D0D4
- C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8
- D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D49FBFD0
- 0060900060900060900060900060900060900060900060900060900060900060
- 909FBFD0C8D0D4C8D0D4C8D0D4C2C8CB8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D
- 8D8D8D8D8D8E8E8E8D8D8D8D8D8D8D8D8DC2C8CBC8D0D4C8D0D4C8D0D40090C8
- 98D8F80090C80090C80090C80090C80090C80090C80090C80090C80090C80090
- C8006090C8D0D4C8D0D4C8D0D4B6B6B6E7E7E7B5B5B5B6B6B6B5B5B5B5B5B5B5
- B5B5B6B6B6B5B5B5B5B5B5B6B6B6B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
- D7EFFD7ACEF774CCF66EC9F55494A840404045879B4EBBF146B7EF42B5EF0090
- C8006090C8D0D4C8D0D4C8D0D4B5B5B5F5F5F5E1E1E1E0E0E0DDDDDDB1B1B166
- 6666A7A7A7D5D5D5D3D3D3D2D2D2B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
- D7EFFD83D2F87DD0F777CDF671CAF540404063C5F45AC1F352BDF14AB9F00090
- C8006090C8D0D4C8D0D4C8D0D4B6B6B6F6F6F6E3E3E3E2E2E2E0E0E0DFDFDF66
- 6666DCDCDCD9D9D9D7D7D7D4D4D4B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
- D7EFFD89D5F983D2F87DD0F740404040404040404063C5F45AC1F352BDF10090
- C8006090C8D0D4C8D0D4C8D0D4B5B5B5F5F5F5E5E5E5E3E3E3E2E2E266666666
- 6666666666DCDCDCD8D8D8D6D6D6B5B5B58D8D8DC8D0D4C8D0D4C8D0D40090C8
- D7EFFD8FD8FA89D5F983D2F862AABE40404062AABE6BC8F563C5F45AC1F30090
- C8006090C8D0D4C8D0D4C8D0D4B6B6B6F6F6F6E7E7E7E6E6E6E3E3E3C2C2C267
- 6767C2C2C2DDDDDDDBDBDBD9D9D9B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
- D7EFFD95DBFB8FD8FA89D5F983D2F87DD0F777CDF671CAF56BC8F563C5F40090
- C8006090C8D0D4C8D0D4C8D0D4B5B5B5F6F6F6E9E9E9E7E7E7E6E6E6E3E3E3E2
- E2E2E0E0E0DFDFDFDDDDDDDBDBDBB6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
- 98D8F8D7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFD98D8
- F8006090C8D0D4C8D0D4C8D0D4B5B5B5E7E7E7F6F6F6F6F6F6F6F6F6F6F6F6F6
- F6F6F6F6F6F6F6F6F6F6F6F6F6F6E7E7E78D8D8DC8D0D4C8D0D4C8D0D49FBFD0
- 0090C80090C80090C80090C80090C80090C80090C80090C80090C80090C80090
- C89FBFD0C8D0D4C8D0D4C8D0D4C2C8CBB5B5B5B6B6B6B6B6B6B5B5B5B6B6B6B5
- B5B5B6B6B6B6B6B6B5B5B5B5B5B5B6B6B6C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D40090C8D7EFFD006090C8D0D4C8D0D4C8D0D40090C860C8F8006090C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4B5B5B5F5F5F58D8D8DC8D0D4C8
- D0D4C8D0D4B5B5B5DDDDDD8D8D8DC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D40090C8D7EFFD0060909FBFD0C8D0D49FBFD00090C860C8F8006090C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4B5B5B5F6F6F68D8D8DC2C8CBC8
- D0D4C2C8CBB5B5B5DEDEDE8D8D8DC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D47FB1CDD7EFFD98D8F800609000609000609060C8F860C8F8367EA3C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4BDC2C4F6F6F6E7E7E78D8D8D8D
- 8D8D8D8D8DDEDEDEDDDDDD9EA0A1C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D49FBFD07FB1CDD7EFFDD7EFFDD7EFFDD7EFFD60C8F8367EA39FBFD0C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C2C8CBBDC2C4F6F6F6F6F6F6F6
- F6F6F6F6F6DDDDDD9EA0A1C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D4C8D0D49FBFD07FB1CD0090C80090C80090C87FB1CD9FBFD0C8D0D4C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C2C8CBBDC2C4B5B5B5B5
- B5B5B6B6B6BDC2C4C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8
- D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4}
- NumGlyphs = 2
- end
- object BtGrava: TBitBtn
- Left = 8
- Top = 186
- Width = 81
- Height = 25
- Caption = '&Gravar'
- TabOrder = 2
- OnClick = BtGravaClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- 6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D422F6D42
- 2F6D422F6D422F6D422FFF00FFFF00FF69696969696969696969696969696969
- 6969696969696969696969696969696969696969696969696969FF00FFCE726F
- D19792CB8E8A715A48C0B2ABC4BCB8CAC1BCCAC1BCCAC1BCCAC1BC8C76679443
- 409443409443406D422FFF00FF9A9A9AB4B4B4AEAEAE7D7D7DC6C6C6CECECED2
- D2D2D2D2D2D2D2D2D2D2D2969696707070707070707070696969FF00FFCE726F
- D79F9BD19792715A482E1F185F5046FFFFFFFFFFFFFFFFFFF0E4DE8C76679747
- 449443409443406D422FFF00FF9A9A9ABBBBBBB5B5B57C7C7C434343747474FF
- FFFFFFFFFFFFFFFFECECEC969696747474707070707070696969FF00FFCE726F
- DDA8A3D79F9B715A480A0A0A36241BFFFFFFF7F1EEF0E4DEE1CABD8C76679E50
- 4D9747449443406D422FFF00FF9A9A9AC1C1C1BBBBBB7D7D7D2A2A2A4A4A4AFF
- FFFFF6F6F6ECECECD8D8D89595957C7C7C757575707070696969FF00FFCE726F
- E3B0ABDDA8A3715A48715A48715A48715A48715A48715A48715A48715A48A459
- 569E504D9747446D422FFF00FF9A9A9AC8C8C8C1C1C17D7D7D7D7D7D7D7D7D7C
- 7C7C7D7D7D7D7D7D7D7D7D7D7D7D8383837C7C7C747474696969FF00FFCE726F
- EDBDB8E7B5B0E0ACA7DAA49FD49B97CB8E8AC58682BF7E79B97571B26B68AB62
- 5FA459569E504D6D422FFF00FF9A9A9AD2D2D2CCCCCCC4C4C4BEBEBEB8B8B8AE
- AEAEA8A8A8A1A1A19A9A9A9292928B8B8B8484847B7B7B696969FF00FFCE726F
- F0C1BCEDBDB8E7B5B0E0ACA7DAA49FD49B97CE938EC88A86C2827EBC7975B26B
- 68AB625FA459566D422FFF00FF9A9A9AD4D4D4D2D2D2CBCBCBC4C4C4BFBFBFB8
- B8B8B1B1B1ABABABA5A5A59D9D9D9292928B8B8B848484696969FF00FFCE726F
- F0C1BCF0C1BCC8635CC8635CC8635CC8635CC8635CC8635CC8635CC8635CC863
- 5CB5706CAE67636D422FFF00FF9A9A9AD4D4D4D5D5D58E8E8E8E8E8E8E8E8E8E
- 8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9696968E8E8E696969FF00FFCE726F
- F0C1BCC8635CFAF5F3F6EEEAF2E7E2EEE2DAEBDCD3E7D6CBE4D0C4E1CABDE1CA
- BDC8635CB5706C6D422FFF00FF9A9A9AD4D4D48E8E8EF8F8F8F3F3F3EEEEEEEA
- EAEAE6E6E6E1E1E1DDDDDDD8D8D8D8D8D88E8E8E969696676767FF00FFCE726F
- F0C1BCC8635CFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9CFE6D3C8E2CD
- C0C8635CBC79756D422FFF00FF9A9A9AD5D5D58E8E8EFFFFFFFAFAFAF6F6F6F1
- F1F1ECECECE7E7E7E3E3E3DFDFDFDADADA8E8E8E9D9D9D696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9CFE6D3
- C8C8635CC2827E6D422FFF00FF9A9A9AD4D4D48D8D8DFFFFFFFFFFFFFBFBFBF6
- F6F6F0F0F0ECECECE7E7E7E3E3E3DFDFDF8E8E8EA5A5A5696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDFD6E9D9
- CFC8635CC88A866D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFB
- FBFBF5F5F5F1F1F1ECECECE8E8E8E3E3E38E8E8EABABAB696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4DEECDF
- D6C8635CD197926D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFBFBFBF6F6F6F1F1F1ECECECE7E7E78E8E8EB5B5B5696969FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EAE6F0E4
- DEC8635C0A0A0A6D422FFF00FF9A9A9AD4D4D48E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFBFBFBF6F6F6F1F1F1ECECEC8E8E8E2A2A2A676767FF00FFCE726F
- F0C1BCC8635CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF8F7F8F1EEF4EA
- E6C8635CC88A866D422FFF00FF9A9A9AD5D5D58E8E8EFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFBFBFBF5F5F5F1F1F18E8E8EABABAB696969FF00FFCE726F
- CE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE726FCE72
- 6FCE726FCE726FCE726FFF00FF9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
- 9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A}
- NumGlyphs = 2
- end
- object BtCancel: TBitBtn
- Left = 8
- Top = 240
- Width = 81
- Height = 25
- Caption = '&Cancelar'
- TabOrder = 3
- OnClick = BtCancelClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFC066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40198E40198E40198E40
- 198E40198E4019FF00FF8888886969696969696969696969696969696A6A6A69
- 69696969696969696A6A6A6969696969696A6A6A696969FF00FFC06614F9F5F4
- C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2
- A5C3B2A58E4019FF00FF888888F8F8F8C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6
- C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6696969FF00FFC06614FCFAFA
- F9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCDFD0C7DFD0C7DCCB
- C1C3B2A58E4019FF00FF888888FCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEAEAEAE7
- E7E7E4E4E4E0E0E0DDDDDDDDDDDDD9D9D9C6C6C6696969FF00FFC06614FFFFFF
- FCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCE2D4CCDFD0
- C7C3B2A58E4019FF00FF888888FFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEA
- EAEAE7E7E7E3E3E3E0E0E0E0E0E0DDDDDDC6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E5D9D1E2D4
- CCC3B2A58E4019FF00FF888888FFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EE
- EEEEEAEAEAE7E7E7E3E3E3E3E3E3E0E0E0C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E9DED7E5D9
- D1C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1
- F1F1EEEEEEEAEAEAE7E7E7E7E7E7E3E3E3C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F2EBE8EEE6E2ECE2DCECE2DCE9DE
- D7C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFBF7
- F7F7F1F1F1EEEEEEEAEAEAEAEAEAE7E7E7C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF0E9E5F0E9E5EDE4
- DFC3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFB
- FBFBF7F7F7F3F3F3F0F0F0F0F0F0ECECECC6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF4EEEBF0E9
- E5C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
- FEFEFBFBFBF7F7F7F3F3F3F3F3F3F0F0F0C6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F78A9DE92546CD1D3F
- C9193BC8183BC88194E1898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFEFEFEFAFAFAC6C6C6979797929292929292929292C0C0C0C06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFD3355DBF2F4FD4E6B
- D94A67D8F2F4FD183BC8888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFEFEFEA1A1A1FAFAFAAAAAAAA8A8A8F9F9F9929292C066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40193C5CDD8296E4D9DF
- F9CDD5F74C69D81A3CC88888886969696969696969696A6A6A69696969696969
- 6969696969696969A5A5A5C1C1C1EDEDEDE7E7E7A8A8A8929292C06614ED9733
- ED9733ED9733ED9733ED9733ED9733ED9733F6CA9AED97334563E16980E2E4E8
- FBD8DEF9516DDA1F40C9888888ACACACACACACADADADADADADADADADACACACAD
- ADADD5D5D5ADADADA8A8A8B6B6B6F2F2F2ECECECABABAB939393F810DCC06614
- C06614C06614C06614C06614C06614C06614C06614C066144D6AE3F2F4FD667D
- E26E85E2F2F4FD2749CEEF14EF88888888888888888888888889898988888888
- 8888888888898989ACACACF9F9F9B5B5B5B9B9B9F9F9F9989898FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF9AABEF4D6AE34563
- E14463DF3E5EDE8FA2EBFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFCFCFCFACACACA8A8A8A8A8A8A6A6A6C9C9C9}
- NumGlyphs = 2
- end
- end
- object PC: TPageControl
- Left = 0
- Top = 35
- Width = 445
- Height = 487
- ActivePage = PageMenu
- Align = alClient
- Style = tsFlatButtons
- TabOrder = 2
- object PageMenu: TTabSheet
- Caption = 'Itens do Menu'
- object TreeMenu: TTreeView
- Left = 0
- Top = 0
- Width = 437
- Height = 456
- Align = alClient
- Ctl3D = True
- Images = ImageList1
- Indent = 19
- ParentCtl3D = False
- ReadOnly = True
- RightClickSelect = True
- TabOrder = 0
- OnClick = TreeMenuClick
- OnCollapsing = TreeMenuCollapsing
- OnExpanding = TreeMenuCollapsing
- OnKeyPress = TreeMenuKeyPress
- OnMouseUp = TreeMenuMouseUp
- end
- end
- object PageAction: TTabSheet
- Caption = 'A'#231#245'es'
- ImageIndex = 1
- object TreeAction: TTreeView
- Left = 0
- Top = 0
- Width = 437
- Height = 456
- Align = alClient
- Ctl3D = True
- Images = ImageList1
- Indent = 19
- ParentCtl3D = False
- ReadOnly = True
- RightClickSelect = True
- TabOrder = 0
- OnClick = TreeActionClick
- OnCollapsing = TreeMenuCollapsing
- OnExpanding = TreeMenuCollapsing
- OnKeyPress = TreeMenuKeyPress
- end
- end
- object PageControls: TTabSheet
- Caption = 'Controles'
- ImageIndex = 2
- object TreeControls: TTreeView
- Left = 0
- Top = 0
- Width = 437
- Height = 456
- Align = alClient
- Ctl3D = True
- Images = ImageList1
- Indent = 19
- ParentCtl3D = False
- ReadOnly = True
- RightClickSelect = True
- TabOrder = 0
- OnClick = TreeControlsClick
- OnCollapsing = TreeMenuCollapsing
- OnExpanding = TreeMenuCollapsing
- OnKeyPress = TreeMenuKeyPress
- end
- end
- end
- object ImageList1: TImageList
- Left = 360
- Top = 8
- Bitmap = {
- 494C010103000400040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
- 0000000000003600000028000000400000001000000001002000000000000010
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400C6DEC600C6DE
- C600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DE
- C600C6DEC6000000000000000000000000000000000084848400C6DEC600C6DE
- C600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DE
- C600C6DEC6000000000000000000000000000000000084848400C6DEC600C6DE
- C600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DE
- C600C6DEC6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC6000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC600000000000000000000000000000000008484840084848400C6C6
- C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6
- C600C6DEC6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC6000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC600000000000000000000000000000000008484840084848400C6C6
- C600C6C6C600C6C6C60084848400C6C6C600C6C6C600C6C6C600C6C6C600C6C6
- C600C6DEC6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC6000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC600000000000000000000000000000000008484840084848400C6C6
- C600C6C6C600848484008484840084848400C6C6C600C6C6C600C6C6C600C6C6
- C600C6DEC6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC6000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC600000000000000000000000000000000008484840084848400C6C6
- C6008484840084848400848484008484840084848400C6C6C600C6C6C600C6C6
- C600C6DEC6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC6000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC600000000000000000000000000000000008484840084848400C6C6
- C6008484840084848400C6C6C600848484008484840084848400C6C6C600C6C6
- C600C6DEC6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC6000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC600000000000000000000000000000000008484840084848400C6C6
- C60084848400C6C6C600C6C6C600C6C6C600848484008484840084848400C6C6
- C600C6DEC6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC6000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC600000000000000000000000000000000008484840084848400C6C6
- C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C6008484840084848400C6C6
- C600C6DEC6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC6000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC600000000000000000000000000000000008484840084848400C6C6
- C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C60084848400C6C6
- C600C6DEC6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC6000000000000000000000000000000000084848400848484000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C6DEC600000000000000000000000000000000008484840084848400C6C6
- C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6
- C600C6DEC6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400848484008484
- 8400848484008484840084848400848484008484840084848400848484008484
- 8400C6DEC6000000000000000000000000000000000084848400848484008484
- 8400848484008484840084848400848484008484840084848400848484008484
- 8400C6DEC6000000000000000000000000000000000084848400848484008484
- 8400848484008484840084848400848484008484840084848400848484008484
- 8400C6DEC6000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000084848400848484008484
- 8400848484008484840084848400848484008484840084848400848484008484
- 8400848484000000000000000000000000000000000084848400848484008484
- 8400848484008484840084848400848484008484840084848400848484008484
- 8400848484000000000000000000000000000000000084848400848484008484
- 8400848484008484840084848400848484008484840084848400848484008484
- 8400848484000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000424D3E000000000000003E000000
- 2800000040000000100000000100010000000000800000000000000000000000
- 000000000000000000000000FFFFFF00FFFFFFFFFFFF0000FFFFFFFFFFFF0000
- FFFFFFFFFFFF000080078007800700009FF79FF7800700009FF79DF780070000
- 9FF798F7800700009FF79077800700009FF79237800700009FF7971780070000
- 9FF79F97800700009FF79FD7800700009FF79FF7800700008007800780070000
- 8007800780070000FFFFFFFFFFFF000000000000000000000000000000000000
- 000000000000}
- end
-end
diff --git a/internal/2.31RC1/1/Source/UserPermis_U.pas b/internal/2.31RC1/1/Source/UserPermis_U.pas
deleted file mode 100644
index 1ebdea4..0000000
--- a/internal/2.31RC1/1/Source/UserPermis_U.pas
+++ /dev/null
@@ -1,750 +0,0 @@
-unit UserPermis_U;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- UCBase,
- {.$IFDEF UCACTMANAGER}
- ActnMan,
- ActnMenus,
- {.$ENDIF}
- {.$IFDEF DELPHI5_UP}
- Variants,
- {.$ENDIF}
- Buttons,
- Classes,
- ComCtrls,
- Controls,
- DB,
- ExtCtrls,
- Forms,
- Graphics,
- ImgList,
- Menus,
- StdCtrls;
-
-type
- PTreeMenu = ^TTreeMenu;
-
- TTreeMenu = record
- Selecionado: Integer;
- MenuName: String;
- end;
-
- PTreeAction = ^TTreeAction;
-
- TTreeAction = record
- Grupo: Boolean;
- Selecionado: Integer;
- MenuName: String;
- end;
-
- PTreeControl = ^TTreeControl;
-
- TTreeControl = record
- Grupo: Boolean;
- Selecionado: Integer;
- CompName: String;
- FormName: String;
- end;
-
- TUserPermis = class(TForm)
- Panel1: TPanel;
- LbDescricao: TLabel;
- Image1: TImage;
- Panel3: TPanel;
- BtLibera: TBitBtn;
- BtBloqueia: TBitBtn;
- BtGrava: TBitBtn;
- lbUser: TLabel;
- ImageList1: TImageList;
- BtCancel: TBitBtn;
- PC: TPageControl;
- PageMenu: TTabSheet;
- PageAction: TTabSheet;
- TreeMenu: TTreeView;
- TreeAction: TTreeView;
- PageControls: TTabSheet;
- TreeControls: TTreeView;
- procedure BtGravaClick(Sender: TObject);
- procedure TreeMenuClick(Sender: TObject);
- procedure BtCancelClick(Sender: TObject);
- procedure BtLiberaClick(Sender: TObject);
- procedure BtBloqueiaClick(Sender: TObject);
- procedure FormShow(Sender: TObject);
- procedure TreeActionClick(Sender: TObject);
- procedure TreeControlsClick(Sender: TObject);
- procedure TreeMenuCollapsing(Sender: TObject; Node: TTreeNode; var AllowCollapse: Boolean);
- procedure TreeMenuKeyPress(Sender: TObject; var Key: char);
- procedure TreeMenuMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
- procedure FormDestroy(Sender: TObject);
- private
- FMenu: TMenu;
- FActions: TObject;
- FChangingTree: Boolean;
- FTempMPointer: PTreeMenu;
- FTempAPointer: PTreeAction;
- FTempCPointer: PTreeControl;
- FExtraRights: TUCExtraRights;
- FTempLista: TStringList;
- FListaAction: array of PTreeAction;
- FListaMenu: array of PTreeMenu;
- FListaControl: array of PTreeControl;
- {.$IFDEF UCACTMANAGER}
- FActionMainMenuBar: TActionMainMenuBar;
- procedure TrataItem(IT: TActionClientItem; node: TTreeNode); overload;
- {.$ENDIF}
- procedure TrataItem(IT: TMenuItem; node: TTreeNode); overload;
- procedure TreeMenuItem(marca: Boolean);
- procedure Atualiza(Selec: Boolean);
- procedure TreeActionItem(marca: Boolean);
- procedure UnCheckChild(node: TTreeNode);
- procedure TreeControlItem(marca: Boolean);
- procedure CarregaTreeviews;
- public
- FTempIdUser: Integer;
- FUserControl: TUserControl;
- DSPermiss: TDataset;
- DSPermissEX: TDataset;
- DSPerfil: TDataset;
- DSPerfilEX: TDataset;
- end;
-
-var
- UserPermis: TUserPermis;
-
-implementation
-
-uses
- ActnList,
- Messages,
- SysUtils,
- Windows;
-
-{$R *.dfm}
-
-procedure TUserPermis.BtGravaClick(Sender: TObject);
-var
- Contador: Integer;
-begin
- with fUserControl.TableRights do
- begin
- fUserControl.DataConnector.UCExecSQL('Delete from ' + TableName + ' Where ' + FieldUserID + ' = ' + IntToStr(FTempIdUser) + ' and ' + FieldModule + ' = ' + QuotedStr(fUserControl.ApplicationID));
- fUserControl.DataConnector.UCExecSQL('Delete from ' + TableName + 'EX Where ' + FieldUserID + ' = ' + IntToStr(FTempIdUser) + ' and ' + FieldModule + ' = ' + QuotedStr(fUserControl.ApplicationID));
- end;
-
- for Contador := 0 to TreeMenu.Items.Count - 1 do
- if PTreeMenu(TreeMenu.Items[Contador].Data).Selecionado = 1 then
- fUserControl.AddRight(FTempIdUser, PTreeMenu(TreeMenu.Items[Contador].Data).MenuName);
-
- for Contador := 0 to TreeAction.Items.Count - 1 do
- if PTreeAction(TreeAction.Items[Contador].Data).Selecionado = 1 then
- fUserControl.AddRight(FTempIdUser, PTreeAction(TreeAction.Items[Contador].Data).MenuName);
-
- //Extra Rights
- for Contador := 0 to Pred(TreeControls.Items.Count) do
- if PTreeControl(TreeControls.Items[Contador].Data).Selecionado = 1 then
- fUserControl.AddRightEX(FTempIdUser, fUserControl.ApplicationID, PTreeControl(TreeControls.Items[Contador].Data).FormName, PTreeControl(TreeControls.Items[Contador].Data).CompName);
-
- Close;
-end;
-
-procedure TUserPermis.TrataItem(IT: TMenuItem; node: TTreeNode);
-var
- contador: Integer;
- TempNode: TTreeNode;
-begin
- for contador := 0 to IT.Count - 1 do
- if IT.Items[Contador].Caption <> '-' then
- if IT.Items[Contador].Count > 0 then
- begin
- New(FTempMPointer);
- SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
- FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
- FTempMPointer.Selecionado := 0;
- FTempMPointer.MenuName := IT.Items[Contador].Name;
- TempNode := TreeMenu.Items.AddChildObject(node, StringReplace(IT.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
- TrataItem(IT.Items[Contador], TempNode);
- end
- else
- begin
- New(FTempMPointer);
- SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
- FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
- FTempMPointer.Selecionado := 0;
- FTempMPointer.MenuName := IT.Items[Contador].Name;
- TreeMenu.Items.AddChildObject(node, StringReplace(IT.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
- end;
-end;
-
-{.$IFDEF UCACTMANAGER}
-procedure TUserPermis.TrataItem(IT: TActionClientItem; node: TTreeNode);
-var
- contador: Integer;
- TempNode: TTreeNode;
-begin
- for contador := 0 to IT.Items.Count - 1 do
- if IT.Items[Contador].Caption <> '-' then
- if IT.Items[Contador].Items.Count > 0 then
- begin
- New(FTempMPointer);
- SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
- FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
- FTempMPointer.Selecionado := 0;
- FTempMPointer.MenuName := #1 + 'G' + IT.Items[Contador].Caption;
- TempNode := TreeMenu.Items.AddChildObject(node, StringReplace(IT.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
- TrataItem(IT.Items[Contador], TempNode);
- end
- else
- begin
- New(FTempMPointer);
- SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
- FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
- FTempMPointer.Selecionado := 0;
- FTempMPointer.MenuName := IT.Items[Contador].Action.Name;
- TreeMenu.Items.AddChildObject(node, StringReplace(IT.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
- end;
-end;
-
-{.$ENDIF}
-
-procedure TUserPermis.CarregaTreeviews;
-var
- Contador: Integer;
- TempNode: TTreeNode;
- Temp: String;
- Temp2: String;
- Desc: String;
-begin
- FChangingTree := False;
- PC.ActivePage := PageMenu;
-
-{ Self.FMenu := fUserControl.ControlRight.MainMenu;
- Self.FActionMainMenuBar := fUserControl.ControlRight.ActionMainMenuBar;
- if Assigned(fUserControl.ControlRight.ActionList) then
- Self.FActions := fUserControl.ControlRight.ActionList
- else
- Self.FActions := fUserControl.ControlRight.ActionManager; }
-
- Self.FMenu := fUsercontrol.ControlRight.MainMenu;
- Self.FActionMainMenuBar := fUsercontrol.ControlRight.ActionMainMenuBar;
- if Assigned(fUsercontrol.ControlRight.ActionList) then
- Self.FActions := fUsercontrol.ControlRight.ActionList
- else
- Self.FActions := fUsercontrol.ControlRight.ActionManager;
- Self.FExtraRights := fUsercontrol.ExtraRights;
-
- (*if (not Assigned(FMenu)) and (not Assigned(fUserControl.ControlRight.ActionList))
- {.$IFDEF UCACTMANAGER} and (not Assigned(fUserControl.ControlRight.ActionManager)) and
- (not Assigned(fUserControl.ControlRight.ActionMainMenuBar))
- {.$ENDIF} then
- begin
- if (Assigned(FMenu))
- {.$IFDEF UCACTMANAGER} and (not Assigned(fUserControl.ControlRight.ActionMainMenuBar))
- {.$ENDIF} then*)
-
- //TempNode := nil;
- if Assigned(FMenu) then
- begin
- TreeMenu.Items.Clear;
- for Contador := 0 to FMenu.Items.Count - 1 do
- if FMenu.Items[Contador].Count > 0 then
- begin
- New(FTempMPointer);
- SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
- FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
- FTempMPointer.Selecionado := 0;
- FTempMPointer.MenuName := FMenu.Items[Contador].Name;
- TempNode := TreeMenu.Items.AddObject(nil, StringReplace(FMenu.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
- TrataItem(FMenu.Items[Contador], TempNode);
- end
- else
- if FMenu.Items[Contador].Caption <> '-' then
- begin
- New(FTempMPointer);
- SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
- FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
- FTempMPointer.Selecionado := 0;
- FTempMPointer.MenuName := FMenu.Items[Contador].Name;
- TreeMenu.Items.AddObject(nil, StringReplace(FMenu.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
- end;
- TreeMenu.FullExpand;
- TreeMenu.Perform(WM_VSCROLL, SB_TOP, 0);
- end;
-
- {.$IFDEF UCACTMANAGER}
- //TempNode := nil;
- if Assigned(FActionMainMenuBar) then
- begin
- TreeMenu.Items.Clear;
- for Contador := 0 to FActionMainMenuBar.ActionClient.Items.Count - 1 do
- begin
- Temp := IntToStr(Contador);
- if FActionMainMenuBar.ActionClient.Items[StrToInt(Temp)].Items.Count > 0 then
- begin
- New(FTempMPointer);
- SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
- FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
- FTempMPointer.Selecionado := 0;
- FTempMPointer.MenuName := #1 + 'G' + FActionMainMenuBar.ActionClient.Items[StrToInt(Temp)].Caption;
- TempNode := TreeMenu.Items.AddObject(nil, StringReplace(FActionMainMenuBar.ActionClient.Items[StrToInt(Temp)].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
- TrataItem(FActionMainMenuBar.ActionClient.Items[StrToInt(Temp)], TempNode);
- end
- else
- begin
- New(FTempMPointer);
- SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
- FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
- FTempMPointer.Selecionado := 0;
- FTempMPointer.MenuName := FActionMainMenuBar.ActionClient.Items[StrToInt(Temp)].Action.Name;
- TreeMenu.Items.AddObject(nil, StringReplace(FActionMainMenuBar.ActionClient.Items[StrToInt(Temp)].Action.Name, '&', '', [rfReplaceAll]), FTempMPointer);
- end;
- TreeMenu.FullExpand;
- TreeMenu.Perform(WM_VSCROLL, SB_TOP, 0);
- end;
- end;
- {.$ENDIF}
-
-(*if (Assigned(fUserControl.ControlRight.ActionList))
- {.$IFDEF UCACTMANAGER} or (Assigned(fUserControl.ControlRight.ActionManager))
- {.$ENDIF} then*)
-
- TempNode := nil;
- if Assigned(FActions) then
- begin
- TreeAction.Items.Clear;
- if Assigned(FTempLista) then
- FreeAndNil(FTempLista);
- FTempLista := TStringList.Create;
- for Contador := 0 to TActionList(FActions).ActionCount - 1 do
- FTempLista.Append(TActionList(FActions).Actions[contador].Category + #1 + TActionList(FActions).Actions[contador].Name + #2 + TAction(TActionList(FActions).Actions[contador]).Caption);
- FTempLista.Sort;
- Temp := #1;
- for Contador := 0 to FTempLista.Count - 1 do
- begin
- if Temp <> Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1) then
- begin
- New(FTempAPointer);
- SetLength(FListaAction, Length(FListaAction) + 1); //Adicionado por Luiz 18/01/06
- FListaAction[High(FListaAction)] := FTempAPointer; //Adicionado por Luiz 18/01/06
- FTempAPointer.Grupo := True;
- FTempAPointer.Selecionado := 0;
- FTempAPointer.MenuName := 'Grupo';
- TempNode := TreeAction.Items.AddObject(nil, StringReplace(Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1), '&', '', [rfReplaceAll]), FTempAPointer);
- TempNode.ImageIndex := 2;
- TempNode.SelectedIndex := 2;
- Temp := Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1);
- end;
- Temp2 := FTempLista[Contador];
- Delete(Temp2, 1, pos(#1, Temp2));
- New(FTempAPointer);
- SetLength(FListaAction, Length(FListaAction) + 1); //Adicionado por Luiz 18/01/06
- FListaAction[High(FListaAction)] := FTempAPointer; //Adicionado por Luiz 18/01/06
- FTempAPointer.Grupo := False;
- FTempAPointer.Selecionado := 0;
- FTempAPointer.MenuName := Copy(Temp2, 1, Pos(#2, Temp2) - 1);
- Delete(Temp2, 1, pos(#2, Temp2));
- TreeAction.Items.AddChildObject(TempNode, StringReplace(Temp2, '&', '', [rfReplaceAll]), FTempAPointer);
- end;
- TreeAction.FullExpand;
- TreeAction.Perform(WM_VSCROLL, SB_TOP, 0);
- end;
-
- //ExtraRights
- TempNode := nil;
- if Self.FExtraRights.Count > 0 then
- begin
- TreeControls.Items.Clear;
- if Assigned(FTempLista) then
- FreeAndNil(FTempLista);
- FTempLista := TStringList.Create;
- for Contador := 0 to Pred(FExtraRights.Count) do
- FTempLista.Append(FExtraRights[Contador].GroupName + #1 + FExtraRights[Contador].Caption + #2 + FExtraRights[Contador].FormName + #3 + FExtraRights[Contador].CompName);
- FTempLista.Sort;
- Temp := #1;
- for Contador := 0 to Pred(FTempLista.Count) do
- begin
- if Temp <> Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1) then
- begin
- New(FTempCPointer);
- SetLength(FListaControl, Length(FListaControl) + 1); //Adicionado por Luiz 18/01/06
- FListaControl[High(FListaControl)] := FTempCPointer; //Adicionado por Luiz 18/01/06
- FTempCPointer.Grupo := True;
- FTempCPointer.Selecionado := 0;
- FTempCPointer.FormName := 'Grupo';
- FTempCPointer.CompName := 'Grupo';
- TempNode := TreeControls.Items.AddObject(nil, Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1), FTempCPointer);
- TempNode.ImageIndex := 2;
- TempNode.SelectedIndex := 2;
- Temp := Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1);
- end;
- Temp2 := FTempLista[Contador];
- Delete(Temp2, 1, pos(#1, Temp2));
- New(FTempCPointer);
- SetLength(FListaControl, Length(FListaControl) + 1); //Adicionado por Luiz 18/01/06
- FListaControl[High(FListaControl)] := FTempCPointer; //Adicionado por Luiz 18/01/06
- FTempCPointer.Grupo := False;
- FTempCPointer.Selecionado := 0;
- Desc := Copy(Temp2, 1, Pos(#2, Temp2) - 1); // descricao do objeto
- Delete(Temp2, 1, pos(#2, Temp2));
-
- FTempCPointer.FormName := Copy(Temp2, 1, Pos(#3, Temp2) - 1);
- Delete(Temp2, 1, pos(#3, Temp2));
- FTempCPointer.CompName := Temp2;
- TreeControls.Items.AddChildObject(TempNode, Desc, FTempCPointer);
- FTempCPointer := nil;
- end;
- TreeControls.FullExpand;
- TreeControls.Perform(WM_VSCROLL, SB_TOP, 0);
- end;
-
- PageMenu.TabVisible := Assigned(FMenu);
-
- PageAction.TabVisible := Assigned(FActions);
-
- PageControls.TabVisible := (Assigned(FExtraRights) and (FExtraRights.Count > 0));
-end;
-
-procedure TUserPermis.UnCheckChild(node: TTreeNode);
-var
- child: TTreeNode;
-begin
- PTreemenu(node.Data).Selecionado := 0;
- node.ImageIndex := 0;
- node.SelectedIndex := 0;
- child := node.GetFirstChild;
- repeat
- if child.HasChildren then
- UnCheckChild(child)
- else
- begin
- PTreemenu(child.Data).Selecionado := 0;
- child.ImageIndex := 0;
- child.SelectedIndex := 0;
- end;
- child := node.GetNextChild(child);
- until child = nil;
-end;
-
-procedure TUserPermis.TreeMenuItem(Marca: Boolean);
-var
- AbsIdx: Integer;
-begin
- if Marca then
- if PTreemenu(TreeMenu.Selected.Data).Selecionado < 2 then
- begin
- if PTreemenu(TreeMenu.Selected.Data).Selecionado = 0 then //marcar
- begin
- AbsIdx := TreeMenu.Selected.AbsoluteIndex;
- while AbsIdx > -1 do
- begin
- PTreemenu(TreeMenu.Items.Item[AbsIdx].Data).Selecionado := 1;
- TreeMenu.Items.Item[AbsIdx].ImageIndex := 1;
- TreeMenu.Items.Item[AbsIdx].SelectedIndex := 1;
- if TreeMenu.Items.Item[AbsIdx].Parent <> nil then
- begin
- AbsIdx := TreeMenu.Items.Item[AbsIdx].Parent.AbsoluteIndex;
- if PTreemenu(TreeMenu.Items.Item[AbsIdx].Data).Selecionado = 2 then
- AbsIdx := -1;
- end
- else
- AbsIdx := -1;
- end;
- end
- else
- if TreeMenu.Selected.HasChildren then
- UnCheckChild(TreeMenu.Selected)
- else
- begin
- PTreemenu(TreeMenu.Selected.Data).Selecionado := 0;
- TreeMenu.Selected.ImageIndex := 0;
- TreeMenu.Selected.SelectedIndex := 0;
- end; //desmarcar
- TreeMenu.Repaint;
- end;
-end;
-
-procedure TUserPermis.TreeActionItem(marca: Boolean);
-begin
- if not Assigned(FActions) then
- Exit;
- if PTreeAction(TreeAction.Selected.Data).Grupo then
- Exit;
- if Marca then
- begin
- if PTreeAction(TreeAction.Selected.Data).Selecionado < 2 then
- if PTreeAction(TreeAction.Selected.Data).Selecionado = 0 then
- PTreeAction(TreeAction.Selected.Data).Selecionado := 1
- else
- PTreeAction(TreeAction.Selected.Data).Selecionado := 0;
- TreeAction.Selected.ImageIndex := PTreeAction(TreeAction.Selected.Data).Selecionado;
- TreeAction.Selected.SelectedIndex := PTreeAction(TreeAction.Selected.Data).Selecionado;
- end;
- TreeAction.Repaint;
-end;
-
-procedure TUserPermis.TreeControlItem(marca: Boolean);
-begin
- if PTreeControl(TreeControls.Selected.Data).Grupo then
- Exit;
- if Marca then
- begin
- if PTreeControl(TreeControls.Selected.Data).Selecionado < 2 then
- if PTreeControl(TreeControls.Selected.Data).Selecionado = 0 then
- PTreeControl(TreeControls.Selected.Data).Selecionado := 1
- else
- PTreeControl(TreeControls.Selected.Data).Selecionado := 0;
- TreeControls.Selected.ImageIndex := PTreeControl(TreeControls.Selected.Data).Selecionado;
- TreeControls.Selected.SelectedIndex := PTreeAction(TreeControls.Selected.Data).Selecionado;
- end;
- TreeControls.Repaint;
-end;
-
-procedure TUserPermis.TreeMenuClick(Sender: TObject);
-begin
- if not FChangingTree then
- TreeMenuItem(True);
-end;
-
-procedure TUserPermis.BtCancelClick(Sender: TObject);
-begin
- Close;
-end;
-
-procedure TUserPermis.BtLiberaClick(Sender: TObject);
-begin
- Atualiza(True);
-end;
-
-procedure TUserPermis.Atualiza(Selec: Boolean);
-var
- Contador: Integer;
- Temp: Integer;
-begin
- if Selec then
- Temp := 1
- else
- Temp := 0;
-
- if PC.ActivePage = PageMenu then
- begin
- for Contador := 0 to TreeMenu.Items.Count - 1 do
- if PTreeMenu(TreeMenu.Items[Contador].Data).Selecionado < 2 then
- begin
- PTreeMenu(TreeMenu.Items[Contador].Data).Selecionado := Temp;
- TreeMenu.Items[Contador].ImageIndex := Temp;
- TreeMenu.Items[Contador].SelectedIndex := Temp;
- end;
- TreeMenu.Repaint;
- end
- else
- if PC.ActivePage = PageAction then
- begin
- for Contador := 0 to TreeAction.Items.Count - 1 do
- if not PTreeAction(TreeAction.Items[Contador].Data).Grupo then
- if PTreeAction(TreeAction.Items[Contador].Data).Selecionado < 2 then
- begin
- PTreeAction(TreeAction.Items[Contador].Data).Selecionado := Temp;
- TreeAction.Items[Contador].ImageIndex := Temp;
- TreeAction.Items[Contador].SelectedIndex := Temp;
- end;
- TreeAction.Repaint;
- end
- else
- begin // tabContols
- for Contador := 0 to TreeControls.Items.Count - 1 do
- if not PTreeControl(TreeControls.Items[Contador].Data).Grupo then
- if PTreeControl(TreeControls.Items[Contador].Data).Selecionado < 2 then
- begin
- PTreeControl(TreeControls.Items[Contador].Data).Selecionado := Temp;
- TreeControls.Items[Contador].ImageIndex := Temp;
- TreeControls.Items[Contador].SelectedIndex := Temp;
- end;
- TreeControls.Repaint;
- end;
-end;
-
-
-procedure TUserPermis.BtBloqueiaClick(Sender: TObject);
-begin
- Atualiza(False);
-end;
-
-procedure TUserPermis.FormShow(Sender: TObject);
-var
- Contador: Integer;
- Selec: Integer;
-begin
- // Adcionado por Luiz
- SetLength(FListaAction, 0);
- SetLength(FListaMenu, 0);
- SetLength(FListaControl, 0);
-
- //carrega itens do menu, actions e controles
- CarregaTreeviews;
-
- // Exibe Permissoes do Usuario
- for Contador := 0 to TreeAction.Items.Count - 1 do
- begin
- DSPermiss.First;
- if DSPermiss.Locate('ObjName', PTreeAction(TreeAction.Items[Contador].Data).MenuName, []) then
- Selec := 1
- else
- Selec := 0;
-
- PTreeAction(TreeAction.Items[Contador].Data).Selecionado := Selec;
- if not PTreeAction(TreeAction.Items[Contador].Data).Grupo then
- begin
- TreeAction.Items[Contador].ImageIndex := Selec;
- TreeAction.Items[Contador].SelectedIndex := Selec;
- end;
- end;
-
- for Contador := 0 to TreeMenu.Items.Count - 1 do
- begin
- DSPermiss.First;
- if DSPermiss.Locate('ObjName', PTreeMenu(TreeMenu.Items[Contador].Data).MenuName, []) then
- Selec := 1
- else
- Selec := 0;
-
- PTreeMenu(TreeMenu.Items[Contador].Data).Selecionado := Selec;
- TreeMenu.Items[Contador].ImageIndex := Selec;
- TreeMenu.Items[Contador].SelectedIndex := Selec;
- end;
-
- //Extra Rights
- for Contador := 0 to Pred(TreeControls.Items.Count) do
- begin
- DSPermissEX.First;
- if DSPermissEX.Locate('FormName;ObjName', VarArrayOf([PTreeControl(TreeControls.Items[Contador].Data).FormName, PTreeControl(TreeControls.Items[Contador].Data).CompName]), []) then
- Selec := 1
- else
- Selec := 0;
-
- PTreeControl(TreeControls.Items[Contador].Data).Selecionado := Selec;
- if not PTreeControl(TreeControls.Items[Contador].Data).Grupo then
- begin
- TreeControls.Items[Contador].ImageIndex := Selec;
- TreeControls.Items[Contador].SelectedIndex := Selec;
- end;
- end;
-
- // Exibe Permissoes do Perfil
- if DSPerfil.Active then
- begin
- for Contador := 0 to TreeAction.Items.Count - 1 do
- begin
- DSPerfil.First;
- if DSPerfil.Locate('ObjName', PTreeAction(TreeAction.Items[Contador].Data).MenuName, []) then
- begin
- Selec := 2;
- PTreeAction(TreeAction.Items[Contador].Data).Selecionado := Selec;
- if not PTreeAction(TreeAction.Items[Contador].Data).Grupo then
- begin
- TreeAction.Items[Contador].ImageIndex := Selec;
- TreeAction.Items[Contador].SelectedIndex := Selec;
- end;
- end;
- end;
-
- for Contador := 0 to TreeMenu.Items.Count - 1 do
- begin
- DSPerfil.First;
- if DSPerfil.Locate('ObjName', PTreeMenu(TreeMenu.Items[Contador].Data).MenuName, []) then
- begin
- Selec := 2;
- PTreeMenu(TreeMenu.Items[Contador].Data).Selecionado := Selec;
- TreeMenu.Items[Contador].ImageIndex := Selec;
- TreeMenu.Items[Contador].SelectedIndex := Selec;
- end;
- end;
-
- //Extra Rights
- for Contador := 0 to Pred(TreeControls.Items.Count) do
- begin
- DSPerfilEX.First;
- if DSPerfilEX.Locate('FormName;ObjName', VarArrayOf([PTreeControl(TreeControls.Items[Contador].Data).FormName, PTreeControl(TreeControls.Items[Contador].Data).CompName]), []) then
- begin
- Selec := 2;
- PTreeControl(TreeControls.Items[Contador].Data).Selecionado := Selec;
- if not PTreeControl(TreeControls.Items[Contador].Data).Grupo then
- begin
- TreeControls.Items[Contador].ImageIndex := Selec;
- TreeControls.Items[Contador].SelectedIndex := Selec;
- end;
- end;
- end;
- end;
-
- TreeAction.Repaint;
- TreeMenu.Repaint;
- FChangingTree := False;
-end;
-
-procedure TUserPermis.TreeActionClick(Sender: TObject);
-begin
- if not FChangingTree then
- TreeActionItem(True);
-end;
-
-procedure TUserPermis.TreeControlsClick(Sender: TObject);
-begin
- if not FChangingTree then
- TreeControlItem(True);
-end;
-
-procedure TUserPermis.TreeMenuCollapsing(Sender: TObject; Node: TTreeNode; var AllowCollapse: Boolean);
-begin
- if (Self.Showing) and (TTreeView(Sender).Focused) then
- FChangingTree := True;
-end;
-
-procedure TUserPermis.TreeMenuKeyPress(Sender: TObject; var Key: char);
-begin
- if Key = ' ' then
- begin
- TTreeView(Sender).OnClick(Sender);
- Key := #0;
- end;
-end;
-
-procedure TUserPermis.TreeMenuMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
-begin
- FChangingTree := False;
-end;
-
-procedure TUserPermis.FormDestroy(Sender: TObject);
-var
- Contador: Integer;
-begin
- // Adicionado por Luiz 18/01/06
- if Assigned(DSPermiss) then
- FreeAndNil(DSPermiss);
-
- if Assigned(DSPermissEX) then
- FreeAndNil(DSPermissEX);
-
- if Assigned(DSPerfil) then
- FreeAndNil(DSPerfil);
-
- if Assigned(DSPerfilEX) then
- FreeAndNil(DSPerfilEX);
-
- if Assigned(FTempLista) then
- FreeAndNil(FTempLista);
-
- for Contador := 0 to High(FListaMenu) do
- Dispose(FListaMenu[Contador]);
-
- for Contador := 0 to High(FListaAction) do
- Dispose(FListaAction[Contador]);
-
- for Contador := 0 to High(FListaControl) do
- Dispose(FListaControl[Contador]);
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/md5.pas b/internal/2.31RC1/1/Source/md5.pas
deleted file mode 100644
index 13fcc9e..0000000
--- a/internal/2.31RC1/1/Source/md5.pas
+++ /dev/null
@@ -1,401 +0,0 @@
-// tabs = 2
-// -----------------------------------------------------------------------------------------------
-
-// MD5 Message-Digest for Delphi 4
-
- // Delphi 4 Unit implementing the
- // RSA Data Security, Inc. MD5 Message-Digest Algorithm
-
-// Implementation of Ronald L. Rivest's RFC 1321
-
- // Copyright © 1997-1999 Medienagentur Fichtner & Meyer
- // Written by Matthias Fichtner
-
-// -----------------------------------------------------------------------------------------------
-// See RFC 1321 for RSA Data Security's copyright and license notice!
-// -----------------------------------------------------------------------------------------------
-
-// 14-Jun-97 mf Implemented MD5 according to RFC 1321 RFC 1321
-// 16-Jun-97 mf Initial release of the compiled unit (no source code) RFC 1321
-// 28-Feb-99 mf Added MD5Match function for comparing two digests RFC 1321
-// 13-Sep-99 mf Reworked the entire unit RFC 1321
-// 17-Sep-99 mf Reworked the "Test Driver" project RFC 1321
-// 19-Sep-99 mf Release of sources for MD5 unit and "Test Driver" project RFC 1321
-
-// -----------------------------------------------------------------------------------------------
- // The latest release of md5.pas will always be available from
- // the distribution site at: http://www.fichtner.net/delphi/md5/
-// -----------------------------------------------------------------------------------------------
- // Please send questions, bug reports and suggestions
- // regarding this code to: mfichtner@fichtner-meyer.com
-// -----------------------------------------------------------------------------------------------
- // This code is provided "as is" without express or
- // implied warranty of any kind. Use it at your own risk.
-// -----------------------------------------------------------------------------------------------
-
-unit md5;
-
-// -----------------------------------------------------------------------------------------------
-interface
-// -----------------------------------------------------------------------------------------------
-
-uses
- Windows;
-
-type
- MD5Count = array[0..1] of DWORD;
- MD5State = array[0..3] of DWORD;
- MD5Block = array[0..15] of DWORD;
- MD5CBits = array[0..7] of Byte;
- MD5Digest = array[0..15] of Byte;
- MD5Buffer = array[0..63] of Byte;
-
- MD5Context = record
- State: MD5State;
- Count: MD5Count;
- Buffer: MD5Buffer;
- end;
-
-procedure MD5Init(var Context: MD5Context);
-procedure MD5Update(var Context: MD5Context; Input: PChar; Length: longword);
-procedure MD5Final(var Context: MD5Context; var Digest: MD5Digest);
-
-function MD5String(M: String): MD5Digest;
-function MD5File(N: String): MD5Digest;
-function MD5Print(D: MD5Digest): String;
-
-function MD5Match(D1, D2: MD5Digest): Boolean;
-
-// -----------------------------------------------------------------------------------------------
-implementation
-// -----------------------------------------------------------------------------------------------
-
-var
- PADDING: MD5Buffer = ($80, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00);
-
-function F(x, y, z: DWORD): DWORD;
-begin
- Result := (x and y) or ((not x) and z);
-end;
-
-function G(x, y, z: DWORD): DWORD;
-begin
- Result := (x and z) or (y and (not z));
-end;
-
-function H(x, y, z: DWORD): DWORD;
-begin
- Result := x xor y xor z;
-end;
-
-function I(x, y, z: DWORD): DWORD;
-begin
- Result := y xor (x or (not z));
-end;
-
-procedure rot(var x: DWORD; n: Byte);
-begin
- x := (x shl n) or (x shr (32 - n));
-end;
-
-procedure FF(var a: DWORD; b, c, d, x: DWORD; s: Byte; ac: DWORD);
-begin
- Inc(a, F(b, c, d) + x + ac);
- rot(a, s);
- Inc(a, b);
-end;
-
-procedure GG(var a: DWORD; b, c, d, x: DWORD; s: Byte; ac: DWORD);
-begin
- Inc(a, G(b, c, d) + x + ac);
- rot(a, s);
- Inc(a, b);
-end;
-
-procedure HH(var a: DWORD; b, c, d, x: DWORD; s: Byte; ac: DWORD);
-begin
- Inc(a, H(b, c, d) + x + ac);
- rot(a, s);
- Inc(a, b);
-end;
-
-procedure II(var a: DWORD; b, c, d, x: DWORD; s: Byte; ac: DWORD);
-begin
- Inc(a, I(b, c, d) + x + ac);
- rot(a, s);
- Inc(a, b);
-end;
-
-// -----------------------------------------------------------------------------------------------
-
-// Encode Count bytes at Source into (Count / 4) DWORDs at Target
-procedure Encode(Source, Target: pointer; Count: longword);
-var
- S: PByte;
- T: PDWORD;
- I: longword;
-begin
- S := Source;
- T := Target;
- for I := 1 to Count div 4 do
- begin
- T^ := S^;
- Inc(S);
- T^ := T^ or (S^ shl 8);
- Inc(S);
- T^ := T^ or (S^ shl 16);
- Inc(S);
- T^ := T^ or (S^ shl 24);
- Inc(S);
- Inc(T);
- end;
-end;
-
-// Decode Count DWORDs at Source into (Count * 4) Bytes at Target
-procedure Decode(Source, Target: pointer; Count: longword);
-var
- S: PDWORD;
- T: PByte;
- I: longword;
-begin
- S := Source;
- T := Target;
- for I := 1 to Count do
- begin
- T^ := S^ and $ff;
- Inc(T);
- T^ := (S^ shr 8) and $ff;
- Inc(T);
- T^ := (S^ shr 16) and $ff;
- Inc(T);
- T^ := (S^ shr 24) and $ff;
- Inc(T);
- Inc(S);
- end;
-end;
-
-// Transform State according to first 64 bytes at Buffer
-procedure Transform(Buffer: pointer; var State: MD5State);
-var
- a, b, c, d: DWORD;
- Block: MD5Block;
-begin
- Encode(Buffer, @Block, 64);
- a := State[0];
- b := State[1];
- c := State[2];
- d := State[3];
- FF(a, b, c, d, Block[0], 7, $d76aa478);
- FF(d, a, b, c, Block[1], 12, $e8c7b756);
- FF(c, d, a, b, Block[2], 17, $242070db);
- FF(b, c, d, a, Block[3], 22, $c1bdceee);
- FF(a, b, c, d, Block[4], 7, $f57c0faf);
- FF(d, a, b, c, Block[5], 12, $4787c62a);
- FF(c, d, a, b, Block[6], 17, $a8304613);
- FF(b, c, d, a, Block[7], 22, $fd469501);
- FF(a, b, c, d, Block[8], 7, $698098d8);
- FF(d, a, b, c, Block[9], 12, $8b44f7af);
- FF(c, d, a, b, Block[10], 17, $ffff5bb1);
- FF(b, c, d, a, Block[11], 22, $895cd7be);
- FF(a, b, c, d, Block[12], 7, $6b901122);
- FF(d, a, b, c, Block[13], 12, $fd987193);
- FF(c, d, a, b, Block[14], 17, $a679438e);
- FF(b, c, d, a, Block[15], 22, $49b40821);
- GG(a, b, c, d, Block[1], 5, $f61e2562);
- GG(d, a, b, c, Block[6], 9, $c040b340);
- GG(c, d, a, b, Block[11], 14, $265e5a51);
- GG(b, c, d, a, Block[0], 20, $e9b6c7aa);
- GG(a, b, c, d, Block[5], 5, $d62f105d);
- GG(d, a, b, c, Block[10], 9, $2441453);
- GG(c, d, a, b, Block[15], 14, $d8a1e681);
- GG(b, c, d, a, Block[4], 20, $e7d3fbc8);
- GG(a, b, c, d, Block[9], 5, $21e1cde6);
- GG(d, a, b, c, Block[14], 9, $c33707d6);
- GG(c, d, a, b, Block[3], 14, $f4d50d87);
- GG(b, c, d, a, Block[8], 20, $455a14ed);
- GG(a, b, c, d, Block[13], 5, $a9e3e905);
- GG(d, a, b, c, Block[2], 9, $fcefa3f8);
- GG(c, d, a, b, Block[7], 14, $676f02d9);
- GG(b, c, d, a, Block[12], 20, $8d2a4c8a);
- HH(a, b, c, d, Block[5], 4, $fffa3942);
- HH(d, a, b, c, Block[8], 11, $8771f681);
- HH(c, d, a, b, Block[11], 16, $6d9d6122);
- HH(b, c, d, a, Block[14], 23, $fde5380c);
- HH(a, b, c, d, Block[1], 4, $a4beea44);
- HH(d, a, b, c, Block[4], 11, $4bdecfa9);
- HH(c, d, a, b, Block[7], 16, $f6bb4b60);
- HH(b, c, d, a, Block[10], 23, $bebfbc70);
- HH(a, b, c, d, Block[13], 4, $289b7ec6);
- HH(d, a, b, c, Block[0], 11, $eaa127fa);
- HH(c, d, a, b, Block[3], 16, $d4ef3085);
- HH(b, c, d, a, Block[6], 23, $4881d05);
- HH(a, b, c, d, Block[9], 4, $d9d4d039);
- HH(d, a, b, c, Block[12], 11, $e6db99e5);
- HH(c, d, a, b, Block[15], 16, $1fa27cf8);
- HH(b, c, d, a, Block[2], 23, $c4ac5665);
- II(a, b, c, d, Block[0], 6, $f4292244);
- II(d, a, b, c, Block[7], 10, $432aff97);
- II(c, d, a, b, Block[14], 15, $ab9423a7);
- II(b, c, d, a, Block[5], 21, $fc93a039);
- II(a, b, c, d, Block[12], 6, $655b59c3);
- II(d, a, b, c, Block[3], 10, $8f0ccc92);
- II(c, d, a, b, Block[10], 15, $ffeff47d);
- II(b, c, d, a, Block[1], 21, $85845dd1);
- II(a, b, c, d, Block[8], 6, $6fa87e4f);
- II(d, a, b, c, Block[15], 10, $fe2ce6e0);
- II(c, d, a, b, Block[6], 15, $a3014314);
- II(b, c, d, a, Block[13], 21, $4e0811a1);
- II(a, b, c, d, Block[4], 6, $f7537e82);
- II(d, a, b, c, Block[11], 10, $bd3af235);
- II(c, d, a, b, Block[2], 15, $2ad7d2bb);
- II(b, c, d, a, Block[9], 21, $eb86d391);
- Inc(State[0], a);
- Inc(State[1], b);
- Inc(State[2], c);
- Inc(State[3], d);
-end;
-
-// -----------------------------------------------------------------------------------------------
-
-// Initialize given Context
-procedure MD5Init(var Context: MD5Context);
-begin
- with Context do
- begin
- State[0] := $67452301;
- State[1] := $efcdab89;
- State[2] := $98badcfe;
- State[3] := $10325476;
- Count[0] := 0;
- Count[1] := 0;
- ZeroMemory(@Buffer, SizeOf(MD5Buffer));
- end;
-end;
-
-// Update given Context to include Length bytes of Input
-procedure MD5Update(var Context: MD5Context; Input: PChar; Length: longword);
-var
- Index: longword;
- PartLen: longword;
- I: longword;
-begin
- with Context do
- begin
- Index := (Count[0] shr 3) and $3f;
- Inc(Count[0], Length shl 3);
- if Count[0] < (Length shl 3) then
- Inc(Count[1]);
- Inc(Count[1], Length shr 29);
- end;
- PartLen := 64 - Index;
- if Length >= PartLen then
- begin
- CopyMemory(@Context.Buffer[Index], Input, PartLen);
- Transform(@Context.Buffer, Context.State);
- I := PartLen;
- while I + 63 < Length do
- begin
- Transform(@Input[I], Context.State);
- Inc(I, 64);
- end;
- Index := 0;
- end
- else
- I := 0;
- CopyMemory(@Context.Buffer[Index], @Input[I], Length - I);
-end;
-
-// Finalize given Context, create Digest and zeroize Context
-procedure MD5Final(var Context: MD5Context; var Digest: MD5Digest);
-var
- Bits: MD5CBits;
- Index: longword;
- PadLen: longword;
-begin
- Decode(@Context.Count, @Bits, 2);
- Index := (Context.Count[0] shr 3) and $3f;
- if Index < 56 then
- PadLen := 56 - Index
- else
- PadLen := 120 - Index;
- MD5Update(Context, @PADDING, PadLen);
- MD5Update(Context, @Bits, 8);
- Decode(@Context.State, @Digest, 4);
- ZeroMemory(@Context, SizeOf(MD5Context));
-end;
-
-// -----------------------------------------------------------------------------------------------
-
-// Create digest of given Message
-function MD5String(M: String): MD5Digest;
-var
- Context: MD5Context;
-begin
- MD5Init(Context);
- MD5Update(Context, PChar(M), length(M));
- MD5Final(Context, Result);
-end;
-
-// Create digest of file with given Name
-function MD5File(N: String): MD5Digest;
-var
- FileHandle: THandle;
- MapHandle: THandle;
- ViewPointer: pointer;
- Context: MD5Context;
-begin
- MD5Init(Context);
- FileHandle := CreateFile(PChar(N), GENERIC_READ, FILE_SHARE_READ or FILE_SHARE_WRITE,
- nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL or FILE_FLAG_SEQUENTIAL_SCAN, 0);
- if FileHandle <> INVALID_HANDLE_VALUE then
- try
- MapHandle := CreateFileMapping(FileHandle, nil, PAGE_READONLY, 0, 0, nil);
- if MapHandle <> 0 then
- try
- ViewPointer := MapViewOfFile(MapHandle, FILE_MAP_READ, 0, 0, 0);
- if ViewPointer <> nil then
- try
- MD5Update(Context, ViewPointer, GetFileSize(FileHandle, nil));
- finally
- UnmapViewOfFile(ViewPointer);
- end;
- finally
- CloseHandle(MapHandle);
- end;
- finally
- CloseHandle(FileHandle);
- end;
- MD5Final(Context, Result);
-end;
-
-// Create hex representation of given Digest
-function MD5Print(D: MD5Digest): String;
-var
- I: Byte;
-const
- Digits: array[0..15] of char =
- ('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');
-begin
- Result := '';
- for I := 0 to 15 do
- Result := Result + Digits[(D[I] shr 4) and $0f] + Digits[D[I] and $0f];
-end;
-
-// -----------------------------------------------------------------------------------------------
-
-// Compare two Digests
-function MD5Match(D1, D2: MD5Digest): Boolean;
-var
- I: Byte;
-begin
- I := 0;
- Result := True;
- while Result and (I < 16) do
- begin
- Result := D1[I] = D2[I];
- Inc(I);
- end;
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/Source/pUCFrame_Log.dfm b/internal/2.31RC1/1/Source/pUCFrame_Log.dfm
deleted file mode 100644
index d3067b1..0000000
--- a/internal/2.31RC1/1/Source/pUCFrame_Log.dfm
+++ /dev/null
@@ -1,593 +0,0 @@
-object UCFrame_Log: TUCFrame_Log
- Left = 0
- Top = 0
- Width = 563
- Height = 498
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- ParentFont = False
- TabOrder = 0
- TabStop = True
- object DBGrid1: TDBGrid
- Left = 0
- Top = 0
- Width = 563
- Height = 394
- Align = alClient
- Ctl3D = True
- DataSource = DataSource1
- DefaultDrawing = False
- Options = [dgTitles, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgConfirmDelete, dgCancelOnExit]
- ParentCtl3D = False
- ReadOnly = True
- TabOrder = 0
- TitleFont.Charset = DEFAULT_CHARSET
- TitleFont.Color = clWindowText
- TitleFont.Height = -11
- TitleFont.Name = 'MS Sans Serif'
- TitleFont.Style = []
- OnDrawColumnCell = DBGrid1DrawColumnCell
- Columns = <
- item
- Expanded = False
- Visible = True
- end
- item
- Expanded = False
- Visible = True
- end
- item
- Expanded = False
- Visible = True
- end
- item
- Expanded = False
- Visible = True
- end
- item
- Expanded = False
- Visible = True
- end>
- end
- object Panel1: TPanel
- Left = 0
- Top = 394
- Width = 563
- Height = 104
- Align = alBottom
- BevelOuter = bvNone
- TabOrder = 1
- object lbUsuario: TLabel
- Left = 16
- Top = 8
- Width = 42
- Height = 13
- Caption = 'Usu'#225'rio :'
- end
- object lbData: TLabel
- Left = 176
- Top = 8
- Width = 29
- Height = 13
- Caption = 'Data :'
- end
- object lbNivel: TLabel
- Left = 376
- Top = 8
- Width = 69
- Height = 13
- Caption = 'N'#237'vel m'#237'nimo :'
- end
- object Bevel3: TBevel
- Left = 16
- Top = 63
- Width = 529
- Height = 2
- Style = bsRaised
- end
- object btfiltro: TBitBtn
- Left = 124
- Top = 71
- Width = 101
- Height = 25
- Cursor = crHandPoint
- Caption = 'Aplicar filtro'
- Enabled = False
- TabOrder = 4
- OnClick = btfiltroClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFA68B7A694731FF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA8A8A86C
- 6C6CFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFA68B7AB09888694731FF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA7A7A7B1
- B1B16B6B6BFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFA68B7ADCCCC286624D694731FF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA7A7A7DA
- DADA8585856C6C6CFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFA68B7ADECFC686624D694731FF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA7A7A7DC
- DCDC8484846C6C6CFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFA68B7ADFD1C886624D694731FF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA7A7A7DD
- DDDD8585856B6B6BFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFA68B7AE1D3CB86624D694731FF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA7A7A7DF
- DFDF8585856B6B6BFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFA68B7AE2D6CE86624D694731FF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA7A7A7E2
- E2E28585856C6C6CFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFA68B7AE4D8D086624D694731FF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA8A8A8E3
- E3E38585856C6C6CFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFA68B7AFFFFFFDACABFBDA69686624D694731FF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA7A7A7FFFFFFD8
- D8D8BDBDBD8484846C6C6CFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFA68B7AFFFFFFF0F0F0E1D4CCD1BBADB4937E86624D694731FF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA7A7A7FFFFFFF5F5F5E0
- E0E0CDCDCDAEAEAE8585856C6C6CFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFA68B7AFFFFFFF0F0F0ECE4E0E6DBD5DFD1C7CFB9AABE9F8A86624D6947
- 31FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA7A7A7FFFFFFF5F5F5ECECECE5
- E5E5DEDEDECBCBCBB7B7B78585856B6B6BFF00FFFF00FFFF00FFFF00FFFF00FF
- A68B7AFFFFFFF0F0F0F5F0EEF1EAE7ECE3DEE6DBD5DCCDC2CFB9AAB4937E8662
- 4D694731FF00FFFF00FFFF00FFFF00FFA7A7A7FFFFFFF5F5F5F5F5F5F0F0F0EC
- ECECE6E6E6DADADACBCBCBAEAEAE8585856B6B6BFF00FFFF00FFFF00FFA68B7A
- FFFFFFF0F0F0F3EEEAF0E9E5EDE6E1E5D9D1E5D9D1E2D6CEDED0C6CFB9AABE9F
- 8A86624D694731FF00FFFF00FFA7A7A7FFFFFFF5F5F5F3F3F3F0F0F0EDEDEDE4
- E4E4E3E3E3E2E2E2DDDDDDCBCBCBB7B7B78585856C6C6CFF00FFFF00FFB39A89
- B39A89B39A89B39A89B39A89B39A89B39A89B39A89B39A89B39A89B39A89B39A
- 89B39A89B39A89FF00FFFF00FFB4B4B4B3B3B3B3B3B3B3B3B3B4B4B4B3B3B3B3
- B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3FF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- NumGlyphs = 2
- end
- object btfecha: TBitBtn
- Left = 338
- Top = 71
- Width = 101
- Height = 25
- Cursor = crHandPoint
- Caption = 'Fechar'
- TabOrder = 5
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFC066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40198E40198E40198E40
- 198E40198E4019FF00FF8888886969696969696969696969696969696A6A6A69
- 69696969696969696A6A6A6969696969696A6A6A696969FF00FFC06614F9F5F4
- C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2
- A5C3B2A58E4019FF00FF888888F8F8F8C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6
- C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6696969FF00FFC06614FCFAFA
- F9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCDFD0C7DFD0C7DCCB
- C1C3B2A58E4019FF00FF888888FCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEAEAEAE7
- E7E7E4E4E4E0E0E0DDDDDDDDDDDDD9D9D9C6C6C6696969FF00FFC06614FFFFFF
- FCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCE2D4CCDFD0
- C7C3B2A58E4019FF00FF888888FFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEA
- EAEAE7E7E7E3E3E3E0E0E0E0E0E0DDDDDDC6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E5D9D1E2D4
- CCC3B2A58E4019FF00FF888888FFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EE
- EEEEEAEAEAE7E7E7E3E3E3E3E3E3E0E0E0C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E9DED7E5D9
- D1C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1
- F1F1EEEEEEEAEAEAE7E7E7E7E7E7E3E3E3C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F2EBE8EEE6E2ECE2DCECE2DCE9DE
- D7C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFBF7
- F7F7F1F1F1EEEEEEEAEAEAEAEAEAE7E7E7C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF0E9E5F0E9E5EDE4
- DFC3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFB
- FBFBF7F7F7F3F3F3F0F0F0F0F0F0ECECECC6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF4EEEBF0E9
- E5C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
- FEFEFBFBFBF7F7F7F3F3F3F3F3F3F0F0F0C6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F78A9DE92546CD1D3F
- C9193BC8183BC88194E1898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFEFEFEFAFAFAC6C6C6979797929292929292929292C0C0C0C06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFD3355DBF2F4FD4E6B
- D94A67D8F2F4FD183BC8888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFEFEFEA1A1A1FAFAFAAAAAAAA8A8A8F9F9F9929292C066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40193C5CDD8296E4D9DF
- F9CDD5F74C69D81A3CC88888886969696969696969696A6A6A69696969696969
- 6969696969696969A5A5A5C1C1C1EDEDEDE7E7E7A8A8A8929292C06614ED9733
- ED9733ED9733ED9733ED9733ED9733ED9733F6CA9AED97334563E16980E2E4E8
- FBD8DEF9516DDA1F40C9888888ACACACACACACADADADADADADADADADACACACAD
- ADADD5D5D5ADADADA8A8A8B6B6B6F2F2F2ECECECABABAB939393F810DCC06614
- C06614C06614C06614C06614C06614C06614C06614C066144D6AE3F2F4FD667D
- E26E85E2F2F4FD2749CEEF14EF88888888888888888888888889898988888888
- 8888888888898989ACACACF9F9F9B5B5B5B9B9B9F9F9F9989898FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF9AABEF4D6AE34563
- E14463DF3E5EDE8FA2EBFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFCFCFCFACACACA8A8A8A8A8A8A6A6A6C9C9C9}
- NumGlyphs = 2
- end
- object btexclui: TBitBtn
- Left = 231
- Top = 71
- Width = 101
- Height = 25
- Cursor = crHandPoint
- Caption = 'Excluir Log'
- TabOrder = 6
- OnClick = btexcluiClick
- Glyph.Data = {
- 36050000424D3605000000000000360400002800000010000000100000000100
- 08000000000000010000220B0000220B000000010000000100000031DE000031
- E7000031EF000031F700FF00FF000031FF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00040404040404
- 0404040404040404000004000004040404040404040404000004040000000404
- 0404040404040000040404000000000404040404040000040404040402000000
- 0404040400000404040404040404000000040000000404040404040404040400
- 0101010004040404040404040404040401010204040404040404040404040400
- 0201020304040404040404040404030201040403030404040404040404050203
- 0404040405030404040404040303050404040404040303040404040303030404
- 0404040404040403040403030304040404040404040404040404030304040404
- 0404040404040404040404040404040404040404040404040404}
- end
- object ComboUsuario: TComboBox
- Left = 16
- Top = 24
- Width = 145
- Height = 21
- Style = csDropDownList
- ItemHeight = 13
- TabOrder = 0
- OnChange = ComboUsuarioChange
- end
- object Data1: TDateTimePicker
- Left = 176
- Top = 25
- Width = 89
- Height = 21
- Date = 37615.000000000000000000
- Time = 37615.000000000000000000
- TabOrder = 1
- OnChange = Data1Change
- end
- object Data2: TDateTimePicker
- Left = 271
- Top = 24
- Width = 89
- Height = 21
- Date = 37615.000000000000000000
- Time = 37615.000000000000000000
- TabOrder = 2
- OnChange = ComboUsuarioChange
- end
- object ComboNivel: TComboBox
- Left = 376
- Top = 24
- Width = 145
- Height = 24
- Style = csOwnerDrawFixed
- ItemHeight = 18
- TabOrder = 3
- OnChange = ComboUsuarioChange
- OnDrawItem = ComboNivelDrawItem
- Items.Strings = (
- 'Faible'
- 'Moyen'
- 'Haut'
- 'Critique')
- end
- end
- object DataSource1: TDataSource
- Left = 440
- end
- object ImageList1: TImageList
- Left = 136
- Top = 153
- Bitmap = {
- 494C010104000900040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
- 0000000000003600000028000000400000002000000001002000000000000020
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000DEDEDE00DEDEDE00DEDEDE00D6D6D600000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000E7C4B300E7C4B300E7C4B300D6B9AE00000000000000
- 000000000000000000000000000000000000000000000000000000A4EB000088
- C8000088C8000088C8000088C8000088C8000088C8000088C8000088C8000088
- C8000088C8000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000DEDEDE00F1F1F100E0E0E000E0E0E000F1F1F100D6D6D6000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000E7C4B300F2E7E100CAD0D600CAD0D600F2E7E100D6B9AE000000
- 000000000000000000000000000000000000000000002DBCFF0040D6F00015C1
- E60015C1E60015C1E60013C0E2003471890011BFDE0015C1E60015C1E60015C1
- E60015C1E60000A4EB00000000000000000000000000000000000000FF000000
- FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000
- FF000000FF000000FF0000000000000000000000000000000000000000000000
- 0000DEDEDE00F1F1F100FEFEFE00B5B5B500ACACAC00D1D1D100F1F1F100D6D6
- D600000000000000000000000000000000000000000000000000000000000000
- 0000E7C4B300F2E7E100FEFEFE00D0805D00C4695200BFB9B900F2E7E100D6B9
- AE00000000000000000000000000000000000000000078CCE80066E5F8002ECB
- EC002DCAEB002CCAEB003471890031001000347189002BC8EA002BC8EA002BC8
- EA0013B9DD002DBCFF000000000000000000000000000000FF000000FF000000
- FF000000FF000000FF000000FF0000000000000000000000FF000000FF000000
- FF000000FF000000FF000000FF0000000000000000000000000000000000DEDE
- DE00F1F1F100FEFEFE00B5B5B500ACACAC00A8A8A800ACACAC00D1D1D100F1F1
- F100D6D6D600000000000000000000000000000000000000000000000000E7C4
- B300F2E7E100FEFEFE00D0805D00C46E5200BF694C00C4695200BFB9B900F2E7
- E100D6B9AE0000000000000000000000000000000000000000002DBCFF0040D6
- F00039CEEC0038CDEB002DC8E2003471890021C4DA0036CAEA0035CAEA0035CA
- EA0000A4EB0000000000000000000000000000000000000000000000FF000000
- FF000000FF000000FF000000FF0000000000000000000000FF000000FF000000
- FF000000FF000000FF0000000000000000000000000000000000DEDEDE00F1F1
- F100FEFEFE00B5B5B500ACACAC00F5F5F500F5F5F500EFEFEF00A8A8A800D1D1
- D100F1F1F100D6D6D60000000000000000000000000000000000E7C4B300F2E7
- E100FEFEFE00D0805D00C46E5200F8EDE700F8EDE700F8E1D600BF694C00BFB9
- B900F2E7E100D6B9AE000000000000000000000000000000000078CCE80066E5
- F8003ACEEC0039CEEC0038CDEB003471890037CBEA0036CAEA0036CAEA0013B9
- DD002DBCFF0000000000000000000000000000000000000000000000FF000000
- FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000
- FF000000FF000000FF00000000000000000000000000DEDEDE00F1F1F100FEFE
- FE00B5B5B500ACACAC00ACACAC00ACACAC00F5F5F500ACACAC00ACACAC00A8A8
- A800D1D1D100F1F1F100D6D6D6000000000000000000E7C4B300F2E7E100FEFE
- FE00D0805D00C46E5200C46E5200C46E5200F8EDE700C46E5200C46E5200BF69
- 4C00BFB9B900F2E7E100D6B9AE00000000000000000000000000000000002DBC
- FF0040D6F0003BCFED0017BACC003100100017BACC0037CAEA0036CAEA0000A4
- EB00000000000000000000000000000000000000000000000000000000000000
- FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000
- FF000000FF0000000000000000000000000000000000E5E5E500FEFEFE00B5B5
- B500B0B0B000ACACAC00ACACAC00ACACAC00F5F5F500ACACAC00ACACAC00ACAC
- AC00A8A8A800D1D1D100D6D6D6000000000000000000EDD0C400FEFEFE00D080
- 5D00CA7A5700C46E5200C46E5200C46E5200F8EDE700C46E5200C46E5200C46E
- 5200BF694C00BFB9B900D6B9AE000000000000000000000000000000000078CC
- E80066E5F8003CD0ED001796A700310010001796A70037CBEA0013B9DD002DBC
- FF00000000000000000000000000000000000000000000000000000000000000
- FF000000FF000000FF000000FF0000000000000000000000FF000000FF000000
- FF000000FF0000000000000000000000000000000000E5E5E500FFFFFF00EBEB
- EB00C4C4C400B0B0B000ACACAC00ACACAC00F5F5F500ACACAC00ACACAC00ACAC
- AC00B5B5B500E0E0E000D6D6D6000000000000000000EDD0C400FFFFFF00F8E1
- CA00E1A27400CA7A5700C46E5200C46E5200F8EDE700C46E5200C46E5200C46E
- 5200D0805D00CAD0D600D6B9AE00000000000000000000000000000000000000
- 00002DBCFF0040D6F0003471890031001000286F7D0038CCEB0000A4EB000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000FF000000FF000000FF0000000000000000000000FF000000FF000000
- FF000000000000000000000000000000000000000000DEDEDE00F1F1F100FFFF
- FF00EBEBEB00C4C4C400B0B0B000F5F5F500F5F5F500ACACAC00ACACAC00B5B5
- B500F1F1F100F1F1F100D6D6D6000000000000000000E7C4B300F2E7E100FFFF
- FF00F8E1CA00E1A27400CA7A5700F8EDE700F8EDE700C46E5200C46E5200D080
- 5D00E7EDED00F2E7E100D6B9AE00000000000000000000000000000000000000
- 000078CCE80066E5F80034718900310010003471890013B9DD002DBCFF000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000FF000000FF000000FF0000000000000000000000FF000000FF000000
- FF00000000000000000000000000000000000000000000000000DEDEDE00F1F1
- F100FFFFFF00EBEBEB00C4C4C400B0B0B000CDCDCD00ACACAC00B5B5B500FEFE
- FE00F1F1F100DBDBDB0000000000000000000000000000000000E7C4B300F2E7
- E100FFFFFF00F8E1CA00E1A27400CA7A5700E7AE8500C46E5200D0805D00FEFE
- FE00F2E7E100E1C4B30000000000000000000000000000000000000000000000
- 0000000000002DBCFF0030B3CA002B5768002396A70000A4EB00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000FF000000FF0000000000000000000000FF000000FF000000
- 000000000000000000000000000000000000000000000000000000000000DEDE
- DE00F1F1F100FFFFFF00EBEBEB00C4C4C400F5F5F500B5B5B500FEFEFE00F1F1
- F100DBDBDB00000000000000000000000000000000000000000000000000E7C4
- B300F2E7E100FFFFFF00F8E1CA00E1A27400F8EDE700D0805D00FEFEFE00F2E7
- E100E1C4B3000000000000000000000000000000000000000000000000000000
- 00000000000078CCE80066E5F8003ACFEC0013B9DD002DBCFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000FF000000FF0000000000000000000000FF000000FF000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000DEDEDE00F1F1F100FFFFFF00EBEBEB00B5B5B500FEFEFE00F1F1F100DBDB
- DB00000000000000000000000000000000000000000000000000000000000000
- 0000E7C4B300F2E7E100FFFFFF00F8E1CA00D0805D00FEFEFE00F2E7E100E1C4
- B300000000000000000000000000000000000000000000000000000000000000
- 000000000000000000002DBCFF0066E5F80000A4EB0000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000FF000000FF000000FF000000FF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000DEDEDE00F1F1F100FFFFFF00FEFEFE00F1F1F100DBDBDB000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000E7C4B300F2E7E100FFFFFF00FEFEFE00F2E7E100E1C4B3000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000078CCE8003DD2EE002DBCFF0000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000FF000000FF000000FF000000FF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000DEDEDE00DEDEDE00DBDBDB00DBDBDB00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000E7C4B300E7C4B300E1C4B300E1C4B300000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000002DBCFF000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000FF000000FF0000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000424D3E000000000000003E000000
- 2800000040000000200000000100010000000000000100000000000000000000
- 000000000000000000000000FFFFFF0000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000FFFFFFFFFFFFFFFFFC3FFC3FC007FFFF
- F81FF81F8003C003F00FF00F80038001E007E007C007C003C003C003C007C003
- 80018001E00FE00780018001E00FE00780018001F01FF00F80018001F01FF00F
- C003C003F83FF81FE007E007F83FF81FF00FF00FFC7FFC3FF81FF81FFC7FFC3F
- FC3FFC3FFEFFFE7FFFFFFFFFFFFFFFFF00000000000000000000000000000000
- 000000000000}
- end
-end
diff --git a/internal/2.31RC1/1/Source/pUCFrame_Log.pas b/internal/2.31RC1/1/Source/pUCFrame_Log.pas
deleted file mode 100644
index 8234d04..0000000
--- a/internal/2.31RC1/1/Source/pUCFrame_Log.pas
+++ /dev/null
@@ -1,305 +0,0 @@
-unit pUCFrame_Log;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
-{$IFDEF DELPHI5_UP}
-{$ELSE}
- Variants,
-{$ENDIF}
- Buttons,
- Classes,
- ComCtrls,
- Controls,
- DB,
- DBGrids,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Grids,
- ImgList,
- Messages,
- StdCtrls,
- SysUtils,
- UCBase,
- Windows;
-
-type
- TUCFrame_Log = class(TFrame)
- DataSource1: TDataSource;
- ImageList1: TImageList;
- DBGrid1: TDBGrid;
- Panel1: TPanel;
- lbUsuario: TLabel;
- lbData: TLabel;
- lbNivel: TLabel;
- Bevel3: TBevel;
- btfiltro: TBitBtn;
- btfecha: TBitBtn;
- btexclui: TBitBtn;
- ComboUsuario: TComboBox;
- Data1: TDateTimePicker;
- Data2: TDateTimePicker;
- ComboNivel: TComboBox;
- procedure ComboNivelDrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
- procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
- procedure ComboUsuarioChange(Sender: TObject);
- procedure btexcluiClick(Sender: TObject);
- procedure Data1Change(Sender: TObject);
- procedure btfiltroClick(Sender: TObject);
- private
- procedure AplicaFiltro;
- public
- ListIdUser: TStringList;
- DSLog, DSCmd: TDataset;
- FUsercontrol: TUserControl;
- procedure SetWindow;
- destructor Destroy; override;
- end;
-
-implementation
-
-uses
- UCDataInfo;
-
-{$R *.dfm}
-destructor TUCFrame_Log.Destroy;
-begin
- FreeAndnil( DSLog );
- FreeAndnil( DSCmd );
- FreeAndNil( ListIdUser );
- inherited;
-end;
-
-procedure TUCFrame_Log.ComboNivelDrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
-var
- TempImg: Graphics.TBitmap;
-begin
- TempImg := Graphics.TBitmap.Create;
- Imagelist1.GetBitmap(Index, TempImg);
- ComboNivel.Canvas.Draw(Rect.Left + 5, Rect.Top + 1, TempImg);
- ComboNivel.Canvas.TextRect(Rect, Rect.Left + 30, Rect.Top + 2, ComboNivel.items[Index]);
- ComboNivel.Canvas.Draw(Rect.Left + 5, Rect.Top + 1, TempImg);
- FreeAndNil(TempImg);
-end;
-
-procedure TUCFrame_Log.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
-var
- TempImg: Graphics.TBitmap;
- FData: System.TDateTime;
- TempData: String;
-begin
- if DSLog.IsEmpty then
- Exit;
-
- if UpperCase(Column.FieldName) = 'NIVEL' then
- begin
- if Column.Field.AsInteger >= 0 then
- begin
- TempImg := Graphics.TBitmap.Create;
- imagelist1.GetBitmap(Column.Field.AsInteger, TempImg);
- DbGrid1.Canvas.Draw((((Rect.Left + Rect.Right) - TempImg.Width) div 2), rect.Top, Tempimg);
- FreeAndNil(TempImg);
- end
- else
- DbGrid1.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, Column.Field.AsString);
- end
- else
- if UpperCase(Column.FieldName) = 'DATA' then
- begin
- TempData := Column.Field.AsString;
- FData := EncodeDate(StrToInt(Copy(Tempdata, 1, 4)), StrToInt(Copy(Tempdata, 5, 2)), StrToInt(Copy(Tempdata, 7, 2))) +
- EncodeTime(StrToInt(Copy(TempData, 9, 2)), StrToInt(Copy(TempData, 11, 2)), StrToInt(Copy(TempData, 13, 2)), 0);
- DbGrid1.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, DateTimeToStr(FData));
- end
- else
- DbGrid1.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, Column.Field.AsString);
-end;
-
-procedure TUCFrame_Log.ComboUsuarioChange(Sender: TObject);
-begin
- btFiltro.Enabled := True;
-end;
-
-procedure TUCFrame_Log.btexcluiClick(Sender: TObject);
-var
- FTabLog, Temp: String;
-begin
- //modified by fduenas
- if MessageBox(Handle, PChar(FUsercontrol.UserSettings.Log.PromptDelete),
- PChar(FUsercontrol.UserSettings.Log.PromptDelete_WindowCaption), mb_YesNo) <> mrYes then
- Exit;
-
- btFiltro.Enabled := False;
- FTabLog := FUsercontrol.LogControl.TableLog;
- Temp := 'Delete from ' + FTabLog +
- ' Where (Data >=' + QuotedStr(FormatDateTime('yyyyMMddhhmmss', data1.DateTime)) + ') ' +
- ' and (Data <=' + QuotedStr(FormatDateTime('yyyyMMddhhmmss', data2.DateTime)) + ') ' +
- ' and nivel >=' + IntToStr(ComboNivel.ItemIndex);
-
- if ComboUsuario.ItemIndex > 0 then
- Temp := Temp + ' and ' + FTabLog + '.idUser = ' + ListIdUser[ComboUsuario.ItemIndex];
-
- try
- FUsercontrol.DataConnector.UCExecSQL(Temp);
- AplicaFiltro;
- DBGrid1.Repaint;
- except
- end;
-
- try
- FUsercontrol.Log(Format(FUsercontrol.UserSettings.Log.DeletePerformed, [comboUsuario.Text, DateTimeToStr(Data1.datetime), DateTimeToStr(Data2.datetime), ComboNivel.Text]), 2);
- except;
- end;
-
-end;
-
-procedure TUCFrame_Log.Data1Change(Sender: TObject);
-begin
- btFiltro.Enabled := True;
-end;
-
-procedure TUCFrame_Log.btfiltroClick(Sender: TObject);
-begin
- AplicaFiltro;
-end;
-
-procedure TUCFrame_Log.AplicaFiltro;
-var
- FTabUser, FTabLog: String;
- Temp: String;
-begin
- btFiltro.Enabled := False;
- DSLog.Close;
- FTabLog := FUsercontrol.LogControl.TableLog;
- FTabUser := FUsercontrol.TableUsers.TableName;
-
- Temp := Format('Select TabUser.' + FUsercontrol.TableUsers.FieldUserName + ' as nome, ' + FTabLog + '.* ' +
- 'from ' + FTabLog +
- ' Left outer join %s TabUser on ' + FTabLog + '.idUser = TabUser.%s ' +
- 'Where (data >= ' + QuotedStr(FormatDateTime('yyyyMMddhhmmss', data1.DateTime)) + ') ' +
- 'and (Data <= ' + QuotedStr(FormatDateTime('yyyyMMddhhmmss', data2.DateTime)) + ') ' +
- 'and nivel >= ' + IntToStr(ComboNivel.ItemIndex),
- [FUsercontrol.TableUsers.TableName, FUsercontrol.TableUsers.FieldUserID]);
-
- if ComboUsuario.ItemIndex > 0 then
- Temp := Temp + ' and ' + FTabLog + '.idUser = ' + ListIdUser[ComboUsuario.ItemIndex];
-
- Temp := Temp + ' order by data desc';
-
- FreeAndNil(DSLog);
- DataSource1.DataSet := nil;
- DSLog := FUsercontrol.DataConnector.UCGetSQLDataset(Temp);
- DataSource1.DataSet := DSLog;
- btexclui.Enabled := not DsLog.IsEmpty;
-end;
-
-procedure TUCFrame_Log.SetWindow;
-var
- TabelaLog: String;
- SQLStmt: String;
-begin
- ComboNivel.Items.Clear;
- ComboNivel.Items.Append(FUsercontrol.UserSettings.Log.OptionLevelLow); //BGM
- ComboNivel.Items.Append(FUsercontrol.UserSettings.Log.OptionLevelNormal); //BGM
- ComboNivel.Items.Append(FUsercontrol.UserSettings.Log.OptionLevelHigh); //BGM
- ComboNivel.Items.Append(FUsercontrol.UserSettings.Log.OptionLevelCritic); //BGM
- ComboNivel.ItemIndex := 0;
- ComboUsuario.Items.Clear;
- data1.Date := EncodeDate(StrToInt(FormatDateTime('yyyy', Date)), 1, 1);
- data2.DateTime := Now;
-
- if Assigned( ListIdUser ) = False then
- ListIdUser := TStringList.Create
- else ListIdUser.Clear;
-
-
- with FUsercontrol do
- if ((FUsercontrol.CurrentUser.Privileged = True) or
- (FUsercontrol.CurrentUser.UserLogin = FUsercontrol.Login.InitialLogin.User)) then
- begin
- DSCmd := DataConnector.UCGetSQLDataset(
- Format('SELECT %s AS IDUSER, %s AS NOME , %s AS LOGIN FROM %s WHERE %s = %s ORDER BY %s',
- [TableUsers.FieldUserID,
- TableUsers.FieldUserName,
- TableUsers.FieldLogin,
- TableUsers.TableName,
- TableUsers.FieldTypeRec,
- QuotedStr('U'),
- TableUsers.FieldUserName]));
- ComboUsuario.Items.Append(FUsercontrol.UserSettings.Log.OptionUserAll);
- ListIdUser.Append('0');
- end
- else
- DSCmd := DataConnector.UCGetSQLDataset(
- Format('SELECT %s AS IDUSER, %s AS NOME , %s AS LOGIN FROM %s WHERE %s = %s and %s = %s ORDER BY %s',
- [TableUsers.FieldUserID,
- TableUsers.FieldUserName,
- TableUsers.FieldLogin,
- TableUsers.TableName,
- TableUsers.FieldTypeRec,
- QuotedStr('U'),
- TableUsers.FieldLogin,
- QuotedStr(FUsercontrol.CurrentUser.UserLogin),
- TableUsers.FieldUserName]));
-
- while not DSCmd.EOF do
- begin
- ComboUsuario.Items.Append(DSCmd.FieldByName('Nome').AsString);
- ListIdUser.Append(DSCmd.FieldByName('idUser').AsString);
- DSCmd.Next;
- end;
-
-
- DSCmd.Close;
- FreeAndNil(DSCmd);
-
- ComboUsuario.ItemIndex := 0;
-
-
- TabelaLog := FUsercontrol.LogControl.TableLog;
- with FUsercontrol do
- begin
- SQLStmt := 'SELECT ' + TableUsers.TableName + '.' + TableUsers.FieldUserName + ' AS NOME, ' + TabelaLog + '.* from ' + TabelaLog +
- ' LEFT OUTER JOIN ' + TableUsers.TableName + ' on ' + TabelaLog + '.idUser = ' + TableUsers.TableName + '.' + TableUsers.FieldUserID +
- ' WHERE (DATA >=' + QuotedStr(FormatDateTime('yyyyMMddhhmmss', data1.DateTime)) + ') AND (DATA<=' + QuotedStr(FormatDateTime('yyyyMMddhhmmss', data2.DateTime)) + ') ORDER BY DATA DESC';
- DSLog := DataConnector.UCGetSQLDataset(SQLStmt);
- end;
- DataSource1.Dataset := DSLog;
- btexclui.Enabled := not DsLog.IsEmpty;
-
-
- with FUsercontrol.UserSettings.Log, DBGrid1 do
- begin
- lbUsuario.Caption := LabelUser;
- lbData.Caption := LabelDate;
- lbNivel.Caption := LabelLevel;
- BtFiltro.Caption := BtFilter;
- BtExclui.Caption := BtDelete;
- BtFecha.Caption := BtClose;
-
- Columns[0].Title.Caption := ColAppID;
- Columns[0].FieldName := 'APPLICATIONID';
- Columns[0].Width := 60;
- Columns[1].Title.Caption := ColLevel;
- Columns[1].FieldName := 'NIVEL';
- Columns[1].Width := 32;
- Columns[2].Title.Caption := ColMessage;
- Columns[2].FieldName := 'MSG';
- Columns[2].Width := 260;
- Columns[3].Title.Caption := ColUser;
- Columns[3].FieldName := 'NOME';
- Columns[3].Width := 120;
- Columns[4].Title.Caption := ColDate;
- Columns[4].FieldName := 'DATA';
- Columns[4].Width := 111;
- end;
-
- Bevel3.Width := Panel1.Width - 32;
- Bevel3.Left := 16;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/pUCFrame_Profile.dfm b/internal/2.31RC1/1/Source/pUCFrame_Profile.dfm
deleted file mode 100644
index 6570503..0000000
--- a/internal/2.31RC1/1/Source/pUCFrame_Profile.dfm
+++ /dev/null
@@ -1,360 +0,0 @@
-object Frame_Profile: TFrame_Profile
- Left = 0
- Top = 0
- Width = 585
- Height = 246
- AutoSize = True
- TabOrder = 0
- TabStop = True
- object DbGridPerf: TDBGrid
- Left = 0
- Top = 0
- Width = 585
- Height = 201
- Align = alClient
- Ctl3D = True
- DataSource = DataPerfil
- Options = [dgTitles, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgAlwaysShowSelection, dgConfirmDelete, dgCancelOnExit]
- ParentCtl3D = False
- ReadOnly = True
- TabOrder = 0
- TitleFont.Charset = DEFAULT_CHARSET
- TitleFont.Color = clWindowText
- TitleFont.Height = -11
- TitleFont.Name = 'Tahoma'
- TitleFont.Style = []
- OnDblClick = BtnAcePerClick
- Columns = <
- item
- Expanded = False
- FieldName = 'Nome'
- Title.Alignment = taCenter
- Title.Caption = 'Perfil'
- Width = 573
- Visible = True
- end>
- end
- object Panel2: TPanel
- Left = 0
- Top = 201
- Width = 585
- Height = 45
- Align = alBottom
- BevelOuter = bvNone
- TabOrder = 1
- object BtnAddPer: TBitBtn
- Left = 78
- Top = 11
- Width = 81
- Height = 25
- Cursor = crHandPoint
- Caption = '&Adicionar'
- TabOrder = 0
- OnClick = BtnAddPerClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF0060000060
- 00006000FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FF777777787878777777FF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF00600033CB
- 51006000FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FF777777C8C8C8777777FF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF00600000600000600040D8
- 65006000006000006000FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FF787878777777777777D1D1D1787878777777777777D1BBAD694731
- 69473169473169473169473169473169473169473100600060F8985AF28F4DE5
- 7A40D8653AD25C006000CCCCCC6C6C6C6B6B6B6B6B6B6C6C6C6C6C6C6B6B6B6C
- 6C6C6B6B6B777777EAEAEAE5E5E5DBDBDBD2D2D2CDCDCD787878D1BBADFFFFFF
- FBF9F8F7F3F1F3EDEAEFE7E3EBE1DBE6D9D2E1D2CA0060000060000060005AF2
- 8F006000006000006000CCCCCCFFFFFFFBFBFBF7F7F7F2F2F2EEEEEEEAEAEAE3
- E3E3DFDFDF777777777777777777E6E6E6777777777777787878D1BBADFFFFFF
- CF875FCF875FF7F3F1CF875FCF875FEBE1DBCF875FCF875FDCCBC100600060F8
- 98006000FF00FFFF00FFCCCCCCFFFFFFA4A4A4A4A4A4F7F7F7A5A5A5A4A4A4EA
- EAEAA5A5A5A4A4A4D9D9D9777777EAEAEA777777FF00FFFF00FFD1BBADFFFFFF
- FFFFFFFFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1DBE6D9D2E1D2CA0060000060
- 00006000FF00FFFF00FFCCCCCCFFFFFFFFFFFFFFFFFFFBFBFBF7F7F7F3F3F3EE
- EEEEE9E9E9E4E4E4DFDFDF777777777777777777FF00FFFF00FFD1BBADD1BBAD
- D1BBADD1BBADE070406947316947316947316947316947316947316947316947
- 31694731694731694731CDCDCDCCCCCCCCCCCCCCCCCC9494946C6C6C6C6C6C6B
- 6B6B6C6C6C6B6B6B6C6C6C6B6B6B6C6C6C6B6B6B6C6C6C6C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1DBE6D9D2E1D2
- CADCCBC1DBC9BF694731FF00FFFF00FFFF00FFFF00FF959595FFFFFFFBFBFBF7
- F7F7F2F2F2EEEEEEEAEAEAE3E3E3DFDFDFD9D9D9D8D8D86C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFFCF875FCF875FF7F3F1CF875FCF875FEBE1DBCF87
- 5FCF875FDCCBC1694731FF00FFFF00FFFF00FFFF00FF949494FFFFFFA5A5A5A4
- A4A4F7F7F7A5A5A5A4A4A4EAEAEAA5A5A5A4A4A4DADADA6B6B6BFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFFFFFFFFFFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1
- DBE6D9D2E1D2CA694731FF00FFFF00FFFF00FFFF00FF949494FFFFFFFFFFFFFF
- FFFFFBFBFBF7F7F7F2F2F2EEEEEEEAEAEAE4E4E4DFDFDF6C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040E07040E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF95959595959595959594
- 9494949494949494959595959595949494959595959595959595FF00FFFF00FF
- FF00FFFF00FFE07040FBC39FFBC39FFAC19CF5B18BEFA27AEB9369E68254E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF949494D2D2D2D2D2D2D0
- D0D0C4C4C4BABABAAFAFAFA1A1A1949494959595959595959595FF00FFFF00FF
- FF00FFFF00FFE07040E07040E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF95959595959594949495
- 9595959595959595949494959595949494949494959595959595FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- NumGlyphs = 2
- end
- object BtnAltPer: TBitBtn
- Left = 165
- Top = 11
- Width = 81
- Height = 25
- Cursor = crHandPoint
- Caption = '&Alterar'
- TabOrder = 1
- OnClick = BtnAltPerClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFD1BBAD694731
- 694731694731694731694731694731694731694731694731694731694731FF00
- FFFF00FFFF00FFFF00FFCCCCCC6C6C6C6B6B6B6C6C6C6C6C6C6C6C6C6C6C6C6C
- 6C6C6B6B6B6C6C6C6C6C6C6B6B6BFF00FFFF00FFFF00FFFF00FFD1BBADFFFFFF
- FBF9F8F7F3F1F3EDEAEFE7E3EBE1DBE6D9D2E1D2CADCCBC1DBC9BF694731FF00
- FFFF00FFFF00FFFF00FFCDCDCDFFFFFFFBFBFBF7F7F7F2F2F2EEEEEEE9E9E9E3
- E3E3DFDFDFDADADAD8D8D86C6C6CFF00FFFF00FFFF00FFFF00FFD1BBADFFFFFF
- CF875FCF875FF7F3F1CF875FCF875F1C1C1C1C1C1C1C1C1CDCCBC1694731FF00
- FFFF00FFFF00FFFF00FFCDCDCDFFFFFFA4A4A4A4A4A4F7F7F7A4A4A4A4A4A440
- 4040404040414141DADADA6C6C6CFF00FFFF00FFFF00FFFF00FFD1BBADFFFFFF
- FFFFFFFFFFFFFBF9F8F7F3F11C1C1C0098C8FCFAF8A39D98E1D2CA694731FF00
- FFFF00FFFF00FFFF00FFCDCDCDFFFFFFFFFFFFFFFFFFFBFBFBF7F7F7414141B9
- B9B9FCFCFCB7B7B7DFDFDF6B6B6BFF00FFFF00FFFF00FFFF00FFD1BBADD1BBAD
- D1BBADD1BBADE070401C1C1C0098C84ABEDF0098C8A39D986947316947316947
- 31694731694731694731CCCCCCCDCDCDCDCDCDCDCDCD959595404040B9B9B9D3
- D3D3B9B9B9B7B7B76C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6CFF00FFFF00FF
- FF00FFFF00FF1C1C1C0098C84ABEDF94E4F60098C8EFE7E3EBE1DBE6D9D2E1D2
- CADCCBC1DBC9BF694731FF00FFFF00FFFF00FFFF00FF414141B9B9B9D3D3D3ED
- EDEDB9B9B9EEEEEEEAEAEAE4E4E4DFDFDFD9D9D9D8D8D86C6C6CFF00FFFF00FF
- FF00FF1C1C1C0098C84ABEDF94E4F60098C8F7F3F1CF875FCF875FEBE1DBCF87
- 5FCF875FDCCBC1694731FF00FFFF00FFFF00FF414141B9B9B9D3D3D3EDEDEDB9
- B9B9F7F7F7A4A4A4A4A4A4EAEAEAA4A4A4A4A4A4D9D9D96C6C6CFF00FFFF00FF
- 1C1C1C0098C84ABEDF94E4F60098C8FFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1
- DBE6D9D2E1D2CA694731FF00FFFF00FF414141B9B9B9D3D3D3EDEDEDB9B9B9FF
- FFFFFBFBFBF7F7F7F3F3F3EEEEEEE9E9E9E3E3E3DFDFDF6C6C6CFF00FF00009A
- 8080804ABEDF94E4F60098C8E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040FF00FF7272729F9F9FD3D3D3EDEDEDB9B9B994949495
- 959595959595959594949495959594949495959595959594949400009A00009A
- 778C98D2BAAC0098C8FBC39FFBC39FFAC19CF5B18BEFA27AEB9369E68254E070
- 40E07040E07040E07040727272727272AAAAAACCCCCCB9B9B9D2D2D2D2D2D2D0
- D0D0C4C4C4B9B9B9AFAFAFA2A2A29494949595959595959595954A23C70030F8
- 6D8AFD0030F8E07040E07040E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040A85FA8A2A2A2C2C2C2A2A2A295959595959595959594
- 9494959595959595959595949494959595959595959595959595FF00FF8817DA
- 0030F8FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFC63EC6A2A2A2FF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- NumGlyphs = 2
- end
- object BtnExcPer: TBitBtn
- Left = 252
- Top = 11
- Width = 81
- Height = 25
- Cursor = crHandPoint
- Caption = '&Excluir'
- TabOrder = 2
- OnClick = BtnExcPerClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FF0030F8000098FF00FFFF00FFFF00FFFF00
- FFFF00FF0000980030F8FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA3
- A3A3707070FF00FFFF00FFFF00FFFF00FFFF00FF707070A2A2A2FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FF0030F8000098FF00FFFF00FFFF00
- FF0000980030F8FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFA2A2A2707070FF00FFFF00FFFF00FF707070A3A3A3FF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF0030F8000098FF00FF0000
- 980030F8FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFA2A2A2707070FF00FF727272A3A3A3FF00FFFF00FFD1BBAD694731
- 6947316947316947316947316947316947316947316947310030F8002AD0002A
- D0FF00FFFF00FFFF00FFCCCCCC6C6C6C6C6C6C6C6C6C6B6B6B6C6C6C6B6B6B6B
- 6B6B6C6C6C6C6C6CA3A3A3919191919191FF00FFFF00FFFF00FFD1BBADE8DCD4
- E6D9D1E4D7CEE2D4CAE1D1C7DFCFC4DDCBC0DBC8BDD8C5B90030F8002AD00000
- 98FF00FFFF00FFFF00FFCDCDCDE6E6E6E3E3E3E2E2E2E0E0E0DDDDDDDCDCDCD9
- D9D9D7D7D7D5D5D5A2A2A2919191707070FF00FFFF00FFFF00FFD1BBADE8DCD4
- 694731694731E4D7CE694731694731DFCFC46947310030F80000986947310030
- F8000098FF00FFFF00FFCDCDCDE6E6E66C6C6C6C6C6CE2E2E26C6C6C6C6C6CDC
- DCDC6C6C6CA2A2A27070706C6C6CA3A3A3707070FF00FFFF00FFD1BBADE8DCD4
- E8DCD4E8DCD4E6D9D1E4D7CEE2D4CAE1D1C70030F8000098DBC8BD694731FF00
- FF0030F8000098FF00FFCDCDCDE6E6E6E6E6E6E6E6E6E3E3E3E2E2E2DFDFDFDD
- DDDDA3A3A3707070D7D7D76C6C6CFF00FFA3A3A3727272FF00FFD1BBADD1BBAD
- D1BBADD1BBADE070406947316947316947310000986947316947316947316947
- 316947310030F8694731CCCCCCCCCCCCCDCDCDCDCDCD9595956B6B6B6C6C6C6C
- 6C6C7070706C6C6C6C6C6C6C6C6C6C6C6C6C6C6CA2A2A26C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1DBE6D9D2E1D2
- CADCCBC1DBC9BF694731FF00FFFF00FFFF00FFFF00FF959595FFFFFFFBFBFBF7
- F7F7F2F2F2EEEEEEE9E9E9E4E4E4DFDFDFDADADAD8D8D86C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFF694731694731F7F3F1694731694731EBE1DB6947
- 31694731DCCBC1694731FF00FFFF00FFFF00FFFF00FF959595FFFFFF6C6C6C6B
- 6B6BF7F7F76C6C6C6C6C6CEAEAEA6B6B6B6C6C6CD9D9D96C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFFFFFFFFFFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1
- DBE6D9D2E1D2CA694731FF00FFFF00FFFF00FFFF00FF959595FFFFFFFFFFFFFF
- FFFFFBFBFBF7F7F7F3F3F3EEEEEEEAEAEAE3E3E3DFDFDF6C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040E07040E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF95959595959595959595
- 9595949494959595959595959595959595959595959595949494FF00FFFF00FF
- FF00FFFF00FFE07040FBC39FFBC39FFAC19CF5B18BEFA27AEB9369E68254E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF959595D2D2D2D2D2D2D0
- D0D0C4C4C4B9B9B9AFAFAFA2A2A2959595949494959595959595FF00FFFF00FF
- FF00FFFF00FFE07040E07040E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF95959595959594949495
- 9595959595959595959595959595949494959595959595959595FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- NumGlyphs = 2
- end
- object BtnClose: TBitBtn
- Left = 426
- Top = 11
- Width = 81
- Height = 25
- Cursor = crHandPoint
- Caption = '&Fechar'
- TabOrder = 3
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFC066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40198E40198E40198E40
- 198E40198E4019FF00FF8888886969696969696969696969696969696A6A6A69
- 69696969696969696A6A6A6969696969696A6A6A696969FF00FFC06614F9F5F4
- C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2
- A5C3B2A58E4019FF00FF888888F8F8F8C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6
- C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6696969FF00FFC06614FCFAFA
- F9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCDFD0C7DFD0C7DCCB
- C1C3B2A58E4019FF00FF888888FCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEAEAEAE7
- E7E7E4E4E4E0E0E0DDDDDDDDDDDDD9D9D9C6C6C6696969FF00FFC06614FFFFFF
- FCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCE2D4CCDFD0
- C7C3B2A58E4019FF00FF888888FFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEA
- EAEAE7E7E7E3E3E3E0E0E0E0E0E0DDDDDDC6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E5D9D1E2D4
- CCC3B2A58E4019FF00FF888888FFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EE
- EEEEEAEAEAE7E7E7E3E3E3E3E3E3E0E0E0C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E9DED7E5D9
- D1C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1
- F1F1EEEEEEEAEAEAE7E7E7E7E7E7E3E3E3C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F2EBE8EEE6E2ECE2DCECE2DCE9DE
- D7C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFBF7
- F7F7F1F1F1EEEEEEEAEAEAEAEAEAE7E7E7C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF0E9E5F0E9E5EDE4
- DFC3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFB
- FBFBF7F7F7F3F3F3F0F0F0F0F0F0ECECECC6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF4EEEBF0E9
- E5C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
- FEFEFBFBFBF7F7F7F3F3F3F3F3F3F0F0F0C6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F78A9DE92546CD1D3F
- C9193BC8183BC88194E1898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFEFEFEFAFAFAC6C6C6979797929292929292929292C0C0C0C06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFD3355DBF2F4FD4E6B
- D94A67D8F2F4FD183BC8888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFEFEFEA1A1A1FAFAFAAAAAAAA8A8A8F9F9F9929292C066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40193C5CDD8296E4D9DF
- F9CDD5F74C69D81A3CC88888886969696969696969696A6A6A69696969696969
- 6969696969696969A5A5A5C1C1C1EDEDEDE7E7E7A8A8A8929292C06614ED9733
- ED9733ED9733ED9733ED9733ED9733ED9733F6CA9AED97334563E16980E2E4E8
- FBD8DEF9516DDA1F40C9888888ACACACACACACADADADADADADADADADACACACAD
- ADADD5D5D5ADADADA8A8A8B6B6B6F2F2F2ECECECABABAB939393F810DCC06614
- C06614C06614C06614C06614C06614C06614C06614C066144D6AE3F2F4FD667D
- E26E85E2F2F4FD2749CEEF14EF88888888888888888888888889898988888888
- 8888888888898989ACACACF9F9F9B5B5B5B9B9B9F9F9F9989898FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF9AABEF4D6AE34563
- E14463DF3E5EDE8FA2EBFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFCFCFCFACACACA8A8A8A8A8A8A6A6A6C9C9C9}
- NumGlyphs = 2
- end
- object BtnAcePer: TBitBtn
- Left = 339
- Top = 11
- Width = 81
- Height = 25
- Cursor = crHandPoint
- Caption = '&Acessos'
- TabOrder = 4
- OnClick = BtnAcePerClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFC2652BA53C00A53C00A53C00A53C00A53C00A53C
- 00A53C00FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF89898969
- 69696969696969696969696969696A6A6A696969FF00FFFF00FFFF00FFFF00FF
- A22E08A22E08A22E08A22E08C2652BFFD4A5FFD4A5FFD4A5FFCD97FFC07DFFAD
- 55A53C00FF00FFFF00FFFF00FFFF00FF606060606060606060606060898989DC
- DCDCDCDCDCDCDCDCD7D7D7CCCCCCBEBEBE6A6A6AFF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFC2652BC2652BC2652BC2652BC2652BC2652BC265
- 2BC2652BFF00FFFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FF89898989
- 8989898989898989898989898989898989898989FF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FF1C1C1C986060986060A53C00A53C00A53C00A53C
- 00A53C00FF00FFFF00FFFF00FFFF00FF616161FF00FFFF00FFFF00FF41414188
- 8888888888696969696969696969696969696969FF00FFFF00FFFF00FFFF00FF
- A22E08A22E08A22E08A22E08C89898FCFAF80098C81C1C1CFFCD97FFC07DFFAD
- 55A53C00FF00FFFF00FFFF00FFFF00FF606060606060606060606060B5B5B5FC
- FCFCB9B9B9414141D7D7D7CCCCCCBEBEBE696969FF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFC898980098C84ABEDF0098C81C1C1CC2652BC265
- 2BC2652BFF00FFFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FFB5B5B5B9
- B9B9D3D3D3B9B9B9414141898989898989898989FF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFFF00FF0098C894E4F64ABEDF0098C81C1C1CFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FFFF00FFB9
- B9B9EDEDEDD3D3D3B9B9B9414141FF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFC2652BA53C000098C894E4F64ABEDF0098C81C1C
- 1CA53C00FF00FFFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FF89898969
- 6969B9B9B9EDEDEDD3D3D3B9B9B94040406A6A6AFF00FFFF00FFFF00FFFF00FF
- A22E08A22E08A22E08A22E08C2652BFFD4A5FFD4A50098C894E4F64ABEDF0098
- C81C1C1CFF00FFFF00FFFF00FFFF00FF606060606060606060606060898989DC
- DCDCDCDCDCB9B9B9EDEDEDD3D3D3BABABA414141FF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFC2652BC2652BC2652BC2652B0098C894E4F64ABE
- DF80808000009AFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FF89898989
- 8989898989898989BABABAEDEDEDD3D3D3A0A0A0727272FF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF0098C8D2BA
- AC778C9800009A00009AFF00FFFF00FF606060FF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFB9B9B9CCCCCCABABAB727272727272C2652BA22E08
- A22E08A22E08A22E08A22E08A22E08A22E16FF00FFFF00FFFF00FFFF00FF0030
- F86D8AFD0030F800009A89898960606060606060606060606060606060606061
- 6161FF00FFFF00FFFF00FFFF00FFA2A2A2C2C2C2A3A3A3727272C2652BFFD4A5
- FFD4A5FFD4A5FFCD97FFC07DFFAD55A22E08FF00FFFF00FFFF00FFFF00FFFF00
- FF0030F80030F8FF00FF898989DCDCDCDCDCDCDCDCDCD7D7D7CCCCCCBEBEBE60
- 6060FF00FFFF00FFFF00FFFF00FFFF00FFA2A2A2A3A3A3FF00FFC2652BC2652B
- C2652BC2652BC2652BC2652BC2652BC2652BFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FF89898989898989898989898989898989898989898989
- 8989FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- NumGlyphs = 2
- end
- end
- object DataPerfil: TDataSource
- AutoEdit = False
- Left = 328
- Top = 152
- end
-end
diff --git a/internal/2.31RC1/1/Source/pUCFrame_Profile.pas b/internal/2.31RC1/1/Source/pUCFrame_Profile.pas
deleted file mode 100644
index 3e662a0..0000000
--- a/internal/2.31RC1/1/Source/pUCFrame_Profile.pas
+++ /dev/null
@@ -1,246 +0,0 @@
-unit pUCFrame_Profile;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- {$IFDEF DELPHI5_UP}
- {$ELSE}
- Variants,
- {$ENDIF}
- Buttons,
- Classes,
- Controls,
- Db,
- DBGrids,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Grids,
- IncPerfil_U,
- Messages,
- StdCtrls,
- SysUtils,
- UcBase,
- UserPermis_U,
- Windows;
-
-type
- TFrame_Profile = class(TFrame)
- DbGridPerf: TDBGrid;
- Panel2: TPanel;
- BtnAddPer: TBitBtn;
- BtnAltPer: TBitBtn;
- BtnExcPer: TBitBtn;
- BtnClose: TBitBtn;
- BtnAcePer: TBitBtn;
- DataPerfil: TDataSource;
- procedure BtnAddPerClick(Sender: TObject);
- procedure BtnAltPerClick(Sender: TObject);
- procedure BtnExcPerClick(Sender: TObject);
- procedure BtnAcePerClick(Sender: TObject);
- protected
- FIncluirPerfil: TfrmIncluirPerfil;
- procedure ActionBtPermissProfileDefault;
- procedure SetWindowPerfil(Adicionar: Boolean);
- procedure SetWindowProfile;
- private
- { Private declarations }
- public
- fUserControl: TUserControl;
- FDataSetPerfilUsuario: TDataset;
- destructor Destroy; override;
- { Public declarations }
- end;
-
-
-implementation
-
-{$R *.dfm}
-
-procedure TFrame_Profile.SetWindowPerfil(Adicionar: Boolean);
-begin
- with fUserControl.UserSettings.AddChangeProfile do
- begin
- FIncluirPerfil.Caption := WindowCaption;
- if Adicionar then
- FIncluirPerfil.LbDescricao.Caption := LabelAdd
- else
- FIncluirPerfil.LbDescricao.Caption := LabelChange;
-
- FIncluirPerfil.lbNome.Caption := LabelName;
- FIncluirPerfil.btGravar.Caption := BtSave;
- FIncluirPerfil.btCancela.Caption := BtCancel;
- FIncluirPerfil.Position := FUserControl.UserSettings.WindowsPosition;
- FIncluirPerfil.FDataSetPerfilUsuario := FDataSetPerfilUsuario;
- end;
-end;
-
-procedure TFrame_Profile.ActionBtPermissProfileDefault;
-var
- TempCampos, TempCamposEX: String;
-begin
- UserPermis.FTempIdUser := FDataSetPerfilUsuario.FieldByName('IdUser').AsInteger;
- with fUserControl do
- begin
- TempCampos := Format(' %s as IdUser, %s as Modulo, %s as ObjName, %s as UCKey ',
- [TableRights.FieldUserID,
- TableRights.FieldModule,
- TableRights.FieldComponentName,
- TableRights.FieldKey]);
- TempCamposEX := Format('%s, %s as FormName ', [TempCampos, TableRights.FieldFormName]);
-
- UserPermis.DSPermiss := DataConnector.UCGetSQLDataset(Format('Select %s from %s tab Where tab.%s = %s and tab.%s = %s',
- [TempCampos,
- TableRights.TableName,
- TableRights.FieldUserID,
- FDataSetPerfilUsuario.FieldByName('IdUser').AsString,
- TableRights.FieldModule,
- QuotedStr(ApplicationID)]));
-
- UserPermis.DSPermiss.Open;
-
- UserPermis.DSPermissEX := DataConnector.UCGetSQLDataset(Format('Select %s from %s tab1 Where tab1.%s = %s and tab1.%s = %s',
- [TempCamposEX,
- TableRights.TableName + 'EX',
- TableRights.FieldUserID,
- FDataSetPerfilUsuario.FieldByName('IdUser').AsString,
- TableRights.FieldModule,
- QuotedStr(ApplicationID)]));
-
- UserPermis.DSPermissEX.Open;
-
- UserPermis.DSPerfil := TDataset.Create(UserPermis);
-
- UserPermis.ShowModal;
-
- FDataSetPerfilUsuario.Close;
- FDataSetPerfilUsuario.Open;
- FDataSetPerfilUsuario.Locate('idUser', UserPermis.FTempIdUser, []);
-
- FreeAndNil(UserPermis);
- end;
-end;
-
-procedure TFrame_Profile.SetWindowProfile;
-begin
- with fUserControl.UserSettings.Rights do
- begin
- UserPermis.Caption := WindowCaption;
- UserPermis.LbDescricao.Caption := LabelProfile;
- UserPermis.lbUser.Left := UserPermis.LbDescricao.Left + UserPermis.LbDescricao.Width + 5;
- UserPermis.PageMenu.Caption := PageMenu;
- UserPermis.PageAction.Caption := PageActions;
- UserPermis.PageControls.Caption := PageControls; // By Vicente Barros Leonel
- UserPermis.BtLibera.Caption := BtUnlock;
- UserPermis.BtBloqueia.Caption := BtLock;
- UserPermis.BtGrava.Caption := BtSave;
- UserPermis.BtCancel.Caption := BtCancel;
- UserPermis.Position := fUsercontrol.UserSettings.WindowsPosition;
- end;
-end;
-
-procedure TFrame_Profile.BtnAcePerClick(Sender: TObject);
-begin
- if FDataSetPerfilUsuario.IsEmpty then
- Exit;
- UserPermis := TUserPermis.Create(self);
- UserPermis.FUserControl := fUsercontrol;
- SetWindowProfile;
- UserPermis.lbUser.Caption := FDataSetPerfilUsuario.FieldByName('Nome').AsString;
- ActionBtPermissProfileDefault;
-end;
-
-procedure TFrame_Profile.BtnAddPerClick(Sender: TObject);
-begin
- try
- FIncluirPerfil := TfrmIncluirPerfil.Create(Self);
- FIncluirPerfil.FUserControl := Self.FUserControl;
- SetWindowPerfil(True);
- FIncluirPerfil.ShowModal;
- finally
- FreeAndNil(FIncluirPerfil);
- end;
-end;
-
-procedure TFrame_Profile.BtnAltPerClick(Sender: TObject);
-begin
- if FDataSetPerfilUsuario.IsEmpty then
- Exit;
- try
- FIncluirPerfil := TfrmIncluirPerfil.Create(self);
- FIncluirPerfil.FUserControl := Self.FUserControl;
- FIncluirPerfil.FNewIdUser := FDataSetPerfilUsuario.FieldByName('IdUser').AsInteger;
- SetWindowPerfil(False);
- with FIncluirPerfil do
- begin
- EditDescricao.Text := FDataSetPerfilUsuario.FieldByName('Nome').AsString;
- FAltera := True;
- ShowModal;
- end;
- finally
- FreeAndNil(FIncluirPerfil);
- end;
-end;
-
-procedure TFrame_Profile.BtnExcPerClick(Sender: TObject);
-var
- TempID: Integer;
- CanDelete: Boolean;
- ErrorMsg: String;
- TempDS: TDataset;
-begin
- if FDataSetPerfilUsuario.IsEmpty then
- Exit;
- TempID := FDataSetPerfilUsuario.FieldByName('IDUser').AsInteger;
- TempDS := FUserControl.DataConnector.UCGetSQLDataset('Select ' + FUserControl.TableUsers.FieldUserID + ' as IdUser from ' +
- FUserControl.TableUsers.TableName +
- ' Where ' + FUserControl.TableUsers.FieldTypeRec + ' = ' + QuotedStr('U') +
- ' AND ' + FUserControl.TableUsers.FieldProfile + ' = ' + IntToStr(TempID));
-
- if TempDS.FieldByName('IdUser').AsInteger > 0 then
- begin
- TempDS.Close;
- FreeAndNil(TempDS);
- //changed by fduenas: PromptDelete_WindowCaption
- if MessageBox(handle, PChar(Format(FUserControl.UserSettings.UsersProfile.PromptDelete, [FDataSetPerfilUsuario.FieldByName('Nome').AsString])),
- PChar(FUserControl.UserSettings.UsersProfile.PromptDelete_WindowCaption), MB_ICONQUESTION or MB_YESNO or MB_DEFBUTTON2) <> idYes then
- Exit;
- end
- else
- begin
- TempDS.Close;
- FreeAndNil(TempDS);
- end;
-
- CanDelete := True;
- if Assigned(FUserControl.onDeleteProfile) then
- FUserControl.onDeleteProfile(TObject(Owner), TempID, CanDelete, ErrorMsg);
- if not CanDelete then
- begin
- MessageDlg(ErrorMSG, mtWarning, [mbOK], 0);
- Exit;
- end;
-
- with FUserControl do
- begin
- DataConnector.UCExecSQL('Delete from ' + TableUsers.TableName + ' where ' + TableUsers.FieldUserID + ' = ' + IntToStr(TempID));
- DataConnector.UCExecSQL('Delete from ' + TableRights.TableName + ' where ' + TableRights.FieldUserID + ' = ' + IntToStr(TempID));
- DataConnector.UCExecSQL('Delete from ' + TableRights.TableName + 'EX where ' + TableRights.FieldUserID + ' = ' + IntToStr(TempID));
- DataConnector.UCExecSQL('Update ' + TableUsers.TableName +
- ' Set ' + TableUsers.FieldProfile + ' = null where ' + TableUsers.FieldUserID + ' = ' + IntToStr(TempID));
- end;
- FDataSetPerfilUsuario.Close;
- FDataSetPerfilUsuario.Open;
-end;
-
-destructor TFrame_Profile.Destroy;
-begin
- //nada a destruir
- //não destruir o FDataSetPerfilUsuario o USERCONTROL toma conta dele
- inherited;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/pUCFrame_User.dfm b/internal/2.31RC1/1/Source/pUCFrame_User.dfm
deleted file mode 100644
index 6784e27..0000000
--- a/internal/2.31RC1/1/Source/pUCFrame_User.dfm
+++ /dev/null
@@ -1,440 +0,0 @@
-object UCFrame_User: TUCFrame_User
- Left = 0
- Top = 0
- Width = 594
- Height = 311
- AutoSize = True
- TabOrder = 0
- TabStop = True
- object Panel3: TPanel
- Left = 0
- Top = 266
- Width = 594
- Height = 45
- Align = alBottom
- BevelOuter = bvNone
- TabOrder = 0
- object btAdic: TBitBtn
- Left = 39
- Top = 10
- Width = 81
- Height = 25
- Cursor = crHandPoint
- Caption = '&Adicionar'
- TabOrder = 0
- OnClick = btAdicClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF0060000060
- 00006000FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FF777777787878777777FF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF00600033CB
- 51006000FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FF777777C8C8C8777777FF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF00600000600000600040D8
- 65006000006000006000FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FF787878777777777777D1D1D1787878777777777777D1BBAD694731
- 69473169473169473169473169473169473169473100600060F8985AF28F4DE5
- 7A40D8653AD25C006000CCCCCC6C6C6C6B6B6B6B6B6B6C6C6C6C6C6C6B6B6B6C
- 6C6C6B6B6B777777EAEAEAE5E5E5DBDBDBD2D2D2CDCDCD787878D1BBADFFFFFF
- FBF9F8F7F3F1F3EDEAEFE7E3EBE1DBE6D9D2E1D2CA0060000060000060005AF2
- 8F006000006000006000CCCCCCFFFFFFFBFBFBF7F7F7F2F2F2EEEEEEEAEAEAE3
- E3E3DFDFDF777777777777777777E6E6E6777777777777787878D1BBADFFFFFF
- CF875FCF875FF7F3F1CF875FCF875FEBE1DBCF875FCF875FDCCBC100600060F8
- 98006000FF00FFFF00FFCCCCCCFFFFFFA4A4A4A4A4A4F7F7F7A5A5A5A4A4A4EA
- EAEAA5A5A5A4A4A4D9D9D9777777EAEAEA777777FF00FFFF00FFD1BBADFFFFFF
- FFFFFFFFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1DBE6D9D2E1D2CA0060000060
- 00006000FF00FFFF00FFCCCCCCFFFFFFFFFFFFFFFFFFFBFBFBF7F7F7F3F3F3EE
- EEEEE9E9E9E4E4E4DFDFDF777777777777777777FF00FFFF00FFD1BBADD1BBAD
- D1BBADD1BBADE070406947316947316947316947316947316947316947316947
- 31694731694731694731CDCDCDCCCCCCCCCCCCCCCCCC9494946C6C6C6C6C6C6B
- 6B6B6C6C6C6B6B6B6C6C6C6B6B6B6C6C6C6B6B6B6C6C6C6C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1DBE6D9D2E1D2
- CADCCBC1DBC9BF694731FF00FFFF00FFFF00FFFF00FF959595FFFFFFFBFBFBF7
- F7F7F2F2F2EEEEEEEAEAEAE3E3E3DFDFDFD9D9D9D8D8D86C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFFCF875FCF875FF7F3F1CF875FCF875FEBE1DBCF87
- 5FCF875FDCCBC1694731FF00FFFF00FFFF00FFFF00FF949494FFFFFFA5A5A5A4
- A4A4F7F7F7A5A5A5A4A4A4EAEAEAA5A5A5A4A4A4DADADA6B6B6BFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFFFFFFFFFFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1
- DBE6D9D2E1D2CA694731FF00FFFF00FFFF00FFFF00FF949494FFFFFFFFFFFFFF
- FFFFFBFBFBF7F7F7F2F2F2EEEEEEEAEAEAE4E4E4DFDFDF6C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040E07040E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF95959595959595959594
- 9494949494949494959595959595949494959595959595959595FF00FFFF00FF
- FF00FFFF00FFE07040FBC39FFBC39FFAC19CF5B18BEFA27AEB9369E68254E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF949494D2D2D2D2D2D2D0
- D0D0C4C4C4BABABAAFAFAFA1A1A1949494959595959595959595FF00FFFF00FF
- FF00FFFF00FFE07040E07040E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF95959595959594949495
- 9595959595959595949494959595949494949494959595959595FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- NumGlyphs = 2
- end
- object BtAlt: TBitBtn
- Left = 126
- Top = 10
- Width = 81
- Height = 25
- Cursor = crHandPoint
- Caption = '&Alterar'
- TabOrder = 1
- OnClick = BtAltClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFD1BBAD694731
- 694731694731694731694731694731694731694731694731694731694731FF00
- FFFF00FFFF00FFFF00FFCCCCCC6C6C6C6B6B6B6C6C6C6C6C6C6C6C6C6C6C6C6C
- 6C6C6B6B6B6C6C6C6C6C6C6B6B6BFF00FFFF00FFFF00FFFF00FFD1BBADFFFFFF
- FBF9F8F7F3F1F3EDEAEFE7E3EBE1DBE6D9D2E1D2CADCCBC1DBC9BF694731FF00
- FFFF00FFFF00FFFF00FFCDCDCDFFFFFFFBFBFBF7F7F7F2F2F2EEEEEEE9E9E9E3
- E3E3DFDFDFDADADAD8D8D86C6C6CFF00FFFF00FFFF00FFFF00FFD1BBADFFFFFF
- CF875FCF875FF7F3F1CF875FCF875F1C1C1C1C1C1C1C1C1CDCCBC1694731FF00
- FFFF00FFFF00FFFF00FFCDCDCDFFFFFFA4A4A4A4A4A4F7F7F7A4A4A4A4A4A440
- 4040404040414141DADADA6C6C6CFF00FFFF00FFFF00FFFF00FFD1BBADFFFFFF
- FFFFFFFFFFFFFBF9F8F7F3F11C1C1C0098C8FCFAF8A39D98E1D2CA694731FF00
- FFFF00FFFF00FFFF00FFCDCDCDFFFFFFFFFFFFFFFFFFFBFBFBF7F7F7414141B9
- B9B9FCFCFCB7B7B7DFDFDF6B6B6BFF00FFFF00FFFF00FFFF00FFD1BBADD1BBAD
- D1BBADD1BBADE070401C1C1C0098C84ABEDF0098C8A39D986947316947316947
- 31694731694731694731CCCCCCCDCDCDCDCDCDCDCDCD959595404040B9B9B9D3
- D3D3B9B9B9B7B7B76C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6CFF00FFFF00FF
- FF00FFFF00FF1C1C1C0098C84ABEDF94E4F60098C8EFE7E3EBE1DBE6D9D2E1D2
- CADCCBC1DBC9BF694731FF00FFFF00FFFF00FFFF00FF414141B9B9B9D3D3D3ED
- EDEDB9B9B9EEEEEEEAEAEAE4E4E4DFDFDFD9D9D9D8D8D86C6C6CFF00FFFF00FF
- FF00FF1C1C1C0098C84ABEDF94E4F60098C8F7F3F1CF875FCF875FEBE1DBCF87
- 5FCF875FDCCBC1694731FF00FFFF00FFFF00FF414141B9B9B9D3D3D3EDEDEDB9
- B9B9F7F7F7A4A4A4A4A4A4EAEAEAA4A4A4A4A4A4D9D9D96C6C6CFF00FFFF00FF
- 1C1C1C0098C84ABEDF94E4F60098C8FFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1
- DBE6D9D2E1D2CA694731FF00FFFF00FF414141B9B9B9D3D3D3EDEDEDB9B9B9FF
- FFFFFBFBFBF7F7F7F3F3F3EEEEEEE9E9E9E3E3E3DFDFDF6C6C6CFF00FF00009A
- 8080804ABEDF94E4F60098C8E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040FF00FF7272729F9F9FD3D3D3EDEDEDB9B9B994949495
- 959595959595959594949495959594949495959595959594949400009A00009A
- 778C98D2BAAC0098C8FBC39FFBC39FFAC19CF5B18BEFA27AEB9369E68254E070
- 40E07040E07040E07040727272727272AAAAAACCCCCCB9B9B9D2D2D2D2D2D2D0
- D0D0C4C4C4B9B9B9AFAFAFA2A2A29494949595959595959595954A23C70030F8
- 6D8AFD0030F8E07040E07040E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040A85FA8A2A2A2C2C2C2A2A2A295959595959595959594
- 9494959595959595959595949494959595959595959595959595FF00FF8817DA
- 0030F8FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFC63EC6A2A2A2FF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- NumGlyphs = 2
- end
- object BtExclui: TBitBtn
- Left = 213
- Top = 10
- Width = 81
- Height = 25
- Cursor = crHandPoint
- Caption = '&Excluir'
- TabOrder = 2
- OnClick = BtExcluiClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FF0030F8000098FF00FFFF00FFFF00FFFF00
- FFFF00FF0000980030F8FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFA3
- A3A3707070FF00FFFF00FFFF00FFFF00FFFF00FF707070A2A2A2FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FF0030F8000098FF00FFFF00FFFF00
- FF0000980030F8FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFA2A2A2707070FF00FFFF00FFFF00FF707070A3A3A3FF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF0030F8000098FF00FF0000
- 980030F8FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFA2A2A2707070FF00FF727272A3A3A3FF00FFFF00FFD1BBAD694731
- 6947316947316947316947316947316947316947316947310030F8002AD0002A
- D0FF00FFFF00FFFF00FFCCCCCC6C6C6C6C6C6C6C6C6C6B6B6B6C6C6C6B6B6B6B
- 6B6B6C6C6C6C6C6CA3A3A3919191919191FF00FFFF00FFFF00FFD1BBADE8DCD4
- E6D9D1E4D7CEE2D4CAE1D1C7DFCFC4DDCBC0DBC8BDD8C5B90030F8002AD00000
- 98FF00FFFF00FFFF00FFCDCDCDE6E6E6E3E3E3E2E2E2E0E0E0DDDDDDDCDCDCD9
- D9D9D7D7D7D5D5D5A2A2A2919191707070FF00FFFF00FFFF00FFD1BBADE8DCD4
- 694731694731E4D7CE694731694731DFCFC46947310030F80000986947310030
- F8000098FF00FFFF00FFCDCDCDE6E6E66C6C6C6C6C6CE2E2E26C6C6C6C6C6CDC
- DCDC6C6C6CA2A2A27070706C6C6CA3A3A3707070FF00FFFF00FFD1BBADE8DCD4
- E8DCD4E8DCD4E6D9D1E4D7CEE2D4CAE1D1C70030F8000098DBC8BD694731FF00
- FF0030F8000098FF00FFCDCDCDE6E6E6E6E6E6E6E6E6E3E3E3E2E2E2DFDFDFDD
- DDDDA3A3A3707070D7D7D76C6C6CFF00FFA3A3A3727272FF00FFD1BBADD1BBAD
- D1BBADD1BBADE070406947316947316947310000986947316947316947316947
- 316947310030F8694731CCCCCCCCCCCCCDCDCDCDCDCD9595956B6B6B6C6C6C6C
- 6C6C7070706C6C6C6C6C6C6C6C6C6C6C6C6C6C6CA2A2A26C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1DBE6D9D2E1D2
- CADCCBC1DBC9BF694731FF00FFFF00FFFF00FFFF00FF959595FFFFFFFBFBFBF7
- F7F7F2F2F2EEEEEEE9E9E9E4E4E4DFDFDFDADADAD8D8D86C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFF694731694731F7F3F1694731694731EBE1DB6947
- 31694731DCCBC1694731FF00FFFF00FFFF00FFFF00FF959595FFFFFF6C6C6C6B
- 6B6BF7F7F76C6C6C6C6C6CEAEAEA6B6B6B6C6C6CD9D9D96C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040FFFFFFFFFFFFFFFFFFFBF9F8F7F3F1F3EDEAEFE7E3EBE1
- DBE6D9D2E1D2CA694731FF00FFFF00FFFF00FFFF00FF959595FFFFFFFFFFFFFF
- FFFFFBFBFBF7F7F7F3F3F3EEEEEEEAEAEAE3E3E3DFDFDF6C6C6CFF00FFFF00FF
- FF00FFFF00FFE07040E07040E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF95959595959595959595
- 9595949494959595959595959595959595959595959595949494FF00FFFF00FF
- FF00FFFF00FFE07040FBC39FFBC39FFAC19CF5B18BEFA27AEB9369E68254E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF959595D2D2D2D2D2D2D0
- D0D0C4C4C4B9B9B9AFAFAFA2A2A2959595949494959595959595FF00FFFF00FF
- FF00FFFF00FFE07040E07040E07040E07040E07040E07040E07040E07040E070
- 40E07040E07040E07040FF00FFFF00FFFF00FFFF00FF95959595959594949495
- 9595959595959595959595959595949494959595959595959595FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- NumGlyphs = 2
- end
- object BtAcess: TBitBtn
- Left = 300
- Top = 10
- Width = 81
- Height = 25
- Cursor = crHandPoint
- Caption = '&Acessos'
- TabOrder = 3
- OnClick = BtAcessClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFC2652BA53C00A53C00A53C00A53C00A53C00A53C
- 00A53C00FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF89898969
- 69696969696969696969696969696A6A6A696969FF00FFFF00FFFF00FFFF00FF
- A22E08A22E08A22E08A22E08C2652BFFD4A5FFD4A5FFD4A5FFCD97FFC07DFFAD
- 55A53C00FF00FFFF00FFFF00FFFF00FF606060606060606060606060898989DC
- DCDCDCDCDCDCDCDCD7D7D7CCCCCCBEBEBE6A6A6AFF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFC2652BC2652BC2652BC2652BC2652BC2652BC265
- 2BC2652BFF00FFFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FF89898989
- 8989898989898989898989898989898989898989FF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FF1C1C1C986060986060A53C00A53C00A53C00A53C
- 00A53C00FF00FFFF00FFFF00FFFF00FF616161FF00FFFF00FFFF00FF41414188
- 8888888888696969696969696969696969696969FF00FFFF00FFFF00FFFF00FF
- A22E08A22E08A22E08A22E08C89898FCFAF80098C81C1C1CFFCD97FFC07DFFAD
- 55A53C00FF00FFFF00FFFF00FFFF00FF606060606060606060606060B5B5B5FC
- FCFCB9B9B9414141D7D7D7CCCCCCBEBEBE696969FF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFC898980098C84ABEDF0098C81C1C1CC2652BC265
- 2BC2652BFF00FFFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FFB5B5B5B9
- B9B9D3D3D3B9B9B9414141898989898989898989FF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFFF00FF0098C894E4F64ABEDF0098C81C1C1CFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FFFF00FFB9
- B9B9EDEDEDD3D3D3B9B9B9414141FF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFC2652BA53C000098C894E4F64ABEDF0098C81C1C
- 1CA53C00FF00FFFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FF89898969
- 6969B9B9B9EDEDEDD3D3D3B9B9B94040406A6A6AFF00FFFF00FFFF00FFFF00FF
- A22E08A22E08A22E08A22E08C2652BFFD4A5FFD4A50098C894E4F64ABEDF0098
- C81C1C1CFF00FFFF00FFFF00FFFF00FF606060606060606060606060898989DC
- DCDCDCDCDCB9B9B9EDEDEDD3D3D3BABABA414141FF00FFFF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFC2652BC2652BC2652BC2652B0098C894E4F64ABE
- DF80808000009AFF00FFFF00FFFF00FF606060FF00FFFF00FFFF00FF89898989
- 8989898989898989BABABAEDEDEDD3D3D3A0A0A0727272FF00FFFF00FFFF00FF
- A22E08FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF0098C8D2BA
- AC778C9800009A00009AFF00FFFF00FF606060FF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFB9B9B9CCCCCCABABAB727272727272C2652BA22E08
- A22E08A22E08A22E08A22E08A22E08A22E16FF00FFFF00FFFF00FFFF00FF0030
- F86D8AFD0030F800009A89898960606060606060606060606060606060606061
- 6161FF00FFFF00FFFF00FFFF00FFA2A2A2C2C2C2A3A3A3727272C2652BFFD4A5
- FFD4A5FFD4A5FFCD97FFC07DFFAD55A22E08FF00FFFF00FFFF00FFFF00FFFF00
- FF0030F80030F8FF00FF898989DCDCDCDCDCDCDCDCDCD7D7D7CCCCCCBEBEBE60
- 6060FF00FFFF00FFFF00FFFF00FFFF00FFA2A2A2A3A3A3FF00FFC2652BC2652B
- C2652BC2652BC2652BC2652BC2652BC2652BFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FF89898989898989898989898989898989898989898989
- 8989FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- NumGlyphs = 2
- end
- object BtnClose: TBitBtn
- Left = 474
- Top = 10
- Width = 81
- Height = 25
- Cursor = crHandPoint
- Caption = '&Fechar'
- TabOrder = 4
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFC066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40198E40198E40198E40
- 198E40198E4019FF00FF8888886969696969696969696969696969696A6A6A69
- 69696969696969696A6A6A6969696969696A6A6A696969FF00FFC06614F9F5F4
- C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2
- A5C3B2A58E4019FF00FF888888F8F8F8C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6
- C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6696969FF00FFC06614FCFAFA
- F9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCDFD0C7DFD0C7DCCB
- C1C3B2A58E4019FF00FF888888FCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEAEAEAE7
- E7E7E4E4E4E0E0E0DDDDDDDDDDDDD9D9D9C6C6C6696969FF00FFC06614FFFFFF
- FCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCE2D4CCDFD0
- C7C3B2A58E4019FF00FF888888FFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEA
- EAEAE7E7E7E3E3E3E0E0E0E0E0E0DDDDDDC6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E5D9D1E2D4
- CCC3B2A58E4019FF00FF888888FFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EE
- EEEEEAEAEAE7E7E7E3E3E3E3E3E3E0E0E0C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E9DED7E5D9
- D1C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1
- F1F1EEEEEEEAEAEAE7E7E7E7E7E7E3E3E3C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F2EBE8EEE6E2ECE2DCECE2DCE9DE
- D7C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFBF7
- F7F7F1F1F1EEEEEEEAEAEAEAEAEAE7E7E7C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF0E9E5F0E9E5EDE4
- DFC3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFB
- FBFBF7F7F7F3F3F3F0F0F0F0F0F0ECECECC6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF4EEEBF0E9
- E5C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
- FEFEFBFBFBF7F7F7F3F3F3F3F3F3F0F0F0C6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F78A9DE92546CD1D3F
- C9193BC8183BC88194E1898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFEFEFEFAFAFAC6C6C6979797929292929292929292C0C0C0C06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFD3355DBF2F4FD4E6B
- D94A67D8F2F4FD183BC8888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFEFEFEA1A1A1FAFAFAAAAAAAA8A8A8F9F9F9929292C066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40193C5CDD8296E4D9DF
- F9CDD5F74C69D81A3CC88888886969696969696969696A6A6A69696969696969
- 6969696969696969A5A5A5C1C1C1EDEDEDE7E7E7A8A8A8929292C06614ED9733
- ED9733ED9733ED9733ED9733ED9733ED9733F6CA9AED97334563E16980E2E4E8
- FBD8DEF9516DDA1F40C9888888ACACACACACACADADADADADADADADADACACACAD
- ADADD5D5D5ADADADA8A8A8B6B6B6F2F2F2ECECECABABAB939393F810DCC06614
- C06614C06614C06614C06614C06614C06614C06614C066144D6AE3F2F4FD667D
- E26E85E2F2F4FD2749CEEF14EF88888888888888888888888889898988888888
- 8888888888898989ACACACF9F9F9B5B5B5B9B9B9F9F9F9989898FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF9AABEF4D6AE34563
- E14463DF3E5EDE8FA2EBFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFCFCFCFACACACA8A8A8A8A8A8A6A6A6C9C9C9}
- NumGlyphs = 2
- end
- object BtPass: TBitBtn
- Left = 387
- Top = 10
- Width = 81
- Height = 25
- Cursor = crHandPoint
- Caption = '&Senha'
- TabOrder = 5
- OnClick = BtPassClick
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000C8D0D4C8D0D4
- B8BFC39BA7A5879A918096888792846947316947318F9B99A1A8ABBBC3C6C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4B8BFC3A8AEB19FA5A79DA2A49FA3A56C
- 6C6C6C6C6C9FA5A8A1A8ABBBC3C6C8D0D4C8D0D4C8D0D4C8D0D4C8D0D491A795
- 4E773C4A8334478F3143962F694731FBE3CBF8C8986947314977364F6A48A5AC
- AEC8D0D4C8D0D4C8D0D4C8D0D4ACB1B38D8D8E9595959D9D9DA2A2A26C6C6CE9
- E9E9D3D3D36B6B6B8C8D8D808182A9AFB2C8D0D4C8D0D4C8D0D4C8D0D45B8049
- 4F8135479031409C2E3AA62CA08C7DFDF1E5FBE3CBF8C8986947315675388092
- 85C8D0D4C8D0D4C8D0D4C8D0D49293939494949E9E9EA6A6A6ADADADA8A8A8F5
- F5F5E9E9E9D3D3D36C6C6C8C8C8C9A9EA1C8D0D4C8D0D4C8D0D4C8D0D4588347
- 4B893342992F39A82B32B4282EBB26A08C7DFDF1E5FBE3CBF8C8986947316947
- 31694731694731BDBEBDC8D0D4959696999999A4A4A4AFAFAFB6B6B6BCBCBCA8
- A8A8F5F5F5E9E9E9D3D3D36B6B6B6C6C6C6C6C6C6C6C6CBFC5C8C8D0D4799F75
- 488D323E9E2D35AF2935B6317ACB7B2DBF28A08C7DFDF1E5FBE3CBF8C898F8C8
- 98F8C898F8C898694731C8D0D4A7AAAC9C9C9CA8A8A8B2B2B2B8B8B8CCCCCCBE
- BEBEA8A8A8F4F4F4E9E9E9D3D3D3D3D3D3D3D3D3D3D3D36B6B6BC8D0D4BCCAC9
- 56954A3E9F2D34B02980AC81D2D3D381BB8232B228A08C7DFDF1E5FBE3CBFADB
- BCF9D7B5F9D7B5694731C8D0D4C4CBCFA1A3A3A8A8A8B4B4B4BBBBBBE0E0E0C4
- C4C4B4B4B4A8A8A8F4F4F4E9E9E9E3E3E3E0E0E0DFDFDF6C6C6CC8D0D4C8D0D4
- BBC9C766A76436933E598CAE498CBB4A81A62B703AA08C7DFDF1E5FBE3CBFBE3
- CB694731F9D7B5694731C8D0D4C8D0D4C3CBCEADAFB1A1A1A1AFAFAFB1B1B1A6
- A6A6878787A8A8A8F5F5F5E9E9E9E9E9E96C6C6CE0E0E06B6B6BC8D0D4C8D0D4
- C8D0D4B9C6CE5BA0CC54A2D853A1D64F9DD3468FC1A08C7DFDF1E5FBE3CB6947
- 31A08C7DFADBBC694731C8D0D4C8D0D4C8D0D4C3CACEBEBFBFC3C3C3C2C2C2C0
- C0C0B3B3B4A8A8A8F5F5F5E9E9E96C6C6CA8A8A8E3E3E36C6C6CC8D0D4C8D0D4
- C8D0D47AADD05CA9DD5CA9DD5AA7DC56A4D9519FD48E8A86FDF1E5FDF1E5FDF1
- E5FDF1E5FDF1E5694731C8D0D4C8D0D4C8D0D4C1C4C5C8C8C8C8C8C8C7C7C7C4
- C4C4C1C1C1A6A6A7F5F5F5F5F5F5F4F4F4F5F5F5F5F5F56C6C6CC8D0D4C8D0D4
- BAC8D05FABDD63B0E363B0E361AEE15CA9DD56A4D96394B69E9086A08C7DA08C
- 7DA08C7DA6978BBDBEBDC8D0D4C8D0D4C5CCCFC9C9C9CDCDCDCDCDCDCCCCCCC8
- C8C8C4C4C4B4B4B4A7A8A9A8A8A8A8A8A8A8A8A8ADAEAFBFC5C8C8D0D4C8D0D4
- A0BED066B2E56BB7E96BB7E967B3E661AEE15AA7DC53A0D58798A3C8D0D4C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C4C9CCCECECED2D2D2D2D2D2D0D0D0CC
- CCCCC6C6C6C2C2C2A3A8AAC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- 99B9CD4989B14A85AC5895BD68B2E364B0E45CA9DE53A0D4889BA8C8D0D4C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C1C6C8ACACACA9A9A9B7B7B7CECECECE
- CECEC8C8C8C2C2C2A7ACAFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- A3BAC85098C4539AC74E93BE437DA25190BA5198C63C79A0969FA4C8D0D4C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4BFC5C8B9B9B9BCBCBCB6B6B6A2A2A2B3
- B3B3B9B9B9A0A0A0A4AAADC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C3CCD264A7D062ACDA5DA6D35299C64284AD3C7FA94B7B9BBEC6CAC8D0D4C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C6CED2C2C3C3C9C9C9C4C4C4BABABAA9
- A9A9A5A5A59C9D9EBEC6CAC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D49FBFD371BCE968B2E059A1CF4990BC4180A99CACB6C8D0D4C8D0D4C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C6CBCDD5D5D5CDCDCDC0C0C0B3
- B3B3A5A6A6B2B8BBC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
- C8D0D4C8D0D4A4C2D576B2D761A0C86C9CBBA6B8C2C8D0D4C8D0D4C8D0D4C8D0
- D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8CDCFC8C9CABDBEBEB4
- B6B7BBC1C4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4}
- NumGlyphs = 2
- end
- end
- object DbGridUser: TDBGrid
- Left = 0
- Top = 0
- Width = 594
- Height = 266
- Align = alClient
- Ctl3D = True
- DataSource = DataUser
- Options = [dgTitles, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgAlwaysShowSelection, dgConfirmDelete, dgCancelOnExit]
- ParentCtl3D = False
- ReadOnly = True
- TabOrder = 1
- TitleFont.Charset = DEFAULT_CHARSET
- TitleFont.Color = clWindowText
- TitleFont.Height = -11
- TitleFont.Name = 'Tahoma'
- TitleFont.Style = []
- OnDblClick = BtAltClick
- Columns = <
- item
- Expanded = False
- FieldName = 'Nome'
- Title.Alignment = taCenter
- Width = 239
- Visible = True
- end
- item
- Expanded = False
- FieldName = 'Login'
- Title.Alignment = taCenter
- Width = 123
- Visible = True
- end
- item
- Expanded = False
- FieldName = 'Email'
- Title.Alignment = taCenter
- Width = 199
- Visible = True
- end>
- end
- object DataUser: TDataSource
- AutoEdit = False
- Left = 296
- Top = 152
- end
- object DataPerfil: TDataSource
- AutoEdit = False
- Left = 328
- Top = 152
- end
-end
diff --git a/internal/2.31RC1/1/Source/pUCFrame_User.pas b/internal/2.31RC1/1/Source/pUCFrame_User.pas
deleted file mode 100644
index 6646e6c..0000000
--- a/internal/2.31RC1/1/Source/pUCFrame_User.pas
+++ /dev/null
@@ -1,326 +0,0 @@
-unit pUCFrame_User;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- {$IFDEF DELPHI5_UP}
- {$ELSE}
- Variants,
- {$ENDIF}
- Buttons,
- Classes,
- Controls,
- Db,
- DBGrids,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Grids,
- IncUser_U,
- Messages,
- SenhaForm_U,
- StdCtrls,
- SysUtils,
- UcBase,
- UserPermis_U,
- Windows;
-
-type
- TUCFrame_User = class(TFrame)
- Panel3: TPanel;
- btAdic: TBitBtn;
- BtAlt: TBitBtn;
- BtExclui: TBitBtn;
- BtAcess: TBitBtn;
- BtnClose: TBitBtn;
- BtPass: TBitBtn;
- DbGridUser: TDBGrid;
- DataUser: TDataSource;
- DataPerfil: TDataSource;
- procedure btAdicClick(Sender: TObject);
- procedure BtAltClick(Sender: TObject);
- procedure BtAcessClick(Sender: TObject);
- procedure BtPassClick(Sender: TObject);
- procedure BtExcluiClick(Sender: TObject);
- protected
- FormSenha: TCustomForm;
- FfrmIncluirUsuario: TfrmIncluirUsuario;
- procedure SetWindowUserProfile;
- procedure SetWindowUser(Adicionar: Boolean);
- procedure ActionBtPermissUserDefault;
- procedure FDataSetCadastroUsuarioAfterScroll(DataSet: TDataSet);
- private
- { Private declarations }
- public
- FUsercontrol: TUserControl;
- FDataSetCadastroUsuario: TDataset;
- procedure SetWindow;
- destructor Destroy; override;
- { Public declarations }
- end;
-
-implementation
-
-uses
- UCMessages;
-
-{$R *.dfm}
-
-procedure TUCFrame_User.btAdicClick(Sender: TObject);
-begin
- FfrmIncluirUsuario := TfrmIncluirUsuario.Create(Self);
- FfrmIncluirUsuario.FUsercontrol := Self.FUsercontrol;
- SetWindowUser(True);
- FfrmIncluirUsuario.ShowModal;
- FreeAndNil(FfrmIncluirUsuario);
-end;
-
-procedure TUCFrame_User.BtAltClick(Sender: TObject);
-begin
- if FDataSetCadastroUsuario.IsEmpty then
- Exit;
- FfrmIncluirUsuario := TfrmIncluirUsuario.Create(Self);
- FfrmIncluirUsuario.FUsercontrol := Self.FUsercontrol;
- SetWindowUser(False);
- with FfrmIncluirUsuario do
- begin
- FAltera := True;
- vNovoIDUsuario := FDataSetCadastroUsuario.FieldByName('IdUser').AsInteger;
- EditNome.Text := FDataSetCadastroUsuario.FieldByName('Nome').AsString;
- EditLogin.Text := FDataSetCadastroUsuario.FieldByName('Login').AsString;
- EditEmail.Text := FDataSetCadastroUsuario.FieldByName('Email').AsString;
- ComboPerfil.KeyValue := FDataSetCadastroUsuario.FieldByName('Perfil').AsInteger;
- ckPrivilegiado.Checked := StrToBool(FDataSetCadastroUsuario.FieldByName('Privilegiado').AsString);
- ckUserExpired.Checked := StrToBool(FDataSetCadastroUsuario.FieldByName('UserNaoExpira').AsString);
- SpinExpira.Value := FDataSetCadastroUsuario.FieldByName('DaysOfExpire').AsInteger;
- ComboStatus.ItemIndex := FDataSetCadastroUsuario.FieldByName('UserInative').AsInteger;
- if FfrmIncluirUsuario.ComboStatus.Enabled then
- FfrmIncluirUsuario.ComboStatus.Enabled := not ((FUsercontrol.User.ProtectAdministrator) and
- (FDataSetCadastroUsuario.FieldByName('Login').AsString = FUsercontrol.Login.InitialLogin.User));
- ShowModal;
- end;
- FreeAndNil(FfrmIncluirUsuario);
-end;
-
-procedure TUCFrame_User.BtExcluiClick(Sender: TObject);
-var
- TempID: Integer;
- CanDelete: Boolean;
- ErrorMsg: String;
-begin
- if FDataSetCadastroUsuario.IsEmpty then
- Exit;
- TempID := FDataSetCadastroUsuario.FieldByName('IDUser').AsInteger;
- if MessageBox(Handle, PChar(Format(FUsercontrol.UserSettings.UsersForm.PromptDelete, [FDataSetCadastroUsuario.FieldByName('Login').AsString])),
- PChar(FUsercontrol.UserSettings.UsersForm.PromptDelete_WindowCaption), MB_ICONQUESTION or MB_YESNO or MB_DEFBUTTON2) = idYes then
- begin
- CanDelete := True;
- if Assigned(FUsercontrol.onDeleteUser) then
- FUsercontrol.onDeleteUser(TObject(Owner), TempID, CanDelete, ErrorMsg);
- if not CanDelete then
- begin
- MessageDlg(ErrorMSG, mtWarning, [mbOK], 0);
- Exit;
- end;
-
- FUsercontrol.DataConnector.UCExecSQL('Delete from ' + FUsercontrol.TableRights.TableName + ' where ' +
- FUsercontrol.TableRights.FieldUserID + ' = ' + IntToStr(TempID));
- FUsercontrol.DataConnector.UCExecSQL('Delete from ' + FUsercontrol.TableUsers.TableName + ' where ' +
- FUsercontrol.TableUsers.FieldUserID + ' = ' + IntToStr(TempID));
- FDataSetCadastroUsuario.Close;
- FDataSetCadastroUsuario.Open;
- end;
-end;
-
-procedure TUCFrame_User.BtPassClick(Sender: TObject);
-begin
- if FDataSetCadastroUsuario.IsEmpty then
- Exit;
-
- FormSenha := TSenhaForm.Create(Self);
- TSenhaForm(FormSenha).Position := FUsercontrol.UserSettings.WindowsPosition;
- TSenhaForm(FormSenha).FUsercontrol := FUsercontrol;
- TSenhaForm(FormSenha).Caption := Format(FUsercontrol.UserSettings.ResetPassword.WindowCaption,
- [FDataSetCadastroUsuario.FieldByName('Login').AsString]);
- if TSenhaForm(FormSenha).ShowModal = mrOk then
- Begin
-
-(*
- if (Assigned(FUsercontrol.MailUserControl)) and (FUsercontrol.MailUserControl.SenhaForcada.Ativo ) then
- try
- FUsercontrol.MailUserControl.EnviaEmailSenhaForcada(
- FDataSetCadastroUsuario.FieldByName('NOME').AsString ,
- FDataSetCadastroUsuario.FieldByName('LOGIN').AsString,
- TSenhaForm(FormSenha).edtSenha.Text ,
- FDataSetCadastroUsuario.FieldByName('EMAIL').AsString,
- '');
-
- except
- on E : Exception do FUsercontrol.Log(e.Message, 0);
- end;
-
-*)
- FUsercontrol.ChangePassword(FDataSetCadastroUsuario.FieldByName('IDUser').AsInteger, TSenhaForm(FormSenha).edtSenha.Text);
- End;
- FreeAndNil(FormSenha);
-end;
-
-destructor TUCFrame_User.Destroy;
-begin
- //nada a destruir
- //não destruir o FDataSetCadastroUsuario o USERCONTROL toma conta dele
- inherited;
-end;
-
-procedure TUCFrame_User.BtAcessClick(Sender: TObject);
-begin
- if FDataSetCadastroUsuario.IsEmpty then
- Exit;
- UserPermis := TUserPermis.Create(self);
- UserPermis.FUsercontrol := FUsercontrol;
- SetWindowUserProfile;
- UserPermis.lbUser.Caption := FDataSetCadastroUsuario.FieldByName('Login').AsString;
- ActionBtPermissUserDefault;
-end;
-
-procedure TUCFrame_User.SetWindowUserProfile;
-begin
- with FUsercontrol.UserSettings.Rights do
- begin
- UserPermis.Caption := WindowCaption;
- UserPermis.LbDescricao.Caption := LabelUser;
- UserPermis.lbUser.Left := UserPermis.LbDescricao.Left + UserPermis.LbDescricao.Width + 5;
- UserPermis.PageMenu.Caption := PageMenu;
- UserPermis.PageAction.Caption := PageActions;
- UserPermis.PageControls.Caption := PageControls; // By Vicente Barros Leonel
- UserPermis.BtLibera.Caption := BtUnlock;
- UserPermis.BtBloqueia.Caption := BtLOck;
- UserPermis.BtGrava.Caption := BtSave;
- UserPermis.BtCancel.Caption := BtCancel;
- UserPermis.Position := FUsercontrol.UserSettings.WindowsPosition;
- end;
-end;
-
-procedure TUCFrame_User.ActionBtPermissUserDefault;
-var
- TempCampos, TempCamposEX: String;
-begin
- UserPermis.FTempIdUser := FDataSetCadastroUsuario.FieldByName('IdUser').AsInteger;
- with FUsercontrol do
- begin
- TempCampos := Format(' %s as IdUser, %s as Modulo, %s as ObjName, %s as UCKey ', [TableRights.FieldUserID,
- TableRights.FieldModule, TableRights.FieldComponentName, TableRights.FieldKey]);
- TempCamposEX := Format(' %s, %s as FormName ', [TempCampos, TableRights.FieldFormName]);
-
- UserPermis.DSPermiss := DataConnector.UCGetSQLDataset(Format('SELECT %s FROM %s TAB WHERE TAB.%s = %s AND TAB.%s = %s',
- [TempCampos, TableRights.TableName, TableRights.FieldUserID, FDataSetCadastroUsuario.FieldByName('IdUser').AsString,
- TableRights.FieldModule, QuotedStr(ApplicationID)]));
- UserPermis.DSPermiss.Open;
-
- UserPermis.DSPermissEX := DataConnector.UCGetSQLDataset(Format('SELECT %s FROM %s TAB1 WHERE TAB1.%s = %s AND TAB1.%s = %s',
- [TempCamposEX, TableRights.TableName + 'EX', TableRights.FieldUserID, FDataSetCadastroUsuario.FieldByName('IdUser').AsString,
- TableRights.FieldModule, QuotedStr(ApplicationID)]));
- UserPermis.DSPermissEX.Open;
-
- UserPermis.DSPerfil := DataConnector.UCGetSQLDataset(Format('Select %s from %s tab Where tab.%s = %s and tab.%s = %s',
- [TempCampos, TableRights.TableName, TableRights.FieldUserID, FDataSetCadastroUsuario.FieldByName('Perfil').AsString,
- TableRights.FieldModule, QuotedStr(ApplicationID)]));
- UserPermis.DSPerfil.Open;
-
- UserPermis.DSPerfilEX := DataConnector.UCGetSQLDataset(Format('Select %s from %s tab1 Where tab1.%s = %s and tab1.%s = %s',
- [TempCamposEX, TableRights.TableName + 'EX', TableRights.FieldUserID, FDataSetCadastroUsuario.FieldByName('Perfil').AsString,
- TableRights.FieldModule, QuotedStr(ApplicationID)]));
-
- UserPermis.DSPerfilEX.Open;
-
- UserPermis.ShowModal;
-
- FDataSetCadastroUsuario.Close;
- FDataSetCadastroUsuario.Open;
-
- FDataSetCadastroUsuario.Locate('idUser', UserPermis.FTempIdUser, []);
-
- FreeAndNil(UserPermis);
- end;
-end;
-
-procedure TUCFrame_User.FDataSetCadastroUsuarioAfterScroll(DataSet: TDataSet);
-begin
- if (FUsercontrol.User.ProtectAdministrator) and (Dataset.FieldByName('Login').AsString = FUsercontrol.Login.InitialLogin.User) then
- begin
- BtExclui.Enabled := False;
- BtPass.Enabled := False;
- if FUsercontrol.CurrentUser.Username <> FUsercontrol.Login.InitialLogin.User then
- BtAcess.Enabled := False;
- end
- else
- begin
- BtExclui.Enabled := True;
- BtPass.Enabled := True;
- BtAcess.Enabled := True;
- end;
-end;
-
-
-procedure TUCFrame_User.SetWindow;
-begin
- FDataSetCadastroUsuario.AfterScroll := FDataSetCadastroUsuarioAfterScroll;
- FDataSetCadastroUsuarioAfterScroll(FDataSetCadastroUsuario);
- with FUsercontrol.UserSettings.UsersForm do
- begin
- DbGridUser.Columns[0].Title.Caption := ColName;
- DbGridUser.Columns[1].Title.Caption := ColLogin;
- DbGridUser.Columns[2].Title.Caption := ColEmail;
-
- btAdic.Caption := BtAdd;
- BtAlt.Caption := BtChange;
- BtExclui.Caption := BtDelete;
- BtAcess.Caption := BtRights;
- BtPass.Caption := BtPassword;
- BtnClose.Caption := BtClose;
- end;
-
-end;
-
-procedure TUCFrame_User.SetWindowUser(Adicionar: Boolean);
-begin
- with FUsercontrol.UserSettings.AddChangeUser do
- begin
- FfrmIncluirUsuario.Caption := WindowCaption;
- if Adicionar then
- FfrmIncluirUsuario.LbDescricao.Caption := LabelAdd
- else
- begin
- FfrmIncluirUsuario.LbDescricao.Caption := LabelChange;
- FfrmIncluirUsuario.LbDescricao.Tag := FDataSetCadastroUsuario.FieldByName('IdUser').AsInteger;
- end;
-
- FfrmIncluirUsuario.FDataSetCadastroUsuario := DataUser.DataSet;
- FfrmIncluirUsuario.Label1.Caption := LabelStatus;
- FfrmIncluirUsuario.lbNome.Caption := LabelName;
- FfrmIncluirUsuario.lbLogin.Caption := LabelLogin;
- FfrmIncluirUsuario.lbEmail.Caption := LabelEmail;
- FfrmIncluirUsuario.ckPrivilegiado.Caption := CheckPrivileged;
- FfrmIncluirUsuario.lbPerfil.Caption := LabelPerfil;
- FfrmIncluirUsuario.btGravar.Caption := BtSave;
- FfrmIncluirUsuario.btCancela.Caption := BtCancel;
- FfrmIncluirUsuario.Position := Self.FUsercontrol.UserSettings.WindowsPosition;
- FfrmIncluirUsuario.LabelExpira.Caption := ExpiredIn;
- FfrmIncluirUsuario.LabelDias.Caption := Day;
- FfrmIncluirUsuario.ckUserExpired.Caption := CheckExpira;
- FfrmIncluirUsuario.ComboPerfil.ListSource := DataPerfil;
- FfrmIncluirUsuario.ComboStatus.Enabled := not Adicionar;
- with FfrmIncluirUsuario.ComboStatus.Items do
- begin
- Clear;
- Add(StatusActive);
- Add(StatusDisabled);
- end;
- FfrmIncluirUsuario.ComboStatus.ItemIndex := 0;
- end;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/pUCGeral.dfm b/internal/2.31RC1/1/Source/pUCGeral.dfm
deleted file mode 100644
index 4b2f07d..0000000
--- a/internal/2.31RC1/1/Source/pUCGeral.dfm
+++ /dev/null
@@ -1,533 +0,0 @@
-object FormUserPerf: TFormUserPerf
- Left = 0
- Top = 0
- BorderStyle = bsDialog
- Caption = 'Controle de Usu'#225'rios'
- ClientHeight = 506
- ClientWidth = 692
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- KeyPreview = True
- OldCreateOrder = False
- Position = poScreenCenter
- OnClose = FormClose
- OnDestroy = FormDestroy
- OnKeyPress = FormKeyPress
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object Panel1: TPanel
- Left = 0
- Top = 0
- Width = 692
- Height = 41
- Align = alTop
- BevelOuter = bvNone
- Color = clWhite
- TabOrder = 0
- object LbDescricao: TLabel
- Left = 41
- Top = 0
- Width = 183
- Height = 41
- Align = alLeft
- Caption = 'Controle de Usu'#225'rios'
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -16
- Font.Name = 'Verdana'
- Font.Style = [fsBold]
- ParentFont = False
- Layout = tlCenter
- ExplicitHeight = 18
- end
- object Image1: TImage
- Left = 0
- Top = 0
- Width = 41
- Height = 41
- Align = alLeft
- Center = True
- Picture.Data = {
- 07544269746D617066090000424D660900000000000036000000280000001C00
- 00001C0000000100180000000000300900000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000CBC5D28B75A472
- 5199673F9863369B6334A06233A063349F63369F63389B633B97653E94694890
- 725A8C9189990000000000000000000000000000000000000000000000000000
- 00000000000000000000C2B0D55F27A06126AA6328AF652BB4672DB8682FBB69
- 30BD6931BE6830BD682FBB662DB8652BB36328AF6125AA5C239E674C83000000
- 0000000000000000000000000000000000000000000000000000000000007E51
- B16025A86328AE652BB4672EB96931BE6B33C16B34C46C35C56B34C46A33C169
- 31BE672EB9652BB46228AE6024A85B249A000000000000000000000000000000
- 0000000000000000000000000000000000006D3AA86127AC642AB2672EB86931
- BE6B34C36D36C86837BE693AC16E38CB6D36C76B34C36931BE672DB8642AB261
- 26AB59229B4B644D658963688B676D8C6D738E737B907C8D9B8FA7ACA8000000
- 0000000000007F50B36328AE652CB56830BC6B33C26D36C86E38CC596AB0698E
- D46E39CC6F39CD6D36C86B33C2682FBB652CB46228AE54268F39802942982F43
- 962F459330488D324A87334E80354C76385171498E968F000000B399CF642AB0
- 662DB76931BE6C35C56F38CC6338B95C9AC76DB9EB6557C7713CD26E38CB6C34
- C46931BE662DB66329AF4347613A9C2B3CA32C3DA12D3F9D2E43972F478F314C
- 8733517E365774385371470000000000007847B4662DB86931BF6C35C66F39CD
- 514CA55DA7D861AFE25A8ECF6E3ACD6F39CD6C35C66931BE662DB75631933491
- 2D35AE2935AF2936AD2A39A72B3EA02D43972F488E324E84345479374F713F00
- 00000000000000007444B66931BE6C35C56B36C5416AA14A8EBD4380AA407EA8
- 5448AE6E38CA6C35C56931BE593498368A3532B3282FB9272FBA2631B72734B0
- 2939A72B3F9E2E4593304B8833517E36547A470000000000000000000000007B
- 56AE6933BD5337A33775A13F85B73F88BC397DAD2C54804C288D6330B4483A76
- 2B702D31AA272EBC262CBA292AC0272BC02530B72736AD2A3CA22C43972F498C
- 324F80357695720000000000000000000F3C6925496D404775467DB64E9DD34E
- 9CD24C9AD04997CE4493CA3360900F2E5A02355F01346022832532B12FFFFFFF
- FFFFFF37BD362EBC2634B0293BA42C42992F488D324F853F0000000000000000
- 0000000001346802356A2C659555A2D755A3D854A2D753A1D6509ED44C9AD147
- 95CC1854880033660033661C742F70A173FFFFFFFFFFFFFFFFFF2FB42935AF29
- 3BA42C42992F488D390000000000000000000000000000000538710C3F755399
- CA5AA7DC5AA7DC5AA7DB58A5DA55A3D852A0D54D9BD23B85BB00336600336622
- 6139788B94648AA65782A1607E933D7444329C263CA02D529A4A000000000000
- 0000000000000000000000000B3E7B2961915DAADE5FADE05FADE05EACDF5CAA
- DD5AA7DC56A4D952A0D54C9AD0124C8000326530647F4E9BD04E9CD24C9AD048
- 97CE4187B42B604481A880000000000000000000000000000000000000000000
- 0E41824584B163B0E365B2E465B2E463B1E361AEE15DABDE5AA7DC55A3D8509E
- D4296B9F0033654180AC55A3D854A2D752A0D6509ED44C9AD04890C2838E9600
- 00000000000000000000000000000000000000001345855699C567B4E669B6E8
- 69B6E868B5E765B2E561AEE15DAADE58A5DA53A1D6397FB30133654888B45AA7
- DC59A7DB57A5DA55A3D852A0D54D9BD15087AF00000000000000000000000000
- 000000000000000016488B467EA54E8BB45EA0CA6BB4E46CB8EA68B5E764B1E4
- 5FACDF5AA7DC55A2D7387EB30234654F91BD5FACE05EABDF5CA9DD59A7DB56A4
- D952A0D54C98CE85929D0000000000000000000000000000000000001C4F9B1C
- 4F9C1E50A01F4F932C5C8D4C83AA63AAD965B2E460AEE15BA8DC529DD11D588B
- 083A6A5CA2D264B1E463B0E360ADE15DAADE59A7DB55A3D8509ED46488A10000
- 000000000000000000000000000000002E5EA72356AE2558B02457AF2255AB1D
- 4F9B2555874883AA5DA9DB488CBE174C8004376E1F548168B3E569B5E867B4E7
- 64B1E460ADE15CA9DD58A5DA53A1D6598AAE0000000000000000000000000000
- 00000000000000285BB62A5DBA295CB92659B22255AB1E51A1194A8C23558511
- 45830A3D7B0538704985AF6CB7E86EBAEC6CB8EA68B4E763B0E35EABDF5AA7DB
- 54A2D75690B90000000000000000000000000000000000000000003A69BB2F62
- C42D60C1295CB82457AE1F52A41A4D9A1548901043860B3E7C1A4D7B407A9F44
- 7A9D518AAE64A9D76AB5E764B1E460ADE15BA8DC55A2D75890B6000000000000
- 0000000000000000000000000000000000003768C32E61C2295CB92457AF1F52
- A51A4D9B1548911144861A4D82478AB54F96C34F96C34B8FBA427A9E497FA35D
- A4D360ADE0549CCD407EA74B6F85000000000000000000000000000000000000
- 000000000000000000406DBA285BB52356AC1E51A31B4E9916488E0000000000
- 00579FCC5AA2CF5AA2CF569ECB5198C5488CB63C72944680A83E80AA3D81AC76
- 8D9C000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000065A9D164AEDC64ADDC60A9
- D659A1CE5097C4478DB93E82AD3D82AD407BA200000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000006FB8E76EB9E768B1E05FA7D5559DCA4B91BE4086
- B13E81AA8EA6B600000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- A5CFE975BFEE6CB7E562ABD9579FCC4D93C04487B08CAABB0000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000008FC0DE70ACD1
- 6DA5C888AFC90000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000}
- Transparent = True
- ExplicitHeight = 35
- end
- end
- object Panel2: TPanel
- Left = 0
- Top = 41
- Width = 100
- Height = 465
- Align = alLeft
- BevelOuter = bvLowered
- Color = clSilver
- TabOrder = 1
- object SpeedUser: TSpeedButton
- Left = 1
- Top = 1
- Width = 98
- Height = 60
- Cursor = crHandPoint
- Align = alTop
- GroupIndex = 1
- Down = True
- Caption = '&Usu'#225'rios'
- Flat = True
- Glyph.Data = {
- 66090000424D660900000000000036000000280000001C0000001C0000000100
- 1800000000003009000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000CBC5D28B75A4725199673F9863369B
- 6334A06233A063349F63369F63389B633B97653E94694890725A8C9189990000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000C2B0D55F27A06126AA6328AF652BB4672DB8682FBB6930BD6931BE6830BD
- 682FBB662DB8652BB36328AF6125AA5C239E674C830000000000000000000000
- 000000000000000000000000000000000000000000007E51B16025A86328AE65
- 2BB4672EB96931BE6B33C16B34C46C35C56B34C46A33C16931BE672EB9652BB4
- 6228AE6024A85B249A0000000000000000000000000000000000000000000000
- 000000000000000000006D3AA86127AC642AB2672EB86931BE6B34C36D36C868
- 37BE693AC16E38CB6D36C76B34C36931BE672DB8642AB26126AB59229B4B644D
- 658963688B676D8C6D738E737B907C8D9B8FA7ACA80000000000000000007F50
- B36328AE652CB56830BC6B33C26D36C86E38CC596AB0698ED46E39CC6F39CD6D
- 36C86B33C2682FBB652CB46228AE54268F39802942982F43962F459330488D32
- 4A87334E80354C76385171498E968F000000B399CF642AB0662DB76931BE6C35
- C56F38CC6338B95C9AC76DB9EB6557C7713CD26E38CB6C34C46931BE662DB663
- 29AF4347613A9C2B3CA32C3DA12D3F9D2E43972F478F314C8733517E36577438
- 5371470000000000007847B4662DB86931BF6C35C66F39CD514CA55DA7D861AF
- E25A8ECF6E3ACD6F39CD6C35C66931BE662DB756319334912D35AE2935AF2936
- AD2A39A72B3EA02D43972F488E324E84345479374F713F000000000000000000
- 7444B66931BE6C35C56B36C5416AA14A8EBD4380AA407EA85448AE6E38CA6C35
- C56931BE593498368A3532B3282FB9272FBA2631B72734B02939A72B3F9E2E45
- 93304B8833517E36547A470000000000000000000000007B56AE6933BD5337A3
- 3775A13F85B73F88BC397DAD2C54804C288D6330B4483A762B702D31AA272EBC
- 262CBA292AC0272BC02530B72736AD2A3CA22C43972F498C324F803576957200
- 00000000000000000F3C6925496D404775467DB64E9DD34E9CD24C9AD04997CE
- 4493CA3360900F2E5A02355F01346022832532B12FFFFFFFFFFFFF37BD362EBC
- 2634B0293BA42C42992F488D324F853F00000000000000000000000001346802
- 356A2C659555A2D755A3D854A2D753A1D6509ED44C9AD14795CC185488003366
- 0033661C742F70A173FFFFFFFFFFFFFFFFFF2FB42935AF293BA42C42992F488D
- 390000000000000000000000000000000538710C3F755399CA5AA7DC5AA7DC5A
- A7DB58A5DA55A3D852A0D54D9BD23B85BB003366003366226139788B94648AA6
- 5782A1607E933D7444329C263CA02D529A4A0000000000000000000000000000
- 000000000B3E7B2961915DAADE5FADE05FADE05EACDF5CAADD5AA7DC56A4D952
- A0D54C9AD0124C8000326530647F4E9BD04E9CD24C9AD04897CE4187B42B6044
- 81A8800000000000000000000000000000000000000000000E41824584B163B0
- E365B2E465B2E463B1E361AEE15DABDE5AA7DC55A3D8509ED4296B9F00336541
- 80AC55A3D854A2D752A0D6509ED44C9AD04890C2838E96000000000000000000
- 0000000000000000000000001345855699C567B4E669B6E869B6E868B5E765B2
- E561AEE15DAADE58A5DA53A1D6397FB30133654888B45AA7DC59A7DB57A5DA55
- A3D852A0D54D9BD15087AF000000000000000000000000000000000000000000
- 16488B467EA54E8BB45EA0CA6BB4E46CB8EA68B5E764B1E45FACDF5AA7DC55A2
- D7387EB30234654F91BD5FACE05EABDF5CA9DD59A7DB56A4D952A0D54C98CE85
- 929D0000000000000000000000000000000000001C4F9B1C4F9C1E50A01F4F93
- 2C5C8D4C83AA63AAD965B2E460AEE15BA8DC529DD11D588B083A6A5CA2D264B1
- E463B0E360ADE15DAADE59A7DB55A3D8509ED46488A100000000000000000000
- 00000000000000002E5EA72356AE2558B02457AF2255AB1D4F9B2555874883AA
- 5DA9DB488CBE174C8004376E1F548168B3E569B5E867B4E764B1E460ADE15CA9
- DD58A5DA53A1D6598AAE00000000000000000000000000000000000000000028
- 5BB62A5DBA295CB92659B22255AB1E51A1194A8C2355851145830A3D7B053870
- 4985AF6CB7E86EBAEC6CB8EA68B4E763B0E35EABDF5AA7DB54A2D75690B90000
- 000000000000000000000000000000000000003A69BB2F62C42D60C1295CB824
- 57AE1F52A41A4D9A1548901043860B3E7C1A4D7B407A9F447A9D518AAE64A9D7
- 6AB5E764B1E460ADE15BA8DC55A2D75890B60000000000000000000000000000
- 000000000000000000003768C32E61C2295CB92457AF1F52A51A4D9B15489111
- 44861A4D82478AB54F96C34F96C34B8FBA427A9E497FA35DA4D360ADE0549CCD
- 407EA74B6F850000000000000000000000000000000000000000000000000000
- 00406DBA285BB52356AC1E51A31B4E9916488E000000000000579FCC5AA2CF5A
- A2CF569ECB5198C5488CB63C72944680A83E80AA3D81AC768D9C000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000065A9D164AEDC64ADDC60A9D659A1CE5097C447
- 8DB93E82AD3D82AD407BA2000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000006FB8E76EB9E768B1E05FA7D5559DCA4B91BE4086B13E81AA8EA6B600
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000000000000000A5CFE975BFEE6CB7
- E562ABD9579FCC4D93C04487B08CAABB00000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000008FC0DE70ACD16DA5C888AFC90000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000}
- Layout = blGlyphTop
- OnClick = SpeedUserClick
- OnMouseEnter = SpeedUserMouseEnter
- OnMouseLeave = SpeedUserMouseLeave
- ExplicitLeft = -4
- ExplicitTop = 6
- ExplicitWidth = 95
- end
- object SpeedPerfil: TSpeedButton
- Left = 1
- Top = 61
- Width = 98
- Height = 60
- Cursor = crHandPoint
- Align = alTop
- GroupIndex = 1
- Caption = '&Perfil'
- Flat = True
- Glyph.Data = {
- 66090000424D660900000000000036000000280000001C0000001C0000000100
- 1800000000003009000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000008E40198E40198E40198E40198E40198E40198E40198E40198E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40198E40198E40198E40
- 198E40198E40198E40198E40198E40198E40190000000000008E4018A24E00A2
- 4E00A24E00A24E00A24E00A24E00A24E00A24E00A24E00A24E00A24E00A24E00
- A24E00A24E00A24E00A24E00A24E00A24E00A24E00A24E00A24E00A24E00A24E
- 00A24E008E4019000000000000A2511BF9F6F4B7A293B7A293B7A293B7A293B7
- A293B7A293B7A293B7A293B7A293B7A293B7A293B7A293B7A293B7A293B7A293
- B7A293B7A293B7A293B7A293B7A293B7A293B7A293B7A2939242180000000000
- 00AE5919FAF8F6F9F6F4F7F3F1F5F1EEF4EEEBF2ECE8F1EAE6EFE7E3EDE5E0EC
- E3DEEBE1DBE9DED7E7DBD4E5D9D1E3D6CEE2D3CBE0D1C8DECEC5DCCBC2DBC9BF
- DBC9BFDBC9BFDBC9BFB7A2938E4019000000000000B15A17FDFCFBFBF9F8F9F7
- F5F7F3F1F5F1EEF4EEEBF2ECE8F1EAE6EFE7E3EDE5E0ECE3DEEBE1DBE9DED7E7
- DBD4E5D9D1E3D6CEE2D3CBE0D1C8DECEC5DCCBC2DBC9BFDBC9BFDBC9BFB7A293
- 8E4019000000000000B45C17FEFEFDFDFCFBFBF9F8F9F7F5F8F4F2F6F2EFF5F0
- EDF3EDEAF1EBE7EFE7E3EDE5E0ECE3DEEBE1DBE9DED7E7DBD4E5D9D1E3D6CEE2
- D3CBE0D1C8DECEC5DCCBC2DBC9BFDBC9BFB7A2938E4019000000000000B75E16
- FFFFFFFEFEFDFDFCFBFBF9F8F9F7F5F8F4F2F6F2EFF5F0EDF3EDEAF1EBE7F0E8
- E4EEE6E1EDE4DFEBE2DCE9DED7B7A29369473169473169473169473169473169
- 4731694731B7A2938E4019000000000000B96016FFFFFFFFFFFFFEFEFDFDFCFB
- FBF9F8F9F7F5F8F4F2F6F2EFF5F0EDF3EDEAF1EBE7F0E8E4EEE6E1EDE4DFEBE2
- DCB7A293FFFFFFFCFDFF5476FFE4E9FFFFFFFFFFFFFF694731B7A2938E401900
- 0000000000BC6215FFFFFFFFFFFFFFFFFFFEFEFDFDFCFBFBF9F8F9F7F5F8F4F2
- F6F2EFF5F0EDF3EDEAF1EBE7F0E8E4EEE6E1EDE4DFB7A293FFFFFFB4C3FF0033
- FF2450FFFCFDFFFFFFFF694731B7A2938E4019000000000000BF6415FFFFFFFF
- FFFFFFFFFFFFFFFFFEFEFDFDFCFBFBF9F8F9F7F5F8F4F2F6F2EFF5F0EDF3EDEA
- F1EBE7F0E8E4EEE6E1B7A293FFFFFF4066FF0C3DFF0033FF9CB0FFFFFFFF6947
- 31B7A2938E4019000000000000C06614FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
- FEFDFDFCFBFBF9F8F9F7F5F8F4F2F6F2EFF5F0EDF3EDEAF1EBE7F0E8E4B7A293
- 8CA3FF0033FF708DFF6483FF1846FFF0F3FF694731B7A2938E40190000000000
- 00C36814FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFCFCFAF9FA
- F8F6F9F6F4F6F2EFF5F0EDF3EDEAF1EBE7B7A29388A0FF1C49FFE4E9FFF0F3FF
- 204DFF6080FF694731B7A2938E4019000000000000C66A13FFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFCFCFAF9FAF8F6F9F6F4F7F3F1F5
- F1EEF4EEEBB7A293FFFFFFFFFFFFFFFFFFFFFFFF9CB0FF0C3DFF6080FFB7A293
- 8E4019000000000000C96C13FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFDFDFCFCFAF9FAF8F6F9F6F4F7F3F1F5F1EEB7A293B7A293B7
- A293B7A293B7A293B7A2939CB0FF1443FF6080FF8E4019000000000000CB6D12
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFD
- FCFCFAF9FAF8F6F9F6F4F7F3F1F5F1EEF4EEEBF2ECE8F1EAE6EFE7E3EDE5E0EC
- E3DE9CB0FF345DFF8E4019000000000000CB6D12FFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFCFCFAF9FAF8F6F9F6
- F4B7A2936947316947316947316947316947316947316947319CB0FF486DFF00
- 0000000000CB6D12FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFDFDFCFCFAF9FAF8F6B7A293FFFFFFFCFDFF5476
- FFE4E9FFFFFFFFFFFFFF694731B7A2939CB0FF7893FF000000CB6D12FFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFDFDFCFCFAF9B7A293FFFFFFB4C3FF0033FF2450FFFCFDFFFFFFFF6947
- 31B7A2938E4019000000000000CB6D12FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFDB7A293
- FFFFFF4066FF0C3DFF0033FF9CB0FFFFFFFF694731B7A2938E40190000000000
- 00CB6D12FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7A2938CA3FF0033FF708DFF6483FF
- 1846FFF0F3FF694731B7A2938E4019000000000000CA6C11F3EDEAF3EDEAF3ED
- EAF3EDEAF3EDEAF3EDEAF3EDEAF3EDEAF3EDEAF3EDEAF3EDEAF3EDEAF3EDEAF3
- EDEAF3EDEAB7A29388A0FF1C49FFE4E9FFF0F3FF204DFF6080FF694731F3EDEA
- 8E4019000000000000B963038E40198E40198E40198E40198E40198E40198E40
- 198E40198E40198E40198E40198E40198E40198E40198E4019B7A293FFFFFFFF
- FFFFFFFFFFFFFFFF9CB0FF0C3DFF6080FF8E40198E4019000000000000B96303
- B45C00B45C00B45C00B45C00B45C00B45C00B45C00B55B00B55B00B55B00B55B
- 00B55B00B55B00B45C00B45C00B7A293B7A293B7A293B7A293B7A293B7A2939C
- B0FF1443FF6080FF8E4019000000000000E3A660E38E2DE38E2DE38E2DE38E2D
- E38E2DE38E2DE38E2DE38E2DE38E2DE38E2DE38E2DE38E2DE38E2DE38E2DE38E
- 2DE38E2DF6CA9AF19F43E38E2DF6CA9AF19F43E38E2D9CB0FF345DFFE3A66000
- 0000000000F8EBDCE3A660D27100D27100D27100D27100D27100D27100D27100
- D27100D27100D27100D27100D27100D27100D27100D27100D27100D27100D271
- 00D27100D27100D27100D271009CB0FF486DFF00000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000009CB0FF7893FF}
- Layout = blGlyphTop
- OnClick = SpeedPerfilClick
- OnMouseEnter = SpeedUserMouseEnter
- OnMouseLeave = SpeedUserMouseLeave
- ExplicitLeft = -4
- ExplicitTop = 45
- end
- object SpeedLog: TSpeedButton
- Left = 1
- Top = 121
- Width = 98
- Height = 60
- Cursor = crHandPoint
- Align = alTop
- GroupIndex = 1
- Caption = '&Log'
- Flat = True
- Glyph.Data = {
- 66090000424D660900000000000036000000280000001C0000001C0000000100
- 1800000000003009000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000000000000000000000E5E0DC885D
- 40694731694731885D40E5E0DC00000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000E5E0DC694731B7A293B7A293B7A293B7A2936947
- 31E5E0DC00000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000E5E0DC
- 694731B7A293E4D7CFE3D5CDE1D3CBE0D1C8B7A293694731E5E0DC0000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000E5E0DC694731B7A293E7DBD4E5D9D2E4D7CF
- E3D5CDE1D3CBE0D1C8B7A293694731E5E0DC0000000000000000000000000000
- 00000000000000000000000000000000000000000000000000000000000000E5
- E0DC694731B7A293E9DFD9E8DDD7E7DBD4983000983000E3D5CDE1D3CBE0D1C8
- B7A293694731E5E0DC0000000000000000000000000000000000000000000000
- 00000000000000000000000000000000E5E0DC694731B7A293EDE4DFEBE2DDEA
- E0DA983000C86000C86000983000E3D5CDE1D3CBE0D1C8B7A293694731E5E0DC
- 0000000000000000000000000000000000000000000000000000000000000000
- 00E5E0DC694731B7A293EFE8E3EEE6E1EDE4DF983000C86000F57E46F57940C8
- 6000983000E3D6CEE1D3CBE0D1C8B7A293694731E5E0DC000000000000000000
- 000000000000000000000000000000000000E5E0DC694731B7A293F2ECE8F1EA
- E6EFE8E3973000C35D00E68250E37B4AE27743E3733EBE5B00962F00E3D6CEE2
- D4CCE1D2C9B7A293694731E5E0DC000000000000000000000000000000000000
- 000000E5E0DC694731B7A293F5F0EDF3EEEBF2ECE8983000C55E00E0865ABE6F
- 47AC613CAA5C37B25E35CD6838C05C00983000E3D6CEE2D4CCE1D2C9B7A29369
- 4731E5E0DC000000000000000000000000000000E5E0DC694731B7A293F6F2EF
- F6F2EFF5F0ED983000C86000F49C6EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF6D
- 3EEE7941C86000983000E3D6CEE2D4CCE1D2C9B7A293694731E5E0DC00000000
- 0000000000E5E0DC694731B7A293F6F2EFF9F7F5F8F5F3983000C86000F8A77B
- F7A175EEA078FFFFFFFFFFFFFFFFFFAE6C4CDE7948F38048F57C43C860009830
- 00E3D6CEE2D4CCE1D2C9B7A293694731E5E0DC000000E5E0DC694731B7A293F6
- F2EFFCFBFAFBF9F8983000C86000F9B187F9AC81F8A77BF09D71FFFFFFFFFFFF
- FFFFFFAA6340E3804FF68650F58149F57C43C86000983000E3D6CEE2D4CCE1D2
- C9B7A293694731E5E0DCB7A293D0BBACF6F2EFFFFFFFFDFDFDA33705C86000FA
- BA93FAB58DF9B187F9AC81F0A277FFFFFFFFFFFFFFFFFFAA6644E48556F68B56
- F68650F58149F57C43C86000983000E3D6CEE2D4CCE1D2C9B7A293885D40B7A2
- 93F6F2EFFFFFFFFFFFFFC86000F68B56FBC39FFBBF99FABA93FAB58DF9B187F1
- A77DFFFFFFFFFFFFFFFFFFAA6948E4885BF7905DF68B56F68650F58149F57C43
- C86000983000E4D7CFE3D5CDB7A293694731D0BBACFFFFFFFFFFFFFFFFFFC860
- 00FBC39FFBC39FFBC39FFBC19CFBBD96F9B78FEBA882FFFFFFFFFFFFFFFFFFAA
- 6E4EE48F64F79766F79260F68D59F68853F6834DC86000983000E5D9D2E4D7CF
- B7A293694731D0BBACF6F2EFFFFFFFFFFFFFFFFFFFC86000FBC39FFBC39FFBC3
- 9FFBC19CF7BA94E2A987FFFFFFFFFFFFFFFFFFAD7354E6946AF79B6CF79766F7
- 9260F68D59C86000983000E8DDD7E7DBD4E5D9D2B7A293885D40ECE4DED0BBAC
- F6F2EFFFFFFFFFFFFFFFFFFFC86000FBC39FFBC39FFBC39FF8BF9AFFFFFFFFFF
- FFFFFFFFFFFFFFC08361E99B71F8A072F79B6CF79766C86000983000EBE1DCE9
- DFD9E8DDD7B7A293694731E5E0DC000000ECE4DED0BBACF6F2EFFFFFFFFFFFFF
- FFFFFFC86000FBC39FFBC39FFAC29EF7C29FF0C2A6ECCEBCF8EFE9DA9873F1A5
- 7AF8A578F8A072C86000983000EDE5E0ECE3DEEBE1DCB7A293694731E5E0DC00
- 0000000000000000ECE4DED0BBACF6F2EFFFFFFFFFFFFFFFFFFFC86000FBC39F
- FBC39FF8C19DE5B08FC49375B8886AD29674F0A87FF9AA7EC86000983000F1EA
- E6EFE8E3EEE6E1B7A293694731E5E0DC000000000000000000000000000000EC
- E4DED0BBACF6F2EFFFFFFFFFFFFFFFFFFFC86000FBC39FF5BE9BEDD7C9FFFFFF
- D0BFB4BD8B6DECA982C86000983000F3EEEBF2ECE8F1EAE6B7A293694731E5E0
- DC000000000000000000000000000000000000000000ECE4DED0BBACF6F2EFFF
- FFFFFFFFFFFFFFFFC86000F6BF9CFFFFFFFFFFFFFFFFFFC79677BF5B00983000
- F6F2EFF5F0EDF3EEEBB7A293694731E5E0DC0000000000000000000000000000
- 00000000000000000000000000ECE4DED0BBACF6F2EFFFFFFFFFFFFFFFFFFFC6
- 5F00F8E0D0FFFFFFEDD7C9B85800952F00F9F6F4F7F4F2F6F2EFB7A293694731
- E5E0DC0000000000000000000000000000000000000000000000000000000000
- 00000000ECE4DED0BBACF6F2EFFFFFFFFFFFFFFFFFFFC65F00F6BF9CF0885496
- 2F00FAF9F8FAF8F7F6F2EFB7A293694731E5E0DC000000000000000000000000
- 000000000000000000000000000000000000000000000000000000ECE4DED0BB
- ACF6F2EFFFFFFFFFFFFFFFFFFFC86000C86000FFFFFFFDFDFDF6F2EFB7A29369
- 4731E5E0DC000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000ECE4DED0BBACF6F2EFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFF6F2EFB7A293694731E5E0DC00000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000ECE4DEE2C0B1F6F2EFFFFFFFFFFFFFFFFFFFF6F2EFB7A2
- 93694731E5E0DC00000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- ECE4DED0BBACF6F2EFFFFFFFF6F2EFD0BBAC694731E5E0DC0000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000ECE4DED0BBACD0BBAC
- B7A293B7A293E5E0DC0000000000000000000000000000000000000000000000
- 00000000000000000000}
- Layout = blGlyphTop
- OnClick = SpeedLogClick
- OnMouseEnter = SpeedUserMouseEnter
- OnMouseLeave = SpeedUserMouseLeave
- ExplicitLeft = -4
- ExplicitTop = 115
- end
- object SpeedUserLog: TSpeedButton
- Left = 1
- Top = 181
- Width = 98
- Height = 60
- Cursor = crHandPoint
- Align = alTop
- GroupIndex = 1
- Caption = 'Usu'#225'rios Logados'
- Flat = True
- Glyph.Data = {
- 66090000424D660900000000000036000000280000001C0000001C0000000100
- 18000000000030090000C40E0000C40E00000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000084
- C6E70000000000000000000000000000000000000000000000000000006B8C73
- 5A845A527B4A4A7B4A4A7B4A4A7B424A7B4A4A7B4A4A7B4A527B52527B525A7B
- 5A637B6B7B8C7BA5A5A50000000000009CD6EF7BE7F77BB5D600000000000000
- 00000000000000000000004A73394A7B314A84314A8C314A8C31429431429429
- 429429429C294294294294314294314A8C314A8C3163BDDEB5CEDE4A8C31527B
- 310000007BB5CE52CEE7317BAD7B737B847373ADADAD0000000000005A733952
- 7B314A84314A8C31429431429429429C29399C2939A52939A52939A529399C29
- 429C294294319CD6EF7BEFF7398CBD8C8C9494737B94636373637321A5D6297B
- AD845A63945252846B6B000000000000527B315284314A8C31429431429C2939
- 9C2939A52939AD2931AD2931AD2939AD2939A52939A529429C2994B5C642BDE7
- 1884BD846B7BBD6B6BB56B63AD636B42ADD6318CBD8C5A639C5A5A7352520000
- 00000000527B314A84314A8C31429429399C2939A52931AD2931B52931B52931
- B52931B52931AD2939AD2939AD29B573734294C6299CCE846B84C66B6BBD6B6B
- B56B6B6384A55284A5A56363A55A5A845252000000000000527B314A8C314294
- 31429C2939A52931AD2931B52929BD2129BD2129BD2129BD2131B52131AD29CE
- 9C9CDE7B7B7B8CA542ADD6947384CE7373C66B6BBD6B6BB56363A55A5AA56363
- AD73739473730000000000005284314A8C31429431399C2939A52931AD2931BD
- 2129BD2131B53129BD2929C62129BD2131B529CEADADE77B7BD67B7B947B8CBD
- 7373BD7373B57373B58484C6A5A5DEB5B5DEBDBDDEBDBD9C8484000000000000
- 5A944A4A8C31429431399C2939AD2931B52929BD214AA54AFFFFFFFFFFFF42BD
- 4229C62131B52139AD29B57B7BCEA5A5D6BDBDDEC6C6E7CECEE7C6C6DEB5B5DE
- A5A5DEB5B5E7C6C6D6ADADB59C9C0000000000000000004A8C39429431399C29
- 39AD2931B52929AD29FFFFFFFFFFFFFFFFFFFFFFFF31B53131B52131AD29C69C
- 9CF7EFEFF7DEDEE7B5B5E7B5B5E7BDBDEFCECEEFD6D6E7CECEE7C6C6B58C8C00
- 00000000000000000000000000004A9C42429C2939A52931AD29528C529C9C9C
- 7B8C946B7B8C737B845A7B5A299C2139AD2939AD29C6A5A5E7D6D6F7E7E7EFDE
- DEE7B5B5DEADADE7B5B5D6BDBDBD949400000000000000000000000000000000
- 00000000007BB57B399C293194314A7B944A94C64A9CCE4A94CE4294CE427BA5
- 215231297B214A9C42000000DEC6C6C6ADADC6A5A5CEA5A5BD9C9CA584848C7B
- 7B0000000000000000000000000000000000000000000000000000000000004A
- 94AD52A5D652A5D6529CD64A9CD64A9CD64A94CE428CBD426363000000000000
- 000000000000000000000000ADB5B5A5A5A57373730000000000000000000000
- 0000000000000000000000000000000073ADD652A5DE52A5DE52A5DE52A5DE52
- A5D652A5D64A9CD64A9CD6428CC6737B84000000000000000000D6D6D6ADADAD
- 8C9494B5B5B58C94940000000000000000000000000000000000000000000000
- 000000005AA5DE5AADDE5AADDE5AADDE5AA5DE5AA5DE52A5DE52A5D6529CD64A
- 9CD64A7BA50000000000000000009C9C9CBDBDBDB5B5B5B5B5B5000000000000
- 0000000000000000000000000000000000000000005AA5D65AADDE5AADE75AAD
- E75AADE75AADDE5AADDE5AA5DE52A5DE52A5D6529CD64A94CE00000000000000
- 0000ADB5B5C6C6C6000000000000000000000000000000000000000000000000
- 00000000000000000063ADE763ADE763B5E763B5E763B5E763ADE75AADE75AAD
- DE5AA5DE52A5DE52A5D64A9CD65A7B9400000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000007BB5DE63B5E7
- 63B5E763B5E76BB5E763B5E763B5E763B5E763ADE75AADDE5AA5DE52A5DE529C
- D64A84AD00000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000063ADDE63B5E76BB5EF6BB5EF6BBDEF6BB5EF
- 6BB5EF63B5E763ADE75AADE75AADDE52A5DE52A5D64A8CBD0000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000063ADDE5294BD528CB55A9CCE6BB5E76BBDEF6BBDEF6BB5E763B5E763ADE7
- 5AADDE5AA5DE52A5D64A94C60000000000000000000000000000000000000000
- 000000000000000000000000000000000000000000004A8CBD4284AD4284AD39
- 7B9C39738C4A7BA563A5D66BB5E763B5E763ADE75AADDE5AA5DE52A5D64A8CB5
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000005294BD4A94C64A94C65294C64A94C64A8CB539739442
- 73945A9CCE63ADE75AADDE4A8CBD39739C39637B000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00529CCE5AA5CE5AA5CE529CCE529CCE4A94C6428CB5396B8C427B9C4284B539
- 7BAD3984AD5A7B8C000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000005AA5D663ADDE63ADDE5AAD
- D65AA5D6529CCE4A94C6428CBD397BA5397BAD3984AD397BA500000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000007BB5D66BB5E76BB5E763B5DE63ADDE5AA5D6529CC64A94
- BD428CB53984AD3984AD63849C00000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 73BDE773BDEF6BBDEF63B5DE5AA5D6529CCE4A94C6428CB53984AD5284A50000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000007BBDEF73BDEF6BB5E7
- 63ADD65AA5CE4A94C6428CB56B94B50000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000084BDDE73ADCE73A5C6000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000}
- Layout = blGlyphTop
- OnClick = SpeedUserLogClick
- OnMouseEnter = SpeedUserMouseEnter
- OnMouseLeave = SpeedUserMouseLeave
- ExplicitLeft = -4
- ExplicitTop = 301
- end
- end
- object Panel3: TPanel
- Left = 100
- Top = 41
- Width = 592
- Height = 465
- Align = alClient
- BevelOuter = bvNone
- TabOrder = 2
- end
-end
diff --git a/internal/2.31RC1/1/Source/pUCGeral.pas b/internal/2.31RC1/1/Source/pUCGeral.pas
deleted file mode 100644
index bcceedf..0000000
--- a/internal/2.31RC1/1/Source/pUCGeral.pas
+++ /dev/null
@@ -1,217 +0,0 @@
-unit pUCGeral;
-
-interface
-
-uses
- Buttons,
- Classes,
- ComCtrls,
- Controls,
- DB,
- DBGrids,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Grids,
- Messages,
- StdCtrls,
- SysUtils,
- UcBase,
- Variants,
- Windows;
-
-type
- TFormUserPerf = class(TForm)
- Panel1: TPanel;
- LbDescricao: TLabel;
- Image1: TImage;
- Panel2: TPanel;
- SpeedUser: TSpeedButton;
- SpeedPerfil: TSpeedButton;
- Panel3: TPanel;
- SpeedLog: TSpeedButton;
- SpeedUserLog: TSpeedButton;
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
- procedure FormShow(Sender: TObject);
- procedure SpeedUserClick(Sender: TObject);
- procedure SpeedPerfilClick(Sender: TObject);
- procedure SpeedLogClick(Sender: TObject);
- procedure SpeedUserLogClick(Sender: TObject);
- procedure SpeedUserMouseEnter(Sender: TObject);
- procedure SpeedUserMouseLeave(Sender: TObject);
- procedure FormKeyPress(Sender: TObject; var Key: Char);
- procedure FormDestroy(Sender: TObject);
- protected
- FrmFrame: TCustomFrame;
- private
- { Private declarations }
- public
- FUsercontrol: TUserControl;
- { Public declarations }
- end;
-
-var
- FormUserPerf: TFormUserPerf;
-
-implementation
-
-uses
- pUCFrame_Log,
- pUcFrame_Profile,
- pUcFrame_User,
- pUcFrame_UserLogged,
- UCMessages;
-
-{$R *.dfm}
-
- { --------------------------------------------------------------------------- }
- { FORM }
-
-procedure TFormUserPerf.FormClose(Sender: TObject; var Action: TCloseAction);
-begin
- if Assigned(FrmFrame) then
- FreeAndNil(FrmFrame);
- Action := caFree;
-end;
-
-procedure TFormUserPerf.FormDestroy(Sender: TObject);
-begin
- FreeAndNil( FrmFrame );
-end;
-
-procedure TFormUserPerf.FormKeyPress(Sender: TObject; var Key: Char);
-begin
- if key = #27 then
- Close;
-end;
-
-procedure TFormUserPerf.FormShow(Sender: TObject);
-begin
- with FUsercontrol do
- begin
- FUsercontrol.CurrentUser.PerfilUsuario := DataConnector.UCGetSQLDataset(
- Format('Select %s as IdUser, %s as Login, %s as Nome, %s as Email, %s as Perfil, %s as Privilegiado, %s as Tipo, %s as Senha, %s as UserNaoExpira, %s as DaysOfExpire , %s as UserInative from %s Where %s = %s ORDER BY %s', [TableUsers.FieldUserID, TableUsers.FieldLogin, TableUsers.FieldUserName, TableUsers.FieldEmail, TableUsers.FieldProfile, TableUsers.FieldPrivileged, TableUsers.FieldTypeRec, TableUsers.FieldPassword, TableUsers.FieldUserExpired, TableUsers.FieldUserDaysSun, TableUsers.FieldUserInative, TableUsers.TableName, TableUsers.FieldTypeRec, QuotedStr('U'), TableUsers.FieldLogin]));
-
- FUsercontrol.CurrentUser.PerfilGrupo := DataConnector.UCGetSQLDataset(
- Format('Select %s as IdUser, %s as Login, %s as Nome, %s as Tipo from %s Where %s = %s ORDER BY %s',
- [TableUsers.FieldUserID, TableUsers.FieldLogin, TableUsers.FieldUserName, TableUsers.FieldTypeRec,
- TableUsers.TableName, TableUsers.FieldTypeRec, QuotedStr('P'), TableUsers.FieldUserName]));
- end;
- SpeedPerfil.Visible := FUsercontrol.UserProfile.Active;
- SpeedLog.Visible := FUsercontrol.LogControl.Active;
- SpeedUserLog.Visible := FUsercontrol.UsersLogged.Active;
-
- SpeedUserClick(Sender);
- Caption := FUsercontrol.UserSettings.UsersForm.WindowCaption;
-
- SpeedUser.Caption := FUsercontrol.UserSettings.Log.ColUser;
- SpeedPerfil.Caption := FUsercontrol.UserSettings.UsersProfile.ColProfile;
- SpeedUserLog.Caption := FUsercontrol.UserSettings.UsersLogged.LabelDescricao;
-
-end;
-
-procedure TFormUserPerf.SpeedPerfilClick(Sender: TObject);
-begin
- if FrmFrame is TFrame_Profile then
- Exit;
- if Assigned(FrmFrame) then
- FreeAndNil(FrmFrame);
-
- FrmFrame := TFrame_Profile.Create(Self);
- TFrame_Profile(FrmFrame).DataPerfil.DataSet := FUsercontrol.CurrentUser.PerfilGrupo;
- TFrame_Profile(FrmFrame).BtnClose.ModalResult := mrOk;
- TFrame_Profile(FrmFrame).Height := Panel3.Height;
- TFrame_Profile(FrmFrame).Width := Panel3.Width;
- TFrame_Profile(FrmFrame).FDataSetPerfilUsuario := FUsercontrol.CurrentUser.PerfilGrupo;
- TFrame_Profile(FrmFrame).FUsercontrol := FUsercontrol;
- TFrame_Profile(FrmFrame).DbGridPerf.Columns[0].Title.Caption := FUsercontrol.UserSettings.UsersProfile.ColProfile;
- with FUsercontrol.UserSettings.UsersProfile, TFrame_Profile(FrmFrame) do
- begin
- lbDescricao.Caption := LabelDescription;
- BtnAddPer.Caption := BtAdd;
- BtnAltPer.Caption := BtChange;
- BtnExcPer.Caption := BtDelete;
- BtnAcePer.Caption := BtRights;
- BtnClose.Caption := BtClose;
- end;
- FrmFrame.Parent := Panel3;
-end;
-
-procedure TFormUserPerf.SpeedUserClick(Sender: TObject);
-begin
- if FrmFrame is TUCFrame_User then
- Exit;
-
- if Assigned(FrmFrame) then
- FreeAndNil(FrmFrame);
-
- FrmFrame := TUCFrame_User.Create(Self);
- TUCFrame_User(FrmFrame).FDataSetCadastroUsuario := FUsercontrol.CurrentUser.PerfilUsuario;
- TUCFrame_User(FrmFrame).DataUser.DataSet := TUCFrame_User(FrmFrame).FDataSetCadastroUsuario;
- TUCFrame_User(FrmFrame).DataPerfil.DataSet := FUsercontrol.CurrentUser.PerfilGrupo;
- TUCFrame_User(FrmFrame).BtnClose.ModalResult := mrOk;
- TUCFrame_User(FrmFrame).FUsercontrol := FUsercontrol;
- TUCFrame_User(FrmFrame).Height := Panel3.Height;
- TUCFrame_User(FrmFrame).Width := Panel3.Width;
- TUCFrame_User(FrmFrame).SetWindow;
- lbDescricao.Caption := FUsercontrol.UserSettings.UsersForm.LabelDescription;
-
- FrmFrame.Parent := Panel3;
-end;
-
-procedure TFormUserPerf.SpeedUserLogClick(Sender: TObject);
-begin
- if FrmFrame is TUCFrame_UsersLogged then
- Exit;
-
- if Assigned(FrmFrame) then
- FreeAndNil(FrmFrame);
-
- FrmFrame := TUCFrame_UsersLogged.Create(Self);
- lbDescricao.Caption := FUsercontrol.UserSettings.UsersLogged.LabelDescricao;
- TUCFrame_UsersLogged(FrmFrame).FUsercontrol := FUsercontrol;
- TUCFrame_UsersLogged(FrmFrame).SetWindow;
- TUCFrame_UsersLogged(FrmFrame).Height := Panel3.Height;
- TUCFrame_UsersLogged(FrmFrame).Width := Panel3.Width;
- TUCFrame_UsersLogged(FrmFrame).BtExit.ModalResult := mrOk;
- FrmFrame.Parent := Panel3;
-end;
-
-procedure TFormUserPerf.SpeedUserMouseEnter(Sender: TObject);
-begin
- with TSpeedButton(Sender) do
- begin
- Font.Style := [fsUnderline];
- Cursor := crHandPoint;
- end;
-end;
-
-procedure TFormUserPerf.SpeedUserMouseLeave(Sender: TObject);
-begin
- with TSpeedButton(Sender) do
- begin
- Font.Style := [];
- Cursor := crDefault;
- end;
-end;
-
-procedure TFormUserPerf.SpeedLogClick(Sender: TObject);
-begin
- if FrmFrame is TUCFrame_Log then
- Exit;
-
- if Assigned(FrmFrame) then
- FreeAndNil(FrmFrame);
-
- FrmFrame := TUCFrame_Log.Create(Self);
- lbDescricao.Caption := FUsercontrol.UserSettings.Log.LabelDescription;
- TUCFrame_Log(FrmFrame).FUsercontrol := FUsercontrol;
- TUCFrame_Log(FrmFrame).SetWindow;
- TUCFrame_Log(FrmFrame).Height := Panel3.Height;
- TUCFrame_Log(FrmFrame).Width := Panel3.Width;
- TUCFrame_Log(FrmFrame).btfecha.ModalResult := mrOk;
- FrmFrame.Parent := Panel3;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/Source/pUcFrame_UserLogged.dfm b/internal/2.31RC1/1/Source/pUcFrame_UserLogged.dfm
deleted file mode 100644
index 7ad72cb..0000000
--- a/internal/2.31RC1/1/Source/pUcFrame_UserLogged.dfm
+++ /dev/null
@@ -1,222 +0,0 @@
-object UCFrame_UsersLogged: TUCFrame_UsersLogged
- Left = 0
- Top = 0
- Width = 320
- Height = 240
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- ParentFont = False
- TabOrder = 0
- TabStop = True
- object DBGrid: TDBGrid
- Left = 0
- Top = 0
- Width = 320
- Height = 192
- Align = alClient
- DataSource = dsDados
- Options = [dgTitles, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgAlwaysShowSelection, dgConfirmDelete, dgCancelOnExit]
- ReadOnly = True
- TabOrder = 0
- TitleFont.Charset = DEFAULT_CHARSET
- TitleFont.Color = clWindowText
- TitleFont.Height = -11
- TitleFont.Name = 'MS Sans Serif'
- TitleFont.Style = []
- Columns = <
- item
- Expanded = False
- FieldName = 'UserName'
- Title.Alignment = taCenter
- Title.Caption = 'Nome'
- Width = 159
- Visible = True
- end
- item
- Expanded = False
- FieldName = 'Login'
- Title.Alignment = taCenter
- Width = 123
- Visible = True
- end
- item
- Expanded = False
- FieldName = 'MACHINENAME'
- Title.Alignment = taCenter
- Title.Caption = 'Computador'
- Width = 150
- Visible = True
- end
- item
- Expanded = False
- FieldName = 'DATA'
- Title.Alignment = taCenter
- Title.Caption = 'Data'
- Width = 130
- Visible = True
- end>
- end
- object Panel3: TPanel
- Left = 0
- Top = 192
- Width = 320
- Height = 48
- Align = alBottom
- BevelOuter = bvNone
- TabOrder = 1
- DesignSize = (
- 320
- 48)
- object BtExit: TBitBtn
- Left = 212
- Top = 11
- Width = 95
- Height = 25
- Anchors = [akTop, akRight]
- Caption = '&Fechar'
- TabOrder = 2
- Glyph.Data = {
- 36060000424D3606000000000000360000002800000020000000100000000100
- 18000000000000060000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFC066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40198E40198E40198E40
- 198E40198E4019FF00FF8888886969696969696969696969696969696A6A6A69
- 69696969696969696A6A6A6969696969696A6A6A696969FF00FFC06614F9F5F4
- C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2A5C3B2
- A5C3B2A58E4019FF00FF888888F8F8F8C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6
- C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6696969FF00FFC06614FCFAFA
- F9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCDFD0C7DFD0C7DCCB
- C1C3B2A58E4019FF00FF888888FCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEAEAEAE7
- E7E7E4E4E4E0E0E0DDDDDDDDDDDDD9D9D9C6C6C6696969FF00FFC06614FFFFFF
- FCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E2D4CCE2D4CCDFD0
- C7C3B2A58E4019FF00FF888888FFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EEEEEEEA
- EAEAE7E7E7E3E3E3E0E0E0E0E0E0DDDDDDC6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E5D9D1E5D9D1E2D4
- CCC3B2A58E4019FF00FF888888FFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1F1F1EE
- EEEEEAEAEAE7E7E7E3E3E3E3E3E3E0E0E0C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFCFAFAF9F5F4F5F0EEF2EBE8EEE6E2ECE2DCE9DED7E9DED7E5D9
- D1C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFCFCFCF8F8F8F5F5F5F1
- F1F1EEEEEEEAEAEAE7E7E7E7E7E7E3E3E3C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F2EBE8EEE6E2ECE2DCECE2DCE9DE
- D7C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFBF7
- F7F7F1F1F1EEEEEEEAEAEAEAEAEAE7E7E7C6C6C6696969FF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF0E9E5F0E9E5EDE4
- DFC3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFB
- FBFBF7F7F7F3F3F3F0F0F0F0F0F0ECECECC6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F7F7F3F1F4EEEBF4EEEBF0E9
- E5C3B2A58E4019FF00FF888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
- FEFEFBFBFBF7F7F7F3F3F3F3F3F3F0F0F0C6C6C66A6A6AFF00FFC06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFDFBF8F78A9DE92546CD1D3F
- C9193BC8183BC88194E1898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFEFEFEFAFAFAC6C6C6979797929292929292929292C0C0C0C06614FFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFD3355DBF2F4FD4E6B
- D94A67D8F2F4FD183BC8888888FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFEFEFEA1A1A1FAFAFAAAAAAAA8A8A8F9F9F9929292C066148E4019
- 8E40198E40198E40198E40198E40198E40198E40198E40193C5CDD8296E4D9DF
- F9CDD5F74C69D81A3CC88888886969696969696969696A6A6A69696969696969
- 6969696969696969A5A5A5C1C1C1EDEDEDE7E7E7A8A8A8929292C06614ED9733
- ED9733ED9733ED9733ED9733ED9733ED9733F6CA9AED97334563E16980E2E4E8
- FBD8DEF9516DDA1F40C9888888ACACACACACACADADADADADADADADADACACACAD
- ADADD5D5D5ADADADA8A8A8B6B6B6F2F2F2ECECECABABAB939393F810DCC06614
- C06614C06614C06614C06614C06614C06614C06614C066144D6AE3F2F4FD667D
- E26E85E2F2F4FD2749CEEF14EF88888888888888888888888889898988888888
- 8888888888898989ACACACF9F9F9B5B5B5B9B9B9F9F9F9989898FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF9AABEF4D6AE34563
- E14463DF3E5EDE8FA2EBFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFCFCFCFACACACA8A8A8A8A8A8A6A6A6C9C9C9}
- NumGlyphs = 2
- end
- object BitMsg: TBitBtn
- Left = 12
- Top = 11
- Width = 95
- Height = 25
- Anchors = [akTop, akRight]
- Caption = '&Mensagem'
- TabOrder = 0
- OnClick = BitMsgClick
- Glyph.Data = {
- 42020000424D4202000000000000420000002800000010000000100000000100
- 1000030000000002000000000000000000000000000000000000007C0000E003
- 00001F0000001F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CD3001F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7CD300D300
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C1F7C9A19D300D300D3003B32
- D3001F7C1F7CD8520D190D190D190D190D190D1915369A19FE4ABF429D3E5C36
- 3B32D3001F7CD8521A5F964A964A964A964A964A964A9A191F53DF46BF429D3E
- 5C365B32D300D852964A3B5F3B5F3B5F3B5F3B5F3B5F9A191F531F53BF429D3E
- 9D3ED3001F7CD8527C6B964A7D6B7D6B7D6B7D6B7D6B9A199A199A199A19DF46
- D3001F7C1F7CD8529D739D73964ADF7BDF7BDF7BDF7BDF7BDF7BDF7B9A19D300
- 964A1F7C1F7CD852DF7BDF7B964A964AFF7FFF7FFF7FFF7F1536964AD3007C6B
- 0D191F7C1F7CD852FF7F964AB97F977F964A964A964A964A0D7FEA7E964A964A
- 0D191F7C1F7CD852964ADB7FDB7FB97F977F757F537F517F2F7F0D7FEA7E1536
- 0D191F7C1F7CD852DB7FDB7FDB7FDB7FB97F977F757F537F517F2F7F0D7FEA7E
- 0D191F7C1F7C1F7CD852DB7FDB7FDB7FDB7FB97F977F757F537F517F2F7F4E21
- 1F7C1F7C1F7C1F7C1F7CD856DB7FDB7FDB7FDB7FB97F977F757F537F0D191F7C
- 1F7C1F7C1F7C1F7C1F7C1F7CD852DB7FDB7FDB7FDB7FB97F977F0D191F7C1F7C
- 1F7C1F7C1F7C1F7C1F7C1F7C1F7CD852D852D852D852D852D8521F7C1F7C1F7C
- 1F7C1F7C1F7C}
- end
- object BitRefresh: TBitBtn
- Left = 111
- Top = 11
- Width = 95
- Height = 25
- Anchors = [akTop, akRight]
- Caption = '&Atualizar'
- TabOrder = 1
- OnClick = BitRefreshClick
- Glyph.Data = {
- 36050000424D3605000000000000360400002800000010000000100000000100
- 0800000000000001000000000000000000000001000000010000FF00FF000029
- 6A00002F790000307B0000317E00003382000035870000399200003A95000040
- A3000041A5000044AF00004BC000004CC200004DC500004FCA000050CD000052
- D1000053D4000054D700065AD1000055D9000056DD000058E100005AE600005B
- E900005CEB00005DEE00005EF0000060F6000669F6000062F9000065FF000268
- FF00056BFF00066CFF00086EFF000A70FF000C72FF000F75FF001070F2001378
- FF001479FF00197DFF001E80FF002880EE002585FF002A88FF00328EFF003590
- FF003D95FF004592ED004596F6004097FF004598FB00469AFF00499DFF0050A0
- FF0056A4FF005AA6FF005CA7FF0066A3E90066A9F50060AAFF0066ACFF0069AF
- FF006CB1FF0072B4FF0074B5FF007FBBFF007FBCFF0088B8EE0081BCFF008AC1
- FF008FC4FF009FCEFF00A3CFFF00ADD5FF00B7DAFF00EAF3FC00EAF4FF00EDF6
- FF00FFFFFF000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000808060402020202020202010000000C1715110C
- 0C0C0C0C0C0C0C0A01000015211F1C1B171115111515150F0200001C21211E3E
- 5252523D1410150C0400001C27244950342D33504710150C0200001C2E2A5238
- 1F1C1C335211150C0200001C372C523138521F283E15150C0400001C3C2F504C
- 425252371B1B1B0F0600001C41303F52525252524D1C1B110800001C44322E38
- 4E52524B2A1F1F1B0A00001C48392F2E465235271F21211B0B00001C49463F3C
- 37312E2A2721271F0C00001C3F494948443C312C2727212110000000242B2B2B
- 2A271F1F1F1C1C15000000000000000000000000000000000000}
- end
- end
- object dsDados: TDataSource
- Left = 132
- Top = 144
- end
-end
diff --git a/internal/2.31RC1/1/Source/pUcFrame_UserLogged.pas b/internal/2.31RC1/1/Source/pUcFrame_UserLogged.pas
deleted file mode 100644
index 5670b63..0000000
--- a/internal/2.31RC1/1/Source/pUcFrame_UserLogged.pas
+++ /dev/null
@@ -1,130 +0,0 @@
-unit pUcFrame_UserLogged;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
-{$IFDEF DELPHI5}
-{$ELSE}
- Variants,
-{$ENDIF}
- Buttons,
- Classes,
- Controls,
- DB,
- DBGrids,
- Dialogs,
- ExtCtrls,
- Forms,
- Graphics,
- Grids,
- IncUser_U,
- Menus,
- Messages,
- StdCtrls,
- SysUtils,
- UCBase,
- Windows;
-
-type
- TUCFrame_UsersLogged = class(TFrame)
- dsDados: TDataSource;
- DBGrid: TDBGrid;
- Panel3: TPanel;
- BtExit: TBitBtn;
- BitMsg: TBitBtn;
- BitRefresh: TBitBtn;
- procedure BitRefreshClick(Sender: TObject);
- procedure BitMsgClick(Sender: TObject);
- private
- DSUserLogados: TDataset;
- UCMes: TUCApplicationMessage;
- public
- FUserControl: TUserControl;
- procedure SetWindow;
- destructor Destroy; override;
- end;
-
-implementation
-
-uses
- UCMessages;
-
-{$R *.dfm}
-
-procedure TUCFrame_UsersLogged.SetWindow;
-var
- SQLStmt: String;
- I: Integer;
- Form: TForm;
-begin
- UCMes := nil;
- Form := Application.MainForm;
- for I := 0 to Form.ComponentCount - 1 do
- if (Form.Components[I] is TUCApplicationMessage) then
- UCMes := TUCApplicationMessage(Form.Components[I]);
- BitMsg.Visible := UCMES <> nil;
-
-
- with FUserControl do
- begin
- SQLStmt :=
- 'SELECT U.' + TableUsers.FieldUserName + ' AS UserName,' +
- ' U.' + TableUsers.FieldUserId + ' AS id, ' +
- ' U.' + TableUsers.FieldLogin + ' AS Login,' +
- ' L.' + TableUsersLogged.FieldMachineName + ' AS MachineName,' +
- ' L.' + TableUsersLogged.FieldData + ' AS DATA ' +
- 'FROM ' + TableUsersLogged.TableName + ' L ' +
- ' INNER JOIN ' + TableUsers.TableName + ' U ON U.' + TableUsers.FieldUserID + ' = L.' + TableUsersLogged.FieldUserID +
- ' LEFT JOIN ' + TableUsers.TableName + ' P ON P.' + TableUsers.FieldUserID + ' = U.' + TableUsers.FieldProfile + ' ' +
- 'WHERE L.' + TableUsersLogged.FieldApplicationID + ' = ' + QuotedStr(ApplicationID);
-
- DSUserLogados := DataConnector.UCGetSQLDataset(SQLStmt);
-
- with UserSettings.UsersLogged do
- begin
- Caption := LabelCaption;
- BitMsg.Caption := BtnMessage;
- BitRefresh.Caption := BtnRefresh;
- BtExit.Caption := BtnClose;
-
- DBGrid.Columns[0].Title.Caption := ColName;
- DBGrid.Columns[1].Title.Caption := ColLogin;
- DBGrid.Columns[2].Title.Caption := ColComputer;
- DBGrid.Columns[3].Title.Caption := ColData;
- end;
-
- end;
- dsDados.Dataset := DSUserLogados;
-end;
-
-procedure TUCFrame_UsersLogged.BitRefreshClick(Sender: TObject);
-begin
- try
- Screen.Cursor := crHourGlass;
- dsDados.DataSet.Close;
- dsDados.DataSet.Open;
- finally
- Screen.Cursor := crDefault;
- end;
-end;
-
-destructor TUCFrame_UsersLogged.Destroy;
-begin
- FreeAndNil(DSUserLogados);
- FreeAndNil(UCMes);
- inherited;
-end;
-
-procedure TUCFrame_UsersLogged.BitMsgClick(Sender: TObject);
-var
- Msg: String;
-begin
- if Assigned(UcMes) then
- if InputQuery(fUserControl.UserSettings.UsersLogged.InputText, fUserControl.UserSettings.UsersLogged.InputCaption, Msg) = True then
- UcMes.SendAppMessage(dsDados.DataSet.FieldValues['id'], fUserControl.UserSettings.UsersLogged.MsgSystem, Msg);
-end;
-
-end.
-
diff --git a/internal/2.31RC1/1/UCHistorico/GHistorico.bdsgroup b/internal/2.31RC1/1/UCHistorico/GHistorico.bdsgroup
deleted file mode 100644
index fbbb0b2..0000000
--- a/internal/2.31RC1/1/UCHistorico/GHistorico.bdsgroup
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- pckHistorico.bdsproj
- pckHistorico.bpl
-
-
-
-
diff --git a/internal/2.31RC1/1/UCHistorico/GHistorico.groupproj b/internal/2.31RC1/1/UCHistorico/GHistorico.groupproj
deleted file mode 100644
index e8e997d..0000000
--- a/internal/2.31RC1/1/UCHistorico/GHistorico.groupproj
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
- {db54d477-5fdc-4df2-8d4f-9ea1d372aaf4}
-
-
-
-
- Default.Personality
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/internal/2.31RC1/1/UCHistorico/UCHistDataset.pas b/internal/2.31RC1/1/UCHistorico/UCHistDataset.pas
deleted file mode 100644
index 46bcd4f..0000000
--- a/internal/2.31RC1/1/UCHistorico/UCHistDataset.pas
+++ /dev/null
@@ -1,266 +0,0 @@
-unit UCHistDataset;
-
-interface
-
- uses SysUtils, Classes, UCHist_Type,UCHist_Base,Forms, Db, UCConsts_Language;
-
-Type
- TUCHist_DataSet = class(TComponent)
- private
- fDataSet: TDataSet;
- fOnNewRecord ,
- fOnBeforeDelete ,
- fOnBeforeEdit ,
- fOnAfterPost : TDataSetNotifyEvent;
- fOptions: TUCHistOptions;
- fControl: TUCControlHistorico;
- procedure SetDataSet(const Value: TDataSet);
- procedure SetfControl(const Value: TUCControlHistorico);
- { Private declarations }
- protected
- DataSetInEdit : Boolean;
- AFields : Array of Variant;
- procedure NewRecord(DataSet: TDataSet);
- procedure BeforeDelete(DataSet: TDataSet);
- procedure BeforeEdit(DataSet: TDataSet);
- procedure AfterPost(DataSet: TDataSet);
- procedure AddHistory( AppID , Form , FormCaption, Event , Obs , TableName : String; UserId : Integer );
- Function GetValueFields : String;
- procedure Loaded; override;
- procedure Notification(AComponent: TComponent; AOperation: TOperation);override;
- { Protected declarations }
- public
- constructor Create(AOwner: TComponent); override;
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- { Public declarations }
- published
- { Published declarations }
- Property DataSet : TDataSet Read fDataSet Write SetDataSet;
- Property ControlHistorico : TUCControlHistorico read fControl write SetfControl;
- end;
-
-implementation
-
-
-procedure TUCHist_DataSet.AddHistory(AppID, Form, FormCaption, Event, Obs,
- TableName: String; UserId: Integer);
-begin
- If fControl.Active then
- fControl.UserControl.DataConnector.UCExecSQL
- (
- Format('INSERT INTO %s VALUES( %s, %d , %s , %s , %s , %s ,%s ,%s , %s )',
- [ fControl.TableHistory.TableName ,
- QuotedStr(AppID),
- UserID,
- QuotedStr( FormatDateTime('dd/mm/yyyy',date) ),
- QuotedStr( FormatDateTime('hh:mm:ss',time) ),
- QuotedStr( Form ),
- QuotedStr( FormCaption ),
- QuotedStr( Event ),
- QuotedStr( Obs ) ,
- QuotedStr( TableName )
- ]));
-end;
-
-procedure TUCHist_DataSet.AfterPost(DataSet: TDataSet);
-begin
- If Assigned( fOnAfterPost ) then
- fOnAfterPost( DataSet );
-
- If ( ( DataSetInEdit = False ) and ( fControl.Options.SavePostInsert ) ) then // quando inserindo
- AddHistory(fControl.UserControl.ApplicationID,
- Screen.ActiveCustomForm.Name ,
- Screen.ActiveCustomForm.Caption ,
- fControl.HistoryMsg.Evento_Insert,
- GetValueFields,
- DataSet.Name,
- fControl.UserControl.CurrentUser.UserID);
-
- If ( ( DataSetInEdit = True ) and ( fControl.Options.SavePostEdit ) ) then // quando editando
- AddHistory(fControl.UserControl.ApplicationID,
- Screen.ActiveCustomForm.Name ,
- Screen.ActiveCustomForm.Caption ,
- fControl.HistoryMsg.Evento_Edit,
- GetValueFields,
- DataSet.Name,
- fControl.UserControl.CurrentUser.UserID);
-
- DataSetInEdit := False;
- SetLength( AFields , 0 );
-end;
-
-procedure TUCHist_DataSet.Assign(Source: TPersistent);
-begin
- if Source is TUCHist_DataSet then
- begin
- Self.DataSet := TUCHist_DataSet(Source).DataSet;
- Self.ControlHistorico := TUCHist_DataSet(Source).ControlHistorico;
- end
- else
- inherited;
-end;
-
-procedure TUCHist_DataSet.BeforeDelete(DataSet: TDataSet);
-begin
- If Assigned( fOnBeforeDelete ) then
- fOnBeforeDelete( DataSet );
-
- DataSetInEdit := False;
- SetLength( AFields , 0 );
-
- If fControl.Options.SaveDelete then
- AddHistory(fControl.UserControl.ApplicationID,
- Screen.ActiveCustomForm.Name ,
- Screen.ActiveCustomForm.Caption ,
- fControl.HistoryMsg.Evento_Delete,
- GetValueFields,
- DataSet.Name,
- fControl.UserControl.CurrentUser.UserID);
-end;
-
-procedure TUCHist_DataSet.BeforeEdit(DataSet: TDataSet);
-Var I : Integer;
-begin
- // Antes de Editar
- If Assigned( fOnBeforeEdit ) then
- fOnBeforeEdit( DataSet );
-
- DataSetInEdit := True;
-
- SetLength( AFields , DataSet.FieldCount );
- For I := 0 to DataSet.FieldCount - 1 do
- Begin
- If DataSet.Fields[ I ].IsBlob = False then
- AFields[ i ] := DataSet.Fields[ i ].Value
- else AFields[ I ] := 'Blob';
- End;
-end;
-
-constructor TUCHist_DataSet.Create(AOwner: TComponent);
-begin
- inherited;
- DataSetInEdit := False;
- fOptions := TUCHistOptions.Create(Self);
- fDataSet := Nil;
- fControl := Nil;
-end;
-
-destructor TUCHist_DataSet.Destroy;
-begin
- FreeAndNil( fOptions );
- inherited;
-end;
-
-function TUCHist_DataSet.GetValueFields: String;
-Var Aux : Integer;
-begin
- Result := '';
- For Aux := 0 to DataSet.FieldCount - 1 do
- Begin
- If DataSet.Fields[ Aux ].IsBlob = False then
- Begin
- With DataSet.Fields[ Aux ] do
- Begin
- If DataSetInEdit = false then // inserindo ou deletando
- try Result := Result + Format('%-20s = %s ',[ FieldName , AsString ] ) + #13#10; except end
- else
- Begin //editando
- If fControl.Options.TypeSavePostEdit = tpSaveModifiedFields then
- Begin
- If Value <> AFields[ Aux ] then
- try Result := Result + Format('%s||%s||%s',[FieldNAme, AFields[ Aux ] , Value ] ) + #13#10; except end;
- End
- else
- try Result := Result + Format('%s||%s||%s',[FieldNAme, AFields[ Aux ] , Value ] )+ #13#10; except end;
- End;
- End;
- end;
- End; // for
-end;
-
-procedure TUCHist_DataSet.Loaded;
-begin
- inherited;
- if not(csDesigning in ComponentState) then
- begin
- if not Assigned( ControlHistorico ) then
- raise Exception.Create( Format( RetornaLingua( ucPortuguesBr ,'Const_Hist_MsgExceptPropr'),['ControlHistorico']) );
-
- If fControl.Active = false then exit;
-
- if not Assigned(DataSet) then
- raise Exception.Create( Format( RetornaLingua( fControl.UserControl.Language,'Const_Hist_MsgExceptPropr'),['DataSet']) );
-
- fOnNewRecord := Nil;
- fOnBeforeDelete := Nil;
- fOnBeforeEdit := Nil;
- fOnAfterPost := Nil;
-
- If Assigned( DataSet.OnNewRecord ) then
- fOnNewRecord := DataSet.OnNewRecord;
-
- If Assigned( DataSet.BeforeDelete ) then
- fOnBeforeDelete := DataSet.BeforeDelete;
-
- If Assigned( DataSet.AfterPost ) then
- fOnAfterPost := DataSet.AfterPost;
-
- If Assigned( DataSet.BeforeEdit ) then
- fOnBeforeEdit := DataSet.BeforeEdit;
-
- DataSet.OnNewRecord := NewRecord;
- DataSet.BeforeDelete := BeforeDelete;
- DataSet.AfterPost := AfterPost;
- DataSet.BeforeEdit := BeforeEdit;
- end;
-end;
-
-procedure TUCHist_DataSet.NewRecord(DataSet: TDataSet);
-begin
- If Assigned( fOnNewRecord ) then
- fOnNewRecord( DataSet );
-
- DataSetInEdit := False; // Inserindo novo registro
- SetLength( AFields , 0 );
-
- If fControl.Options.SaveNewRecord then
- AddHistory( fControl.UserControl.ApplicationID,
- Screen.ActiveCustomForm.Name ,
- Screen.ActiveCustomForm.Caption,
- fControl.HistoryMsg.Evento_NewRecord,
- Format(RetornaLingua( fControl.UserControl.Language,'Const_Msg_NewRecord'),[fControl.UserControl.CurrentUser.UserName]),
- DataSet.Name,
- fControl.UserControl.CurrentUser.UserID);
-end;
-
-procedure TUCHist_DataSet.Notification(AComponent: TComponent;
- AOperation: TOperation);
-begin
- if (AOperation = opRemove) then
- begin
- If AComponent = fControl then
- fControl := Nil;
-
- if AComponent = fDataSet then
- fDataSet := Nil;
- end;
-
- inherited Notification(AComponent, AOperation);
-end;
-
-procedure TUCHist_DataSet.SetDataSet(const Value: TDataSet);
-begin
- fDataSet := Value;
- if Assigned(Value) then
- Value.FreeNotification(Self);
-end;
-
-procedure TUCHist_DataSet.SetfControl(const Value: TUCControlHistorico);
-begin
- fControl := Value;
- if Value <> nil then
- Value.FreeNotification(self);
-end;
-
-end.
diff --git a/internal/2.31RC1/1/UCHistorico/UCHist_Base.pas b/internal/2.31RC1/1/UCHistorico/UCHist_Base.pas
deleted file mode 100644
index 495ca03..0000000
--- a/internal/2.31RC1/1/UCHistorico/UCHist_Base.pas
+++ /dev/null
@@ -1,206 +0,0 @@
-unit UCHist_Base;
-
-interface
-
-uses
- SysUtils,
- Classes,Forms,
- UCConsts_Language,
- UCHist_Type,
- UCBase;
-
-
-type
- TUCControlHistorico = class(TComponent)
- private
- fUserControl: TUserControl;
- fActive: Boolean;
- fOptions: TUCHistOptions;
- fTableHistory: TUCTableHistorico;
- fUsersHistory: TUCUserHistory;
- fHistoryMsg: TUCHistoryMSG;
- procedure SetfUserControl(const Value: TUserControl);
- { Private declarations }
- protected
- FrmHistorico : TCustomForm;
- procedure Loaded; override;
- procedure IniSettings( Language : TUCLanguage );
- procedure ActionUserHistory(Sender: TObject);
- { Protected declarations }
- public
- constructor Create(AOwner: TComponent); override;
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- { Public declarations }
- published
- property Active : Boolean read fActive write fActive default True;
- property UserControl : TUserControl read fUserControl Write SetfUserControl;
- Property Options : TUCHistOptions read fOptions write fOptions;
- property TableHistory : TUCTableHistorico read fTableHistory write fTableHistory;
- property UsersHistory : TUCUserHistory read fUsersHistory write fUsersHistory;
- property HistoryMsg : TUCHistoryMSG read fHistoryMsg Write fHistoryMsg;
- { Published declarations }
- end;
-
-procedure Register;
-
-implementation
-
-uses UCHistDataset,UCHist_Form;
-
-{$R UcHistReg.dcr}
-
-procedure Register;
-begin
- RegisterComponents('UC Historico',
- [TUCHist_DataSet,
- TUCControlHistorico]);
-end;
-
-{ TUCControlHistorico }
-
-procedure TUCControlHistorico.Assign(Source: TPersistent);
-begin
- if Source is TUCHist_DataSet then
- begin
- TUCHistOptions(Source).Assign(Options);
- TUCTableHistorico(Source).Assign(TableHistory);
- TUCUserHistory(Source).Assign(UsersHistory);
- TUCHistoryMSG(Source).Assign(HistoryMSG);
- end
- else
- inherited
-end;
-
-constructor TUCControlHistorico.Create(AOwner: TComponent);
-begin
- inherited;
- fUserControl := Nil;
- Active := True;
- fOptions := TUCHistOptions.Create(Self);
- fTableHistory := TUCTableHistorico.Create(Self);
- fUsersHistory := TUCUserHistory.Create(Self);
- fHistoryMSG := TUCHistoryMSG.Create(Self);
- if csDesigning in ComponentState then
- IniSettings( ucPortuguesBr );
-end;
-
-destructor TUCControlHistorico.Destroy;
-begin
- fUserControl := Nil;
- FreeAndNil(fOptions);
- FreeAndNil(fTableHistory);
- FreeAndNil(fUsersHistory);
- FreeAndNil(fHistoryMSG);
- inherited;
-end;
-
-procedure TUCControlHistorico.Loaded;
-begin
- inherited;
- if not(csDesigning in ComponentState) then
- begin
- if not Assigned( fUserControl ) then
- raise Exception.Create( Format( RetornaLingua( ucPortuguesBr ,'Const_Hist_MsgExceptPropr'),['UserControl']) );
-
- IniSettings( fUserControl.Language );
- If Active then
- If not fUserControl.DataConnector.UCFindTable( TableHistory.TableName ) then
- fUserControl.DataConnector.UCExecSQL(
- Format('CREATE TABLE %s ( %s %s(250), %s %s , %s %s(10), %s %s(8), %s %s(250), %s %s(100), %s %s(50) , %s %s, %s %s(50) ) ',
- [ TableHistory.TableName,
- TableHistory.FieldApplicationID,
- fUserControl.UserSettings.Type_VarChar,
-
- TableHistory.FieldUserID,
- fUserControl.UserSettings.Type_Int,
-
- TableHistory.FieldEventDate,
- fUserControl.UserSettings.Type_Char,
-
- TableHistory.FieldEventTime,
- fUserControl.UserSettings.Type_Char,
-
- TableHistory.FieldForm,
- fUserControl.UserSettings.Type_VarChar,
-
- TableHistory.FieldCaptionForm,
- fUserControl.UserSettings.Type_VarChar,
-
- TableHistory.FieldEvent,
- fUserControl.UserSettings.Type_VarChar,
-
- TableHistory.FieldObs,
- fUserControl.UserSettings.Type_Memo,
-
- TableHistory.FieldTableName,
- fUserControl.UserSettings.Type_VarChar]));
-
-
- if Assigned(fUsersHistory.MenuItem) and (not Assigned(fUsersHistory.MenuItem.OnClick)) then
- fUsersHistory.MenuItem.OnClick := ActionUserHistory;
-
- if Assigned(fUsersHistory.Action) and (not Assigned(fUsersHistory.Action.OnExecute)) then
- fUsersHistory.Action.OnExecute := ActionUserHistory;
- end;
-end;
-
-procedure TUCControlHistorico.SetfUserControl(const Value: TUserControl);
-begin
- FUserControl := Value;
- if Value <> nil then
- Value.FreeNotification(self.UserControl);
-end;
-
-procedure TUCControlHistorico.IniSettings( Language : TUCLanguage );
-Begin
- With HistoryMsg do
- Begin
- Evento_Insert := RetornaLingua( Language ,'Const_Evento_Insert');
- Evento_Delete := RetornaLingua( Language ,'Const_Evento_Delete');
- Evento_Edit := RetornaLingua( Language ,'Const_Evento_Edit');
- Evento_NewRecord := RetornaLingua( Language ,'Const_Evento_NewRecord');
- Hist_All := RetornaLingua( Language ,'Const_Hist_All');
- Msg_LimpHistorico := RetornaLingua( Language ,'Const_Msg_LimpHistorico');
- Msg_MensConfirma := RetornaLingua( Language ,'Const_Msg_MensConfirma');
- Msg_LogEmptyHistory := RetornaLingua( Language ,'Const_Msg_LogEmptyHistory');
- LabelDescricao := RetornaLingua( Language ,'Const_LabelDescricao');
- LabelUser := RetornaLingua( Language ,'Const_LabelUser');
- LabelForm := RetornaLingua( Language ,'Const_LabelForm');
- LabelEvento := RetornaLingua( Language ,'const_LabelEvento');
- LabelTabela := RetornaLingua( Language ,'const_LabelTabela');
- LabelDataEvento := RetornaLingua( Language ,'const_LabelDataEvento');
- LabelHoraEvento := RetornaLingua( Language ,'const_LabelHoraEvento');
- Msg_NewRecord := RetornaLingua( Language ,'const_Msg_NewRecord');
- Hist_MsgExceptPropr := RetornaLingua( Language ,'Const_Hist_MsgExceptPropr');
- Hist_BtnFiltro := RetornaLingua( Language ,'const_Hist_BtnFiltro');
- Hist_BtnExcluir := RetornaLingua( Language ,'const_Hist_BtnExcluir');
- Hist_BtnFechar := RetornaLingua( Language ,'const_Hist_BtnFechar');
- End;
-
- With TableHistory do
- Begin
- TableName := RetornaLingua(Language,'Const_Hist_TableName');
- FieldApplicationID := RetornaLingua(Language,'Const_Hist_FieldApplicationID');
- FieldUserID := RetornaLingua(Language,'Const_Hist_FieldUserID');
- FieldEventDate := RetornaLingua(Language,'Const_Hist_FieldEventDate');
- FieldEventTime := RetornaLingua(Language,'Const_Hist_FieldEventTime');
- FieldForm := RetornaLingua(Language,'Const_Hist_FieldForm');
- FieldCaptionForm := RetornaLingua(Language,'Const_Hist_FieldCaptionForm');
- FieldEvent := RetornaLingua(Language,'Const_Hist_FieldEvent');
- FieldObs := RetornaLingua(Language,'Const_Hist_FieldObs');
- FieldTableName := RetornaLingua(Language,'Const_Hist_FieldTableName');
- End;
-End;
-
-procedure TUCControlHistorico.ActionUserHistory(Sender:TObject);
-Begin
- FrmHistorico := TFrmHistorico.Create(Self);
- TFrmHistorico(FrmHistorico).fControl := Self;
- TFrmHistorico(FrmHistorico).Position := fUserControl.UserSettings.WindowsPosition;
- FrmHistorico.ShowModal;
- FreeAndNil(FrmHistorico);
-End;
-
-
-end.
diff --git a/internal/2.31RC1/1/UCHistorico/UCHist_Form.dfm b/internal/2.31RC1/1/UCHistorico/UCHist_Form.dfm
deleted file mode 100644
index 90cf87e..0000000
--- a/internal/2.31RC1/1/UCHistorico/UCHist_Form.dfm
+++ /dev/null
@@ -1,1311 +0,0 @@
-object FrmHistorico: TFrmHistorico
- Left = 99
- Top = 127
- BorderStyle = bsDialog
- Caption = 'Historico de Tabelas'
- ClientHeight = 453
- ClientWidth = 813
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- OldCreateOrder = False
- OnClose = FormClose
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object Panel1: TPanel
- Left = 0
- Top = 0
- Width = 813
- Height = 49
- Align = alTop
- Color = clWhite
- TabOrder = 0
- object Image1: TImage
- Left = 1
- Top = 1
- Width = 48
- Height = 47
- Align = alLeft
- Center = True
- Picture.Data = {
- 055449636F6E000001000C00101010000100040028010000C600000018181000
- 01000400E8010000EE0100002020100001000400E8020000D603000030301000
- 0100040068060000BE060000101000000100080068050000260D000018180000
- 01000800C80600008E1200002020000001000800A80800005619000030300000
- 01000800A80E0000FE210000101000000100200068040000A630000018180000
- 01002000880900000E3500002020000001002000A8100000963E000030300000
- 01002000A82500003E4F00002800000010000000200000000100040000000000
- 8000000000000000000000000000000000000000000000000000800000800000
- 0080800080000000800080008080000080808000C0C0C0000000FF0000FF0000
- 00FFFF00FF000000FF00FF00FFFF0000FFFFFF00000780000000000000067E76
- 00000000000C8E8E8E77000000068E87E8E77000000687E887E8E7000007E7C8
- E88E8C00000788E87C87E000000E8888F8E8700000088E88FF8880000008E8CF
- 6E888000000888E8F88E800000088FFFFFFFF7000008B3B7B888F700000B89BB
- 9BBBB70000078B77B7B9B7000000000007787000E7FF0000E0FF0000E00F0000
- E0070000E0030000E0030000E0070000E0070000E0070000E0070000E0070000
- E0030000E0030000E0030000E0030000FF870000280000001800000030000000
- 0100040000000000200100000000000000000000000000000000000000000000
- 00008000008000000080800080000000800080008080000080808000C0C0C000
- 0000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF0000000800
- 000000000000000000006C86C8000000000000000000C768E8EC700000000000
- 0000668E8E8E8EC7E00000000000C7E8E7E8E8E87C00000000006C888E87E8E8
- E86000000000C8EE88E88C8E8E8E70000000678C6778E8E8E8E7EC000000CE86
- 8ECF88888878C0000000688EF7E86E7E8E8C00000000C888686888C646800000
- 000068888F8F8FFF888E00000000C88E68EF8F88F88700000000E88E787FFF8F
- 88FC00000000C88EFE6F66E7E8F60000000068F7887F8886768E00000000CFF8
- 88EFFFFFFFF700000000E88FFFFFFFFFFFF80000000078B3B38B88FFFFF80000
- 000078B9B9B9BB3B3B88700000007B8BBBBB9BBBBBBBC000000078888988B8B9
- B9BB7000000065717773573777776000000000000000000000000000FBFFFF00
- F03FFF00F007FF00F0007F00F0003F00F0001F00F0000700F0000300F0000700
- F0000F00F0001F00F0000F00F0000F00F0000F00F0000F00F0000F00F0000F00
- F0000F00F0000F00F0000700F0000700F0000700F0000700FFFFFF0028000000
- 2000000040000000010004000000000000020000000000000000000000000000
- 0000000000000000000080000080000000808000800000008000800080800000
- 80808000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000
- FFFFFF00000000000000000000000000000000000000006C7670000000000000
- 00000000000007C8E8CEC7E000000000000000000000076678E8E8C767000000
- 0000000000000EC7CE8E8E8E8EC6C80000000000000007C78E87E8E8E8E8E7C6
- 00000000000006C68E8E8C8E78E8E8E7C0000000000008C788E88E8E8E78E8E8
- E7000000000006CE8E87E888E8E7E8C8E7C80000000007E78CE7CE8E888E8E8E
- 8E8C800000000C68868686888E8888E8E8EEC000000008CE86E8E788888E8E88
- 8E5C0000000006C88E887CE86CE8888E8C8000000000086887C88E88E7646C68
- 8600000000000CE8FFFE8688F8888E7C8C000000000007C8FE8F8F8F8F888888
- E700000000000E6887E67E8FF8F8FF8F8E000000000007CFFE8CF888F8F8F888
- F600000000000E788688E7EF8EF88FF8FE00000000000CE8FE8F8C8F666E67E8
- 88700000000007CF8788FE7F888C8666C8E00000000006EFF8E867EFFFFFF88F
- F8C0000000000C88FFFFFFFFFFFFFFFFFF700000000006888FFFFFFFFFFFFFFF
- FF60000000000CB8B39B7B8888F8FFFFFF60000000000688B9BB9B9BBB3B8888
- 8F800000000007B8BB9BBBB9B9BBBBBBBB78000000000CB888B9B9BBBBB9B9BB
- 9B760000000006888B888B8B98BBBBBBBB37000000000773797B79B7B9898989
- B786000000000077777C8C7C7C76767775780000000000000000000000000000
- 00000000FFFFFFFFFC1FFFFFF801FFFFF8003FFFF80003FFF80000FFF800007F
- F800003FF800000FF8000007F8000007F800000FF800001FF800003FF800003F
- F800003FF800003FF800003FF800003FF800001FF800001FF800001FF800001F
- F800001FF800001FF800001FF800000FF800000FF800000FF800000FFC00000F
- FFFFFFFF28000000300000006000000001000400000000008004000000000000
- 0000000000000000000000000000000000008000008000000080800080000000
- 800080008080000080808000C0C0C0000000FF0000FF000000FFFF00FF000000
- FF00FF00FFFF0000FFFFFF000000000000000000000000000000000000000000
- 000000000000000008C668000000000000000000000000000000000000000000
- 06C7C6C6C0000000000000000000000000000000000000007C688E867C6C7800
- 00000000000000000000000000000000C6CE778E8E8EC6C67000000000000000
- 00000000000000006C7767E8E8E8E8ECEC6C8000000000000000000000000000
- C66C8E8C8E7E8E88E8EC6C670000000000000000000000006C6868E8E8E8C8E8
- E78E8ECEC6C800000000000000000000C6C7C8E8E8C8E8E78E8E88E8766C6000
- 00000000000000006C68E8E87E8E8E8E7E78E78E877C60000000000000000000
- 6C67888E88E8E8E8E8E7E8E7EE8EC6000000000000000000C6C8E8E8E88E878E
- 77E8E7E878E8EC6800000000000000006CE788888E88E8E88E878E8E7E8E88EC
- 6000000000000000C6778EC6E88E888E88E8E8C8E8C8E8E8C600000000000000
- 6CE88E68C6C67E88E88E88E8E8E8E77E8C60000000000000C6C887C86E88C888
- 8E88E88E88E88E8E8EC80000000000006CE88E6E7C8E68E888888E88E88E8E87
- EC670000000000006C7888678E686888E8E888E88E88E8EC6700000000000000
- CE688ECFFF86C88E677E8888888E88C780000000000000006C78F86F888E6888
- C6C66CE7E8888EC00000000000000000CECF8E66E6886E888E766646466E87C0
- 00000000000000006C7FFFF888C6C88F8F8888E76C658E600000000000000000
- 6E6FF8FF8FFF88888F8F8888888E87C00000000000000000CC7FFE7E88F8FF8F
- 8888F8F8F888886000000000000000006ECFF86766E6E8F8FF8F888F88888EC0
- 0000000000000000C68FFECF8888C88F8F8F8F888F8FF8600000000000000000
- 6CEFF8786C8FE8FF8F8F8F8F88F88FC80000000000000000CE7FFE6E8E6F7EFF
- FFF8FF8FF88F8F6800000000000000006C8FF8C7FF7E76FF666E888F8FF8F8EC
- 0000000000000000CE7FF8EFFFF6C8FF6C66C666668E8F670000000000000008
- 6CEFF7EFFFFF6E8F88E766C66C666F8C0000000000000008CE8FF8C668E88C8F
- FFFFFF888E7C688C0000000000000008C68FF8F88E7C6EFFFFFFFFFFFFFFFF86
- 0000000000000008CE88FFFFFFFFFFFFFFFFFFFFFFFFFF8C0000000000000008
- C68FFFFFFFFFFFFFFFFFFFFFFFFFFFF68000000000000008CE7F888FFFFFFFFF
- FFFFFFFFFFFFFFFCE0000000000000086388B9B3373888FFFFFFFFFFFFFFFFF6
- 7000000000000008CBBFB3B9BB9BB9B3378788FFFFFFFFF8C000000000000008
- CB88B9BB9BB9BB9BBBBBBB33B78788F8C000000000000008CBBF8B9BB9BB9BBB
- 9B9B9BBBBBBBBB376000000000000008CB888B9B9BB9BB9BBBBBB9B9B9BBBBBB
- C000000000000008CBB888BBB9BBB9BB9B9BBBBBBBB9BB9B6800000000000008
- 698F8F8F8F88B8BBB9BB9B9BB9BBBBBB6C00000000000008CBB9B37B8B7B8888
- 8F888B8BBBBB9BBB7600000000000000C7777797939799B939B9B9B79898B798
- 7C000000000000006C6C46C6C6C66C6C66C6674767775776C700000000000000
- 00000000000000888888C8C8C7C66C6800000000000000000000000000000000
- 000000000000000000000000FFFFFFFFFFFF0000FF83FFFFFFFF0000FF807FFF
- FFFF0000FF0003FFFFFF0000FF00007FFFFF0000FF000007FFFF0000FF000000
- FFFF0000FF0000000FFF0000FF00000007FF0000FF00000007FF0000FF000000
- 03FF0000FF00000000FF0000FF000000007F0000FF000000003F0000FF000000
- 001F0000FF000000000F0000FF000000000F0000FF000000003F0000FF000000
- 007F0000FF00000001FF0000FF00000001FF0000FF00000001FF0000FF000000
- 01FF0000FF00000001FF0000FF00000001FF0000FF00000001FF0000FF000000
- 00FF0000FF00000000FF0000FF00000000FF0000FF00000000FF0000FE000000
- 00FF0000FE00000000FF0000FE00000000FF0000FE00000000FF0000FE000000
- 007F0000FE000000007F0000FE000000007F0000FE000000007F0000FE000000
- 007F0000FE000000007F0000FE000000007F0000FE000000003F0000FE000000
- 003F0000FE000000003F0000FF000000003F0000FF000000003F0000FFFFFC00
- 00FF0000FFFFFFFFFFFF00002800000010000000200000000100080000000000
- 000100000000000000000000000100000001000000000000B45D2800B6612900
- BB672D00C67436009B7E6E0079897500B0812F00B4853600D4823E00DC873B00
- E08B3700E7983F00A08F6F00BD896800A5877600AD8A7600BF8F7000B4927D00
- BE977E00D2864600C59C4E00CA9E4D00CC895100CC895600C99E5500DB945600
- E89D4100E39D5E00CBA24F00CCA25100C6A15900DAAD5900EAA54A00E6AA5300
- E8A45B00E3AD5B00FBBF5900CB8D6300C09E6500CA9E6500CEAA6100CAA66B00
- D6AF6400D5B57100D5B57700DBBA7700D1B37C00E3A26500E6B86500E1B86900
- E9AC7100E8AF7D00E3BB7500EFB67B00F2BA7F00FCC15A00FFC75F00FFC76000
- FFC86200FFC96400FFCA6900FFCB6C00FFCC6F00FFCD7200FFCF7600FBCD7B00
- FFD07900089DEE000B9DF20004A7FF0000ADFF0000B4FF0000BBFF001FBFF800
- 28ACEF0038AFF3002DB2F40029BAF7004E96CC005FA9DF0070A2CD0073ADDC00
- 4ABAEF0045ADF1004CBCFF0000C2FF0000CAFF0016C6F90000D1FB0000D1FF00
- 67CFF5006CC8F10066CFFF00D0B68600DEBF9A00DEC28400DFC38800DDC49900
- E6C78D00FFD38100FFD48400FFD78E00E7C09100E1C49100E1C89100E7C89000
- E2C89700EBC29D00F9D79700FFDB9700E1CDAA00E8D4A600E5D2AA00E8D5AC00
- EFDBB400EBDAB800ECD9B900F9E4BD008BD4F300B1DFF400EEE2CC00F2E3C400
- F8E6C400F7E8CB00FFEDCD00FFF0D500FFF2DB00CFE6F400FFF4E000E2EEF700
- FDF9F300F2F7FA00FFFDFA00FFFEFD0000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000261300000000000000
- 000000000000000328210B1700000000000000000000000124393939251B090E
- 000000000000000242403D3B39393922170000000000000432203164403D3B3B
- 390A0000000000142B1E166D6E6664433D0C00000000001A2E63156A07081935
- 23000000000000307C736A7B7D76682A1C00000000000033611E2F7B81817E7E
- 3400000000000036607229741F2F62746C00000000000037706A2C72796F5E27
- 5F000000000000688286868686868686831300000000005B45444B535B777880
- 840E00000000005D5546474849565759590D00000000004F515250544C4D4E4A
- 5806000000000000000000000012100F05000000E7FF0000E0FF0000E00F0000
- E0070000E0030000E0030000E0070000E0070000E0070000E0070000E0070000
- E0030000E0030000E0030000E0030000FF870000280000001800000030000000
- 0100080000000000400200000000000000000000000100000001000000000000
- 7A5E55005F6374006B61660066766F0062637000895302009C660A009C6A1600
- A9730B0093583900B05F2D00BA662B00BE6A2E00A1702300A56B3B00AE683B00
- AF6B3D00B26D3E00A8783000C24B0100C44E0200C7520300CA560500CC590600
- CF5C0700D15F0800D3610900D5630A00D6660B00D8680C00D96E1100D5721D00
- C86D2900CC6D2B00D3702100D6762200D97F2C00CF743700C87E3F00D0713000
- D0753A00D2793C00C07E4B00D17A4200D37C4100D47E4400D47F4900B4801A00
- B2832C00B5852C00B9882B00AD813500B3843300BF913300C3953500C0943900
- C89A3800E4903400E8973A00BA904A00BD954C00B4845A00BE995800CB8A4B00
- C4974400C59A4200C79C4E00C99B4800C98B5600D98D5D00C89F5000CE985600
- CA9F5600D5985000CFA34F00CBA45600CCA65B00D2AA5300D6A85000D1AC5D00
- D9AD5C00ECA24400EFAA4A00F2AC4A00F6BA5800F6BA5F00D9916200DC966900
- D59D6A00C4937400C5967800DD9B7100C8A76C00D3AC6200D1AB6400D5B16100
- D4B06A00D2B06D00DBB46C00C7A87500CDAE7700D7A27200D2B07000D4B27500
- DDBA7700ECB86600E1BB7600F0BA7B00F8C15F00FDC35C00FFC75F00F7C36300
- FAC36000FFC76000FFC86100FFC96500FFCA6900FFCC6E00EDC27100FFCD7200
- FFCE7600FFD07A00FFD17E004C6A8C0062758000627E80006378900062878000
- 72828600578AB0006085A7000091E700099AEF001498E50000B3EF0000A5FF00
- 00AAFF0000AFFF001CABFF0000BCF70000B0FF0000B4FF0000B9FF0000BEFF00
- 34A5E60020BEF00029B1FF0057B3E80077BEE90066B8F4007FBFF30000C1FE00
- 00C7FF0001CCFF0019CCFF0005D7F90000D0FF0000D5FF0029CCFF003CCDFF00
- 43CAF2004CCEFF0059CBFD0062C7FB0076C3F70079CCFB007FCEFF0063D3F200
- D7BC8F00E2AC8800E3B68B00E4BA9100DCC28A00DCC59A00E9C68300E5C48900
- F1CA8200FBCE8500FFD28100FDD38400FFD48600FFD58900FFD68C00E2C49000
- E9CB9000E8C19A00E3CD9F00EACF9B00F4C99400EBD09F00FBD79500FFD89100
- FFD99400FFDB9800FFDD9E00E5CEA000EAC6AD00E5D0A100ECD6AA00FDDDA100
- F1D0AD00E6D3B100EDDAB400EBDBB800ECDDBA00EEDEBC00F3D2B000F8DAB000
- EFE0BE00F9E2B70088C3CC0097C8EA008CC7F50092CDF70099DDFF00BBD6EE00
- 99E0FA0099E2FF00D6D5CE00EBDDC200F7E7C700FBE0C100FFEAC500FFECC900
- F9EACE00FFEDCD00F4EBD700F8EBD100FFEFD100F9EDD600FFF0D500FFF1D900
- FFF2DD00FFF4DF00CFE2F300DBE9F600FFF4E100FFF6E600FAF4E900FFF7E900
- FFF8EB00EFF5FB00FFFAF200FEFBF600FFFCF600FFFCF900FFFEFD0000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 005C000000000000000000000000000000000000000000002F274021295B0000
- 0000000000000000000000000000000014113E7071533A202A00000000000000
- 00000000000000001411486F6F6F6F6F6F522521460000000000000000000000
- 14106A74746F6F6F6F6F6F714A0C000000000000000000001412B47B79767671
- 746F6F6F6F5524000000000000000000162BB14F77B47B7B7676746F6F6F6F3B
- 2E000000000000001645AF4B334451B7B67B7B797674746F542A000000000000
- 1859B9305E6341C8C3C2C2B4B47B795524000000000000001866BC69DF5E43B0
- 0735476BC2C2B22800000000000000001AABDD614C4732DFBE683C0E06136C00
- 00000000000000001AACE4C7E1E9E1E7E4E1E1DFD2B0BD5A0000000000000000
- 1ABACB50424D61EDE9E9E7E5E1E1D05700000000000000001EC9CD3937C468F1
- F1EEEDE9E9E7E72E00000000000000001ACFCD60F66138F309323C5DA9CAE426
- 00000000000000001FC9D14FC6CD36EFDCAE653F3408642E0000000000000000
- 1FDEF3E3CDBBADF6F6F6F6F6F3F3F35700000000000000001FDBEBF2F6F6F6F6
- F6F6F6F6F6F6F6AA000000000000000004D9858486919495D4D8ECF6F6F6F6C5
- 000000000000000080D993888A8D8D909898908792A1A8D35800000000000000
- 7ED7A78B888A8A8D90909899999E9E9C2E000000000000007D9697D5D6A5A7A4
- A3A2A09F9B999E9E0F000000000000000B0A0A010101030505027C7F7F838281
- 0D000000000000000000000000000000000000000000000000000000FBFFFF00
- F03FFF00F007FF00F0007F00F0003F00F0001F00F0000700F0000300F0000700
- F0000F00F0001F00F0000F00F0000F00F0000F00F0000F00F0000F00F0000F00
- F0000F00F0000F00F0000700F0000700F0000700F0000700FFFFFF0028000000
- 2000000040000000010008000000000000040000000000000000000000010000
- 0001000000000000935D0600BC4F0E00BC500E0097620B009B6609009C6A1900
- A9730A00A06E1A00A8741000AD7A1C00965D3F00AE5F2300BE632500A5762C00
- AB7D2D00A9633A00BA6C3600A6773100C1530C00C0551000C55B1100C85F1300
- CC641500CF681600CE661B00CF691F00D16C1B00D5701A00D9751B00DE7C1F00
- C7672600CA652300C76B2600CD6A2500CC6B2C00D16F2A00D5762300D9792300
- D0712F00CE6E3000C57E3D00C97E3C00D1733500D0743900825C4C008D614D00
- AC6C4200B1724600AB775500B07E5600B97A5200D27A4100AE802B00B8862200
- BB8B2700B4842D00BD8C2900B3863500BD8D3100B2883B00BB8D3800DC832D00
- C08F3400C3933300C3953800C79B3B00E2862C00E78A2D00EA8D2E00E18C3600
- EE933400E8983A00F49C3F00CCA03E00B88D4500B58D4B00BC954E00B3836400
- BD947900DF8D4000C0954500C69A4500CC9E4A00DA914200D5994F00C0845300
- C18A5400CA855900D4865400D6885400DA8E5700D68D5E00C49C5500CBA04400
- CAA04D00D0A54600CDA55300CCA15900D7A95500D8A25B00D0AC5F00DFA95900
- E7A64E00F0A84700F2AE4B00F5B55200F7BB5900F8BD5B00CD8D6300C48F6D00
- CA936000C19E6000DA926400DC966800D19D6D00C99A7B00DF9F7600CEAA6100
- CAAA6D00D3AD6500D1A56B00D5AE6900D5B36A00C8A77500DFA37500D2AF7400
- DCAD7E00DBB47000D5B77A00D7B97E00DCB97900E0AD6000E3B76600EABE6D00
- F7C05D00FEC65E00FFC76000FFC86400FFCB6B00F1C17200FFCD7300F4C97A00
- FFD07B003C78B000517398004578A200628B80004284BF0043AAA8000389DD00
- 2093DD002BB6C50029A8DD00008BE2000894E9002C9CEA003498E70000A9FC00
- 16A7FE0001B6FD0036ABEF002FB8EE003DBDEE0022B6F9003ABAF300488CC700
- 4DAAC00040A2E00055BBE90041B7FF0052BEFF0063B4E70001C9FD0017C9FF00
- 00D3FF0023C7FE0035C5FE004FC4FC0071C4EB0060C7FC0079CAFA00D1B58500
- DCB18600DCBD8300D6BB8900DEC28800DEC59200EAC58100EFCE8F00F6C88500
- F2CB8D00FED38300F6D28D00FED58A00E4CB9400E7C39E00E4CB9A00EACE9D00
- EED09900FAD79500FFD99400F0D29800FFDC9A00EBC2A100E1CAA200E0CEAF00
- EDCDAC00ECD1A000E6D2AC00EBD6AC00F0D5A100F8D5A300FDDDA000F3DAAC00
- EDCFB100EAD7B800F5DABA00F3E0B900FBE5BD0089C7EB0083C7F70099CDF700
- 9ED7FC00A2D1EF00B4D3EC00AAD8F900B8DAF100AAE3FD00D5DCDF00EEDFC000
- F5DDC500EFE0C300F3E3C300FEEAC400F4E4CB00F9E5CF00F3E8CF00FEECCB00
- EFE5D100F4EAD400FDEED200FEEDD900FEF0D500FEF2DB00CAE0F200D6E6F400
- F6EEE300FFF4E200F9F4E900FFF9EE00E7F1F900FEFDFB000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000002021232B4E0000000000000000000000000000000000
- 0000000000000000006E13577C79542519277100000000000000000000000000
- 00000000000000000034022F328489896A684826233400000000000000000000
- 00000000000000000034022F578788888888888888693E1B235A000000000000
- 00000000000000000034022F64898888888888888888886C672A0D1F00000000
- 00000000000000000034032F8C8D8B8B8A89888888888888888866292C000000
- 000000000000000000341430C0C08F8F8B8B8B8A888888888888886B43270000
- 000000000000000000341556C185868EC0C08F8F8B8B8A8A8A8888888A691B72
- 00000000000000000034166FBF37533F4163C2C0C08F8F8D8B8A8A88888A6A25
- 6D0000000000000000341773CA3F533BBC38C8CBC8C2C2C28F8F8F8D8A8A8869
- 22000000000000000034187FD3366180613BBDD5D5D5C8C2C2C2C08F8F8F4619
- 000000000000000000341BB7D652EAEA7A0AC78305386283BCC1CBC2C2465800
- 000000000000000000341CC4DA3F5378B838B8D65D350401080E4B7BBE220000
- 000000000000000000341DCFF8F8DAC5784BC7EEEEEADBC77E4B0E12BF190000
- 000000000000000000341DD7F0C5D2EEF8F3F3F3F0F3EEEEEAEAD6C7D4240000
- 000000000000000000341ED8EB426537525DD2F8F8F3F8F3F3EEEEEEDA2B0000
- 0000000000000000003443E7EB61BA39E8B8C5F8F8F8F8F3F8F3F3F3EE340000
- 0000000000000000003444E7EC4060C55F82B9FACDD1E8ECF8F4F8F8F35B0000
- 0000000000000000002C44EBEC4AF0FCBB3782FA070935384B70B9CDEC7D4F00
- 0000000000000000002344EBF060D8E6EC7B76FAD8B9774D3C3506044CC43300
- 0000000000000000002347EBFAC37B7B614178FAFCFCFAFCF7EFD8CED8E63400
- 0000000000000000002349F2FCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFAF92800
- 0000000000000000002355E5E3F6FCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFC2800
- 0000000000000000002399E49B9A9697A8ACDCE0E3F5F6FBFCFCFCFCFCFC3400
- 00000000000000000023B0E4A49E9E9E9EA09E9EA0A2A2A3A9B3DCE1F6FC6D00
- 00000000000000000023B0E4AB9E9E9E9EA0A0A0A0A0ADADADADAFAFAFAD9375
- 00000000000000000023A4E4DFAA9F9E9E9E9EA0A0ADA0ADADADAFAFAFAF9559
- 000000000000000000239FDDDEDEE2DFDDB5B4B2B1B1B1B0B0AEADADAFAF9811
- 0000000000000000002492919190949494A69D9D9D9D9D9CA1A1A1A3A3A4A70C
- 0000000000000000000031313131343434342C23242311101010102E2D0B2874
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000FFFFFFFFFC1FFFFFF801FFFFF8003FFFF80003FFF80000FFF800007F
- F800003FF800000FF8000007F8000007F800000FF800001FF800003FF800003F
- F800003FF800003FF800003FF800003FF800001FF800001FF800001FF800001F
- F800001FF800001FF800001FF800000FF800000FF800000FF800000FFC00000F
- FFFFFFFF28000000300000006000000001000800000000000009000000000000
- 000000000001000000010000000000007B5E550062647200627D7500854F0000
- 8B550100925B0000B8500E00B8511000976000009B6300009F6800009F6F1E00
- A26A0000A36D0B00AB730700B27A0500A06D1800AB761400AD781600A2701F00
- AF7D1E0093593900B45D2800BF652600B5602900BA642A00BE6B2C00A8792C00
- B07E2300B86E3900AA7B3300C34D0100C3500600CA550500CC580600C4550C00
- C8560800CF5C0800C7591100D7670C00CF651300C5611B00D26B1A00D6741F00
- E4781200CB642100C16E2E00C86B2A00C3712F00DA7B2500CF6F3100C5743000
- CA7A3200CE7D3800D3773800875B470093714100A8734F00AF7F5800B37E5100
- CF7D4600D27A4100BB830700B5811C00BA871F00B4812500B9862500BC8A2700
- BD8D2D00BF902F00AF843C00BD8E3400B5893C00B98E3C00BF923900C0891000
- ED831600DE832B00C4952F00DC833200C4973B00EE962900E5923600CEA13F00
- B58D4800B3805700BF865100BB95550094856100B78B6000BE8D6200BF976900
- CB814100CB874800D88F4900C69A4400DB944400D6855100C89E5300C69F5E00
- CE995A00E79F4600E29D4B00E2975400CEA64F00D0A14900CBA45A00D1A45100
- D3A85400D3AB5B00DEA85900F0A94900F4B04E00E4A25E00F8B85300F3BC5F00
- FBBF5900CE9A6000DA906100DC9B7100CCA76100D2AB6500D5B06500DCB36700
- D5B16B00DAB56D00CEA27400C8A97300CBAE7A00D1AE7400D4AB7E00CFB07600
- D4B47500DBBB7700D1B37C00DABC7C00E6A56100E4B06000E4B26900E3BA6D00
- F0B66E00E2A27400E0B77000E3BE7C00F3B97800FFC75F00DEC17E00FCC66100
- FFC86300FFCB6B00FFCE7300FACD7E00FFD07B001078BD00316EA8002570B600
- 007ACF001075C7000078DF004197AC00769AB3000087DF000095DF002090D700
- 0D80E100009EEB00009BFF002697ED003395E70000A2EF0000B5EF0000A8FE00
- 00B7FE0033ADEF0026AFFF0026B7FF0033BFFF00408DCF004093D3005097D300
- 40A8DF0070AADB00409FE90040AEE3004CB4E30046BAFF0066B3EF0000C0EF00
- 15D0E90000C7FE0000D4FE0033D1FF004DC5FF0040D1FF0066CBFB0073CEFF00
- 66D7FF0066E0FF00D4AC8300D8BB8500E1A68000E2B28F00E2B69900DDC08000
- DEC79B00E7C68800F4CC8100F0C08B00F0CC8D00FECB8F00FFD38300F3D08F00
- FFD68A00FFD88F00E5CA9400F0C29100E6D09F00FFD99300F8D69900FEDC9B00
- DFCBA800E9CDA800F4CFA400E8D3AB00F1D7A700FFDEA100F0CFB400E9D7B800
- FFE0A500FFE1AA00EFE0BF00FDE5BA0080B3DF008FBDE30080C1E7009FC6E700
- 8CD3FF0099D2F800AFD0EB00BFD9EF00A6DCFF008CE0FF0099E2FF00B3E4FF00
- FDEAC700EFE1D400FEEED100FEF2D900CCEAFD00DFECF700CCF0FF00FEF6E600
- E6F0F900FFFDFB00000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000C92020337800000000000000000000000000000000000000000000
- 000000000000000000000000000000000000000000202A5E302420203E000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000003E202A878787765E2A20202762C90000000000000000000000000000
- 00000000000000000000000000000000000000002020173B5A5C8F9294746632
- 2920202062000000000000000000000000000000000000000000000000000000
- 000000002020173A3A3C9292929292929292704E29202033C900000000000000
- 00000000000000000000000000000000000000002020173A3A6F929292929292
- 929292929273532B20202A620000000000000000000000000000000000000000
- 000000002020173A3C9292929292929292929292929292949467372A20202E77
- 00000000000000000000000000000000000000002020173A6595959492929292
- 92929292929292949492928A571E18242E000000000000000000000000000000
- 000000002020173A8B97969695959592929292929292929292929292926F3C19
- 20000000000000000000000000000000000000002020173A98D3D39797969696
- 95959292929292929292929292929261252A0000000000000000000000000000
- 0000000020201956D5D3D3D3D3D3979797969695959492929292929292929292
- 732C20620000000000000000000000000000000020251A5BDCCFDAD5D3D3D3D3
- D3979797969695959592929292929292929253252E0000000000000000000000
- 0000000020231B7FE26C0D436A8CD6D5D3D3D3D3D39797969696959592929292
- 92929271292A000000000000000000000000000020261B83E66D417C48130B42
- 6AD6D5D3D3D3D3D3979797969695959492929292732920000000000000000000
- 0000000020261BC7E86D45D1136CD48F0BDCDCDADAD5D5D3D3D3D39797979696
- 9595959295922B3E000000000000000000000000202634DEE86E0F0F4B0F8FE6
- 09CEDCE2DCDCDADAD6D5D3D3D3D3D39797969695702B20770000000000000000
- 00000000212831DEF57C0F6CE8CE0ED10ECEE6DCE2E2E2DCDCDADADAD5D3D3D3
- D3D39750212E0000000000000000000000000000202834E0F57B48F5F5F57D13
- 1DCEE86B06426390DBE2DCDCDCDADAD5D3D35021C90000000000000000000000
- 00000000202835E4F77D43F5F5F5F5600BD7E86B090606060614497BD1DCDCDC
- DA8D200000000000000000000000000000000000212D34FCF8D7100F40517DD9
- 0E60F5F5D77949110605050504051F7BE2682000000000000000000000000000
- 00000000202837FCF8F8F8E7D77D480F0D6BF5F5F5F5F5E8E1CC641C0505041C
- E668200000000000000000000000000000000000202D37FCFCFCFCF8FCF8F8F8
- E7F5F8F7F5F7F5F5F5F5F5E8F5D18155E8682000000000000000000000000000
- 00000000202D35FEFCD77BCCE0F7FCFCF8F8F8F8F8F7F7F7F7F5F5F5F5F5F5E8
- E8D0200000000000000000000000000000000000202D37FCFE863F51100F104B
- 7AE0FCF8F8FCF8F8F7F7F7F7F5F5F5F5F5D82000000000000000000000000000
- 00000000202D61FEFC8851FECE86E4854B85FCFCFCF8FCF8F8F8F8F7F8F7F7F7
- F5DF200000000000000000000000000000000000214D72FEFE8854D7100FE7FC
- 8785FCFCFCFCFCFCFCFCF8F8F8F8F7F7F7F721C9000000000000000000000000
- 00000000202D72FEFE884C106E863FE7866BFEFCFCFCFCFCFCFCFCFCFCF8F8F8
- F8F724C900000000000000000000000000000000204D89FEFE883F6DFEFE7A48
- 7D4BFEFC0E424987C8E0F6FCFCFCFCFCF8FC373E000000000000000000000000
- 00000000204D89FEFE884FFEFEFEFE450F51FEFE0F0D0D0B0B0B090B1C5580C8
- E4FC3E35000000000000000000000000000000C9204D89FEFECE54FEFEFEFEFC
- 4145FEFECD864A4A0B0B0B060906090606FC8E20000000000000000000000000
- 000000C9204D89FEFE883F4C54698886C810E4FEFEFEFEFEFEFCE4DD8158470C
- 06FCCA20000000000000000000000000000000C9204D91FEFEFCE7D9887E6060
- 1045FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEE320000000000000000000000000
- 000000C9204DD2FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFCFEFEFC
- FEFCF620000000000000000000000000000000C9214DD2FEFEFEFEFEFEFEFEFE
- FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE21C90000000000000000000000
- 000000C92052A1FDE9F0F0FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
- FEFEFE303E0000000000000000000000000000C9219AC3F9A2A29D9D9EB2B4E9
- ECF0FAFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE3E350000000000000000000000
- 000000C920BEC6F9B0ACACACADACACAAA6A3A29DA4B3B6E9EFF0FEFEFEFEFEFE
- FEFEFE78200000000000000000000000000000C920BEC6F9BAACACACACADACAD
- ADADBEBEBEBEBEBEAAABA3A3B8B8EBEAF0F9FECB200000000000000000000000
- 000000C920BEC3F9C3A7ACACACACADACADADACADADBEADBEBEBEBFBEBFBFBFBF
- BFBCBCA0200000000000000000000000000000C920ADC3F9F1A7ACA7ACACACAC
- ADACBEADADADBEADBEBEBEBEBFBEBFBFBFBFBFBD200000000000000000000000
- 000000C920ACC3F9F9EDBAAFACACACACACADACADADADADBEBEBEBEBEBEBEBFBF
- BFBFBFBF087800000000000000000000000000C920ACC4F9F9F9F9F9F9F4F3C4
- C3C1B1B0ADADADADADBEBEBEBEBEBEBFBFBFBFBF393E00000000000000000000
- 000000C920A7A8A9A9A9A9BBBBBBBBBBEEEEEEEEEEF9F3F3F2C3C3C2C0C0BFBE
- BEBFBFBF032100000000000000000000000000002002020202029B9B9B9B9B9B
- 9C9F9F9F9F9F9F9F9FA5A9A9A9A9B7BBBBAEAEB9592100000000000000000000
- 000000003E212020202020202020202020202020202020081616161616160102
- 0202382121770000000000000000000000000000000000000000000000000000
- 0000C9C9C9C9C9C9773E3E3E3E3E3E2721212E78000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000FFFFFFFFFFFF0000FF83FFFFFFFF0000FF807FFF
- FFFF0000FF0003FFFFFF0000FF00007FFFFF0000FF000007FFFF0000FF000000
- FFFF0000FF0000000FFF0000FF00000007FF0000FF00000007FF0000FF000000
- 03FF0000FF00000000FF0000FF000000007F0000FF000000003F0000FF000000
- 001F0000FF000000000F0000FF000000000F0000FF000000003F0000FF000000
- 007F0000FF00000001FF0000FF00000001FF0000FF00000001FF0000FF000000
- 01FF0000FF00000001FF0000FF00000001FF0000FF00000001FF0000FF000000
- 00FF0000FF00000000FF0000FF00000000FF0000FF00000000FF0000FE000000
- 00FF0000FE00000000FF0000FE00000000FF0000FE00000000FF0000FE000000
- 007F0000FE000000007F0000FE000000007F0000FE000000007F0000FE000000
- 007F0000FE000000007F0000FE000000007F0000FE000000003F0000FE000000
- 003F0000FE000000003F0000FF000000003F0000FF000000003F0000FFFFFC00
- 00FF0000FFFFFFFFFFFF00002800000010000000200000000100200000000000
- 4004000000000000000000000000000000000000000000000000000015080003
- AF4D0CA383380684411A003E1508000500000000000000000000000000000000
- 000000000000000000000000000000000000000000000000000000006C2B015A
- BB672DFFCA9E65FFEAA54AFFDF862EF4BC6218BF83360378411A002C00000000
- 000000000000000000000000000000000000000000000000000000008234016A
- B45D28FFE3AD5BFFFFC75FFFFFC75FFFFFC75FFFFBBF59FFE89D41FFCF7428E4
- 96430D9F2B11001E00000000000000000000000000000000000000008234016A
- B66129FFFBCD7BFFFFCD72FFFFCA69FFFFC862FFFFC75FFFFFC75FFFFFC75FFF
- E6AA53FFB6560EB22B110015000000000000000000000000000000008234016A
- C67436FFE1B869FFDAAD59FFE6B865FFFFD381FFFFCF76FFFFCB6CFFFFC964FF
- FFC760FFFCC15AFFD87822E2411A00310000000000000000000000008234016A
- D28646FFD6AF64FFCCA251FFCA9E4DFFF9D797FFFFDB97FFFFD78EFFFFD484FF
- FFD079FFFFCC6FFFE7973CFB6E2E036A0000000000000000000000008234016A
- DB9456FFDBBA77FFE6C78DFFC59C4EFFE7C890FFB0812FFFB48536FFC99E55FF
- E3BB75FFE8A45BFF411A0037000000000000000000000000000000008234016A
- E3A265FFF7E8CBFFEFDBB4FFE2C897FFF8E6C4FFFFEDCCFFF9E4BDFFE1C491FF
- CAA66BFFE39D5EFF15080005000000000000000000000000000000008234016A
- E9AC71FFDFC388FFCBA24FFFD5B577FFF2E3C4FFFFF4E0FFFFF2DBFFFFF0D5FF
- FFEECFFFE8AF7DFF411A001C000000000000000000000000000000008234016D
- EFB67BFFDEC284FFE8D5ACFFCEAA61FFEBDAB8FFC6A159FFD1B37CFFDDC499FF
- ECD9B9FFEBC29DFF411A003A000000000000000000000000000000008234017F
- F2BA7FFFE8D4A6FFE1C891FFD5B571FFE5D2AAFFEEE2CCFFE1CDAAFFD0B686FF
- C09E65FFDEBF9AFF6C2B015F000000000000000000000000000000008234017F
- E7C091FFE2EEF7FFFFFFFFFFFFFFFEFFFFFEFEFFFFFEFDFFFFFEFCFFFFFDFBFF
- FFFDF9FFFDF9F3FF82370684000000000000000000000000000000008234017F
- 67CFF5FF0B9DF2FF089DEEFF28ACEFFF4ABAEFFF6CC8F1FF8BD4F3FFB1DFF4FF
- CFE6F4FFF2F7FAFF9F5627A8000000000000000000000000000000008234017F
- 66CFFFFF4CBCFFFF04A7FFFF00ADFFFF00B4FFFF00BBFFFF00C2FFFF00CAFFFF
- 00D1FFFF00D1FBFF8A744CCD000000000000000000000000000000008234017D
- 4E96CCFF70A2CDFF73ADDCFF5FA9DFFF45ADF1FF38AFF3FF2DB2F4FF29BAF7FF
- 1FBFF8FF16C6F9FF758671F7000000000000000000000000000000002B110017
- 411A0055411A00558234016A8234016A8234017A8234017F76360F8A72371394
- 6A391D9A663A21A66C2B015F0000000000000000C1FF0000C03F0000C0070000
- C0030000C0010000C0010000C0030000C0030000C0030000C0030000C0030000
- C0030000C0030000C0030000C0030000C0030000280000001800000030000000
- 0100200000000000600900000000000000000000000000000000000000000000
- 00000000000000000000000031130020C44E028F622701573113001400000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000C44E02B7C87E3FFFCB8A4BFFC86D29FFC45208CB
- 933A01876227014B311300100000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000006227011CC24B01FFAF6B3DFFB4845AFFF7C363FFFAC360FF
- EFAA4AFFE49034FFD5721DFFC65306C7933A017B622701300000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000062270120C24B01FFAE683BFFCE9856FFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFFFC75FFFFDC35CFFECA244FFD97F2CFFC75E15E7C44E02A3
- 6227015F3113000C000000000000000000000000000000000000000000000000
- 000000000000000062270120C24B01FFAE683BFFECB866FFFFC966FFFFC861FF
- FFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFF8C15FFFD59850FF
- BA662BFF933A017B000000000000000000000000000000000000000000000000
- 000000000000000062270120C44E02FFB26D3EFFFDD384FFFFD17EFFFFCF77FF
- FFCC6FFFFFCA68FFFFC863FFFFC760FFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- F6BA58FFD6741FFB933A017F3113000400000000000000000000000000000000
- 000000000000000062270120C75203FFC07E4BFFF1CA82FFD6A850FFEDC271FF
- FFD587FFFFD280FFFFD079FFFFCD72FFFFCB6AFFFFC964FFFFC760FFFFC75FFF
- FFC75FFFFFC75FFFE8973AFFC65306BF31130018000000000000000000000000
- 000000000000000062270120CA5605FFC98B56FFE9C683FFCFA34FFFB9882BFF
- C99B48FFD9AD5CFFFFD890FFFFD589FFFFD382FFFFD17BFFFFCE74FFFFCC6DFF
- FFC966FFFFC861FFFFC75FFFF2AC4AFFC75507C7000000000000000000000000
- 000000000000000062270120CC5906FFD59D6AFFE9CB90FFB4801AFFD3AC62FF
- DBB46CFFC49744FFFDDDA1FFFFDD9EFFFFDB98FFFFD892FFFFD68CFFFFD485FF
- FFD17EFFFFCF77FFF6BA5FFFD26C1AF7933A017F000000000000000000000000
- 000000000000000062270120CF5C07FFD7A272FFEACF9BFFDDBA77FFFFEBC6FF
- D1AB64FFC79C4EFFE5C489FF9C660AFFB38433FFCA9F56FFE1BB76FFFBD795FF
- FFD994FFFBCE85FFC95A0EDB3113002000000000000000000000000000000000
- 000000000000000062270120D15F08FFE3B68BFFF7E7C7FFD4B06AFFCBA456FF
- C89F50FFB5852CFFFFEBC7FFEBD09FFFD4B275FFBA904AFFA17023FF895302FF
- A87830FFF0BA7BFF6227017F0000000000000000000000000000000000000000
- 000000000000000062270120D36109FFE4BA91FFF8EBD1FFECD6AAFFF8EACEFF
- FFF3DDFFFAEBCFFFFFF0D5FFFFEFD1FFFFEDCDFFFFECC9FFFFEAC4FFF9E2B7FF
- E2C490FFF4C994FF933A018B0000000000000000000000000000000000000000
- 000000000000000062270120D5630AFFE8C19AFFEDDAB4FFD1AC5DFFC59A42FF
- CCA65BFFD2B06EFFFFF4E1FFFFF3DEFFFFF2DAFFFFF0D7FFFFEFD2FFFFEECEFF
- FFECCAFFF8DAB0FFC44E029F0000000000000000000000000000000000000000
- 000000000000000062270120D6650BFFF1D0ACFFEDDDB9FFC89A38FFC39535FF
- E5CEA0FFD2B070FFFFF8EBFFFFF7E9FFFFF6E6FFFFF5E2FFFFF4DFFFFFF2DCFF
- FFF1D8FFFFF0D4FFC34E03BF0000000000000000000000000000000000000000
- 000000000000000062270128D7670BFFF2D1AFFFEEDEBCFFD5B161FFFFFCF8FF
- D2B16CFFC09439FFFFFBF3FFA9730BFFB2832CFFBD954CFFC8A76CFFD7BC8FFF
- E6D3B1FFF9EDD6FFCA631FE30000000000000000000000000000000000000000
- 000000000000000062270140D8680CFFF3D2B0FFEFE0BEFFD2AA53FFE5D0A1FF
- EBDBB8FFBF9133FFFAF4E9FFEBDDC2FFDCC59AFFCDAE77FFBE9958FFAD8135FF
- 9C6A16FFC7A875FFD37C41FF3113000800000000000000000000000000000000
- 000000000000000062270140D9690CFFFBE0C1FFFDFBF7FFF4EBD7FFECDDBBFF
- E3CD9FFFDCC28AFFFFFEFDFFFFFEFCFFFFFDFBFFFFFDF9FFFFFCF8FFFFFCF6FF
- FFFBF5FFFFFAF2FFD99363FF6227012C00000000000000000000000000000000
- 000000000000000062270140D96E11FFD6D5CEFFCFE2F3FFEFF5FBFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFFFFFEFEFFFFFEFDFFFFFEFCFFFFFDFBFF
- FFFDFAFFFFFCF8FFE2AC88FF6227014F00000000000000000000000000000000
- 00000000000000006227014066766FFF99E0FAFF099AEFFF0091E7FF1498E5FF
- 34A5E6FF57B3E8FF77BEE9FF97C8EAFFBBD6EEFFDBE9F6FFFFFFFEFFFFFEFEFF
- FFFEFDFFFFFEFCFFEAC6ADFF6227017300000000000000000000000000000000
- 000000000000000062270140628780FF99E2FFFF29B1FFFF00A6FFFF00ABFFFF
- 00B0FFFF00B5FFFF00B9FFFF00BEFFFF00C0FDFF00BCF7FF00B3EFFF20BEF0FF
- 43CAF2FF63D3F2FF88C3CCFFC44E029700000000000000000000000000000000
- 000000000000000062270140627E80FF99DDFFFF7FCEFFFF1CABFFFF00A5FFFF
- 00AAFFFF00AFFFFF00B4FFFF00B9FFFF00BEFFFF00C2FFFF00C7FFFF00CCFFFF
- 00D1FFFF00D6FFFF05D7F9FFC14E05BF00000000000000000000000000000000
- 000000000000000062270140627580FF66B8F4FF7FBFF3FF8CC7F5FF92CDF7FF
- 76C3F7FF79CCFBFF62C7FBFF59CBFDFF4CCEFFFF3CCDFFFF29CCFFFF19CCFFFF
- 03CCFFFF00D0FFFF00D5FFFF9F622EEF00000000000000000000000000000000
- 000000000000000062270120AB5520EF935839FF935839FF7A5E55FF7A5E55FF
- 7A5E55FF6B6166FF626370FF626370FF5F6374FF4C6A8CFF637890FF637890FF
- 6085A7FF578AB0FF728286FFB85B19E700000000000000000000000000000000
- 0000000000000000000000000000000000000000000000003113001062270120
- 6227012062270124622701406227014062270140622701576227015F6227015F
- 6227016B6227017F6227015B3113000C000000000000000000000000F0FFFF00
- F00FFF00E001FF00E0001F00E0001F00E0000700E0000300E0000300E0000300
- E0000700E0000F00E0000F00E0000F00E0000F00E0000F00E0000700E0000700
- E0000700E0000700E0000700E0000700E0000700E0000700FE00070028000000
- 2000000040000000010020000000000080100000000000000000000000000000
- 000000000000000000000000000000000000000000000000000000006C2B0143
- C44E0266411A003D411A00210000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000005722000EC45207E2
- C76B26FFC65D15E7C44F03CB8234019B8234015C572200150000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000000015080005983C0192C1530CFF
- C28B56FFC8A775FFD1A56BFFDA9142FFD57726FFCE6515FBC85809D7C44E029C
- 6C2B0163411A0033411A00130000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000411A0013C44E02BDBC4F0EFF
- AD6E44FFB07E56FFE0AD60FFFEC65FFFFBC45FFFF5B553FFF0A847FFE8983AFF
- D97923FFC85809DDC44E02BD8234017882340138000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFBC4F0EFF
- AC6B42FFC08A53FFF7C05DFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFFDC35CFFF1AC4AFFDC832DFFD06C1DFFC65A10E6C45004AD983C015F
- 411A003C2B11000A000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFBC4F0EFF
- AC6B42FFD8A25BFFFFC761FFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFFFC75FFFFEC65FFFF8BD5BFFE7A64EFFC97E3CFFBD6122FB
- C2570FE68234016D000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFBC500EFF
- AC6C42FFF1C172FFFFCE73FFFFCC6CFFFFCA68FFFFC863FFFFC761FFFFC75FFF
- FFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFDFA959FF
- C57E3DFFC44F03C86C2B012F0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFC05510FF
- B17246FFFDD486FFFFD383FFFFD17DFFFFD078FFFFCD72FFFFCC6DFFFFCA67FF
- FFC863FFFFC760FFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- F7BB59FFE0872DFDC85608D6823401512B110003000000000000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFC55B11FF
- C08453FFF7D28CFFE3B766FFEABE6DFFF4C97AFFFFD485FFFFD281FFFFD17BFF
- FFCF77FFFFCD70FFFFCB6BFFFFC966FFFFC862FFFFC760FFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFF3AF4CFFD16917F7C55003982B1100150000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFC85F13FF
- CA9360FFF0CD8BFFBB8929FFCC9E49FFC08F34FFC29137FFD7A955FFFFD68BFF
- FFD586FFFFD280FFFFD17CFFFFCF75FFFFCD71FFFFCB6BFFFFCA66FFFFC862FF
- FFC760FFFFC75FFFFFC75FFFF6B551FFD6731EFBAE45019C2B11001500000000
- 0000000000000000000000000000000000000000411A0015C44E02BFCC6415FF
- D19D6DFFF0D298FFC19133FFCC9F4BFFBD8D31FFEBC682FFB5842BFFFAD795FF
- FFDB98FFFFD993FFFFD78EFFFFD689FFFFD484FFFFD27FFFFFD07AFFFFCE74FF
- FFCC6FFFFFCA69FFFFC965FFFDC45EFFF3AF4DFFCA5B0CE6411A003C00000000
- 0000000000000000000000000000000000000000411A0015C44E02BFCF6816FF
- DCAD7EFFF0D5A1FFB88622FFCFA657FFDAB570FFCCA04FFFBB8D38FFEFCE8FFF
- FCDCA0FFFFDEA0FFFFDD9CFFFFDA97FFFFD993FFFFD78EFFFFD689FFFFD484FF
- FFD27FFFFFD079FFFFCE74FFE18C36FFCC5E0FF0983C01751508001100000000
- 0000000000000000000000000000000000000000411A0015C44E02BFD26D18FF
- DCB186FFF1D9ABFFC69941FFFDE9C4FFFFEAC4FFD3AE69FFAD7A1CFFEED099FF
- DCB979FF9B6609FFB1812EFFCCA159FFDCB470FFE9C481FFF6D28FFFFFDA96FF
- FFD891FFFDD388FFDF8D40FFAE4501A62B11001C000000000000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFD5701AFF
- E7C39EFFF3E0B9FFC39438FFC79C47FFD3AD65FFDFBF83FFB6872FFFDFBE81FF
- F3DAABFFC49C55FFAE802FFF97620AFF935D06FF9C6A19FFA7772AFFB98C44FF
- D7AE6AFFF6C885FFCF691FFF2B11001800000000000000000000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFD8741BFF
- EDCDACFFFFF4E1FFFFF3DEFFF4E2C0FFE5CC9BFFCEAA63FFC09545FFE6CB99FF
- FFEDCDFFFFECC9FFFFEBC6FFFBE5BDFFECD1A0FFD2AF74FFB78D49FFA4762EFF
- A67731FFF5C98FFFCE661DFF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFDA771CFF
- EDCFB1FFF8ECD4FFE6CC98FFEBD5A9FFF8EACEFFFFF3DEFFFCEED5FFFDF0D6FF
- FFF0D6FFFFEFD3FFFFEED0FFFFEDCCFFFFECCAFFFFEBC5FFFFEAC3FFF5DCAFFF
- EACE9DFFF8D5A3FFD16F2AFF5722001500000000000000000000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFDE7C1FFF
- EFD3B7FFF3E4C7FFC79B3BFFD0AC5FFFBD8D2AFFC59B47FFC8A052FFEBD7AFFF
- FFF4E0FFFFF3DDFFFFF2DAFFFFF1D8FFFFF0D5FFFFEFD2FFFFEECFFFFFEDCBFF
- FFECC9FFFADEB6FFD37633FF8234012A00000000000000000000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFE5862AFF
- F4DCC3FFF3E6CBFFCFA751FFDEC288FFBF8F2AFFEFDFBFFFD9BC83FFE2CA9BFF
- FFF6E7FFFFF6E4FFFFF5E2FFFFF4E0FFFFF3DDFFFFF2DAFFFFF1D8FFFFF0D5FF
- FFEFD2FFFDEACAFFD67F41FF8234014700000000000000000000000000000000
- 0000000000000000000000000000000000000000411A0015C44E02BFE78A2DFF
- F6DFC8FFF3E8CFFFC79730FFCBA044FFE3CC9DFFC8A04CFFD7B97EFFD9BD85FF
- FFF9EEFFE2CBA0FFE6D2ACFFEFE0C3FFF4E7CEFFFCF1DDFFFFF4E2FFFFF3DFFF
- FFF3DCFFFFF2D9FFDA8E57FF8234016300000000000000000000000000000000
- 0000000000000000000000000000000000000000411A001CC44E02C6E98C2EFF
- F6E0C9FFF3E9D2FFCCA03EFFF5EBD7FFFFFCF9FFDEC592FFBB8B27FFD5B77AFF
- FFFBF4FFA9730AFFA87410FFAF8028FFB38635FFB88E46FFC19E60FFD1B585FF
- E0CAA4FFF5E7CEFFDFA375FF8234018600000000000000000000000000000000
- 0000000000000000000000000000000000000000411A002AC44E02D4EB8E2FFF
- F7E1CAFFF4EAD3FFD0A546FFEBD9B3FFEEDFC0FFF1E6CDFFD2B06CFFCDAA60FF
- FCF8F1FFE6D4B3FFD6BB89FFCAAA6DFFBC954EFFB2883BFFAB7D2DFFA06E1AFF
- 97630DFFB48D4DFFEBC2A1FF983C01AD15080003000000000000000000000000
- 0000000000000000000000000000000000000000411A002AC44E02D4EE9334FF
- F9E5CFFFF9F4E9FFE4CB94FFD8B76DFFD5B266FFCEA754FFC49638FFCFAB62FF
- FCF9F4FFFFFDFAFFFFFDF9FFFFFCF8FFFDFAF4FFF5EEE0FFEFE5D1FFE7D8BEFF
- E0CEAFFFE6D6BBFFF1D6BFFFC44E02BB411A0011000000000000000000000000
- 0000000000000000000000000000000000000000411A002AC44E02D4F49C3FFF
- FEEDD9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFF
- FFFEFEFFFFFEFDFFFFFEFCFFFFFEFCFFFFFDFBFFFFFDFAFFFFFDF9FFFFFCF8FF
- FFFCF7FFFFFBF5FFF7EFE6FFC34E03D1411A0027000000000000000000000000
- 0000000000000000000000000000000000000000411A002AC44E02D4D5994FFF
- D5DCDFFFB8D4EDFFD4E5F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFEFFFFFFFEFFFFFFFEFFFFFEFDFFFFFEFDFFFFFEFCFFFFFEFCFFFFFDFBFF
- FFFDFAFFFFFCF9FFFFFCF8FFC55A15E2411A0038000000000000000000000000
- 0000000000000000000000000000000000000000411A002AC44E02D429A8DDFF
- AAE2FAFF0894E9FF008BE2FF0389DDFF2093DDFF40A2E0FF63B4E7FF86C5EBFF
- A2D1EFFFB8DAF1FFCAE0F2FFD9E8F5FFE7F1F9FFFFFFFEFFFFFFFEFFFFFEFDFF
- FFFEFDFFFFFEFCFFFFFEFBFFCE753BF4411A004A000000000000000000000000
- 0000000000000000000000000000000000000000411A002AC44E02D422CDFEFF
- AAE6FFFF24B0FFFF00A6FFFF00AAFFFF00AEFFFF00ADFBFF00ADF8FF00ABF4FF
- 00A8F0FF0EB0F1FF20B8F2FF2FB8EEFF3DBDEEFF55BBE9FF71C4EBFF8DCAEBFF
- B1D3ECFFD7E7F4FFF4F8FBFFD68D5EFF983C0163000000000000000000000000
- 0000000000000000000000000000000000000000411A002AC44E02D422C2FFFF
- AAE3FFFF52BEFFFF00A2FFFF00A6FFFF00A9FFFF00ADFFFF00B0FFFF00B4FFFF
- 00B8FFFF00BBFFFF00BFFFFF00C3FFFF00C6FFFF00CAFFFF00CEFFFF00D1FFFF
- 00D5FFFF00CFF9FF00C8F4FF628B80FFC44E028A000000000000000000000000
- 0000000000000000000000000000000000000000411A002AC44E02D422B8FFFF
- AAE1FFFF9ED9FFFF41B7FFFF10A8FFFF00A5FFFF00A9FFFF00ADFFFF00B0FFFF
- 00B4FFFF00B8FFFF00BBFFFF00BFFFFF00C2FFFF00C6FFFF00CAFFFF00CDFFFF
- 00D1FFFF00D5FFFF00D8FFFF43AAA8FFC14E04AD000000000000000000000000
- 0000000000000000000000000000000000000000411A002AC44E02D41DA7FDFF
- 83C7F7FF99CDF7FF99CEF7FFAAD8F9FF9ED5F9FF7FCAF9FF74CAFBFF60C7FCFF
- 4FC4FCFF38C1FDFF38C7FFFF31C8FFFF26C8FFFF1DC9FFFF12C9FFFF0CCCFFFF
- 01CCFFFF00D0FFFF00D4FFFF2BB6C5FFAE5B1CE2000000000000000000000000
- 0000000000000000000000000000000000000000411A0027C44E02D14578A2FF
- 507399FF527398FF3C78B0FF4284BFFF4284BFFF4284BFFF488CC7FF3395E7FF
- 3395E7FF3899E7FF389CE9FF319BE9FF2C9CEAFF3FACEFFF34AAEFFF31ABEFFF
- 3DB8F3FF38BCF4FF22B9F4FF4DAAC0FFAE5F23FF000000000000000000000000
- 00000000000000000000000000000000000000002B11000382340158823401AA
- 823401AA823401AA823401AAC44E02BFC44E02BFC44E02BFC44E02BFC44E02CA
- C44E02D4C44E02D4C44E02D4B35114D8A35526E6A35526E9A35526E99E562CE9
- 885A45F4825C4CFF935839F7C44E02CF983C0184000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000411A0015411A0015411A0015411A0015411A0020
- 411A002A411A002A411A002A411A002E411A003C411A003F411A003F411A003F
- 411A004A411A0055411A004D411A002515080005000000000000000000000000
- 00000000FC3FFFFFF807FFFFF0003FFFF0000FFFF000007FF000007FF000003F
- F000000FF0000007F0000003F0000003F0000003F000000FF000001FF000003F
- F000001FF000001FF000001FF000001FF000001FF000000FF000000FF000000F
- F000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000F
- FFC0000F28000000300000006000000001002000000000008025000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000C44E0230C44E021000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000C44E0280C44E02FFC44E02FFC44E02CF
- C44E028FC44E0250000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000C44E0220C44E02FFC56019FFCB8748FFC86E29FF
- C5540AFFC44E02FFC44E02FFC44E02BFC44E0270C44E02300000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000C44E02BFC44E02FFC3621FFFD0B27DFFD0B37EFF
- D1B37EFFCE9A60FFCB8141FFC7611AFFC44E02FFC44E02FFC44E02EFC44E02AF
- C44E0280C44E0240000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0230C44E02FFC14A01FFB45D28FFAF7F58FFB78B60FF
- BF9769FFE0B770FFFFC75FFFF9C563FFF3BC5FFFE79F46FFDA7B25FFCF6513FF
- C44E02FFC44E02FFC44E02FFC44E02AFC44E0270C44E02200000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFC04901FFB45D28FFA8734FFFA8734FFF
- B37E51FFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFF0A948FFDE832BFFCF6513FFC44E02FFC44E02FFC44E02CFC44E0280
- C44E024000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFC04901FFB45D28FFA8734FFFA8734FFF
- DEA859FFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFFFC75FFFFFC75FFFF8B853FFE59236FFD06B1CFFC44E02FF
- C44E02FFC44E02EFC44E02AFC44E0270C44E0220000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFC04901FFB45D28FFA8734FFFB37E51FF
- FFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFAC564FF
- E29D4BFFCE7D38FFC7621AFFC44E02FFC44E02FFC44E02DFC44E029FC44E0230
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFC04901FFB45D28FFA8734FFFCE995AFF
- FFC965FFFFC862FFFFC760FFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFE4B060FFBF8651FFB86E39FFBF6526FFC3570FFFC44E02DF
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFC04901FFB45D28FFA8734FFFE4B269FF
- FFCE72FFFFCC6EFFFFCB6AFFFFCA66FFFFC863FFFFC861FFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFFFC75FFFFFC75FFFDEA859FFB37E51FFB66129FFC44E02FF
- C44E021000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFC34D02FFB56029FFA8734FFFFACD7EFF
- FFD27EFFFFD07AFFFFCF76FFFFCE73FFFFCD6FFFFFCB6BFFFFCA68FFFFC964FF
- FFC861FFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFDB9444FFC85608FF
- C44E02EFC44E0250000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFC65004FFB8622AFFB38057FFFFD78CFF
- FFD689FFFFD586FFFFD382FFFFD27FFFFFD17BFFFFD078FFFFCE74FFFFCD70FF
- FFCC6DFFFFCB69FFFFC965FFFFC862FFFFC760FFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFF8B853FF
- D6741FFFC44E02FFC44E02AFC44E021000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFCA5505FFBA652BFFBE8D62FFFFDB97FF
- F4CC81FFFFD891FFFFD78DFFFFD68AFFFFD587FFFFD483FFFFD380FFFFD17CFF
- FFD079FFFFCF75FFFFCE72FFFFCC6EFFFFCB6AFFFFCA66FFFFC863FFFFC861FF
- FFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFE59236FFC85608FFC44E02DFC44E0230000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFCC5806FFBC672BFFCEA274FFFFDEA1FF
- D2A550FFA46C00FFB98625FFD0A149FFE7BC6CFFFFD88FFFFFD68BFFFFD588FF
- FFD485FFFFD381FFFFD27EFFFFD07AFFFFCF76FFFFCE73FFFFCD6FFFFFCB6BFF
- FFCA68FFFFC964FFFFC861FFFFC75FFFFFC75FFFFFC75FFFFFC75FFFFFC75FFF
- FFC75FFFFFC75FFFF4B04EFFCF6513FFC44E02EFC44E02600000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFCF5C08FFBD6A2CFFD4AB7EFFFFE2ABFF
- D3A854FFB6831FFFDCB367FFBE8E33FFAB7614FF9D6500FFB48125FFCC9D48FF
- FFD890FFFFD78CFFFFD689FFFFD586FFFFD382FFFFD27FFFFFD17BFFFFD078FF
- FFCE74FFFFCD70FFFFCC6DFFFFCB69FFFFC965FFFFC862FFFFC760FFFFC75FFF
- FFC75FFFFFC75FFFFFC75FFFFBBF59FFCF6513FFC44E02FFC44E026000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFD26009FFBF6C2DFFD4AC83FFFFE5B4FF
- D4AA59FFBD8B2BFFEECC8BFFAE7915FFD0A452FFF3D08FFFE0B86FFF9A6300FF
- FFDC9AFFFFDB97FFFFDA94FFFFD891FFFFD78DFFFFD68AFFFFD587FFFFD483FF
- FFD380FFFFD17CFFFFD079FFFFCF75FFFFCE72FFFFCC6EFFFFCB6AFFFFCA66FF
- FFC863FFFFC861FFFFC75FFFFFC75FFFFFC75FFFD36C19FFC44E02BF00000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFD4630AFFC16E2EFFE9CBA3FFFFE8BDFF
- D4AC5DFFAE770BFFAC750BFFC09138FFA7710BFFDCB46BFFFFE1AAFF9B6400FF
- ECC885FFFFDEA1FFFFDD9EFFFFDC9BFFFFDB98FFFFDA95FFFFD992FFFFD88FFF
- FFD68BFFFFD588FFFFD485FFFFD381FFFFD27EFFFFD07AFFFFCF76FFFFCE73FF
- FFCD6FFFFFCB6BFFFFCA68FFF0AA4BFFD36C19FFC44E02FFC44E029F00000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFD7660BFFC3712FFFE9CDA9FFFFEBC5FF
- D5AE62FFA97100FFCEA454FFFFE7BBFFE8C88BFFA7710BFFEDCD91FFA36D0BFF
- E6C382FFFFE2ABFFF9D89DFFFFE0A5FFFFDFA2FFFFDE9FFFFFDC9CFFFFDB99FF
- FFDA96FFFFD993FFFFD890FFFFD78CFFFFD689FFFFD586FFFFD382FFFFD27FFF
- FFD17BFFFFD078FFDE8633FFC44E02FFC44E02DFC44E02600000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFD9690DFFC47330FFE9CFAEFFFFEDCCFF
- D6B065FFC09032FFFFEBC6FFFFEAC3FFFFE9C1FFD6B16CFFAC7817FFB07E23FF
- E6C589FFFFE5B4FFCBA259FF965F00FFAF7E2AFFC89E53FFE3BE7CFFF8D699FF
- FFDEA0FFFFDD9DFFFFDC9AFFFFDB97FFFFDA94FFFFD891FFFFD78DFFFFD68AFF
- FFD587FFDA8032FFC44E02FFC44E028000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFDB6C0EFFC67530FFE9D3BAFFFFF0D3FF
- D6B269FFBC8A27FFFAE6C0FFFFEDCBFFFFECC9FFFFEBC6FFC49A4AFF9F6800FF
- E7C88FFFFFE8BDFFCCA45DFF976000FF955E00FF935C00FF915A00FF8F5800FF
- A2701FFFB6893EFFD3AA65FFF0CC8DFFFFDD9EFFFFDC9BFFFFDB98FFFFDA95FF
- F0B66EFFC44E02FFC44E02700000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFDE6F0FFFC77631FFFFF5E3FFFFF2DAFF
- E1C387FFB37C0EFFAB7200FFB4801AFFC39640FFD2AD66FFE8CC98FFA7710DFF
- C3994AFFFFEBC5FFFFEAC2FFE5C791FFCAA460FFB5893BFFA06D18FF905900FF
- 8E5800FF8C5600FF8A5400FF875200FF8D590AFFAA7B33FFD0A764FFFFDE9FFF
- E29550FFC44E02FF000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFE07210FFC97832FFFFF7E7FFFFF4E0FF
- FFF3DEFFFFF3DCFFF5E2BFFFE4CA95FFD4B06CFFBC8F36FFAA740DFFA26A00FF
- CAA35BFFFFEDCCFFFFEDCAFFFFECC8FFFFEBC6FFFFEAC3FFFFE9C1FFF1D7A7FF
- DCBB82FFC69F5EFFA8792FFF895300FF875100FF854F00FFA2722BFFFFE1A9FF
- E29754FFC44E02FF000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFE17411FFCA7A32FFFFF8EDFFFFF6E5FF
- FFF5E4FFFFF5E2FFFFF4E0FFFFF4DFFFFFF3DDFFFFF2DBFFFFF2D9FFF3E0BDFF
- F9E8C8FFFFF0D3FFFFEFD1FFFFEECFFFFFEECDFFFFEDCBFFFFECC9FFFFEBC6FF
- FFEAC4FFFFEAC2FFFFE9BFFFFFE8BDFFE9CB98FFD1AE74FFBA9150FFFFE4B2FF
- E29959FFC44E02FF000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFE37611FFCB7B33FFFFFBF3FFFFF8EAFF
- E3C991FFD5B065FFDDBF81FFEBD6ABFFFAEDD4FFFFF4E1FFFFF4DFFFFFF3DDFF
- FFF3DCFFFFF2DAFFFFF1D8FFFFF1D6FFFFF0D4FFFFEFD2FFFFEED0FFFFEECEFF
- FFEDCCFFFFECC9FFFFEBC7FFFFEBC5FFFFEAC2FFFFE9C0FFFFE8BDFFFFE7BBFF
- F0C08BFFC44E02FFC44E02300000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFE57812FFCC7D33FFFFFCF6FFFFF9EEFF
- DBBB77FFB9830FFFC6993BFFB07700FFAE7500FFB17B0EFFBF9239FFCEAA63FF
- E9D3A9FFFFF4E0FFFFF3DEFFFFF3DCFFFFF2DAFFFFF2D8FFFFF1D7FFFFF0D5FF
- FFEFD3FFFFEFD1FFFFEECEFFFFEDCCFFFFEDCAFFFFECC8FFFFEBC6FFFFEAC3FF
- F0C291FFC44E02FFC44E02400000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFE77A13FFD88F49FFFFFCF8FFFFFBF2FF
- DBBC79FFC89C3CFFFFF9EFFFE2C894FFD7B776FFEBD7B1FFD5B575FFBF923AFF
- D3B373FFFFF6E5FFFFF5E4FFFFF5E2FFFFF4E0FFFFF4DFFFFFF3DDFFFFF2DBFF
- FFF2D9FFFFF1D7FFFFF0D5FFFFF0D3FFFFEFD1FFFFEECFFFFFEECDFFFFEDCBFF
- F4CFA4FFC44E02FFC44E02400000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFE87C14FFE4A25EFFFFFDFAFFFFFCF6FF
- DCBD7AFFCA9D3DFFE3CB97FFB37900FFB17800FFF0E1C2FFFFF9EEFFD5B577FF
- D4B476FFFFF8EAFFFFF7E9FFFFF7E7FFFFF6E6FFFFF6E4FFFFF5E3FFFFF4E1FF
- FFF4DFFFFFF3DDFFFFF3DCFFFFF2DAFFFFF1D8FFFFF1D6FFFFF0D4FFFFEFD2FF
- FFEED0FFC44E02FFC44E02800000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFE97E14FFE5A35FFFFFFEFCFFFFFDF8FF
- DDBE7CFFBD860FFFB77D00FFD1AB5CFFD8BA7AFFB57F0FFFF0E2C4FFD5B679FF
- CAA45AFFFFF9EEFFFFF9EDFFFFF8ECFFFFF8EBFFFFF7E9FFFFF7E8FFFFF6E6FF
- FFF6E5FFFFF5E3FFFFF5E1FFFFF4E0FFFFF3DEFFFFF3DCFFFFF2DAFFFFF2D8FF
- FFF1D7FFC25007FFC44E02800000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E02FFEA8015FFE5A460FFFFFEFDFFFFFEFBFF
- DDBF7DFFBA8000FFD3AE5DFFFFFDF8FFFFFCF7FFCEA95DFFBF8F2EFFD1AF6BFF
- C1953DFFFFFBF2FFFFFAF1FFA56D00FFAF7D1EFFB88D3BFFCFB076FFD4B884FF
- E6D2AFFFF2E4CBFFFFF6E7FFFFF6E5FFFFF5E4FFFFF5E2FFFFF4E0FFFFF4DFFF
- FFF3DDFFD37738FFC44E02BF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0260C44E02FFEC8116FFE6A561FFFFFFFEFFFFFEFDFF
- DEC07EFFC8992FFFFFFEFBFFFFFDFAFFFFFDFAFFFFFDF9FFBF902FFFAF7600FF
- C1963EFFFFFCF6FFFFFBF5FFAC770FFFA46C00FFA26A00FFA06800FF9E6600FF
- 9C6400FF9A6200FF986000FFA97B2CFFB58D48FFC8A973FFD5BB8FFFEAD8B9FF
- FFF5E3FFCF7C43FFC44E02CF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FFED8216FFE7A662FFFFFFFFFFFFFFFEFF
- DFC17FFFCEA13FFFFFFEFDFFFFFEFCFFFFFEFCFFFFFEFBFFFAF5EBFFBA871FFF
- BD8F2FFFFFFDF8FFFFFCF8FFDEC79BFFD2B47BFFBA8F3EFFB98E3DFF9F6700FF
- 9D6500FF9B6400FF996200FF976000FF955E00FF935C00FF905A00FF8E5800FF
- FFF7E8FFE2A274FFC44E02FF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FFED8316FFE7A762FFFFFFFFFFFFFFFFFF
- DFC27FFFBE8300FFC08910FFCB9F3FFFCEA64FFFDBBD7EFFDABC7EFFD8BB7EFF
- AF7600FFEBDBBCFFFFFDFAFFFFFDF9FFFFFDF9FFFFFDF8FFFFFCF7FFFFFCF6FF
- F9F2E6FFE6D6B8FFDFCBA8FFCBAE7AFFBD995BFFAF843CFF9F6F1EFF905900FF
- FFF8ECFFE2B28FFFC44E02FFC44E022000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FFEE8417FFF3B978FFFFFFFFFFFFFFFFFF
- F7F0DFFFEFE0BFFFE6D09FFFDDC080FFD8B76FFFC99D40FFC79C40FFB37900FF
- C0912FFFFFFEFDFFFFFEFCFFFFFEFCFFFFFEFBFFFFFDFAFFFFFDFAFFFFFDF9FF
- FFFDF8FFFFFCF7FFFFFCF6FFFFFCF6FFFFFBF5FFFFFBF4FFFFFBF3FFFFFAF2FF
- FFFAF0FFF0CFB4FFC44E02FFC44E024000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FFEF8517FFFECB8FFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF
- FFFFFEFFFFFFFEFFFFFEFEFFFFFEFDFFFFFEFDFFFFFEFCFFFFFEFCFFFFFEFBFF
- FFFDFAFFFFFDFAFFFFFDF9FFFFFDF8FFFFFCF8FFFFFCF7FFFFFCF6FFFFFBF5FF
- FFFBF4FFEFE1D4FFC44E02FFC44E027000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FFEF8617FFFECC8FFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFFFFFFFEFFFFFFFEFFFFFEFDFFFFFEFDFF
- FFFEFCFFFFFEFCFFFFFEFBFFFFFEFBFFFFFDFAFFFFFDF9FFFFFDF9FFFFFDF8FF
- FFFCF7FFFFFCF6FFC25007FFC44E028000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FFEE9629FF769AB3FFE6F0F9FF80B3DFFF
- BFD9EFFFBFD9EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFF
- FFFFFEFFFFFEFDFFFFFEFDFFFFFEFDFFFFFEFCFFFFFEFCFFFFFEFBFFFFFDFAFF
- FFFDFAFFFFFDF9FFC8692BFFC44E02BF00000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FF1078BDFF66CDF1FFCCE9FBFF0087DFFF
- 0088DFFF0078CFFF0079CFFF1075C7FF408DCFFF5097D3FF80B3DFFF9FC6E7FF
- BFD9EFFFDFECF7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFEFFFFFFFEFFFFFFFEFFFFFEFEFFFFFEFDFFFFFEFDFFFFFEFCFF
- FFFEFCFFFFFEFBFFCF7F4AFFC44E02CF00000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FF00C7FBFF66E0FFFFCCECFFFF26B2FFFF
- 00A7FFFF00A9FFFF00ACFFFF00AEFFFF00B1FFFF00A9F7FF00A2EFFF009EEBFF
- 0090DFFF0091DFFF007DCFFF2090D7FF4093D3FF70AADBFF80B3DFFFAFD0EBFF
- BFD9EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFFFFFFFEFFFFFFFEFF
- FFFEFDFFFFFEFDFFDC9D74FFC44E02FF00000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FF00C5FFFF66DBFFFFCCECFFFF40B9FFFF
- 00A4FFFF00A7FFFF00A9FFFF00ABFFFF00AEFFFF00B0FFFF00B3FFFF00B5FFFF
- 00B8FFFF00BAFFFF00BCFFFF00BFFFFF00C1FFFF00C4FFFF00BAF7FF00B0EFFF
- 00B2EFFF009ADFFF009BDFFF40AEE3FF40A8DFFF80C1E7FF8FBDE3FFBFD9EFFF
- CFE3F2FFFFFFFEFFE2B699FFC44E02FFC44E0220000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FF00BCFFFF66D6FFFFCCEBFFFF66C6FFFF
- 00A1FFFF00A4FFFF00A6FFFF00A9FFFF00ABFFFF00ADFFFF00B0FFFF00B2FFFF
- 00B5FFFF00B7FFFF00BAFFFF00BCFFFF00BEFFFF00C1FFFF00C3FFFF00C6FFFF
- 00C8FFFF00CBFFFF00CDFFFF00D0FFFF00D2FFFF00D4FFFF00D7FFFF00D2FBFF
- 00BEEFFF00C0EFFF4197ACFFC44E02FFC44E0240000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FF00B3FFFF66D2FFFFCCEBFFFFA6DCFFFF
- 009EFFFF00A1FFFF00A3FFFF00A6FFFF00A8FFFF00ABFFFF00ADFFFF00B0FFFF
- 00B2FFFF00B4FFFF00B7FFFF00B9FFFF00BCFFFF00BEFFFF00C1FFFF00C3FFFF
- 00C5FFFF00C8FFFF00CAFFFF00CDFFFF00CFFFFF00D1FFFF00D4FFFF00D6FFFF
- 00D9FFFF00DBFFFF15D0E9FFC44E02FFC44E0270000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FF00AAFFFF66CDFFFFCCEAFFFFCCEBFFFF
- 8CD3FFFF4DBBFFFF26AFFFFF00A3FFFF00A5FFFF00A8FFFF00AAFFFF00ADFFFF
- 00AFFFFF00B2FFFF00B4FFFF00B6FFFF00B9FFFF00BBFFFF00BEFFFF00C0FFFF
- 00C2FFFF00C5FFFF00C7FFFF00CAFFFF00CCFFFF00CFFFFF00D1FFFF00D4FFFF
- 00D6FFFF00D8FFFF00DBFFFFB8500EFFC44E028F000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FF00A1FFFF73CDFFFFCCEAFFFFCCEAFFFF
- CCEBFFFFCCEBFFFFCCECFFFFCCECFFFFB3E4FFFF99DBFFFF73CFFFFF66CCFFFF
- 4DC5FFFF33BFFFFF26BDFFFF00B4FFFF00B6FFFF00B8FFFF00BBFFFF00BDFFFF
- 00C0FFFF00C2FFFF00C5FFFF00C7FFFF00CAFFFF00CCFFFF00CEFFFF00D1FFFF
- 00D3FFFF00D6FFFF00D8FFFF937141FFC44E02BF000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0280C44E02FF0098FFFF2697EDFF3394E7FF3395E7FF
- 3395E7FF3395E7FF66B2EFFF66B2EFFF66B2EFFF66B2EFFF66B3EFFF99D0F7FF
- 99D1F7FF99D1F7FF99D1F7FF99D2F7FFCCF0FFFF99E2FFFF99E3FFFF8CE0FFFF
- 66D8FFFF66D9FFFF40D1FFFF33D0FFFF33D2FFFF0DCCFFFF00CBFFFF00CEFFFF
- 00D0FFFF00D3FFFF00D5FFFF627D75FFC44E02FF000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0270C44E02FF626B7BFF626371FF626371FF626371FF
- 626371FF316EA8FF316EA8FF316EA8FF316EA8FF316EA8FF316EA8FF2570B6FF
- 0078DFFF0078DFFF0078DFFF0078DFFF0078DFFF0078DFFF0078DFFF0078DFFF
- 0D80E1FF3397E7FF3397E7FF3397E7FF3397E7FF409FE9FF66B6EFFF66B7EFFF
- 33ADEFFF33AEEFFF4CB4E3FF948561FFC44E02FF000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0210C44E02BFC44E02FFC44E02FFC44E02FFC44E02FF
- C44E02FFC44E02FFC44E02FFC44E02FFC44E02FFC44E02FFC44E02FFC44E02FF
- C44E02FFC44E02FFC44E02FFC44E02FFC44E02FFC44E02FFB85110FF935939FF
- 935939FF935939FF935939FF935939FF935939FF7B5E55FF626371FF626371FF
- 626371FF875B47FFC44E02FFC44E02FFC44E029F000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000C44E0240C44E0240C44E0240C44E0240C44E0240C44E0240
- C44E0250C44E0280C44E0280C44E0280C44E0280C44E0280C44E0280C44E029F
- C44E02BFC44E02BFC44E02BFC44E02BFC44E02BFC44E02BFC44E02EFC44E02FF
- C44E02FFC44E02DFC44E028FC44E023000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000FFCFFFFFFFFF0000FF81FFFFFFFF0000FF001FFF
- FFFF0000FF0001FFFFFF0000FE00001FFFFF0000FE000003FFFF0000FE000000
- 3FFF0000FE00000007FF0000FE00000007FF0000FE00000003FF0000FE000000
- 01FF0000FE000000007F0000FE000000003F0000FE000000001F0000FE000000
- 000F0000FE000000000F0000FE000000000F0000FE000000001F0000FE000000
- 007F0000FE00000000FF0000FE00000001FF0000FE00000001FF0000FE000000
- 01FF0000FE00000000FF0000FE00000000FF0000FE00000000FF0000FE000000
- 00FF0000FE00000000FF0000FE00000000FF0000FE00000000FF0000FE000000
- 00FF0000FE000000007F0000FE000000007F0000FE000000007F0000FE000000
- 007F0000FE000000007F0000FE000000007F0000FE000000007F0000FE000000
- 003F0000FE000000003F0000FE000000003F0000FE000000003F0000FE000000
- 003F0000FE000000003F0000FE000000003F0000FE000000003F0000FFFE0000
- 007F0000FFFFFFFFFFFF0000}
- end
- object LabelDescricao: TLabel
- Left = 49
- Top = 1
- Width = 193
- Height = 47
- Align = alLeft
- Caption = 'Hist'#243'rico de Tabelas'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clNavy
- Font.Height = -19
- Font.Name = 'MS Sans Serif'
- Font.Style = [fsBold]
- ParentFont = False
- Layout = tlCenter
- ExplicitHeight = 24
- end
- end
- object Panel2: TPanel
- Left = 0
- Top = 49
- Width = 177
- Height = 404
- Align = alLeft
- BevelOuter = bvNone
- TabOrder = 1
- object LabelUser: TLabel
- Left = 7
- Top = 8
- Width = 36
- Height = 13
- Caption = '&Usu'#225'rio'
- FocusControl = ComboUser
- end
- object LabelForm: TLabel
- Left = 7
- Top = 56
- Width = 48
- Height = 13
- Caption = '&Formul'#225'rio'
- FocusControl = ComboForm
- end
- object LabelEvento: TLabel
- Left = 7
- Top = 104
- Width = 34
- Height = 13
- Caption = '&Evento'
- FocusControl = ComboEvento
- end
- object LabelTabela: TLabel
- Left = 7
- Top = 152
- Width = 33
- Height = 13
- Caption = '&Tabela'
- FocusControl = ComboTabela
- end
- object ComboUser: TComboBox
- Left = 7
- Top = 24
- Width = 163
- Height = 21
- Style = csDropDownList
- ItemHeight = 13
- TabOrder = 0
- OnChange = ComboUserChange
- end
- object ComboForm: TComboBox
- Left = 7
- Top = 72
- Width = 163
- Height = 21
- Style = csDropDownList
- ItemHeight = 13
- TabOrder = 1
- OnChange = ComboUserChange
- end
- object BitBtn1: TBitBtn
- Left = 16
- Top = 304
- Width = 145
- Height = 25
- Caption = '&Aplicar Filtro'
- Enabled = False
- TabOrder = 2
- OnClick = BitBtn1Click
- Glyph.Data = {
- 36050000424D3605000000000000360400002800000010000000100000000100
- 08000000000000010000530B0000530B0000000100000001000000310000004A
- 0000005A0000006B0000007B0000219C390018AD390021AD390029BD390021AD
- 4A0031CE4A0031CE5A0039D65A0039DE63004AEF6B004AEF730052EF730052EF
- 7B006BF78C00FF00FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00131313131313
- 1313020213131313131313131313131313030902131313131313131313131313
- 030D090213131313131313131313131303120902131313131313131313131313
- 0312090213131313131313131313131303120902131313131313131313131313
- 0312090213131313131313131313131303120902131313131313131313131303
- 120D09000213131313131313131303120D0D0501000213131313131313031210
- 0E0D070401000213131313130312110F0D0B0909040100021313130312110C0A
- 0806090909040100021303030303030303030303030303030303131313131313
- 1313131313131313131313131313131313131313131313131313}
- end
- object BitBtn2: TBitBtn
- Left = 16
- Top = 336
- Width = 145
- Height = 25
- Caption = '&Excluir Hist'#243'rico'
- TabOrder = 3
- OnClick = BitBtn2Click
- Glyph.Data = {
- 36030000424D3603000000000000360000002800000010000000100000000100
- 18000000000000030000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FF1877EA1574E0FF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF1776E615
- 73E7136FDC126ED30F6AC9FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- FF00FFFF00FFFF00FF1676CA268BE5278CEB2184E3116CCF0C67C40B64BB0962
- B4075CA9FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF258BD83EABEE45
- B4F72687DD3DAAF41E80D50F69BF065BAA0458A004579A035495FF00FFFF00FF
- FF00FFFF00FF01500A319CF739A4F41B6DC448B7FA2687DD41ADFA3BA7F81F81
- D4197ACC065B9F025291FF00FFFF00FFFF00FF0B6344185F6901500A166AD425
- 81CE1160C02889E340ACFE359EF23CA6FF3CA6FF2D95EFFF00FFFF00FFFF00FF
- 06630925AC461CB62F1CB62F1CB62F01500A01500A196DA32380E12C8FEB38A3
- FF38A1FFFF00FFFF00FFFF00FF096D111C9A3147F77936E5541CB62F0E912D12
- 805B1CB62F1CB62F01500A01500AFF00FFFF00FFFF00FFFF00FFFF00FF1C982F
- 18902935E05D21C2390CA015008600008300068E0F1DA6572D9197FF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FF035A0617992811AA1D018202007B0004
- 8A0B005D01005D01FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- 1387232AD149048807005C00005D01046D0AFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FF0E78182CD44D068C09005400FF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF08690E2BCE49
- 07960D005800FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FF0D82170C9D15005E00FF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF0B8913006501
- FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF
- 00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- end
- object BitBtn3: TBitBtn
- Left = 16
- Top = 368
- Width = 145
- Height = 25
- Caption = '&Fechar'
- TabOrder = 4
- OnClick = BitBtn3Click
- Glyph.Data = {
- 36030000424D3603000000000000360000002800000010000000100000000100
- 18000000000000030000120B0000120B00000000000000000000FF00FFFF00FF
- FF00FFFF00FFFF00FFFF00FFFF00FF824B4B4E1E1FFF00FFFF00FFFF00FFFF00
- FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF824B4B824B4BA64B4BA9
- 4D4D4E1E1FFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
- 824B4B824B4BB64F50C24F50C54D4EB24D4E4E1E1F824B4B824B4B824B4B824B
- 4B824B4B824B4BFF00FFFF00FFFF00FF824B4BD45859CB5556C95455C95253B7
- 4F524E1E1FFE8B8CFB9A9CF8AAABF7B5B6F7B5B6824B4BFF00FFFF00FFFF00FF
- 824B4BD75C5DD05A5BCF595ACF5758BD53564E1E1F23B54A13C14816BD480CBC
- 41F7B5B6824B4BFF00FFFF00FFFF00FF824B4BDD6364D75F60D55E5FD55C5DC2
- 575A4E1E1F2AB44D1CBF4C1EBC4C13BC45F7B5B6824B4BFF00FFFF00FFFF00FF
- 824B4BE36869DD6566DA6364DE6667C6595B4E1E1F26B14916BC481BBB4910BB
- 43F7B5B6824B4BFF00FFFF00FFFF00FF824B4BEB6D6EE26768E67E7FFAD3D4CC
- 6E704E1E1FA5D89750D16F42C9662DC758F7B5B6824B4BFF00FFFF00FFFF00FF
- 824B4BF27374E96C6DEB8182FCD1D3CF6E704E1E1FFFF2CCFFFFD7FFFFD4E6FC
- C7F7B5B6824B4BFF00FFFF00FFFF00FF824B4BF87879F07576EE7273F07374D1
- 65664E1E1FFCEFC7FFFFD5FFFFD3FFFFD7F7B5B6824B4BFF00FFFF00FFFF00FF
- 824B4BFE7F80F77A7BF6797AF77779D76B6B4E1E1FFCEFC7FFFFD5FFFFD3FFFF
- D5F7B5B6824B4BFF00FFFF00FFFF00FF824B4BFF8384FC7F80FB7E7FFE7F80DA
- 6E6F4E1E1FFCEFC7FFFFD5FFFFD3FFFFD5F7B5B6824B4BFF00FFFF00FFFF00FF
- 824B4BFF8889FF8283FF8182FF8283E073744E1E1FFCEFC7FFFFD5FFFFD3FFFF
- D5F7B5B6824B4BFF00FFFF00FFFF00FF824B4B824B4BE27576FE8182FF8687E5
- 76774E1E1FFAEBC5FCFBD1FCFBCFFCFBD1F7B5B6824B4BFF00FFFF00FFFF00FF
- FF00FFFF00FF824B4B9C5657CB6C6DCF6E6E4E1E1F824B4B824B4B824B4B824B
- 4B824B4B824B4BFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF824B4B82
- 4B4B4E1E1FFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF}
- end
- object ComboEvento: TComboBox
- Left = 7
- Top = 120
- Width = 163
- Height = 21
- Style = csDropDownList
- ItemHeight = 13
- TabOrder = 5
- OnChange = ComboUserChange
- end
- object ComboTabela: TComboBox
- Left = 7
- Top = 168
- Width = 163
- Height = 21
- Style = csDropDownList
- ItemHeight = 13
- TabOrder = 6
- OnChange = ComboUserChange
- end
- end
- object Panel3: TPanel
- Left = 177
- Top = 49
- Width = 636
- Height = 404
- Align = alClient
- BevelOuter = bvNone
- TabOrder = 2
- object Splitter1: TSplitter
- Left = 0
- Top = 89
- Width = 636
- Height = 3
- Cursor = crVSplit
- Align = alBottom
- end
- object DBMemo1: TDBMemo
- Left = 0
- Top = 248
- Width = 636
- Height = 156
- Align = alBottom
- DataField = 'Obs'
- DataSource = DataSource1
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Courier New'
- Font.Style = []
- ParentFont = False
- ReadOnly = True
- ScrollBars = ssBoth
- TabOrder = 0
- end
- object DBGrid1: TDBGrid
- Left = 0
- Top = 0
- Width = 636
- Height = 89
- Align = alClient
- DataSource = DataSource1
- Options = [dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgAlwaysShowSelection, dgConfirmDelete, dgCancelOnExit]
- ReadOnly = True
- TabOrder = 1
- TitleFont.Charset = DEFAULT_CHARSET
- TitleFont.Color = clWindowText
- TitleFont.Height = -11
- TitleFont.Name = 'MS Sans Serif'
- TitleFont.Style = []
- Columns = <
- item
- Expanded = False
- FieldName = 'UserName'
- Title.Caption = 'Usu'#225'rio'
- Width = 157
- Visible = True
- end
- item
- Expanded = False
- FieldName = 'FormCaption'
- Title.Caption = 'Formul'#225'rio'
- Width = 157
- Visible = True
- end
- item
- Expanded = False
- FieldName = 'Evento'
- Title.Caption = 'Evento '
- Width = 79
- Visible = True
- end
- item
- Expanded = False
- FieldName = 'EventDate'
- Title.Caption = 'Data do Evento'
- Width = 65
- Visible = True
- end
- item
- Expanded = False
- FieldName = 'EventTime'
- Title.Caption = 'Hora do Evento'
- Width = 65
- Visible = True
- end
- item
- Expanded = False
- FieldName = 'TableName'
- Width = 84
- Visible = True
- end>
- end
- object StringGrid1: TStringGrid
- Left = 0
- Top = 92
- Width = 636
- Height = 156
- Align = alBottom
- ColCount = 3
- DefaultColWidth = 220
- DefaultRowHeight = 21
- FixedCols = 0
- RowCount = 2
- Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goRowSelect]
- TabOrder = 2
- ColWidths = (
- 169
- 220
- 220)
- end
- end
- object DataSource1: TDataSource
- OnDataChange = DataSource1DataChange
- Left = 224
- Top = 121
- end
-end
diff --git a/internal/2.31RC1/1/UCHistorico/UCHist_Form.pas b/internal/2.31RC1/1/UCHistorico/UCHist_Form.pas
deleted file mode 100644
index 1a78fa6..0000000
--- a/internal/2.31RC1/1/UCHistorico/UCHist_Form.pas
+++ /dev/null
@@ -1,318 +0,0 @@
-unit UCHist_Form;
-
-interface
-
-{$I 'UserControl.inc'}
-
-uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- UCHist_Base, Dialogs, StdCtrls, Buttons, Grids, DBGrids, ExtCtrls, DBCtrls, DB;
-
-Type TAuxObj = class(TObject)
- Private
- IdUser : Integer;
-end;
-
-type
- TFrmHistorico = class(TForm)
- Panel1: TPanel;
- Image1: TImage;
- LabelDescricao: TLabel;
- Panel2: TPanel;
- DataSource1: TDataSource;
- Panel3: TPanel;
- DBMemo1: TDBMemo;
- Splitter1: TSplitter;
- DBGrid1: TDBGrid;
- LabelUser: TLabel;
- ComboUser: TComboBox;
- LabelForm: TLabel;
- ComboForm: TComboBox;
- BitBtn1: TBitBtn;
- BitBtn2: TBitBtn;
- BitBtn3: TBitBtn;
- LabelEvento: TLabel;
- ComboEvento: TComboBox;
- LabelTabela: TLabel;
- ComboTabela: TComboBox;
- StringGrid1: TStringGrid;
- procedure BitBtn1Click(Sender: TObject);
- procedure BitBtn2Click(Sender: TObject);
- procedure BitBtn3Click(Sender: TObject);
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
- procedure FormShow(Sender: TObject);
- procedure ComboUserChange(Sender: TObject);
- procedure DataSource1DataChange(Sender: TObject; Field: TField);
- private
- DataSetHist : TDataSet;
- procedure SetComBoValues;
- { Private declarations }
- public
- fControl : TUCControlHistorico
- { Public declarations }
- end;
-
-implementation
-
-
-{$R *.dfm}
-
-procedure TFrmHistorico.BitBtn1Click(Sender: TObject);
-Var cSql : String;
-begin
- cSql := Format('Select UH.%s as UserId, Uh.%s as Form , ' +
- 'Uh.%s as Evento , Uh.%s as Obs, Uh.%s as FormCaption, Uh.%s as EventDate, Uh.%s as EventTime, uh.%s as TableName, '+
- 'US.%s As UserName from %s UH, %s US where UH.%s = US.%s and Uh.%s = %s ',
- [ fControl.TableHistory.FieldUserID ,
- fControl.TableHistory.FieldForm ,
- fControl.TableHistory.FieldEvent ,
- fControl.TableHistory.FieldObs ,
- fControl.TableHistory.FieldCaptionForm ,
- fControl.TableHistory.FieldEventDate ,
- fControl.TableHistory.FieldEventTime ,
- fControl.TableHistory.FieldTableName ,
- fControl.UserControl.TableUsers.FieldLogin ,
- fControl.TableHistory.TableName ,
- fControl.UserControl.TableUsers.TableName ,
- fControl.TableHistory.FieldUserId ,
- fControl.UserControl.TableUsers.FieldUserID ,
- fControl.TableHistory.FieldApplicationID ,
- QuotedStr(fControl.UserControl.ApplicationID) ]);
-
- if ComboUser.ItemIndex <> 0 then
- cSql := cSql + Format(' and US.%s = %s ',[fControl.UserControl.TableUsers.FieldLogin,QuotedStr(ComboUser.Text)]);
-
- if ComboForm.ItemIndex <> 0 then
- cSql := cSql + Format(' and UH.%s = %s ',[fControl.TableHistory.FieldCaptionForm,QuotedStr(ComboForm.Text)]);
-
- if ComboEvento.ItemIndex <> 0 then
- cSql := cSql + Format(' and UH.%s = %s ',[fControl.TableHistory.FieldEvent,QuotedStr(ComboEvento.Text)]);
-
- if ComboTabela.ItemIndex <> 0 then
- cSql := cSql + Format(' and UH.%s = %s ',[fControl.TableHistory.FieldTableName,QuotedStr(ComboTabela.Text)]);
-
- cSql := cSql + Format(' order by Uh.%s, Uh.%s',[fControl.TableHistory.FieldTableName,fControl.TableHistory.FieldEventDate ]) ;
-
- DataSetHist.Close;
- DataSetHist := nil;
- DataSetHist := fControl.UserControl.DataConnector.UCGetSQLDataset( cSql );
- DataSetHist.Open;
- DataSource1.DataSet := DataSetHist;
- BitBtn1.Enabled := False;
-end;
-
-procedure TFrmHistorico.BitBtn2Click(Sender: TObject);
-var cSql : String;
-begin
- if MessageBox(Handle, pChar( fControl.Historymsg.Msg_LimpHistorico ) , pChar(fControl.HistoryMsg.Msg_MensConfirma),mb_YesNo) = ID_YES then
- begin
- cSql := '';
-
- if ComboUser.ItemIndex <> 0 then
- cSql := cSql + Format(' %s = %d ',[fControl.TableHistory.FieldUserID , TAuxObj(ComboUser.Items.Objects[ComboUser.ItemIndex]).IdUser ]);
-
- if ComboForm.ItemIndex <> 0 then
- cSql := cSql + Format(' and %s = %s ',[fControl.TableHistory.FieldCaptionForm,QuotedStr(ComboForm.Text)]);
-
- if ComboEvento.ItemIndex <> 0 then
- cSql := cSql + Format(' and %s = %s ',[fControl.TableHistory.FieldEvent,QuotedStr(ComboEvento.Text)]);
-
- if ComboTabela.ItemIndex <> 0 then
- cSql := cSql + Format(' and %s = %s ',[fControl.TableHistory.FieldTableName,QuotedStr(ComboTabela.Text)]);
-
- If Length( trim( cSql ) ) <> 0 then
- Begin
- If UpperCase(trim(Copy( cSql , 1 , 4 ))) = 'AND' then
- Delete(cSql,1,4);
- cSql := Format('delete from %s where ',[fControl.TableHistory.TableName]) + cSql;
- End
- else
- cSql := Format('delete from %s ',[fControl.TableHistory.TableName]) + cSql;
- fControl.UserControl.DataConnector.UCExecSQL( cSql );
- DataSetHist := Nil;
- SetComBoValues;
-
- If fControl.UserControl.LogControl.Active then
- fControl.UserControl.Log( Format( fControl.HistoryMsg.Msg_LogEmptyHistory,[ fControl.UserControl.CurrentUser.UserName, QuotedStr(FormatDateTime('YYYYMMDDhhmmss', now)) ]),3);
- end;
-end;
-
-procedure TFrmHistorico.BitBtn3Click(Sender: TObject);
-begin
- close;
-end;
-
-procedure TFrmHistorico.FormClose(Sender: TObject;
- var Action: TCloseAction);
-begin
- Action := caFree;
-end;
-
-procedure TFrmHistorico.SetComBoValues;
-Var Aux : TAuxObj;
-Begin
- Aux := TAuxObj.Create;
- Aux.IdUser := -1;
-
- ComboUser.Items.Clear;
- ComboForm.Items.Clear;
- ComboEvento.Items.Clear;
- ComboTabela.Items.Clear;
-
- ComboUser.Items.AddObject( fControl.HistoryMsg.Hist_All , Aux );
-
- ComboForm.Items.Add ( fControl.HistoryMsg.Hist_All );
-
- ComboEvento.Items.Add( fControl.HistoryMsg.Hist_All );
- ComboEvento.Items.Add( fControl.HistoryMsg.Evento_Insert );
- ComboEvento.Items.Add( fControl.HistoryMsg.Evento_Delete );
- ComboEvento.Items.Add( fControl.HistoryMsg.Evento_Edit );
- ComboEvento.Items.Add( fControl.HistoryMsg.Evento_NewRecord );
-
- ComboTabela.Items.Add( fControl.HistoryMsg.Hist_All );
-
- DataSetHist := fControl.UserControl.DataConnector.UCGetSQLDataset(
- Format('Select distinct %s from %s',[
- fControl.TableHistory.FieldTableName,
- fControl.TableHistory.TableName]));
- while DataSetHist.Eof = False do
- Begin
- ComboTabela.Items.Add( DataSetHist.Fields[ 0 ].AsString );
- DataSetHist.Next;
- End;
-
- DataSetHist := nil;
- DataSetHist := fControl.UserControl.DataConnector.UCGetSQLDataset(
- Format('Select distinct %s from %s',[
- fControl.TableHistory.FieldCaptionForm,
- fControl.TableHistory.TableName ]));
- while DataSetHist.Eof = False do
- Begin
- ComboForm.Items.Add( DataSetHist.Fields[ 0 ].AsString );
- DataSetHist.Next;
- End;
-
- DataSetHist := nil;
- DataSetHist := fControl.UserControl.DataConnector.UCGetSQLDataset(
- Format('Select %s, %s as Usuario from %s where %s = %s order by %s',
- [ fControl.UserControl.TableUsers.FieldUserID,
- fControl.UserControl.TableUsers.FieldLogin ,
- fControl.UserControl.TableUsers.TableName ,
- fControl.UserControl.TableUsers.FieldTypeRec,
- QuotedStr('U') ,
- fControl.UserControl.TableUsers.FieldLogin ]));
-
- If fControl.UserControl.CurrentUser.Privileged = true then
- Begin
- while DataSetHist.Eof = False do
- Begin
- Aux := TAuxObj.Create;
- Aux.IdUser := DataSetHist.Fields[ 0 ].AsInteger;
- ComboUser.Items.AddObject( DataSetHist.Fields[ 1 ].AsString, Aux );
- DataSetHist.Next;
- End;
- End
- else
- begin
- Aux := TAuxObj.Create;
- Aux.IdUser := fControl.UserControl.CurrentUser.UserID;
- ComboUser.Items.AddObject( fControl.UserControl.CurrentUser.UserLogin, Aux );
- end;
-
-
- ComboUser.ItemIndex := 0;
- ComboForm.ItemIndex := 0;
- ComboEvento.ItemIndex := 0;
- ComboTabela.ItemIndex := 0;
-
-
- DataSetHist := nil;
- DataSetHist := fControl.UserControl.DataConnector.UCGetSQLDataset(
- Format('Select UH.%s as UserId, Uh.%s as Form , ' +
- 'Uh.%s as Evento , Uh.%s as Obs, Uh.%s as FormCaption, Uh.%s as EventDate, Uh.%s as EventTime, uh.%s as TableName, '+
- 'US.%s As UserName from %s UH, %s US where UH.%s = US.%s and Uh.%s = %s order by Uh.%s, uh.%s',
- [ fControl.TableHistory.FieldUserId ,
- fControl.TableHistory.FieldForm ,
- fControl.TableHistory.FieldEvent ,
- fControl.TableHistory.FieldObs ,
- fControl.TableHistory.FieldCaptionForm ,
- fControl.TableHistory.FieldEventDate ,
- fControl.TableHistory.FieldEventTime ,
- fControl.TableHistory.FieldTableName ,
- fControl.UserControl.TableUsers.FieldLogin ,
- fControl.TableHistory.TableName ,
- fControl.UserControl.TableUsers.TableName ,
- fControl.TableHistory.FieldUserId ,
- fControl.UserControl.TableUsers.FieldUserID ,
- fControl.TableHistory.FieldApplicationID ,
- QuotedStr(fControl.UserControl.ApplicationID) ,
- fControl.TableHistory.FieldTableName ,
- fControl.TableHistory.FieldEventDate ]));
-
- DataSource1.DataSet := DataSetHist;
-end;
-
-procedure TFrmHistorico.FormShow(Sender: TObject);
-begin
- SetComBoValues;
-
- Self.Caption := fControl.HistoryMsg.LabelDescricao;
- BitBtn1.Caption := fControl.HistoryMsg.Hist_BtnFiltro;
- BitBtn2.Caption := fControl.HistoryMsg.Hist_BtnExcluir;
- BitBtn3.Caption := fControl.HistoryMsg.Hist_BtnFechar;
-
- BitBtn2.Enabled := fControl.UserControl.CurrentUser.Privileged;
-
-
- LabelDescricao.Caption := fControl.HistoryMsg.LabelDescricao;
- LabelUser.Caption := fControl.HistoryMsg.LabelUser;
- LabelForm.Caption := fControl.HistoryMsg.LabelForm;
- LabelEvento.Caption := fControl.HistoryMsg.LabelEvento;
- LabelTabela.Caption := fControl.HistoryMsg.LabelTabela;
-
- DBGrid1.Columns[ 0 ].Title.Caption := fControl.HistoryMsg.LabelUser;
- DBGrid1.Columns[ 1 ].Title.Caption := fControl.HistoryMsg.LabelForm;
- DBGrid1.Columns[ 2 ].Title.Caption := fControl.HistoryMsg.LabelEvento;
- DBGrid1.Columns[ 3 ].Title.Caption := fControl.HistoryMsg.LabelDataEvento;
- DBGrid1.Columns[ 4 ].Title.Caption := fControl.HistoryMsg.LabelHoraEvento;
- DBGrid1.Columns[ 5 ].Title.Caption := fControl.HistoryMsg.LabelTabela;
-
- StringGrid1.Cells[0,0] := 'Campo';
- StringGrid1.Cells[1,0] := 'Original';
- StringGrid1.Cells[2,0] := 'Modificado para';
-end;
-
-procedure TFrmHistorico.ComboUserChange(Sender: TObject);
-begin
- BitBtn1.Enabled := True;
-end;
-
-procedure TFrmHistorico.DataSource1DataChange(Sender: TObject;
- Field: TField);
-Var List : TStringList; Aux : Integer; S : String;
-begin
- DBMemo1.Visible := DataSource1.DataSet.FieldValues['Evento'] <> fControl.HistoryMsg.Evento_Edit;
- StringGrid1.Visible := DataSource1.DataSet.FieldValues['Evento'] = fControl.HistoryMsg.Evento_Edit;
- If StringGrid1.Visible Then
- Begin
- try
- List := TStringList.Create;
- List.Text := DataSource1.DataSet.FieldValues['Obs'];
- StringGrid1.RowCount := List.Count + 1;
- For Aux := 0 to List.Count - 1 do
- Begin
- S := List[ Aux ];
- StringGrid1.Cells[ 0 , Aux + 1 ] := Copy(S,1,Pos('||',S)-1 );
- Delete(S,1,Pos('||',s)+1);
- StringGrid1.Cells[ 1 , Aux + 1 ] := Copy(S,1,Pos('||',S)-1 );
- Delete(S,1,Pos('||',s)+1);
- StringGrid1.Cells[ 2 , Aux + 1 ] := S;
- End;
-
- finally
- FreeAndNil( List );
- end;
- End;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/UCHistorico/UCHist_Type.pas b/internal/2.31RC1/1/UCHistorico/UCHist_Type.pas
deleted file mode 100644
index 9173c59..0000000
--- a/internal/2.31RC1/1/UCHistorico/UCHist_Type.pas
+++ /dev/null
@@ -1,278 +0,0 @@
-unit UCHist_Type;
-
-interface
-
- uses SysUtils,Classes,Menus,ActnList;
-
-Type
- TUCHistoryMSG = class(TPersistent)
- private
- fEvento_edit: String;
- fEvento_NewRecord: String;
- fEvento_Insert: String;
- fEvento_delete: String;
- fLabelTabela: String;
- fMsg_LogEmptyHistory: String;
- fMsg_MensConfirma: String;
- fLabelDescricao: String;
- fHist_BtnExcluir: String;
- fHist_BtnFiltro: String;
- fLabelForm: String;
- fHist_BtnFechar: String;
- fLabelDataEvento: String;
- fLabelEvento: String;
- fMsg_NewRecord: String;
- fHist_All: String;
- fMsg_LimpHistorico: String;
- fLabelHoraEvento: String;
- fLabelUser: String;
- fHist_MsgExceptPropr: String;
- protected
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- Property Evento_Insert : String read fEvento_Insert write fEvento_Insert;
- Property Evento_Delete : String read fEvento_delete write fEvento_delete;
- Property Evento_Edit : String read fEvento_edit write fEvento_edit;
- Property Evento_NewRecord : String read fEvento_NewRecord write fEvento_NewRecord;
- Property Hist_All : String read fHist_All Write fHist_All ;
- Property Msg_LimpHistorico : String read fMsg_LimpHistorico Write fMsg_LimpHistorico ;
- Property Msg_MensConfirma : String read fMsg_MensConfirma Write fMsg_MensConfirma ;
- Property Msg_LogEmptyHistory : String read fMsg_LogEmptyHistory Write fMsg_LogEmptyHistory;
- Property LabelDescricao : String read fLabelDescricao Write fLabelDescricao ;
- Property LabelUser : String read fLabelUser Write fLabelUser;
- Property LabelForm : String read fLabelForm Write fLabelForm ;
- Property LabelEvento : String read fLabelEvento Write fLabelEvento;
- Property LabelTabela : String read fLabelTabela Write fLabelTabela;
- Property LabelDataEvento : String read fLabelDataEvento Write fLabelDataEvento;
- Property LabelHoraEvento : String read fLabelHoraEvento Write fLabelHoraEvento;
- Property Msg_NewRecord : String read fMsg_NewRecord Write fMsg_NewRecord;
- Property Hist_MsgExceptPropr : String read fHist_MsgExceptPropr write fHist_MsgExceptPropr;
- Property Hist_BtnFiltro : String read fHist_BtnFiltro write fHist_BtnFiltro;
- Property Hist_BtnExcluir : String read fHist_BtnExcluir write fHist_BtnExcluir;
- Property Hist_BtnFechar : String read fHist_BtnFechar write fHist_BtnFechar;
- end;
-
-
- TUCUserHistory = class(TPersistent) // armazenar menuitem ou action responsavel pelo historico
- private
- FAction: TAction;
- FMenuItem: TMenuItem;
- procedure SetAction(const Value: TAction);
- procedure SetMenuItem(const Value: TMenuItem);
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property Action: TAction read FAction write SetAction;
- property MenuItem: TMenuItem read FMenuItem write SetMenuItem;
- end;
-
- TUCTableHistorico = class(TPersistent)
- private
- FTable: String;
- FApplicationID: String;
- FUserID: String;
- fDateEvent: String;
- fFieldForm: String;
- fFieldEvent: String;
- fFieldObs: String;
- fCaptionForm: string;
- fEventTime: String;
- fFieldTableName: String;
- protected
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property TableName : String read FTable write FTable; // nome da tabela
- property FieldApplicationID : String read FApplicationID write FApplicationID;
- property FieldUserID : String read FUserID write FUserID;
- property FieldEventDate : String read fDateEvent write fDateEvent;
- property FieldEventTime : String read fEventTime Write fEventTime;
- property FieldForm : String read fFieldForm write fFieldForm;
- property FieldCaptionForm : string read fCaptionForm write fCaptionForm;
- Property FieldEvent : String read fFieldEvent write fFieldEvent;
- property FieldObs : String read fFieldObs write fFieldObs;
- property FieldTableName : String read fFieldTableName write fFieldTableName; // grava o nome da tabela monitorada
- end;
-
- TUCHistTypeSavePostEdit = ( tpSaveAllFields , tpSaveModifiedFields );
-
- TUCHistOptions = Class( TPersistent )
- private
- fSavePostEdit: Boolean;
- fSavePostInsert: Boolean;
- fSaveDelete: Boolean;
- fSaveNewRecord: Boolean;
- fTypeSave: TUCHistTypeSavePostEdit;
- public
- constructor Create(AOwner: TComponent);
- destructor Destroy; override;
- procedure Assign(Source: TPersistent); override;
- published
- property SaveNewRecord : Boolean read fSaveNewRecord write fSaveNewRecord;
- property SaveDelete : Boolean read fSaveDelete write fSaveDelete;
- property SavePostInsert : Boolean read fSavePostInsert write fSavePostInsert;
- property SavePostEdit : Boolean read fSavePostEdit Write fSavePostEdit;
- Property TypeSavePostEdit : TUCHistTypeSavePostEdit read fTypeSave Write fTypeSave;
- end;
-
-
-implementation
-
-
-{ TUCHistoryMSG }
-
-procedure TUCHistoryMSG.Assign(Source: TPersistent);
-begin
- if Source is TUCHistoryMSG then
- Begin
- Self.Evento_edit := TUCHistoryMSG(Source).Evento_edit;
- Self.Evento_NewRecord := TUCHistoryMSG(Source).Evento_NewRecord;
- Self.Evento_Insert := TUCHistoryMSG(Source).Evento_Insert;
- Self.Evento_delete := TUCHistoryMSG(Source).Evento_Delete;
- Self.LabelTabela := TUCHistoryMSG(Source).LabelTabela;
- Self.Msg_LogEmptyHistory := TUCHistoryMSG(Source).Msg_LogEmptyHistory;
- Self.Msg_MensConfirma := TUCHistoryMSG(Source).Msg_MensConfirma;
- Self.LabelDescricao := TUCHistoryMSG(Source).LabelDescricao;
- Self.Hist_BtnExcluir := TUCHistoryMSG(Source).Hist_BtnExcluir;
- Self.Hist_BtnFiltro := TUCHistoryMSG(Source).Hist_BtnFiltro;
- Self.LabelForm := TUCHistoryMSG(Source).LabelForm;
- Self.Hist_BtnFechar := TUCHistoryMSG(Source).Hist_BtnFechar;
- Self.LabelDataEvento := TUCHistoryMSG(Source).LabelDataEvento;
- Self.LabelEvento := TUCHistoryMSG(Source).LabelEvento;
- Self.Msg_NewRecord := TUCHistoryMSG(Source).Msg_NewRecord;
- Self.Hist_All := TUCHistoryMSG(Source).Hist_All;
- Self.Msg_LimpHistorico := TUCHistoryMSG(Source).Msg_LimpHistorico;
- Self.LabelHoraEvento := TUCHistoryMSG(Source).LabelHoraEvento;
- Self.LabelUser := TUCHistoryMSG(Source).LabelUser;
- Self.Hist_MsgExceptPropr := TUCHistoryMSG(Source).Hist_MsgExceptPropr;
- End
- else
- inherited;
-end;
-
-constructor TUCHistoryMSG.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCHistoryMSG.Destroy;
-begin
- inherited;
-end;
-
-
-//------------------------------------------------------------------------------//
-
-{ TUCHistOptions }
-
-procedure TUCHistOptions.Assign(Source: TPersistent);
-begin
- if Source is TUCHistOptions then
- begin
- Self.SaveNewRecord := TUCHistOptions(Source).SaveNewRecord;
- Self.SaveDelete := TUCHistOptions(Source).SaveDelete;
- Self.SavePostInsert := TUCHistOptions(Source).SavePostInsert;
- Self.SavePostEdit := TUCHistOptions(Source).SavePostEdit;
- Self.TypeSavePostEdit := TUCHistOptions(Source).TypeSavePostEdit;
- end
- else
- inherited;
-end;
-
-constructor TUCHistOptions.Create(AOwner: TComponent);
-begin
- fSavePostEdit := true;
- fSavePostInsert := true;
- fSaveDelete := true;
- fSaveNewRecord := true;
- fTypeSave := tpSaveAllFields;
-end;
-
-destructor TUCHistOptions.Destroy;
-begin
- inherited;
-end;
-
-//------------------------------------------------------------------------------//
-
-{ TUCTableHistorico }
-
-procedure TUCTableHistorico.Assign(Source: TPersistent);
-begin
- if Source is TUCTableHistorico then
- begin
- Self.FieldApplicationID := TUCTableHistorico(Source).FieldApplicationID;
- Self.FieldUserID := TUCTableHistorico(Source).FieldUserID;
- Self.FieldEventDate := TUCTableHistorico(Source).FieldEventDate;
- Self.TableName := TUCTableHistorico(Source).TableName;
- Self.FieldForm := TUCTableHistorico(Source).FieldForm;
- Self.FieldEvent := TUCTableHistorico(Source).FieldEvent;
- Self.FieldObs := TUCTableHistorico(Source).FieldObs;
- Self.FieldCaptionForm := TUCTableHistorico(Source).FieldCaptionForm;
- Self.FieldEventTime := TUCTableHistorico(Source).FieldEventTime;
- Self.FieldTableName := TUCTableHistorico(Source).FieldTableName;
- end
- else
- inherited;
-end;
-
-constructor TUCTableHistorico.Create(AOwner: TComponent);
-begin
-end;
-
-destructor TUCTableHistorico.Destroy;
-begin
- inherited;
-end;
-
-{ TUCUserHistory }
-
-procedure TUCUserHistory.Assign(Source: TPersistent);
-begin
- if Source is TUCUserHistory then
- begin
- Self.MenuItem := TUCUserHistory(Source).MenuItem;
- Self.Action := TUCUserHistory(Source).Action;
- end
- else
- inherited;
-end;
-
-constructor TUCUserHistory.Create(AOwner: TComponent);
-begin
- inherited Create;
-end;
-
-destructor TUCUserHistory.Destroy;
-begin
- inherited;
-end;
-
-procedure TUCUserHistory.SetAction(const Value: TAction);
-begin
- FAction := Value;
- if Value <> nil then
- begin
- Self.MenuItem := nil;
- Value.FreeNotification(Self.Action);
- end;
-end;
-
-procedure TUCUserHistory.SetMenuItem(const Value: TMenuItem);
-begin
- FMenuItem := Value;
- if Value <> nil then
- begin
- Self.Action := nil;
- Value.FreeNotification(Self.MenuItem);
- end;
-end;
-
-end.
diff --git a/internal/2.31RC1/1/UCHistorico/UcHistReg.dcr b/internal/2.31RC1/1/UCHistorico/UcHistReg.dcr
deleted file mode 100644
index 3b81f6e..0000000
Binary files a/internal/2.31RC1/1/UCHistorico/UcHistReg.dcr and /dev/null differ
diff --git a/internal/2.31RC1/1/UCHistorico/dcr/UCControlHistorico.bmp b/internal/2.31RC1/1/UCHistorico/dcr/UCControlHistorico.bmp
deleted file mode 100644
index 1bf3cab..0000000
Binary files a/internal/2.31RC1/1/UCHistorico/dcr/UCControlHistorico.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/UCHistorico/dcr/UCHist_DataSet.bmp b/internal/2.31RC1/1/UCHistorico/dcr/UCHist_DataSet.bmp
deleted file mode 100644
index 384b3e8..0000000
Binary files a/internal/2.31RC1/1/UCHistorico/dcr/UCHist_DataSet.bmp and /dev/null differ
diff --git a/internal/2.31RC1/1/UCHistorico/dcr/UcHistReg.rc b/internal/2.31RC1/1/UCHistorico/dcr/UcHistReg.rc
deleted file mode 100644
index 1807941..0000000
--- a/internal/2.31RC1/1/UCHistorico/dcr/UcHistReg.rc
+++ /dev/null
@@ -1,2 +0,0 @@
-TUCControlHistorico BITMAP "UCControlHistorico.bmp"
-TUCHist_DataSet BITMAP "UCHist_DataSet.bmp"
diff --git a/internal/2.31RC1/1/UCHistorico/dcr/make.bat b/internal/2.31RC1/1/UCHistorico/dcr/make.bat
deleted file mode 100644
index 99c6099..0000000
--- a/internal/2.31RC1/1/UCHistorico/dcr/make.bat
+++ /dev/null
@@ -1 +0,0 @@
-brc32 -foUcHistReg.dcr -r -t UcHistReg.rc
\ No newline at end of file
diff --git a/internal/2.31RC1/1/UCHistorico/pckHistorico.bdsproj b/internal/2.31RC1/1/UCHistorico/pckHistorico.bdsproj
deleted file mode 100644
index 3cda098..0000000
--- a/internal/2.31RC1/1/UCHistorico/pckHistorico.bdsproj
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- pckHistorico.dpk
-
-
- 7.0
-
-
- 8
- 0
- 1
- 1
- 0
- 0
- 1
- 1
- 1
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- 0
- 0
- 0
- 0
- 0
- 1
- 0
- 1
- 1
- 1
- True
- True
- WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-
- False
-
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- True
- False
- False
- False
- True
- True
- True
- True
- True
- True
-
-
-
- 0
- 0
- False
- 1
- False
- False
- False
- 16384
- 1048576
- 4194304
- UserControl Historico
-
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
- False
-
-
- True
- False
-
-
-
- $00000000
-
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
diff --git a/internal/2.31RC1/1/UCHistorico/pckHistorico.dpk b/internal/2.31RC1/1/UCHistorico/pckHistorico.dpk
deleted file mode 100644
index 90f248d..0000000
--- a/internal/2.31RC1/1/UCHistorico/pckHistorico.dpk
+++ /dev/null
@@ -1,52 +0,0 @@
-package pckHistorico;
-
-{$I 'UserControl.inc'}
-{$R *.res}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO ON}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS ON}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO ON}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DESCRIPTION 'UserControl Historico'}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- dbrtl,
- vcl,
- vclactnband,
- vcldb,
- VclSmp,
- pckMD5,
- pckUCDataConnector,
- pckUserControl_RT,
- vclx,
- {$IFDEF DELPHI12}
- vclimg;
- {$ELSE}
- vcljpg;
- {$ENDIF}
-
-contains
- UCHist_Base in 'UCHist_Base.pas',
- UCHistDataset in 'UCHistDataset.pas',
- UCHist_Type in 'UCHist_Type.pas',
- UCHist_Form in 'UCHist_Form.pas';
-
-end.
diff --git a/internal/2.31RC1/1/UCHistorico/pckHistorico.dproj b/internal/2.31RC1/1/UCHistorico/pckHistorico.dproj
deleted file mode 100644
index 0159d2f..0000000
--- a/internal/2.31RC1/1/UCHistorico/pckHistorico.dproj
+++ /dev/null
@@ -1,124 +0,0 @@
-
-
- {db94e44b-94f7-4352-ace8-34ac2dcbb2ce}
- pckHistorico.dpk
- Debug
- AnyCPU
- DCC32
- C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\pckHistorico.bpl
- 12.0
- Debug
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- 00400000
- false
- UserControl Historico
- C:\Documents and Settings\All Users\Documentos\RAD Studio\6.0\Bpl\pckHistorico.bpl
- true
- true
- 1
- true
-
-
- 7.0
- False
- False
- 0
- RELEASE;$(DCC_Define)
-
-
- 7.0
- DEBUG;$(DCC_Define)
-
-
- Delphi.Personality.12
- Package
-
-
-
- False
- True
- False
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1046
- 1252
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
- pckHistorico.dpk
-
-
-
- 12
-
-
-
- MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Base
-
-
- Cfg_2
- Base
-
-
- Cfg_1
- Base
-
-
-
-
-
diff --git a/internal/2.31RC1/1/UCHistorico/pckHistorico.res b/internal/2.31RC1/1/UCHistorico/pckHistorico.res
deleted file mode 100644
index fd84fb8..0000000
Binary files a/internal/2.31RC1/1/UCHistorico/pckHistorico.res and /dev/null differ
diff --git a/internal/2.31RC1/1/clean.bat b/internal/2.31RC1/1/clean.bat
deleted file mode 100644
index 67b7895..0000000
--- a/internal/2.31RC1/1/clean.bat
+++ /dev/null
@@ -1,7 +0,0 @@
-@echo off
-echo erasing...
-del /S *.local *.dcu *.ddp *.dsk *.~* *.cfg *.dsm *.identcache *.dof *.stat *humbs.db *.config
-del ??history* /s /a
-
-
-:LEAVE