V10.71
This commit is contained in:
BIN
Binary file not shown.
+37
-26
@@ -1573,7 +1573,7 @@ object FormConfig: TFormConfig
|
||||
Top = 8
|
||||
Width = 633
|
||||
Height = 505
|
||||
ActivePage = TabSheetAutonome
|
||||
ActivePage = TabSheetActions
|
||||
Font.Charset = DEFAULT_CHARSET
|
||||
Font.Color = clBlack
|
||||
Font.Height = -11
|
||||
@@ -2098,7 +2098,7 @@ object FormConfig: TFormConfig
|
||||
'S'#233'lection du style d'#39#39'affichage - Le style sera chang'#233' '#224' la ferm' +
|
||||
'eture de la fen'#234'tre'#39
|
||||
Style = csDropDownList
|
||||
ItemHeight = 13
|
||||
ItemHeight = 0
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
TabOrder = 0
|
||||
@@ -3340,7 +3340,7 @@ object FormConfig: TFormConfig
|
||||
Width = 137
|
||||
Height = 21
|
||||
Style = csDropDownList
|
||||
ItemHeight = 13
|
||||
ItemHeight = 0
|
||||
TabOrder = 1
|
||||
OnChange = ComboBoxDecChange
|
||||
end
|
||||
@@ -3471,7 +3471,7 @@ object FormConfig: TFormConfig
|
||||
Width = 137
|
||||
Height = 21
|
||||
Style = csDropDownList
|
||||
ItemHeight = 13
|
||||
ItemHeight = 0
|
||||
TabOrder = 2
|
||||
OnChange = ComboBoxAspChange
|
||||
end
|
||||
@@ -3779,7 +3779,7 @@ object FormConfig: TFormConfig
|
||||
Top = 56
|
||||
Width = 193
|
||||
Height = 21
|
||||
ItemHeight = 13
|
||||
ItemHeight = 0
|
||||
TabOrder = 0
|
||||
OnChange = ComboBoxDecodeurPersoChange
|
||||
end
|
||||
@@ -3798,7 +3798,7 @@ object FormConfig: TFormConfig
|
||||
Width = 145
|
||||
Height = 21
|
||||
Style = csDropDownList
|
||||
ItemHeight = 13
|
||||
ItemHeight = 0
|
||||
TabOrder = 2
|
||||
OnChange = ComboBoxNationChange
|
||||
end
|
||||
@@ -3844,7 +3844,7 @@ object FormConfig: TFormConfig
|
||||
Width = 193
|
||||
Height = 21
|
||||
Style = csDropDownList
|
||||
ItemHeight = 13
|
||||
ItemHeight = 0
|
||||
TabOrder = 6
|
||||
OnChange = ComboBoxDecCdeChange
|
||||
end
|
||||
@@ -4057,7 +4057,7 @@ object FormConfig: TFormConfig
|
||||
Top = 96
|
||||
Width = 137
|
||||
Height = 21
|
||||
ItemHeight = 13
|
||||
ItemHeight = 0
|
||||
TabOrder = 2
|
||||
OnChange = ComboBoxOperateurChange
|
||||
OnDrawItem = ComboBoxOperateurDrawItem
|
||||
@@ -4077,7 +4077,7 @@ object FormConfig: TFormConfig
|
||||
Top = 96
|
||||
Width = 161
|
||||
Height = 21
|
||||
ItemHeight = 13
|
||||
ItemHeight = 0
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
TabOrder = 4
|
||||
@@ -4147,8 +4147,8 @@ object FormConfig: TFormConfig
|
||||
OnChange = LabeledEditTrainChange
|
||||
end
|
||||
object RadioGroupOP: TRadioGroup
|
||||
Left = 48
|
||||
Top = 32
|
||||
Left = 72
|
||||
Top = 24
|
||||
Width = 89
|
||||
Height = 57
|
||||
Caption = 'Op'#233'rateur'
|
||||
@@ -4159,6 +4159,17 @@ object FormConfig: TFormConfig
|
||||
TabOrder = 4
|
||||
OnClick = RadioGroupOPClick
|
||||
end
|
||||
object LabeledEditZone: TLabeledEdit
|
||||
Left = 16
|
||||
Top = 44
|
||||
Width = 41
|
||||
Height = 21
|
||||
EditLabel.Width = 25
|
||||
EditLabel.Height = 13
|
||||
EditLabel.Caption = 'Zone'
|
||||
TabOrder = 5
|
||||
OnChange = LabeledEditZoneChange
|
||||
end
|
||||
end
|
||||
object ButtonSupLog: TButton
|
||||
Left = 288
|
||||
@@ -4178,7 +4189,7 @@ object FormConfig: TFormConfig
|
||||
Width = 145
|
||||
Height = 21
|
||||
Style = csDropDownList
|
||||
ItemHeight = 13
|
||||
ItemHeight = 0
|
||||
TabOrder = 7
|
||||
OnChange = ComboBoxFLChange
|
||||
end
|
||||
@@ -4728,7 +4739,7 @@ object FormConfig: TFormConfig
|
||||
Height = 21
|
||||
Hint = 'Nom de l'#39'accessoire d'#233'fini dans l'#39'onglet "p'#233'riph'#233'riques COM/USB"'
|
||||
Style = csDropDownList
|
||||
ItemHeight = 13
|
||||
ItemHeight = 0
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
TabOrder = 10
|
||||
@@ -6455,7 +6466,7 @@ object FormConfig: TFormConfig
|
||||
Width = 153
|
||||
Height = 21
|
||||
Style = csDropDownList
|
||||
ItemHeight = 13
|
||||
ItemHeight = 0
|
||||
TabOrder = 0
|
||||
OnChange = ComboBoxUSBTrChange
|
||||
end
|
||||
@@ -6635,7 +6646,7 @@ object FormConfig: TFormConfig
|
||||
Left = 664
|
||||
Top = 72
|
||||
Bitmap = {
|
||||
494C010109000E00040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
|
||||
494C01010A000E00040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
|
||||
0000000000003600000028000000400000004000000001002000000000000040
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
@@ -6791,17 +6802,17 @@ object FormConfig: TFormConfig
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000FF000000
|
||||
FF000000FF000000FF000000FF0000000000000000000000FF000000FF000000
|
||||
FF000000FF000000FF0000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000FF000000
|
||||
FF000000FF000000FF000000FF0000000000000000000000FF000000FF000000
|
||||
FF000000FF000000FF0000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
@@ -7155,11 +7166,11 @@ object FormConfig: TFormConfig
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000FFFF000000000000742E000000000000
|
||||
75EE000000000000546A00000000000025E4000000000000742E000000000000
|
||||
FFFF000000000000FFFF00000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000FFFF000000000000FB4700000000
|
||||
00000000000000000000000000000000FFFFFFFF00000000742EFFFF00000000
|
||||
75EEFFFF00000000546AC1830000000025E4C18300000000742EFFFF00000000
|
||||
FFFFFFFF00000000FFFFB6DB0000000000000000000000000000B6DB00000000
|
||||
00000000000000000000B6DB000000000000FFFF000000000000FFFF00000000
|
||||
0000FFFF000000000000FFFF000000000000FFFF000000000000FB4700000000
|
||||
0000F56F000000000000F56F000000000000F54F000000000000FB6F00000000
|
||||
0000FFFF00000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
|
||||
+113
-22
@@ -510,6 +510,7 @@ type
|
||||
Label83: TLabel;
|
||||
Label84: TLabel;
|
||||
LabelTitreTrain: TLabel;
|
||||
LabeledEditZone: TLabeledEdit;
|
||||
procedure ButtonAppliquerEtFermerClick(Sender: TObject);
|
||||
procedure FormCreate(Sender: TObject);
|
||||
procedure ListBoxAigMouseDown(Sender: TObject; Button: TMouseButton;
|
||||
@@ -808,6 +809,7 @@ type
|
||||
procedure LabeledEditVit1Change(Sender: TObject);
|
||||
procedure LabeledEditVit2Change(Sender: TObject);
|
||||
procedure LabeledEditVit3Change(Sender: TObject);
|
||||
procedure LabeledEditZoneChange(Sender: TObject);
|
||||
|
||||
private
|
||||
{ Déclarations privées }
|
||||
@@ -964,6 +966,7 @@ EtatDCC=5;
|
||||
EtatDet=6;
|
||||
EtatBoutonTCO=7;
|
||||
EtatMemoire=8;
|
||||
EtatZone=9;
|
||||
NomVAR='Fonction logique';
|
||||
NomOpET='Opérateur ET';
|
||||
NomOpOU='Opérateur OU';
|
||||
@@ -973,7 +976,8 @@ NomEtatDCC='Etat DCC';
|
||||
NomEtatDet='Etat détect./actionn.';
|
||||
NomEtatBoutonTCO='Bouton TCO';
|
||||
NomEtatMemoire='Mémoire';
|
||||
NomFonc : array[0..8] of string[25]=(NomVar,NomOpET,NomOpOu,NomOpNonET,NomOpNonOU,NomEtatDCC,NomEtatDet,NomEtatBoutonTCO,NomEtatMemoire);
|
||||
NomEtatZone='Zone';
|
||||
NomFonc : array[0..9] of string[25]=(NomVar,NomOpET,NomOpOu,NomOpNonET,NomOpNonOU,NomEtatDCC,NomEtatDet,NomEtatBoutonTCO,NomEtatMemoire,NomEtatZone);
|
||||
|
||||
|
||||
var
|
||||
@@ -2632,7 +2636,9 @@ begin
|
||||
s:=intToSTR(i)+','+nomfonc[fonction[j,i].typ]+',';
|
||||
s:=s+'N'+intToSTR(fonction[j,i].niveau)+',';
|
||||
s:=s+'T'+intToSTR(fonction[j,i].typ)+',';
|
||||
s:=s+'A'+intToSTR(fonction[j,i].adresse)+',';
|
||||
s:=s+'A'+intToSTR(fonction[j,i].adresse);
|
||||
if fonction[j,i].typ=EtatZone then s:=s+'-'+intToSTR(fonction[j,i].adresse2);
|
||||
s:=s+',';
|
||||
s:=s+'E'+intToSTR(fonction[j,i].etat)+',';
|
||||
s:=s+'V'+','+fonction[j,i].train+',';
|
||||
s:=s+'O'+intToSTR(fonction[j,i].OpMemoire)+',';
|
||||
@@ -2954,14 +2960,16 @@ begin
|
||||
result:=c;
|
||||
end;
|
||||
|
||||
// renvoie vrai si typ est un opérateur
|
||||
function isOperateur(typ : integer): boolean;
|
||||
begin
|
||||
result:=(typ>=OpET) and (typ<=OpNonOu);
|
||||
end;
|
||||
|
||||
// renvoie vrai si typ est une variable
|
||||
function isVariable(typ : integer): boolean;
|
||||
begin
|
||||
result:=(typ>=EtatDCC) and (typ<=EtatMemoire);
|
||||
result:=(typ>=EtatDCC) and (typ<=EtatZone);
|
||||
end;
|
||||
|
||||
// donne le texte à mettre dans le tree view en fonction de l'index de fonction[]
|
||||
@@ -3015,6 +3023,10 @@ begin
|
||||
end;
|
||||
s:=s+intToSTR(fonction[fonc,i].etat);
|
||||
end;
|
||||
if typ=EtatZone then
|
||||
begin
|
||||
s:=s+fonction[fonc,i].train+' '+intToSTR(fonction[fonc,i].adresse)+' '+intToSTR(fonction[fonc,i].adresse2)+' '+intToSTR(fonction[fonc,i].etat);
|
||||
end;
|
||||
end;
|
||||
result:=s;
|
||||
end;
|
||||
@@ -3042,10 +3054,14 @@ begin
|
||||
else s:=s+' inconnu ';
|
||||
end;
|
||||
end;
|
||||
if typ=EtatDet then
|
||||
if (typ=EtatDet) then
|
||||
begin
|
||||
s:=s+intToSTR(fonction[fonc,i].adresse)+' '+intToSTR(fonction[fonc,i].etat);
|
||||
end;
|
||||
if (typ=EtatZone) then
|
||||
begin
|
||||
s:=s+intToSTR(fonction[fonc,i].adresse)+' '+intToSTR(fonction[fonc,i].adresse2)+' '+intToSTR(fonction[fonc,i].etat);
|
||||
end;
|
||||
if typ=EtatBoutonTCO then
|
||||
begin
|
||||
s:=s+'Bt'+intToSTR(fonction[fonc,i].adresse)+' '+intToSTR(fonction[fonc,i].etat);
|
||||
@@ -4913,24 +4929,33 @@ const LessThanValue=-1;
|
||||
Fonction[NbreFL+1,i].niveau:=v;
|
||||
Delete(s,1,erreur);
|
||||
|
||||
Delete(s,1,1); // supprime T
|
||||
Delete(s,1,1); // supprime T (type)
|
||||
val(s,v,erreur);
|
||||
delete(s,1,erreur);
|
||||
erreur:=CompareValue(versR,9.7,0.01);
|
||||
if (erreur=LessThanValue) or (erreur=EqualsValue) then
|
||||
begin
|
||||
if (v>=4) then inc(v);
|
||||
end;
|
||||
Fonction[NbreFL+1,i].typ:=v;
|
||||
//erreur:=CompareValue(versR,9.7,0.01);
|
||||
//if (erreur=LessThanValue) or (erreur=EqualsValue) then
|
||||
//begin
|
||||
// if (v>=4) then inc(v);
|
||||
//end;
|
||||
Fonction[NbreFL+1,i].typ:=v; // type
|
||||
inc(idOperateur);
|
||||
ArbreFonc[idOperateur,0]:=i;
|
||||
|
||||
Delete(s,1,1); // supprime A
|
||||
Delete(s,1,1); // supprime A (adresse)
|
||||
val(s,v,erreur);
|
||||
delete(s,1,erreur);
|
||||
Fonction[NbreFL+1,i].adresse:=v;
|
||||
|
||||
Delete(s,1,1); // supprime E
|
||||
Fonction[NbreFL+1,i].adresse:=v;
|
||||
delete(s,1,erreur-1);
|
||||
if s[1]='-' then // si adresse 2 pour mémoire de zone
|
||||
begin
|
||||
delete(s,1,1);
|
||||
val(s,v,erreur);
|
||||
Fonction[NbreFL+1,i].adresse2:=v;
|
||||
delete(s,1,erreur-1);
|
||||
end;
|
||||
delete(s,1,1); // supprime ,
|
||||
|
||||
Delete(s,1,1); // supprime E (état)
|
||||
val(s,v,erreur);
|
||||
delete(s,1,erreur);
|
||||
Fonction[NbreFL+1,i].etat:=v;
|
||||
@@ -8552,10 +8577,9 @@ begin
|
||||
items.add(NomEtatDet);
|
||||
items.add(NomEtatBoutonTCO);
|
||||
items.add(NomEtatMemoire);
|
||||
items.Add(NomEtatZone);
|
||||
end;
|
||||
|
||||
|
||||
|
||||
// actionneurs PN
|
||||
ListBoxPN.Clear;
|
||||
longestLength:=0;
|
||||
@@ -16576,6 +16600,7 @@ var i,io,j,decl :integer;
|
||||
s : string;
|
||||
begin
|
||||
// remplir la listbox en fonction des opérations de l'action cliquée
|
||||
//Affiche('Affiche_action',clYellow);
|
||||
with FormConfig.ListBoxOperations do
|
||||
begin
|
||||
clear;
|
||||
@@ -16590,11 +16615,14 @@ begin
|
||||
else
|
||||
begin
|
||||
io:=Tablo_Action[ligneclicAct+1].tabloOp[i].numoperation;
|
||||
affecte_operation(io,formConfig.ListBoxOperations);
|
||||
s:=affecte_operation(io);
|
||||
if ligneclicAct>0 then if not(Tablo_Action[ligneclicact+1].tabloOp[i].valide) then s:=s+sd;
|
||||
formConfig.ListBoxOperations.Items.Add(s);
|
||||
end;
|
||||
itemHeight:=16;
|
||||
end;
|
||||
end;
|
||||
Application.ProcessMessages;
|
||||
|
||||
formConfig.RichEditInfo.clear;
|
||||
decl:=Tablo_Action[ligneclicAct+1].declencheur;
|
||||
@@ -17897,7 +17925,7 @@ begin
|
||||
exit;
|
||||
end;
|
||||
end;
|
||||
if (ComboBoxVar.ItemIndex=EtatMemoire-EtatDCC) then
|
||||
if (ComboBoxVar.ItemIndex=EtatZone-EtatDCC) then
|
||||
begin
|
||||
end;
|
||||
labelInfo.Caption:='';
|
||||
@@ -17931,6 +17959,31 @@ begin
|
||||
node.Text:=s;
|
||||
end;
|
||||
|
||||
procedure TFormConfig.LabeledEditZoneChange(Sender: TObject);
|
||||
var node : tTreenode;
|
||||
i,v,erreur : integer;
|
||||
s : string;
|
||||
begin
|
||||
if clicTree then exit;
|
||||
|
||||
node:=TreeViewL.Selected;
|
||||
if node=nil then exit;
|
||||
i:=node.AbsoluteIndex;
|
||||
|
||||
config_modifie:=true;
|
||||
val(LabeledEditZone.text,v,erreur);
|
||||
if v<1 then
|
||||
begin
|
||||
labelInfo.Caption:='Erreur';
|
||||
exit;
|
||||
end;
|
||||
labelInfo.Caption:='';
|
||||
fonction[foncCourante,i].adresse2:=v;
|
||||
s:=texte_tv(foncCourante,i);
|
||||
node.Text:=s;
|
||||
|
||||
end;
|
||||
|
||||
|
||||
procedure TformConfig.outdployer1Click(Sender: TObject);
|
||||
begin
|
||||
@@ -17959,6 +18012,7 @@ begin
|
||||
LabelEtat.Visible:=true;
|
||||
SpinEditEtat.Visible:=true;
|
||||
RadioGroupOP.Visible:=false;
|
||||
LabeledEditZone.Visible:=false;
|
||||
LabeledEditEtatACC.Visible:=false;
|
||||
LabeledEditTrain.visible:=false;
|
||||
PanelAcc.Visible:=true;
|
||||
@@ -17968,12 +18022,13 @@ begin
|
||||
LabeledEditDCC.text:=intToSTR(fonction[foncCourante,iNode].adresse);
|
||||
end;
|
||||
|
||||
if i=EtatDet then // actionneur détecteur
|
||||
if (i=EtatDet) then // actionneur détecteur
|
||||
begin
|
||||
RadioGroupOP.Visible:=false;
|
||||
LabelEtat.Visible:=false;
|
||||
LabeledEditTrain.visible:=true;
|
||||
SpinEditEtat.Visible:=false;
|
||||
LabeledEditZone.Visible:=false;
|
||||
LabeledEditEtatACC.Visible:=true;
|
||||
LabeledEditDcc.EditLabel.Caption:='Adresse';
|
||||
LabeledEditTrain.Text:=fonction[foncCourante,iNode].train;
|
||||
@@ -17981,6 +18036,21 @@ begin
|
||||
LabeledEditDCC.text:=intToSTR(fonction[foncCourante,iNode].adresse);
|
||||
end;
|
||||
|
||||
if (i=EtatZone) then // zone
|
||||
begin
|
||||
RadioGroupOP.Visible:=false;
|
||||
LabelEtat.Visible:=false;
|
||||
LabeledEditTrain.visible:=true;
|
||||
SpinEditEtat.Visible:=false;
|
||||
LabeledEditZone.Visible:=true;
|
||||
LabeledEditEtatACC.Visible:=true;
|
||||
LabeledEditDcc.EditLabel.Caption:='Adresse';
|
||||
LabeledEditTrain.Text:=fonction[foncCourante,iNode].train;
|
||||
LabeledEditEtatAcc.Text:=intToSTR(fonction[foncCourante,iNode].etat);
|
||||
LabeledEditDCC.text:=intToSTR(fonction[foncCourante,iNode].adresse);
|
||||
LabeledEditZone.text:=intToSTR(fonction[foncCourante,iNode].adresse2);
|
||||
end;
|
||||
|
||||
if i=EtatBoutonTCO then
|
||||
begin
|
||||
RadioGroupOP.Visible:=false;
|
||||
@@ -17989,6 +18059,7 @@ begin
|
||||
LabeledEditEtatACC.Visible:=true;
|
||||
LabeledEditTrain.visible:=false;
|
||||
PanelAcc.Visible:=true;
|
||||
LabeledEditZone.Visible:=false;
|
||||
LabeledEditDCC.Visible:=true;
|
||||
LabeledEditDcc.EditLabel.Caption:='Numéro de bouton';
|
||||
LabeledEditDCC.Text:=intToSTR(fonction[foncCourante,iNode].adresse);
|
||||
@@ -18004,6 +18075,7 @@ begin
|
||||
top:=8;
|
||||
end;
|
||||
LabeledEditDCC.Visible:=true;
|
||||
LabeledEditZone.Visible:=false;
|
||||
LabeledEditDcc.EditLabel.Caption:='Numéro de mémoire';
|
||||
LabeledEditTrain.visible:=false;
|
||||
LabeledEditEtatACC.Visible:=true;
|
||||
@@ -18545,7 +18617,7 @@ begin
|
||||
end;
|
||||
|
||||
Function Etat_variable(k,i : integer): boolean ;
|
||||
var pos,j,typ,adr : integer;
|
||||
var pos,j,typ,adr,adr2 : integer;
|
||||
resultat : boolean;
|
||||
train : string;
|
||||
begin
|
||||
@@ -18560,6 +18632,7 @@ begin
|
||||
exit;
|
||||
end;
|
||||
|
||||
|
||||
if typ=EtatDet then // si état détecteur / actionneur
|
||||
begin
|
||||
resultat:=detecteur[adr].Etat=(fonction[k,i].etat=1);
|
||||
@@ -18591,6 +18664,22 @@ begin
|
||||
end;
|
||||
exit;
|
||||
end;
|
||||
|
||||
if typ=EtatZone then // si Zone
|
||||
begin
|
||||
adr2:=fonction[k,i].adresse2;
|
||||
resultat:=MemZone[adr,adr2].Etat=(fonction[k,i].etat=1);
|
||||
// ajouter ici si on teste un train sur détecteur
|
||||
train:=fonction[k,i].train;
|
||||
if train<>'' then
|
||||
begin
|
||||
//Affiche('Eval45 '+intToSTR(adr)+' '+Train,clwhite);
|
||||
if detecteur[adr].Train<>train then resultat:=false;
|
||||
end;
|
||||
result:=resultat;
|
||||
exit;
|
||||
end;
|
||||
|
||||
end;
|
||||
|
||||
// donne le suivant de même niveau de même index précédent
|
||||
@@ -18992,7 +19081,7 @@ begin
|
||||
|
||||
config_modifie:=true;
|
||||
|
||||
if (ComboBoxVar.ItemIndex=EtatMemoire-EtatDCC) then
|
||||
if (ComboBoxVar.ItemIndex=EtatZone-EtatDCC) then
|
||||
begin
|
||||
fonction[foncCourante,i].opMemoire:=RadioGroupOP.ItemIndex;
|
||||
s:=texte_tv(foncCourante,i);
|
||||
@@ -19651,6 +19740,8 @@ end;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
end.
|
||||
|
||||
|
||||
|
||||
+11
-10
@@ -4,7 +4,7 @@ object FormMemZone: TFormMemZone
|
||||
BorderStyle = bsDialog
|
||||
Caption = 'Activer / d'#233'sactiver des m'#233'moires de zone'
|
||||
ClientHeight = 173
|
||||
ClientWidth = 370
|
||||
ClientWidth = 405
|
||||
Color = clBtnFace
|
||||
Font.Charset = DEFAULT_CHARSET
|
||||
Font.Color = clWindowText
|
||||
@@ -19,15 +19,16 @@ object FormMemZone: TFormMemZone
|
||||
TextHeight = 13
|
||||
object Label1: TLabel
|
||||
Left = 24
|
||||
Top = 8
|
||||
Top = 0
|
||||
Width = 329
|
||||
Height = 33
|
||||
Height = 39
|
||||
Caption =
|
||||
'Les m'#233'moires de zone sont constitu'#233'es de deux d'#233'tecteurs contigu' +
|
||||
's'
|
||||
's. Si les deux d'#233'tecteurs sont s'#233'par'#233's par un ou des aiguillage(' +
|
||||
's), il doit '#234'tre correctement positionn'#233
|
||||
Font.Charset = DEFAULT_CHARSET
|
||||
Font.Color = clWindowText
|
||||
Font.Height = -13
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
Font.Style = []
|
||||
ParentFont = False
|
||||
@@ -40,28 +41,28 @@ object FormMemZone: TFormMemZone
|
||||
Height = 13
|
||||
end
|
||||
object Shape1: TShape
|
||||
Left = 216
|
||||
Left = 240
|
||||
Top = 88
|
||||
Width = 137
|
||||
Height = 9
|
||||
Brush.Color = clBlue
|
||||
end
|
||||
object Shape2: TShape
|
||||
Left = 232
|
||||
Left = 256
|
||||
Top = 83
|
||||
Width = 25
|
||||
Height = 20
|
||||
Brush.Color = clRed
|
||||
end
|
||||
object Shape3: TShape
|
||||
Left = 312
|
||||
Left = 336
|
||||
Top = 83
|
||||
Width = 25
|
||||
Height = 20
|
||||
Brush.Color = clRed
|
||||
end
|
||||
object Label2: TLabel
|
||||
Left = 225
|
||||
Left = 249
|
||||
Top = 56
|
||||
Width = 35
|
||||
Height = 19
|
||||
@@ -74,7 +75,7 @@ object FormMemZone: TFormMemZone
|
||||
ParentFont = False
|
||||
end
|
||||
object Label3: TLabel
|
||||
Left = 304
|
||||
Left = 328
|
||||
Top = 56
|
||||
Width = 35
|
||||
Height = 19
|
||||
|
||||
+7
-7
@@ -78,7 +78,6 @@ end;
|
||||
|
||||
function valide_det : boolean;
|
||||
var erreur : integer;
|
||||
elsuiv : tEquipement;
|
||||
begin
|
||||
result:=false;
|
||||
val(FormMemZone.labeledEditDet1.text,det1Z,erreur);
|
||||
@@ -93,15 +92,16 @@ begin
|
||||
end;
|
||||
|
||||
val(FormMemZone.labeledEditDet2.text,det2Z,erreur);
|
||||
det_contigu(det1Z,det2Z,suivant,ElSuiv);
|
||||
|
||||
if suivant=0 then
|
||||
Det_Adj(det1Z); // renvoie les adresses des détecteurs adjacents au détecteur "det1Zrésultat dans adj1 et adj2
|
||||
if (adj1=det2Z) or (adj2=det2Z) then
|
||||
begin
|
||||
FormMemZone.LabelInfo.Caption:='Les détecteurs '+intToSTR(det1Z)+' / '+intToSTR(det2Z)+' ne sont pas contigus';
|
||||
result:=true;
|
||||
FormMemZone.LabelInfo.caption:='';
|
||||
exit;
|
||||
end;
|
||||
FormMemZone.LabelInfo.caption:='';
|
||||
result:=true;
|
||||
|
||||
FormMemZone.LabelInfo.Caption:='Les détecteurs '+intToSTR(det1Z)+' / '+intToSTR(det2Z)+' ne sont pas contigus';
|
||||
result:=false;
|
||||
end;
|
||||
|
||||
procedure TFormMemZone.ButtonActClick(Sender: TObject);
|
||||
|
||||
+3
-3
@@ -1,6 +1,6 @@
|
||||
object FormModifAction: TFormModifAction
|
||||
Left = 395
|
||||
Top = 166
|
||||
Left = 542
|
||||
Top = 189
|
||||
BorderStyle = bsDialog
|
||||
Caption = 'Modifier une action'
|
||||
ClientHeight = 443
|
||||
@@ -60,7 +60,7 @@ object FormModifAction: TFormModifAction
|
||||
Top = 64
|
||||
Width = 729
|
||||
Height = 337
|
||||
ActivePage = TabSheetDecl
|
||||
ActivePage = TabSheetOp
|
||||
MultiLine = True
|
||||
TabOrder = 1
|
||||
object TabSheetDecl: TTabSheet
|
||||
|
||||
+30
-19
@@ -154,7 +154,7 @@ var
|
||||
ClicDeclenche,ClicAction,ClicCond,DeclencheurAffiche,OperationAffiche : integer;
|
||||
|
||||
function Info_action(i : integer) : string;
|
||||
procedure affecte_operation(i : integer;t: TListBox);
|
||||
function affecte_operation(i : integer) : string;
|
||||
|
||||
implementation
|
||||
|
||||
@@ -219,21 +219,25 @@ begin
|
||||
end;
|
||||
|
||||
// ajoute à la listbox t une ligne avec son icone opérations[]
|
||||
// i numéro d'opération
|
||||
procedure affecte_operation(i : integer;t : tListBox);
|
||||
// i numéro d'opération dans le ytableau operations
|
||||
function affecte_operation(i : integer) : string;
|
||||
var s : string;
|
||||
io : integer;
|
||||
begin
|
||||
s:=operations[i].nom;
|
||||
if ligneclicAct>0 then if not(Tablo_Action[ligneclicact+1].tabloOp[i].valide) then s:=s+sd;
|
||||
if i<ActionBoutonTCO then t.Items.Add(Format('%d%s', [i-1, s])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
if i=ActionBoutonTCO then t.Items.Add(Format('%d%s', [IconeBouton, s])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
if i=ActionAffecteMemoire then t.Items.Add(Format('%d%s', [IconeActionAffecteMemoire, s])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
if i=ActionIncMemoire then t.Items.Add(Format('%d%s', [IconeActionIncMemoire, s])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
if i=ActionDecMemoire then t.Items.Add(Format('%d%s', [IconeActionDecMemoire, s])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
//if ligneClicAct>=0 then io:=Tablo_Action[ligneclicAct+1].tabloOp[i].numoperation else io:=0;
|
||||
s:='';
|
||||
if i<ActionBoutonTCO then s:=(Format('%d%s', [i-1, s])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
if i=ActionBoutonTCO then s:=(Format('%d%s', [IconeBouton, s])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
if i=ActionAffecteMemoire then s:=(Format('%d%s', [IconeActionAffecteMemoire, s])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
if i=ActionIncMemoire then s:=(Format('%d%s', [IconeActionIncMemoire, s])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
if i=ActionDecMemoire then s:=(Format('%d%s', [IconeActionDecMemoire, s])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
s:=s+operations[i].nom;
|
||||
result:=s;
|
||||
end;
|
||||
|
||||
procedure TFormModifAction.FormCreate(Sender: TObject);
|
||||
var i,icone : integer;
|
||||
s : string;
|
||||
begin
|
||||
ListBoxOper.Style:=lbOwnerDrawVariable; // pour afficher des icones
|
||||
ListBoxDeclench.Style:=lbOwnerDrawVariable;
|
||||
@@ -262,7 +266,8 @@ begin
|
||||
|
||||
for i:=1 to NbreOperations do
|
||||
begin
|
||||
affecte_operation(i,formModifAction.ListBoxOper);
|
||||
s:=affecte_operation(i);
|
||||
formModifAction.ListBoxOper.Items.add(s);
|
||||
ListBoxOper.itemHeight:=16; // 16 mini taille des éléments pour l'icone
|
||||
end;
|
||||
|
||||
@@ -376,8 +381,9 @@ begin
|
||||
begin
|
||||
if (operations[i].famille=famille) or (famille=0) then
|
||||
begin
|
||||
s:=operations[i].nom;
|
||||
affecte_operation(i,formModifAction.ListBoxOper);
|
||||
//s:=operations[i].nom;
|
||||
s:=affecte_operation(i);
|
||||
formModifAction.ListBoxOper.items.Add(s);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
@@ -718,7 +724,7 @@ begin
|
||||
if not(Tablo_Action[index].tabloOp[i].valide) then s:=s+' [dévalidé]';
|
||||
if act<1 then icone:=0 else icone:=act-1;
|
||||
|
||||
// listbox de la formmodifAction
|
||||
// listboxOperations de la formmodifAction
|
||||
if act<=ActionTempo then items.Add(Format('%d%s', [icone, s])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
if act=ActionBoutonTCO then items.Add(Format('%d%s', [iconeBouton, s]));
|
||||
if act=ActionAffecteMemoire then items.Add(Format('%d%s', [iconeActionAffecteMemoire, s]));
|
||||
@@ -728,6 +734,9 @@ begin
|
||||
// listboxOperations de la formConfig
|
||||
if act<=ActionTempo then formConfig.ListBoxOperations.Items.add(Format('%d%s', [act-1, s]));
|
||||
if act=ActionBoutonTCO then formConfig.ListBoxOperations.items.Add(Format('%d%s', [IconeBouton, s]));
|
||||
if act=ActionAffecteMemoire then formConfig.ListBoxOperations.items.Add(Format('%d%s', [iconeActionAffecteMemoire, s]));
|
||||
if act=ActionIncMemoire then formConfig.ListBoxOperations.items.Add(Format('%d%s', [iconeActionIncMemoire, s]));
|
||||
if act=ActionDecMemoire then formConfig.ListBoxOperations.items.Add(Format('%d%s', [iconeActionDecMemoire, s]));
|
||||
|
||||
itemHeight:=16;
|
||||
end;
|
||||
@@ -1083,16 +1092,17 @@ procedure TFormModifAction.FormActivate(Sender: TObject);
|
||||
var i : integer;
|
||||
s : string;
|
||||
begin
|
||||
|
||||
ComboBoxActions.Clear;
|
||||
for i:=1 to maxTablo_act do
|
||||
begin
|
||||
s:=encode_actions(i);
|
||||
if s<>'' then ComboBoxActions.Items.Add(s);
|
||||
end;
|
||||
|
||||
//ligneclicACt:=0;
|
||||
ComboBoxActions.ItemIndex:=ligneclicAct;
|
||||
LabelDecl.Caption:='Déclencheur de l''action n°'+intToSTR(ComboBoxactions.ItemIndex+1);
|
||||
|
||||
Aff_champs(ligneclicAct+1,ClicCond+1,ClicAction+1);
|
||||
|
||||
if OperationAffiche<>0 then
|
||||
@@ -1226,8 +1236,8 @@ begin
|
||||
for i:=1 to Tablo_Action[idBD].NbOperations do
|
||||
begin
|
||||
no:=Tablo_Action[idBD].tabloOp[i].numoperation;
|
||||
//items.Add(Format('%d%s', [no-1, operations[no].nom])); // valeur d'index de l'icone dans la ImagelistIcones
|
||||
affecte_operation(no,ListBoxOperations);
|
||||
s:=affecte_operation(no);
|
||||
ListBoxOperations.Items.add(s);
|
||||
itemHeight:=16;
|
||||
end;
|
||||
ItemIndex:=indexSrc-1;
|
||||
@@ -1264,7 +1274,8 @@ begin
|
||||
for i:=1 to Tablo_Action[idBD].NbOperations do
|
||||
begin
|
||||
no:=Tablo_Action[idBD].tabloOp[i].numoperation;
|
||||
affecte_operation(no,ListBoxOperations);
|
||||
s:=affecte_operation(no);
|
||||
ListBoxOperations.Items.Add(s);
|
||||
itemHeight:=16;
|
||||
end;
|
||||
|
||||
@@ -1536,7 +1547,7 @@ begin
|
||||
if not(Tablo_Action[ligneclicact+1].tabloOp[clicaction+1].valide) then s:=s+sd;
|
||||
|
||||
listBoxOperations.Items[clicaction]:=s;
|
||||
formconfig.ListBoxOperations.items[clicaction]:=s; //encode_actions(ligneclicAct+1);
|
||||
if formconfig.ListBoxOperations.Count>=clicaction then formconfig.ListBoxOperations.items[clicaction]:=s; //encode_actions(ligneclicAct+1);
|
||||
|
||||
maj_combocactions(ligneclicAct);
|
||||
end;
|
||||
|
||||
+4
-4
@@ -778,7 +778,7 @@ Tfonction =
|
||||
record
|
||||
typ : integer; // opOU, EtatDCC, EtatDet ... etc
|
||||
Indexprec : integer ; // index du niveau précédent d'origine (parent)
|
||||
adresse,etat : integer; // adresse : l'indice 0 contient le nombre d'éléments
|
||||
adresse,adresse2,etat : integer; // adresse : l'indice 0 contient le nombre d'éléments
|
||||
OpMemoire : integer; // opérateur "mémoire" : 0=égal 1=> 2=<
|
||||
niveau : integer; // niveau : l'indice 0 contient le numéro de fonction modifiable
|
||||
traite : boolean;
|
||||
@@ -21552,7 +21552,7 @@ begin
|
||||
procetape('Lecture de la configuration');
|
||||
lit_config;
|
||||
|
||||
clientInfo.Open; // se connecte au serveur SC et envoie les infos
|
||||
clientInfo.Open; // &&& se connecte au serveur SC et envoie les infos
|
||||
|
||||
{$IF CompilerVersion >= 28.0}
|
||||
//https://docwiki.embarcadero.com/RADStudio/Alexandria/en/Compiler_Versions
|
||||
@@ -28149,8 +28149,8 @@ end;
|
||||
procedure TFormPrinc.ButtonEssaiClick(Sender: TObject);
|
||||
var i : integer;
|
||||
begin
|
||||
maj_route(515);
|
||||
// aiguillage[5].AdrTrain:=3;
|
||||
i:=Tablo_Action[1].tabloOp[10].numoperation;
|
||||
Affiche(intToSTR(i),clYellow);
|
||||
end;
|
||||
|
||||
procedure TFormPrinc.TrackBarZCChange(Sender: TObject);
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ var
|
||||
f : textFile;
|
||||
|
||||
Const
|
||||
VersionSC = '10.7'; // sert à la comparaison de la version publiée
|
||||
VersionSC = '10.71'; // sert à la comparaison de la version publiée
|
||||
SousVersion=' '; // A B C ... en cas d'absence de sous version mettre un espace
|
||||
// pour unzip
|
||||
SHCONTCH_NOPROGRESSBOX=4;
|
||||
|
||||
@@ -341,6 +341,9 @@ version 10.6 : Modification pour l'affichage de la barre de zoom du TCO pour les
|
||||
version 10.7 : Affichage du compteur de train depuis le menu contextuel des cantons du tco.
|
||||
En roulage ou RUN CDM, suppression d'un train non suivi de la liste des trains en roulage.
|
||||
Correction désaffectation trains sur cantons.
|
||||
version 10.71 : Ajout dans les variables des fonctions les mémoires de zone.
|
||||
Correction bug activation mémoires de zone dans le menu du TCO.
|
||||
Correction bug affichage des opérations dans les actions.
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user