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