V8.37
This commit is contained in:
1 parent
5562e9c899
commit
ed7935a641
16 files changed
+685
-635
No files matched your search
+4
-1
@@ -4,7 +4,7 @@ interface
|
|||||||
|
|
||||||
uses
|
uses
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
Dialogs, StdCtrls, ExtCtrls;
|
Dialogs, StdCtrls, ExtCtrls, unitConfig, UnitPrinc;
|
||||||
|
|
||||||
type
|
type
|
||||||
TFormImportation = class(TForm)
|
TFormImportation = class(TForm)
|
||||||
@@ -47,10 +47,13 @@ end;
|
|||||||
|
|
||||||
procedure TFormImportation.FormCreate(Sender: TObject);
|
procedure TFormImportation.FormCreate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
|
if debug=1 then Affiche('Création fenetre compilation réseau CDM',clLime);
|
||||||
radioCroisBase.Checked:=true;
|
radioCroisBase.Checked:=true;
|
||||||
radioCroisSuite.checked:=false;
|
radioCroisSuite.checked:=false;
|
||||||
BaseCroisement:=100;
|
BaseCroisement:=100;
|
||||||
EditBaseCrois.Text:=IntToSTR(BaseCroisement);
|
EditBaseCrois.Text:=IntToSTR(BaseCroisement);
|
||||||
|
if debug=1 then Affiche('Fin création fenetre compilation réseau CDM',clLime);
|
||||||
|
formprinc.SetFocus; // fin d'init de signaux complexes, on active la form principale
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormImportation.CheckDebugAnalyseClick(Sender: TObject);
|
procedure TFormImportation.CheckDebugAnalyseClick(Sender: TObject);
|
||||||
|
|||||||
@@ -18,7 +18,6 @@ uses
|
|||||||
UnitPareFeu in 'UnitPareFeu.pas',
|
UnitPareFeu in 'UnitPareFeu.pas',
|
||||||
UnitAnalyseSegCDM in 'UnitAnalyseSegCDM.pas' {FormAnalyseCDM},
|
UnitAnalyseSegCDM in 'UnitAnalyseSegCDM.pas' {FormAnalyseCDM},
|
||||||
Importation in 'Importation.pas' {FormImportation};
|
Importation in 'Importation.pas' {FormImportation};
|
||||||
|
|
||||||
{$R *.res}
|
{$R *.res}
|
||||||
|
|
||||||
begin
|
begin
|
||||||
|
|||||||
+22
-22
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
Start Length Name Class
|
Start Length Name Class
|
||||||
0001:00000000 001A20F8H .text CODE
|
0001:00000000 001A254CH .text CODE
|
||||||
0002:00000000 00002C7CH .data DATA
|
0002:00000000 00002C7CH .data DATA
|
||||||
0002:00002C7C 045DE035H .bss BSS
|
0002:00002C7C 045DE035H .bss BSS
|
||||||
|
|
||||||
@@ -83,22 +83,22 @@ Detailed map of segments
|
|||||||
0001:0009A6E4 00002108 C=CODE S=.text G=(none) M=Mask ACBP=A9
|
0001:0009A6E4 00002108 C=CODE S=.text G=(none) M=Mask ACBP=A9
|
||||||
0001:0009C7EC 0000924C C=CODE S=.text G=(none) M=Grids ACBP=A9
|
0001:0009C7EC 0000924C C=CODE S=.text G=(none) M=Grids ACBP=A9
|
||||||
0001:000A5A38 00001980 C=CODE S=.text G=(none) M=UnitPilote ACBP=A9
|
0001:000A5A38 00001980 C=CODE S=.text G=(none) M=UnitPilote ACBP=A9
|
||||||
0001:000A73B8 000004D0 C=CODE S=.text G=(none) M=Importation ACBP=A9
|
0001:000A73B8 00000574 C=CODE S=.text G=(none) M=Importation ACBP=A9
|
||||||
0001:000A7888 00013ACC C=CODE S=.text G=(none) M=UnitAnalyseSegCDM ACBP=A9
|
0001:000A792C 00013B38 C=CODE S=.text G=(none) M=UnitAnalyseSegCDM ACBP=A9
|
||||||
0001:000BB354 00002CA4 C=CODE S=.text G=(none) M=UnitConfigTCO ACBP=A9
|
0001:000BB464 00002D20 C=CODE S=.text G=(none) M=UnitConfigTCO ACBP=A9
|
||||||
0001:000BDFF8 00000D10 C=CODE S=.text G=(none) M=Unit_Pilote_aig ACBP=A9
|
0001:000BE184 00000D10 C=CODE S=.text G=(none) M=Unit_Pilote_aig ACBP=A9
|
||||||
0001:000BED08 00004DD8 C=CODE S=.text G=(none) M=UnitConfigCellTCO ACBP=A9
|
0001:000BEE94 00004DD8 C=CODE S=.text G=(none) M=UnitConfigCellTCO ACBP=A9
|
||||||
0001:000C3AE0 00045748 C=CODE S=.text G=(none) M=UnitTCO ACBP=A9
|
0001:000C3C6C 00045748 C=CODE S=.text G=(none) M=UnitTCO ACBP=A9
|
||||||
0001:00109228 00003160 C=CODE S=.text G=(none) M=UnitSR ACBP=A9
|
0001:001093B4 00003160 C=CODE S=.text G=(none) M=UnitSR ACBP=A9
|
||||||
0001:0010C388 00002880 C=CODE S=.text G=(none) M=UnitCDF ACBP=A9
|
0001:0010C514 000028D4 C=CODE S=.text G=(none) M=UnitCDF ACBP=A9
|
||||||
0001:0010EC08 000431B4 C=CODE S=.text G=(none) M=UnitConfig ACBP=A9
|
0001:0010EDE8 00001833 C=CODE S=.text G=(none) M=verif_version ACBP=A9
|
||||||
0001:00151DBC 00001833 C=CODE S=.text G=(none) M=verif_version ACBP=A9
|
0001:0011061C 000011D0 C=CODE S=.text G=(none) M=UnitPareFeu ACBP=A9
|
||||||
0001:001535F0 000011D0 C=CODE S=.text G=(none) M=UnitPareFeu ACBP=A9
|
0001:001117EC 00043384 C=CODE S=.text G=(none) M=UnitConfig ACBP=A9
|
||||||
0001:001547C0 00002BC8 C=CODE S=.text G=(none) M=UnitDebug ACBP=A9
|
0001:00154B70 00002BC8 C=CODE S=.text G=(none) M=UnitDebug ACBP=A9
|
||||||
0001:00157388 00000D2C C=CODE S=.text G=(none) M=UnitSimule ACBP=A9
|
0001:00157738 00000D2C C=CODE S=.text G=(none) M=UnitSimule ACBP=A9
|
||||||
0001:001580B4 00002604 C=CODE S=.text G=(none) M=Unitplace ACBP=A9
|
0001:00158464 00002678 C=CODE S=.text G=(none) M=Unitplace ACBP=A9
|
||||||
0001:0015A6B8 000475B0 C=CODE S=.text G=(none) M=UnitPrinc ACBP=A9
|
0001:0015AADC 000475E0 C=CODE S=.text G=(none) M=UnitPrinc ACBP=A9
|
||||||
0001:001A1C68 0000048D C=CODE S=.text G=(none) M=Signaux_complexes_GL ACBP=A9
|
0001:001A20BC 0000048D C=CODE S=.text G=(none) M=Signaux_complexes_GL ACBP=A9
|
||||||
0002:00000000 000000CC C=DATA S=.data G=DGROUP M=System ACBP=A9
|
0002:00000000 000000CC C=DATA S=.data G=DGROUP M=System ACBP=A9
|
||||||
0002:000000CC 00000020 C=DATA S=.data G=DGROUP M=SysInit ACBP=A9
|
0002:000000CC 00000020 C=DATA S=.data G=DGROUP M=SysInit ACBP=A9
|
||||||
0002:000000EC 00000254 C=DATA S=.data G=DGROUP M=SysUtils ACBP=A9
|
0002:000000EC 00000254 C=DATA S=.data G=DGROUP M=SysUtils ACBP=A9
|
||||||
@@ -215,9 +215,9 @@ Detailed map of segments
|
|||||||
0002:00015760 00418704 C=BSS S=.bss G=DGROUP M=UnitTCO ACBP=A9
|
0002:00015760 00418704 C=BSS S=.bss G=DGROUP M=UnitTCO ACBP=A9
|
||||||
0002:0042DE64 00000010 C=BSS S=.bss G=DGROUP M=UnitSR ACBP=A9
|
0002:0042DE64 00000010 C=BSS S=.bss G=DGROUP M=UnitSR ACBP=A9
|
||||||
0002:0042DE74 00000014 C=BSS S=.bss G=DGROUP M=UnitCDF ACBP=A9
|
0002:0042DE74 00000014 C=BSS S=.bss G=DGROUP M=UnitCDF ACBP=A9
|
||||||
0002:0042DE88 000004FC C=BSS S=.bss G=DGROUP M=UnitConfig ACBP=A9
|
0002:0042DE88 00000018 C=BSS S=.bss G=DGROUP M=verif_version ACBP=A9
|
||||||
0002:0042E384 00000018 C=BSS S=.bss G=DGROUP M=verif_version ACBP=A9
|
0002:0042DEA0 00000004 C=BSS S=.bss G=DGROUP M=UnitPareFeu ACBP=A9
|
||||||
0002:0042E39C 00000004 C=BSS S=.bss G=DGROUP M=UnitPareFeu ACBP=A9
|
0002:0042DEA4 000004FC C=BSS S=.bss G=DGROUP M=UnitConfig ACBP=A9
|
||||||
0002:0042E3A0 0000002C C=BSS S=.bss G=DGROUP M=UnitDebug ACBP=A9
|
0002:0042E3A0 0000002C C=BSS S=.bss G=DGROUP M=UnitDebug ACBP=A9
|
||||||
0002:0042E3CC 0000000C C=BSS S=.bss G=DGROUP M=UnitSimule ACBP=A9
|
0002:0042E3CC 0000000C C=BSS S=.bss G=DGROUP M=UnitSimule ACBP=A9
|
||||||
0002:0042E3D8 00000008 C=BSS S=.bss G=DGROUP M=Unitplace ACBP=A9
|
0002:0042E3D8 00000008 C=BSS S=.bss G=DGROUP M=Unitplace ACBP=A9
|
||||||
@@ -237,8 +237,8 @@ UnitConfigCellTCO.dfm
|
|||||||
UnitTCO.dfm
|
UnitTCO.dfm
|
||||||
UnitSR.dfm
|
UnitSR.dfm
|
||||||
UnitCDF.dfm
|
UnitCDF.dfm
|
||||||
UnitConfig.dfm
|
|
||||||
verif_version.dfm
|
verif_version.dfm
|
||||||
|
UnitConfig.dfm
|
||||||
UnitDebug.dfm
|
UnitDebug.dfm
|
||||||
UnitSimule.dfm
|
UnitSimule.dfm
|
||||||
Unitplace.dfm
|
Unitplace.dfm
|
||||||
@@ -247,4 +247,4 @@ Signaux_complexes_GL.res
|
|||||||
Signaux_complexes_GL.drf
|
Signaux_complexes_GL.drf
|
||||||
|
|
||||||
|
|
||||||
Program entry point at 0001:001A1F78
|
Program entry point at 0001:001A23CC
|
||||||
+14
-8
@@ -1577,8 +1577,13 @@ begin
|
|||||||
coords(x1,y1);
|
coords(x1,y1);
|
||||||
if formAnalyseCDM.CheckConnexions.checked then
|
if formAnalyseCDM.CheckConnexions.checked then
|
||||||
begin
|
begin
|
||||||
canvas.pen.width:=1;
|
with canvas do
|
||||||
canvas.Ellipse(x1-5,y1-5,x1+5,y1+5);
|
begin
|
||||||
|
pen.Color:=clOrange;
|
||||||
|
pen.width:=1;
|
||||||
|
Ellipse(x1-5,y1-5,x1+5,y1+5);
|
||||||
|
canvas.pen.Color:=clWhite;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
if j<40 then
|
if j<40 then
|
||||||
begin
|
begin
|
||||||
@@ -1767,7 +1772,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// renvoie si le segment est de tye aiguillage
|
// renvoie si le segment est de type aiguillage
|
||||||
function segment_aig(s : string) : boolean;
|
function segment_aig(s : string) : boolean;
|
||||||
begin
|
begin
|
||||||
segment_aig:=(s='turnout') or (s='dbl_slip_switch') or (s='turnout_sym') or
|
segment_aig:=(s='turnout') or (s='dbl_slip_switch') or (s='turnout_sym') or
|
||||||
@@ -1817,7 +1822,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
// trouve les indexs Segment et port contenant le détecteur est detecteur
|
// trouve les index Segment et port contenant le détecteur est detecteur
|
||||||
function trouve_IndexSegPortDetecteur(detecteur : integer;var indexSeg,indexPeriph : integer) : boolean;
|
function trouve_IndexSegPortDetecteur(detecteur : integer;var indexSeg,indexPeriph : integer) : boolean;
|
||||||
var i,j,p,np : integer;
|
var i,j,p,np : integer;
|
||||||
trouve : boolean;
|
trouve : boolean;
|
||||||
@@ -2630,7 +2635,7 @@ begin
|
|||||||
//else
|
//else
|
||||||
|
|
||||||
begin
|
begin
|
||||||
// y a til un détecteur
|
// y a t-il un détecteur?
|
||||||
NombrePeriph:=segment[indexSegSuivant].nperiph;
|
NombrePeriph:=segment[indexSegSuivant].nperiph;
|
||||||
|
|
||||||
j:=0;detecteur:=0;
|
j:=0;detecteur:=0;
|
||||||
@@ -3316,10 +3321,11 @@ begin
|
|||||||
|
|
||||||
Affiche('Importation des aiguillages et des branches',clWhite);
|
Affiche('Importation des aiguillages et des branches',clWhite);
|
||||||
|
|
||||||
// recopier les aiguillages
|
// recopier les aiguillages CDM dans signaux_complexes
|
||||||
for i:=1 to NAig_CDM do
|
for i:=1 to NAig_CDM do
|
||||||
begin
|
begin
|
||||||
Aiguillage[i].adresse:=Aig_CDM[i].adresse;
|
Aiguillage[i].adresse:=Aig_CDM[i].adresse;
|
||||||
|
tablo_index_aiguillage[aiguillage[i].Adresse]:=i;
|
||||||
Aiguillage[i].adrtriple:=Aig_CDM[i].adrtriple;
|
Aiguillage[i].adrtriple:=Aig_CDM[i].adrtriple;
|
||||||
Aiguillage[i].modele:=Aig_Cdm[i].modele;
|
Aiguillage[i].modele:=Aig_Cdm[i].modele;
|
||||||
Aiguillage[i].temps:=Aig_cdm[i].temps;
|
Aiguillage[i].temps:=Aig_cdm[i].temps;
|
||||||
@@ -3504,7 +3510,7 @@ end;
|
|||||||
|
|
||||||
procedure TFormAnalyseCDM.FormCreate(Sender: TObject);
|
procedure TFormAnalyseCDM.FormCreate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if debug=1 then Affiche('Création fenêtre CDM',clLime);
|
if debug=1 then Affiche('Création fenêtre réseau CDM',clLime);
|
||||||
IndexClic:=0;
|
IndexClic:=0;
|
||||||
checkPorts.Checked:=false;
|
checkPorts.Checked:=false;
|
||||||
CheckAdresses.checked:=true;
|
CheckAdresses.checked:=true;
|
||||||
@@ -3534,7 +3540,7 @@ begin
|
|||||||
hauteurTrain:=Height;
|
hauteurTrain:=Height;
|
||||||
end;
|
end;
|
||||||
ArcTanHautLargTrain:=ArcTan(HauteurTrain/LargeurTrain);
|
ArcTanHautLargTrain:=ArcTan(HauteurTrain/LargeurTrain);
|
||||||
if debug=1 then Affiche('Fin création fenetre CDM',clLime);
|
if debug=1 then Affiche('Fin création fenetre réseau CDM',clLime);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+25
-23
@@ -95,7 +95,7 @@ var
|
|||||||
|
|
||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
procedure dessine_feu_CDF;
|
procedure dessine_signal_CDF;
|
||||||
procedure couleurs_cdf;
|
procedure couleurs_cdf;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
@@ -191,7 +191,7 @@ begin
|
|||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure dessine_feu_CDF;
|
procedure dessine_signal_CDF;
|
||||||
var i,ancienEtat : integer;
|
var i,ancienEtat : integer;
|
||||||
Vcanvas : Tcanvas;
|
Vcanvas : Tcanvas;
|
||||||
begin
|
begin
|
||||||
@@ -223,10 +223,10 @@ end;
|
|||||||
procedure Maj_DB;
|
procedure Maj_DB;
|
||||||
var s : string;
|
var s : string;
|
||||||
begin
|
begin
|
||||||
s:=encode_sig_feux(index);
|
s:=encode_signal(index);
|
||||||
formconfig.ListBoxSig.items[index-1]:=s;
|
formconfig.ListBoxSig.items[index-1]:=s;
|
||||||
formconfig.ListBoxSig.selected[ligneClicSig]:=true;
|
formconfig.ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
aff_champs_sig_feux(index);
|
aff_champs_signaux(index);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormCDF.Edit1Change(Sender: TObject);
|
procedure TFormCDF.Edit1Change(Sender: TObject);
|
||||||
@@ -237,7 +237,7 @@ begin
|
|||||||
val(Edit1.Text,Signaux[index].SR[1].sortie1,erreur);
|
val(Edit1.Text,Signaux[index].SR[1].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label1.Caption=etats[1] then Maj_Etat_Signal(0,carre);
|
if label1.Caption=etats[1] then Maj_Etat_Signal(0,carre);
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -249,7 +249,7 @@ begin
|
|||||||
val(Edit2.Text,Signaux[index].SR[2].sortie1,erreur);
|
val(Edit2.Text,Signaux[index].SR[2].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label2.Caption=etats[2] then Maj_Etat_Signal(0,semaphore);
|
if label2.Caption=etats[2] then Maj_Etat_Signal(0,semaphore);
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -261,7 +261,7 @@ begin
|
|||||||
val(Edit3.Text,Signaux[index].SR[3].sortie1,erreur);
|
val(Edit3.Text,Signaux[index].SR[3].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label3.Caption=etats[3] then Maj_Etat_Signal(0,semaphore_cli);
|
if label3.Caption=etats[3] then Maj_Etat_Signal(0,semaphore_cli);
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -273,7 +273,7 @@ begin
|
|||||||
val(Edit4.Text,Signaux[index].SR[4].sortie1,erreur);
|
val(Edit4.Text,Signaux[index].SR[4].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label4.Caption=etats[4] then Maj_Etat_Signal(0,vert);
|
if label4.Caption=etats[4] then Maj_Etat_Signal(0,vert);
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -285,7 +285,7 @@ begin
|
|||||||
val(Edit5.Text,Signaux[index].SR[5].sortie1,erreur);
|
val(Edit5.Text,Signaux[index].SR[5].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label5.Caption=etats[5] then Maj_Etat_Signal(0,vert_cli);
|
if label5.Caption=etats[5] then Maj_Etat_Signal(0,vert_cli);
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -297,7 +297,7 @@ begin
|
|||||||
val(Edit6.Text,Signaux[index].SR[6].sortie1,erreur);
|
val(Edit6.Text,Signaux[index].SR[6].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label6.Caption=etats[6] then Maj_Etat_Signal(0,violet);
|
if label6.Caption=etats[6] then Maj_Etat_Signal(0,violet);
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -309,7 +309,7 @@ begin
|
|||||||
val(Edit7.Text,Signaux[index].SR[7].sortie1,erreur);
|
val(Edit7.Text,Signaux[index].SR[7].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label7.Caption=etats[7] then Maj_Etat_Signal(0,blanc);
|
if label7.Caption=etats[7] then Maj_Etat_Signal(0,blanc);
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -321,7 +321,7 @@ begin
|
|||||||
val(Edit8.Text,Signaux[index].SR[8].sortie1,erreur);
|
val(Edit8.Text,Signaux[index].SR[8].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label8.Caption=etats[8] then Maj_Etat_Signal(0,blanc_cli);
|
if label8.Caption=etats[8] then Maj_Etat_Signal(0,blanc_cli);
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -333,7 +333,7 @@ begin
|
|||||||
val(Edit9.Text,Signaux[index].SR[9].sortie1,erreur);
|
val(Edit9.Text,Signaux[index].SR[9].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label9.Caption=etats[9] then begin Maj_Etat_Signal(0,semaphore);Maj_Etat_Signal(0,jaune);end;
|
if label9.Caption=etats[9] then begin Maj_Etat_Signal(0,semaphore);Maj_Etat_Signal(0,jaune);end;
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -349,7 +349,7 @@ begin
|
|||||||
Maj_Etat_Signal(0,semaphore);
|
Maj_Etat_Signal(0,semaphore);
|
||||||
Maj_Etat_Signal(0,jaune_cli);
|
Maj_Etat_Signal(0,jaune_cli);
|
||||||
end;
|
end;
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -361,7 +361,7 @@ begin
|
|||||||
val(Edit11.Text,Signaux[index].SR[11].sortie1,erreur);
|
val(Edit11.Text,Signaux[index].SR[11].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label11.Caption=etats[11] then begin Maj_Etat_Signal(0,semaphore);Maj_Etat_Signal(0,ral_30);end;
|
if label11.Caption=etats[11] then begin Maj_Etat_Signal(0,semaphore);Maj_Etat_Signal(0,ral_30);end;
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -373,7 +373,7 @@ begin
|
|||||||
val(Edit12.Text,Signaux[index].SR[12].sortie1,erreur);
|
val(Edit12.Text,Signaux[index].SR[12].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label12.Caption=etats[12] then begin Maj_Etat_Signal(0,semaphore);Maj_Etat_Signal(0,ral_60);end;
|
if label12.Caption=etats[12] then begin Maj_Etat_Signal(0,semaphore);Maj_Etat_Signal(0,ral_60);end;
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -385,7 +385,7 @@ begin
|
|||||||
val(Edit13.Text,Signaux[index].SR[13].sortie1,erreur);
|
val(Edit13.Text,Signaux[index].SR[13].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label13.Caption=etats[13] then begin Maj_Etat_Signal(0,ral_60);Maj_Etat_Signal(0,jaune_cli);end;
|
if label13.Caption=etats[13] then begin Maj_Etat_Signal(0,ral_60);Maj_Etat_Signal(0,jaune_cli);end;
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -397,7 +397,7 @@ begin
|
|||||||
val(Edit14.Text,Signaux[index].SR[14].sortie1,erreur);
|
val(Edit14.Text,Signaux[index].SR[14].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label14.Caption=etats[14] then begin Maj_Etat_Signal(0,semaphore);Maj_Etat_Signal(0,rappel_30);end;
|
if label14.Caption=etats[14] then begin Maj_Etat_Signal(0,semaphore);Maj_Etat_Signal(0,rappel_30);end;
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -409,7 +409,7 @@ begin
|
|||||||
val(Edit15.Text,Signaux[index].SR[15].sortie1,erreur);
|
val(Edit15.Text,Signaux[index].SR[15].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label15.Caption=etats[15] then begin Maj_Etat_Signal(0,semaphore);Maj_Etat_Signal(0,rappel_60);end;
|
if label15.Caption=etats[15] then begin Maj_Etat_Signal(0,semaphore);Maj_Etat_Signal(0,rappel_60);end;
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -421,7 +421,7 @@ begin
|
|||||||
val(Edit16.Text,Signaux[index].SR[16].sortie1,erreur);
|
val(Edit16.Text,Signaux[index].SR[16].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label16.Caption=etats[16] then begin Maj_Etat_Signal(0,rappel_30); Maj_Etat_Signal(0,jaune);end;
|
if label16.Caption=etats[16] then begin Maj_Etat_Signal(0,rappel_30); Maj_Etat_Signal(0,jaune);end;
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -433,7 +433,7 @@ begin
|
|||||||
val(Edit17.Text,Signaux[index].SR[17].sortie1,erreur);
|
val(Edit17.Text,Signaux[index].SR[17].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label17.Caption=etats[17] then begin Maj_Etat_Signal(0,rappel_30); Maj_Etat_Signal(0,jaune_cli);end;
|
if label17.Caption=etats[17] then begin Maj_Etat_Signal(0,rappel_30); Maj_Etat_Signal(0,jaune_cli);end;
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -445,7 +445,7 @@ begin
|
|||||||
val(Edit18.Text,Signaux[index].SR[18].sortie1,erreur);
|
val(Edit18.Text,Signaux[index].SR[18].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label18.Caption=etats[18] then begin Maj_Etat_Signal(0,rappel_60); Maj_Etat_Signal(0,jaune);end;
|
if label18.Caption=etats[18] then begin Maj_Etat_Signal(0,rappel_60); Maj_Etat_Signal(0,jaune);end;
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -457,7 +457,7 @@ begin
|
|||||||
val(Edit19.Text,Signaux[index].SR[19].sortie1,erreur);
|
val(Edit19.Text,Signaux[index].SR[19].sortie1,erreur);
|
||||||
Maj_DB;
|
Maj_DB;
|
||||||
if label19.Caption=etats[19] then begin Maj_Etat_Signal(0,rappel_60); Maj_Etat_Signal(0,jaune_cli);end;
|
if label19.Caption=etats[19] then begin Maj_Etat_Signal(0,rappel_60); Maj_Etat_Signal(0,jaune_cli);end;
|
||||||
dessine_feu_CDF;
|
dessine_signal_CDF;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -487,7 +487,9 @@ end;
|
|||||||
|
|
||||||
procedure TFormCDF.FormCreate(Sender: TObject);
|
procedure TFormCDF.FormCreate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
|
if debug=1 then Affiche('Fin création fenetre CDF',clLime);
|
||||||
couleurs_cdf;
|
couleurs_cdf;
|
||||||
|
if debug=1 then Affiche('Fin création fenetre CDF',clLime);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
+6
-6
@@ -668,7 +668,7 @@ object FormConfig: TFormConfig
|
|||||||
Top = 8
|
Top = 8
|
||||||
Width = 633
|
Width = 633
|
||||||
Height = 505
|
Height = 505
|
||||||
ActivePage = TabSheetPeriph
|
ActivePage = TabSheetCDM
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
Font.Color = clBlack
|
Font.Color = clBlack
|
||||||
Font.Height = -11
|
Font.Height = -11
|
||||||
@@ -2805,7 +2805,7 @@ object FormConfig: TFormConfig
|
|||||||
Top = 56
|
Top = 56
|
||||||
Width = 193
|
Width = 193
|
||||||
Height = 21
|
Height = 21
|
||||||
ItemHeight = 13
|
ItemHeight = 0
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
OnChange = ComboBoxDecodeurPersoChange
|
OnChange = ComboBoxDecodeurPersoChange
|
||||||
end
|
end
|
||||||
@@ -2824,7 +2824,7 @@ object FormConfig: TFormConfig
|
|||||||
Width = 145
|
Width = 145
|
||||||
Height = 21
|
Height = 21
|
||||||
Style = csDropDownList
|
Style = csDropDownList
|
||||||
ItemHeight = 13
|
ItemHeight = 0
|
||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
OnChange = ComboBoxNationChange
|
OnChange = ComboBoxNationChange
|
||||||
end
|
end
|
||||||
@@ -2870,7 +2870,7 @@ object FormConfig: TFormConfig
|
|||||||
Width = 193
|
Width = 193
|
||||||
Height = 21
|
Height = 21
|
||||||
Style = csDropDownList
|
Style = csDropDownList
|
||||||
ItemHeight = 13
|
ItemHeight = 0
|
||||||
TabOrder = 6
|
TabOrder = 6
|
||||||
OnChange = ComboBoxDecCdeChange
|
OnChange = ComboBoxDecCdeChange
|
||||||
end
|
end
|
||||||
@@ -3255,7 +3255,7 @@ object FormConfig: TFormConfig
|
|||||||
Height = 21
|
Height = 21
|
||||||
Hint = 'Nom de l'#39'accessoire d'#233'fini dans l'#39'onglet "p'#233'riph'#233'riques COM/USB"'
|
Hint = 'Nom de l'#39'accessoire d'#233'fini dans l'#39'onglet "p'#233'riph'#233'riques COM/USB"'
|
||||||
Style = csDropDownList
|
Style = csDropDownList
|
||||||
ItemHeight = 13
|
ItemHeight = 0
|
||||||
ParentShowHint = False
|
ParentShowHint = False
|
||||||
ShowHint = True
|
ShowHint = True
|
||||||
TabOrder = 6
|
TabOrder = 6
|
||||||
@@ -3436,7 +3436,7 @@ object FormConfig: TFormConfig
|
|||||||
Height = 21
|
Height = 21
|
||||||
Hint = 'Nom de l'#39'accessoire d'#233'fini dans l'#39'onglet "p'#233'riph'#233'riques COM/USB"'
|
Hint = 'Nom de l'#39'accessoire d'#233'fini dans l'#39'onglet "p'#233'riph'#233'riques COM/USB"'
|
||||||
Style = csDropDownList
|
Style = csDropDownList
|
||||||
ItemHeight = 13
|
ItemHeight = 0
|
||||||
ParentShowHint = False
|
ParentShowHint = False
|
||||||
ShowHint = True
|
ShowHint = True
|
||||||
TabOrder = 10
|
TabOrder = 10
|
||||||
|
|||||||
+174
-132
@@ -572,7 +572,6 @@ retro_ch='retro';
|
|||||||
Z21_ch='Z21';
|
Z21_ch='Z21';
|
||||||
Init_aig_ch='Init_Aig';
|
Init_aig_ch='Init_Aig';
|
||||||
LAY_ch='Lay';
|
LAY_ch='Lay';
|
||||||
Maxcom_ch='MaxCom';
|
|
||||||
Init_dem_aig_ch='Init_Dem_Aig';
|
Init_dem_aig_ch='Init_Dem_Aig';
|
||||||
Init_dem_interfaceUSBCOM_ch='Init_demUSBCOM';
|
Init_dem_interfaceUSBCOM_ch='Init_demUSBCOM';
|
||||||
Init_dem_interfaceEth_ch='Init_demETH';
|
Init_dem_interfaceEth_ch='Init_demETH';
|
||||||
@@ -590,7 +589,7 @@ fenetre_ch='Fenetre';
|
|||||||
AffMemoFenetre_ch='AffMemoFenetre';
|
AffMemoFenetre_ch='AffMemoFenetre';
|
||||||
Tempo_aig_ch='Tempo_Aig';
|
Tempo_aig_ch='Tempo_Aig';
|
||||||
Nb_cantons_Sig_ch='Nb_cantons_Sig';
|
Nb_cantons_Sig_ch='Nb_cantons_Sig';
|
||||||
Tempo_Feu_ch='Tempo_Feu';
|
Tempo_Signal_ch='Tempo_Feu';
|
||||||
Algo_Unisemaf_ch='Alg_Unisemaf';
|
Algo_Unisemaf_ch='Alg_Unisemaf';
|
||||||
NOTIF_VERSION_ch='notif_version';
|
NOTIF_VERSION_ch='notif_version';
|
||||||
verif_version_ch='verif_version';
|
verif_version_ch='verif_version';
|
||||||
@@ -633,7 +632,7 @@ var
|
|||||||
portCDM,TempoOctet,TimoutMaxInterface,Valeur_entete,PortInterface,prot_serie,NumPort,debug,
|
portCDM,TempoOctet,TimoutMaxInterface,Valeur_entete,PortInterface,prot_serie,NumPort,debug,
|
||||||
LigneCliqueePN,AncLigneCliqueePN,clicMemo,Nb_cantons_Sig,protocole,Port,PortServeur,
|
LigneCliqueePN,AncLigneCliqueePN,clicMemo,Nb_cantons_Sig,protocole,Port,PortServeur,
|
||||||
ligneclicAig,AncLigneClicAig,ligneClicSig,AncligneClicSig,EnvAigDccpp,AdrBaseDetDccpp,
|
ligneclicAig,AncLigneClicAig,ligneClicSig,AncligneClicSig,EnvAigDccpp,AdrBaseDetDccpp,
|
||||||
ligneClicBr,AncligneClicBr,ligneClicAct,AncLigneClicAct,Indexfeuclic,NumTrameCDM,
|
ligneClicBr,AncligneClicBr,ligneClicAct,AncLigneClicAct,IndexSignalclic,NumTrameCDM,
|
||||||
Algo_localisation,Verif_AdrXpressNet,ligneclicTrain,AncligneclicTrain,AntiTimeoutEthLenz,
|
Algo_localisation,Verif_AdrXpressNet,ligneclicTrain,AncligneclicTrain,AntiTimeoutEthLenz,
|
||||||
ligneDCC,decCourant,AffMemoFenetre,ligneClicAccPeriph,AncligneClicAccPeriph,ligneCherche,compt_Ligne : integer;
|
ligneDCC,decCourant,AffMemoFenetre,ligneClicAccPeriph,AncligneClicAccPeriph,ligneCherche,compt_Ligne : integer;
|
||||||
|
|
||||||
@@ -678,10 +677,10 @@ function place_id(s : string) : string;
|
|||||||
procedure decodeAig(s : string;var adr : integer;var B : char);
|
procedure decodeAig(s : string;var adr : integer;var B : char);
|
||||||
function sauve_config : boolean;
|
function sauve_config : boolean;
|
||||||
procedure lit_config;
|
procedure lit_config;
|
||||||
Procedure aff_champs_sig_feux(index : integer);
|
Procedure aff_champs_signaux(index : integer);
|
||||||
function verif_coherence : boolean;
|
function verif_coherence : boolean;
|
||||||
function compile_branche(s : string;i : integer) : boolean;
|
function compile_branche(s : string;i : integer) : boolean;
|
||||||
function encode_sig_feux(i : integer): string;
|
function encode_signal(i : integer): string;
|
||||||
procedure valide_branches;
|
procedure valide_branches;
|
||||||
procedure trier_aig;
|
procedure trier_aig;
|
||||||
procedure trier_detecteurs;
|
procedure trier_detecteurs;
|
||||||
@@ -727,16 +726,16 @@ begin
|
|||||||
place_id:=s;
|
place_id:=s;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure Maj_Hint_Signal(indexFeu : integer);
|
procedure Maj_Hint_Signal(indexSignal : integer);
|
||||||
var s : string;
|
var s : string;
|
||||||
begin
|
begin
|
||||||
// ne pas supprimer le @= qui sert de marqueur pour identifier le feu
|
// ne pas supprimer le @= qui sert de marqueur pour identifier le feu
|
||||||
s:='Index='+IntToSTR(IndexFeu)+' @='+inttostr(Signaux[IndexFeu].Adresse)+' Décodeur='+decodeur[Signaux[IndexFeu].Decodeur]+
|
s:='Index='+IntToSTR(indexSignal)+' @='+inttostr(Signaux[indexSignal].Adresse)+' Décodeur='+decodeur[Signaux[indexSignal].Decodeur]+
|
||||||
' Adresse détecteur associé='+intToSTR(Signaux[IndexFeu].Adr_det1)+
|
' Adresse détecteur associé='+intToSTR(Signaux[indexSignal].Adr_det1)+
|
||||||
' Adresse élement suivant='+intToSTR(Signaux[IndexFeu].Adr_el_suiv1);
|
' Adresse élement suivant='+intToSTR(Signaux[indexSignal].Adr_el_suiv1);
|
||||||
if Signaux[IndexFeu].Btype_suiv1=aig then s:=s+' (aig)';
|
if Signaux[indexSignal].Btype_suiv1=aig then s:=s+' (aig)';
|
||||||
|
|
||||||
Signaux[indexFeu].Img.Hint:=s;
|
Signaux[indexSignal].Img.Hint:=s;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// demande les services Com-IP à CDM
|
// demande les services Com-IP à CDM
|
||||||
@@ -1071,7 +1070,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
// transforme le signal du tableau Signaux[] en texte
|
// transforme le signal du tableau Signaux[] en texte
|
||||||
function encode_sig_feux(i : integer): string;
|
function encode_signal(i : integer): string;
|
||||||
var s : string;
|
var s : string;
|
||||||
adresse,aspect,j,k,NfeuxDir,CondCarre,CondFeuBlanc,nc : integer;
|
adresse,aspect,j,k,NfeuxDir,CondCarre,CondFeuBlanc,nc : integer;
|
||||||
begin
|
begin
|
||||||
@@ -1079,7 +1078,7 @@ begin
|
|||||||
adresse:=Signaux[i].adresse;
|
adresse:=Signaux[i].adresse;
|
||||||
if affevt then Affiche('Encode_sig_feux('+IntToSTR(i)+') : adresse='+IntToSTR(adresse),clyellow);
|
if affevt then Affiche('Encode_sig_feux('+IntToSTR(i)+') : adresse='+IntToSTR(adresse),clyellow);
|
||||||
|
|
||||||
if adresse=0 then begin encode_sig_feux:='';exit;end;
|
if adresse=0 then begin encode_signal:='';exit;end;
|
||||||
|
|
||||||
s:=IntToSTR(adresse)+',';
|
s:=IntToSTR(adresse)+',';
|
||||||
// forme - D=directionnel ajouter 10
|
// forme - D=directionnel ajouter 10
|
||||||
@@ -1183,7 +1182,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
// feux directionnels
|
// signaux directionnels
|
||||||
begin
|
begin
|
||||||
NfeuxDir:=aspect-10;
|
NfeuxDir:=aspect-10;
|
||||||
for j:=1 to NfeuxDir+1 do
|
for j:=1 to NfeuxDir+1 do
|
||||||
@@ -1198,10 +1197,10 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
encode_sig_feux:=s;
|
encode_signal:=s;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// décode la ligne de signal et la stocke dans l'index i du tableau feux
|
// décode la ligne de signal et la stocke dans l'index i du tableau signaux
|
||||||
// sortie vrai si le signal a été stocké - faux si doublon
|
// sortie vrai si le signal a été stocké - faux si doublon
|
||||||
function decode_ligne_signal(chaine_signal : string;i : integer) : boolean;
|
function decode_ligne_signal(chaine_signal : string;i : integer) : boolean;
|
||||||
var s,chaine,sa : string;
|
var s,chaine,sa : string;
|
||||||
@@ -1246,7 +1245,7 @@ begin
|
|||||||
begin
|
begin
|
||||||
sa:=copy(s,1,j-1);
|
sa:=copy(s,1,j-1);
|
||||||
if sa[1]='D' then
|
if sa[1]='D' then
|
||||||
// feu directionnel ------------------------------------------
|
// signal directionnel ------------------------------------------
|
||||||
begin
|
begin
|
||||||
delete(sa,1,1);
|
delete(sa,1,1);
|
||||||
j:=pos(',',s);
|
j:=pos(',',s);
|
||||||
@@ -1263,11 +1262,11 @@ begin
|
|||||||
if (adr>NbDecodeur-1) then Affiche('Erreur 673 ligne '+chaine_signal+' : erreur décodeur inconnu',clred);
|
if (adr>NbDecodeur-1) then Affiche('Erreur 673 ligne '+chaine_signal+' : erreur décodeur inconnu',clred);
|
||||||
j:=pos(',',s);Delete(s,1,j);
|
j:=pos(',',s);Delete(s,1,j);
|
||||||
// liste des aiguillages
|
// liste des aiguillages
|
||||||
k:=1; // numéro de feu directionnel
|
k:=1; // numéro de feux directionnels
|
||||||
repeat
|
repeat
|
||||||
// boucle de direction
|
// boucle de direction
|
||||||
delete(s,1,1); // supprimer ( ou le ,
|
delete(s,1,1); // supprimer ( ou le ,
|
||||||
j:=1; // Nombre de descriptions d'aiguillages dans le feu
|
j:=1; // Nombre de descriptions d'aiguillages dans le signal
|
||||||
repeat
|
repeat
|
||||||
if s[1]<>'A' then begin Affiche('Erreur 674 ligne '+chaine_signal,clred);exit;end;
|
if s[1]<>'A' then begin Affiche('Erreur 674 ligne '+chaine_signal,clred);exit;end;
|
||||||
delete(s,1,1);
|
delete(s,1,1);
|
||||||
@@ -1472,7 +1471,7 @@ begin
|
|||||||
t:=pos('(',s);
|
t:=pos('(',s);
|
||||||
if t=1 then
|
if t=1 then
|
||||||
begin
|
begin
|
||||||
//Affiche('Conditions supplémentaires pour le feu '+IntToSTR(adresse)+' parenthèse '+intToSTR(l),clyellow);
|
//Affiche('Conditions supplémentaires pour le signal '+IntToSTR(adresse)+' parenthèse '+intToSTR(l),clyellow);
|
||||||
k:=pos(')',s);
|
k:=pos(')',s);
|
||||||
sa:=copy(s,t+1,k-t); // contient l'intérieur des parenthèses sans les parenthèses
|
sa:=copy(s,t+1,k-t); // contient l'intérieur des parenthèses sans les parenthèses
|
||||||
delete(s,1,k+1);//Affiche(s,clYellow);
|
delete(s,1,k+1);//Affiche(s,clYellow);
|
||||||
@@ -1504,7 +1503,7 @@ begin
|
|||||||
t:=pos('CFB(',s);
|
t:=pos('CFB(',s);
|
||||||
if t=1 then
|
if t=1 then
|
||||||
begin
|
begin
|
||||||
//Affiche('Conditions supplémentaires pour le feu '+IntToSTR(adresse)+' parenthèse '+intToSTR(l),clyellow);
|
//Affiche('Conditions supplémentaires pour le signal '+IntToSTR(adresse)+' parenthèse '+intToSTR(l),clyellow);
|
||||||
k:=pos(')',s);
|
k:=pos(')',s);
|
||||||
sa:=copy(s,t+4,k-4); // contient l'intérieur des parenthèses sans les parenthèses
|
sa:=copy(s,t+4,k-4); // contient l'intérieur des parenthèses sans les parenthèses
|
||||||
delete(s,1,k+1);//Affiche(s,clYellow);
|
delete(s,1,k+1);//Affiche(s,clYellow);
|
||||||
@@ -1736,9 +1735,6 @@ begin
|
|||||||
// adresse ip interface XpressNet
|
// adresse ip interface XpressNet
|
||||||
writeln(fichierN,IPV4_Interface_ch+'=',adresseIP+':'+intToSTR(portInterface));
|
writeln(fichierN,IPV4_Interface_ch+'=',adresseIP+':'+intToSTR(portInterface));
|
||||||
|
|
||||||
// max com
|
|
||||||
writeln(fichierN,Maxcom_ch+'=',MaxPortCom);
|
|
||||||
|
|
||||||
// port com
|
// port com
|
||||||
writeln(fichierN,Protocole_serie_ch+'=',portcom);
|
writeln(fichierN,Protocole_serie_ch+'=',portcom);
|
||||||
|
|
||||||
@@ -1827,8 +1823,8 @@ begin
|
|||||||
if Raz_Acc_signaux then s:='1' else s:='0';
|
if Raz_Acc_signaux then s:='1' else s:='0';
|
||||||
writeln(fichierN,Raz_signaux_ch+'='+s);
|
writeln(fichierN,Raz_signaux_ch+'='+s);
|
||||||
|
|
||||||
// temporisation entre 2 commandes décodeurs feu
|
// temporisation entre 2 commandes décodeurs signaux
|
||||||
writeln(fichierN,Tempo_feu_ch+'=',IntToSTR(Tempo_feu));
|
writeln(fichierN,Tempo_signal_ch+'=',IntToSTR(Tempo_Signal));
|
||||||
|
|
||||||
// Nombre de cantons avant signal
|
// Nombre de cantons avant signal
|
||||||
writeln(fichierN,Nb_cantons_Sig_ch+'=',intToSTR(Nb_cantons_Sig));
|
writeln(fichierN,Nb_cantons_Sig_ch+'=',intToSTR(Nb_cantons_Sig));
|
||||||
@@ -1913,11 +1909,11 @@ begin
|
|||||||
|
|
||||||
writeln(fichierN,'/------------');
|
writeln(fichierN,'/------------');
|
||||||
writeln(fichierN,section_sig_ch);
|
writeln(fichierN,section_sig_ch);
|
||||||
// feux
|
// signaux
|
||||||
for i:=1 to NbreSignaux do
|
for i:=1 to NbreSignaux do
|
||||||
begin
|
begin
|
||||||
s:=encode_sig_feux(i);
|
s:=encode_signal(i);
|
||||||
// transformer le tableau feux en ligne
|
// transformer le tableau signal en ligne
|
||||||
//Affiche(s,clLime);
|
//Affiche(s,clLime);
|
||||||
if s='' then Affiche('Erreur 700 - Encodage du signal index='+IntToSTR(i),clRed);
|
if s='' then Affiche('Erreur 700 - Encodage du signal index='+IntToSTR(i),clRed);
|
||||||
Signaux[i].modifie:=false; // sauvegarde en cours, on démarque
|
Signaux[i].modifie:=false; // sauvegarde en cours, on démarque
|
||||||
@@ -2014,6 +2010,7 @@ end;
|
|||||||
procedure trier_aig;
|
procedure trier_aig;
|
||||||
var i,j : integer;
|
var i,j : integer;
|
||||||
temp : TAiguillage;
|
temp : TAiguillage;
|
||||||
|
s : string;
|
||||||
begin
|
begin
|
||||||
for i:=1 to MaxAiguillage-1 do
|
for i:=1 to MaxAiguillage-1 do
|
||||||
begin
|
begin
|
||||||
@@ -2030,11 +2027,25 @@ begin
|
|||||||
|
|
||||||
for i:=1 to MaxAiguillage do
|
for i:=1 to MaxAiguillage do
|
||||||
tablo_index_aiguillage[aiguillage[i].adresse]:=i;
|
tablo_index_aiguillage[aiguillage[i].adresse]:=i;
|
||||||
|
|
||||||
|
// réaffecte la listebox aiguillages
|
||||||
|
if formconfig<>nil then
|
||||||
|
begin
|
||||||
|
formconfig.ListBoxAig.Clear;
|
||||||
|
for i:=1 to MaxAiguillage do
|
||||||
|
begin
|
||||||
|
s:=encode_aig(i);
|
||||||
|
formConfig.ListBoxAig.Items.AddObject(s, Pointer(clRed));
|
||||||
|
Aiguillage[i].modifie:=false;
|
||||||
|
end;
|
||||||
|
formconfig.ListBoxAig.itemindex:=0;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// trie les signaux
|
// trie les signaux
|
||||||
procedure trier_sig;
|
procedure trier_sig;
|
||||||
var i,j : integer;
|
var i,j,l,longestLength,pixelLength : integer;
|
||||||
|
s,LongestString : string;
|
||||||
temp : TSignal;
|
temp : TSignal;
|
||||||
begin
|
begin
|
||||||
for i:=1 to NbreSignaux-1 do
|
for i:=1 to NbreSignaux-1 do
|
||||||
@@ -2049,10 +2060,40 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
// calcule les index
|
||||||
for i:=1 to NbreSignaux do
|
for i:=1 to NbreSignaux do
|
||||||
begin
|
begin
|
||||||
tablo_index_signal[Signaux[i].adresse]:=i;
|
tablo_index_signal[Signaux[i].adresse]:=i;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
if formconfig<>nil then
|
||||||
|
begin
|
||||||
|
formconfig.ListBoxSig.Clear;
|
||||||
|
longestLength:=0;
|
||||||
|
for i:=1 to NbreSignaux do
|
||||||
|
begin
|
||||||
|
s:=encode_signal(i); // encode la ligne depuis le tableau feux
|
||||||
|
//Affiche(s,clwhite);
|
||||||
|
if s<>'' then
|
||||||
|
begin
|
||||||
|
formconfig.ListBoxSig.Items.Add(s);
|
||||||
|
// trouver la chaine la plus longue pour la future scrollbar
|
||||||
|
l:=Length(s);
|
||||||
|
if l>LongestLength then
|
||||||
|
begin
|
||||||
|
LongestString:=s;
|
||||||
|
LongestLength:=l;
|
||||||
|
end;
|
||||||
|
Signaux[i].modifie:=false;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PixelLength:=formconfig.ListboxSig.Canvas.TextWidth(LongestString);
|
||||||
|
// positionne une scrollbar dans la listbox - pour l'enlever, envoyer 0 dans pixelLength
|
||||||
|
SendMessage(formconfig.ListBoxSig.Handle,LB_SETHORIZONTALEXTENT,PixelLength,0);
|
||||||
|
end;
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@@ -2063,7 +2104,7 @@ var s,sa,SOrigine: string;
|
|||||||
trouve_sec_init,trouve_init_aig,trouve_lay,trouve_IPV4_INTERFACE,trouve_PROTOCOLE_SERIE,trouve_INTER_CAR,
|
trouve_sec_init,trouve_init_aig,trouve_lay,trouve_IPV4_INTERFACE,trouve_PROTOCOLE_SERIE,trouve_INTER_CAR,
|
||||||
trouve_Tempo_maxi,trouve_Entete,trouve_tco,trouve_cdm,trouve_Serveur_interface,trouve_fenetre,trouve_MasqueTCO,
|
trouve_Tempo_maxi,trouve_Entete,trouve_tco,trouve_cdm,trouve_Serveur_interface,trouve_fenetre,trouve_MasqueTCO,
|
||||||
trouve_NOTIF_VERSION,trouve_verif_version,trouve_fonte,trouve_tempo_aig,trouve_raz,trouve_section_aig,
|
trouve_NOTIF_VERSION,trouve_verif_version,trouve_fonte,trouve_tempo_aig,trouve_raz,trouve_section_aig,
|
||||||
trouve_section_branche,trouve_section_sig,trouve_section_act,trouve_tempo_feu,
|
trouve_section_branche,trouve_section_sig,trouve_section_act,trouve_tempo_signal,
|
||||||
trouve_algo_uni,croi,trouve_Nb_cantons_Sig,trouve_dem_aig,trouve_demcnxCOMUSB,trouve_demcnxEth : boolean;
|
trouve_algo_uni,croi,trouve_Nb_cantons_Sig,trouve_dem_aig,trouve_demcnxCOMUSB,trouve_demcnxEth : boolean;
|
||||||
virgule,i_detect,i,erreur,aig2,detect,offset,j,position,
|
virgule,i_detect,i,erreur,aig2,detect,offset,j,position,
|
||||||
ComptEl,Compt_IT,Num_Element,adr,Nligne,postriple,itl,
|
ComptEl,Compt_IT,Num_Element,adr,Nligne,postriple,itl,
|
||||||
@@ -2106,7 +2147,7 @@ var s,sa,SOrigine: string;
|
|||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
if decode_ligne_signal(s,i) then // décode la chaine et stocke en tableau feux
|
if decode_ligne_signal(s,i) then // décode la chaine et stocke en tableau signal
|
||||||
begin
|
begin
|
||||||
inc(i);
|
inc(i);
|
||||||
end
|
end
|
||||||
@@ -2460,6 +2501,7 @@ var s,sa,SOrigine: string;
|
|||||||
if erreur<>0 then Affiche('Erreur aiguillage '+intToSTR(adraig)+' ; caractère '+enregistrement[erreur]+' inconnu',clred);
|
if erreur<>0 then Affiche('Erreur aiguillage '+intToSTR(adraig)+' ; caractère '+enregistrement[erreur]+' inconnu',clred);
|
||||||
if debugConfig then Affiche('Adresse='+IntToSTR(adraig)+' enregistrement='+Enregistrement,clyellow);
|
if debugConfig then Affiche('Adresse='+IntToSTR(adraig)+' enregistrement='+Enregistrement,clyellow);
|
||||||
aiguillage[maxaiguillage].Adresse:=adraig;
|
aiguillage[maxaiguillage].Adresse:=adraig;
|
||||||
|
tablo_index_aiguillage[adrAig]:=maxaiguillage; // stockage index avant tri
|
||||||
aiguillage[maxaiguillage].AdroitB:='Z'; aiguillage[maxaiguillage].AdevieB:='Z';
|
aiguillage[maxaiguillage].AdroitB:='Z'; aiguillage[maxaiguillage].AdevieB:='Z';
|
||||||
aiguillage[maxaiguillage].DdroitB:='Z'; aiguillage[maxaiguillage].DdevieB:='Z';
|
aiguillage[maxaiguillage].DdroitB:='Z'; aiguillage[maxaiguillage].DdevieB:='Z';
|
||||||
|
|
||||||
@@ -3196,20 +3238,6 @@ var s,sa,SOrigine: string;
|
|||||||
else begin adresseIP:='0';parSocketLenz:=false;end;
|
else begin adresseIP:='0';parSocketLenz:=false;end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// nombre max de port série à explorer
|
|
||||||
// configuration du port com
|
|
||||||
sa:=uppercase(MaxCom_ch)+'=';
|
|
||||||
i:=pos(sa,s);
|
|
||||||
if i=1 then
|
|
||||||
begin
|
|
||||||
inc(nv);
|
|
||||||
delete(s,i,length(sa));
|
|
||||||
trouve_MaxPort:=true;
|
|
||||||
val(s,MaxPortCom,erreur);
|
|
||||||
if erreur<>0 then Affiche('Erreur MaxCom: '+sOrigine,clred);
|
|
||||||
if (MaxPortCom<1) or (MaxPortCom>255) then MaxPortCom:=30;
|
|
||||||
end;
|
|
||||||
|
|
||||||
// configuration du port com interface
|
// configuration du port com interface
|
||||||
sa:=uppercase(PROTOCOLE_SERIE_ch)+'=';
|
sa:=uppercase(PROTOCOLE_SERIE_ch)+'=';
|
||||||
i:=pos(sa,s);
|
i:=pos(sa,s);
|
||||||
@@ -3350,16 +3378,16 @@ var s,sa,SOrigine: string;
|
|||||||
val(s,Tempo_Aig,erreur);
|
val(s,Tempo_Aig,erreur);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// temporisation décodeurs de feux
|
// temporisation décodeurs de signal
|
||||||
sa:=uppercase(Tempo_Feu_ch)+'=';
|
sa:=uppercase(Tempo_Signal_ch)+'=';
|
||||||
i:=pos(sa,s);
|
i:=pos(sa,s);
|
||||||
if i=1 then
|
if i=1 then
|
||||||
begin
|
begin
|
||||||
inc(nv);
|
inc(nv);
|
||||||
trouve_Tempo_feu:=true;
|
trouve_Tempo_signal:=true;
|
||||||
delete(s,i,length(sa));
|
delete(s,i,length(sa));
|
||||||
val(s,Tempo_Feu,erreur);
|
val(s,Tempo_Signal,erreur);
|
||||||
if tempo_Feu=0 then Tempo_feu:=100;
|
if Tempo_Signal=0 then Tempo_Signal:=100;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// algo unisemaf
|
// algo unisemaf
|
||||||
@@ -3660,7 +3688,7 @@ begin
|
|||||||
trouve_init_aig:=false;
|
trouve_init_aig:=false;
|
||||||
trouve_dem_aig:=false;
|
trouve_dem_aig:=false;
|
||||||
trouve_tempo_aig:=false;
|
trouve_tempo_aig:=false;
|
||||||
trouve_tempo_feu:=false;
|
trouve_tempo_signal:=false;
|
||||||
trouve_INTER_CAR:=false;
|
trouve_INTER_CAR:=false;
|
||||||
trouve_entete:=false;
|
trouve_entete:=false;
|
||||||
trouve_IPV4_INTERFACE:=false;
|
trouve_IPV4_INTERFACE:=false;
|
||||||
@@ -3689,10 +3717,10 @@ begin
|
|||||||
|
|
||||||
//trouve_FVR:=false;
|
//trouve_FVR:=false;
|
||||||
|
|
||||||
if not(trouve_tempo_feu) then
|
if not(trouve_tempo_signal) then
|
||||||
begin
|
begin
|
||||||
s:=tempo_feu_ch;
|
s:=tempo_signal_ch;
|
||||||
tempo_feu:=100;
|
Tempo_Signal:=100;
|
||||||
s:='';
|
s:='';
|
||||||
end;
|
end;
|
||||||
if not(trouve_NOTIF_VERSION) then s:=NOTIF_VERSION_ch;
|
if not(trouve_NOTIF_VERSION) then s:=NOTIF_VERSION_ch;
|
||||||
@@ -3746,7 +3774,7 @@ begin
|
|||||||
AvecDemandeInterfaceEth:=true;
|
AvecDemandeInterfaceEth:=true;
|
||||||
lay:='';
|
lay:='';
|
||||||
Tempo_Aig:=100;
|
Tempo_Aig:=100;
|
||||||
Tempo_feu:=100;
|
Tempo_Signal:=100;
|
||||||
ServeurInterfaceCDM:=1;
|
ServeurInterfaceCDM:=1;
|
||||||
Nb_cantons_Sig:=3;
|
Nb_cantons_Sig:=3;
|
||||||
ServeurRetroCDM:=1;
|
ServeurRetroCDM:=1;
|
||||||
@@ -3784,10 +3812,10 @@ begin
|
|||||||
if not(trouve_demcnxEth) then s:=Init_dem_interfaceEth_ch;
|
if not(trouve_demcnxEth) then s:=Init_dem_interfaceEth_ch;
|
||||||
if not(trouveAvecVerifIconesTCO) then confasauver:=true;
|
if not(trouveAvecVerifIconesTCO) then confasauver:=true;
|
||||||
|
|
||||||
if not(trouve_tempo_feu) then
|
if not(trouve_tempo_signal) then
|
||||||
begin
|
begin
|
||||||
s:=tempo_feu_ch;
|
s:=tempo_signal_ch;
|
||||||
tempo_feu:=100;
|
Tempo_Signal:=100;
|
||||||
s:='';
|
s:='';
|
||||||
end;
|
end;
|
||||||
if not(trouve_NOTIF_VERSION) then s:=NOTIF_VERSION_ch;
|
if not(trouve_NOTIF_VERSION) then s:=NOTIF_VERSION_ch;
|
||||||
@@ -4043,7 +4071,7 @@ begin
|
|||||||
exit;
|
exit;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Feu_Sauve:=Signaux[index]; // sauvegarde
|
Signal_Sauve:=Signaux[index]; // sauvegarde
|
||||||
|
|
||||||
AncLigneClicSig:=ligneclicSig;
|
AncLigneClicSig:=ligneclicSig;
|
||||||
ligneClicSig:=index-1;
|
ligneClicSig:=index-1;
|
||||||
@@ -4059,12 +4087,14 @@ begin
|
|||||||
|
|
||||||
if sombre then Formconfig.editAdrSig.Color:=couleurfond else FormConfig.EditAdrSig.Color:=clWindow;
|
if sombre then Formconfig.editAdrSig.Color:=couleurfond else FormConfig.EditAdrSig.Color:=clWindow;
|
||||||
|
|
||||||
aff_champs_sig_feux(index); // affiche les champs du feu
|
aff_champs_signaux(index); // affiche les champs du feu
|
||||||
clicliste:=false;
|
clicliste:=false;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure TFormConfig.FormActivate(Sender: TObject);
|
procedure TFormConfig.FormActivate(Sender: TObject);
|
||||||
|
var i : integer;
|
||||||
|
s : string;
|
||||||
begin
|
begin
|
||||||
if affevt then affiche('FormConfig activate',clLime);
|
if affevt then affiche('FormConfig activate',clLime);
|
||||||
activ:=true;
|
activ:=true;
|
||||||
@@ -4093,7 +4123,7 @@ begin
|
|||||||
|
|
||||||
CheckBoxAffMemo.Checked:=AffMemoFenetre=1;
|
CheckBoxAffMemo.Checked:=AffMemoFenetre=1;
|
||||||
EditNbCantons.text:=intToSTR(Nb_cantons_Sig);
|
EditNbCantons.text:=intToSTR(Nb_cantons_Sig);
|
||||||
EditTempoFeu.Text:=IntToSTR(Tempo_feu);
|
EditTempoFeu.Text:=IntToSTR(Tempo_Signal);
|
||||||
EditNbDetDist.text:=IntToSTR(Nb_Det_dist);
|
EditNbDetDist.text:=IntToSTR(Nb_Det_dist);
|
||||||
EditAdrIPCDM.text:=adresseIPCDM;
|
EditAdrIPCDM.text:=adresseIPCDM;
|
||||||
EditPortCDM.Text:=IntToSTR(portCDM);
|
EditPortCDM.Text:=IntToSTR(portCDM);
|
||||||
@@ -4174,9 +4204,20 @@ begin
|
|||||||
clicListe:=false;
|
clicListe:=false;
|
||||||
activ:=false;
|
activ:=false;
|
||||||
|
|
||||||
if clicproprietes then clicListeSignal(Indexfeuclic);
|
if clicproprietes then clicListeSignal(IndexSignalClic);
|
||||||
clicproprietes:=false;
|
clicproprietes:=false;
|
||||||
|
|
||||||
|
// aiguillages
|
||||||
|
ListBoxAig.Clear;
|
||||||
|
for i:=1 to MaxAiguillage do
|
||||||
|
begin
|
||||||
|
s:=encode_aig(i);
|
||||||
|
ListBoxAig.Items.AddObject(s, Pointer(clRed));
|
||||||
|
Aiguillage[i].modifie:=false;
|
||||||
|
end;
|
||||||
|
ListBoxAig.itemindex:=0;
|
||||||
|
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure champs_dec_centrale;
|
procedure champs_dec_centrale;
|
||||||
@@ -4649,8 +4690,8 @@ begin
|
|||||||
if affevt then affiche('FormConfig create',clLime);
|
if affevt then affiche('FormConfig create',clLime);
|
||||||
PageControl.ActivePage:=Formconfig.TabSheetCDM; // force le premier onglet sur la page
|
PageControl.ActivePage:=Formconfig.TabSheetCDM; // force le premier onglet sur la page
|
||||||
Aig_supprime.Adresse:=0;
|
Aig_supprime.Adresse:=0;
|
||||||
Feu_Supprime.Adresse:=0;
|
Signal_Supprime.Adresse:=0;
|
||||||
Feu_sauve.adresse:=0;
|
Signal_sauve.adresse:=0;
|
||||||
clicListe:=false;
|
clicListe:=false;
|
||||||
ligneCherche:=0;
|
ligneCherche:=0;
|
||||||
Compt_ligne:=0;
|
Compt_ligne:=0;
|
||||||
@@ -5277,18 +5318,6 @@ begin
|
|||||||
else formconfig.ComboBoxDecodeurPerso.ItemIndex:=-1;
|
else formconfig.ComboBoxDecodeurPerso.ItemIndex:=-1;
|
||||||
maj_decodeurs;
|
maj_decodeurs;
|
||||||
|
|
||||||
|
|
||||||
// aiguillages
|
|
||||||
ListBoxAig.Clear;
|
|
||||||
for i:=1 to MaxAiguillage do
|
|
||||||
begin
|
|
||||||
s:=encode_aig(i);
|
|
||||||
ListBoxAig.Items.AddObject(s, Pointer(clRed));
|
|
||||||
Aiguillage[i].modifie:=false;
|
|
||||||
end;
|
|
||||||
ListBoxAig.itemindex:=0;
|
|
||||||
|
|
||||||
|
|
||||||
// branches
|
// branches
|
||||||
clicListe:=true;
|
clicListe:=true;
|
||||||
RichBranche.clear;
|
RichBranche.clear;
|
||||||
@@ -5307,7 +5336,6 @@ begin
|
|||||||
// signaux
|
// signaux
|
||||||
ListBoxSig.Items.clear;
|
ListBoxSig.Items.clear;
|
||||||
ComboBoxDec.items.Clear;
|
ComboBoxDec.items.Clear;
|
||||||
|
|
||||||
for i:=0 to 11 do
|
for i:=0 to 11 do
|
||||||
begin
|
begin
|
||||||
ComboBoxAsp.items.add(Aspects[i]);
|
ComboBoxAsp.items.add(Aspects[i]);
|
||||||
@@ -5317,6 +5345,7 @@ begin
|
|||||||
begin
|
begin
|
||||||
ComboBoxDec.items.add(decodeur[i-1]);
|
ComboBoxDec.items.add(decodeur[i-1]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// décodeurs personalisés
|
// décodeurs personalisés
|
||||||
for i:=1 to NbreDecPers do
|
for i:=1 to NbreDecPers do
|
||||||
begin
|
begin
|
||||||
@@ -5327,7 +5356,7 @@ begin
|
|||||||
longestLength:=0;
|
longestLength:=0;
|
||||||
for i:=1 to NbreSignaux do
|
for i:=1 to NbreSignaux do
|
||||||
begin
|
begin
|
||||||
s:=encode_sig_feux(i); // encode la ligne depuis le tableau feux
|
s:=encode_signal(i); // encode la ligne depuis le tableau feux
|
||||||
//Affiche(s,clwhite);
|
//Affiche(s,clwhite);
|
||||||
if s<>'' then
|
if s<>'' then
|
||||||
begin
|
begin
|
||||||
@@ -5342,6 +5371,7 @@ begin
|
|||||||
Signaux[i].modifie:=false;
|
Signaux[i].modifie:=false;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
PixelLength:=ListboxSig.Canvas.TextWidth(LongestString);
|
PixelLength:=ListboxSig.Canvas.TextWidth(LongestString);
|
||||||
// positionne une scrollbar dans la listbox - pour l'enlever, envoyer 0 dans pixelLength
|
// positionne une scrollbar dans la listbox - pour l'enlever, envoyer 0 dans pixelLength
|
||||||
SendMessage(ListBoxSig.Handle,LB_SETHORIZONTALEXTENT,PixelLength,0);
|
SendMessage(ListBoxSig.Handle,LB_SETHORIZONTALEXTENT,PixelLength,0);
|
||||||
@@ -5395,7 +5425,7 @@ begin
|
|||||||
GroupBoxAct.Visible:=false;
|
GroupBoxAct.Visible:=false;
|
||||||
GroupBoxPN.Visible:=false;
|
GroupBoxPN.Visible:=false;
|
||||||
|
|
||||||
if clicproprietes then clicListeSignal(Indexfeuclic);
|
if clicproprietes then clicListeSignal(IndexSignalClic);
|
||||||
clicproprietes:=false;
|
clicproprietes:=false;
|
||||||
|
|
||||||
i:=1;
|
i:=1;
|
||||||
@@ -6209,7 +6239,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
// mise à jour des champs du signal d'après le tableau feux
|
// mise à jour des champs du signal d'après le tableau feux
|
||||||
Procedure aff_champs_sig_feux(index : integer);
|
Procedure aff_champs_signaux(index : integer);
|
||||||
var i,j,l,d,p,k,nc,decodeur : integer;
|
var i,j,l,d,p,k,nc,decodeur : integer;
|
||||||
s : string;
|
s : string;
|
||||||
begin
|
begin
|
||||||
@@ -6224,7 +6254,7 @@ begin
|
|||||||
Picture.Bitmap.TransparentMode:=tmAuto;
|
Picture.Bitmap.TransparentMode:=tmAuto;
|
||||||
Picture.Bitmap.TransparentColor:=clblue;
|
Picture.Bitmap.TransparentColor:=clblue;
|
||||||
Transparent:=true;
|
Transparent:=true;
|
||||||
picture.Bitmap:=Select_dessin_feu(Signaux[i].aspect);
|
picture.Bitmap:=Select_dessin_Signal(Signaux[i].aspect);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if Signaux[i].contrevoie then inverse_image(formCOnfig.ImageSignal,Formprinc.ImageSignal20);
|
if Signaux[i].contrevoie then inverse_image(formCOnfig.ImageSignal,Formprinc.ImageSignal20);
|
||||||
@@ -7493,10 +7523,10 @@ begin
|
|||||||
end
|
end
|
||||||
else labelInfo.Caption:='';
|
else labelInfo.Caption:='';
|
||||||
end;
|
end;
|
||||||
s:=encode_sig_feux(i);
|
s:=encode_signal(i);
|
||||||
formconfig.ListBoxSig.Items[ligneclicSig]:=s;
|
formconfig.ListBoxSig.Items[ligneclicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
aff_champs_sig_feux(i);
|
aff_champs_signaux(i);
|
||||||
if not(verif_dec_sig(false)) then FormConfig.labelInfo.Caption:='Combinaison décodeur / aspect incompatible';
|
if not(verif_dec_sig(false)) then FormConfig.labelInfo.Caption:='Combinaison décodeur / aspect incompatible';
|
||||||
|
|
||||||
if affevt then Affiche('Evt ComboBox Decodeur',clOrange);
|
if affevt then Affiche('Evt ComboBox Decodeur',clOrange);
|
||||||
@@ -7519,7 +7549,7 @@ begin
|
|||||||
LabelInfo.caption:=' ';
|
LabelInfo.caption:=' ';
|
||||||
Signaux[ligneClicSig+1].Adr_det1:=i;
|
Signaux[ligneClicSig+1].Adr_det1:=i;
|
||||||
maj_hint_Signal(ligneClicSig+1);
|
maj_hint_Signal(ligneClicSig+1);
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
Signaux[ligneClicSig+1].modifie:=true;
|
Signaux[ligneClicSig+1].modifie:=true;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
@@ -7534,7 +7564,7 @@ begin
|
|||||||
Val(s,i,erreur);
|
Val(s,i,erreur);
|
||||||
if (s<>'') and (erreur<>0) then begin LabelInfo.caption:='Erreur temporisation décodeurs ';exit;end;
|
if (s<>'') and (erreur<>0) then begin LabelInfo.caption:='Erreur temporisation décodeurs ';exit;end;
|
||||||
LabelInfo.caption:=' ';
|
LabelInfo.caption:=' ';
|
||||||
tempo_feu:=i;
|
Tempo_Signal:=i;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@@ -7573,7 +7603,7 @@ begin
|
|||||||
LabelInfo.caption:=' ';
|
LabelInfo.caption:=' ';
|
||||||
Signaux[ligneClicSig+1].Adr_el_suiv1:=i;
|
Signaux[ligneClicSig+1].Adr_el_suiv1:=i;
|
||||||
Signaux[ligneClicSig+1].Btype_suiv1:=bt;
|
Signaux[ligneClicSig+1].Btype_suiv1:=bt;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
end;
|
end;
|
||||||
@@ -7601,7 +7631,7 @@ begin
|
|||||||
LabelInfo.caption:=' ';
|
LabelInfo.caption:=' ';
|
||||||
Signaux[ligneClicSig+1].Adr_det2:=i;
|
Signaux[ligneClicSig+1].Adr_det2:=i;
|
||||||
maj_hint_Signal(ligneClicSig+1);
|
maj_hint_Signal(ligneClicSig+1);
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
Signaux[ligneClicSig+1].modifie:=true;
|
Signaux[ligneClicSig+1].modifie:=true;
|
||||||
@@ -7623,7 +7653,7 @@ begin
|
|||||||
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
begin
|
begin
|
||||||
Signaux[ligneClicSig+1].VerrouCarre:=checkVerrouCarre.Checked;
|
Signaux[ligneClicSig+1].VerrouCarre:=checkVerrouCarre.Checked;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
Signaux[ligneClicSig+1].modifie:=true;
|
Signaux[ligneClicSig+1].modifie:=true;
|
||||||
@@ -7639,7 +7669,7 @@ begin
|
|||||||
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
begin
|
begin
|
||||||
Signaux[ligneClicSig+1].FeuBlanc:=checkBoxFB.Checked;
|
Signaux[ligneClicSig+1].FeuBlanc:=checkBoxFB.Checked;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
Signaux[ligneClicSig+1].modifie:=true;
|
Signaux[ligneClicSig+1].modifie:=true;
|
||||||
@@ -7680,7 +7710,7 @@ begin
|
|||||||
LabelInfo.caption:=' ';
|
LabelInfo.caption:=' ';
|
||||||
Signaux[ligneClicSig+1].Adr_el_suiv2:=i;
|
Signaux[ligneClicSig+1].Adr_el_suiv2:=i;
|
||||||
Signaux[ligneClicSig+1].Btype_suiv2:=bt;
|
Signaux[ligneClicSig+1].Btype_suiv2:=bt;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
end;
|
end;
|
||||||
@@ -7708,7 +7738,7 @@ begin
|
|||||||
LabelInfo.caption:=' ';
|
LabelInfo.caption:=' ';
|
||||||
Signaux[ligneClicSig+1].Adr_det3:=i;
|
Signaux[ligneClicSig+1].Adr_det3:=i;
|
||||||
maj_hint_Signal(ligneClicSig+1);
|
maj_hint_Signal(ligneClicSig+1);
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
Signaux[ligneClicSig+1].modifie:=true;
|
Signaux[ligneClicSig+1].modifie:=true;
|
||||||
@@ -7756,7 +7786,7 @@ begin
|
|||||||
LabelInfo.caption:=' ';
|
LabelInfo.caption:=' ';
|
||||||
Signaux[ligneClicSig+1].Adr_el_suiv3:=i;
|
Signaux[ligneClicSig+1].Adr_el_suiv3:=i;
|
||||||
Signaux[ligneClicSig+1].Btype_suiv3:=bt;
|
Signaux[ligneClicSig+1].Btype_suiv3:=bt;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
end;
|
end;
|
||||||
@@ -7784,7 +7814,7 @@ begin
|
|||||||
LabelInfo.caption:=' ';
|
LabelInfo.caption:=' ';
|
||||||
Signaux[ligneClicSig+1].Adr_det4:=i;
|
Signaux[ligneClicSig+1].Adr_det4:=i;
|
||||||
maj_hint_Signal(ligneClicSig+1);
|
maj_hint_Signal(ligneClicSig+1);
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
Signaux[ligneClicSig+1].modifie:=true;
|
Signaux[ligneClicSig+1].modifie:=true;
|
||||||
@@ -7832,7 +7862,7 @@ begin
|
|||||||
LabelInfo.caption:=' ';
|
LabelInfo.caption:=' ';
|
||||||
Signaux[ligneClicSig+1].Adr_el_suiv4:=i;
|
Signaux[ligneClicSig+1].Adr_el_suiv4:=i;
|
||||||
Signaux[ligneClicSig+1].Btype_suiv4:=bt;
|
Signaux[ligneClicSig+1].Btype_suiv4:=bt;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
end;
|
end;
|
||||||
@@ -8296,16 +8326,16 @@ begin
|
|||||||
|
|
||||||
Signaux[index].aspect:=aspect;
|
Signaux[index].aspect:=aspect;
|
||||||
|
|
||||||
s:=encode_sig_feux(index);
|
s:=encode_signal(index);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
aff_champs_sig_feux(index); // redessine les champs et le feu
|
aff_champs_signaux(index); // redessine les champs et le feu
|
||||||
|
|
||||||
if not(verif_dec_sig(false)) then labelInfo.Caption:='Combinaison décodeur / aspect incompatible';
|
if not(verif_dec_sig(false)) then labelInfo.Caption:='Combinaison décodeur / aspect incompatible';
|
||||||
|
|
||||||
ListBoxSig.Selected[ligneClicSig]:=true;
|
ListBoxSig.Selected[ligneClicSig]:=true;
|
||||||
|
|
||||||
// change l'image du feu dans la feuille graphique principale
|
// change l'image du feu dans la feuille graphique principale
|
||||||
bm:=Select_dessin_feu(Signaux[index].aspect);
|
bm:=Select_dessin_Signal(Signaux[index].aspect);
|
||||||
if bm=nil then exit;
|
if bm=nil then exit;
|
||||||
Signaux[index].Img.picture.Bitmap:=bm;
|
Signaux[index].Img.picture.Bitmap:=bm;
|
||||||
dessine_signal_mx(Signaux[index].Img.Canvas,0,0,1,1,Signaux[index].adresse,1); // dessine les feux du signal
|
dessine_signal_mx(Signaux[index].Img.Canvas,0,0,1,1,Signaux[index].adresse,1); // dessine les feux du signal
|
||||||
@@ -8354,7 +8384,7 @@ begin
|
|||||||
Signaux[ligneClicSig+1].Unisemaf:=i;
|
Signaux[ligneClicSig+1].Unisemaf:=i;
|
||||||
end;
|
end;
|
||||||
if decodeur=10 then Signaux[ligneClicSig+1].Na:=i;
|
if decodeur=10 then Signaux[ligneClicSig+1].Na:=i;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
end;
|
end;
|
||||||
@@ -8363,17 +8393,17 @@ end;
|
|||||||
procedure TFormConfig.ButtonrestaureClick(Sender: TObject);
|
procedure TFormConfig.ButtonrestaureClick(Sender: TObject);
|
||||||
var index : integer;
|
var index : integer;
|
||||||
begin
|
begin
|
||||||
if (Feu_sauve.adresse<>0) and (ligneClicSig>=0) then
|
if (Signal_sauve.adresse<>0) and (ligneClicSig>=0) then
|
||||||
begin
|
begin
|
||||||
clicListe:=true;
|
clicListe:=true;
|
||||||
index:=ligneClicSig+1;
|
index:=ligneClicSig+1;
|
||||||
Signaux[index]:=Feu_sauve;
|
Signaux[index]:=Signal_sauve;
|
||||||
ListBoxSig.Items[ligneClicSig]:=encode_sig_feux(index);
|
ListBoxSig.Items[ligneClicSig]:=encode_signal(index);
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
aff_champs_sig_feux(index); // réaffiche les champs
|
aff_champs_signaux(index); // réaffiche les champs
|
||||||
Maj_Hint_Signal(index);
|
Maj_Hint_Signal(index);
|
||||||
// change l'image du feu dans la feuille graphique principale
|
// change l'image du feu dans la feuille graphique principale
|
||||||
Signaux[index].Img.picture.Bitmap:=Select_dessin_feu(Signaux[index].aspect);
|
Signaux[index].Img.picture.Bitmap:=Select_dessin_Signal(Signaux[index].aspect);
|
||||||
dessine_signal_mx(Signaux[index].Img.Canvas,0,0,1,1,Signaux[index].adresse,1); // dessine les feux du signal
|
dessine_signal_mx(Signaux[index].Img.Canvas,0,0,1,1,Signaux[index].adresse,1); // dessine les feux du signal
|
||||||
clicListe:=false;
|
clicListe:=false;
|
||||||
end;
|
end;
|
||||||
@@ -8925,8 +8955,7 @@ begin
|
|||||||
Signaux[i].verrouCarre:=false;
|
Signaux[i].verrouCarre:=false;
|
||||||
|
|
||||||
cree_image(i);
|
cree_image(i);
|
||||||
//Affiche('Feu 999 créé',clyellow);
|
s:=encode_signal(i);
|
||||||
s:=encode_sig_feux(i);
|
|
||||||
|
|
||||||
// scroller à la fin et sélectionner
|
// scroller à la fin et sélectionner
|
||||||
with formConfig.ListBoxSig do
|
with formConfig.ListBoxSig do
|
||||||
@@ -8940,9 +8969,9 @@ begin
|
|||||||
formCOnfig.LabelInfo.caption:='';
|
formCOnfig.LabelInfo.caption:='';
|
||||||
ligneClicSig:=i-1;
|
ligneClicSig:=i-1;
|
||||||
AncligneClicSig:=ligneClicSig;
|
AncligneClicSig:=ligneClicSig;
|
||||||
Aff_champs_Sig_feux(i);
|
aff_champs_signaux(i);
|
||||||
clicliste:=false;
|
clicliste:=false;
|
||||||
Feu_sauve.Adresse:=0;
|
Signal_sauve.Adresse:=0;
|
||||||
config_modifie:=true;
|
config_modifie:=true;
|
||||||
|
|
||||||
// encoder l'index
|
// encoder l'index
|
||||||
@@ -8985,8 +9014,9 @@ begin
|
|||||||
repeat
|
repeat
|
||||||
if formconfig.ListBoxSig.selected[i-1] then
|
if formconfig.ListBoxSig.selected[i-1] then
|
||||||
begin
|
begin
|
||||||
Feu_supprime:=Signaux[i]; // sauvegarde le signal supprimé
|
Signal_supprime:=Signaux[i]; // sauvegarde le signal supprimé
|
||||||
feu_sauve.adresse:=0; // dévalider sa définition
|
Signal_sauve.adresse:=0; // dévalider sa définition
|
||||||
|
|
||||||
FormConfig.ButtonInsFeu.Caption:='Ajouter le signal '+intToSTR(Signaux[i].adresse)+' supprimé';
|
FormConfig.ButtonInsFeu.Caption:='Ajouter le signal '+intToSTR(Signaux[i].adresse)+' supprimé';
|
||||||
|
|
||||||
// supprimer le signal i
|
// supprimer le signal i
|
||||||
@@ -8997,7 +9027,11 @@ begin
|
|||||||
|
|
||||||
Signaux[i].Img.free; // supprime l'image, ce qui efface le feu du tableau graphique
|
Signaux[i].Img.free; // supprime l'image, ce qui efface le feu du tableau graphique
|
||||||
Signaux[i].Lbl.free; // supprime le label
|
Signaux[i].Lbl.free; // supprime le label
|
||||||
if Signaux[i].checkFB<>nil then begin Signaux[i].checkFB.Free;Signaux[i].CheckFB:=nil;end; // supprime le check du feu blanc s'il existait
|
Tablo_Index_Signal[Signaux[i].adresse]:=0;
|
||||||
|
if Signaux[i].checkFB<>nil then
|
||||||
|
begin
|
||||||
|
Signaux[i].checkFB.Free;Signaux[i].CheckFB:=nil;
|
||||||
|
end; // supprime le check du feu blanc s'il existait
|
||||||
|
|
||||||
for j:=i to NbreSignaux-1 do
|
for j:=i to NbreSignaux-1 do
|
||||||
begin
|
begin
|
||||||
@@ -9041,7 +9075,7 @@ begin
|
|||||||
// réafficher la liste
|
// réafficher la liste
|
||||||
for i:=1 to NbreSignaux do
|
for i:=1 to NbreSignaux do
|
||||||
begin
|
begin
|
||||||
s:=encode_sig_feux(i);
|
s:=encode_signal(i);
|
||||||
if s<>'' then
|
if s<>'' then
|
||||||
begin
|
begin
|
||||||
FormConfig.ListBoxSig.items.Add(s);
|
FormConfig.ListBoxSig.items.Add(s);
|
||||||
@@ -9049,7 +9083,13 @@ begin
|
|||||||
end;
|
end;
|
||||||
ligneClicSig:=-1;
|
ligneClicSig:=-1;
|
||||||
AncligneClicSig:=-1;
|
AncligneClicSig:=-1;
|
||||||
trier_sig; // recalcule les index
|
|
||||||
|
// calcule les index - ne pas trier les signaux, il faudrait trier la fenetre graphique
|
||||||
|
for i:=1 to NbreSignaux do
|
||||||
|
begin
|
||||||
|
tablo_index_signal[Signaux[i].adresse]:=i;
|
||||||
|
end;
|
||||||
|
|
||||||
clicliste:=false;
|
clicliste:=false;
|
||||||
|
|
||||||
end;
|
end;
|
||||||
@@ -9064,17 +9104,18 @@ end;
|
|||||||
procedure TFormConfig.ButtonInsFeuClick(Sender: TObject);
|
procedure TFormConfig.ButtonInsFeuClick(Sender: TObject);
|
||||||
var s : string;
|
var s : string;
|
||||||
begin
|
begin
|
||||||
if feu_supprime.adresse<>0 then
|
if Signal_supprime.adresse<>0 then
|
||||||
begin
|
begin
|
||||||
clicliste:=true;
|
clicliste:=true;
|
||||||
inc(NbreSignaux);
|
inc(NbreSignaux);
|
||||||
Signaux[NbreSignaux]:=Feu_supprime;
|
Signaux[NbreSignaux]:=Signal_supprime;
|
||||||
Feu_Supprime.adresse:=0; // dévalider le feu sauvegardé
|
Tablo_Index_Signal[Signaux[NbreSignaux].adresse]:=NbreSignaux; // index
|
||||||
Feu_supprime.aspect:=0;
|
Signal_supprime.adresse:=0; // dévalider le feu sauvegardé
|
||||||
|
Signal_supprime.aspect:=0;
|
||||||
cree_image(NbreSignaux);
|
cree_image(NbreSignaux);
|
||||||
config_modifie:=true;
|
config_modifie:=true;
|
||||||
// réafficher le rechedit
|
// réafficher le rechedit
|
||||||
s:=encode_Sig_Feux(NbreSignaux);
|
s:=encode_signal(NbreSignaux);
|
||||||
if s<>'' then
|
if s<>'' then
|
||||||
begin
|
begin
|
||||||
with ListBoxSig.Items do
|
with ListBoxSig.Items do
|
||||||
@@ -9085,7 +9126,7 @@ begin
|
|||||||
AncligneClicSig:=-1;
|
AncligneClicSig:=-1;
|
||||||
SetFocus;
|
SetFocus;
|
||||||
end;
|
end;
|
||||||
Aff_champs_sig_feux(NbreSignaux);
|
aff_champs_signaux(NbreSignaux);
|
||||||
end;
|
end;
|
||||||
clicListe:=false;
|
clicListe:=false;
|
||||||
end;
|
end;
|
||||||
@@ -10737,6 +10778,7 @@ begin
|
|||||||
begin
|
begin
|
||||||
inc(MaxAiguillage);
|
inc(MaxAiguillage);
|
||||||
aiguillage[MaxAiguillage]:=Aig_supprime;
|
aiguillage[MaxAiguillage]:=Aig_supprime;
|
||||||
|
Tablo_Index_aiguillage[aiguillage[maxAiguillage].adresse]:=maxAiguillage; // index
|
||||||
Aig_Supprime.adresse:=0; // dévalider l'aiguillage sauvegardé
|
Aig_Supprime.adresse:=0; // dévalider l'aiguillage sauvegardé
|
||||||
Aig_Supprime.modele:=rien;
|
Aig_Supprime.modele:=rien;
|
||||||
clicListe:=true;
|
clicListe:=true;
|
||||||
@@ -11114,7 +11156,7 @@ begin
|
|||||||
else
|
else
|
||||||
setlength(Signaux[ligneClicSig+1].AigDirection[ligne],0);
|
setlength(Signaux[ligneClicSig+1].AigDirection[ligne],0);
|
||||||
end;
|
end;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
end
|
end
|
||||||
@@ -11152,7 +11194,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
LabelInfo.Caption:='';
|
LabelInfo.Caption:='';
|
||||||
clicListe:=false;
|
clicListe:=false;
|
||||||
@@ -11716,7 +11758,7 @@ begin
|
|||||||
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
begin
|
begin
|
||||||
Signaux[ligneClicSig+1].checkFV:=checkFVC.Checked;
|
Signaux[ligneClicSig+1].checkFV:=checkFVC.Checked;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
Signaux[ligneClicSig+1].modifie:=true;
|
Signaux[ligneClicSig+1].modifie:=true;
|
||||||
@@ -11732,7 +11774,7 @@ begin
|
|||||||
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
begin
|
begin
|
||||||
Signaux[ligneClicSig+1].checkFR:=checkFRC.Checked;
|
Signaux[ligneClicSig+1].checkFR:=checkFRC.Checked;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
Signaux[ligneClicSig+1].modifie:=true;
|
Signaux[ligneClicSig+1].modifie:=true;
|
||||||
@@ -12285,7 +12327,7 @@ procedure TFormConfig.CheckBoxVersContrevoieClick(Sender: TObject);
|
|||||||
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
begin
|
begin
|
||||||
Signaux[ligneClicSig+1].verscontrevoie:=checkBoxVersContreVoie.Checked;
|
Signaux[ligneClicSig+1].verscontrevoie:=checkBoxVersContreVoie.Checked;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
Signaux[ligneClicSig+1].modifie:=true;
|
Signaux[ligneClicSig+1].modifie:=true;
|
||||||
@@ -12302,12 +12344,12 @@ begin
|
|||||||
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
if FormConfig.PageControl.ActivePage=FormConfig.TabSheetSig then
|
||||||
begin
|
begin
|
||||||
Signaux[ligneClicSig+1].contrevoie:=checkBoxContreVoie.Checked;
|
Signaux[ligneClicSig+1].contrevoie:=checkBoxContreVoie.Checked;
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
Signaux[ligneClicSig+1].modifie:=true;
|
Signaux[ligneClicSig+1].modifie:=true;
|
||||||
|
|
||||||
aff_champs_sig_feux(ligneClicSig+1); // redessine les champs et le feu - contient l'inversion de l'image
|
aff_champs_signaux(ligneClicSig+1); // redessine les champs et le feu - contient l'inversion de l'image
|
||||||
|
|
||||||
// maj le signal dans la fenetre principale
|
// maj le signal dans la fenetre principale
|
||||||
Signaux[ligneClicSig+1].Img.picture.Bitmap:=ImageSIgnal.Picture.Bitmap; // et recopie le feu
|
Signaux[ligneClicSig+1].Img.picture.Bitmap:=ImageSIgnal.Picture.Bitmap; // et recopie le feu
|
||||||
@@ -12709,7 +12751,7 @@ begin
|
|||||||
begin
|
begin
|
||||||
Affiche('Le décodeur du signal '+intToSTR(Signaux[i].adresse)+' a été réaffacté à rien',clOrange);
|
Affiche('Le décodeur du signal '+intToSTR(Signaux[i].adresse)+' a été réaffacté à rien',clOrange);
|
||||||
Signaux[i].decodeur:=0;
|
Signaux[i].decodeur:=0;
|
||||||
if i=ligneClicSig+1 then aff_champs_sig_feux(ligneClicSig+1);
|
if i=ligneClicSig+1 then aff_champs_signaux(ligneClicSig+1);
|
||||||
aff:=true;
|
aff:=true;
|
||||||
end;
|
end;
|
||||||
if deco>supp then
|
if deco>supp then
|
||||||
@@ -12725,7 +12767,7 @@ begin
|
|||||||
ListBoxSig.Items.Clear;
|
ListBoxSig.Items.Clear;
|
||||||
for i:=1 to NbreSignaux do
|
for i:=1 to NbreSignaux do
|
||||||
begin
|
begin
|
||||||
s:=encode_sig_feux(i); // encode la ligne depuis le tableau feux
|
s:=encode_signal(i); // encode la ligne depuis le tableau feux
|
||||||
if s<>'' then
|
if s<>'' then
|
||||||
begin
|
begin
|
||||||
ListBoxSig.Items.Add(s);
|
ListBoxSig.Items.Add(s);
|
||||||
@@ -12796,7 +12838,7 @@ begin
|
|||||||
setlength(Signaux[ligneClicSig+1].condFeuBlanc[ligne],0);
|
setlength(Signaux[ligneClicSig+1].condFeuBlanc[ligne],0);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
LabelInfo.Caption:='';
|
LabelInfo.Caption:='';
|
||||||
@@ -12850,7 +12892,7 @@ begin
|
|||||||
if AncligneClicSig<>ligneClicSig then
|
if AncligneClicSig<>ligneClicSig then
|
||||||
begin
|
begin
|
||||||
AncligneClicSig:=ligneClicSig;
|
AncligneClicSig:=ligneClicSig;
|
||||||
aff_champs_sig_feux(ligneClicSig+1);
|
aff_champs_signaux(ligneClicSig+1);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@@ -12869,7 +12911,7 @@ begin
|
|||||||
if AncligneClicSig<>ligneClicSig then
|
if AncligneClicSig<>ligneClicSig then
|
||||||
begin
|
begin
|
||||||
AncligneClicSig:=ligneClicSig;
|
AncligneClicSig:=ligneClicSig;
|
||||||
aff_champs_sig_feux(ligneClicSig+1);
|
aff_champs_signaux(ligneClicSig+1);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@@ -13560,7 +13602,7 @@ begin
|
|||||||
tablo_index_signal[i]:=ligneClicSig+1;
|
tablo_index_signal[i]:=ligneClicSig+1;
|
||||||
|
|
||||||
Signaux[ligneClicSig+1].Lbl.caption:='@'+IntToSTR(i);
|
Signaux[ligneClicSig+1].Lbl.caption:='@'+IntToSTR(i);
|
||||||
s:=encode_sig_feux(ligneClicSig+1);
|
s:=encode_signal(ligneClicSig+1);
|
||||||
ListBoxSig.Items[ligneClicSig]:=s;
|
ListBoxSig.Items[ligneClicSig]:=s;
|
||||||
ListBoxSig.selected[ligneClicSig]:=true;
|
ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
Maj_Hint_Signal(ligneClicSig+1);
|
Maj_Hint_Signal(ligneClicSig+1);
|
||||||
|
|||||||
@@ -549,6 +549,7 @@ procedure TFormConfigTCO.FormCreate(Sender: TObject);
|
|||||||
var i : integer;
|
var i : integer;
|
||||||
c : tcomponent;
|
c : tcomponent;
|
||||||
begin
|
begin
|
||||||
|
if debug=1 then Affiche('Création fenetre configTCO',clLime);
|
||||||
for i:=0 to stringGridTCO.RowCount - 1 do
|
for i:=0 to stringGridTCO.RowCount - 1 do
|
||||||
with stringGridTCO do
|
with stringGridTCO do
|
||||||
begin
|
begin
|
||||||
@@ -577,6 +578,7 @@ begin
|
|||||||
composant(c,couleurFond,couleurTexte);
|
composant(c,couleurFond,couleurTexte);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
if debug=1 then Affiche('Fin création fenetre configTCO',clLime);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormConfigTCO.TrackBarEpaisseurChange(Sender: TObject);
|
procedure TFormConfigTCO.TrackBarEpaisseurChange(Sender: TObject);
|
||||||
|
|||||||
+21
-21
@@ -110,14 +110,14 @@ var
|
|||||||
EtatFeuPilote : word;
|
EtatFeuPilote : word;
|
||||||
AdrPilote : integer;
|
AdrPilote : integer;
|
||||||
|
|
||||||
procedure dessine_feu_pilote;
|
procedure dessine_signal_pilote;
|
||||||
procedure couleurs_pilote;
|
procedure couleurs_pilote;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
procedure dessine_feu_pilote;
|
procedure dessine_signal_pilote;
|
||||||
var i,ancienEtat : integer;
|
var i,ancienEtat : integer;
|
||||||
Vcanvas : Tcanvas;
|
Vcanvas : Tcanvas;
|
||||||
begin
|
begin
|
||||||
@@ -168,70 +168,70 @@ procedure TFormPilote.RadioVertClick(Sender: TObject);
|
|||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
if nation=1 then Maj_Etat_Signal(0,vert) else Maj_Etat_Signal(0,vertB) ;
|
if nation=1 then Maj_Etat_Signal(0,vert) else Maj_Etat_Signal(0,vertB) ;
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.RadioVertCliClick(Sender: TObject);
|
procedure TFormPilote.RadioVertCliClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
Maj_Etat_Signal(0,vert_cli);
|
Maj_Etat_Signal(0,vert_cli);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.RadioJauneClick(Sender: TObject);
|
procedure TFormPilote.RadioJauneClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
if nation=1 then Maj_Etat_Signal(0,jaune) else Maj_Etat_Signal(0,deux_jaunes);
|
if nation=1 then Maj_Etat_Signal(0,jaune) else Maj_Etat_Signal(0,deux_jaunes);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.RadioJaunecliClick(Sender: TObject);
|
procedure TFormPilote.RadioJaunecliClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
Maj_Etat_Signal(0,jaune_cli);
|
Maj_Etat_Signal(0,jaune_cli);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.RadioRougeClick(Sender: TObject);
|
procedure TFormPilote.RadioRougeClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
Maj_Etat_Signal(0,semaphore);
|
Maj_Etat_Signal(0,semaphore);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.RadioRougeCliClick(Sender: TObject);
|
procedure TFormPilote.RadioRougeCliClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
Maj_Etat_Signal(0,semaphore_cli);
|
Maj_Etat_Signal(0,semaphore_cli);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.RadioCarreClick(Sender: TObject);
|
procedure TFormPilote.RadioCarreClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
if nation=1 then Maj_Etat_Signal(0,carre) else Maj_Etat_Signal(0,vert_jaune_H);
|
if nation=1 then Maj_Etat_Signal(0,carre) else Maj_Etat_Signal(0,vert_jaune_H);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.RadioBlancClick(Sender: TObject);
|
procedure TFormPilote.RadioBlancClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
if nation=1 then Maj_Etat_Signal(0,blanc) else Maj_Etat_Signal(0,rouge_blanc);
|
if nation=1 then Maj_Etat_Signal(0,blanc) else Maj_Etat_Signal(0,rouge_blanc);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.RadioVioletClick(Sender: TObject);
|
procedure TFormPilote.RadioVioletClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
if nation=1 then Maj_Etat_Signal(0,violet) else Maj_Etat_Signal(0,vert_jaune_V);
|
if nation=1 then Maj_Etat_Signal(0,violet) else Maj_Etat_Signal(0,vert_jaune_V);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.RadioBlancCliClick(Sender: TObject);
|
procedure TFormPilote.RadioBlancCliClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
Maj_Etat_Signal(0,blanc_cli);
|
Maj_Etat_Signal(0,blanc_cli);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.FormClose(Sender: TObject; var Action: TCloseAction);
|
procedure TFormPilote.FormClose(Sender: TObject; var Action: TCloseAction);
|
||||||
@@ -244,7 +244,7 @@ procedure TFormPilote.RadioRalen30Click(Sender: TObject);
|
|||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
Maj_Etat_Signal(0,ral_30);
|
Maj_Etat_Signal(0,ral_30);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@@ -252,7 +252,7 @@ procedure TFormPilote.RadioRappel60Click(Sender: TObject);
|
|||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
Maj_Etat_Signal(0,rappel_60);
|
Maj_Etat_Signal(0,rappel_60);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@@ -260,14 +260,14 @@ procedure TFormPilote.RadioRalen60Click(Sender: TObject);
|
|||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
Maj_Etat_Signal(0,ral_60);
|
Maj_Etat_Signal(0,ral_60);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.RadioRappel30Click(Sender: TObject);
|
procedure TFormPilote.RadioRappel30Click(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
Signaux[0].AncienEtat:=Signaux[0].EtatSignal;
|
||||||
Maj_Etat_Signal(0,rappel_30);
|
Maj_Etat_Signal(0,rappel_30);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure couleurs_pilote;
|
procedure couleurs_pilote;
|
||||||
@@ -316,7 +316,7 @@ if ord(Key) = VK_RETURN then
|
|||||||
if (i>=0) and (i<=6) then
|
if (i>=0) and (i<=6) then
|
||||||
begin
|
begin
|
||||||
Signaux[0].EtatSignal:=i;
|
Signaux[0].EtatSignal:=i;
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
if (i<0) and (i>6) then EditNbreFeux.text:='1';
|
if (i<0) and (i>6) then EditNbreFeux.text:='1';
|
||||||
end
|
end
|
||||||
@@ -446,7 +446,7 @@ begin
|
|||||||
Maj_Etat_Signal(AdrPilote,carre);
|
Maj_Etat_Signal(AdrPilote,carre);
|
||||||
envoi_signal(Adrpilote);
|
envoi_signal(Adrpilote);
|
||||||
Maj_Etat_Signal(0,carre);
|
Maj_Etat_Signal(0,carre);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -458,19 +458,19 @@ end;
|
|||||||
procedure TFormPilote.CheckChiffreClick(Sender: TObject);
|
procedure TFormPilote.CheckChiffreClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if checkChiffre.Checked then Maj_Etat_Signal_belge(0,chiffre_F or bita1_F) else Maj_Etat_Signal_belge(0,chiffre_F);
|
if checkChiffre.Checked then Maj_Etat_Signal_belge(0,chiffre_F or bita1_F) else Maj_Etat_Signal_belge(0,chiffre_F);
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.CheckChevronClick(Sender: TObject);
|
procedure TFormPilote.CheckChevronClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if checkChevron.Checked then Maj_Etat_Signal(0,chevron_F or bita1_F) else Maj_Etat_Signal(0,chevron_F );
|
if checkChevron.Checked then Maj_Etat_Signal(0,chevron_F or bita1_F) else Maj_Etat_Signal(0,chevron_F );
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPilote.CheckClignoteClick(Sender: TObject);
|
procedure TFormPilote.CheckClignoteClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if checkclignote.Checked then Maj_Etat_Signal(0,clignote_F or bita1_F) else Maj_Etat_Signal(0,clignote_F );
|
if checkclignote.Checked then Maj_Etat_Signal(0,clignote_F or bita1_F) else Maj_Etat_Signal(0,clignote_F );
|
||||||
dessine_feu_pilote;
|
dessine_signal_pilote;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
|
|||||||
+6
-6
@@ -19,8 +19,8 @@ object FormPrinc: TFormPrinc
|
|||||||
OnCreate = FormCreate
|
OnCreate = FormCreate
|
||||||
OnResize = FormResize
|
OnResize = FormResize
|
||||||
DesignSize = (
|
DesignSize = (
|
||||||
1141
|
1133
|
||||||
638)
|
630)
|
||||||
PixelsPerInch = 96
|
PixelsPerInch = 96
|
||||||
TextHeight = 13
|
TextHeight = 13
|
||||||
object LabelTitre: TLabel
|
object LabelTitre: TLabel
|
||||||
@@ -1429,8 +1429,8 @@ object FormPrinc: TFormPrinc
|
|||||||
end
|
end
|
||||||
object StatusBar1: TStatusBar
|
object StatusBar1: TStatusBar
|
||||||
Left = 0
|
Left = 0
|
||||||
Top = 616
|
Top = 608
|
||||||
Width = 1141
|
Width = 1133
|
||||||
Height = 22
|
Height = 22
|
||||||
Panels = <
|
Panels = <
|
||||||
item
|
item
|
||||||
@@ -2466,8 +2466,8 @@ object FormPrinc: TFormPrinc
|
|||||||
OnClick = Coller1Click
|
OnClick = Coller1Click
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object PopupMenuFeu: TPopupMenu
|
object PopupMenuSignal: TPopupMenu
|
||||||
OnPopup = PopupMenuFeuPopup
|
OnPopup = PopupMenuSignalPopup
|
||||||
Left = 896
|
Left = 896
|
||||||
object Proprits1: TMenuItem
|
object Proprits1: TMenuItem
|
||||||
Caption = 'Propri'#233't'#233's du signal'
|
Caption = 'Propri'#233't'#233's du signal'
|
||||||
|
|||||||
+391
-397
File diff suppressed because it is too large.
Load diff
+2
-2
@@ -276,10 +276,10 @@ end;
|
|||||||
procedure Maj_DB;
|
procedure Maj_DB;
|
||||||
var s : string;
|
var s : string;
|
||||||
begin
|
begin
|
||||||
s:=encode_sig_feux(indexSig);
|
s:=encode_signal(indexSig);
|
||||||
formconfig.ListBoxSig.items[indexSig-1]:=s;
|
formconfig.ListBoxSig.items[indexSig-1]:=s;
|
||||||
formconfig.ListBoxSig.selected[ligneClicSig]:=true;
|
formconfig.ListBoxSig.selected[ligneClicSig]:=true;
|
||||||
aff_champs_sig_feux(indexSig);
|
aff_champs_signaux(indexSig);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormSR.ComboBoxAdr1Change(Sender: TObject);
|
procedure TFormSR.ComboBoxAdr1Change(Sender: TObject);
|
||||||
|
|||||||
+4
-4
@@ -8791,7 +8791,7 @@ end;
|
|||||||
procedure TFormTCO.FormCreate(Sender: TObject);
|
procedure TFormTCO.FormCreate(Sender: TObject);
|
||||||
var s : string;
|
var s : string;
|
||||||
begin
|
begin
|
||||||
if affevt or (debug=1) then Affiche('FormTCO'+intToSTR(indexTCOCreate)+' create',clyellow);
|
if affevt or (debug=1) then Affiche('FormTCO'+intToSTR(indexTCOCreate)+' create',clLime);
|
||||||
//Screen.OnActiveControlChange := ActiveControlChanged;
|
//Screen.OnActiveControlChange := ActiveControlChanged;
|
||||||
offsetSourisY:=-10; // permet de tenir l'icone au milieu quand on fait un glisser
|
offsetSourisY:=-10; // permet de tenir l'icone au milieu quand on fait un glisser
|
||||||
offsetSourisX:=-10;
|
offsetSourisX:=-10;
|
||||||
@@ -13772,7 +13772,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormTCO.LigneDessousClick(Sender: TObject);
|
procedure TFormTCO.LigneDessousClick(Sender: TObject);
|
||||||
var x,y,indexTCO : integer;
|
var indexTCO : integer;
|
||||||
c : tcomponent;
|
c : tcomponent;
|
||||||
begin
|
begin
|
||||||
c:=popupmenu1.PopupComponent ; // imageTCO
|
c:=popupmenu1.PopupComponent ; // imageTCO
|
||||||
@@ -13824,8 +13824,8 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormTCO.Colonnedroite1Click(Sender: TObject);
|
procedure TFormTCO.Colonnedroite1Click(Sender: TObject);
|
||||||
var x,y,indexTCO : integer;
|
var indexTCO : integer;
|
||||||
c : tcomponent;
|
c : tcomponent;
|
||||||
begin
|
begin
|
||||||
c:=popupmenu1.PopupComponent ; // imageTCO
|
c:=popupmenu1.PopupComponent ; // imageTCO
|
||||||
c:=c.GetParentComponent; // scrollBox
|
c:=c.GetParentComponent; // scrollBox
|
||||||
|
|||||||
+11
-10
@@ -230,9 +230,8 @@ begin
|
|||||||
begin
|
begin
|
||||||
affiche_tco(1);
|
affiche_tco(1);
|
||||||
end;
|
end;
|
||||||
maj_feux(true);
|
Maj_Signaux(true);
|
||||||
maj_feux(true);
|
Maj_Signaux(true);
|
||||||
maj_feux(true);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPlace.Edit1Change(Sender: TObject);
|
procedure TFormPlace.Edit1Change(Sender: TObject);
|
||||||
@@ -343,7 +342,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPlace.ButtonLanceRoutageClick(Sender: TObject);
|
procedure TFormPlace.ButtonLanceRoutageClick(Sender: TObject);
|
||||||
var a,i,j,id,adrDet,AdrTrain,AdrFeu : integer;
|
var a,i,j,id,adrDet,AdrTrain,AdrSignal : integer;
|
||||||
trouve,rouge : boolean;
|
trouve,rouge : boolean;
|
||||||
var s: string;
|
var s: string;
|
||||||
begin
|
begin
|
||||||
@@ -365,12 +364,12 @@ begin
|
|||||||
roulage:=true;
|
roulage:=true;
|
||||||
avecResa:=false; // pour adrTrain ou NumTrain
|
avecResa:=false; // pour adrTrain ou NumTrain
|
||||||
AdrTrain:=detecteur[AdrDet].AdrTrain;
|
AdrTrain:=detecteur[AdrDet].AdrTrain;
|
||||||
AdrFeu:=signal_detecteur(AdrDet); // trouve l'adresse du signal correspondant au détecteur
|
AdrSignal:=signal_detecteur(AdrDet); // trouve l'adresse du signal correspondant au détecteur
|
||||||
|
|
||||||
// si il y a un signal sur le détecteur de démarrage du train est il au rouge?
|
// si il y a un signal sur le détecteur de démarrage du train est il au rouge?
|
||||||
if adrFeu<>0 then
|
if AdrSignal<>0 then
|
||||||
begin
|
begin
|
||||||
id:=index_Signal(AdrFeu);
|
id:=index_Signal(AdrSignal);
|
||||||
a:=Signaux[id].EtatSignal;
|
a:=Signaux[id].EtatSignal;
|
||||||
if ((a=semaphore_F) or (a=carre_F) or (a=violet_F)) then rouge:=true;
|
if ((a=semaphore_F) or (a=carre_F) or (a=violet_F)) then rouge:=true;
|
||||||
end;
|
end;
|
||||||
@@ -380,21 +379,21 @@ begin
|
|||||||
j:=index_train_adresse(AdrTrain);
|
j:=index_train_adresse(AdrTrain);
|
||||||
vitesse_loco('',adrTrain,j,trains[j].VitNominale,not(placement[j].inverse),true);
|
vitesse_loco('',adrTrain,j,trains[j].VitNominale,not(placement[j].inverse),true);
|
||||||
|
|
||||||
maj_feux(true); // avec détecteurs
|
Maj_Signaux(true); // avec détecteurs
|
||||||
s:='Lancement du train '+detecteur[adrDet].train+' depuis détecteur '+intToSTR(adrDet);
|
s:='Lancement du train '+detecteur[adrDet].train+' depuis détecteur '+intToSTR(adrDet);
|
||||||
Affiche(s,clYellow);
|
Affiche(s,clYellow);
|
||||||
if traceListe then AfficheDebug(s,clyellow);
|
if traceListe then AfficheDebug(s,clyellow);
|
||||||
reserve_canton(AdrDet,placement[j].detdir,adrtrain,0,2);
|
reserve_canton(AdrDet,placement[j].detdir,adrtrain,0,2);
|
||||||
|
|
||||||
end
|
end
|
||||||
Else Affiche('Le signal '+intToSTR(AdrFeu)+' étant rouge, le train '+detecteur[adrDet].train+' @'+intToSTR(AdrTrain)+' ne démarre pas',clyellow);
|
Else Affiche('Le signal '+intToSTR(AdrSignal)+' étant rouge, le train '+detecteur[adrDet].train+' @'+intToSTR(AdrTrain)+' ne démarre pas',clyellow);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// au moins un train démarre
|
// au moins un train démarre
|
||||||
if trouve then
|
if trouve then
|
||||||
begin
|
begin
|
||||||
Maj_feux(true);
|
Maj_Signaux(true);
|
||||||
Formprinc.LabelTitre.caption:=titre+' - Mode roulage en cours';
|
Formprinc.LabelTitre.caption:=titre+' - Mode roulage en cours';
|
||||||
with Formprinc.SBMarcheArretLoco do
|
with Formprinc.SBMarcheArretLoco do
|
||||||
begin
|
begin
|
||||||
@@ -550,8 +549,10 @@ procedure TFormPlace.FormCreate(Sender: TObject);
|
|||||||
var c : tcomponent;
|
var c : tcomponent;
|
||||||
i : integer;
|
i : integer;
|
||||||
begin
|
begin
|
||||||
|
if debug=1 then Affiche('Début création fenetre Place',clLime);
|
||||||
PlaceAffiche:=true;
|
PlaceAffiche:=true;
|
||||||
couleurs_place;
|
couleurs_place;
|
||||||
|
if debug=1 then Affiche('Fin création fenetre Place',clLime);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPlace.BitBtn1Click(Sender: TObject);
|
procedure TFormPlace.BitBtn1Click(Sender: TObject);
|
||||||
|
|||||||
+1
-1
@@ -25,7 +25,7 @@ var
|
|||||||
verifVersion,notificationVersion : boolean;
|
verifVersion,notificationVersion : boolean;
|
||||||
date_creation,nombre_tel : string;
|
date_creation,nombre_tel : string;
|
||||||
|
|
||||||
Const Version='8.36'; // sert à la comparaison de la version publiée
|
Const Version='8.37'; // sert à la comparaison de la version publiée
|
||||||
SousVersion=' '; // A B C ... en cas d'absence de sous version mettre un espace
|
SousVersion=' '; // A B C ... en cas d'absence de sous version mettre un espace
|
||||||
|
|
||||||
function GetCurrentProcessEnvVar(const VariableName: string): string;
|
function GetCurrentProcessEnvVar(const VariableName: string): string;
|
||||||
|
|||||||
+2
-1
@@ -221,4 +221,5 @@ version 8.35 : Correction ajout de signaux et d'aiguillages.
|
|||||||
Amélioration de l'édition des TJD.
|
Amélioration de l'édition des TJD.
|
||||||
version 8.36 : Création d'un mode de fond sombre modifiable pour l'affichage.
|
version 8.36 : Création d'un mode de fond sombre modifiable pour l'affichage.
|
||||||
Amélioration édition des lignes et colonnes du TCO.
|
Amélioration édition des lignes et colonnes du TCO.
|
||||||
|
version 8.37 : Correction des calculs des index des aiguillages et des signaux lors de leur suppression.
|
||||||
|
Correction présence trains avant signal.
|
||||||
Reference in new issue
Block a user