V2.31
This commit is contained in:
Binary file not shown.
Binary file not shown.
+8
-2
@@ -1776,7 +1776,7 @@ object FormConfig: TFormConfig
|
|||||||
Top = 8
|
Top = 8
|
||||||
Width = 585
|
Width = 585
|
||||||
Height = 441
|
Height = 441
|
||||||
ActivePage = TabSheetCDM
|
ActivePage = TabSheetSig
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
Font.Color = clBackground
|
Font.Color = clBackground
|
||||||
Font.Height = -11
|
Font.Height = -11
|
||||||
@@ -2783,7 +2783,7 @@ object FormConfig: TFormConfig
|
|||||||
Top = 48
|
Top = 48
|
||||||
Width = 129
|
Width = 129
|
||||||
Height = 21
|
Height = 21
|
||||||
ItemHeight = 0
|
ItemHeight = 13
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
OnChange = ComboBoxDecChange
|
OnChange = ComboBoxDecChange
|
||||||
end
|
end
|
||||||
@@ -2812,6 +2812,7 @@ object FormConfig: TFormConfig
|
|||||||
Height = 21
|
Height = 21
|
||||||
TabOrder = 4
|
TabOrder = 4
|
||||||
Text = 'Edit1'
|
Text = 'Edit1'
|
||||||
|
OnChange = EditDet2Change
|
||||||
end
|
end
|
||||||
object EditSuiv2: TEdit
|
object EditSuiv2: TEdit
|
||||||
Left = 184
|
Left = 184
|
||||||
@@ -2820,6 +2821,7 @@ object FormConfig: TFormConfig
|
|||||||
Height = 21
|
Height = 21
|
||||||
TabOrder = 5
|
TabOrder = 5
|
||||||
Text = 'Edit2'
|
Text = 'Edit2'
|
||||||
|
OnChange = EditSuiv2Change
|
||||||
end
|
end
|
||||||
object EditDet3: TEdit
|
object EditDet3: TEdit
|
||||||
Left = 120
|
Left = 120
|
||||||
@@ -2828,6 +2830,7 @@ object FormConfig: TFormConfig
|
|||||||
Height = 21
|
Height = 21
|
||||||
TabOrder = 6
|
TabOrder = 6
|
||||||
Text = 'Edit1'
|
Text = 'Edit1'
|
||||||
|
OnChange = EditDet3Change
|
||||||
end
|
end
|
||||||
object EditSuiv3: TEdit
|
object EditSuiv3: TEdit
|
||||||
Left = 184
|
Left = 184
|
||||||
@@ -2836,6 +2839,7 @@ object FormConfig: TFormConfig
|
|||||||
Height = 21
|
Height = 21
|
||||||
TabOrder = 7
|
TabOrder = 7
|
||||||
Text = 'Edit2'
|
Text = 'Edit2'
|
||||||
|
OnChange = EditSuiv3Change
|
||||||
end
|
end
|
||||||
object EditDet4: TEdit
|
object EditDet4: TEdit
|
||||||
Left = 120
|
Left = 120
|
||||||
@@ -2844,6 +2848,7 @@ object FormConfig: TFormConfig
|
|||||||
Height = 21
|
Height = 21
|
||||||
TabOrder = 8
|
TabOrder = 8
|
||||||
Text = 'Edit1'
|
Text = 'Edit1'
|
||||||
|
OnChange = EditDet4Change
|
||||||
end
|
end
|
||||||
object EditSuiv4: TEdit
|
object EditSuiv4: TEdit
|
||||||
Left = 184
|
Left = 184
|
||||||
@@ -2852,6 +2857,7 @@ object FormConfig: TFormConfig
|
|||||||
Height = 21
|
Height = 21
|
||||||
TabOrder = 9
|
TabOrder = 9
|
||||||
Text = 'Edit2'
|
Text = 'Edit2'
|
||||||
|
OnChange = EditSuiv4Change
|
||||||
end
|
end
|
||||||
object CheckVerrouCarre: TCheckBox
|
object CheckVerrouCarre: TCheckBox
|
||||||
Left = 112
|
Left = 112
|
||||||
|
|||||||
+276
-88
@@ -207,6 +207,12 @@ type
|
|||||||
procedure EditDet1Change(Sender: TObject);
|
procedure EditDet1Change(Sender: TObject);
|
||||||
procedure EditSuiv1Change(Sender: TObject);
|
procedure EditSuiv1Change(Sender: TObject);
|
||||||
procedure CheckVerrouCarreClick(Sender: TObject);
|
procedure CheckVerrouCarreClick(Sender: TObject);
|
||||||
|
procedure EditDet2Change(Sender: TObject);
|
||||||
|
procedure EditSuiv2Change(Sender: TObject);
|
||||||
|
procedure EditDet3Change(Sender: TObject);
|
||||||
|
procedure EditSuiv3Change(Sender: TObject);
|
||||||
|
procedure EditDet4Change(Sender: TObject);
|
||||||
|
procedure EditSuiv4Change(Sender: TObject);
|
||||||
private
|
private
|
||||||
{ Déclarations privées }
|
{ Déclarations privées }
|
||||||
public
|
public
|
||||||
@@ -215,14 +221,32 @@ type
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
const
|
const
|
||||||
TitreAig='Description de l''aiguillage ';
|
// variables du fichier de configuration "config-gl.cfg"
|
||||||
|
section_init='[section_init]';
|
||||||
|
nb_det_dist_ch='nb_det_dist';
|
||||||
|
IpV4_PC_ch='IpV4_PC';
|
||||||
|
retro_ch='retro';
|
||||||
|
Init_aig_ch='Init_Aig';
|
||||||
|
LAY_ch='Lay';
|
||||||
|
IPV4_INTERFACE_ch='IPV4_INTERFACE';
|
||||||
|
PROTOCOLE_SERIE_ch='PROTOCOLE_SERIE';
|
||||||
|
INTER_CAR_ch='INTER_CAR';
|
||||||
|
Tempo_maxi_ch='Tempo_maxi';
|
||||||
|
Entete_ch='Entete';
|
||||||
|
TCO_ch='TCO';
|
||||||
|
CDM_ch='CDM';
|
||||||
|
Serveur_interface_ch='Serveur_interface';
|
||||||
|
fenetre_ch='Fenetre';
|
||||||
|
NOTIF_VERSION_ch='NOTIF_VERSION';
|
||||||
|
verif_version_ch='verif_version';
|
||||||
|
Fonte_ch='Fonte';
|
||||||
|
|
||||||
var
|
var
|
||||||
FormConfig: TFormConfig;
|
FormConfig: TFormConfig;
|
||||||
AdresseIPCDM,AdresseIP,PortCom,recuCDM,residuCDM : string;
|
AdresseIPCDM,AdresseIP,PortCom,recuCDM,residuCDM : string;
|
||||||
portCDM,TempoOctet,TimoutMaxInterface,Valeur_entete,Port,protocole,NumPort,
|
portCDM,TempoOctet,TimoutMaxInterface,Valeur_entete,Port,protocole,NumPort,
|
||||||
LigneCliquee,AncLigneCliquee : integer;
|
LigneCliquee,AncLigneCliquee : integer;
|
||||||
clicliste : boolean;
|
ack_cdm,clicliste : boolean;
|
||||||
|
|
||||||
function config_com(s : string) : boolean;
|
function config_com(s : string) : boolean;
|
||||||
function envoi_CDM(s : string) : boolean;
|
function envoi_CDM(s : string) : boolean;
|
||||||
@@ -268,6 +292,7 @@ begin
|
|||||||
place_id:=s;
|
place_id:=s;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
// demande les services à CDM
|
||||||
function services_CDM : boolean;
|
function services_CDM : boolean;
|
||||||
var s,ss : string;
|
var s,ss : string;
|
||||||
i : integer;
|
i : integer;
|
||||||
@@ -291,8 +316,9 @@ begin
|
|||||||
delete(s,26,3);
|
delete(s,26,3);
|
||||||
insert(ss,s,26);
|
insert(ss,s,26);
|
||||||
//Affiche(s,clyellow);
|
//Affiche(s,clyellow);
|
||||||
|
|
||||||
envoi_CDM(s);sleep(100);
|
envoi_CDM(s);sleep(100);
|
||||||
if pos('_ACK',recuCDM)<>0 then
|
if ack_cdm then
|
||||||
begin
|
begin
|
||||||
s:='Services acceptés: ';
|
s:='Services acceptés: ';
|
||||||
if Srvc_Aig then s:=s+'- aiguillages ';
|
if Srvc_Aig then s:=s+'- aiguillages ';
|
||||||
@@ -302,7 +328,8 @@ begin
|
|||||||
if Srvc_sig then s:=s+'- état des signaux ';
|
if Srvc_sig then s:=s+'- état des signaux ';
|
||||||
Affiche(s,clYellow);
|
Affiche(s,clYellow);
|
||||||
end;
|
end;
|
||||||
services_CDM:=pos('_ACK',recuCDM)<>0;
|
services_CDM:=ack_cdm;
|
||||||
|
ack_cdm:=false;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure connecte_CDM;
|
procedure connecte_CDM;
|
||||||
@@ -329,14 +356,15 @@ begin
|
|||||||
Application.processMessages;
|
Application.processMessages;
|
||||||
until (i>10) or SocketCDM_connecte ;
|
until (i>10) or SocketCDM_connecte ;
|
||||||
//if i>30 then affiche('Timeout',clred);
|
//if i>30 then affiche('Timeout',clred);
|
||||||
if not(SocketCDM_connecte) then Affiche('Socket CDM non connecté',clOrange);
|
if not(SocketCDM_connecte) then begin Affiche('Socket CDM non connecté',clOrange);exit;end;
|
||||||
|
|
||||||
// connexion à CDM rail
|
// connexion à CDM rail
|
||||||
recuCDM:='';
|
recuCDM:='';
|
||||||
s:='C-C-00-0001-CMDGEN-_CNCT|000|';
|
s:='C-C-00-0001-CMDGEN-_CNCT|000|';
|
||||||
envoi_cdm(s);
|
envoi_cdm(s);
|
||||||
if pos('_ACK',recuCDM)<>0 then
|
if ack_cdm then
|
||||||
begin
|
begin
|
||||||
|
ack_cdm:=false;
|
||||||
Id_CDM:=copy(recuCDM,5,2); // récupère l'ID reçu de CDM, à utiliser dans toutes les futures trames
|
Id_CDM:=copy(recuCDM,5,2); // récupère l'ID reçu de CDM, à utiliser dans toutes les futures trames
|
||||||
recucdm:='';
|
recucdm:='';
|
||||||
s:='Connecté au serveur CDM rail avec l''ID='+Id_CDM;
|
s:='Connecté au serveur CDM rail avec l''ID='+Id_CDM;
|
||||||
@@ -537,7 +565,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
// modifie les fichiers de config en fonction du paramétrage
|
// modifie les fichiers de config en fonction du paramétrage
|
||||||
procedure genere_config2;
|
procedure genere_config;
|
||||||
var s: string;
|
var s: string;
|
||||||
fichier,fichierN : text;
|
fichier,fichierN : text;
|
||||||
i,j : integer;
|
i,j : integer;
|
||||||
@@ -572,79 +600,79 @@ begin
|
|||||||
// entête
|
// entête
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
// taille de la fonte
|
// taille de la fonte
|
||||||
writeln(fichierN,'Fonte=',TailleFonte);
|
writeln(fichierN,Fonte_ch+'=',TailleFonte);
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// adresse ip et port de CDM
|
// adresse ip et port de CDM
|
||||||
writeln(fichierN,'IpV4_PC=',adresseIPCDM+':'+intToSTR(portCDM));
|
writeln(fichierN,IpV4_PC_ch+'=',adresseIPCDM+':'+intToSTR(portCDM));
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// adresse ip interface XpressNet
|
// adresse ip interface XpressNet
|
||||||
writeln(fichierN,'IPV4_Interface=',adresseIP+':'+intToSTR(port));
|
writeln(fichierN,IPV4_Interface_ch+'=',adresseIP+':'+intToSTR(port));
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// port com
|
// port com
|
||||||
writeln(fichierN,'Protocole_serie=',portcom);
|
writeln(fichierN,Protocole_serie_ch+'=',portcom);
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// temporisation caractère TempoOctet
|
// temporisation caractère TempoOctet
|
||||||
writeln(fichierN,'Inter_Car=',IntToSTR(TempoOctet));
|
writeln(fichierN,Inter_Car_ch+'=',IntToSTR(TempoOctet));
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// temporisation attente maximale interface
|
// temporisation attente maximale interface
|
||||||
writeln(fichierN,'Tempo_maxi=',IntToSTR(TimoutMaxInterface));
|
writeln(fichierN,Tempo_maxi_ch+'=',IntToSTR(TimoutMaxInterface));
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// entete Valeur_entete
|
// entete Valeur_entete
|
||||||
writeln(fichierN,'Entete=',intToSTR(Valeur_entete));
|
writeln(fichierN,Entete_ch+'=',intToSTR(Valeur_entete));
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// avec ou sans initialisation des aiguillages
|
// avec ou sans initialisation des aiguillages
|
||||||
writeln(fichierN,'Init_Aig=',IntToSTR(AvecInitAiguillages));
|
writeln(fichierN,Init_Aig_ch+'=',IntToSTR(AvecInitAiguillages));
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// plein écran
|
// plein écran
|
||||||
writeln(fichierN,'Fenetre=',fenetre);
|
writeln(fichierN,Fenetre_ch+'=',fenetre);
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// Nombre maxi de détecteurs considérés distants
|
// Nombre maxi de détecteurs considérés distants
|
||||||
writeln(fichierN,'Nb_Det_Dist=',Nb_Det_Dist);
|
writeln(fichierN,nb_det_dist_ch+'=',Nb_Det_Dist);
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
|
|
||||||
// Vérification des versions au démarrage
|
// Vérification des versions au démarrage
|
||||||
if verifVersion then s:='1' else s:='0';
|
if verifVersion then s:='1' else s:='0';
|
||||||
writeln(fichierN,'verif_version=',s);
|
writeln(fichierN,verif_version_ch+'=',s);
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// Notification de nouvelle version
|
// Notification de nouvelle version
|
||||||
if notificationVersion then s:='1' else s:='0';
|
if notificationVersion then s:='1' else s:='0';
|
||||||
writeln(fichierN,'notif_version=',s);
|
writeln(fichierN,notif_version_ch+'=',s);
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// Avec TCO
|
// Avec TCO
|
||||||
if AvecTCO then s:='1' else s:='0';
|
if AvecTCO then s:='1' else s:='0';
|
||||||
writeln(fichierN,'TCO=',s);
|
writeln(fichierN,TCO_ch+'=',s);
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// lancement de CDM
|
// lancement de CDM
|
||||||
if LanceCDM then s:='1' else s:='0';
|
if LanceCDM then s:='1' else s:='0';
|
||||||
writeln(fichierN,'CDM=',s);
|
writeln(fichierN,CDM_ch+'=',s);
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// Nom du LAY
|
// Nom du LAY
|
||||||
writeln(fichierN,'LAY=',Lay);
|
writeln(fichierN,lay_ch+'=',Lay);
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// Serveur d'interface de CDM
|
// Serveur d'interface de CDM
|
||||||
writeln(fichierN,'Serveur_interface=',intToSTR(ServeurInterfaceCDM));
|
writeln(fichierN,Serveur_interface_ch+'=',intToSTR(ServeurInterfaceCDM));
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// Serveur de rétrosignalisation Lenz de CDM
|
// Serveur de rétrosignalisation Lenz de CDM
|
||||||
writeln(fichierN,'retro=',intToSTR(ServeurRetroCDM));
|
writeln(fichierN,retro_ch+'=',intToSTR(ServeurRetroCDM));
|
||||||
copie_commentaire;
|
copie_commentaire;
|
||||||
|
|
||||||
// section init est copié ici
|
// [section init] est copié ici
|
||||||
|
if pos(section_init,lowercase(s))=0 then writeln(fichierN,section_init);
|
||||||
writeln(fichierN,s);
|
writeln(fichierN,s);
|
||||||
// valeurs des initialisations
|
// valeurs des initialisations
|
||||||
repeat
|
repeat
|
||||||
@@ -751,7 +779,7 @@ begin
|
|||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
// sauvegarder la config dans les fichiers cfg
|
||||||
procedure Sauve_config;
|
procedure Sauve_config;
|
||||||
var i,erreur : integer;
|
var i,erreur : integer;
|
||||||
s : string;
|
s : string;
|
||||||
@@ -876,7 +904,7 @@ begin
|
|||||||
if change_srv then services_CDM;
|
if change_srv then services_CDM;
|
||||||
|
|
||||||
// générer le fichiers config.cfg et clieng-GL.cfg
|
// générer le fichiers config.cfg et clieng-GL.cfg
|
||||||
genere_config2;
|
genere_config;
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -1086,7 +1114,7 @@ begin
|
|||||||
|
|
||||||
RE_ColorLine(Formconfig.RichAig,ligneCliquee,Clyellow);
|
RE_ColorLine(Formconfig.RichAig,ligneCliquee,Clyellow);
|
||||||
|
|
||||||
ss:=TitreAig+InttoSTr(Adresse);
|
ss:='Description de l''aiguillage '+InttoSTr(Adresse);
|
||||||
formconfig.LabelAdresse.Caption:= ss;
|
formconfig.LabelAdresse.Caption:= ss;
|
||||||
|
|
||||||
tjd:=pos('TJD',s)<>0 ;
|
tjd:=pos('TJD',s)<>0 ;
|
||||||
@@ -1760,61 +1788,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure change_det1;
|
|
||||||
var s : string;
|
|
||||||
i,erreur : integer;
|
|
||||||
begin
|
|
||||||
if clicliste then exit;
|
|
||||||
|
|
||||||
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
|
||||||
with Formconfig do
|
|
||||||
begin
|
|
||||||
s:=EditDet1.Text;
|
|
||||||
Val(s,i,erreur);
|
|
||||||
if erreur<>0 then begin LabelInfo.caption:='Erreur détecteur1 ';exit;end;
|
|
||||||
LabelInfo.caption:=' ';
|
|
||||||
feux[lignecliquee+1].Adr_det1:=i;
|
|
||||||
s:=encode_sig(lignecliquee+1);
|
|
||||||
RichSig.Lines[lignecliquee]:=s;
|
|
||||||
feux[lignecliquee+1].modifie:=true;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure change_Suiv1;
|
|
||||||
var s : string;
|
|
||||||
i,erreur : integer;
|
|
||||||
B : char;
|
|
||||||
begin
|
|
||||||
if clicliste then exit;
|
|
||||||
|
|
||||||
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
|
||||||
with Formconfig do
|
|
||||||
begin
|
|
||||||
s:=EditSuiv1.Text;
|
|
||||||
if s='' then begin LabelInfo.caption:='Erreur élément suivant 1';exit;end;
|
|
||||||
Val(s,i,erreur);
|
|
||||||
//if erreur<>0 then
|
|
||||||
if erreur<>0 then
|
|
||||||
begin
|
|
||||||
if (s[erreur]='A') and (erreur=1) then
|
|
||||||
begin
|
|
||||||
feux[lignecliquee+1].Btype_suiv1:=2; // type de l'élément suivant (1=détecteur 2=aig ou TJD ou TJS 4=tri
|
|
||||||
delete(s,erreur,1);
|
|
||||||
Val(s,i,erreur);
|
|
||||||
end
|
|
||||||
else begin LabelInfo.caption:='Erreur élément suivant 1';exit;end;
|
|
||||||
end
|
|
||||||
else feux[lignecliquee+1].Btype_suiv1:=1;
|
|
||||||
|
|
||||||
LabelInfo.caption:=' ';
|
|
||||||
|
|
||||||
feux[lignecliquee+1].Adr_el_suiv1:=i;
|
|
||||||
s:=encode_sig(lignecliquee+1);
|
|
||||||
RichSig.Lines[lignecliquee]:=s;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TFormConfig.EditPointe_BGChange(Sender: TObject);
|
procedure TFormConfig.EditPointe_BGChange(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
@@ -1898,16 +1871,78 @@ begin
|
|||||||
clicliste:=false;
|
clicliste:=false;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TFormConfig.EditDet1Change(Sender: TObject);
|
procedure TFormConfig.EditDet1Change(Sender: TObject);
|
||||||
|
var s : string;
|
||||||
|
i,erreur : integer;
|
||||||
begin
|
begin
|
||||||
change_det1;
|
if clicliste then exit;
|
||||||
|
|
||||||
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
|
with Formconfig do
|
||||||
|
begin
|
||||||
|
s:=EditDet1.Text;
|
||||||
|
Val(s,i,erreur);
|
||||||
|
if erreur<>0 then begin LabelInfo.caption:='Erreur détecteur1 ';exit;end;
|
||||||
|
LabelInfo.caption:=' ';
|
||||||
|
feux[lignecliquee+1].Adr_det1:=i;
|
||||||
|
s:=encode_sig(lignecliquee+1);
|
||||||
|
RichSig.Lines[lignecliquee]:=s;
|
||||||
|
feux[lignecliquee+1].modifie:=true;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormConfig.EditSuiv1Change(Sender: TObject);
|
procedure TFormConfig.EditSuiv1Change(Sender: TObject);
|
||||||
|
var s : string;
|
||||||
|
i,erreur : integer;
|
||||||
|
B : char;
|
||||||
begin
|
begin
|
||||||
change_Suiv1;
|
if clicliste then exit;
|
||||||
|
|
||||||
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
|
with Formconfig do
|
||||||
|
begin
|
||||||
|
s:=EditSuiv1.Text;
|
||||||
|
if s='' then begin LabelInfo.caption:='Erreur élément suivant 1';exit;end;
|
||||||
|
Val(s,i,erreur);
|
||||||
|
//if erreur<>0 then
|
||||||
|
if erreur<>0 then
|
||||||
|
begin
|
||||||
|
if (s[erreur]='A') and (erreur=1) then
|
||||||
|
begin
|
||||||
|
feux[lignecliquee+1].Btype_suiv1:=2; // type de l'élément suivant (1=détecteur 2=aig ou TJD ou TJS 4=tri
|
||||||
|
delete(s,erreur,1);
|
||||||
|
Val(s,i,erreur);
|
||||||
|
end
|
||||||
|
else begin LabelInfo.caption:='Erreur élément suivant 1';exit;end;
|
||||||
|
end
|
||||||
|
else feux[lignecliquee+1].Btype_suiv1:=1;
|
||||||
|
|
||||||
|
LabelInfo.caption:=' ';
|
||||||
|
|
||||||
|
feux[lignecliquee+1].Adr_el_suiv1:=i;
|
||||||
|
s:=encode_sig(lignecliquee+1);
|
||||||
|
RichSig.Lines[lignecliquee]:=s;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TFormConfig.EditDet2Change(Sender: TObject);
|
||||||
|
var s : string;
|
||||||
|
i,erreur : integer;
|
||||||
|
begin
|
||||||
|
if clicliste then exit;
|
||||||
|
|
||||||
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
|
with Formconfig do
|
||||||
|
begin
|
||||||
|
s:=EditDet2.Text;
|
||||||
|
Val(s,i,erreur);
|
||||||
|
//if erreur<>0 then begin LabelInfo.caption:='Erreur détecteur2 ';exit;end;
|
||||||
|
LabelInfo.caption:=' ';
|
||||||
|
feux[lignecliquee+1].Adr_det2:=i;
|
||||||
|
s:=encode_sig(lignecliquee+1);
|
||||||
|
RichSig.Lines[lignecliquee]:=s;
|
||||||
|
feux[lignecliquee+1].modifie:=true;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormConfig.CheckVerrouCarreClick(Sender: TObject);
|
procedure TFormConfig.CheckVerrouCarreClick(Sender: TObject);
|
||||||
@@ -1924,7 +1959,160 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TFormConfig.EditSuiv2Change(Sender: TObject);
|
||||||
|
var s : string;
|
||||||
|
erreur,Btype,Adr : integer;
|
||||||
|
B : char;
|
||||||
|
begin
|
||||||
|
if clicliste then exit;
|
||||||
|
|
||||||
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
|
with Formconfig do
|
||||||
|
begin
|
||||||
|
s:=EditSuiv2.Text;
|
||||||
|
if s='' then
|
||||||
|
begin
|
||||||
|
Btype:=0;
|
||||||
|
Adr:=0;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
Val(s,Adr,erreur);
|
||||||
|
if (erreur<>0) and (s<>'') then
|
||||||
|
begin
|
||||||
|
if (s[erreur]='A') and (erreur=1) then
|
||||||
|
begin
|
||||||
|
Btype:=2; // type de l'élément suivant (1=détecteur 2=aig ou TJD ou TJS 4=tri
|
||||||
|
delete(s,erreur,1);
|
||||||
|
Val(s,Adr,erreur);
|
||||||
|
end
|
||||||
|
else begin LabelInfo.caption:='Erreur élément suivant 2';exit;end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
feux[lignecliquee+1].Btype_suiv2:=Btype;
|
||||||
|
feux[lignecliquee+1].Adr_el_suiv2:=Adr;
|
||||||
|
LabelInfo.caption:=' ';
|
||||||
|
s:=encode_sig(lignecliquee+1);
|
||||||
|
RichSig.Lines[lignecliquee]:=s;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TFormConfig.EditDet3Change(Sender: TObject);
|
||||||
|
var s : string;
|
||||||
|
i,erreur : integer;
|
||||||
|
begin
|
||||||
|
if clicliste then exit;
|
||||||
|
|
||||||
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
|
with Formconfig do
|
||||||
|
begin
|
||||||
|
s:=EditDet3.Text;
|
||||||
|
Val(s,i,erreur);
|
||||||
|
// if erreur<>0 then begin LabelInfo.caption:='Erreur détecteur3 ';exit;end;
|
||||||
|
LabelInfo.caption:=' ';
|
||||||
|
feux[lignecliquee+1].Adr_det3:=i;
|
||||||
|
s:=encode_sig(lignecliquee+1);
|
||||||
|
RichSig.Lines[lignecliquee]:=s;
|
||||||
|
feux[lignecliquee+1].modifie:=true;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TFormConfig.EditSuiv3Change(Sender: TObject);
|
||||||
|
var s : string;
|
||||||
|
erreur,Btype,Adr : integer;
|
||||||
|
B : char;
|
||||||
|
begin
|
||||||
|
if clicliste then exit;
|
||||||
|
|
||||||
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
|
with Formconfig do
|
||||||
|
begin
|
||||||
|
s:=EditSuiv3.Text;
|
||||||
|
if s='' then
|
||||||
|
begin
|
||||||
|
Btype:=0;
|
||||||
|
Adr:=0;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
Val(s,Adr,erreur);
|
||||||
|
if (erreur<>0) and (s<>'') then
|
||||||
|
begin
|
||||||
|
if (s[erreur]='A') and (erreur=1) then
|
||||||
|
begin
|
||||||
|
Btype:=2; // type de l'élément suivant (1=détecteur 2=aig ou TJD ou TJS 4=tri
|
||||||
|
delete(s,erreur,1);
|
||||||
|
Val(s,Adr,erreur);
|
||||||
|
end
|
||||||
|
else begin LabelInfo.caption:='Erreur élément suivant 3';exit;end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
feux[lignecliquee+1].Btype_suiv3:=Btype;
|
||||||
|
feux[lignecliquee+1].Adr_el_suiv3:=Adr;
|
||||||
|
LabelInfo.caption:=' ';
|
||||||
|
s:=encode_sig(lignecliquee+1);
|
||||||
|
RichSig.Lines[lignecliquee]:=s;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TFormConfig.EditDet4Change(Sender: TObject);
|
||||||
|
var s : string;
|
||||||
|
i,erreur : integer;
|
||||||
|
begin
|
||||||
|
if clicliste then exit;
|
||||||
|
|
||||||
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
|
with Formconfig do
|
||||||
|
begin
|
||||||
|
s:=EditDet4.Text;
|
||||||
|
Val(s,i,erreur);
|
||||||
|
//if erreur<>0 then begin LabelInfo.caption:='Erreur détecteur4 ';exit;end;
|
||||||
|
LabelInfo.caption:=' ';
|
||||||
|
feux[lignecliquee+1].Adr_det4:=i;
|
||||||
|
s:=encode_sig(lignecliquee+1);
|
||||||
|
RichSig.Lines[lignecliquee]:=s;
|
||||||
|
feux[lignecliquee+1].modifie:=true;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TFormConfig.EditSuiv4Change(Sender: TObject);
|
||||||
|
var s : string;
|
||||||
|
erreur,Btype,Adr : integer;
|
||||||
|
B : char;
|
||||||
|
begin
|
||||||
|
if clicliste then exit;
|
||||||
|
|
||||||
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
|
with Formconfig do
|
||||||
|
begin
|
||||||
|
s:=EditSuiv4.Text;
|
||||||
|
if s='' then
|
||||||
|
begin
|
||||||
|
Btype:=0;
|
||||||
|
Adr:=0;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
Val(s,Adr,erreur);
|
||||||
|
if (erreur<>0) and (s<>'') then
|
||||||
|
begin
|
||||||
|
if (s[erreur]='A') and (erreur=1) then
|
||||||
|
begin
|
||||||
|
Btype:=2; // type de l'élément suivant (1=détecteur 2=aig ou TJD ou TJS 4=tri
|
||||||
|
delete(s,erreur,1);
|
||||||
|
Val(s,Adr,erreur);
|
||||||
|
end
|
||||||
|
else begin LabelInfo.caption:='Erreur élément suivant 4';exit;end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
feux[lignecliquee+1].Btype_suiv4:=Btype;
|
||||||
|
feux[lignecliquee+1].Adr_el_suiv4:=Adr;
|
||||||
|
LabelInfo.caption:=' ';
|
||||||
|
s:=encode_sig(lignecliquee+1);
|
||||||
|
RichSig.Lines[lignecliquee]:=s;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
+344
-275
File diff suppressed because it is too large
Load Diff
Binary file not shown.
BIN
Binary file not shown.
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
object FormVersion: TFormVersion
|
object FormVersion: TFormVersion
|
||||||
Left = 500
|
Left = 497
|
||||||
Top = 341
|
Top = 186
|
||||||
Width = 468
|
Width = 468
|
||||||
Height = 194
|
Height = 194
|
||||||
Caption = 'V'#233'rification de version'
|
Caption = 'V'#233'rification de version'
|
||||||
|
|||||||
+1
-1
@@ -43,7 +43,7 @@ Version 2.2 : Correction d'un bug sur le verrouillage des signaux au carr
|
|||||||
version 2.21 : Paramétrage du nombre de détecteurs considérés comme trop distants
|
version 2.21 : Paramétrage du nombre de détecteurs considérés comme trop distants
|
||||||
Correction d'un bug de la 2.2
|
Correction d'un bug de la 2.2
|
||||||
version 2.3 : Changement de la méthode de réception des trames du protocole IPC de CDM-Rail
|
version 2.3 : Changement de la méthode de réception des trames du protocole IPC de CDM-Rail
|
||||||
|
Affichage au démarrage des variables manquantes du fichier config-gl.cfg
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user