This commit is contained in:
f1iwq2
2022-12-31 15:03:54 +01:00
parent 6da9edba2e
commit 49b1926678
47 changed files with 3193 additions and 16099 deletions
-35
View File
@@ -1,35 +0,0 @@
-$A8
-$B-
-$C+
-$D+
-$E-
-$F-
-$G+
-$H+
-$I+
-$J-
-$K-
-$L+
-$M-
-$N+
-$O+
-$P+
-$Q-
-$R-
-$S-
-$T-
-$U-
-$V+
-$W-
-$X+
-$YD
-$Z1
-cg
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-H+
-W+
-M
-$M16384,1048576
-K$00400000
-LE"c:\program files (x86)\borland\delphi7\Projects\Bpl"
-LN"c:\program files (x86)\borland\delphi7\Projects\Bpl"
-135
View File
@@ -1,135 +0,0 @@
[FileVersion]
Version=7.0
[Compiler]
A=8
B=0
C=1
D=1
E=0
F=0
G=1
H=1
I=1
J=0
K=0
L=1
M=0
N=1
O=1
P=1
Q=0
R=0
S=0
T=0
U=0
V=1
W=0
X=1
Y=1
Z=1
ShowHints=1
ShowWarnings=1
UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
NamespacePrefix=
SymbolDeprecated=1
SymbolLibrary=1
SymbolPlatform=1
UnitLibrary=1
UnitPlatform=1
UnitDeprecated=1
HResultCompat=1
HidingMember=1
HiddenVirtual=1
Garbage=1
BoundsError=1
ZeroNilCompat=1
StringConstTruncated=1
ForLoopVarVarPar=1
TypedConstVarPar=1
AsgToTypedConst=1
CaseLabelRange=1
ForVariable=1
ConstructingAbstract=1
ComparisonFalse=1
ComparisonTrue=1
ComparingSignedUnsigned=1
CombiningSignedUnsigned=1
UnsupportedConstruct=1
FileOpen=1
FileOpenUnitSrc=1
BadGlobalSymbol=1
DuplicateConstructorDestructor=1
InvalidDirective=1
PackageNoLink=1
PackageThreadVar=1
ImplicitImport=1
HPPEMITIgnored=1
NoRetVal=1
UseBeforeDef=1
ForLoopVarUndef=1
UnitNameMismatch=1
NoCFGFileFound=1
MessageDirective=1
ImplicitVariants=1
UnicodeToLocale=1
LocaleToUnicode=1
ImagebaseMultiple=1
SuspiciousTypecast=1
PrivatePropAccessor=1
UnsafeType=1
UnsafeCode=1
UnsafeCast=1
[Linker]
MapFile=0
OutputObjs=0
ConsoleApp=1
DebugInfo=0
RemoteSymbols=0
MinStackSize=16384
MaxStackSize=1048576
ImageBase=4194304
ExeDescription=
[Directories]
OutputDir=
UnitOutputDir=
PackageDLLOutputDir=
PackageDCPOutputDir=
SearchPath=
Packages=vcl;rtl;vclx;VclSmp;vclshlctrls
Conditionals=
DebugSourceDirs=
UsePackages=0
[Parameters]
RunParams=
HostApplication=
Launcher=
UseLauncher=0
DebugCWD=
[Version Info]
IncludeVerInfo=1
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=5
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1036
CodePage=1252
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.5
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[HistoryLists\hlUnitAliases]
Count=1
Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-36
View File
@@ -1,36 +0,0 @@
program Signaux_complexes_GL;
uses
Forms,
UnitPrinc in 'UnitPrinc.pas' {FormPrinc},
UnitDebug in 'UnitDebug.pas' {FormDebug},
verif_version in 'verif_version.pas' {FormVersion},
UnitPilote in 'UnitPilote.pas' {FormPilote},
UnitSimule in 'UnitSimule.pas' {FormSimulation},
UnitTCO in 'UnitTCO.pas' {FormTCO},
UnitConfig in 'UnitConfig.pas' {FormConfig},
UnitConfigTCO in 'UnitConfigTCO.pas' {FormConfigTCO},
UnitSR in 'UnitSR.pas' {FormSR},
Unit_Pilote_aig in 'Unit_Pilote_aig.pas' {FormAig},
UnitConfigCellTCO in 'UnitConfigCellTCO.pas' {FormConfCellTCO},
UnitCDF in 'UnitCDF.pas' {FormCDF},
Unitplace in 'Unitplace.pas' {FormPlace};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TFormPrinc, FormPrinc);
Application.CreateForm(TFormDebug, FormDebug);
Application.CreateForm(TFormPilote, FormPilote);
Application.CreateForm(TFormSimulation, FormSimulation);
Application.CreateForm(TFormConfig, FormConfig);
Application.CreateForm(TFormConfigTCO, FormConfigTCO);
Application.CreateForm(TFormVersion, FormVersion);
Application.CreateForm(TFormSR, FormSR);
Application.CreateForm(TFormAig, FormAig);
Application.CreateForm(TFormConfCellTCO, FormConfCellTCO);
Application.CreateForm(TFormCDF, FormCDF);
Application.CreateForm(TFormPlace, FormPlace);
Application.Run;
end.
Binary file not shown.
+2 -2
View File
@@ -21,16 +21,16 @@ uses
begin
Application.Initialize;
Application.CreateForm(TFormPrinc, FormPrinc);
Application.CreateForm(TFormDebug, FormDebug);
Application.CreateForm(TFormVersion, FormVersion);
Application.CreateForm(TFormPilote, FormPilote);
Application.CreateForm(TFormSimulation, FormSimulation);
Application.CreateForm(TFormConfig, FormConfig);
Application.CreateForm(TFormConfigTCO, FormConfigTCO);
Application.CreateForm(TFormVersion, FormVersion);
Application.CreateForm(TFormSR, FormSR);
Application.CreateForm(TFormAig, FormAig);
Application.CreateForm(TFormConfCellTCO, FormConfCellTCO);
Application.CreateForm(TFormCDF, FormCDF);
Application.CreateForm(TFormPlace, FormPlace);
Application.CreateForm(TFormDebug, FormDebug);
Application.Run;
end.
Binary file not shown.
-396
View File
@@ -1,396 +0,0 @@
object FormCDF: TFormCDF
Left = 368
Top = 141
BorderStyle = bsDialog
Caption = 'Configuration du d'#233'codeur CDF'
ClientHeight = 466
ClientWidth = 341
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
OnActivate = FormActivate
PixelsPerInch = 96
TextHeight = 13
object Label20: TLabel
Left = 16
Top = 48
Width = 184
Height = 26
Caption =
'Tables d'#39'aspects du signal en fonction du motif envoy'#233' au d'#233'code' +
'ur CDF'
WordWrap = True
end
object Label1: TLabel
Left = 8
Top = 176
Width = 32
Height = 13
Caption = 'Label1'
end
object Label2: TLabel
Left = 8
Top = 200
Width = 32
Height = 13
Caption = 'Label2'
end
object Label3: TLabel
Left = 8
Top = 224
Width = 32
Height = 13
Caption = 'Label3'
end
object Label4: TLabel
Left = 8
Top = 248
Width = 32
Height = 13
Caption = 'Label4'
end
object Label5: TLabel
Left = 8
Top = 272
Width = 32
Height = 13
Caption = 'Label5'
end
object Label6: TLabel
Left = 8
Top = 296
Width = 32
Height = 13
Caption = 'Label6'
end
object Label7: TLabel
Left = 8
Top = 320
Width = 32
Height = 13
Caption = 'Label7'
end
object Label8: TLabel
Left = 8
Top = 344
Width = 32
Height = 13
Caption = 'Label8'
end
object Label9: TLabel
Left = 8
Top = 368
Width = 32
Height = 13
Caption = 'Label9'
end
object Label10: TLabel
Left = 8
Top = 392
Width = 38
Height = 13
Caption = 'Label10'
end
object Label11: TLabel
Left = 184
Top = 200
Width = 38
Height = 13
Caption = 'Label11'
end
object Label12: TLabel
Left = 184
Top = 224
Width = 38
Height = 13
Caption = 'Label12'
end
object Label13: TLabel
Left = 184
Top = 248
Width = 38
Height = 13
Caption = 'Label13'
end
object Label14: TLabel
Left = 184
Top = 272
Width = 38
Height = 13
Caption = 'Label14'
end
object Label15: TLabel
Left = 184
Top = 296
Width = 38
Height = 13
Caption = 'Label15'
end
object Label16: TLabel
Left = 184
Top = 320
Width = 38
Height = 13
Caption = 'Label16'
end
object Label17: TLabel
Left = 184
Top = 344
Width = 38
Height = 13
Caption = 'Label17'
end
object Label18: TLabel
Left = 184
Top = 368
Width = 38
Height = 13
Caption = 'Label18'
end
object Label19: TLabel
Left = 184
Top = 392
Width = 38
Height = 13
Caption = 'Label19'
end
object ImageDigi: TImage
Left = 240
Top = 16
Width = 57
Height = 97
end
object Shape1: TShape
Left = 168
Top = 152
Width = 2
Height = 273
end
object Label21: TLabel
Left = 120
Top = 152
Width = 29
Height = 13
Caption = 'Motif'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
end
object Label22: TLabel
Left = 296
Top = 176
Width = 29
Height = 13
Caption = 'Motif'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
end
object Label23: TLabel
Left = 16
Top = 104
Width = 205
Height = 13
Caption = 'Nombre d'#39'adresses occup'#233'es par le signal :'
end
object LabelTitre: TLabel
Left = 16
Top = 8
Width = 63
Height = 19
Caption = 'Adresse'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object Label24: TLabel
Left = 56
Top = 124
Width = 24
Height = 13
Caption = '1 '#224' 4'
end
object Button1: TButton
Left = 128
Top = 432
Width = 75
Height = 25
Caption = 'Ok'
TabOrder = 0
OnClick = Button1Click
end
object Edit1: TEdit
Left = 120
Top = 176
Width = 25
Height = 21
TabOrder = 1
OnChange = Edit1Change
end
object Edit2: TEdit
Left = 120
Top = 200
Width = 25
Height = 21
TabOrder = 2
OnChange = Edit2Change
end
object Edit3: TEdit
Left = 120
Top = 224
Width = 25
Height = 21
TabOrder = 3
OnChange = Edit3Change
end
object Edit4: TEdit
Left = 120
Top = 248
Width = 25
Height = 21
TabOrder = 4
OnChange = Edit4Change
end
object Edit5: TEdit
Left = 120
Top = 272
Width = 25
Height = 21
TabOrder = 5
OnChange = Edit5Change
end
object Edit6: TEdit
Left = 120
Top = 296
Width = 25
Height = 21
TabOrder = 6
OnChange = Edit6Change
end
object Edit7: TEdit
Left = 120
Top = 320
Width = 25
Height = 21
TabOrder = 7
OnChange = Edit7Change
end
object Edit8: TEdit
Left = 120
Top = 344
Width = 25
Height = 21
TabOrder = 8
OnChange = Edit8Change
end
object Edit9: TEdit
Left = 120
Top = 368
Width = 25
Height = 21
TabOrder = 9
OnChange = Edit9Change
end
object Edit10: TEdit
Left = 120
Top = 392
Width = 25
Height = 21
TabOrder = 10
OnChange = Edit10Change
end
object Edit11: TEdit
Left = 296
Top = 200
Width = 25
Height = 21
TabOrder = 11
OnChange = Edit11Change
end
object Edit12: TEdit
Left = 296
Top = 224
Width = 25
Height = 21
TabOrder = 12
OnChange = Edit12Change
end
object Edit13: TEdit
Left = 296
Top = 248
Width = 25
Height = 21
TabOrder = 13
OnChange = Edit13Change
end
object Edit14: TEdit
Left = 296
Top = 272
Width = 25
Height = 21
TabOrder = 14
OnChange = Edit14Change
end
object Edit15: TEdit
Left = 296
Top = 296
Width = 25
Height = 21
TabOrder = 15
OnChange = Edit15Change
end
object Edit16: TEdit
Left = 296
Top = 320
Width = 25
Height = 21
TabOrder = 16
OnChange = Edit16Change
end
object Edit17: TEdit
Left = 296
Top = 344
Width = 25
Height = 21
TabOrder = 17
OnChange = Edit17Change
end
object Edit18: TEdit
Left = 296
Top = 368
Width = 25
Height = 21
TabOrder = 18
OnChange = Edit18Change
end
object Edit19: TEdit
Left = 296
Top = 392
Width = 25
Height = 21
TabOrder = 19
OnChange = Edit19Change
end
object EditNAdresses: TEdit
Left = 16
Top = 120
Width = 25
Height = 21
TabOrder = 20
Text = '1'
OnChange = EditNAdressesChange
end
end
-383
View File
@@ -1,383 +0,0 @@
unit UnitCDF;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls , unitconfig, UnitPrinc;
type
TFormCDF = class(TForm)
Button1: TButton;
Label20: TLabel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
ImageDigi: TImage;
Shape1: TShape;
Label21: TLabel;
Label22: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
Edit9: TEdit;
Edit10: TEdit;
Edit11: TEdit;
Edit12: TEdit;
Edit13: TEdit;
Edit14: TEdit;
Edit15: TEdit;
Edit16: TEdit;
Edit17: TEdit;
Edit18: TEdit;
Edit19: TEdit;
Label23: TLabel;
EditNAdresses: TEdit;
LabelTitre: TLabel;
Label24: TLabel;
procedure Button1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure Edit1Change(Sender: TObject);
procedure Edit2Change(Sender: TObject);
procedure Edit3Change(Sender: TObject);
procedure Edit4Change(Sender: TObject);
procedure Edit5Change(Sender: TObject);
procedure Edit6Change(Sender: TObject);
procedure Edit7Change(Sender: TObject);
procedure Edit8Change(Sender: TObject);
procedure Edit9Change(Sender: TObject);
procedure Edit10Change(Sender: TObject);
procedure Edit11Change(Sender: TObject);
procedure Edit12Change(Sender: TObject);
procedure Edit13Change(Sender: TObject);
procedure Edit14Change(Sender: TObject);
procedure Edit15Change(Sender: TObject);
procedure Edit16Change(Sender: TObject);
procedure Edit18Change(Sender: TObject);
procedure Edit19Change(Sender: TObject);
procedure Edit17Change(Sender: TObject);
procedure EditNAdressesChange(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
FormCDF: TFormCDF;
Adresse,Index : integer;
implementation
{$R *.dfm}
procedure TFormCDF.Button1Click(Sender: TObject);
begin
close;
end;
procedure TFormCDF.FormActivate(Sender: TObject);
var erreur : integer;
begin
Val(FormConfig.EditAdrSig.text,Adresse,erreur);
index:=index_feu(Adresse);
LabelTitre.caption:='Adresse du signal: '+intToSTR(adresse);
erreur:=feux[index].decodeur;
if erreur=5 then
begin
caption:='Configuration du décodeur Digikeijs';
label20.caption:='Tables d''aspects du signal en fonction du motif envoyé au décodeur Digikeijs';
label24.Caption:='1 à 5';
end;
if erreur=2 then
begin
caption:='Configuration du décodeur CDF';
label20.Caption:='Tables d''aspects du signal en fonction du motif envoyé au décodeur CDF';
label24.Caption:='1 à 4';
end;
Label1.caption:=etats[1];
Label2.caption:=etats[2];
Label3.caption:=etats[3];
Label4.caption:=etats[4];
Label5.caption:=etats[5];
Label6.caption:=etats[6];
Label7.caption:=etats[7];
Label8.caption:=etats[8];
Label9.caption:=etats[9];
Label10.caption:=etats[10];
Label11.caption:=etats[11];
Label12.caption:=etats[12];
Label13.caption:=etats[13];
Label14.caption:=etats[14];
Label15.caption:=etats[15];
Label16.caption:=etats[16];
Label17.caption:=etats[17];
Label18.caption:=etats[18];
Label19.caption:=etats[19];
ImageDigi.Picture:=FormConfig.ImageSignal.Picture;
with ImageDigi.Picture do
begin
Bitmap.TransparentMode:=tmAuto;
Bitmap.TransparentColor:=clblue;
end;
ImageDigi.Transparent:=true;
Edit1.Text:=intToSTR(Feux[index].SR[1].sortie1); // carré
Edit2.Text:=intToSTR(Feux[index].SR[2].sortie1); // sémaphore
Edit3.Text:=intToSTR(Feux[index].SR[3].sortie1); // sémaphore cli
Edit4.Text:=intToSTR(Feux[index].SR[4].sortie1);
Edit5.Text:=intToSTR(Feux[index].SR[5].sortie1);
Edit6.Text:=intToSTR(Feux[index].SR[6].sortie1);
Edit7.Text:=intToSTR(Feux[index].SR[7].sortie1);
Edit8.Text:=intToSTR(Feux[index].SR[8].sortie1);
Edit9.Text:=intToSTR(Feux[index].SR[9].sortie1);
Edit10.Text:=intToSTR(Feux[index].SR[10].sortie1);
Edit11.Text:=intToSTR(Feux[index].SR[11].sortie1);
Edit12.Text:=intToSTR(Feux[index].SR[12].sortie1);
Edit13.Text:=intToSTR(Feux[index].SR[13].sortie1);
Edit14.Text:=intToSTR(Feux[index].SR[14].sortie1);
Edit15.Text:=intToSTR(Feux[index].SR[15].sortie1);
Edit16.Text:=intToSTR(Feux[index].SR[16].sortie1);
Edit17.Text:=intToSTR(Feux[index].SR[17].sortie1);
Edit18.Text:=intToSTR(Feux[index].SR[18].sortie1);
Edit19.Text:=intToSTR(Feux[index].SR[19].sortie1);
editNadresses.text:=intToSTR(feux[index].NA);
end;
procedure Maj_DB;
var s : string;
begin
s:=encode_sig_feux(index);
formconfig.RichSig.Lines[index-1]:=s;
aff_champs_sig_feux(index);
end;
procedure TFormCDF.Edit1Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit1.Text,Feux[index].SR[1].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit2Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit2.Text,Feux[index].SR[2].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit3Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit3.Text,Feux[index].SR[3].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit4Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit4.Text,Feux[index].SR[4].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit5Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit5.Text,Feux[index].SR[5].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit6Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit6.Text,Feux[index].SR[6].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit7Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit7.Text,Feux[index].SR[7].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit8Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit8.Text,Feux[index].SR[8].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit9Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit9.Text,Feux[index].SR[9].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit10Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit10.Text,Feux[index].SR[10].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit11Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit11.Text,Feux[index].SR[11].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit12Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit12.Text,Feux[index].SR[12].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit13Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit13.Text,Feux[index].SR[13].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit14Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit14.Text,Feux[index].SR[14].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit15Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit15.Text,Feux[index].SR[15].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit16Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit16.Text,Feux[index].SR[16].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit17Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit17.Text,Feux[index].SR[17].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit18Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit18.Text,Feux[index].SR[18].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.Edit19Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit19.Text,Feux[index].SR[19].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormCDF.EditNAdressesChange(Sender: TObject);
var erreur,i : integer;
begin
if index<>0 then
begin
val(EditNAdresses.Text,i,erreur);
if (i>0) and (i<6) then
begin
Feux[index].Na:=i;
Maj_DB;
end;
end;
end;
end.
BIN
View File
Binary file not shown.
+14 -1
View File
@@ -103,6 +103,19 @@ begin
Val(FormConfig.EditAdrSig.text,Adresse,erreur);
index:=index_feu(Adresse);
LabelTitre.caption:='Adresse du signal: '+intToSTR(adresse);
erreur:=feux[index].decodeur;
if erreur=5 then
begin
caption:='Configuration du décodeur Digikeijs';
label20.caption:='Tables d''aspects du signal en fonction du motif envoyé au décodeur Digikeijs';
label24.Caption:='1 à 5';
end;
if erreur=2 then
begin
caption:='Configuration du décodeur CDF';
label20.Caption:='Tables d''aspects du signal en fonction du motif envoyé au décodeur CDF';
label24.Caption:='1 à 4';
end;
Label1.caption:=etats[1];
Label2.caption:=etats[2];
@@ -359,7 +372,7 @@ begin
if index<>0 then
begin
val(EditNAdresses.Text,i,erreur);
if (i>0) and (i<5) then
if (i>0) and (i<6) then
begin
Feux[index].Na:=i;
Maj_DB;
Binary file not shown.
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+18 -15
View File
@@ -1570,7 +1570,7 @@ object FormConfig: TFormConfig
Top = 8
Width = 633
Height = 505
ActivePage = TabSheetAct
ActivePage = TabSheetCDM
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -11
@@ -1799,7 +1799,7 @@ object FormConfig: TFormConfig
Left = 312
Top = 184
Width = 281
Height = 113
Height = 89
Caption = 'Au d'#233'marrage de CDM Rail : interface LENZ'
TabOrder = 3
object RadioButton13: TRadioButton
@@ -1819,25 +1819,25 @@ object FormConfig: TFormConfig
TabOrder = 1
end
object RadioButton15: TRadioButton
Left = 8
Top = 56
Width = 217
Left = 152
Top = 40
Width = 105
Height = 17
Caption = 'LI-101F'
TabOrder = 2
end
object RadioButton16: TRadioButton
Left = 8
Top = 72
Width = 217
Top = 56
Width = 89
Height = 17
Caption = 'LI-100F'
TabOrder = 3
end
object RadioButton17: TRadioButton
Left = 8
Top = 88
Width = 209
Left = 152
Top = 56
Width = 89
Height = 17
Caption = 'LI-100'
TabOrder = 4
@@ -1908,9 +1908,9 @@ object FormConfig: TFormConfig
end
object GroupBox15: TGroupBox
Left = 312
Top = 304
Top = 288
Width = 281
Height = 137
Height = 121
Caption = 'Divers'
TabOrder = 5
object Label31: TLabel
@@ -1980,7 +1980,7 @@ object FormConfig: TFormConfig
Height = 21
Hint =
'Mode d'#233'bug au d'#233'marrage (0=sans ; 1=Log d'#233'marrage ; 2=D'#233'marrage ' +
'par '#233'tape)'
'par '#233'tape ; 3=Dynamique)'
ParentShowHint = False
ShowHint = True
TabOrder = 3
@@ -2211,7 +2211,7 @@ object FormConfig: TFormConfig
Width = 257
Height = 25
Hint = 'Initialisation des aiguillages au d'#233'marrage'
Caption = 'Initialisation des aiguillages '
Caption = 'Initialiser les aiguillages en position initiale'
ParentShowHint = False
ShowHint = True
TabOrder = 0
@@ -2263,7 +2263,10 @@ object FormConfig: TFormConfig
Top = 120
Width = 169
Height = 17
Hint = 'Permet le roulage des trains en mode autonome'
Caption = 'Option roulage des trains'
ParentShowHint = False
ShowHint = True
TabOrder = 5
end
end
@@ -3044,7 +3047,7 @@ object FormConfig: TFormConfig
Width = 129
Height = 21
Style = csDropDownList
ItemHeight = 13
ItemHeight = 0
TabOrder = 1
OnChange = ComboBoxDecChange
end
+50 -23
View File
@@ -466,9 +466,10 @@ type
end;
const
// variables du fichier de configuration
// constantes du fichier de configuration
NomConfig='ConfigGenerale.cfg';
Debug_ch='Debug';
Algo_localisation_ch='Algo_localisation';
Avec_roulage_ch='Avec_roulage';
nb_det_dist_ch='nb_det_dist';
IpV4_PC_ch='IpV4_PC';
@@ -519,9 +520,10 @@ var
portCDM,TempoOctet,TimoutMaxInterface,Valeur_entete,PortInterface,prot_serie,NumPort,debug,
LigneCliqueePN,AncLigneCliqueePN,clicMemo,Nb_cantons_Sig,protocole,Port,clicListeTrain,
ligneclicAig,AncLigneClicAig,ligneClicSig,AncligneClicSig,EnvAigDccpp,AdrBaseDetDccpp,
ligneClicBr,AncligneClicBr,ligneClicAct,AncLigneClicAct,Adressefeuclic,NumTrameCDM : integer;
ligneClicBr,AncligneClicBr,ligneClicAct,AncLigneClicAct,Adressefeuclic,NumTrameCDM,
Algo_localisation : integer;
ack_cdm,clicliste,affevt,config_modifie,clicproprietes,confasauver,trouve_MaxPort,
ack_cdm,clicliste,config_modifie,clicproprietes,confasauver,trouve_MaxPort,
modif_branches,ConfigPrete,trouve_section_dccpp,trouve_section_trains : boolean;
fichier : text;
@@ -544,7 +546,7 @@ uses UnitDebug,UnitTCO, UnitSR, UnitCDF;
{$R *.dfm}
// envoi d'une chaîne à CDM par socket, puis attend l'ack ou le nack
// envoi d'une chaîne Com_IPC à CDM par socket, puis attend l'ack ou le nack
function envoi_CDM(s : string) : boolean;
var temps : integer;
begin
@@ -581,9 +583,9 @@ begin
// ne pas supprimer le @ espace et = qui sert de marqueur pour identifier le feu
s:='@='+inttostr(feux[i].Adresse)+' Decodeur='+intToSTR(feux[i].Decodeur)+' Adresse détecteur associé='+intToSTR(feux[i].Adr_det1)+
' Adresse élement suivant='+intToSTR(feux[i].Adr_el_suiv1);
if feux[i].Btype_suiv1=aig then s:=s+' (aig)';
if feux[i].Btype_suiv1=aig then s:=s+' (aig)';
feux[i].Img.Hint:=s;
end;
end;
// demande les services Com-IP à CDM
function services_CDM : boolean;
@@ -663,9 +665,8 @@ begin
Id_CDM:=copy(recuCDM,5,2); // récupère l'ID reçu de CDM, à utiliser dans toutes les futures trames
recucdm:='';
s:='Connecté au serveur CDM rail avec l''ID='+Id_CDM;
Affiche(s,clYellow);
AfficheDebug(s,clyellow);
CDM_connecte:=true;
// demande des services
@@ -679,7 +680,7 @@ begin
end;
end;
//else Affiche('CDM Rail non lancé',clOrange);
end
end
else
begin
if adresseIPCDM='0' then Affiche('La connexion à CDM n''est pas demandée car l''adresse IP est nulle dans '+NomConfig,cyan);
@@ -1377,6 +1378,7 @@ begin
// entête
// copie_commentaire;
writeln(fichierN,'/ Fichier de configuration de signaux_complexes_GL');
writeln(fichierN,Algo_localisation_ch+'=',Algo_localisation);
writeln(fichierN,Avec_roulage_ch+'=',avecRoulage);
writeln(fichierN,debug_ch+'=',debug);
// taille de la fonte
@@ -1554,7 +1556,12 @@ begin
writeln(fichierN,'/------------');
writeln(fichierN,section_placement_ch);
for i:=1 to 6 do
writeln(fichierN,placement[i].train,',',placement[i].detecteur);
begin
s:=placement[i].train+','+inttoSTR(placement[i].detecteur)+',';
s:=s+intToSTR(placement[i].detdir)+',';
if placement[i].inverse then s:=s+'1' else s:=s+'0';
writeln(fichierN,s);
end;
writeln(fichierN,'0');
closefile(fichierN);
@@ -2303,6 +2310,14 @@ begin
val(s,debug,erreur);
end;
sa:=uppercase(Algo_localisation_ch)+'=';
i:=pos(sa,s);
if i=1 then
begin
delete(s,i,length(sa));
val(s,Algo_localisation,erreur);
end;
sa:=uppercase(Avec_roulage_ch)+'=';
i:=pos(sa,s);
if i=1 then
@@ -2396,7 +2411,7 @@ begin
portcom:=s;
end;
// temporisation entre 2 caractères
// temporisatflion entre 2 caractères
sa:=uppercase(INTER_CAR_ch)+'=';
i:=pos(sa,s);
if i=1 then
@@ -2718,8 +2733,22 @@ begin
delete(s,1,j);
val(s,j,erreur);
placement[i].detecteur:=j;
inc(i);
j:=pos(',',s);
if j<>0 then
begin
delete(s,1,j);
val(s,j,erreur);
placement[i].detdir:=j;
j:=pos(',',s);
if j<>0 then
begin
delete(s,1,j);
val(s,j,erreur);
placement[i].inverse:=j=1;
end;
end;
end;
inc(i);
s:='';
end;
until (s='0') or eof(fichier);
@@ -2793,7 +2822,6 @@ begin
end;
//Affiche('Lecture du fichier de configuration '+NomConfig,clyellow);
{$I+}
try
assign(fichier,NomConfig);
reset(fichier);
@@ -2822,7 +2850,6 @@ begin
assign(fichier,NomConfig);
reset(fichier);
end;
{$I-}
lit_flux;
close(fichier);
@@ -2869,7 +2896,7 @@ begin
if not(trouve_section_sig) then Affiche('Manque section '+section_sig_ch,clred);
if not(trouve_section_branche) then Affiche('Manque section '+section_branches_ch,clred);
verif_coherence;
formDebug.buttonCP.Caption:='Etat '+intToSTR(Nb_cantons_Sig)+' cantons précédents signal';
end;
@@ -2914,7 +2941,7 @@ begin
TailleFonte:=i;
val(EditDebug.text,i,erreur);
if (i<0) or (i>2) then i:=0;
if (i<0) or (i>3) then i:=0;
Debug:=i;
if checkRoulage.Checked then AvecRoulage:=1 else AvecRoulage:=0;
@@ -2971,7 +2998,7 @@ begin
if changeCDM then connecte_CDM;
if changeInterface then
begin
if AdresseIP<>'0' then
if (AdresseIP<>'0') and (adresseIP<>'') then
begin
Affiche('demande connexion à la centrale Lenz par Ethernet',clyellow);
With Formprinc do
@@ -3340,7 +3367,6 @@ end;
procedure TFormConfig.FormCreate(Sender: TObject);
begin
affevt:=false; // pour debug
clicListe:=true;
if affevt then affiche('FormConfig create',clLime);
PageControl.ActivePage:=Formconfig.TabSheetCDM; // force le premier onglet sur la page
@@ -3454,7 +3480,7 @@ begin
Edit_HG.Visible:=true;
EditAigTriple.Visible:=false;
Edit_HG.ReadOnly:=false;
Edit_HG.ReadOnly:=false;
EditPointe_BG.ReadOnly:=false;
EditDevie_HD.ReadOnly:=false;
EditDroit_BD.ReadOnly:=false;
@@ -4253,6 +4279,7 @@ var i,lc,adresse,erreur : integer;
s : string;
begin
clicliste:=true;
// HideCaret(RichAig.Handle);
raz_champs_aig;
ComboBoxAig.ItemIndex:=-1;
formconfig.ComboBoxDD.ItemIndex:=-1;
@@ -5614,7 +5641,7 @@ begin
feux[index]:=Feu_sauve;
RichSig.Lines[ligneClicSig]:=encode_sig_feux(index);
aff_champs_sig_feux(index); // réaffiche les champs
Maj_Hint_feu(index);
Maj_Hint_feu(index);
// change l'image du feu dans la feuille graphique principale
Feux[index].Img.picture.Bitmap:=Select_dessin_feu(feux[index].aspect);
dessine_feu_mx(Feux[index].Img.Canvas,0,0,1,1,feux[index].adresse,1); // dessine les feux du signal
@@ -6675,7 +6702,7 @@ begin
end
else
begin
// vérifier si les deux détecteurs du signal sont consécutifs (l et i)
// vérifier si les deux détecteurs du signal sont contigüs (l et i)
l:=feux[j].Adr_det1;
trouve_detecteur(i);
det1Br:=branche_trouve;
@@ -6687,7 +6714,7 @@ begin
if (det1Br<>Det2Br) or (abs(det1Index-det2Index)>1) then
begin
ok:=false;
Affiche('Erreur 9.12: signal '+intToSTR(feux[j].adresse)+' : détecteurs '+intToSTR(i)+' et '+intToSTR(l)+' non consécutifs ',clred);
Affiche('Erreur 9.12: signal '+intToSTR(feux[j].adresse)+' : détecteurs '+intToSTR(i)+' et '+intToSTR(l)+' non contigüs ',clred);
end;
end;
end;
@@ -6707,7 +6734,7 @@ begin
if (aiguillage[k].ADroit<>l) and (aiguillage[k].ADevie<>l) and (aiguillage[k].APointe<>l) then
begin
ok:=false;
Affiche('Erreur 9.21: signal '+intToSTR(feux[j].adresse)+' : aiguillage '+intToSTR(i)+' et détecteur '+intToSTR(l)+' non consécutifs ',clred);
Affiche('Erreur 9.21: signal '+intToSTR(feux[j].adresse)+' : aiguillage '+intToSTR(i)+' et détecteur '+intToSTR(l)+' non contigüs ',clred);
end;
end;
end;
Binary file not shown.
BIN
View File
Binary file not shown.
+5 -5
View File
@@ -96,7 +96,7 @@ end;
procedure dessine_icones;
var r : Trect;
x1,y1,x2,jy1,jy2 : integer;
x1,x2,jy1,jy2 : integer;
begin
// 1
icone_aig;
@@ -123,13 +123,13 @@ begin
canvas.Pen.color:=fond;
canvas.Brush.Color:=fond;
canvas.Rectangle(0,0,Width,Height);
canvas.Brush.Color:=clAllume;
canvas.pen.color:=clAllume;
canvas.Pen.Mode:=pmCopy;
r:=Rect(1,(height div 2)-6,width-1,(height div 2)+6);
canvas.FillRect(r);
canvas.pen.color:=clVoies;
canvas.brush.color:=clVoies;
// bande horizontale
@@ -137,13 +137,13 @@ begin
canvas.FillRect(r);
end;
// 5 canton
// 5 canton
with formCOnfigTCO.Imagecanton do
begin
canvas.Pen.color:=fond;
canvas.Brush.Color:=fond;
canvas.Rectangle(0,0,Width,Height);
canvas.pen.color:=clCanton;
canvas.brush.color:=clCanton;
// bande horizontale
BIN
View File
Binary file not shown.
+82 -95
View File
@@ -1,14 +1,11 @@
object FormDebug: TFormDebug
Left = 306
Top = 21
Width = 836
Width = 856
Height = 721
VertScrollBar.Position = 160
VertScrollBar.Range = 850
VertScrollBar.Position = 6
VertScrollBar.Smooth = True
VertScrollBar.Style = ssFlat
VertScrollBar.Tracking = True
AutoScroll = False
Caption = 'Fen'#234'tre de d'#233'bug'
Color = clWindow
TransparentColorValue = clTeal
@@ -20,16 +17,17 @@ object FormDebug: TFormDebug
KeyPreview = True
OldCreateOrder = False
Position = poMainFormCenter
OnActivate = FormActivate
OnCreate = FormCreate
OnKeyPress = FormKeyPress
DesignSize = (
811
831
690)
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
Left = 646
Top = -156
Left = 666
Top = -2
Width = 108
Height = 13
Anchors = [akTop, akRight]
@@ -44,8 +42,8 @@ object FormDebug: TFormDebug
ParentFont = False
end
object Label2: TLabel
Left = 494
Top = -158
Left = 514
Top = -4
Width = 131
Height = 18
Anchors = [akTop, akRight]
@@ -58,8 +56,8 @@ object FormDebug: TFormDebug
ParentFont = False
end
object EditNivDebug: TEdit
Left = 757
Top = -158
Left = 777
Top = -4
Width = 49
Height = 21
Anchors = [akTop, akRight]
@@ -73,72 +71,51 @@ object FormDebug: TFormDebug
Text = 'EditNivDebug'
OnKeyPress = EditNivDebugKeyPress
end
object MemoEvtDet: TMemo
Left = 562
Top = 176
Width = 234
Height = 187
Anchors = [akTop, akRight]
Color = clBlack
Font.Charset = ANSI_CHARSET
Font.Color = clYellow
Font.Height = -11
Font.Name = 'Arial'
Font.Style = []
Lines.Strings = (
'Tableau des '#233'v'#232'nements '
'fronts descendants d'#233'tecteurs')
ParentFont = False
ReadOnly = True
ScrollBars = ssVertical
TabOrder = 1
OnChange = MemoEvtDetChange
end
object ButtonEcrLog: TButton
Left = 453
Top = 168
Left = 441
Top = 322
Width = 97
Height = 29
Anchors = [akTop, akRight]
Caption = 'Sauvegarder le log'
TabOrder = 2
TabOrder = 1
OnClick = ButtonEcrLogClick
end
object ButtonRazTampon: TButton
Left = 453
Top = 200
Left = 441
Top = 354
Width = 97
Height = 33
Anchors = [akTop, akRight]
Caption = 'Raz Tampon Ev'#232'nements ---->'
TabOrder = 3
TabOrder = 2
WordWrap = True
OnClick = ButtonRazTamponClick
end
object ButtonCherche: TButton
Left = 453
Top = 136
Left = 441
Top = 290
Width = 97
Height = 25
Anchors = [akTop, akRight]
Caption = 'Chercher erreurs'
TabOrder = 4
TabOrder = 3
OnClick = ButtonChercheClick
end
object ButtonAffEvtChrono: TButton
Left = 453
Top = 96
Left = 441
Top = 250
Width = 97
Height = 33
Anchors = [akTop, akRight]
Caption = 'Affiche Evts d'#233'tecteurs et aig'
TabOrder = 5
TabOrder = 4
WordWrap = True
OnClick = ButtonAffEvtChronoClick
end
object ButtonCop: TButton
Left = 453
Top = 48
Left = 441
Top = 202
Width = 97
Height = 41
Anchors = [akTop, akRight]
@@ -149,14 +126,14 @@ object FormDebug: TFormDebug
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
TabOrder = 6
TabOrder = 5
WordWrap = True
OnClick = ButtonCopClick
end
object RichEdit: TRichEdit
Left = 562
Top = 16
Width = 234
Left = 546
Top = 170
Width = 270
Height = 153
Anchors = [akTop, akRight]
Font.Charset = DEFAULT_CHARSET
@@ -169,24 +146,24 @@ object FormDebug: TFormDebug
PopupMenu = PopupMenuRE
ReadOnly = True
ScrollBars = ssVertical
TabOrder = 7
TabOrder = 6
OnChange = RichEditChange
end
object ButtonRazLog: TButton
Left = 453
Top = 240
Left = 441
Top = 394
Width = 97
Height = 33
Anchors = [akTop, akRight]
Caption = 'Raz Tampon Log <-----'
TabOrder = 8
TabOrder = 7
WordWrap = True
OnClick = ButtonRazLogClick
end
object GroupBox1: TGroupBox
Left = 451
Top = 480
Width = 345
Left = 447
Top = 634
Width = 372
Height = 185
Anchors = [akTop, akRight]
Caption = 'Fonctions primitives'
@@ -198,16 +175,16 @@ object FormDebug: TFormDebug
Font.Style = []
ParentColor = False
ParentFont = False
TabOrder = 9
TabOrder = 8
object GroupBox3: TGroupBox
Left = 8
Top = 16
Width = 329
Width = 353
Height = 73
Caption = 'Signal'
TabOrder = 0
object Label4: TLabel
Left = 281
Left = 305
Top = 10
Width = 32
Height = 13
@@ -220,7 +197,7 @@ object FormDebug: TFormDebug
ParentFont = False
end
object ButtonSigSuiv: TButton
Left = 8
Left = 16
Top = 16
Width = 57
Height = 49
@@ -233,7 +210,7 @@ object FormDebug: TFormDebug
OnClick = ButtonSigSuivClick
end
object ButtonCanSuivSig: TButton
Left = 64
Left = 72
Top = 16
Width = 65
Height = 49
@@ -246,9 +223,9 @@ object FormDebug: TFormDebug
OnClick = ButtonCanSuivSigClick
end
object EditSigSuiv: TEdit
Left = 280
Left = 304
Top = 32
Width = 41
Width = 33
Height = 21
Hint = 'Indiquer l'#39'adresse du signal '
ParentShowHint = False
@@ -256,7 +233,7 @@ object FormDebug: TFormDebug
TabOrder = 2
end
object ButtonCP: TButton
Left = 128
Left = 136
Top = 16
Width = 81
Height = 49
@@ -266,7 +243,7 @@ object FormDebug: TFormDebug
OnClick = ButtonCPClick
end
object Button2: TButton
Left = 208
Left = 224
Top = 16
Width = 65
Height = 49
@@ -279,7 +256,7 @@ object FormDebug: TFormDebug
object GroupBox4: TGroupBox
Left = 8
Top = 96
Width = 329
Width = 345
Height = 81
Caption = 'D'#233'tecteur/'#233'l'#233'ment suivant'
TabOrder = 1
@@ -332,9 +309,9 @@ object FormDebug: TFormDebug
end
end
object GroupBox2: TGroupBox
Left = 459
Top = -140
Width = 333
Left = 439
Top = 14
Width = 380
Height = 149
Anchors = [akTop, akRight]
Caption = 'S'#233'lections d'#39'affichage'
@@ -346,7 +323,7 @@ object FormDebug: TFormDebug
Font.Style = []
ParentColor = False
ParentFont = False
TabOrder = 10
TabOrder = 9
object CheckAffSig: TCheckBox
Left = 8
Top = 16
@@ -488,7 +465,7 @@ object FormDebug: TFormDebug
OnClick = CheckBox1Click
end
object CheckDebugTCO: TCheckBox
Left = 200
Left = 248
Top = 128
Width = 121
Height = 17
@@ -505,21 +482,21 @@ object FormDebug: TFormDebug
end
object RichDebug: TRichEdit
Left = 8
Top = -152
Width = 435
Top = 2
Width = 419
Height = 788
Anchors = [akLeft, akTop, akRight]
Lines.Strings = (
'RichDebug')
PopupMenu = PopupMenuRD
ScrollBars = ssBoth
TabOrder = 11
TabOrder = 10
OnChange = RichDebugChange
end
object GroupBox5: TGroupBox
Left = 451
Top = 368
Width = 345
Left = 447
Top = 522
Width = 372
Height = 57
Anchors = [akTop, akRight]
Caption = 'Simulation d'#233'tecteur / actionneur'
@@ -531,7 +508,7 @@ object FormDebug: TFormDebug
Font.Style = []
ParentColor = False
ParentFont = False
TabOrder = 12
TabOrder = 11
object EditSimuDet: TEdit
Left = 16
Top = 24
@@ -543,9 +520,9 @@ object FormDebug: TFormDebug
TabOrder = 0
end
object ButtonSimuDet0: TButton
Left = 56
Left = 72
Top = 16
Width = 57
Width = 65
Height = 33
Caption = 'D'#233'tecteur '#224' 0'
TabOrder = 1
@@ -553,9 +530,9 @@ object FormDebug: TFormDebug
OnClick = ButtonSimuDet0Click
end
object ButtonSimuDet1: TButton
Left = 128
Left = 152
Top = 16
Width = 57
Width = 65
Height = 33
Caption = 'D'#233'tecteur '#224' 1'
TabOrder = 2
@@ -563,9 +540,9 @@ object FormDebug: TFormDebug
OnClick = ButtonSimuDet1Click
end
object ButtonSimuAct0: TButton
Left = 200
Left = 224
Top = 16
Width = 59
Width = 65
Height = 33
Caption = 'Actionneur '#224' 0'
TabOrder = 3
@@ -573,9 +550,9 @@ object FormDebug: TFormDebug
OnClick = ButtonSimuAct0Click
end
object ButtonSimuAct1: TButton
Left = 272
Left = 296
Top = 16
Width = 59
Width = 65
Height = 33
Caption = 'Actionneur '#224' 1'
TabOrder = 4
@@ -584,8 +561,8 @@ object FormDebug: TFormDebug
end
end
object ButtonRazTout: TButton
Left = 454
Top = 16
Left = 442
Top = 170
Width = 97
Height = 25
Hint =
@@ -595,13 +572,13 @@ object FormDebug: TFormDebug
Caption = 'RAZ tous trains'
ParentShowHint = False
ShowHint = True
TabOrder = 13
TabOrder = 12
OnClick = ButtonRazToutClick
end
object GroupBox6: TGroupBox
Left = 450
Top = 432
Width = 345
Left = 446
Top = 586
Width = 373
Height = 41
Anchors = [akTop, akRight]
Caption = 'Sorties'
@@ -613,7 +590,7 @@ object FormDebug: TFormDebug
Font.Style = []
ParentColor = False
ParentFont = False
TabOrder = 14
TabOrder = 13
object Label3: TLabel
Left = 16
Top = 16
@@ -675,6 +652,16 @@ object FormDebug: TFormDebug
OnClick = Button0Click
end
end
object MemoEvtDet: TRichEdit
Left = 548
Top = 330
Width = 265
Height = 185
Anchors = [akTop, akRight]
Color = clBlack
ScrollBars = ssVertical
TabOrder = 14
end
object SaveDialog: TSaveDialog
Left = 768
Top = 488
+49 -22
View File
@@ -10,7 +10,6 @@ type
TFormDebug = class(TForm)
EditNivDebug: TEdit;
Label1: TLabel;
MemoEvtDet: TMemo;
Label2: TLabel;
SaveDialog: TSaveDialog;
ButtonEcrLog: TButton;
@@ -63,6 +62,7 @@ type
EditSortie: TEdit;
Button1: TButton;
Button0: TButton;
MemoEvtDet: TRichEdit;
procedure FormCreate(Sender: TObject);
procedure ButtonEcrLogClick(Sender: TObject);
procedure EditNivDebugKeyPress(Sender: TObject; var Key: Char);
@@ -89,7 +89,7 @@ type
procedure ButtonSimuDet1Click(Sender: TObject);
procedure ButtonRazToutClick(Sender: TObject);
procedure RichEditChange(Sender: TObject);
procedure MemoEvtDetChange(Sender: TObject);
procedure MemoEvtDet1Change(Sender: TObject);
procedure EditDebugSignalChange(Sender: TObject);
procedure CheckBoxTiersClick(Sender: TObject);
procedure ButtonSimuAct1Click(Sender: TObject);
@@ -100,6 +100,7 @@ type
procedure Button1Click(Sender: TObject);
procedure Button0Click(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure FormActivate(Sender: TObject);
private
{ Déclarations privées }
public
@@ -109,16 +110,18 @@ type
var
FormDebug: TFormDebug;
NivDebug,signalDebug : integer;
AffSignal,AffAffect,initform,AffFD,debug_dec_sig,debugTCO : boolean;
AffSignal,AffAffect,initform,AffFD,debug_dec_sig,debugTCO,DebugAffiche : boolean;
N_event_det : integer; // index du dernier évènement (de 1 à 20)
N_Event_tick : integer ; // dernier index
procedure AfficheDebug(s : string;lacouleur : TColor);
procedure AfficheDebug_suivi(s : string;lacouleur : TColor);
procedure RE_ColorLine(ARichEdit: TRichEdit; ARow: Integer; AColor: TColor);
procedure affiche_evt(s: string;lacouleur : TColor);
implementation
uses UnitPrinc;
@@ -138,6 +141,7 @@ end;
procedure AfficheDebug(s : string;lacouleur : TColor);
begin
if debugAffiche then
with FormDebug.RichDebug do
begin
Lines.add(s);
@@ -145,9 +149,33 @@ begin
end;
end;
procedure affiche_evt(s: string;lacouleur : TColor);
begin
if DebugAffiche then
with FormDebug.MemoEvtDet do
begin
Lines.add(s);
RE_ColorLine(FormDebug.MemoEvtDet,FormDebug.MemoEvtDet.lines.count-1,lacouleur);
end;
end;
procedure AfficheDebug_suivi(s : string;lacouleur : TColor);
var i : integer;
begin
if DebugAffiche then
with formDebug.RichDebug do
begin
i:=lines.Count-1;
s:=lines.Strings[i]+s;
lines.Strings[i]:=s;
RE_ColorLine(FormDebug.RichDebug,i,lacouleur);
end;
end;
procedure TFormDebug.FormCreate(Sender: TObject);
var s: string;
begin
if affevt then affiche('FormDebug create',clLime);
EditNivDebug.Text:='0';
s:='Cette fenêtre permet d''afficher des informations sur le ';
s:=s+'comportement du programme. Positionner le niveau du débug de 1 à 3 pour';
@@ -161,14 +189,8 @@ begin
if IsWow64Process then s:=s+' OS 64 Bits' else s:=s+' OS 32 Bits';
RichEdit.color:=$111122;
RichDebug.Lines.add(s);
visible:=false; // invisible au démarrage
//garantit la scrollbar dans radstudio
with VertScrollBar do
begin
Range:=850;
visible:=true;
tracking:=true;
end;
Autoscroll:=true; // permet l'affichage de l'ascenseur
DebugAffiche:=true;
end;
procedure TFormDebug.ButtonEcrLogClick(Sender: TObject);
@@ -332,13 +354,13 @@ end;
procedure TFormDebug.ButtonSigSuivClick(Sender: TObject);
var adr,erreur,ancdebug : integer ;
var adr,erreur,ancdebug,AdrSigSuivant : integer ;
begin
ancdebug:=NivDebug;
NivDebug:=3;
Val(EditSigSuiv.Text,adr,erreur);
if erreur<>0 then exit;
etat_signal_suivant(Adr,1) ;
etat_signal_suivant(Adr,1,AdrSigSuivant) ;
NivDebug:=AncDebug;
end;
@@ -375,23 +397,23 @@ end;
procedure TFormDebug.ButtonCPClick(Sender: TObject);
var Adr,erreur,ancdebug : integer ;
var Adr,erreur,ancdebug,adrtrain : integer ;
begin
Val(EditSigSuiv.Text,Adr,erreur); if erreur<>0 then exit;
ancdebug:=NivDebug;
NivDebug:=3;
PresTrainPrec(Adr);
PresTrainPrec(Adr,Nb_cantons_Sig,adrtrain);
NivDebug:=AncDebug;
end;
procedure TFormDebug.Button2Click(Sender: TObject);
var Adr,erreur,ancdebug : integer ;
var Adr,erreur,ancdebug,trainreseve : integer ;
begin
Val(EditSigSuiv.Text,Adr,erreur); if erreur<>0 then exit;
ancdebug:=NivDebug;
NivDebug:=3;
Cond_Carre(Adr);
carre_signal(adr);
carre_signal(adr,trainreseve);
NivDebug:=AncDebug;
end;
@@ -446,7 +468,7 @@ begin
SendMessage(RichEdit.handle, WM_VSCROLL, SB_BOTTOM, 0);
end;
procedure TFormDebug.MemoEvtDetChange(Sender: TObject);
procedure TFormDebug.MemoEvtDet1Change(Sender: TObject);
begin
SendMessage(MemoEvtDet.handle, WM_VSCROLL, SB_BOTTOM, 0);
end;
@@ -462,7 +484,6 @@ begin
AffTiers:=checkBoxTiers.checked;
end;
procedure TFormDebug.ButtonElSuivClick(Sender: TObject);
var Adr,Prec,Actuel,erreur,ancdebug : integer ;
type1,type2 : tequipement;
@@ -595,4 +616,10 @@ begin
if key=chr(27) then close;
end;
procedure TFormDebug.FormActivate(Sender: TObject);
begin
if affevt then affiche('FormConfig activate',clLime);
formDebug.buttonCP.Caption:='Etat '+intToSTR(Nb_cantons_Sig)+' cantons précédents signal';
end;
end.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+27 -9
View File
@@ -1,6 +1,6 @@
object FormPrinc: TFormPrinc
Left = 67
Top = 170
Left = 35
Top = 192
Width = 1213
Height = 670
Caption = 'Client TCP-IP CDM Rail ou USB - syst'#232'me LENZ'
@@ -18,8 +18,8 @@ object FormPrinc: TFormPrinc
OnClose = FormClose
OnCreate = FormCreate
DesignSize = (
1205
619)
1197
612)
PixelsPerInch = 96
TextHeight = 13
object LabelTitre: TLabel
@@ -1264,8 +1264,8 @@ object FormPrinc: TFormPrinc
end
object StatusBar1: TStatusBar
Left = 0
Top = 597
Width = 1205
Top = 590
Width = 1197
Height = 22
Panels = <>
SimplePanel = True
@@ -1474,8 +1474,8 @@ object FormPrinc: TFormPrinc
end
end
object GroupBox3: TGroupBox
Left = 656
Top = 64
Left = 640
Top = 56
Width = 265
Height = 129
Anchors = [akTop, akRight]
@@ -1600,6 +1600,16 @@ object FormPrinc: TFormPrinc
TabOrder = 11
Text = '<1>'
end
object Button1: TButton
Left = 960
Top = 120
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 12
Visible = False
OnClick = Button1Click
end
object Timer1: TTimer
Interval = 100
OnTimer = Timer1Timer
@@ -1637,6 +1647,10 @@ object FormPrinc: TFormPrinc
Caption = 'Etat des zones par train'
OnClick = Etatdeszonespartrain1Click
end
object Evenementsdetecteurspartrain1: TMenuItem
Caption = 'Evenements detecteurs par train'
OnClick = Evenementsdetecteurspartrain1Click
end
object N3: TMenuItem
Caption = '-'
end
@@ -1812,8 +1826,12 @@ object FormPrinc: TFormPrinc
object PopupMenuFeu: TPopupMenu
Left = 896
object Proprits1: TMenuItem
Caption = 'Propri'#233't'#233's'
Caption = 'Propri'#233't'#233's du signal'
OnClick = Proprits1Click
end
object Informationsdusignal1: TMenuItem
Caption = 'Informations du signal'
OnClick = Informationsdusignal1Click
end
end
end
+2295 -675
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+2 -2
View File
@@ -50,9 +50,9 @@ object FormSimulation: TFormSimulation
object CheckAffTick: TCheckBox
Left = 64
Top = 64
Width = 225
Width = 313
Height = 17
Caption = 'Afficher les ticks pendant la simulation'
Caption = 'RAZ des trains et de leurs placements avant de d'#233'marrer'
TabOrder = 2
end
object OpenDialog: TOpenDialog
+94 -86
View File
@@ -26,19 +26,105 @@ type
var
FormSimulation: TFormSimulation;
Intervalle : integer;
AffTickSimu : boolean;
procedure ouvre_simulation(nomfichier : string);
implementation
{$R *.dfm}
procedure TFormSimulation.ButtonChargeClick(Sender: TObject);
var s,nF : string;
fte : textFile;
procedure ouvre_simulation(nomfichier : string);
var s: string;
fte : text;
i,k,erreur : integer;
sortie : boolean;
begin
AffTickSimu:= checkAffTick.Checked;
assignFile(fte,nomfichier);
{$I+}
try
reset(fte);
except
Affiche('Fichier '+nomFichier+' incorrect',clred);
exit;
end;
index_simule:=1;
sortie:=false;
while not(eof(fte)) and not(sortie) do
begin
readln(fte,s);
s:=Uppercase(s);
i:=pos('TICK=',s);
if i<>0 then
begin
Delete(s,1,i+4);
val(s,k,erreur);
//if intervalle<>0 then k:=Index_Simule*Intervalle+tick+30 else // démarre dans 3s
// k:=Index_Simule+tick+30 ;
Tablo_simule[index_simule].tick:=k;
// détecteur?
i:=pos('DET',s);
if i<>0 then
begin
Delete(s,1,i+2);
if s[1]='=' then delete(s,1,1);
if s[1]=' ' then delete(s,1,1);
val(s,k,erreur);
Tablo_simule[index_simule].adresse:=k;
Tablo_simule[index_simule].modele:=det;
i:=pos('=',s);
if i<>0 then
begin
Delete(s,1,i);
val(s,k,erreur);
Tablo_simule[index_simule].etat:=k;
{s:=IntToSTR(Index_simule)+' Tick='+intToSTR(Tablo_simule[index_simule].tick)+
' Detecteur='+intToSTR(Tablo_simule[index_simule].Adresse)+
'='+intToSTR(Tablo_simule[index_simule].etat);
Affiche(s,ClLime); }
inc(index_simule);
end;
end;
// aiguillage?
i:=pos('AIG',s);
if i<>0 then
begin
Delete(s,1,i+2);
if s[1]='=' then delete(s,1,1);
if s[1]=' ' then delete(s,1,1);
val(s,k,erreur);
Tablo_simule[index_simule].adresse:=k;
Tablo_simule[index_simule].modele:=aig;
i:=pos('=',s);
if i<>0 then
begin
Delete(s,1,i);
val(s,k,erreur);
if (k=1) or (k=2) then Tablo_simule[index_simule].etat:=k
else Affiche('Erreur 622 : Position aiguillage '+intToSTR(Tablo_simule[index_simule].adresse)+' inconnue dans le fichier de simulation',clred);
{s:=IntToSTR(Index_simule)+' Tick='+intToSTR(Tablo_simule[index_simule].tick)+
' Aiguillage='+intToSTR(Tablo_simule[index_simule].adresse)+
'='+intToSTR(Tablo_simule[index_simule].etat);
Affiche(s,ClLime); }
inc(index_simule);
end;
end;
end;
Application.ProcessMessages;
sortie:=eof(fte) or (index_simule>Max_Simule) or (pos('STOP',s)<>0);
end ;
if index_simule>Max_Simule then Affiche('Tableau maximal atteint',clred);
Affiche('Intervalle='+intToSTR(intervalle),clyellow);
dec(index_simule); //maxi
closeFile(fte);
formprinc.ButtonArretSimu.Visible:=true;
i_simule:=1;
FormSimulation.Close;
Affiche('Fichier simulation : '+Nomfichier ,clyellow);
end;
procedure TFormSimulation.ButtonChargeClick(Sender: TObject);
var s : string;
begin
s:=GetCurrentDir;
s:='C:\Program Files (x86)\Borland\Delphi7\Projects\Signaux_complexes_GL';
OpenDialog.InitialDir:=s;
@@ -47,90 +133,12 @@ begin
OpenDialog.Filter:='Fichiers texte (*.txt)|*.txt|Tous fichiers (*.*)|*.*';
if openDialog.Execute then
begin
nF:=openDialog.FileName;
assignFile(fte,nF);
reset(fte);
index_simule:=1;
repeat
readln(fte,s);
//Affiche(s,clLime);
i:=pos('Tick=',s);
if i<>0 then
begin
Delete(s,1,i+4);
val(s,k,erreur);
if intervalle<>0 then k:=Index_Simule*Intervalle+tick+30 else // démarre dans 3s
k:=Index_Simule+tick+30 ;
Tablo_simule[index_simule].tick:=k;
// détecteur?
i:=pos('Det',s);
if i<>0 then
begin
Delete(s,1,i+2);
if s[1]='=' then delete(s,1,1);
if s[1]=' ' then delete(s,1,1);
val(s,k,erreur);
Tablo_simule[index_simule].adresse:=k;
Tablo_simule[index_simule].modele:=det;
i:=pos('=',s);
if i<>0 then
begin
Delete(s,1,i);
val(s,k,erreur);
Tablo_simule[index_simule].etat:=k;
//s:=IntToSTR(Index_simule)+' Tick='+intToSTR(Tablo_simule[index_simule].tick)+
// ' Detecteur='+intToSTR(Tablo_simule[index_simule].detecteur)+
// '='+intToSTR(Tablo_simule[index_simule].etat);
//Affiche(s,ClLime);
inc(index_simule);
end;
end;
// aiguillage?
i:=pos('Aig',s);
if i<>0 then
begin
Delete(s,1,i+2);
if s[1]='=' then delete(s,1,1);
if s[1]=' ' then delete(s,1,1);
val(s,k,erreur);
Tablo_simule[index_simule].adresse:=k;
Tablo_simule[index_simule].modele:=aig;
i:=pos('=',s);
if i<>0 then
begin
Delete(s,1,i);
val(s,k,erreur);
if (k=1) or (k=2) then Tablo_simule[index_simule].etat:=k
else Affiche('Erreur 622 : Position aiguillage '+intToSTR(Tablo_simule[index_simule].adresse)+' inconnue dans le fichier de simulation',clred);
{s:=IntToSTR(Index_simule)+' Tick='+intToSTR(Tablo_simule[index_simule].tick)+
' Aiguillage='+intToSTR(Tablo_simule[index_simule].adresse)+
'='+intToSTR(Tablo_simule[index_simule].etat);
Affiche(s,ClLime); }
inc(index_simule);
end;
end;
end;
Application.ProcessMessages;
sortie:=eof(fte) or (index_simule>Max_Simule);
until sortie ;
if index_simule>Max_Simule then Affiche('Tableau maximal atteint',clred);
Affiche('Intervalle='+intToSTR(intervalle),clyellow);
dec(index_simule);
closeFile(fte);
formprinc.ButtonArretSimu.Visible:=true;
FormSimulation.Close;
if checkAffTick.Checked then raz_tout;
s:=openDialog.FileName;
ouvre_simulation(s);
end;
Affiche('Fichier simulation : '+nF ,clyellow);
end;
procedure TFormSimulation.FormCreate(Sender: TObject);
begin
Intervalle:=0;
BIN
View File
Binary file not shown.
+71 -71
View File
@@ -1,6 +1,6 @@
object FormTCO: TFormTCO
Left = 207
Top = 62
Left = 179
Top = 15
Width = 1139
Height = 686
VertScrollBar.Visible = False
@@ -96,7 +96,7 @@ object FormTCO: TFormTCO
VertScrollBar.Tracking = True
Anchors = [akLeft, akTop, akRight, akBottom]
BevelEdges = [beLeft, beTop, beRight]
Color = clBackground
Color = clBlack
ParentColor = False
TabOrder = 0
DesignSize = (
@@ -105,8 +105,8 @@ object FormTCO: TFormTCO
object ImageTCO: TImage
Left = 0
Top = 0
Width = 1030
Height = 345
Width = 1009
Height = 337
Anchors = [akLeft, akTop, akRight, akBottom]
ParentShowHint = False
PopupMenu = PopupMenu1
@@ -135,10 +135,10 @@ object FormTCO: TFormTCO
OnChange = TrackBarZoomChange
end
object Panel1: TPanel
Left = 8
Top = 471
Width = 1113
Height = 166
Left = 0
Top = 480
Width = 1121
Height = 165
Anchors = [akLeft, akRight, akBottom]
Color = clActiveBorder
Font.Charset = ANSI_CHARSET
@@ -150,10 +150,10 @@ object FormTCO: TFormTCO
TabOrder = 2
OnDragOver = Panel1DragOver
DesignSize = (
1113
166)
1121
165)
object ImagePalette5: TImage
Left = 504
Left = 520
Top = 8
Width = 41
Height = 41
@@ -163,7 +163,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette5MouseDown
end
object Label6: TLabel
Left = 200
Left = 216
Top = 22
Width = 9
Height = 19
@@ -176,7 +176,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette2: TImage
Left = 288
Left = 304
Top = 8
Width = 41
Height = 41
@@ -186,7 +186,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette2MouseDown
end
object Label7: TLabel
Left = 272
Left = 288
Top = 22
Width = 9
Height = 19
@@ -199,7 +199,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object Label10: TLabel
Left = 488
Left = 504
Top = 22
Width = 9
Height = 19
@@ -212,7 +212,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette1: TImage
Left = 216
Left = 232
Top = 8
Width = 41
Height = 41
@@ -225,7 +225,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette1MouseDown
end
object ImagePalette6: TImage
Left = 216
Left = 232
Top = 56
Width = 41
Height = 41
@@ -235,7 +235,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette6MouseDown
end
object ImagePalette7: TImage
Left = 288
Left = 304
Top = 56
Width = 41
Height = 41
@@ -245,7 +245,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette7MouseDown
end
object ImagePalette8: TImage
Left = 360
Left = 376
Top = 56
Width = 41
Height = 41
@@ -255,7 +255,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette8MouseDown
end
object ImagePalette9: TImage
Left = 432
Left = 448
Top = 56
Width = 41
Height = 41
@@ -265,7 +265,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette9MouseDown
end
object Label11: TLabel
Left = 200
Left = 216
Top = 70
Width = 9
Height = 19
@@ -278,7 +278,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object Label12: TLabel
Left = 272
Left = 288
Top = 70
Width = 9
Height = 19
@@ -291,7 +291,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object Label13: TLabel
Left = 344
Left = 360
Top = 70
Width = 9
Height = 19
@@ -304,7 +304,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object Label14: TLabel
Left = 416
Left = 432
Top = 70
Width = 9
Height = 19
@@ -317,7 +317,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette3: TImage
Left = 360
Left = 376
Top = 8
Width = 41
Height = 41
@@ -327,7 +327,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette3MouseDown
end
object ImagePalette4: TImage
Left = 432
Left = 448
Top = 8
Width = 41
Height = 41
@@ -336,7 +336,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette4MouseDown
end
object Label8: TLabel
Left = 344
Left = 360
Top = 22
Width = 9
Height = 19
@@ -349,7 +349,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object Label9: TLabel
Left = 416
Left = 432
Top = 22
Width = 9
Height = 19
@@ -362,7 +362,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette10: TImage
Left = 216
Left = 232
Top = 104
Width = 41
Height = 41
@@ -372,7 +372,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette10MouseDown
end
object Label16: TLabel
Left = 192
Left = 208
Top = 118
Width = 18
Height = 19
@@ -385,7 +385,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette11: TImage
Left = 288
Left = 304
Top = 104
Width = 41
Height = 41
@@ -395,7 +395,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette11MouseDown
end
object Label17: TLabel
Left = 264
Left = 280
Top = 118
Width = 17
Height = 19
@@ -408,7 +408,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette30: TImage
Left = 440
Left = 456
Top = 104
Width = 25
Height = 41
@@ -422,7 +422,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette30MouseDown
end
object Label18: TLabel
Left = 408
Left = 424
Top = 118
Width = 18
Height = 19
@@ -435,7 +435,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette12: TImage
Left = 576
Left = 592
Top = 8
Width = 41
Height = 41
@@ -445,7 +445,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette12MouseDown
end
object Label20: TLabel
Left = 552
Left = 568
Top = 22
Width = 18
Height = 19
@@ -458,7 +458,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object Label3: TLabel
Left = 624
Left = 640
Top = 22
Width = 18
Height = 19
@@ -471,7 +471,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette13: TImage
Left = 648
Left = 664
Top = 8
Width = 41
Height = 41
@@ -481,7 +481,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette13MouseDown
end
object Label21: TLabel
Left = 696
Left = 712
Top = 22
Width = 18
Height = 19
@@ -494,7 +494,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette14: TImage
Left = 720
Left = 736
Top = 8
Width = 41
Height = 41
@@ -504,7 +504,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette14MouseDown
end
object Label22: TLabel
Left = 768
Left = 784
Top = 22
Width = 18
Height = 19
@@ -517,7 +517,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette15: TImage
Left = 792
Left = 808
Top = 8
Width = 41
Height = 41
@@ -527,7 +527,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette15MouseDown
end
object ImagePalette16: TImage
Left = 504
Left = 520
Top = 56
Width = 41
Height = 41
@@ -537,7 +537,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette16MouseDown
end
object Label24: TLabel
Left = 480
Left = 496
Top = 70
Width = 18
Height = 19
@@ -550,7 +550,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette17: TImage
Left = 576
Left = 592
Top = 56
Width = 41
Height = 41
@@ -560,7 +560,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette17MouseDown
end
object Label25: TLabel
Left = 552
Left = 568
Top = 70
Width = 18
Height = 19
@@ -573,7 +573,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette18: TImage
Left = 648
Left = 664
Top = 56
Width = 41
Height = 41
@@ -583,7 +583,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette18MouseDown
end
object Label26: TLabel
Left = 624
Left = 640
Top = 70
Width = 18
Height = 19
@@ -596,7 +596,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette19: TImage
Left = 720
Left = 736
Top = 56
Width = 41
Height = 41
@@ -606,7 +606,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette19MouseDown
end
object Label27: TLabel
Left = 696
Left = 712
Top = 70
Width = 18
Height = 19
@@ -619,7 +619,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette20: TImage
Left = 792
Left = 808
Top = 56
Width = 41
Height = 41
@@ -629,7 +629,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette20MouseDown
end
object Label28: TLabel
Left = 768
Left = 784
Top = 70
Width = 18
Height = 19
@@ -642,7 +642,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette21: TImage
Left = 864
Left = 880
Top = 8
Width = 41
Height = 41
@@ -655,7 +655,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette21MouseDown
end
object Label29: TLabel
Left = 840
Left = 856
Top = 22
Width = 18
Height = 19
@@ -668,7 +668,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette22: TImage
Left = 936
Left = 952
Top = 8
Width = 41
Height = 41
@@ -681,7 +681,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette22MouseDown
end
object Label30: TLabel
Left = 912
Left = 928
Top = 22
Width = 18
Height = 19
@@ -694,7 +694,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImagePalette23: TImage
Left = 360
Left = 376
Top = 104
Width = 41
Height = 41
@@ -707,7 +707,7 @@ object FormTCO: TFormTCO
OnMouseDown = ImagePalette23MouseDown
end
object Label31: TLabel
Left = 336
Left = 352
Top = 118
Width = 18
Height = 19
@@ -720,7 +720,7 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ButtonSauveTCO: TButton
Left = 1005
Left = 1013
Top = 48
Width = 92
Height = 33
@@ -731,7 +731,7 @@ object FormTCO: TFormTCO
OnClick = ButtonSauveTCOClick
end
object ButtonRedessine: TButton
Left = 1005
Left = 1013
Top = 8
Width = 92
Height = 33
@@ -741,8 +741,8 @@ object FormTCO: TFormTCO
OnClick = ButtonRedessineClick
end
object Button1: TButton
Left = 608
Top = 104
Left = 760
Top = 112
Width = 89
Height = 25
Caption = 'Simu det 1'
@@ -750,8 +750,8 @@ object FormTCO: TFormTCO
OnClick = Button1Click
end
object Button2: TButton
Left = 728
Top = 104
Left = 656
Top = 112
Width = 89
Height = 25
Caption = 'Simu Det 0'
@@ -759,7 +759,7 @@ object FormTCO: TFormTCO
OnClick = Button2Click
end
object ButtonConfigTCO: TButton
Left = 1005
Left = 1013
Top = 88
Width = 92
Height = 33
@@ -769,8 +769,8 @@ object FormTCO: TFormTCO
OnClick = ButtonConfigTCOClick
end
object ButtonSimu: TButton
Left = 720
Top = 136
Left = 864
Top = 80
Width = 113
Height = 25
Caption = 'Simu canton occup'#233
@@ -778,7 +778,7 @@ object FormTCO: TFormTCO
OnClick = ButtonSimuClick
end
object ButtonMasquer: TButton
Left = 1005
Left = 1013
Top = 128
Width = 92
Height = 33
@@ -789,7 +789,7 @@ object FormTCO: TFormTCO
OnClick = ButtonMasquerClick
end
object GroupBox1: TGroupBox
Left = 0
Left = 16
Top = 8
Width = 185
Height = 137
@@ -934,7 +934,7 @@ object FormTCO: TFormTCO
end
end
object buttonRaz: TButton
Left = 901
Left = 909
Top = 128
Width = 92
Height = 33
+24 -11
View File
@@ -389,6 +389,7 @@ procedure Tourne90D;
procedure Vertical;
procedure signalG;
procedure signalD;
procedure lire_fichier_tco;
implementation
@@ -779,6 +780,7 @@ end;
procedure calcul_cellules;
begin
LargeurCell:=ZoomMax-FormTCO.TrackBarZoom.Position+ZoomMin;
//Affiche(intToSTR(largeurcell),clyellow);
hauteurCell:=(LargeurCell * RatioC) div 10;
Epaisseur:=LargeurCell div 7; // épaisseur du trait pour PEN
end;
@@ -2968,7 +2970,7 @@ end;
// affiche la cellule x et y en cases
// index est utilisé pour accéder au tableau du tracé de la fonction zone_tco
procedure affiche_cellule(x,y : integer);
var repr,Xorg,Yorg,xt,yt,mode,adresse,Bimage,aspect,oriente,pied : integer;
var i,repr,Xorg,Yorg,xt,yt,mode,adresse,Bimage,aspect,oriente,pied : integer;
Bt : TEquipement;
s : string;
begin
@@ -3063,6 +3065,21 @@ begin
3 : yt:=HauteurCell-round(17*frYGlob); // bas
end;
TextOut(xOrg+xt,Yorg+yt,s);
i:=detecteur[adresse].AdrTrain;
if i<>0 then
begin
i:=index_train_adresse(i);
if i<>0 then
begin
case repr of
1,3 : yt:=1; // haut
2 : yt:=HauteurCell-round(17*frYGlob); // bas
end;
s:=trains[i].nom_train;
PCanvasTCO.font.Size:=(LargeurCell div 13)+4 ;
TextOut(xOrg,Yorg+yt,s);
end;
end;
end;
end;
@@ -3311,7 +3328,6 @@ begin
comborepr.Enabled:=false;
ImageTCO.Top:=0;
ImageTCO.Left:=0;
TCOouvert:=true;
//controlStyle:=controlStyle+[csOpaque];
end;
@@ -3778,7 +3794,7 @@ end;
procedure TFormTCO.FormActivate(Sender: TObject);
begin
//Affiche('Form TCO activate',clyellow);
if affevt then Affiche('Form TCO activate',clyellow);
if not(Forminit) then
begin
FormInit:=true;
@@ -3794,7 +3810,6 @@ begin
PScrollBoxTCO:=FormTCO.ScrollBox;
lire_fichier_tco;
HauteurCell:=ImagePalette1.Height;
LargeurCell:=ImagePalette1.Width;
calcul_reduction(frxGlob,fryGlob,LargeurCell,HauteurCell,ZoomMax,ZoomMax);
@@ -3856,16 +3871,16 @@ begin
ButtonAfficheBandeau.visible:=true;
BandeauMasque:=true;
Panel1.Hide;
ScrollBox.Height:=ClientHeight-40;
ScrollBox.Height:=ClientHeight-30;
end
else
begin
BandeauMasque:=false;
Panel1.show;
ScrollBox.Height:=ClientHeight-Panel1.Height-40;
ScrollBox.Height:=ClientHeight-Panel1.Height-30;
end;
end;
TCOouvert:=true;
end;
// evt qui se produit quand on clic droit dans l'image
@@ -5123,7 +5138,7 @@ begin
calcul_cellules;
Affiche_TCO;
SelectionAffichee:=false;
//Affiche(intTostr(TrackBarZoom.Position),clLime);
// Affiche(intTostr(TrackBarZoom.Position),clLime);
end;
@@ -5783,9 +5798,7 @@ end;
procedure TFormTCO.FormMouseWheel(Sender: TObject; Shift: TShiftState;
WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
var i,maxi,x,y : integer;
s : string;
position : tpoint;
var i,maxi : integer;
begin
i:=FormTCO.TrackBarZoom.Position;
Binary file not shown.
-103
View File
@@ -1,103 +0,0 @@
object FormAig: TFormAig
Left = 400
Top = 204
Width = 363
Height = 204
Caption = 'Pilotage de l'#39'aiguillage'
Color = clMaroon
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
KeyPreview = True
OldCreateOrder = False
OnActivate = FormActivate
OnKeyPress = FormKeyPress
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
Left = 80
Top = 8
Width = 173
Height = 23
Caption = 'Pilotage de l'#39'aiguillage'
Font.Charset = ANSI_CHARSET
Font.Color = clWindow
Font.Height = -19
Font.Name = 'Arial Narrow'
Font.Style = [fsBold, fsItalic]
ParentFont = False
end
object LabelAdr1: TLabel
Left = 56
Top = 56
Width = 65
Height = 16
Caption = 'LabelAdr1'
Font.Charset = ANSI_CHARSET
Font.Color = clWindow
Font.Height = -13
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object LabelAdr2: TLabel
Left = 224
Top = 56
Width = 65
Height = 16
Caption = 'LabelAdr2'
Font.Charset = ANSI_CHARSET
Font.Color = clWindow
Font.Height = -13
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object ButtonOK: TButton
Left = 136
Top = 128
Width = 75
Height = 25
Caption = 'Ok'
ModalResult = 1
TabOrder = 0
end
object ButtonDev: TButton
Left = 8
Top = 88
Width = 75
Height = 25
Caption = 'D'#233'vi'#233
TabOrder = 1
OnClick = ButtonDevClick
end
object ButtonDroit: TButton
Left = 88
Top = 88
Width = 75
Height = 25
Caption = 'Droit'
TabOrder = 2
OnClick = ButtonDroitClick
end
object ButtonDev2: TButton
Left = 184
Top = 88
Width = 75
Height = 25
Caption = 'D'#233'vi'#233
TabOrder = 3
OnClick = ButtonDev2Click
end
object ButtonDroit2: TButton
Left = 264
Top = 88
Width = 75
Height = 25
Caption = 'Droit'
TabOrder = 4
OnClick = ButtonDroit2Click
end
end
-137
View File
@@ -1,137 +0,0 @@
unit Unit_Pilote_aig;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, UnitPrinc, UnitTCO;
type
TFormAig = class(TForm)
ButtonOK: TButton;
Label1: TLabel;
ButtonDev: TButton;
ButtonDroit: TButton;
ButtonDev2: TButton;
ButtonDroit2: TButton;
LabelAdr1: TLabel;
LabelAdr2: TLabel;
procedure FormActivate(Sender: TObject);
procedure ButtonDevClick(Sender: TObject);
procedure ButtonDroitClick(Sender: TObject);
procedure ButtonDev2Click(Sender: TObject);
procedure ButtonDroit2Click(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
FormAig: TFormAig;
aiguille,aiguille2 : integer;
tjdC,aigC : boolean;
implementation
{$R *.dfm}
procedure commande_simple;
begin
with formAig do
begin
LabelAdr2.Visible:=false;
LabelAdr1.Visible:=false;
ButtonDev2.Visible:=false;
ButtonDroit2.Visible:=false;
ButtonOk.Visible:=false;
ButtonDev.Left:=48;
ButtonDroit.Left:=216;
end;
end;
procedure TFormAig.FormActivate(Sender: TObject);
var i : integer;
s : string;
begin
i:=Index_aig(Aiguille);
aigC:=(aiguillage[i].modele=aig);
tjdC:=(aiguillage[i].modele=tjd) or (aiguillage[i].modele=tjs);
if aigC then
begin
s:='Pilotage de l''aiguillage '+intToSTR(aiguille);
commande_simple;
end;
if tjdC then
begin
s:='Pilotage de la TJD '+intToSTR(aiguille);
if aiguillage[i].EtatTJD=4 then
begin
LabelAdr1.Caption:='Adresse1: '+intToSTR(aiguille);
aiguille2:=aiguillage[i].DDevie;
LabelAdr2.Caption:='Adresse2: '+intToSTR(aiguille2);
s:=s+'/'+intToSTR(aiguille2);
LabelAdr2.Visible:=true;
LabelAdr1.Visible:=true;
ButtonDev2.Visible:=true;
ButtonOk.Visible:=true;
ButtonDroit2.Visible:=true;
ButtonDev.Left:=8;
ButtonDroit.Left:=88;
end;
end;
if aiguillage[i].EtatTJD=2 then
begin
commande_simple;
end;
Label1.Caption:=s;
end;
procedure TFormAig.ButtonDevClick(Sender: TObject);
var s : string;
begin
efface_entoure;SelectionAffichee:=false;
pilote_acc(aiguille,const_devie,aigP);
s:='accessoire '+IntToSTR(aiguille)+' dévié';
Affiche(s,clyellow);
if AigC then close;
end;
procedure TFormAig.ButtonDroitClick(Sender: TObject);
var s : string;
begin
efface_entoure;SelectionAffichee:=false;
pilote_acc(aiguille,const_droit,aigP);
s:='accessoire '+IntToSTR(aiguille)+' droit';
Affiche(s,clyellow);
if AigC then close;
end;
procedure TFormAig.ButtonDev2Click(Sender: TObject);
var s : string;
begin
efface_entoure;SelectionAffichee:=false;
pilote_acc(aiguille2,const_devie,aigP);
s:='accessoire '+IntToSTR(aiguille2)+' dévié';
Affiche(s,clyellow);
if AigC then close;
end;
procedure TFormAig.ButtonDroit2Click(Sender: TObject);
var s : string;
begin
efface_entoure;SelectionAffichee:=false;
pilote_acc(aiguille2,const_droit,aigP);
s:='accessoire '+IntToSTR(aiguille2)+' droit';
Affiche(s,clyellow);
if AigC then close;
end;
procedure TFormAig.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key=chr(27) then close;
end;
end.
Binary file not shown.
+2
View File
@@ -10,8 +10,10 @@ object FormAig: TFormAig
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
KeyPreview = True
OldCreateOrder = False
OnActivate = FormActivate
OnKeyPress = FormKeyPress
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
+6
View File
@@ -21,6 +21,7 @@ type
procedure ButtonDroitClick(Sender: TObject);
procedure ButtonDev2Click(Sender: TObject);
procedure ButtonDroit2Click(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
private
{ Déclarations privées }
public
@@ -128,4 +129,9 @@ begin
if AigC then close;
end;
procedure TFormAig.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key=chr(27) then close;
end;
end.
BIN
View File
Binary file not shown.
+236 -50
View File
@@ -1,9 +1,9 @@
object FormPlace: TFormPlace
Left = 313
Top = 116
Left = 368
Top = 142
BorderStyle = bsDialog
Caption = 'Placement des trains'
ClientHeight = 442
ClientHeight = 449
ClientWidth = 307
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
@@ -31,59 +31,68 @@ object FormPlace: TFormPlace
ParentFont = False
end
object LabelTrain1: TLabel
Left = 152
Top = 56
Left = 8
Top = 64
Width = 30
Height = 13
Caption = 'Train1'
end
object LabelTrain2: TLabel
Left = 152
Top = 80
Left = 8
Top = 88
Width = 30
Height = 13
Caption = 'Train2'
end
object LabelTrain3: TLabel
Left = 152
Top = 104
Left = 8
Top = 112
Width = 30
Height = 13
Caption = 'Train3'
end
object LabelTrain4: TLabel
Left = 152
Top = 128
Left = 8
Top = 136
Width = 30
Height = 13
Caption = 'Train4'
end
object LabelTrain5: TLabel
Left = 152
Top = 152
Left = 8
Top = 160
Width = 30
Height = 13
Caption = 'Train5'
end
object LabelTrain6: TLabel
Left = 152
Top = 176
Left = 8
Top = 184
Width = 30
Height = 13
Caption = 'Train7'
Caption = 'Train6'
end
object Label2: TLabel
Left = 96
Top = 40
Width = 52
Height = 13
Caption = 'D'#233'tecteurs'
Left = 91
Top = 32
Width = 70
Height = 26
Alignment = taRightJustify
Caption = 'D'#233'tecteurs de placement'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
WordWrap = True
end
object LabelTexte: TLabel
Left = 19
Top = 224
Width = 3
Left = 9
Top = 232
Width = 120
Height = 13
Caption = '. '
end
object Label3: TLabel
Left = 8
@@ -92,9 +101,30 @@ object FormPlace: TFormPlace
Height = 13
Caption = 'Pour ne pas placer un train, mettre 0 en face de son d'#233'tecteur'
end
object Label4: TLabel
Left = 168
Top = 32
Width = 54
Height = 26
Caption = 'D'#233'tecteurs destinataire'
WordWrap = True
end
object Label5: TLabel
Left = 8
Top = 40
Width = 73
Height = 13
Caption = 'Nom du train'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
end
object Buttonferme: TButton
Left = 16
Top = 400
Top = 416
Width = 75
Height = 25
Caption = 'Fermer'
@@ -103,7 +133,7 @@ object FormPlace: TFormPlace
end
object ButtonInitAig: TButton
Left = 16
Top = 272
Top = 248
Width = 273
Height = 25
Caption = 'Positionner les aiguillages en position initiale'
@@ -112,64 +142,82 @@ object FormPlace: TFormPlace
end
object ButtonSauve: TButton
Left = 16
Top = 368
Top = 376
Width = 273
Height = 25
Caption = 'Enregistrer la configuration de roulage'
Caption = 'Enregistrer la configuration de placement'
TabOrder = 2
OnClick = ButtonSauveClick
end
object Edit1: TEdit
Left = 96
Top = 56
Width = 49
Left = 128
Top = 64
Width = 33
Height = 21
Hint = 'D'#233'tecteur recevant le train 1'
ParentShowHint = False
ShowHint = True
TabOrder = 3
OnChange = Edit1Change
end
object Edit2: TEdit
Left = 96
Top = 80
Width = 49
Left = 128
Top = 88
Width = 33
Height = 21
Hint = 'D'#233'tecteur recevant le train 2'
ParentShowHint = False
ShowHint = True
TabOrder = 4
OnChange = Edit2Change
end
object Edit3: TEdit
Left = 96
Top = 104
Width = 49
Left = 128
Top = 112
Width = 33
Height = 21
Hint = 'D'#233'tecteur recevant le train 3'
ParentShowHint = False
ShowHint = True
TabOrder = 5
OnChange = Edit3Change
end
object Edit4: TEdit
Left = 96
Top = 128
Width = 49
Left = 128
Top = 136
Width = 33
Height = 21
Hint = 'D'#233'tecteur recevant le train 4'
ParentShowHint = False
ShowHint = True
TabOrder = 6
OnChange = Edit4Change
end
object Edit5: TEdit
Left = 96
Top = 152
Width = 49
Left = 128
Top = 160
Width = 33
Height = 21
Hint = 'D'#233'tecteur recevant le train 5'
ParentShowHint = False
ShowHint = True
TabOrder = 7
OnChange = Edit5Change
end
object Edit6: TEdit
Left = 96
Top = 176
Width = 49
Left = 128
Top = 184
Width = 33
Height = 21
Hint = 'D'#233'tecteur recevant le train 6'
ParentShowHint = False
ShowHint = True
TabOrder = 8
OnChange = Edit6Change
end
object ButtonPlace: TButton
Left = 16
Top = 240
Top = 280
Width = 273
Height = 25
Caption = 'Placer les trains sur les d'#233'tecteurs ci-dessus'
@@ -178,7 +226,7 @@ object FormPlace: TFormPlace
end
object ButtonLanceRoutage: TButton
Left = 16
Top = 304
Top = 312
Width = 273
Height = 25
Caption = 'Lancer le roulage'
@@ -193,7 +241,7 @@ object FormPlace: TFormPlace
end
object Button1: TButton
Left = 208
Top = 400
Top = 416
Width = 81
Height = 25
Caption = 'Config trains'
@@ -202,11 +250,149 @@ object FormPlace: TFormPlace
end
object ButtonArretroutage: TButton
Left = 16
Top = 336
Top = 344
Width = 273
Height = 25
Caption = 'Arr'#234't du roulage'
TabOrder = 12
OnClick = ButtonArretroutageClick
end
object CheckInverse1: TCheckBox
Left = 208
Top = 64
Width = 89
Height = 17
Hint = 'Pilotage en sens inverse'
Caption = 'sens inverse'
ParentShowHint = False
ShowHint = True
TabOrder = 13
OnClick = CheckInverse1Click
end
object CheckInverse2: TCheckBox
Left = 208
Top = 88
Width = 89
Height = 17
Hint = 'Pilotage en sens inverse'
Caption = 'sens inverse'
ParentShowHint = False
ShowHint = True
TabOrder = 14
OnClick = CheckInverse2Click
end
object CheckInverse3: TCheckBox
Left = 208
Top = 112
Width = 89
Height = 17
Hint = 'Pilotage en sens inverse'
Caption = 'sens inverse'
ParentShowHint = False
ShowHint = True
TabOrder = 15
OnClick = CheckInverse3Click
end
object CheckInverse4: TCheckBox
Left = 208
Top = 136
Width = 89
Height = 17
Hint = 'Pilotage en sens inverse'
Caption = 'sens inverse'
ParentShowHint = False
ShowHint = True
TabOrder = 16
OnClick = CheckInverse4Click
end
object CheckInverse5: TCheckBox
Left = 208
Top = 160
Width = 89
Height = 17
Hint = 'Pilotage en sens inverse'
Caption = 'sens inverse'
ParentShowHint = False
ShowHint = True
TabOrder = 17
OnClick = CheckInverse5Click
end
object CheckInverse6: TCheckBox
Left = 208
Top = 184
Width = 89
Height = 17
Hint = 'Pilotage en sens inverse'
Caption = 'sens inverse'
ParentShowHint = False
ShowHint = True
TabOrder = 18
OnClick = CheckInverse6Click
end
object EditDir1: TEdit
Left = 168
Top = 64
Width = 33
Height = 21
Hint = 'D'#233'tecteur suivant vers lequel doit se diriger le train 1'
ParentShowHint = False
ShowHint = True
TabOrder = 19
OnChange = EditDir1Change
end
object EditDir2: TEdit
Left = 168
Top = 88
Width = 33
Height = 21
Hint = 'D'#233'tecteur suivant vers lequel doit se diriger le train 2'
ParentShowHint = False
ShowHint = True
TabOrder = 20
OnChange = EditDir2Change
end
object EditDir3: TEdit
Left = 168
Top = 112
Width = 33
Height = 21
Hint = 'D'#233'tecteur suivant vers lequel doit se diriger le train 3'
ParentShowHint = False
ShowHint = True
TabOrder = 21
OnChange = EditDir3Change
end
object EditDir4: TEdit
Left = 168
Top = 136
Width = 33
Height = 21
Hint = 'D'#233'tecteur suivant vers lequel doit se diriger le train 4'
ParentShowHint = False
ShowHint = True
TabOrder = 22
OnChange = EditDir4Change
end
object EditDir5: TEdit
Left = 168
Top = 160
Width = 33
Height = 21
Hint = 'D'#233'tecteur suivant vers lequel doit se diriger le train 5'
ParentShowHint = False
ShowHint = True
TabOrder = 23
OnChange = EditDir5Change
end
object EditDir6: TEdit
Left = 168
Top = 184
Width = 33
Height = 21
Hint = 'D'#233'tecteur suivant vers lequel doit se diriger le train 6'
ParentShowHint = False
ShowHint = True
TabOrder = 24
OnChange = EditDir6Change
end
end
+192 -17
View File
@@ -30,6 +30,20 @@ type
ButtonLanceRoutage: TButton;
Button1: TButton;
ButtonArretroutage: TButton;
CheckInverse1: TCheckBox;
CheckInverse2: TCheckBox;
CheckInverse3: TCheckBox;
CheckInverse4: TCheckBox;
CheckInverse5: TCheckBox;
CheckInverse6: TCheckBox;
EditDir1: TEdit;
Label4: TLabel;
EditDir2: TEdit;
EditDir3: TEdit;
EditDir4: TEdit;
EditDir5: TEdit;
EditDir6: TEdit;
Label5: TLabel;
procedure ButtonfermeClick(Sender: TObject);
procedure ButtonInitAigClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
@@ -45,6 +59,18 @@ type
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure ButtonLanceRoutageClick(Sender: TObject);
procedure ButtonArretroutageClick(Sender: TObject);
procedure CheckInverse1Click(Sender: TObject);
procedure CheckInverse2Click(Sender: TObject);
procedure CheckInverse3Click(Sender: TObject);
procedure CheckInverse4Click(Sender: TObject);
procedure CheckInverse5Click(Sender: TObject);
procedure CheckInverse6Click(Sender: TObject);
procedure EditDir1Change(Sender: TObject);
procedure EditDir2Change(Sender: TObject);
procedure EditDir3Change(Sender: TObject);
procedure EditDir4Change(Sender: TObject);
procedure EditDir5Change(Sender: TObject);
procedure EditDir6Change(Sender: TObject);
private
{ Déclarations privées }
public
@@ -78,24 +104,35 @@ begin
end;
procedure TFormPlace.FormActivate(Sender: TObject);
var i : integer;
begin
LabelTrain1.Caption:=trains[1].nom_train;
Edit1.text:=intToSTR(placement[1].detecteur);
EditDir1.Text:=IntToSTR(placement[1].detdir);
CheckInverse1.Checked:=placement[1].inverse;
LabelTrain2.Caption:=trains[2].nom_train;
EditDir2.Text:=IntToSTR(placement[2].detdir);
CheckInverse2.Checked:=placement[2].inverse;
Edit2.text:=intToSTR(placement[2].detecteur);
CheckInverse3.Checked:=placement[3].inverse;
EditDir3.Text:=IntToSTR(placement[3].detdir);
LabelTrain3.Caption:=trains[3].nom_train;
Edit3.text:=intToSTR(placement[3].detecteur);
LabelTrain4.Caption:=trains[4].nom_train;
EditDir4.Text:=IntToSTR(placement[4].detdir);
Edit4.text:=intToSTR(placement[4].detecteur);
CheckInverse4.Checked:=placement[4].inverse;
LabelTrain5.Caption:=trains[5].nom_train;
EditDir5.Text:=IntToSTR(placement[5].detdir);
Edit5.text:=intToSTR(placement[5].detecteur);
CheckInverse5.Checked:=placement[5].inverse;
LabelTrain6.Caption:=trains[6].nom_train;
EditDir6.Text:=IntToSTR(placement[6].detdir);
Edit6.text:=intToSTR(placement[6].detecteur);
CheckInverse6.Checked:=placement[6].inverse;
end;
procedure TFormPlace.ButtonPlaceClick(Sender: TObject);
var detect,erreur : integer;
var suiv,detect,erreur : integer;
s : string;
begin
if cdm_connecte then
@@ -104,6 +141,12 @@ begin
exit;
end;
for detect:=1 to NbMemZone do
begin
detecteur[detect].train:='';
detecteur[detect].AdrTrain:=0;
end;
s:=edit1.Text;
if s<>'' then
begin
@@ -113,7 +156,7 @@ begin
begin
detecteur[detect].adrTrain:=trains[1].adresse;
event_detecteur(detect,true,trains[1].nom_train);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir1.Text,clLime);
end
else
begin
@@ -132,7 +175,7 @@ begin
begin
detecteur[detect].adrTrain:=trains[2].adresse;
event_detecteur(detect,true,trains[2].nom_train);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir2.Text,clLime);
end
else
begin
@@ -151,7 +194,7 @@ begin
begin
detecteur[detect].adrTrain:=trains[3].adresse;
event_detecteur(detect,true,trains[3].nom_train);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir3.Text,clLime);
end
else
begin
@@ -168,15 +211,20 @@ begin
if (erreur<>0) or (detect>NbMemZone )then LabelTexte.caption:='Erreur détecteur train 4';
if detect<>0 then
begin
detecteur[detect].adrTrain:=trains[4].adresse;
event_detecteur(detect,true,trains[4].nom_train);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
end
else
begin
detecteur[detect].etat:=false;
detecteur[detect].train:='';
detecteur[detect].adrTrain:=0;
det_adj(detect);
val(editDir4.Text,Suiv,erreur);
if detect<>0 then
begin
detecteur[detect].adrTrain:=trains[4].adresse;
event_detecteur(detect,true,trains[4].nom_train);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir4.Text,clLime);
end
else
begin
detecteur[detect].etat:=false;
detecteur[detect].train:='';
detecteur[detect].adrTrain:=0;
end;
end;
end;
@@ -189,7 +237,7 @@ begin
begin
detecteur[detect].adrTrain:=trains[5].adresse;
event_detecteur(detect,true,trains[5].nom_train);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir5.Text,clLime);
end
else
begin
@@ -208,7 +256,7 @@ begin
begin
detecteur[detect].adrTrain:=trains[6].adresse;
event_detecteur(detect,true,trains[6].nom_train);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir6.Text,clLime);
end
else
begin
@@ -221,6 +269,7 @@ begin
begin
affiche_tco;
end;
end;
procedure TFormPlace.Edit1Change(Sender: TObject);
@@ -349,10 +398,19 @@ begin
Affiche('Lancement du train '+detecteur[adrDet].train+' depuis détecteur '+intToSTR(adrDet),clYellow);
AdrTrain:=detecteur[AdrDet].AdrTrain;
j:=index_train_adresse(AdrTrain);
vitesse_loco('',adrTrain,trains[j].VitNominale,true);
vitesse_loco('',adrTrain,trains[j].VitNominale,not(placement[j].inverse));
trouve:=true;
roulage:=true;
maj_feux;
reserve_canton(AdrDet,placement[j].detdir,adrtrain);
end;
end;
if trouve then
begin
Maj_feux;
Formprinc.LabelTitre.caption:=titre+' - Mode roulage en cours';
end;
if not(trouve) then Affiche('Pas de train placé',clOrange);
end;
@@ -361,8 +419,125 @@ var i : integer;
begin
roulage:=false;
Affiche('Arrêt du roulage de tous les trains',clorange);
Formprinc.LabelTitre.caption:=titre+' ';
for i:=1 to ntrains do
vitesse_loco('',trains[i].adresse,0,true);
end;
procedure TFormPlace.CheckInverse1Click(Sender: TObject);
begin
placement[1].inverse:=CheckInverse1.Checked;
end;
procedure TFormPlace.CheckInverse2Click(Sender: TObject);
begin
placement[2].inverse:=CheckInverse2.Checked;
end;
procedure TFormPlace.CheckInverse3Click(Sender: TObject);
begin
placement[3].inverse:=CheckInverse3.Checked;
end;
procedure TFormPlace.CheckInverse4Click(Sender: TObject);
begin
placement[4].inverse:=CheckInverse4.Checked;
end;
procedure TFormPlace.CheckInverse5Click(Sender: TObject);
begin
placement[5].inverse:=CheckInverse4.Checked;
end;
procedure TFormPlace.CheckInverse6Click(Sender: TObject);
begin
placement[6].inverse:=CheckInverse6.Checked;
end;
procedure TFormPlace.EditDir1Change(Sender: TObject);
var i,erreur : integer;
begin
val(editDir1.Text,i,erreur);
if erreur<>0 then exit;
if index_adresse_detecteur(i)=0 then
begin
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
exit;
end;
labelTexte.caption:='';
placement[1].detdir:=i;
end;
procedure TFormPlace.EditDir2Change(Sender: TObject);
var i,erreur : integer;
begin
val(editDir2.Text,i,erreur);
if erreur<>0 then exit;
if index_adresse_detecteur(i)=0 then
begin
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
exit;
end;
labelTexte.caption:='';
placement[2].detdir:=i;
end;
procedure TFormPlace.EditDir3Change(Sender: TObject);
var i,erreur : integer;
begin
val(editDir3.Text,i,erreur);
if erreur<>0 then exit;
if index_adresse_detecteur(i)=0 then
begin
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
exit;
end;
labelTexte.caption:='';
placement[3].detdir:=i;
end;
procedure TFormPlace.EditDir4Change(Sender: TObject);
var i,erreur : integer;
begin
val(editDir4.Text,i,erreur);
if erreur<>0 then exit;
if index_adresse_detecteur(i)=0 then
begin
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
exit;
end;
labelTexte.caption:='';
placement[4].detdir:=i;
end;
procedure TFormPlace.EditDir5Change(Sender: TObject);
var i,erreur : integer;
begin
val(editDir5.Text,i,erreur);
if erreur<>0 then exit;
if index_adresse_detecteur(i)=0 then
begin
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
exit;
end;
labelTexte.caption:='';
placement[5].detdir:=i;
end;
procedure TFormPlace.EditDir6Change(Sender: TObject);
var i,erreur : integer;
begin
val(editDir6.Text,i,erreur);
if erreur<>0 then exit;
if index_adresse_detecteur(i)=0 then
begin
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
exit;
end;
labelTexte.caption:='';
placement[6].detdir:=i;
end;
end.
+7 -7
View File
@@ -15,16 +15,16 @@ Ratio=10
/Matrice TCO
[Matrice]
/ inutilisé,adresse,image,inversion aiguillage,Orientation du feu, pied du feu , [texte], representation, fonte, taille fonte, couleur fonte, style
(0,358,30,0,1,1,,2,,0,FFFFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,497,30,0,1,2,,2,,0,FFFFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,TCO GARE PRINCIPALE,1,ARIAL,20,00FFFF,GI)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,FFFFFF,)(0,0,0,0,0,0,,0,,0,000000,)
(0,358,30,0,1,1,,2,,0,FFFFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,497,30,0,1,2,,2,,0,FFFFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,TCO GARE PRINCIPALE,1,ARIAL,20,00FFFF,GI)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,FFFFFF,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,8,00FF00,)(0,0,0,0,0,0,,2,,8,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,9,0,0,0,,2,,0,000000,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,2,,0,000000,)(0,517,20,0,0,0,,2,,0,00FFFF,)(0,531,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,6,2,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,9,0,0,0,,2,,0,000000,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,232,30,0,3,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,FFFFFF,)(0,288,30,0,2,1,,2,,0,FFFFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,MS SANS SERIF,10,00FFFF,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,4,15,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,514,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,522,1,0,0,0,,2,,0,00FFFF,)(0,0,7,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,232,30,0,3,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,FFFFFF,)(0,288,30,0,2,1,,2,,0,FFFFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,MS SANS SERIF,10,00FFFF,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,372,30,0,1,1,,2,,0,FFFFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,4,15,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,514,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,522,1,0,0,0,,2,,0,00FFFF,)(0,0,7,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,3,15,0,0,0,,2,,0,00FF00,)(0,5,2,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,515,1,0,0,0,,2,,0,00FFFF,)(0,515,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,7,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,19,0,0,0,,2,,0,00FFFF,)(0,0,19,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,260,30,0,2,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,316,30,0,3,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,QUAI 1,1,ARIAL,12,FFFFFF,G)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,190,30,0,2,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,11,0,0,0,,2,,0,00FFFF,)(0,0,6,0,0,0,,2,,0,000000,)(0,518,1,0,0,0,,0,,0,00FFFF,)(0,518,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,1,3,0,0,0,,2,,0,00FF00,)(0,100,21,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,VOIE 2,2,ARIAL,10,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,523,1,0,0,0,,0,,0,00FFFF,)(0,523,1,0,0,0,,0,,0,00FFFF,)(0,523,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,19,0,0,0,,2,,0,00FFFF,)(0,0,19,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,520,30,0,2,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,316,30,0,3,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,QUAI 1,1,ARIAL,12,FFFFFF,G)(0,0,23,0,0,0,,2,,8,00FF00,)(0,0,23,0,0,0,,2,,8,00FF00,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,190,30,0,2,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,11,0,0,0,,2,,0,00FFFF,)(0,0,6,0,0,0,,2,,0,000000,)(0,518,1,0,0,0,,0,,0,00FFFF,)(0,518,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,1,3,0,0,0,,2,,8,00FF00,)(0,100,21,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,VOIE 2,2,ARIAL,10,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,523,1,0,0,0,,0,,0,00FFFF,)(0,523,1,0,0,0,,0,,0,00FFFF,)(0,523,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,530,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,8,0,0,0,,2,,0,00FFFF,)(0,0,6,0,0,0,,2,,0,000000,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,12,4,1,0,0,,2,,0,00FF00,)(0,2,3,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,519,1,0,0,0,,2,,0,00FFFF,)(0,519,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,VOIE 1,2,ARIAL,10,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,8,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,7,2,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,527,1,0,0,0,,2,,8,00FFFF,)(0,0,1,0,0,0,,3,,8,00FFFF,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,529,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,26,22,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,8,0,0,0,,0,,0,000000,)(0,0,11,0,0,0,,0,,0,000000,)(0,330,30,0,3,1,,0,,0,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,QUAI 2,0,ARIAL,12,FFFFFF,G)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,10,0,0,0,,0,,0,000000,)(0,204,30,0,3,1,,0,,0,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,529,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,26,22,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,8,0,0,0,,0,,0,000000,)(0,0,11,0,0,0,,0,,0,000000,)(0,330,30,0,3,1,,0,,0,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,QUAI 2,1,ARIAL,12,FFFFFF,G)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,10,0,0,0,,0,,0,000000,)(0,204,30,0,3,1,,0,,0,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,6,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,21,5,0,0,0,,0,,0,00FF00,)(0,20,5,0,0,0,,0,,0,00FF00,)(0,520,1,0,0,0,,2,,8,00FFFF,)(0,520,1,0,0,0,,0,,0,00FFFF,)(0,520,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,8,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,8,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,8,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,8,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,8,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,7,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,176,30,0,3,1,,0,,0,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,3,,8,00FF00,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,176,30,0,3,1,,0,,0,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,3,,8,00FF00,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)
BIN
View File
Binary file not shown.
+10 -3
View File
@@ -23,7 +23,7 @@ var
Lance_verif : integer;
verifVersion,notificationVersion : boolean;
Const Version='5.2'; // sert à la comparaison de la version publiée
Const Version='5.3'; // sert à la comparaison de la version publiée
SousVersion=' '; // en cas d'absence de sous version mettre un espace
implementation
@@ -66,6 +66,8 @@ var
begin
Result:=False;
DeleteFile(s);
//Affiche('VV1',clLime);
Application.ProcessMessages;
Try Fs:=TFileStream.Create(s,fmCreate,fmShareDenyNone);
hSession:=InternetOpen('MyApp',INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
try
@@ -73,6 +75,8 @@ begin
begin
// fonction longue
dwTimeout:=2000; //2s
//Affiche('VV2',clLime);
Application.ProcessMessages;
InternetSetOption(hSession,INTERNET_OPTION_CONNECT_TIMEOUT,@dwTimeOut, SizeOf(dwTimeOut));
hService:=InternetOpenUrl(hSession, PChar(aUrl), nil, 0, INTERNET_FLAG_RELOAD, 0);
if Assigned(hService) then
@@ -240,8 +244,11 @@ begin
else formVersion.Free;
end;
if (V_utile=V_publie) and notificationVersion then Affiche('Votre version '+Version_p+SousVersion+' est à jour',clLime);
if notificationVersion then
begin
if V_utile=V_publie then Affiche('Votre version '+Version_p+SousVersion+' est à jour',clLime);
if V_utile>V_publie then Affiche('Votre version '+version+SousVersion+' est plus récente que la version publiée '+Version_p+SV_publie,clLime);
end;
end;
end
else
+7
View File
@@ -134,4 +134,11 @@ version 5.2 : Nouvel algorithme pour le d
Suivi des trains sur les détecteurs enclenchés en mode autonome
Fermeture des fenêtres secondaires par appui sur Esc/Echap
Correction bug ouverture des PN par actionneurs
version 5.3 : Informations sur les états des signaux par clic droit sur le signal.
Correction éventuelle fenêtre de violation au démarrage.
Renforcement du suivi des trains:
(prise en compte des changements d'aiguillages)
(détection simultanée d'un train sur deux détecteurs)