V5.3
This commit is contained in:
209
Unitplace.pas
209
Unitplace.pas
@@ -30,6 +30,20 @@ type
|
||||
ButtonLanceRoutage: TButton;
|
||||
Button1: TButton;
|
||||
ButtonArretroutage: TButton;
|
||||
CheckInverse1: TCheckBox;
|
||||
CheckInverse2: TCheckBox;
|
||||
CheckInverse3: TCheckBox;
|
||||
CheckInverse4: TCheckBox;
|
||||
CheckInverse5: TCheckBox;
|
||||
CheckInverse6: TCheckBox;
|
||||
EditDir1: TEdit;
|
||||
Label4: TLabel;
|
||||
EditDir2: TEdit;
|
||||
EditDir3: TEdit;
|
||||
EditDir4: TEdit;
|
||||
EditDir5: TEdit;
|
||||
EditDir6: TEdit;
|
||||
Label5: TLabel;
|
||||
procedure ButtonfermeClick(Sender: TObject);
|
||||
procedure ButtonInitAigClick(Sender: TObject);
|
||||
procedure FormActivate(Sender: TObject);
|
||||
@@ -45,6 +59,18 @@ type
|
||||
procedure FormKeyPress(Sender: TObject; var Key: Char);
|
||||
procedure ButtonLanceRoutageClick(Sender: TObject);
|
||||
procedure ButtonArretroutageClick(Sender: TObject);
|
||||
procedure CheckInverse1Click(Sender: TObject);
|
||||
procedure CheckInverse2Click(Sender: TObject);
|
||||
procedure CheckInverse3Click(Sender: TObject);
|
||||
procedure CheckInverse4Click(Sender: TObject);
|
||||
procedure CheckInverse5Click(Sender: TObject);
|
||||
procedure CheckInverse6Click(Sender: TObject);
|
||||
procedure EditDir1Change(Sender: TObject);
|
||||
procedure EditDir2Change(Sender: TObject);
|
||||
procedure EditDir3Change(Sender: TObject);
|
||||
procedure EditDir4Change(Sender: TObject);
|
||||
procedure EditDir5Change(Sender: TObject);
|
||||
procedure EditDir6Change(Sender: TObject);
|
||||
private
|
||||
{ Déclarations privées }
|
||||
public
|
||||
@@ -78,24 +104,35 @@ begin
|
||||
end;
|
||||
|
||||
procedure TFormPlace.FormActivate(Sender: TObject);
|
||||
var i : integer;
|
||||
begin
|
||||
LabelTrain1.Caption:=trains[1].nom_train;
|
||||
Edit1.text:=intToSTR(placement[1].detecteur);
|
||||
EditDir1.Text:=IntToSTR(placement[1].detdir);
|
||||
CheckInverse1.Checked:=placement[1].inverse;
|
||||
LabelTrain2.Caption:=trains[2].nom_train;
|
||||
EditDir2.Text:=IntToSTR(placement[2].detdir);
|
||||
CheckInverse2.Checked:=placement[2].inverse;
|
||||
Edit2.text:=intToSTR(placement[2].detecteur);
|
||||
CheckInverse3.Checked:=placement[3].inverse;
|
||||
EditDir3.Text:=IntToSTR(placement[3].detdir);
|
||||
LabelTrain3.Caption:=trains[3].nom_train;
|
||||
Edit3.text:=intToSTR(placement[3].detecteur);
|
||||
LabelTrain4.Caption:=trains[4].nom_train;
|
||||
EditDir4.Text:=IntToSTR(placement[4].detdir);
|
||||
Edit4.text:=intToSTR(placement[4].detecteur);
|
||||
CheckInverse4.Checked:=placement[4].inverse;
|
||||
LabelTrain5.Caption:=trains[5].nom_train;
|
||||
EditDir5.Text:=IntToSTR(placement[5].detdir);
|
||||
Edit5.text:=intToSTR(placement[5].detecteur);
|
||||
CheckInverse5.Checked:=placement[5].inverse;
|
||||
LabelTrain6.Caption:=trains[6].nom_train;
|
||||
EditDir6.Text:=IntToSTR(placement[6].detdir);
|
||||
Edit6.text:=intToSTR(placement[6].detecteur);
|
||||
CheckInverse6.Checked:=placement[6].inverse;
|
||||
end;
|
||||
|
||||
procedure TFormPlace.ButtonPlaceClick(Sender: TObject);
|
||||
var detect,erreur : integer;
|
||||
var suiv,detect,erreur : integer;
|
||||
s : string;
|
||||
begin
|
||||
if cdm_connecte then
|
||||
@@ -104,6 +141,12 @@ begin
|
||||
exit;
|
||||
end;
|
||||
|
||||
for detect:=1 to NbMemZone do
|
||||
begin
|
||||
detecteur[detect].train:='';
|
||||
detecteur[detect].AdrTrain:=0;
|
||||
end;
|
||||
|
||||
s:=edit1.Text;
|
||||
if s<>'' then
|
||||
begin
|
||||
@@ -113,7 +156,7 @@ begin
|
||||
begin
|
||||
detecteur[detect].adrTrain:=trains[1].adresse;
|
||||
event_detecteur(detect,true,trains[1].nom_train);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir1.Text,clLime);
|
||||
end
|
||||
else
|
||||
begin
|
||||
@@ -132,7 +175,7 @@ begin
|
||||
begin
|
||||
detecteur[detect].adrTrain:=trains[2].adresse;
|
||||
event_detecteur(detect,true,trains[2].nom_train);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir2.Text,clLime);
|
||||
end
|
||||
else
|
||||
begin
|
||||
@@ -151,7 +194,7 @@ begin
|
||||
begin
|
||||
detecteur[detect].adrTrain:=trains[3].adresse;
|
||||
event_detecteur(detect,true,trains[3].nom_train);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir3.Text,clLime);
|
||||
end
|
||||
else
|
||||
begin
|
||||
@@ -168,15 +211,20 @@ begin
|
||||
if (erreur<>0) or (detect>NbMemZone )then LabelTexte.caption:='Erreur détecteur train 4';
|
||||
if detect<>0 then
|
||||
begin
|
||||
detecteur[detect].adrTrain:=trains[4].adresse;
|
||||
event_detecteur(detect,true,trains[4].nom_train);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
|
||||
end
|
||||
else
|
||||
begin
|
||||
detecteur[detect].etat:=false;
|
||||
detecteur[detect].train:='';
|
||||
detecteur[detect].adrTrain:=0;
|
||||
det_adj(detect);
|
||||
val(editDir4.Text,Suiv,erreur);
|
||||
if detect<>0 then
|
||||
begin
|
||||
detecteur[detect].adrTrain:=trains[4].adresse;
|
||||
event_detecteur(detect,true,trains[4].nom_train);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir4.Text,clLime);
|
||||
end
|
||||
else
|
||||
begin
|
||||
detecteur[detect].etat:=false;
|
||||
detecteur[detect].train:='';
|
||||
detecteur[detect].adrTrain:=0;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
@@ -189,7 +237,7 @@ begin
|
||||
begin
|
||||
detecteur[detect].adrTrain:=trains[5].adresse;
|
||||
event_detecteur(detect,true,trains[5].nom_train);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir5.Text,clLime);
|
||||
end
|
||||
else
|
||||
begin
|
||||
@@ -208,7 +256,7 @@ begin
|
||||
begin
|
||||
detecteur[detect].adrTrain:=trains[6].adresse;
|
||||
event_detecteur(detect,true,trains[6].nom_train);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect),clLime);
|
||||
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+EditDir6.Text,clLime);
|
||||
end
|
||||
else
|
||||
begin
|
||||
@@ -221,6 +269,7 @@ begin
|
||||
begin
|
||||
affiche_tco;
|
||||
end;
|
||||
|
||||
end;
|
||||
|
||||
procedure TFormPlace.Edit1Change(Sender: TObject);
|
||||
@@ -349,10 +398,19 @@ begin
|
||||
Affiche('Lancement du train '+detecteur[adrDet].train+' depuis détecteur '+intToSTR(adrDet),clYellow);
|
||||
AdrTrain:=detecteur[AdrDet].AdrTrain;
|
||||
j:=index_train_adresse(AdrTrain);
|
||||
vitesse_loco('',adrTrain,trains[j].VitNominale,true);
|
||||
vitesse_loco('',adrTrain,trains[j].VitNominale,not(placement[j].inverse));
|
||||
trouve:=true;
|
||||
roulage:=true;
|
||||
maj_feux;
|
||||
reserve_canton(AdrDet,placement[j].detdir,adrtrain);
|
||||
|
||||
end;
|
||||
end;
|
||||
if trouve then
|
||||
begin
|
||||
Maj_feux;
|
||||
Formprinc.LabelTitre.caption:=titre+' - Mode roulage en cours';
|
||||
end;
|
||||
if not(trouve) then Affiche('Pas de train placé',clOrange);
|
||||
end;
|
||||
|
||||
@@ -361,8 +419,125 @@ var i : integer;
|
||||
begin
|
||||
roulage:=false;
|
||||
Affiche('Arrêt du roulage de tous les trains',clorange);
|
||||
Formprinc.LabelTitre.caption:=titre+' ';
|
||||
for i:=1 to ntrains do
|
||||
vitesse_loco('',trains[i].adresse,0,true);
|
||||
end;
|
||||
|
||||
procedure TFormPlace.CheckInverse1Click(Sender: TObject);
|
||||
begin
|
||||
placement[1].inverse:=CheckInverse1.Checked;
|
||||
end;
|
||||
|
||||
procedure TFormPlace.CheckInverse2Click(Sender: TObject);
|
||||
begin
|
||||
placement[2].inverse:=CheckInverse2.Checked;
|
||||
end;
|
||||
|
||||
procedure TFormPlace.CheckInverse3Click(Sender: TObject);
|
||||
begin
|
||||
placement[3].inverse:=CheckInverse3.Checked;
|
||||
end;
|
||||
|
||||
procedure TFormPlace.CheckInverse4Click(Sender: TObject);
|
||||
begin
|
||||
placement[4].inverse:=CheckInverse4.Checked;
|
||||
end;
|
||||
|
||||
procedure TFormPlace.CheckInverse5Click(Sender: TObject);
|
||||
begin
|
||||
placement[5].inverse:=CheckInverse4.Checked;
|
||||
end;
|
||||
|
||||
procedure TFormPlace.CheckInverse6Click(Sender: TObject);
|
||||
begin
|
||||
placement[6].inverse:=CheckInverse6.Checked;
|
||||
end;
|
||||
|
||||
procedure TFormPlace.EditDir1Change(Sender: TObject);
|
||||
var i,erreur : integer;
|
||||
begin
|
||||
val(editDir1.Text,i,erreur);
|
||||
if erreur<>0 then exit;
|
||||
if index_adresse_detecteur(i)=0 then
|
||||
begin
|
||||
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
|
||||
exit;
|
||||
end;
|
||||
labelTexte.caption:='';
|
||||
placement[1].detdir:=i;
|
||||
end;
|
||||
|
||||
procedure TFormPlace.EditDir2Change(Sender: TObject);
|
||||
var i,erreur : integer;
|
||||
begin
|
||||
val(editDir2.Text,i,erreur);
|
||||
if erreur<>0 then exit;
|
||||
if index_adresse_detecteur(i)=0 then
|
||||
begin
|
||||
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
|
||||
exit;
|
||||
end;
|
||||
labelTexte.caption:='';
|
||||
placement[2].detdir:=i;
|
||||
end;
|
||||
|
||||
procedure TFormPlace.EditDir3Change(Sender: TObject);
|
||||
var i,erreur : integer;
|
||||
begin
|
||||
val(editDir3.Text,i,erreur);
|
||||
if erreur<>0 then exit;
|
||||
if index_adresse_detecteur(i)=0 then
|
||||
begin
|
||||
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
|
||||
exit;
|
||||
end;
|
||||
labelTexte.caption:='';
|
||||
placement[3].detdir:=i;
|
||||
end;
|
||||
|
||||
|
||||
|
||||
procedure TFormPlace.EditDir4Change(Sender: TObject);
|
||||
var i,erreur : integer;
|
||||
begin
|
||||
val(editDir4.Text,i,erreur);
|
||||
if erreur<>0 then exit;
|
||||
if index_adresse_detecteur(i)=0 then
|
||||
begin
|
||||
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
|
||||
exit;
|
||||
end;
|
||||
labelTexte.caption:='';
|
||||
placement[4].detdir:=i;
|
||||
end;
|
||||
|
||||
procedure TFormPlace.EditDir5Change(Sender: TObject);
|
||||
var i,erreur : integer;
|
||||
begin
|
||||
val(editDir5.Text,i,erreur);
|
||||
if erreur<>0 then exit;
|
||||
if index_adresse_detecteur(i)=0 then
|
||||
begin
|
||||
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
|
||||
exit;
|
||||
end;
|
||||
labelTexte.caption:='';
|
||||
placement[5].detdir:=i;
|
||||
end;
|
||||
|
||||
procedure TFormPlace.EditDir6Change(Sender: TObject);
|
||||
var i,erreur : integer;
|
||||
begin
|
||||
val(editDir6.Text,i,erreur);
|
||||
if erreur<>0 then exit;
|
||||
if index_adresse_detecteur(i)=0 then
|
||||
begin
|
||||
LabelTexte.caption:='Détecteur '+intToSTR(i)+' inexistant';
|
||||
exit;
|
||||
end;
|
||||
labelTexte.caption:='';
|
||||
placement[6].detdir:=i;
|
||||
end;
|
||||
|
||||
end.
|
||||
|
||||
Reference in New Issue
Block a user