V1.6
This commit is contained in:
Binary file not shown.
+30
-6
@@ -2,7 +2,7 @@ object FormConfig: TFormConfig
|
|||||||
Left = 316
|
Left = 316
|
||||||
Top = 238
|
Top = 238
|
||||||
Width = 598
|
Width = 598
|
||||||
Height = 340
|
Height = 382
|
||||||
Caption = 'Configuration g'#233'n'#233'rale'
|
Caption = 'Configuration g'#233'n'#233'rale'
|
||||||
Color = clBtnFace
|
Color = clBtnFace
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
@@ -16,7 +16,7 @@ object FormConfig: TFormConfig
|
|||||||
TextHeight = 13
|
TextHeight = 13
|
||||||
object Label6: TLabel
|
object Label6: TLabel
|
||||||
Left = 128
|
Left = 128
|
||||||
Top = 248
|
Top = 288
|
||||||
Width = 332
|
Width = 332
|
||||||
Height = 13
|
Height = 13
|
||||||
Caption =
|
Caption =
|
||||||
@@ -41,7 +41,7 @@ object FormConfig: TFormConfig
|
|||||||
Left = 8
|
Left = 8
|
||||||
Top = 8
|
Top = 8
|
||||||
Width = 265
|
Width = 265
|
||||||
Height = 89
|
Height = 81
|
||||||
Caption = 'CDM Rail'
|
Caption = 'CDM Rail'
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object Label1: TLabel
|
object Label1: TLabel
|
||||||
@@ -151,7 +151,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
object Button1: TButton
|
object Button1: TButton
|
||||||
Left = 112
|
Left = 112
|
||||||
Top = 272
|
Top = 312
|
||||||
Width = 105
|
Width = 105
|
||||||
Height = 25
|
Height = 25
|
||||||
Caption = 'Appliquer et Fermer'
|
Caption = 'Appliquer et Fermer'
|
||||||
@@ -160,7 +160,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
object GroupBox3: TGroupBox
|
object GroupBox3: TGroupBox
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 104
|
Top = 96
|
||||||
Width = 265
|
Width = 265
|
||||||
Height = 105
|
Height = 105
|
||||||
Caption = 'Acc'#232's r'#233'seau '#224' l'#39'interface vers la centrale LENZ'
|
Caption = 'Acc'#232's r'#233'seau '#224' l'#39'interface vers la centrale LENZ'
|
||||||
@@ -246,11 +246,35 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
object Button2: TButton
|
object Button2: TButton
|
||||||
Left = 352
|
Left = 352
|
||||||
Top = 272
|
Top = 312
|
||||||
Width = 113
|
Width = 113
|
||||||
Height = 25
|
Height = 25
|
||||||
Caption = 'Fermer sans appliquer'
|
Caption = 'Fermer sans appliquer'
|
||||||
TabOrder = 5
|
TabOrder = 5
|
||||||
OnClick = Button2Click
|
OnClick = Button2Click
|
||||||
end
|
end
|
||||||
|
object GroupBox5: TGroupBox
|
||||||
|
Left = 8
|
||||||
|
Top = 208
|
||||||
|
Width = 265
|
||||||
|
Height = 57
|
||||||
|
Caption = 'Versions du programme'
|
||||||
|
TabOrder = 6
|
||||||
|
object CheckVerifVersion: TCheckBox
|
||||||
|
Left = 8
|
||||||
|
Top = 16
|
||||||
|
Width = 249
|
||||||
|
Height = 17
|
||||||
|
Caption = 'V'#233'rifications de nouvelle version au d'#233'marrage'
|
||||||
|
TabOrder = 0
|
||||||
|
end
|
||||||
|
object CheckInfoVersion: TCheckBox
|
||||||
|
Left = 8
|
||||||
|
Top = 32
|
||||||
|
Width = 241
|
||||||
|
Height = 17
|
||||||
|
Caption = 'Information sur la version actuelle'
|
||||||
|
TabOrder = 1
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
+19
-9
@@ -4,7 +4,7 @@ interface
|
|||||||
|
|
||||||
uses
|
uses
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
Dialogs, ExtCtrls, StdCtrls ;
|
Dialogs, ExtCtrls, StdCtrls , verif_version ;
|
||||||
|
|
||||||
type
|
type
|
||||||
TFormConfig = class(TForm)
|
TFormConfig = class(TForm)
|
||||||
@@ -37,6 +37,9 @@ type
|
|||||||
Label10: TLabel;
|
Label10: TLabel;
|
||||||
Label11: TLabel;
|
Label11: TLabel;
|
||||||
Label12: TLabel;
|
Label12: TLabel;
|
||||||
|
GroupBox5: TGroupBox;
|
||||||
|
CheckVerifVersion: TCheckBox;
|
||||||
|
CheckInfoVersion: TCheckBox;
|
||||||
procedure Button1Click(Sender: TObject);
|
procedure Button1Click(Sender: TObject);
|
||||||
procedure Button2Click(Sender: TObject);
|
procedure Button2Click(Sender: TObject);
|
||||||
procedure FormActivate(Sender: TObject);
|
procedure FormActivate(Sender: TObject);
|
||||||
@@ -260,15 +263,15 @@ begin
|
|||||||
if changeInterface then
|
if changeInterface then
|
||||||
begin
|
begin
|
||||||
if AdresseIP<>'0' then
|
if AdresseIP<>'0' then
|
||||||
|
begin
|
||||||
|
Affiche('demande connexion à la centrale Lenz par Ethernet',clyellow);
|
||||||
|
With Formprinc do
|
||||||
begin
|
begin
|
||||||
Affiche('demande connexion à la centrale Lenz par Ethernet',clyellow);
|
ClientSocketLenz.port:=port;
|
||||||
With Formprinc do
|
ClientSocketLenz.Address:=AdresseIP;
|
||||||
begin
|
ClientSocketLenz.Open;
|
||||||
ClientSocketLenz.port:=port;
|
end;
|
||||||
ClientSocketLenz.Address:=AdresseIP;
|
end
|
||||||
ClientSocketLenz.Open;
|
|
||||||
end;
|
|
||||||
end
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if changeUSB then
|
if changeUSB then
|
||||||
@@ -277,6 +280,9 @@ begin
|
|||||||
connecte_USB;
|
connecte_USB;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
verifVersion:=CheckVerifVersion.Checked;
|
||||||
|
notificationVersion:=CheckInfoVersion.Checked;
|
||||||
|
|
||||||
formConfig.close;
|
formConfig.close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -305,6 +311,10 @@ begin
|
|||||||
if Valeur_entete=0 then RadioButton1.checked:=true;
|
if Valeur_entete=0 then RadioButton1.checked:=true;
|
||||||
if Valeur_entete=1 then RadioButton2.checked:=true;
|
if Valeur_entete=1 then RadioButton2.checked:=true;
|
||||||
if Valeur_entete=2 then RadioButton3.checked:=true;
|
if Valeur_entete=2 then RadioButton3.checked:=true;
|
||||||
|
|
||||||
|
CheckVerifVersion.Checked:=verifVersion;
|
||||||
|
CheckInfoVersion.Checked:=notificationVersion;
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|||||||
Binary file not shown.
+24
-28
@@ -1,7 +1,7 @@
|
|||||||
object FormConfigTCO: TFormConfigTCO
|
object FormConfigTCO: TFormConfigTCO
|
||||||
Left = 542
|
Left = 542
|
||||||
Top = 389
|
Top = 389
|
||||||
Width = 405
|
Width = 360
|
||||||
Height = 251
|
Height = 251
|
||||||
Caption = 'Configuration du TCO'
|
Caption = 'Configuration du TCO'
|
||||||
Color = clBtnFace
|
Color = clBtnFace
|
||||||
@@ -11,7 +11,7 @@ object FormConfigTCO: TFormConfigTCO
|
|||||||
Font.Name = 'MS Sans Serif'
|
Font.Name = 'MS Sans Serif'
|
||||||
Font.Style = []
|
Font.Style = []
|
||||||
OldCreateOrder = False
|
OldCreateOrder = False
|
||||||
OnCreate = FormCreate
|
OnActivate = FormActivate
|
||||||
PixelsPerInch = 96
|
PixelsPerInch = 96
|
||||||
TextHeight = 13
|
TextHeight = 13
|
||||||
object Label1: TLabel
|
object Label1: TLabel
|
||||||
@@ -42,34 +42,14 @@ object FormConfigTCO: TFormConfigTCO
|
|||||||
Height = 13
|
Height = 13
|
||||||
Caption = 'Nombre de cellules en vertical:'
|
Caption = 'Nombre de cellules en vertical:'
|
||||||
end
|
end
|
||||||
object LabelNbCellX: TLabel
|
object LabelErreur: TLabel
|
||||||
Left = 192
|
Left = 35
|
||||||
Top = 52
|
Top = 144
|
||||||
Width = 96
|
Width = 3
|
||||||
Height = 20
|
Height = 13
|
||||||
Caption = 'LabelNbCellX'
|
|
||||||
Font.Charset = DEFAULT_CHARSET
|
|
||||||
Font.Color = clWindowText
|
|
||||||
Font.Height = -16
|
|
||||||
Font.Name = 'MS Sans Serif'
|
|
||||||
Font.Style = []
|
|
||||||
ParentFont = False
|
|
||||||
end
|
|
||||||
object LabelNbCellY: TLabel
|
|
||||||
Left = 192
|
|
||||||
Top = 76
|
|
||||||
Width = 96
|
|
||||||
Height = 20
|
|
||||||
Caption = 'LabelNbCellX'
|
|
||||||
Font.Charset = DEFAULT_CHARSET
|
|
||||||
Font.Color = clWindowText
|
|
||||||
Font.Height = -16
|
|
||||||
Font.Name = 'MS Sans Serif'
|
|
||||||
Font.Style = []
|
|
||||||
ParentFont = False
|
|
||||||
end
|
end
|
||||||
object ButtonOK: TButton
|
object ButtonOK: TButton
|
||||||
Left = 168
|
Left = 240
|
||||||
Top = 176
|
Top = 176
|
||||||
Width = 75
|
Width = 75
|
||||||
Height = 25
|
Height = 25
|
||||||
@@ -110,4 +90,20 @@ object FormConfigTCO: TFormConfigTCO
|
|||||||
Caption = 'dessine grille'
|
Caption = 'dessine grille'
|
||||||
TabOrder = 4
|
TabOrder = 4
|
||||||
end
|
end
|
||||||
|
object EditNbCellX: TEdit
|
||||||
|
Left = 184
|
||||||
|
Top = 56
|
||||||
|
Width = 49
|
||||||
|
Height = 21
|
||||||
|
TabOrder = 5
|
||||||
|
Text = 'EditNbCellX'
|
||||||
|
end
|
||||||
|
object EditNbCellY: TEdit
|
||||||
|
Left = 184
|
||||||
|
Top = 80
|
||||||
|
Width = 49
|
||||||
|
Height = 21
|
||||||
|
TabOrder = 6
|
||||||
|
Text = 'EditNbCellY'
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
+68
-32
@@ -15,13 +15,14 @@ type
|
|||||||
Label2: TLabel;
|
Label2: TLabel;
|
||||||
Label3: TLabel;
|
Label3: TLabel;
|
||||||
Label4: TLabel;
|
Label4: TLabel;
|
||||||
LabelNbCellX: TLabel;
|
|
||||||
LabelNbCellY: TLabel;
|
|
||||||
ButtonDessine: TButton;
|
ButtonDessine: TButton;
|
||||||
CheckDessineGrille: TCheckBox;
|
CheckDessineGrille: TCheckBox;
|
||||||
|
EditNbCellX: TEdit;
|
||||||
|
EditNbCellY: TEdit;
|
||||||
|
LabelErreur: TLabel;
|
||||||
procedure ButtonOKClick(Sender: TObject);
|
procedure ButtonOKClick(Sender: TObject);
|
||||||
procedure FormCreate(Sender: TObject);
|
|
||||||
procedure ButtonDessineClick(Sender: TObject);
|
procedure ButtonDessineClick(Sender: TObject);
|
||||||
|
procedure FormActivate(Sender: TObject);
|
||||||
private
|
private
|
||||||
{ Déclarations privées }
|
{ Déclarations privées }
|
||||||
public
|
public
|
||||||
@@ -38,50 +39,85 @@ uses UnitPrinc;
|
|||||||
|
|
||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
procedure TFormConfigTCO.ButtonOKClick(Sender: TObject);
|
function verif_config_TCO : boolean; // renvoie true si ok
|
||||||
var i,erreur : integer;
|
var erreur : integer;
|
||||||
|
nokNbX,nokNbY,nokHt,nokLg : boolean;
|
||||||
begin
|
begin
|
||||||
Val(EditTailleCellX.Text,i,erreur);
|
with formConfigTCO do
|
||||||
LargeurCell:=i;
|
|
||||||
Val(EditTailleCellY.Text,i,erreur);
|
|
||||||
HauteurCell:=i;
|
|
||||||
with formTCO do
|
|
||||||
begin
|
begin
|
||||||
ImageTCO.Width:=LargeurCell*NbreCellX;
|
Val(EditNbCellX.Text,NbreCellX,erreur);
|
||||||
ImageTCO.Height:=HauteurCell*NbreCellY;
|
nokNbX:=erreur<>0;
|
||||||
|
if nokNbX then LabelErreur.caption:='Erreur nombre de cellules X';
|
||||||
|
nokNbX:=(NbreCellX<20) or (NbreCellX>MaxCellX);
|
||||||
|
if nokNbX then LabelErreur.caption:='Erreur: nombre de cellules X: mini=20 maxi='+IntToSTR(MaxCellX);
|
||||||
|
|
||||||
|
Val(EditNbCellY.Text,NbreCellY,erreur);
|
||||||
|
nokNbY:=erreur<>0;
|
||||||
|
if nokNbY then LabelErreur.caption:='Erreur: nombre de cellules Y';
|
||||||
|
nokNbY:=nokNbY or (NbreCellY<10) or (NbreCellY>MaxCellY);
|
||||||
|
if nokNbY then LabelErreur.caption:='Erreur: nombre de cellules Y: mini=10 maxi='+IntToSTR(MaxCellY);
|
||||||
|
|
||||||
|
Val(EditTailleCellX.Text,LargeurCell,erreur);
|
||||||
|
nokLg:=erreur<>0;
|
||||||
|
if nokLg then LabelErreur.caption:='Erreur largeur de cellules';
|
||||||
|
nokLg:=nokLg or (LargeurCell<20) or (LargeurCell>50) ;
|
||||||
|
if nokLg then LabelErreur.caption:='Erreur: Tailles des cellules - largeur cellules mini=20 maxi=50';
|
||||||
|
|
||||||
|
Val(EditTailleCellY.Text,HauteurCell,erreur);
|
||||||
|
nokHt:=erreur<>0;
|
||||||
|
if nokHt then LabelErreur.caption:='Erreur hauteur de cellules';
|
||||||
|
nokHt:=nokHt or (HauteurCell<20) or (HauteurCell>50) ;
|
||||||
|
if nokHt then LabelErreur.caption:='Erreur: Tailles des cellules - hauteur cellules mini=20 maxi=50';
|
||||||
|
|
||||||
|
AvecGrille:=checkDessineGrille.Checked;
|
||||||
end;
|
end;
|
||||||
AvecGrille:=checkDessineGrille.Checked;
|
verif_config_TCO:=not(nokNbX or nokNbY or nokHt or nokLg);
|
||||||
formTCO.affiche_TCO;
|
|
||||||
close;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFormConfigTCO.FormCreate(Sender: TObject);
|
procedure TFormConfigTCO.ButtonOKClick(Sender: TObject);
|
||||||
|
var i : integer;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
EditTailleCellX.Text:=IntToSTR(LargeurCell);
|
if verif_config_TCO then
|
||||||
EditTailleCellY.Text:=IntToSTR(HauteurCell);
|
begin
|
||||||
LabelNbCellX.Caption:=IntToSTR(NbreCellX);
|
with formTCO do
|
||||||
LabelNbCellY.Caption:=IntToSTR(NbreCellY);
|
begin
|
||||||
|
ImageTCO.Width:=LargeurCell*NbreCellX;
|
||||||
|
ImageTCO.Height:=HauteurCell*NbreCellY;
|
||||||
|
end;
|
||||||
|
AvecGrille:=checkDessineGrille.Checked;
|
||||||
|
formTCO.affiche_TCO;
|
||||||
|
LabelErreur.caption:='';
|
||||||
|
close;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TFormConfigTCO.ButtonDessineClick(Sender: TObject);
|
procedure TFormConfigTCO.ButtonDessineClick(Sender: TObject);
|
||||||
var i,erreur : integer;
|
var i,erreur : integer;
|
||||||
r : Trect;
|
r : Trect;
|
||||||
c : tCanvas;
|
c : tCanvas;
|
||||||
begin
|
begin
|
||||||
|
if verif_config_TCO then
|
||||||
Val(EditTailleCellX.Text,i,erreur);
|
|
||||||
LargeurCell:=i;
|
|
||||||
Val(EditTailleCellY.Text,i,erreur);
|
|
||||||
HauteurCell:=i;
|
|
||||||
with formTCO do
|
|
||||||
begin
|
begin
|
||||||
ImageTCO.Width:=LargeurCell*NbreCellX;
|
with formTCO do
|
||||||
ImageTCO.Height:=HauteurCell*NbreCellY;
|
begin
|
||||||
|
ImageTCO.Width:=LargeurCell*NbreCellX;
|
||||||
|
ImageTCO.Height:=HauteurCell*NbreCellY;
|
||||||
|
end;
|
||||||
|
formTCO.affiche_TCO;
|
||||||
end;
|
end;
|
||||||
formTCO.affiche_TCO;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TFormConfigTCO.FormActivate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
EditTailleCellX.Text:=IntToSTR(LargeurCell);
|
||||||
|
EditTailleCellY.Text:=IntToSTR(HauteurCell);
|
||||||
|
EditNbCellX.Text:=IntToSTR(NbreCellX);
|
||||||
|
EditNbCellY.Text:=IntToSTR(NbreCellY);
|
||||||
|
checkDessineGrille.Checked:=AvecGrille;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
+189
-154
@@ -1,11 +1,9 @@
|
|||||||
object FormPrinc: TFormPrinc
|
object FormPrinc: TFormPrinc
|
||||||
Left = 56
|
Left = 30
|
||||||
Top = 197
|
Top = 270
|
||||||
AutoSize = True
|
Width = 1212
|
||||||
BorderStyle = bsSingle
|
Height = 664
|
||||||
Caption = 'Client TCP-IP CDM Rail ou USB - syst'#232'me LENZ'
|
Caption = 'Client TCP-IP CDM Rail ou USB - syst'#232'me LENZ'
|
||||||
ClientHeight = 606
|
|
||||||
ClientWidth = 1196
|
|
||||||
Color = clBtnFace
|
Color = clBtnFace
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
Font.Color = clWindowText
|
Font.Color = clWindowText
|
||||||
@@ -15,9 +13,13 @@ object FormPrinc: TFormPrinc
|
|||||||
Menu = MainMenu1
|
Menu = MainMenu1
|
||||||
OldCreateOrder = False
|
OldCreateOrder = False
|
||||||
Position = poScreenCenter
|
Position = poScreenCenter
|
||||||
|
Scaled = False
|
||||||
ShowHint = True
|
ShowHint = True
|
||||||
OnClose = FormClose
|
OnClose = FormClose
|
||||||
OnCreate = FormCreate
|
OnCreate = FormCreate
|
||||||
|
DesignSize = (
|
||||||
|
1196
|
||||||
|
606)
|
||||||
PixelsPerInch = 96
|
PixelsPerInch = 96
|
||||||
TextHeight = 13
|
TextHeight = 13
|
||||||
object LabelTitre: TLabel
|
object LabelTitre: TLabel
|
||||||
@@ -33,19 +35,6 @@ object FormPrinc: TFormPrinc
|
|||||||
Font.Style = [fsBold, fsItalic]
|
Font.Style = [fsBold, fsItalic]
|
||||||
ParentFont = False
|
ParentFont = False
|
||||||
end
|
end
|
||||||
object LabelEtat: TLabel
|
|
||||||
Left = 456
|
|
||||||
Top = 16
|
|
||||||
Width = 152
|
|
||||||
Height = 18
|
|
||||||
Caption = 'Initialisations en cours'
|
|
||||||
Font.Charset = ANSI_CHARSET
|
|
||||||
Font.Color = clWindowText
|
|
||||||
Font.Height = -16
|
|
||||||
Font.Name = 'Arial'
|
|
||||||
Font.Style = []
|
|
||||||
ParentFont = False
|
|
||||||
end
|
|
||||||
object Image9feux: TImage
|
object Image9feux: TImage
|
||||||
Left = 384
|
Left = 384
|
||||||
Top = 0
|
Top = 0
|
||||||
@@ -678,8 +667,8 @@ object FormPrinc: TFormPrinc
|
|||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
object Image2feux: TImage
|
object Image2feux: TImage
|
||||||
Left = 1096
|
Left = 776
|
||||||
Top = 136
|
Top = 128
|
||||||
Width = 33
|
Width = 33
|
||||||
Height = 57
|
Height = 57
|
||||||
Picture.Data = {
|
Picture.Data = {
|
||||||
@@ -752,8 +741,8 @@ object FormPrinc: TFormPrinc
|
|||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
object Image2Dir: TImage
|
object Image2Dir: TImage
|
||||||
Left = 968
|
Left = 696
|
||||||
Top = 48
|
Top = 184
|
||||||
Width = 41
|
Width = 41
|
||||||
Height = 25
|
Height = 25
|
||||||
Picture.Data = {
|
Picture.Data = {
|
||||||
@@ -827,8 +816,8 @@ object FormPrinc: TFormPrinc
|
|||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
object Image3Dir: TImage
|
object Image3Dir: TImage
|
||||||
Left = 1008
|
Left = 768
|
||||||
Top = 48
|
Top = 136
|
||||||
Width = 49
|
Width = 49
|
||||||
Height = 25
|
Height = 25
|
||||||
Picture.Data = {
|
Picture.Data = {
|
||||||
@@ -905,8 +894,8 @@ object FormPrinc: TFormPrinc
|
|||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
object Image4Dir: TImage
|
object Image4Dir: TImage
|
||||||
Left = 1056
|
Left = 816
|
||||||
Top = 48
|
Top = 128
|
||||||
Width = 57
|
Width = 57
|
||||||
Height = 25
|
Height = 25
|
||||||
Picture.Data = {
|
Picture.Data = {
|
||||||
@@ -993,8 +982,8 @@ object FormPrinc: TFormPrinc
|
|||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
object Image5Dir: TImage
|
object Image5Dir: TImage
|
||||||
Left = 1112
|
Left = 664
|
||||||
Top = 48
|
Top = 120
|
||||||
Width = 65
|
Width = 65
|
||||||
Height = 25
|
Height = 25
|
||||||
Picture.Data = {
|
Picture.Data = {
|
||||||
@@ -1091,8 +1080,8 @@ object FormPrinc: TFormPrinc
|
|||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
object Image6Dir: TImage
|
object Image6Dir: TImage
|
||||||
Left = 1112
|
Left = 808
|
||||||
Top = 80
|
Top = 152
|
||||||
Width = 81
|
Width = 81
|
||||||
Height = 25
|
Height = 25
|
||||||
Picture.Data = {
|
Picture.Data = {
|
||||||
@@ -1198,41 +1187,27 @@ object FormPrinc: TFormPrinc
|
|||||||
0000}
|
0000}
|
||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
object Label1: TLabel
|
object LabelEtat: TLabel
|
||||||
Left = 656
|
Left = 456
|
||||||
Top = 148
|
Top = 16
|
||||||
Width = 89
|
Width = 152
|
||||||
Height = 13
|
Height = 18
|
||||||
Caption = 'Nombre de trains : '
|
Anchors = [akTop, akRight]
|
||||||
end
|
Caption = 'Initialisations en cours'
|
||||||
object LabelNbTrains: TLabel
|
|
||||||
Left = 760
|
|
||||||
Top = 144
|
|
||||||
Width = 9
|
|
||||||
Height = 19
|
|
||||||
Caption = '0'
|
|
||||||
Font.Charset = ANSI_CHARSET
|
Font.Charset = ANSI_CHARSET
|
||||||
Font.Color = clBlack
|
Font.Color = clWindowText
|
||||||
Font.Height = -16
|
Font.Height = -16
|
||||||
Font.Name = 'Arial'
|
Font.Name = 'Arial'
|
||||||
Font.Style = [fsBold]
|
Font.Style = []
|
||||||
ParentFont = False
|
ParentFont = False
|
||||||
end
|
end
|
||||||
object BoutVersion: TButton
|
|
||||||
Left = 1008
|
|
||||||
Top = 16
|
|
||||||
Width = 83
|
|
||||||
Height = 33
|
|
||||||
Caption = 'Dem version'
|
|
||||||
TabOrder = 0
|
|
||||||
OnClick = BoutVersionClick
|
|
||||||
end
|
|
||||||
object ListBox1: TListBox
|
object ListBox1: TListBox
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 48
|
Top = 48
|
||||||
Width = 633
|
Width = 633
|
||||||
Height = 520
|
Height = 520
|
||||||
Style = lbOwnerDrawFixed
|
Style = lbOwnerDrawFixed
|
||||||
|
Anchors = [akLeft, akTop, akRight, akBottom]
|
||||||
Color = clBlack
|
Color = clBlack
|
||||||
Font.Charset = ANSI_CHARSET
|
Font.Charset = ANSI_CHARSET
|
||||||
Font.Color = clBlue
|
Font.Color = clBlue
|
||||||
@@ -1241,34 +1216,31 @@ object FormPrinc: TFormPrinc
|
|||||||
Font.Style = []
|
Font.Style = []
|
||||||
ItemHeight = 16
|
ItemHeight = 16
|
||||||
ParentFont = False
|
ParentFont = False
|
||||||
TabOrder = 1
|
TabOrder = 0
|
||||||
OnDrawItem = ListBox1DrawItem
|
OnDrawItem = ListBox1DrawItem
|
||||||
end
|
end
|
||||||
object BoutonRaf: TButton
|
|
||||||
Left = 912
|
|
||||||
Top = 16
|
|
||||||
Width = 89
|
|
||||||
Height = 33
|
|
||||||
Caption = 'Rafraichissement'
|
|
||||||
TabOrder = 2
|
|
||||||
OnClick = BoutonRafClick
|
|
||||||
end
|
|
||||||
object ScrollBox1: TScrollBox
|
object ScrollBox1: TScrollBox
|
||||||
Left = 648
|
Left = 648
|
||||||
Top = 168
|
Top = 176
|
||||||
Width = 537
|
Width = 537
|
||||||
Height = 405
|
Height = 393
|
||||||
|
HorzScrollBar.Smooth = True
|
||||||
|
HorzScrollBar.Tracking = True
|
||||||
|
VertScrollBar.Smooth = True
|
||||||
|
VertScrollBar.Tracking = True
|
||||||
|
Anchors = [akTop, akRight, akBottom]
|
||||||
Color = clWhite
|
Color = clWhite
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
TabOrder = 3
|
TabOrder = 1
|
||||||
end
|
end
|
||||||
object GroupBox1: TGroupBox
|
object GroupBox1: TGroupBox
|
||||||
Left = 656
|
Left = 648
|
||||||
Top = 8
|
Top = 0
|
||||||
Width = 249
|
Width = 249
|
||||||
Height = 129
|
Height = 129
|
||||||
|
Anchors = [akTop, akRight]
|
||||||
Caption = 'Commande d'#39'accessoires'
|
Caption = 'Commande d'#39'accessoires'
|
||||||
TabOrder = 4
|
TabOrder = 2
|
||||||
object Label2: TLabel
|
object Label2: TLabel
|
||||||
Left = 7
|
Left = 7
|
||||||
Top = 16
|
Top = 16
|
||||||
@@ -1309,17 +1281,6 @@ object FormPrinc: TFormPrinc
|
|||||||
Text = '1'
|
Text = '1'
|
||||||
OnEnter = EditvalEnter
|
OnEnter = EditvalEnter
|
||||||
end
|
end
|
||||||
object ButtonCommande: TButton
|
|
||||||
Left = 124
|
|
||||||
Top = 24
|
|
||||||
Width = 109
|
|
||||||
Height = 33
|
|
||||||
Hint = 'Ecriture des accessoires DCC'
|
|
||||||
Caption = 'Envoi commande'
|
|
||||||
TabOrder = 2
|
|
||||||
WordWrap = True
|
|
||||||
OnClick = ButtonCommandeClick
|
|
||||||
end
|
|
||||||
object ButtonEcrCV: TButton
|
object ButtonEcrCV: TButton
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 64
|
Top = 64
|
||||||
@@ -1327,7 +1288,7 @@ object FormPrinc: TFormPrinc
|
|||||||
Height = 25
|
Height = 25
|
||||||
Hint = 'Ecriture CV en mode direct sur voie de programmation'
|
Hint = 'Ecriture CV en mode direct sur voie de programmation'
|
||||||
Caption = 'Ecriture CV - 1 '#224' 255 par bus XpressNet'
|
Caption = 'Ecriture CV - 1 '#224' 255 par bus XpressNet'
|
||||||
TabOrder = 3
|
TabOrder = 2
|
||||||
WordWrap = True
|
WordWrap = True
|
||||||
OnClick = ButtonEcrCVClick
|
OnClick = ButtonEcrCVClick
|
||||||
end
|
end
|
||||||
@@ -1339,28 +1300,20 @@ object FormPrinc: TFormPrinc
|
|||||||
Hint = 'Lecture CV en mode direct sur voie de programmation'
|
Hint = 'Lecture CV en mode direct sur voie de programmation'
|
||||||
Caption = 'Lecture CV - 1 '#224' 255 par le bus XpressNet'
|
Caption = 'Lecture CV - 1 '#224' 255 par le bus XpressNet'
|
||||||
Enabled = False
|
Enabled = False
|
||||||
TabOrder = 4
|
TabOrder = 3
|
||||||
OnClick = ButtonLitCVClick
|
OnClick = ButtonLitCVClick
|
||||||
end
|
end
|
||||||
end
|
object ButtonCommande: TButton
|
||||||
object ButtonTest: TButton
|
Left = 124
|
||||||
Left = 912
|
Top = 24
|
||||||
Top = 96
|
Width = 109
|
||||||
Width = 89
|
Height = 33
|
||||||
Height = 33
|
Hint = 'Ecriture des accessoires DCC'
|
||||||
Caption = 'Demande '#233'tat r'#233'trosignalisation'
|
Caption = 'Envoi commande'
|
||||||
TabOrder = 5
|
TabOrder = 4
|
||||||
WordWrap = True
|
WordWrap = True
|
||||||
OnClick = ButtonTestClick
|
OnClick = ButtonCommandeClick
|
||||||
end
|
end
|
||||||
object ButtonInfo: TButton
|
|
||||||
Left = 1008
|
|
||||||
Top = 56
|
|
||||||
Width = 81
|
|
||||||
Height = 33
|
|
||||||
Caption = 'Informations'
|
|
||||||
TabOrder = 6
|
|
||||||
OnClick = ButtonInfoClick
|
|
||||||
end
|
end
|
||||||
object StatusBar1: TStatusBar
|
object StatusBar1: TStatusBar
|
||||||
Left = 0
|
Left = 0
|
||||||
@@ -1380,55 +1333,138 @@ object FormPrinc: TFormPrinc
|
|||||||
2143341208000000ED030000ED03000001568A64000006000000010000040000
|
2143341208000000ED030000ED03000001568A64000006000000010000040000
|
||||||
00020000802500000000080000000000000000003F00000011000000}
|
00020000802500000000080000000000000000003F00000011000000}
|
||||||
end
|
end
|
||||||
object loco: TButton
|
object Panel1: TPanel
|
||||||
Left = 1096
|
|
||||||
Top = 16
|
|
||||||
Width = 75
|
|
||||||
Height = 33
|
|
||||||
Caption = 'loco'
|
|
||||||
TabOrder = 9
|
|
||||||
OnClick = locoClick
|
|
||||||
end
|
|
||||||
object ButtonAffDebug: TButton
|
|
||||||
Left = 912
|
Left = 912
|
||||||
Top = 56
|
Top = 0
|
||||||
Width = 89
|
Width = 273
|
||||||
Height = 33
|
Height = 169
|
||||||
Caption = 'Affiche debug'
|
Anchors = [akTop, akRight]
|
||||||
TabOrder = 10
|
Caption = 'Panel1'
|
||||||
OnClick = ButtonAffDebugClick
|
TabOrder = 5
|
||||||
|
object BoutonRaf: TButton
|
||||||
|
Left = 8
|
||||||
|
Top = 8
|
||||||
|
Width = 89
|
||||||
|
Height = 33
|
||||||
|
Caption = 'Rafraichissement'
|
||||||
|
TabOrder = 0
|
||||||
|
OnClick = BoutonRafClick
|
||||||
|
end
|
||||||
|
object ButtonAffDebug: TButton
|
||||||
|
Left = 8
|
||||||
|
Top = 48
|
||||||
|
Width = 89
|
||||||
|
Height = 33
|
||||||
|
Caption = 'Affiche debug'
|
||||||
|
TabOrder = 1
|
||||||
|
OnClick = ButtonAffDebugClick
|
||||||
|
end
|
||||||
|
object BoutVersion: TButton
|
||||||
|
Left = 102
|
||||||
|
Top = 8
|
||||||
|
Width = 83
|
||||||
|
Height = 33
|
||||||
|
Caption = 'Dem version'
|
||||||
|
TabOrder = 2
|
||||||
|
OnClick = BoutVersionClick
|
||||||
|
end
|
||||||
|
object loco: TButton
|
||||||
|
Left = 190
|
||||||
|
Top = 8
|
||||||
|
Width = 75
|
||||||
|
Height = 33
|
||||||
|
Caption = 'loco'
|
||||||
|
TabOrder = 3
|
||||||
|
OnClick = locoClick
|
||||||
|
end
|
||||||
|
object ButtonInfo: TButton
|
||||||
|
Left = 104
|
||||||
|
Top = 48
|
||||||
|
Width = 81
|
||||||
|
Height = 33
|
||||||
|
Caption = 'Informations'
|
||||||
|
TabOrder = 4
|
||||||
|
OnClick = ButtonInfoClick
|
||||||
|
end
|
||||||
|
object ButtonReprise: TButton
|
||||||
|
Left = 190
|
||||||
|
Top = 48
|
||||||
|
Width = 75
|
||||||
|
Height = 33
|
||||||
|
Hint =
|
||||||
|
'Relance du bus DCC apr'#232's une '#233'criture d'#39'un CV ou une mise hors t' +
|
||||||
|
'ension de la centrale'
|
||||||
|
Caption = 'Reprise DCC'
|
||||||
|
TabOrder = 5
|
||||||
|
OnClick = ButtonRepriseClick
|
||||||
|
end
|
||||||
|
object ButtonTest: TButton
|
||||||
|
Left = 8
|
||||||
|
Top = 88
|
||||||
|
Width = 89
|
||||||
|
Height = 33
|
||||||
|
Caption = 'Demande '#233'tat r'#233'trosignalisation'
|
||||||
|
TabOrder = 6
|
||||||
|
WordWrap = True
|
||||||
|
OnClick = ButtonTestClick
|
||||||
|
end
|
||||||
|
object ButtonArretSimu: TButton
|
||||||
|
Left = 104
|
||||||
|
Top = 88
|
||||||
|
Width = 81
|
||||||
|
Height = 33
|
||||||
|
Caption = 'Arret simulation'
|
||||||
|
TabOrder = 7
|
||||||
|
Visible = False
|
||||||
|
OnClick = ButtonArretSimuClick
|
||||||
|
end
|
||||||
|
object ButtonAffTCO: TButton
|
||||||
|
Left = 192
|
||||||
|
Top = 88
|
||||||
|
Width = 73
|
||||||
|
Height = 33
|
||||||
|
Caption = 'Affiche TCO'
|
||||||
|
TabOrder = 8
|
||||||
|
OnClick = ButtonAffTCOClick
|
||||||
|
end
|
||||||
|
object ButtonLanceCDM: TButton
|
||||||
|
Left = 8
|
||||||
|
Top = 128
|
||||||
|
Width = 89
|
||||||
|
Height = 33
|
||||||
|
Caption = 'Lance CDM rail'
|
||||||
|
TabOrder = 9
|
||||||
|
OnClick = ButtonLanceCDMClick
|
||||||
|
end
|
||||||
end
|
end
|
||||||
object ButtonReprise: TButton
|
object Panel2: TPanel
|
||||||
Left = 1096
|
Left = 648
|
||||||
Top = 56
|
|
||||||
Width = 75
|
|
||||||
Height = 33
|
|
||||||
Hint =
|
|
||||||
'Relance du bus DCC apr'#232's une '#233'criture d'#39'un CV ou une mise hors t' +
|
|
||||||
'ension de la centrale'
|
|
||||||
Caption = 'Reprise DCC'
|
|
||||||
TabOrder = 11
|
|
||||||
OnClick = ButtonRepriseClick
|
|
||||||
end
|
|
||||||
object Button2: TButton
|
|
||||||
Left = 872
|
|
||||||
Top = 136
|
Top = 136
|
||||||
Width = 97
|
Width = 153
|
||||||
Height = 25
|
Height = 25
|
||||||
Caption = 'Test'
|
Anchors = [akTop, akRight]
|
||||||
TabOrder = 12
|
Caption = 'Panel2'
|
||||||
Visible = False
|
TabOrder = 6
|
||||||
OnClick = Button2Click
|
object Label1: TLabel
|
||||||
end
|
Left = 16
|
||||||
object ButtonArretSimu: TButton
|
Top = 4
|
||||||
Left = 1008
|
Width = 89
|
||||||
Top = 96
|
Height = 13
|
||||||
Width = 81
|
Caption = 'Nombre de trains : '
|
||||||
Height = 33
|
end
|
||||||
Caption = 'Arret simulation'
|
object LabelNbTrains: TLabel
|
||||||
TabOrder = 13
|
Left = 120
|
||||||
Visible = False
|
Top = 2
|
||||||
OnClick = ButtonArretSimuClick
|
Width = 9
|
||||||
|
Height = 19
|
||||||
|
Caption = '0'
|
||||||
|
Font.Charset = ANSI_CHARSET
|
||||||
|
Font.Color = clBlack
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Arial'
|
||||||
|
Font.Style = [fsBold]
|
||||||
|
ParentFont = False
|
||||||
|
end
|
||||||
end
|
end
|
||||||
object Timer1: TTimer
|
object Timer1: TTimer
|
||||||
Interval = 100
|
Interval = 100
|
||||||
@@ -1447,8 +1483,7 @@ object FormPrinc: TFormPrinc
|
|||||||
Left = 320
|
Left = 320
|
||||||
end
|
end
|
||||||
object MainMenu1: TMainMenu
|
object MainMenu1: TMainMenu
|
||||||
Left = 1160
|
Left = 560
|
||||||
Top = 8
|
|
||||||
object Afficher1: TMenuItem
|
object Afficher1: TMenuItem
|
||||||
Caption = 'Afficher'
|
Caption = 'Afficher'
|
||||||
object Etatdesdtecteurs1: TMenuItem
|
object Etatdesdtecteurs1: TMenuItem
|
||||||
@@ -1571,11 +1606,11 @@ object FormPrinc: TFormPrinc
|
|||||||
Left = 352
|
Left = 352
|
||||||
end
|
end
|
||||||
object OpenDialog: TOpenDialog
|
object OpenDialog: TOpenDialog
|
||||||
Left = 1104
|
Left = 888
|
||||||
Top = 112
|
Top = 152
|
||||||
end
|
end
|
||||||
object SaveDialog: TSaveDialog
|
object SaveDialog: TSaveDialog
|
||||||
Left = 1120
|
Left = 888
|
||||||
Top = 88
|
Top = 16
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
+604
-386
File diff suppressed because it is too large
Load Diff
Binary file not shown.
BIN
Binary file not shown.
+606
-481
File diff suppressed because it is too large
Load Diff
+1462
-481
File diff suppressed because it is too large
Load Diff
+102
-103
@@ -1,129 +1,128 @@
|
|||||||
/******************************************
|
/******************************************
|
||||||
/ fichier de configuration de signaux_complexes
|
/ fichier de configuration de signaux complexes
|
||||||
/ gily - f1iwq - 2018
|
/ cap de bouheyre avec signaux - 2018
|
||||||
/******************************************
|
/****************************************
|
||||||
/ Sans Log=0 / Avec Log=1 : génère un fichier log
|
/ Sans Log=0 / Avec Log=1 : génère un fichier log
|
||||||
Log=0
|
Log=0
|
||||||
/ Affichage du débug du calcul des routes, et enregistrement dans le log si la variable précédente est à 1
|
/ Affichage du débug du calcul des routes, et enregistrement dans le log si la variable précédente est à 1
|
||||||
TraceDet=0
|
TraceDet=0
|
||||||
/ Envoie un 0 après le pilotage des décodeurs
|
/ si 1 envoie un 0 après le pilotage des décodeurs LEB
|
||||||
/ Mettre 1 si utilisation de décodeurs LEB
|
RazSignaux=0
|
||||||
RazSignaux=1
|
|
||||||
/
|
/
|
||||||
/ modélisation des aiguillages : détermine les éléments connectés aux 3 branches des aiguilles (Pointe, Droit, Dévié (S)
|
/ modélisation des aiguillages : détermine les éléments connectés aux 3 branches des aiguilles (Pointe, Droit, Dévié (S)
|
||||||
/ adresse d'aiguillage,P=élément vers pointe D=élément vers Droit, S=élément vers dévié.
|
/ adresse d'aiguillage[B],P=élément vers pointe D=élément vers Droit, S=élément vers dévié
|
||||||
/ [60 ou 30 dans le cas d'un aiguillage en position déviée qui doit être fanchie à 30 ou 60]
|
/ B pour adresse d'aiguillage déja utilisée
|
||||||
/ Elément = détecteur (valeur uniquement numérique) ou aiguillage (adresse+branche de connexion (P S ou D)
|
/ Elément = détecteur (valeur uniquement numérique) ou aiguillage (adresse [TRI,TJS,TJD]+branche de connexion (P S ou D)
|
||||||
/ Exemple : 1,P518,D523,S3P signifie : définition de l'aiguillage @1 : sur pointe relié au détecteur 518
|
/ Exemples : 1,P518,D523,S3P signifie : définition de l'aiguillage @1 : sur pointe relié au détecteur 518
|
||||||
/ sur Droit relié au détecteur 518
|
/ sur Droit relié au détecteur 518
|
||||||
/ sur Dévié, relié à l'aiguillage 3 en pointe
|
/ sur Dévié, relié à l'aiguillage 3 en pointe
|
||||||
/ Pour une TJD : 26TJD,D530,S529,P28
|
/ Voir la documentation des signaux complexes pour une description complete
|
||||||
/ P désigne l'autre adresse de la TJD
|
|
||||||
/ Aiguillage triple
|
|
||||||
/
|
|
||||||
/ S'il n'y a pas de détecteur connecté à une branche d'aiguillage, mettre 0.
|
/ S'il n'y a pas de détecteur connecté à une branche d'aiguillage, mettre 0.
|
||||||
1,P518,S3P,D523,30
|
1,S1BS,P2P,D3P,0
|
||||||
2,P12S,S5S,D519
|
1B,P553,D16P,S1S
|
||||||
3,P1S,S5D,D4P
|
2,P1P,D4P,S2BS
|
||||||
4,P3D,S514,D6S
|
2B,P521,D16D,S2S
|
||||||
5,P515,S2S,D3S
|
3,P1D,D522,S5BP
|
||||||
6,P516,S4D,D0
|
4,P2D,D554,S6BP
|
||||||
7,P527,S520,D519
|
5,P9P,S15P,D5BS
|
||||||
8,P527,S522,D521
|
5B,P3S,S5D,D545,0,1
|
||||||
9,P526,S515,D513,60
|
6,P10P,S546,D6BS
|
||||||
10,P19P,S528,D29P,30
|
6B,P4S,D545,S6D
|
||||||
11,P18P,D30D,S525
|
7,P15S,D566,S565
|
||||||
12,P517,D20S,S2P
|
8,P20P,D566,S565
|
||||||
17,P525,D535,S528
|
9,P5P,D530,S17P
|
||||||
18,P11P,S517,D23P
|
10,P6P,D530,S18P
|
||||||
19,P10P,S531,D22P
|
13,P17S,D563,S564
|
||||||
20,P520,D21P,S12D
|
14,P18S,D563,S564
|
||||||
21,P20D,S28D,D28D
|
15,P5S,D546,S7P
|
||||||
22,P19D,S538,D537
|
16,P1BD,S16BS,D2BD
|
||||||
23,P18D,S534,D538
|
16B,P0,S16S,D557
|
||||||
24,P538,S533,D32S
|
17,P9S,D531,S13P
|
||||||
25,P31S,D529,S27P
|
18,P10S,D562,S14P
|
||||||
26TJD,D530,S529,P28
|
20,P8P,D547,S548
|
||||||
28TJD,D21D,S21S,P26
|
21,P25P,S537,D23S
|
||||||
27,P25S,D530,S537
|
22,P24P,S561,D25S
|
||||||
29,P10D,S30S,D513,60
|
23,P569,S21D,D538
|
||||||
30,P524,S29D,D11D
|
24,P22P,S26P,D513
|
||||||
31,P534,S25P,D0
|
25,P21P,S22D,D570
|
||||||
32,P22S,S24D,D0
|
26,P24S,S515,D514
|
||||||
|
28,P30P,S29P,D570
|
||||||
|
29,P28S,D516,S31P
|
||||||
|
30,P28P,D32S,S539
|
||||||
|
31TRI,27,P29S,D518,S0,S2-517
|
||||||
|
32,P571,D538,S30D
|
||||||
0
|
0
|
||||||
//
|
//
|
||||||
/ modélisation du réseau par branche
|
/ modélisation du réseau par branche
|
||||||
/ 1 ligne par branche - le sens de parcours de la branche est arbitraire.
|
/ 1 ligne par branche - le sens de parcours de la description n'a pas d'importance.
|
||||||
/ Chaque ligne (branche) doit commmencer et finir par un aiguillage
|
/ Chaque ligne (branche) doit comporter au moins un détecteur et au moins aiguillage
|
||||||
/ Une ligne qui finit par un 0 signifie un heurtoir
|
|
||||||
/ @ détecteur A=@aiguillage
|
/ @ détecteur A=@aiguillage
|
||||||
/ Terminer par 0
|
/ chaque ligne doit commencer par un aiguillage et se terminer par un aiguillage
|
||||||
/ Exemple : 519 est un détecteur - A2 est l'aiguillage 2
|
/ Terminer par les brances par 0
|
||||||
|
/ Exemple : 519 est un détecteur - A2 est l'aiguillage 2 - A1B est l'aiguillage 1bis
|
||||||
/
|
/
|
||||||
A2,A12,517,A18,A11,A30,524,521,A8,527,A7,519,A2
|
/ rouge - jaune
|
||||||
A7,520,A20,A12
|
A20,547,561,A22,A24,A26,515,518,A31,A29,A28,A30,539,522,A3,A1,A2,A4,A6B,545,A5B,A3
|
||||||
A1,A3,A4,514,522,A8
|
A26,514,517,A31
|
||||||
A1,523,526,A9,513,A29,A10,A19,531,518,A1
|
A26,515,518,A31
|
||||||
A9,515,A5
|
A24,513,516,A29
|
||||||
A11,525,A17,528,A10
|
/grande boucle extérieure départ de couche rouge: de 569 à 569
|
||||||
A17,535,533,A24,538,A23
|
A23,538,A32,571,553,A1B,A16,A2B,521,569,A23
|
||||||
A7,520,A20,A21,A28,A26,530,A27,A25,A31,534,A23,A18
|
/ grande boucle intérieure
|
||||||
A26,529,A25
|
A21,A25,570,A28
|
||||||
A22,537,A27
|
A4,554,537,A21
|
||||||
A22,A32,A24
|
/ couche jaune
|
||||||
A6,516,0
|
A10,530,A9,A5,A15,546,A6
|
||||||
A31,0
|
A18,562,531,A17
|
||||||
|
A14,563,A13
|
||||||
|
A14,564,A13
|
||||||
|
/
|
||||||
|
A7,565,A8
|
||||||
|
A7,566,A8
|
||||||
|
A16B,557,0
|
||||||
|
A20S,548,0
|
||||||
0
|
0
|
||||||
/ liste des adresses des signaux et leur forme, pour affichage de l'image correspondante ,
|
/
|
||||||
/ avec ou sans bouton de commande pour le feu blanc, type de décodeur [, type de cible (pour les décodeurs Unisemaf uniquement)]
|
/ liste des signaux
|
||||||
/ la liste doit être terminée par une adresse à 0
|
/ la liste doit être terminée par une adresse à 0
|
||||||
/ forme : 2=2 feux(carré violet/blanc) / 3=3 feux / 4=4 feux / 5=5 feux (carré + blanc ou violet)
|
/ forme : 2=2 feux(carré violet/blanc) / 3=3 feux / 4=4 feux (carré) / 5=5 feux (carré + blanc)
|
||||||
/ 7=7 feux (blanc ou violet + ralentissement / 9=9 feux (blanc ou violet + rappel ralentissement)
|
/ 7=7 feux (carré+blanc + ralentissement / 9=9 feux (blanc ou violet + rappel ralentissement)
|
||||||
/ Dx : signal directionnel à x feux
|
/ type de décodeur : 0=feu virtuel 1=digital Bahn 2=CDF 3=LDT 4=LEB
|
||||||
/ type de décodeur : 1=digital Bahn 2=CDF 3=LDT 4=LEB 5=NMRA 6=Unisemaf
|
/ l'énumération des détecteurs ne nécessite pas de parenthèses si il est seul, mais il faut des parenthèses si
|
||||||
|
/ le signal concerne plusieurs voies (donc détecteurs)
|
||||||
/ Notation de chaque ligne:
|
/ Notation de chaque ligne:
|
||||||
/ adresse de base du signal, forme, avec ou sans bouton de commande du feu blanc, type de décodeur [, détecteur (det2, det3, ...) , élément suivant ,
|
/ adresse de base du signal, forme, réserve, type de décodeur [, (détecteur,..detecteur , élément suivant ..) ,
|
||||||
/ avec ou sans demande de verrouillage du feu au carré]
|
/ avec ou sans demande de verrouillage du feu au carré (0 ou 1)]
|
||||||
/
|
161,4,0,4,(538,A32),0
|
||||||
176,7,0,1,(520,A20),1
|
169,9,0,4,(539,A30),0,
|
||||||
190,7,0,1,(523,526),1
|
177,9,0,4,(569,A23),0
|
||||||
204,9,0,1,(527,A7),1
|
185,4,0,4,(570,A25),0
|
||||||
218,7,0,1,(525,A17),1
|
193,4,0,4,(516,A29),0
|
||||||
232,2,1,1,(516,A6),1
|
201,2,0,4,(517,31TRI,518,31TRI),0
|
||||||
260,9,1,1,(518,A1),1
|
209,9,0,4,(513,A24),0
|
||||||
274,3,0,1,(524,521),1
|
217,2,0,4,(514,A26,515,A26),0
|
||||||
288,7,0,1,(522,A8),1
|
225,9,0,4,(561,A22),0
|
||||||
302,9,0,1,(526,A9),1
|
233,4,0,4,(547,A20),0
|
||||||
316,7,1,1,(515,A5),1
|
241,4,0,4,(548,A20),1
|
||||||
330,7,0,1,(519,A2),1
|
1001,3,0,0,(537,554),0
|
||||||
344,9,0,1,(528,A10),1
|
1003,3,0,0,(553,A1B),0
|
||||||
358,9,0,1,(517,A18),1
|
1005,3,0,0,(571,553),0
|
||||||
372,D3,1,(A10D)(A19S)(A19D,A22D)(A19D,A22S)
|
1007,3,0,0,(554,A4),0
|
||||||
382,D3,1,(A29S,A10S)(A19S)(A19D,A22D)(A19D,A22S)
|
1009,3,0,0,(522,539),0
|
||||||
392,3,0,1,(535,533),1
|
1011,3,0,0,(521,569),0
|
||||||
420,7,0,1,(529,A25,530,A27,537,A27),1
|
1013,3,0,0,(565,A7),0
|
||||||
448,7,0,1,(533,A24),1
|
1015,3,0,0,(562,A18),0
|
||||||
462,9,0,1,(513,A29),1
|
1017,3,0,0,(563,A14),0
|
||||||
476,9,0,1,(538,A23),1
|
1019,3,0,0,(564,A14),0
|
||||||
497,9,0,4,(531,A19),1
|
|
||||||
600,7,0,0,(521,A8),1
|
|
||||||
0
|
0
|
||||||
/
|
/
|
||||||
/ Section actionneurs. Ne fonctionne qu'en mode connecté à CDM en run
|
|
||||||
/ Fonctions Fx à envoyer aux locomotives sur passage d'un actionneur
|
/ Fonctions Fx à envoyer aux locomotives sur passage d'un actionneur
|
||||||
/ actionneur,état,Nom du train,fonction,temporisation en ms avant remise à 0
|
/ Uniquement en mode connecté à CDM
|
||||||
/
|
/ actionneur,état,Nom de la loco,fonction,temporisation en ms avant remise à 0
|
||||||
/ Passages à niveau (PN)
|
/815,1,CC406526,F2,400
|
||||||
/ (act_ferme_voie1,act_ouvre_voie1),(act_ferme_voie2,act_ouvre_voie2),...,PN(adresse_ferme,adresse_ouvre)
|
|
||||||
/
|
|
||||||
/ Klaxon (F2)
|
|
||||||
/ 815,1,CC406526,F2,400
|
|
||||||
/
|
|
||||||
/ passage à niveau à 2 voies
|
|
||||||
/(815,830),(820,840),PN(121+,121-)
|
/(815,830),(820,840),PN(121+,121-)
|
||||||
/
|
|
||||||
/ passage à niveau à 1 voie
|
|
||||||
/(815,809),PN(121+,121-)
|
/(815,809),PN(121+,121-)
|
||||||
0
|
0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+19
-2
@@ -107,9 +107,26 @@ A31,0
|
|||||||
476,9,0,1,(538,A23),1
|
476,9,0,1,(538,A23),1
|
||||||
497,9,0,4,(531,A19),1
|
497,9,0,4,(531,A19),1
|
||||||
600,7,0,0,(521,A8),1
|
600,7,0,0,(521,A8),1
|
||||||
610,9,0,6,(520,A20),0,7
|
/ signaux de test
|
||||||
|
610,4,0,0,(521,a8),1
|
||||||
|
615,5,0,0,(521,a8),1
|
||||||
0
|
0
|
||||||
/
|
/
|
||||||
|
/ Section actionneurs. Ne fonctionne qu'en mode connecté à CDM en run
|
||||||
|
/ Fonctions Fx à envoyer aux locomotives sur passage d'un actionneur
|
||||||
|
/ actionneur,état,Nom du train,fonction,temporisation en ms avant remise à 0
|
||||||
|
/
|
||||||
|
/ Passages à niveau (PN)
|
||||||
|
/ (act_ferme_voie1,act_ouvre_voie1),(act_ferme_voie2,act_ouvre_voie2),...,PN(adresse_ferme,adresse_ouvre)
|
||||||
|
/
|
||||||
|
/ Klaxon (F2)
|
||||||
|
/ 815,1,CC406526,F2,400
|
||||||
|
/
|
||||||
|
/ passage à niveau à 2 voies
|
||||||
|
/(815,830),(820,840),PN(121+,121-)
|
||||||
|
/
|
||||||
|
/ passage à niveau à 1 voie
|
||||||
|
/(815,809),PN(121+,121-)
|
||||||
|
0
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
+9
-6
@@ -21,8 +21,9 @@ type
|
|||||||
var
|
var
|
||||||
FormVersion: TFormVersion;
|
FormVersion: TFormVersion;
|
||||||
Lance_verif : integer;
|
Lance_verif : integer;
|
||||||
|
verifVersion,notificationVersion : boolean;
|
||||||
|
|
||||||
Const Version='1.5'; //Version='1.2';// sert à la comparaison de la version publiée
|
Const Version='1.6'; //Version='1.2';// sert à la comparaison de la version publiée
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
@@ -65,8 +66,8 @@ var
|
|||||||
dwTimeout : integer;
|
dwTimeout : integer;
|
||||||
begin
|
begin
|
||||||
Result:=False;
|
Result:=False;
|
||||||
|
DeleteFile(s);
|
||||||
Try Fs:=TFileStream.Create(s,fmCreate);
|
Try Fs:=TFileStream.Create(s,fmCreate,fmShareDenyNone);
|
||||||
hSession:=InternetOpen('MyApp',INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
|
hSession:=InternetOpen('MyApp',INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
|
||||||
try
|
try
|
||||||
if Assigned(hSession) then
|
if Assigned(hSession) then
|
||||||
@@ -105,7 +106,8 @@ var s,s2,s3,Version_p,Url,LocalFile : string;
|
|||||||
V_publie,V_utile : real;
|
V_publie,V_utile : real;
|
||||||
begin
|
begin
|
||||||
//Affiche('vérifie version',clLime);
|
//Affiche('vérifie version',clLime);
|
||||||
if not(AvecInit) then exit ;
|
if not(AvecInit) then exit ;
|
||||||
|
if not(verifVersion) then exit;
|
||||||
Url:='http://cdmrail.free.fr/ForumCDR/viewtopic.php?f=77&t=3906#p50499';
|
Url:='http://cdmrail.free.fr/ForumCDR/viewtopic.php?f=77&t=3906#p50499';
|
||||||
LocalFile:='page.txt';
|
LocalFile:='page.txt';
|
||||||
trouve_version:=false;
|
trouve_version:=false;
|
||||||
@@ -166,6 +168,7 @@ begin
|
|||||||
Aff(s);
|
Aff(s);
|
||||||
if MessageDlg(s+'. Voulez-vous la télécharger?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
|
if MessageDlg(s+'. Voulez-vous la télécharger?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
|
||||||
begin
|
begin
|
||||||
|
// récupérer depuis la variable d'environnement windows USERPROFILE le repertoire de la session ouverte
|
||||||
s:=GetCurrentProcessEnvVar('USERPROFILE')+'\Downloads\Signaux_Complexes_GL.Zip';
|
s:=GetCurrentProcessEnvVar('USERPROFILE')+'\Downloads\Signaux_Complexes_GL.Zip';
|
||||||
Aff('Téléchargement de '+s3+' dans ');
|
Aff('Téléchargement de '+s3+' dans ');
|
||||||
Aff(s);
|
Aff(s);
|
||||||
@@ -181,13 +184,13 @@ begin
|
|||||||
else formVersion.Free;
|
else formVersion.Free;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// if V_utile=V_publie then Affiche('Votre version '+Version_p+' est à jour',clLime);
|
if (V_utile=V_publie) and notificationVersion then Affiche('Votre version '+Version_p+' est à jour',clLime);
|
||||||
|
|
||||||
end;
|
end;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
//Affiche('Pas d''accès au site CDM rail',clorange);
|
if notificationVersion then Affiche('Pas d''accès au site CDM rail',clorange);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|||||||
+4
-1
@@ -17,4 +17,7 @@ Version 1.42 : Correction erreur lecture signaux
|
|||||||
Version 1.43 : Correction erreur gestion sémaphore
|
Version 1.43 : Correction erreur gestion sémaphore
|
||||||
Version 1.44 : Gestion trains avec voitures éclairées
|
Version 1.44 : Gestion trains avec voitures éclairées
|
||||||
Version 1.45 : Rejette les n° d'objets supérieurs aiguillages à la même adresse
|
Version 1.45 : Rejette les n° d'objets supérieurs aiguillages à la même adresse
|
||||||
Version 1.5 : Nouvel algorithme de suivi des trains
|
Version 1.5 : Nouvel algorithme de suivi des trains - Gestion des feux provenant de voies en buttoir
|
||||||
|
Version 1.6 : Implémentation du TCO. Ouverture de CDM rail au démarrage avec LAY à la demande
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user