V6.0
This commit is contained in:
Binary file not shown.
+108
-17
@@ -1,8 +1,6 @@
|
|||||||
object FormAnalyseCDM: TFormAnalyseCDM
|
object FormAnalyseCDM: TFormAnalyseCDM
|
||||||
Left = 216
|
Left = 154
|
||||||
Top = 23
|
Top = 36
|
||||||
Hint = '(aiguillages uniquement)'
|
|
||||||
Anchors = [akLeft, akTop, akRight, akBottom]
|
|
||||||
AutoScroll = False
|
AutoScroll = False
|
||||||
Caption = 'FormAnalyseCDM'
|
Caption = 'FormAnalyseCDM'
|
||||||
ClientHeight = 660
|
ClientHeight = 660
|
||||||
@@ -14,7 +12,6 @@ object FormAnalyseCDM: TFormAnalyseCDM
|
|||||||
Font.Name = 'MS Sans Serif'
|
Font.Name = 'MS Sans Serif'
|
||||||
Font.Style = []
|
Font.Style = []
|
||||||
OldCreateOrder = False
|
OldCreateOrder = False
|
||||||
ShowHint = True
|
|
||||||
OnCreate = FormCreate
|
OnCreate = FormCreate
|
||||||
OnResize = FormResize
|
OnResize = FormResize
|
||||||
DesignSize = (
|
DesignSize = (
|
||||||
@@ -26,7 +23,7 @@ object FormAnalyseCDM: TFormAnalyseCDM
|
|||||||
Left = 8
|
Left = 8
|
||||||
Top = 16
|
Top = 16
|
||||||
Width = 977
|
Width = 977
|
||||||
Height = 553
|
Height = 537
|
||||||
HorzScrollBar.Tracking = True
|
HorzScrollBar.Tracking = True
|
||||||
Anchors = [akLeft, akTop, akRight, akBottom]
|
Anchors = [akLeft, akTop, akRight, akBottom]
|
||||||
AutoScroll = False
|
AutoScroll = False
|
||||||
@@ -42,15 +39,15 @@ object FormAnalyseCDM: TFormAnalyseCDM
|
|||||||
end
|
end
|
||||||
object GroupBox1: TGroupBox
|
object GroupBox1: TGroupBox
|
||||||
Left = 16
|
Left = 16
|
||||||
Top = 576
|
Top = 560
|
||||||
Width = 457
|
Width = 257
|
||||||
Height = 73
|
Height = 89
|
||||||
Anchors = [akLeft, akBottom]
|
Anchors = [akLeft, akBottom]
|
||||||
Caption = 'Affichages '
|
Caption = 'Affichages '
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
object Label1: TLabel
|
object Label1: TLabel
|
||||||
Left = 216
|
Left = 24
|
||||||
Top = 16
|
Top = 56
|
||||||
Width = 81
|
Width = 81
|
||||||
Height = 13
|
Height = 13
|
||||||
Caption = 'Afficher le port n'#176
|
Caption = 'Afficher le port n'#176
|
||||||
@@ -60,7 +57,10 @@ object FormAnalyseCDM: TFormAnalyseCDM
|
|||||||
Top = 16
|
Top = 16
|
||||||
Width = 97
|
Width = 97
|
||||||
Height = 17
|
Height = 17
|
||||||
|
Hint = 'Points de connexions des ports des d'#233'tecteurs et des actionneurs'
|
||||||
Caption = 'Connexions'
|
Caption = 'Connexions'
|
||||||
|
ParentShowHint = False
|
||||||
|
ShowHint = True
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
OnClick = CheckConnexionsClick
|
OnClick = CheckConnexionsClick
|
||||||
end
|
end
|
||||||
@@ -69,7 +69,10 @@ object FormAnalyseCDM: TFormAnalyseCDM
|
|||||||
Top = 32
|
Top = 32
|
||||||
Width = 97
|
Width = 97
|
||||||
Height = 17
|
Height = 17
|
||||||
|
Hint = 'Adresses des d'#233'tecteurs et actionneurs'
|
||||||
Caption = 'Adresses'
|
Caption = 'Adresses'
|
||||||
|
ParentShowHint = False
|
||||||
|
ShowHint = True
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
OnClick = CheckAdressesClick
|
OnClick = CheckAdressesClick
|
||||||
end
|
end
|
||||||
@@ -77,7 +80,7 @@ object FormAnalyseCDM: TFormAnalyseCDM
|
|||||||
Left = 112
|
Left = 112
|
||||||
Top = 16
|
Top = 16
|
||||||
Width = 81
|
Width = 81
|
||||||
Height = 17
|
Height = 25
|
||||||
Caption = 'segments'
|
Caption = 'segments'
|
||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
OnClick = CheckSegmentsClick
|
OnClick = CheckSegmentsClick
|
||||||
@@ -87,20 +90,23 @@ object FormAnalyseCDM: TFormAnalyseCDM
|
|||||||
Top = 32
|
Top = 32
|
||||||
Width = 121
|
Width = 121
|
||||||
Height = 17
|
Height = 17
|
||||||
|
Hint = 'Affiche le num'#233'ro de segment et le port de CDM'
|
||||||
Caption = 'Ports'
|
Caption = 'Ports'
|
||||||
|
ParentShowHint = False
|
||||||
|
ShowHint = True
|
||||||
TabOrder = 3
|
TabOrder = 3
|
||||||
OnClick = CheckSegmentsClick
|
OnClick = CheckPortsClick
|
||||||
end
|
end
|
||||||
object EditPort: TEdit
|
object EditPort: TEdit
|
||||||
Left = 304
|
Left = 112
|
||||||
Top = 16
|
Top = 56
|
||||||
Width = 57
|
Width = 57
|
||||||
Height = 21
|
Height = 21
|
||||||
TabOrder = 4
|
TabOrder = 4
|
||||||
end
|
end
|
||||||
object ButtonAffPort: TButton
|
object ButtonAffPort: TButton
|
||||||
Left = 368
|
Left = 176
|
||||||
Top = 16
|
Top = 56
|
||||||
Width = 73
|
Width = 73
|
||||||
Height = 25
|
Height = 25
|
||||||
Caption = 'Afficher le port'
|
Caption = 'Afficher le port'
|
||||||
@@ -121,4 +127,89 @@ object FormAnalyseCDM: TFormAnalyseCDM
|
|||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
OnChange = TrackBar1Change
|
OnChange = TrackBar1Change
|
||||||
end
|
end
|
||||||
|
object GroupBox2: TGroupBox
|
||||||
|
Left = 280
|
||||||
|
Top = 560
|
||||||
|
Width = 145
|
||||||
|
Height = 89
|
||||||
|
Anchors = [akLeft, akBottom]
|
||||||
|
Caption = 'Strat'#233'gies d'#39'importation'
|
||||||
|
TabOrder = 3
|
||||||
|
object CheckDebugAnalyse: TCheckBox
|
||||||
|
Left = 16
|
||||||
|
Top = 24
|
||||||
|
Width = 121
|
||||||
|
Height = 17
|
||||||
|
Caption = 'Debug importation'
|
||||||
|
TabOrder = 0
|
||||||
|
OnClick = CheckDebugAnalyseClick
|
||||||
|
end
|
||||||
|
object CheckDebugBranches: TCheckBox
|
||||||
|
Left = 16
|
||||||
|
Top = 48
|
||||||
|
Width = 97
|
||||||
|
Height = 17
|
||||||
|
Caption = 'Debug branches'
|
||||||
|
TabOrder = 1
|
||||||
|
OnClick = CheckDebugBranchesClick
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object GroupBox3: TGroupBox
|
||||||
|
Left = 432
|
||||||
|
Top = 560
|
||||||
|
Width = 537
|
||||||
|
Height = 89
|
||||||
|
Anchors = [akLeft, akBottom]
|
||||||
|
Caption = 'Param'#232'tres'
|
||||||
|
TabOrder = 4
|
||||||
|
DesignSize = (
|
||||||
|
537
|
||||||
|
89)
|
||||||
|
object ButtonImporter: TButton
|
||||||
|
Left = 382
|
||||||
|
Top = 40
|
||||||
|
Width = 75
|
||||||
|
Height = 25
|
||||||
|
Hint = 'Lancement de l'#39'importation'
|
||||||
|
Anchors = [akLeft, akBottom]
|
||||||
|
Caption = 'Importer'
|
||||||
|
ParentShowHint = False
|
||||||
|
ShowHint = True
|
||||||
|
TabOrder = 0
|
||||||
|
OnClick = ButtonImporterClick
|
||||||
|
end
|
||||||
|
object RadioGroup1: TRadioGroup
|
||||||
|
Left = 8
|
||||||
|
Top = 24
|
||||||
|
Width = 305
|
||||||
|
Height = 57
|
||||||
|
Caption = 'Adressage des croisements'
|
||||||
|
TabOrder = 1
|
||||||
|
end
|
||||||
|
object RadioCroisSuite: TRadioButton
|
||||||
|
Left = 24
|
||||||
|
Top = 40
|
||||||
|
Width = 217
|
||||||
|
Height = 17
|
||||||
|
Caption = 'Croisements '#224' la suite des aiguillages'
|
||||||
|
TabOrder = 2
|
||||||
|
end
|
||||||
|
object RadioCroisBase: TRadioButton
|
||||||
|
Left = 24
|
||||||
|
Top = 56
|
||||||
|
Width = 217
|
||||||
|
Height = 17
|
||||||
|
Caption = 'Croisements '#224' partir de l'#39'adresse de base'
|
||||||
|
TabOrder = 3
|
||||||
|
end
|
||||||
|
object EditBaseCrois: TEdit
|
||||||
|
Left = 240
|
||||||
|
Top = 54
|
||||||
|
Width = 41
|
||||||
|
Height = 21
|
||||||
|
TabOrder = 4
|
||||||
|
Text = '100'
|
||||||
|
OnChange = EditBaseCroisChange
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
+1177
-165
File diff suppressed because it is too large
Load Diff
+15
-2
@@ -1571,7 +1571,7 @@ object FormConfig: TFormConfig
|
|||||||
Top = 8
|
Top = 8
|
||||||
Width = 633
|
Width = 633
|
||||||
Height = 505
|
Height = 505
|
||||||
ActivePage = TabSheetSig
|
ActivePage = TabSheetAig
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
Font.Color = clBlack
|
Font.Color = clBlack
|
||||||
Font.Height = -11
|
Font.Height = -11
|
||||||
@@ -2925,6 +2925,7 @@ object FormConfig: TFormConfig
|
|||||||
Lines.Strings = (
|
Lines.Strings = (
|
||||||
'RichBranche')
|
'RichBranche')
|
||||||
ParentFont = False
|
ParentFont = False
|
||||||
|
PopupMenu = PopupMenuConfig
|
||||||
ScrollBars = ssBoth
|
ScrollBars = ssBoth
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
WordWrap = False
|
WordWrap = False
|
||||||
@@ -3128,7 +3129,7 @@ object FormConfig: TFormConfig
|
|||||||
Width = 129
|
Width = 129
|
||||||
Height = 21
|
Height = 21
|
||||||
Style = csDropDownList
|
Style = csDropDownList
|
||||||
ItemHeight = 13
|
ItemHeight = 0
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
OnChange = ComboBoxDecChange
|
OnChange = ComboBoxDecChange
|
||||||
end
|
end
|
||||||
@@ -4836,4 +4837,16 @@ object FormConfig: TFormConfig
|
|||||||
Left = 668
|
Left = 668
|
||||||
Top = 468
|
Top = 468
|
||||||
end
|
end
|
||||||
|
object PopupMenuConfig: TPopupMenu
|
||||||
|
Left = 728
|
||||||
|
Top = 88
|
||||||
|
object Copier1: TMenuItem
|
||||||
|
Caption = 'Copier'
|
||||||
|
OnClick = Copier1Click
|
||||||
|
end
|
||||||
|
object Coller1: TMenuItem
|
||||||
|
Caption = 'Coller'
|
||||||
|
OnClick = Coller1Click
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
+66
-29
@@ -5,7 +5,8 @@ interface
|
|||||||
uses
|
uses
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
Dialogs, ExtCtrls, StdCtrls , jpeg, ComCtrls ,StrUtils, Unitprinc,
|
Dialogs, ExtCtrls, StdCtrls , jpeg, ComCtrls ,StrUtils, Unitprinc,
|
||||||
MMSystem, Buttons , UnitPareFeu, verif_version;
|
MMSystem, Buttons , UnitPareFeu, verif_version,
|
||||||
|
Menus;
|
||||||
|
|
||||||
type
|
type
|
||||||
TFormConfig = class(TForm)
|
TFormConfig = class(TForm)
|
||||||
@@ -333,6 +334,9 @@ type
|
|||||||
EditZdet1V5O: TEdit;
|
EditZdet1V5O: TEdit;
|
||||||
EditZdet2V5O: TEdit;
|
EditZdet2V5O: TEdit;
|
||||||
Label60: TLabel;
|
Label60: TLabel;
|
||||||
|
PopupMenuConfig: TPopupMenu;
|
||||||
|
Copier1: TMenuItem;
|
||||||
|
Coller1: TMenuItem;
|
||||||
procedure ButtonAppliquerEtFermerClick(Sender: TObject);
|
procedure ButtonAppliquerEtFermerClick(Sender: TObject);
|
||||||
procedure FormActivate(Sender: TObject);
|
procedure FormActivate(Sender: TObject);
|
||||||
procedure FormCreate(Sender: TObject);
|
procedure FormCreate(Sender: TObject);
|
||||||
@@ -489,6 +493,8 @@ type
|
|||||||
procedure EditZdet2V5OChange(Sender: TObject);
|
procedure EditZdet2V5OChange(Sender: TObject);
|
||||||
procedure EditLAYChange(Sender: TObject);
|
procedure EditLAYChange(Sender: TObject);
|
||||||
procedure EditLAYExit(Sender: TObject);
|
procedure EditLAYExit(Sender: TObject);
|
||||||
|
procedure Copier1Click(Sender: TObject);
|
||||||
|
procedure Coller1Click(Sender: TObject);
|
||||||
private
|
private
|
||||||
{ Déclarations privées }
|
{ Déclarations privées }
|
||||||
public
|
public
|
||||||
@@ -573,6 +579,8 @@ Procedure aff_champs_sig_feux(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_sig_feux(i : integer): string;
|
||||||
|
procedure valide_branches;
|
||||||
|
procedure trier_aig;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
@@ -2786,6 +2794,7 @@ begin
|
|||||||
begin
|
begin
|
||||||
trouve_section_aig:=true;
|
trouve_section_aig:=true;
|
||||||
compile_aiguillages;
|
compile_aiguillages;
|
||||||
|
trier_aig;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// section branche
|
// section branche
|
||||||
@@ -4679,6 +4688,7 @@ begin
|
|||||||
if index=0 then exit;
|
if index=0 then exit;
|
||||||
aiguillage[index].Adroit:=adr;
|
aiguillage[index].Adroit:=adr;
|
||||||
aiguillage[index].AdroitB:=B;
|
aiguillage[index].AdroitB:=B;
|
||||||
|
LabelInfo.caption:='Modification de la TJD homologe ('+IntToSTR(adr2)+')';
|
||||||
end;
|
end;
|
||||||
// TJD2
|
// TJD2
|
||||||
if aiguillage[index].EtatTJD=2 then
|
if aiguillage[index].EtatTJD=2 then
|
||||||
@@ -4689,7 +4699,6 @@ begin
|
|||||||
s:=encode_aig(index);
|
s:=encode_aig(index);
|
||||||
formconfig.RichAig.Lines[index-1]:=s;
|
formconfig.RichAig.Lines[index-1]:=s;
|
||||||
RE_ColorLine(Formconfig.RichAig,index-1,ClWhite);
|
RE_ColorLine(Formconfig.RichAig,index-1,ClWhite);
|
||||||
LabelInfo.caption:='Modification de la TJD homologe ('+IntToSTR(adr2)+')';
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if modele=crois then
|
if modele=crois then
|
||||||
@@ -6318,6 +6327,26 @@ begin
|
|||||||
config_modifie:=true;
|
config_modifie:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
// trie les aiguillages
|
||||||
|
procedure trier_aig;
|
||||||
|
var i,j : integer;
|
||||||
|
temp : TAiguillage;
|
||||||
|
begin
|
||||||
|
for i:=1 to MaxAiguillage do
|
||||||
|
begin
|
||||||
|
for j:=i+1 to MaxAiguillage do
|
||||||
|
begin
|
||||||
|
if aiguillage[i].Adresse>aiguillage[j].adresse then
|
||||||
|
begin
|
||||||
|
temp:=aiguillage[i];
|
||||||
|
aiguillage[i]:=aiguillage[j];
|
||||||
|
aiguillage[j]:=temp;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure supprime_act;
|
procedure supprime_act;
|
||||||
var i,debut,longueur,fin,ltot,lignedeb,lignefin,l : integer;
|
var i,debut,longueur,fin,ltot,lignedeb,lignefin,l : integer;
|
||||||
s: string;
|
s: string;
|
||||||
@@ -6811,7 +6840,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
adr:=aiguillage[Indexaig].Adroit;
|
adr:=aiguillage[Indexaig].Adroit;
|
||||||
if (aiguillage[Indexaig].AdroitB='Z') then
|
if (aiguillage[Indexaig].AdroitB='Z') or (aiguillage[Indexaig].AdroitB=#0) then
|
||||||
begin
|
begin
|
||||||
trouve_detecteur(adr);
|
trouve_detecteur(adr);
|
||||||
if IndexBranche_trouve=0 then
|
if IndexBranche_trouve=0 then
|
||||||
@@ -6821,7 +6850,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
adr:=aiguillage[Indexaig].Adevie;
|
adr:=aiguillage[Indexaig].Adevie;
|
||||||
if (aiguillage[Indexaig].AdevieB='Z') then
|
if (aiguillage[Indexaig].AdevieB='Z') or (aiguillage[Indexaig].AdevieB=#0) then
|
||||||
begin
|
begin
|
||||||
trouve_detecteur(adr);
|
trouve_detecteur(adr);
|
||||||
if IndexBranche_trouve=0 then
|
if IndexBranche_trouve=0 then
|
||||||
@@ -6831,7 +6860,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
adr:=aiguillage[Indexaig].Apointe;
|
adr:=aiguillage[Indexaig].Apointe;
|
||||||
if ((aiguillage[Indexaig].ApointeB='Z') and (aiguillage[Indexaig].modele=aig)) then
|
if ( ((aiguillage[Indexaig].ApointeB='Z') or (aiguillage[Indexaig].ApointeB=#0)) and (aiguillage[Indexaig].modele=aig) ) then
|
||||||
begin
|
begin
|
||||||
trouve_detecteur(adr);
|
trouve_detecteur(adr);
|
||||||
if IndexBranche_trouve=0 then
|
if IndexBranche_trouve=0 then
|
||||||
@@ -6842,7 +6871,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
if (aiguillage[Indexaig].modele=triple) then // aiguillage triple
|
if (aiguillage[Indexaig].modele=triple) then // aiguillage triple
|
||||||
begin
|
begin
|
||||||
if (aiguillage[Indexaig].Adevie2B='Z') then
|
if (aiguillage[Indexaig].Adevie2B='Z') or (aiguillage[Indexaig].Adevie2B=#0) then
|
||||||
begin
|
begin
|
||||||
adr:=aiguillage[Indexaig].Adevie2;
|
adr:=aiguillage[Indexaig].Adevie2;
|
||||||
trouve_detecteur(adr);
|
trouve_detecteur(adr);
|
||||||
@@ -7154,12 +7183,6 @@ begin
|
|||||||
if adr2=adr then affiche('Erreur 10.0 : la position droite de l''aiguillage '+intToSTR(adr)+' pointe sur elle même',clred);
|
if adr2=adr then affiche('Erreur 10.0 : la position droite de l''aiguillage '+intToSTR(adr)+' pointe sur elle même',clred);
|
||||||
index2:=Index_aig(adr2); // adresse de l'aiguillage connecté
|
index2:=Index_aig(adr2); // adresse de l'aiguillage connecté
|
||||||
model2:=aiguillage[index2].modele; // modèle de l'aiguillage connecté
|
model2:=aiguillage[index2].modele; // modèle de l'aiguillage connecté
|
||||||
if index2=0 then
|
|
||||||
begin
|
|
||||||
ok:=false;
|
|
||||||
Affiche('Erreur 10.20: aiguillage '+intToSTR(adr)+': déclaration d''un aiguillage '+IntToSTR(adr2)+' inexistant',clred);
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin
|
begin
|
||||||
// tjs ou tjs à 2 états ou croisement
|
// tjs ou tjs à 2 états ou croisement
|
||||||
if ( ((model2=tjs) or (model2=tjd)) and (aiguillage[index2].EtatTJD=2) ) or (model2=crois) then
|
if ( ((model2=tjs) or (model2=tjd)) and (aiguillage[index2].EtatTJD=2) ) or (model2=crois) then
|
||||||
@@ -7272,12 +7295,6 @@ begin
|
|||||||
if adr2=adr then affiche('Erreur 10.2 : la pointe de l''aiguillage '+intToSTR(adr)+' pointe sur elle même',clred);
|
if adr2=adr then affiche('Erreur 10.2 : la pointe de l''aiguillage '+intToSTR(adr)+' pointe sur elle même',clred);
|
||||||
index2:=Index_aig(adr2); // adresse de l'aiguillage connecté
|
index2:=Index_aig(adr2); // adresse de l'aiguillage connecté
|
||||||
model2:=aiguillage[index2].modele; // modèle de l'aiguillage connecté
|
model2:=aiguillage[index2].modele; // modèle de l'aiguillage connecté
|
||||||
if index2=0 then
|
|
||||||
begin
|
|
||||||
ok:=false;
|
|
||||||
Affiche('Erreur 10.40: aiguillage '+intToSTR(adr)+': déclaration d''un aiguillage '+IntToSTR(adr2)+' inexistant',clred);
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin
|
begin
|
||||||
// tjs ou tjs à 2 états ou croisement
|
// tjs ou tjs à 2 états ou croisement
|
||||||
if (((model2=tjs) or (model2=tjd)) and (aiguillage[index2].EtatTJD=2)) or (model2=crois) then
|
if (((model2=tjs) or (model2=tjd)) and (aiguillage[index2].EtatTJD=2)) or (model2=crois) then
|
||||||
@@ -8104,7 +8121,7 @@ begin
|
|||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormConfig.ButtonValLigneClick(Sender: TObject);
|
procedure valide_branches;
|
||||||
var s: string;
|
var s: string;
|
||||||
ligne,esp : integer;
|
ligne,esp : integer;
|
||||||
ok : boolean;
|
ok : boolean;
|
||||||
@@ -8112,7 +8129,7 @@ begin
|
|||||||
ligne:=1;
|
ligne:=1;
|
||||||
ok:=true;
|
ok:=true;
|
||||||
repeat
|
repeat
|
||||||
s:=AnsiUpperCase(RichBranche.Lines[ligne-1]);
|
s:=AnsiUpperCase(formConfig.RichBranche.Lines[ligne-1]);
|
||||||
if s<>'' then
|
if s<>'' then
|
||||||
begin
|
begin
|
||||||
// supprime les espaces éventuels
|
// supprime les espaces éventuels
|
||||||
@@ -8122,24 +8139,24 @@ begin
|
|||||||
until esp=0;
|
until esp=0;
|
||||||
if s<>'' then
|
if s<>'' then
|
||||||
begin
|
begin
|
||||||
RichBranche.Lines[ligne-1]:=s;
|
formConfig.RichBranche.Lines[ligne-1]:=s;
|
||||||
branche[ligne]:=s; // stocker la ligne dans la branche pour la compiler
|
branche[ligne]:=s; // stocker la ligne dans la branche pour la compiler
|
||||||
if compile_branche(s,ligne) then
|
if compile_branche(s,ligne) then
|
||||||
begin
|
begin
|
||||||
RE_ColorLine(RichBranche,Ligne-1,ClLime);
|
RE_ColorLine(FormConfig.RichBranche,Ligne-1,ClLime);
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
RE_ColorLine(RichBranche,Ligne-1,ClRed);
|
RE_ColorLine(FormConfig.RichBranche,Ligne-1,ClRed);
|
||||||
ok:=false;
|
ok:=false;
|
||||||
end;
|
end;
|
||||||
inc(ligne);
|
inc(ligne);
|
||||||
end
|
end
|
||||||
else RichBranche.Lines.Delete(ligne-1);
|
else FormConfig.RichBranche.Lines.Delete(ligne-1);
|
||||||
end
|
end
|
||||||
else RichBranche.Lines.Delete(ligne-1);
|
else FormConfig.RichBranche.Lines.Delete(ligne-1);
|
||||||
|
|
||||||
until (ligne>RichBranche.Lines.count) or (ligne>=MaxBranches);
|
until (ligne>FormConfig.RichBranche.Lines.count) or (ligne>=MaxBranches);
|
||||||
NbreBranches:=ligne-1;
|
NbreBranches:=ligne-1;
|
||||||
if ligne>=MaxBranches then Affiche('Nombre maximal de branches atteint',clRed);
|
if ligne>=MaxBranches then Affiche('Nombre maximal de branches atteint',clRed);
|
||||||
|
|
||||||
@@ -8147,16 +8164,21 @@ begin
|
|||||||
if ligne<>0 then
|
if ligne<>0 then
|
||||||
begin
|
begin
|
||||||
ok:=false;
|
ok:=false;
|
||||||
RE_ColorLine(RichBranche,Ligne-1,ClRed);
|
RE_ColorLine(FormConfig.RichBranche,Ligne-1,ClRed);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if ok then
|
if ok then
|
||||||
begin
|
begin
|
||||||
labelResult.Caption:='Syntaxe correcte';
|
FormConfig.labelResult.Caption:='Syntaxe correcte';
|
||||||
config_modifie:=true;
|
config_modifie:=true;
|
||||||
modif_branches:=false;
|
modif_branches:=false;
|
||||||
end
|
end
|
||||||
else labelResult.Caption:='Erreur de syntaxe';
|
else FormConfig.labelResult.Caption:='Erreur de syntaxe';
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TFormConfig.ButtonValLigneClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
valide_branches;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function virgule_suiv(sl : string;o : integer) : integer;
|
function virgule_suiv(sl : string;o : integer) : integer;
|
||||||
@@ -10147,6 +10169,21 @@ procedure TFormConfig.EditLAYExit(Sender: TObject);
|
|||||||
LabelInfo.caption:='';
|
LabelInfo.caption:='';
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TFormConfig.Copier1Click(Sender: TObject);
|
||||||
|
begin
|
||||||
|
RichBranche.CopyToClipboard;
|
||||||
|
RichBranche.SetFocus;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TFormConfig.Coller1Click(Sender: TObject);
|
||||||
|
begin
|
||||||
|
With RichBranche do
|
||||||
|
begin
|
||||||
|
PasteFromClipboard;
|
||||||
|
SetFocus;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -482,22 +482,6 @@ object FormDebug: TFormDebug
|
|||||||
TabOrder = 10
|
TabOrder = 10
|
||||||
OnClick = CheckDetSIgClick
|
OnClick = CheckDetSIgClick
|
||||||
end
|
end
|
||||||
object CheckImporteCDM: TCheckBox
|
|
||||||
Left = 256
|
|
||||||
Top = 96
|
|
||||||
Width = 129
|
|
||||||
Height = 17
|
|
||||||
Alignment = taLeftJustify
|
|
||||||
Caption = 'Importation CDM Rail'
|
|
||||||
Font.Charset = DEFAULT_CHARSET
|
|
||||||
Font.Color = clBlack
|
|
||||||
Font.Height = -11
|
|
||||||
Font.Name = 'MS Sans Serif'
|
|
||||||
Font.Style = []
|
|
||||||
ParentFont = False
|
|
||||||
TabOrder = 11
|
|
||||||
OnClick = CheckImporteCDMClick
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
object RichDebug: TRichEdit
|
object RichDebug: TRichEdit
|
||||||
Left = 8
|
Left = 8
|
||||||
|
|||||||
+4
-7
@@ -63,7 +63,6 @@ type
|
|||||||
Button0: TButton;
|
Button0: TButton;
|
||||||
MemoEvtDet: TRichEdit;
|
MemoEvtDet: TRichEdit;
|
||||||
CheckDetSIg: TCheckBox;
|
CheckDetSIg: TCheckBox;
|
||||||
CheckImporteCDM: TCheckBox;
|
|
||||||
procedure FormCreate(Sender: TObject);
|
procedure FormCreate(Sender: TObject);
|
||||||
procedure ButtonEcrLogClick(Sender: TObject);
|
procedure ButtonEcrLogClick(Sender: TObject);
|
||||||
procedure EditNivDebugKeyPress(Sender: TObject; var Key: Char);
|
procedure EditNivDebugKeyPress(Sender: TObject; var Key: Char);
|
||||||
@@ -102,7 +101,6 @@ type
|
|||||||
procedure FormActivate(Sender: TObject);
|
procedure FormActivate(Sender: TObject);
|
||||||
procedure MemoEvtDetChange(Sender: TObject);
|
procedure MemoEvtDetChange(Sender: TObject);
|
||||||
procedure CheckDetSIgClick(Sender: TObject);
|
procedure CheckDetSIgClick(Sender: TObject);
|
||||||
procedure CheckImporteCDMClick(Sender: TObject);
|
|
||||||
private
|
private
|
||||||
{ Déclarations privées }
|
{ Déclarations privées }
|
||||||
public
|
public
|
||||||
@@ -112,7 +110,7 @@ type
|
|||||||
var
|
var
|
||||||
FormDebug: TFormDebug;
|
FormDebug: TFormDebug;
|
||||||
NivDebug,signalDebug,compt_erreur,positionErreur,LigneErreur : integer;
|
NivDebug,signalDebug,compt_erreur,positionErreur,LigneErreur : integer;
|
||||||
AffSignal,AffAffect,initform,AffFD,debug_dec_sig,debugTCO,DebugAffiche,AFfDetSIg,debugAnalyse : boolean;
|
AffSignal,AffAffect,initform,AffFD,debug_dec_sig,debugTCO,DebugAffiche,AFfDetSIg : boolean;
|
||||||
N_event_det : integer; // index du dernier évènement (de 1 à 20)
|
N_event_det : integer; // index du dernier évènement (de 1 à 20)
|
||||||
N_Event_tick : integer ; // dernier index
|
N_Event_tick : integer ; // dernier index
|
||||||
|
|
||||||
@@ -627,9 +625,8 @@ begin
|
|||||||
AFfDetSIg:=checkDetSig.checked;
|
AFfDetSIg:=checkDetSig.checked;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormDebug.CheckImporteCDMClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
debugAnalyse:=checkImporteCDM.checked;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|||||||
+2
-11
@@ -1,6 +1,6 @@
|
|||||||
object FormPrinc: TFormPrinc
|
object FormPrinc: TFormPrinc
|
||||||
Left = 68
|
Left = 86
|
||||||
Top = 194
|
Top = 188
|
||||||
Width = 1227
|
Width = 1227
|
||||||
Height = 671
|
Height = 671
|
||||||
Caption = 'Signaux complexes'
|
Caption = 'Signaux complexes'
|
||||||
@@ -1387,15 +1387,6 @@ object FormPrinc: TFormPrinc
|
|||||||
WordWrap = True
|
WordWrap = True
|
||||||
OnClick = ButtonAffAnalyseCDMClick
|
OnClick = ButtonAffAnalyseCDMClick
|
||||||
end
|
end
|
||||||
object Button2: TButton
|
|
||||||
Left = 48
|
|
||||||
Top = 96
|
|
||||||
Width = 75
|
|
||||||
Height = 25
|
|
||||||
Caption = 'Button2'
|
|
||||||
TabOrder = 7
|
|
||||||
OnClick = Button2Click
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
object StaticText: TStaticText
|
object StaticText: TStaticText
|
||||||
Left = 16
|
Left = 16
|
||||||
|
|||||||
+4
-19
@@ -168,7 +168,6 @@ type
|
|||||||
Analyser1: TMenuItem;
|
Analyser1: TMenuItem;
|
||||||
Coller1: TMenuItem;
|
Coller1: TMenuItem;
|
||||||
ButtonAffAnalyseCDM: TButton;
|
ButtonAffAnalyseCDM: TButton;
|
||||||
Button2: TButton;
|
|
||||||
procedure FormCreate(Sender: TObject);
|
procedure FormCreate(Sender: TObject);
|
||||||
procedure MSCommUSBLenzComm(Sender: TObject);
|
procedure MSCommUSBLenzComm(Sender: TObject);
|
||||||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||||||
@@ -251,7 +250,6 @@ type
|
|||||||
procedure Analyser1Click(Sender: TObject);
|
procedure Analyser1Click(Sender: TObject);
|
||||||
procedure Coller1Click(Sender: TObject);
|
procedure Coller1Click(Sender: TObject);
|
||||||
procedure ButtonAffAnalyseCDMClick(Sender: TObject);
|
procedure ButtonAffAnalyseCDMClick(Sender: TObject);
|
||||||
procedure Button2Click(Sender: TObject);
|
|
||||||
private
|
private
|
||||||
{ Déclarations privées }
|
{ Déclarations privées }
|
||||||
procedure DoHint(Sender : Tobject);
|
procedure DoHint(Sender : Tobject);
|
||||||
@@ -13905,6 +13903,9 @@ begin
|
|||||||
Affiche('Cela ouvre une fenêtre DEBUG dans cdm',clLime);
|
Affiche('Cela ouvre une fenêtre DEBUG dans cdm',clLime);
|
||||||
Affiche('Dans cette fenêtre, faire Clic droit puis "sélectionner tout" et "copier"',clLime);
|
Affiche('Dans cette fenêtre, faire Clic droit puis "sélectionner tout" et "copier"',clLime);
|
||||||
Affiche('Dans Signaux complexes, clic droit et "coller ; puis menu divers / Analyse des modules ',clLime);
|
Affiche('Dans Signaux complexes, clic droit et "coller ; puis menu divers / Analyse des modules ',clLime);
|
||||||
|
Affiche('Dans la fenêtre graphique d''importation cliquer sur importer',clLime);
|
||||||
|
Affiche('Attention : nécessite la version >=23.05 de CDM',clLime);
|
||||||
|
|
||||||
|
|
||||||
if lance_cdm(false) then
|
if lance_cdm(false) then
|
||||||
begin
|
begin
|
||||||
@@ -13960,27 +13961,11 @@ end;
|
|||||||
|
|
||||||
procedure TFormPrinc.ButtonAffAnalyseCDMClick(Sender: TObject);
|
procedure TFormPrinc.ButtonAffAnalyseCDMClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
|
FormAnalyseCDM.WindowState:=wsMaximized;
|
||||||
formAnalyseCDM.Show;
|
formAnalyseCDM.Show;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormPrinc.Button2Click(Sender: TObject);
|
|
||||||
var i : integer;
|
|
||||||
begin
|
|
||||||
i:=index_aig(26);
|
|
||||||
Affiche(intToSTR(aiguillage[i].ADroit)+aiguillage[i].AdroitB,clred);
|
|
||||||
Affiche(intToSTR(aiguillage[i].ADevie)+aiguillage[i].AdevieB,clred);
|
|
||||||
Affiche(intToSTR(aiguillage[i].DDroit)+aiguillage[i].DDroitB,clred);
|
|
||||||
Affiche(intToSTR(aiguillage[i].Ddevie)+aiguillage[i].DdevieB,clred);
|
|
||||||
|
|
||||||
i:=index_aig(28);
|
|
||||||
Affiche(intToSTR(aiguillage[i].ADroit)+aiguillage[i].AdroitB,clorange);
|
|
||||||
Affiche(intToSTR(aiguillage[i].ADevie)+aiguillage[i].AdevieB,clorange);
|
|
||||||
Affiche(intToSTR(aiguillage[i].DDroit)+aiguillage[i].DDroitB,clorange);
|
|
||||||
Affiche(intToSTR(aiguillage[i].Ddevie)+aiguillage[i].DDevieB,clorange);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
+1
-1
@@ -163,5 +163,5 @@ version 5.74 : Correction bug cr
|
|||||||
Nouvel installeur-> Signaux complexes s'installe dans c:\programmes\signaux_complexes.
|
Nouvel installeur-> Signaux complexes s'installe dans c:\programmes\signaux_complexes.
|
||||||
avec un raccourci sur le bureau.
|
avec un raccourci sur le bureau.
|
||||||
version 6.0 : Gestion du décodeur de signaux Arcomora.
|
version 6.0 : Gestion du décodeur de signaux Arcomora.
|
||||||
Importation des aiguillages depuis CDM Rail.
|
Importation des aiguillages et des branches depuis CDM Rail.
|
||||||
Nécessite la version >=23.04 de CDM rail.
|
Nécessite la version >=23.04 de CDM rail.
|
||||||
|
|||||||
Reference in New Issue
Block a user