V3.1
This commit is contained in:
14
README.adoc
Normal file
14
README.adoc
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
Signaux_complexes_GL
|
||||||
|
====================
|
||||||
|
|
||||||
|
Client signaux complexes pour CDM rail ou centrales pilotées par XpressNet
|
||||||
|
en USB ou Ethernet.
|
||||||
|
Fichiers sources.
|
||||||
|
|
||||||
|
== Liens ==
|
||||||
|
|
||||||
|
:lien: http://cdmrail.free.fr/ForumCDR/viewtopic.php?f=77&t=3906#p50499
|
||||||
|
:cdm: http://cdmrail.free.fr/SiteCDR/index.html
|
||||||
|
|
||||||
|
* {lien} [Lien vers le fil] -- Forum de CDM rail
|
||||||
|
* {cdm} [Lin vers CDM rail] -- Site de CDM rail
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
# Signaux_complexes_GL
|
|
||||||
Client signaux complexes pour CDM rail ou centrales LENZ
|
|
||||||
Fichiers sources et exécutables.
|
|
||||||
http://cdmrail.free.fr/ForumCDR/viewtopic.php?f=77&t=3906#p50499
|
|
||||||
BIN
UnitConfig.dcu
BIN
UnitConfig.dcu
Binary file not shown.
365
UnitConfig.dfm
365
UnitConfig.dfm
@@ -1,13 +1,13 @@
|
|||||||
object FormConfig: TFormConfig
|
object FormConfig: TFormConfig
|
||||||
Left = 345
|
Left = 285
|
||||||
Top = 219
|
Top = 127
|
||||||
Hint =
|
Hint =
|
||||||
'Modifie les fichiers de configuration selon les s'#233'lections chois' +
|
'Modifie les fichiers de configuration selon les s'#233'lections chois' +
|
||||||
'ies'
|
'ies'
|
||||||
BorderStyle = bsDialog
|
BorderStyle = bsDialog
|
||||||
Caption = 'Configuration g'#233'n'#233'rale'
|
Caption = 'Configuration g'#233'n'#233'rale'
|
||||||
ClientHeight = 501
|
ClientHeight = 501
|
||||||
ClientWidth = 854
|
ClientWidth = 902
|
||||||
Color = clBtnFace
|
Color = clBtnFace
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
Font.Color = clWindowText
|
Font.Color = clWindowText
|
||||||
@@ -21,7 +21,7 @@ object FormConfig: TFormConfig
|
|||||||
PixelsPerInch = 96
|
PixelsPerInch = 96
|
||||||
TextHeight = 13
|
TextHeight = 13
|
||||||
object LabelInfo: TLabel
|
object LabelInfo: TLabel
|
||||||
Left = 601
|
Left = 649
|
||||||
Top = 416
|
Top = 416
|
||||||
Width = 29
|
Width = 29
|
||||||
Height = 16
|
Height = 16
|
||||||
@@ -34,7 +34,7 @@ object FormConfig: TFormConfig
|
|||||||
ParentFont = False
|
ParentFont = False
|
||||||
end
|
end
|
||||||
object Image1: TImage
|
object Image1: TImage
|
||||||
Left = 600
|
Left = 648
|
||||||
Top = 128
|
Top = 128
|
||||||
Width = 249
|
Width = 249
|
||||||
Height = 177
|
Height = 177
|
||||||
@@ -944,7 +944,7 @@ object FormConfig: TFormConfig
|
|||||||
Stretch = True
|
Stretch = True
|
||||||
end
|
end
|
||||||
object Label11: TLabel
|
object Label11: TLabel
|
||||||
Left = 600
|
Left = 648
|
||||||
Top = 32
|
Top = 32
|
||||||
Width = 244
|
Width = 244
|
||||||
Height = 31
|
Height = 31
|
||||||
@@ -957,7 +957,7 @@ object FormConfig: TFormConfig
|
|||||||
ParentFont = False
|
ParentFont = False
|
||||||
end
|
end
|
||||||
object ImageAig: TImage
|
object ImageAig: TImage
|
||||||
Left = 600
|
Left = 648
|
||||||
Top = 312
|
Top = 312
|
||||||
Width = 137
|
Width = 137
|
||||||
Height = 57
|
Height = 57
|
||||||
@@ -1229,7 +1229,7 @@ object FormConfig: TFormConfig
|
|||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
object ImageTJD: TImage
|
object ImageTJD: TImage
|
||||||
Left = 720
|
Left = 760
|
||||||
Top = 320
|
Top = 320
|
||||||
Width = 137
|
Width = 137
|
||||||
Height = 57
|
Height = 57
|
||||||
@@ -1365,7 +1365,7 @@ object FormConfig: TFormConfig
|
|||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
object ImageTri: TImage
|
object ImageTri: TImage
|
||||||
Left = 600
|
Left = 648
|
||||||
Top = 336
|
Top = 336
|
||||||
Width = 145
|
Width = 145
|
||||||
Height = 65
|
Height = 65
|
||||||
@@ -1543,7 +1543,7 @@ object FormConfig: TFormConfig
|
|||||||
Caption = 'Verrouillable au carr'#233' :'
|
Caption = 'Verrouillable au carr'#233' :'
|
||||||
end
|
end
|
||||||
object Image2: TImage
|
object Image2: TImage
|
||||||
Left = 720
|
Left = 760
|
||||||
Top = 352
|
Top = 352
|
||||||
Width = 129
|
Width = 129
|
||||||
Height = 41
|
Height = 41
|
||||||
@@ -1773,9 +1773,9 @@ object FormConfig: TFormConfig
|
|||||||
object PageControl: TPageControl
|
object PageControl: TPageControl
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 8
|
Top = 8
|
||||||
Width = 585
|
Width = 633
|
||||||
Height = 457
|
Height = 457
|
||||||
ActivePage = TabSheetSig
|
ActivePage = TabSheetCDM
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
Font.Color = clBlack
|
Font.Color = clBlack
|
||||||
Font.Height = -11
|
Font.Height = -11
|
||||||
@@ -1787,7 +1787,7 @@ object FormConfig: TFormConfig
|
|||||||
object TabSheetCDM: TTabSheet
|
object TabSheetCDM: TTabSheet
|
||||||
Caption = 'CDM Rail'
|
Caption = 'CDM Rail'
|
||||||
object GroupBox1: TGroupBox
|
object GroupBox1: TGroupBox
|
||||||
Left = 8
|
Left = 16
|
||||||
Top = 8
|
Top = 8
|
||||||
Width = 273
|
Width = 273
|
||||||
Height = 81
|
Height = 81
|
||||||
@@ -1827,7 +1827,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
object GroupBox5: TGroupBox
|
object GroupBox5: TGroupBox
|
||||||
Left = 8
|
Left = 16
|
||||||
Top = 96
|
Top = 96
|
||||||
Width = 273
|
Width = 273
|
||||||
Height = 185
|
Height = 185
|
||||||
@@ -1900,7 +1900,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
object GroupBox6: TGroupBox
|
object GroupBox6: TGroupBox
|
||||||
Left = 296
|
Left = 320
|
||||||
Top = 8
|
Top = 8
|
||||||
Width = 273
|
Width = 273
|
||||||
Height = 169
|
Height = 169
|
||||||
@@ -1980,7 +1980,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
object GroupBox7: TGroupBox
|
object GroupBox7: TGroupBox
|
||||||
Left = 296
|
Left = 320
|
||||||
Top = 184
|
Top = 184
|
||||||
Width = 273
|
Width = 273
|
||||||
Height = 137
|
Height = 137
|
||||||
@@ -2036,7 +2036,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
object GroupBox8: TGroupBox
|
object GroupBox8: TGroupBox
|
||||||
Left = 8
|
Left = 16
|
||||||
Top = 288
|
Top = 288
|
||||||
Width = 273
|
Width = 273
|
||||||
Height = 113
|
Height = 113
|
||||||
@@ -2091,7 +2091,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
object GroupBox15: TGroupBox
|
object GroupBox15: TGroupBox
|
||||||
Left = 296
|
Left = 320
|
||||||
Top = 328
|
Top = 328
|
||||||
Width = 273
|
Width = 273
|
||||||
Height = 73
|
Height = 73
|
||||||
@@ -2120,7 +2120,7 @@ object FormConfig: TFormConfig
|
|||||||
object Label9: TLabel
|
object Label9: TLabel
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 400
|
Top = 400
|
||||||
Width = 297
|
Width = 294
|
||||||
Height = 13
|
Height = 13
|
||||||
Caption = 'Ces param'#232'tres sont utilis'#233's en fonctionnement sans CDM Rail'
|
Caption = 'Ces param'#232'tres sont utilis'#233's en fonctionnement sans CDM Rail'
|
||||||
WordWrap = True
|
WordWrap = True
|
||||||
@@ -2260,55 +2260,54 @@ object FormConfig: TFormConfig
|
|||||||
object Memo1: TMemo
|
object Memo1: TMemo
|
||||||
Left = 312
|
Left = 312
|
||||||
Top = 8
|
Top = 8
|
||||||
Width = 257
|
Width = 297
|
||||||
Height = 97
|
Height = 97
|
||||||
BevelInner = bvLowered
|
BevelInner = bvLowered
|
||||||
BevelKind = bkFlat
|
BevelKind = bkFlat
|
||||||
BorderStyle = bsNone
|
BorderStyle = bsNone
|
||||||
Lines.Strings = (
|
Lines.Strings = (
|
||||||
'1. Port COM de l'#39'adresse USB de l'#39'interface '
|
'1. Port COM de l'#39'adresse USB de l'#39'interface XpressNet.'
|
||||||
'XpressNet.'
|
'Attention de COM1 '#224' 9 - Si le port de l'#39'interface USB>9, il '
|
||||||
'Attention de COM1 '#224' 9 - Si le port de l'#39'interface '
|
'faut le changer manuellement dans le gestionnaire des '
|
||||||
'USB>9, il faut le changer manuellement dans le '
|
'p'#233'riph'#233'riques. '
|
||||||
'gestionnaire des p'#233'riph'#233'riques. Mettre 0 si inutilis'#233'e. '
|
'Mettre 0 si inutilis'#233'e. Le programme ne tentera pas de se '
|
||||||
'Le programme ne tentera pas de se connecter '#224' la '
|
'connecter '#224' la centrale si CDM rail est d'#233'tect'#233'.')
|
||||||
'centrale si CDM rail est d'#233'tect'#233'.')
|
|
||||||
ReadOnly = True
|
ReadOnly = True
|
||||||
TabOrder = 3
|
TabOrder = 3
|
||||||
end
|
end
|
||||||
object Memo2: TMemo
|
object Memo2: TMemo
|
||||||
Left = 312
|
Left = 312
|
||||||
Top = 112
|
Top = 112
|
||||||
Width = 257
|
Width = 297
|
||||||
Height = 97
|
Height = 97
|
||||||
BevelInner = bvLowered
|
BevelInner = bvLowered
|
||||||
BevelKind = bkFlat
|
BevelKind = bkFlat
|
||||||
BorderStyle = bsNone
|
BorderStyle = bsNone
|
||||||
Lines.Strings = (
|
Lines.Strings = (
|
||||||
'2. Valeur de temporisation entre deux octets '
|
'2. Valeur de temporisation entre deux octets transf'#233'r'#233's '#224' '
|
||||||
'transf'#233'r'#233's '#224' l'#39'interface. Elle peut '#234'tre nulle. Pour '
|
'l'#39'interface. Elle peut '#234'tre nulle. '
|
||||||
'les interfaces s'#233'rie sans protocole (0) comme le '
|
'Pour les interfaces s'#233'rie sans protocole (0) comme le '
|
||||||
'GENLI, il est conseill'#233' de la positionner '#224' une '
|
'GENLI, il est conseill'#233' de la positionner '#224' une valeur de '
|
||||||
'valeur de l'#39'ordre de 30 (ms). Pour les interfaces avec '
|
'l'#39'ordre de 30 (ms). '
|
||||||
'protocole mat'#233'riel RTS-CTS (2) cette '
|
'Pour les interfaces avec protocole mat'#233'riel RTS-CTS (2) '
|
||||||
'variable est ignor'#233'e.')
|
'cette variable est ignor'#233'e.')
|
||||||
ReadOnly = True
|
ReadOnly = True
|
||||||
TabOrder = 4
|
TabOrder = 4
|
||||||
end
|
end
|
||||||
object Memo3: TMemo
|
object Memo3: TMemo
|
||||||
Left = 312
|
Left = 312
|
||||||
Top = 216
|
Top = 216
|
||||||
Width = 257
|
Width = 297
|
||||||
Height = 89
|
Height = 89
|
||||||
BevelInner = bvLowered
|
BevelInner = bvLowered
|
||||||
BevelKind = bkFlat
|
BevelKind = bkFlat
|
||||||
BorderStyle = bsNone
|
BorderStyle = bsNone
|
||||||
Lines.Strings = (
|
Lines.Strings = (
|
||||||
'3. Valeur maximale par tranche de 100 ms qui d'#233'finit '
|
'3. Valeur maximale par tranche de 100 ms qui d'#233'finit le temps '
|
||||||
'le temps d'#39'attente de la r'#233'ponse de l'#39'interface apr'#232's '
|
'd'#39'attente de la r'#233'ponse de l'#39'interface apr'#232's '
|
||||||
'une trame qui lui est transf'#233'r'#233'e. Cette valeur est '#224' '
|
'une trame qui lui est transf'#233'r'#233'e. '
|
||||||
'tester en fonction de votre interface. En cas de '
|
'Cette valeur est '#224' tester en fonction de votre interface. '
|
||||||
'd'#233'passement de la valeur, un message '#171' pas de '
|
'En cas de d'#233'passement de la valeur, un message '#171' pas de '
|
||||||
'r'#233'ponse de l'#39'interface '#187' sera affich'#233'.')
|
'r'#233'ponse de l'#39'interface '#187' sera affich'#233'.')
|
||||||
ReadOnly = True
|
ReadOnly = True
|
||||||
TabOrder = 5
|
TabOrder = 5
|
||||||
@@ -2316,17 +2315,17 @@ object FormConfig: TFormConfig
|
|||||||
object Memo4: TMemo
|
object Memo4: TMemo
|
||||||
Left = 312
|
Left = 312
|
||||||
Top = 312
|
Top = 312
|
||||||
Width = 257
|
Width = 297
|
||||||
Height = 73
|
Height = 73
|
||||||
BevelInner = bvLowered
|
BevelInner = bvLowered
|
||||||
BevelKind = bkFlat
|
BevelKind = bkFlat
|
||||||
BorderStyle = bsNone
|
BorderStyle = bsNone
|
||||||
Lines.Strings = (
|
Lines.Strings = (
|
||||||
'4. Pour l'#39'utilisation d'#39'interfaces s'#233'rie (GENLI), cette '
|
'4. Pour l'#39'utilisation d'#39'interfaces s'#233'rie (GENLI), cette valeur '
|
||||||
'valeur doit '#234'tre '#224' 0. Pour les interfaces utilisant '
|
'doit '#234'tre '#224' 0. Pour les interfaces utilisant nativement de '
|
||||||
'nativement de l'#39'USB, cette valeur doit '#234'tre '#224' 1. La '
|
'l'#39'USB, cette valeur doit '#234'tre '#224' 1. '
|
||||||
'valeur 2 est utilis'#233'e exclusivement pour des '
|
'La valeur 2 est utilis'#233'e exclusivement pour des interfaces '#224' '
|
||||||
'interfaces '#224' base d'#39'arduino pour xpressnet.')
|
'base d'#39'arduino pour xpressnet.')
|
||||||
ReadOnly = True
|
ReadOnly = True
|
||||||
TabOrder = 6
|
TabOrder = 6
|
||||||
end
|
end
|
||||||
@@ -2397,11 +2396,25 @@ object FormConfig: TFormConfig
|
|||||||
Height = 13
|
Height = 13
|
||||||
Caption = 'LabelTJD1'
|
Caption = 'LabelTJD1'
|
||||||
end
|
end
|
||||||
|
object Label35: TLabel
|
||||||
|
Left = 0
|
||||||
|
Top = 56
|
||||||
|
Width = 134
|
||||||
|
Height = 13
|
||||||
|
Caption = 'Configuration des aiguillages'
|
||||||
|
end
|
||||||
|
object Label36: TLabel
|
||||||
|
Left = 232
|
||||||
|
Top = 56
|
||||||
|
Width = 86
|
||||||
|
Height = 13
|
||||||
|
Caption = 'Liste d'#39'initialisation'
|
||||||
|
end
|
||||||
object GroupBox11: TGroupBox
|
object GroupBox11: TGroupBox
|
||||||
Left = 280
|
Left = 328
|
||||||
Top = 32
|
Top = 32
|
||||||
Width = 289
|
Width = 289
|
||||||
Height = 353
|
Height = 393
|
||||||
Caption = 'Description de l'#39'aiguillage'
|
Caption = 'Description de l'#39'aiguillage'
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object LabelAdresse: TLabel
|
object LabelAdresse: TLabel
|
||||||
@@ -2433,7 +2446,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
object GroupBox10: TGroupBox
|
object GroupBox10: TGroupBox
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 96
|
Top = 88
|
||||||
Width = 273
|
Width = 273
|
||||||
Height = 73
|
Height = 73
|
||||||
Caption = 'Vitesse de franchissement d'#233'vi'#233' :'
|
Caption = 'Vitesse de franchissement d'#233'vi'#233' :'
|
||||||
@@ -2468,7 +2481,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
object CheckInverse: TCheckBox
|
object CheckInverse: TCheckBox
|
||||||
Left = 16
|
Left = 16
|
||||||
Top = 296
|
Top = 269
|
||||||
Width = 137
|
Width = 137
|
||||||
Height = 17
|
Height = 17
|
||||||
Caption = 'Inversion de l'#39#233'tat CDM'
|
Caption = 'Inversion de l'#39#233'tat CDM'
|
||||||
@@ -2484,7 +2497,7 @@ object FormConfig: TFormConfig
|
|||||||
OnChange = EditAdrAigChange
|
OnChange = EditAdrAigChange
|
||||||
end
|
end
|
||||||
object ComboBoxAig: TComboBox
|
object ComboBoxAig: TComboBox
|
||||||
Left = 72
|
Left = 8
|
||||||
Top = 64
|
Top = 64
|
||||||
Width = 145
|
Width = 145
|
||||||
Height = 21
|
Height = 21
|
||||||
@@ -2500,9 +2513,9 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
object GroupBox16: TGroupBox
|
object GroupBox16: TGroupBox
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 176
|
Top = 168
|
||||||
Width = 273
|
Width = 273
|
||||||
Height = 105
|
Height = 97
|
||||||
Caption = 'Repr'#233'sentation'
|
Caption = 'Repr'#233'sentation'
|
||||||
TabOrder = 4
|
TabOrder = 4
|
||||||
object LabelHG: TLabel
|
object LabelHG: TLabel
|
||||||
@@ -2577,15 +2590,15 @@ object FormConfig: TFormConfig
|
|||||||
ParentFont = False
|
ParentFont = False
|
||||||
end
|
end
|
||||||
object LabelTJD1: TLabel
|
object LabelTJD1: TLabel
|
||||||
Left = 72
|
Left = 96
|
||||||
Top = 84
|
Top = 76
|
||||||
Width = 52
|
Width = 52
|
||||||
Height = 13
|
Height = 13
|
||||||
Caption = 'LabelTJD1'
|
Caption = 'LabelTJD1'
|
||||||
end
|
end
|
||||||
object LabelTJD2: TLabel
|
object LabelTJD2: TLabel
|
||||||
Left = 152
|
Left = 168
|
||||||
Top = 84
|
Top = 76
|
||||||
Width = 52
|
Width = 52
|
||||||
Height = 13
|
Height = 13
|
||||||
Caption = 'LabelTJD1'
|
Caption = 'LabelTJD1'
|
||||||
@@ -2673,8 +2686,8 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
object ButtonRestaureAig: TButton
|
object ButtonRestaureAig: TButton
|
||||||
Left = 192
|
Left = 200
|
||||||
Top = 296
|
Top = 56
|
||||||
Width = 75
|
Width = 75
|
||||||
Height = 25
|
Height = 25
|
||||||
Hint =
|
Hint =
|
||||||
@@ -2695,24 +2708,76 @@ object FormConfig: TFormConfig
|
|||||||
Visible = False
|
Visible = False
|
||||||
OnChange = EditAigTripleChange
|
OnChange = EditAigTripleChange
|
||||||
end
|
end
|
||||||
|
object GroupBox21: TGroupBox
|
||||||
|
Left = 8
|
||||||
|
Top = 288
|
||||||
|
Width = 273
|
||||||
|
Height = 97
|
||||||
|
Caption = 'Initialisation de l'#39'aiguillage en mode autonome'
|
||||||
|
TabOrder = 7
|
||||||
|
object Label37: TLabel
|
||||||
|
Left = 8
|
||||||
|
Top = 26
|
||||||
|
Width = 66
|
||||||
|
Height = 13
|
||||||
|
Caption = 'D'#233'vi'#233' ou droit'
|
||||||
|
end
|
||||||
|
object Label38: TLabel
|
||||||
|
Left = 8
|
||||||
|
Top = 42
|
||||||
|
Width = 129
|
||||||
|
Height = 13
|
||||||
|
Caption = 'Temporisation (1/10'#232'me s)'
|
||||||
|
end
|
||||||
|
object LabelDevie: TLabel
|
||||||
|
Left = 200
|
||||||
|
Top = 24
|
||||||
|
Width = 3
|
||||||
|
Height = 13
|
||||||
|
end
|
||||||
|
object EditDevDroit: TEdit
|
||||||
|
Left = 152
|
||||||
|
Top = 18
|
||||||
|
Width = 41
|
||||||
|
Height = 21
|
||||||
|
TabOrder = 0
|
||||||
|
OnChange = EditDevDroitChange
|
||||||
|
end
|
||||||
|
object EditTempo10: TEdit
|
||||||
|
Left = 152
|
||||||
|
Top = 40
|
||||||
|
Width = 41
|
||||||
|
Height = 21
|
||||||
|
TabOrder = 1
|
||||||
|
OnChange = EditTempo10Change
|
||||||
|
end
|
||||||
|
object CheckInvInit: TCheckBox
|
||||||
|
Left = 8
|
||||||
|
Top = 64
|
||||||
|
Width = 153
|
||||||
|
Height = 17
|
||||||
|
Caption = 'Pilotage invers'#233
|
||||||
|
TabOrder = 2
|
||||||
|
OnClick = CheckInvInitClick
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
object RichAig: TRichEdit
|
object RichAig: TRichEdit
|
||||||
Left = 0
|
Left = 0
|
||||||
Top = 56
|
Top = 72
|
||||||
Width = 265
|
Width = 233
|
||||||
Height = 337
|
Height = 353
|
||||||
Color = clBlack
|
Color = clBlack
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
Font.Color = clYellow
|
Font.Color = clYellow
|
||||||
Font.Height = -11
|
Font.Height = -11
|
||||||
Font.Name = 'MS Sans Serif'
|
Font.Name = 'MS Sans Serif'
|
||||||
Font.Style = []
|
Font.Style = []
|
||||||
Lines.Strings = (
|
|
||||||
'RichAig')
|
|
||||||
ParentFont = False
|
ParentFont = False
|
||||||
ReadOnly = True
|
ReadOnly = True
|
||||||
ScrollBars = ssVertical
|
ScrollBars = ssBoth
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
|
WordWrap = False
|
||||||
OnMouseDown = RichAigMouseDown
|
OnMouseDown = RichAigMouseDown
|
||||||
end
|
end
|
||||||
object ButtonNouvAig: TButton
|
object ButtonNouvAig: TButton
|
||||||
@@ -2742,6 +2807,23 @@ object FormConfig: TFormConfig
|
|||||||
TabOrder = 4
|
TabOrder = 4
|
||||||
OnClick = ButtonAjSupClick
|
OnClick = ButtonAjSupClick
|
||||||
end
|
end
|
||||||
|
object RichInitAig: TRichEdit
|
||||||
|
Left = 232
|
||||||
|
Top = 72
|
||||||
|
Width = 89
|
||||||
|
Height = 353
|
||||||
|
Color = clBlack
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clYellow
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'MS Sans Serif'
|
||||||
|
Font.Style = []
|
||||||
|
ParentFont = False
|
||||||
|
ReadOnly = True
|
||||||
|
ScrollBars = ssBoth
|
||||||
|
TabOrder = 5
|
||||||
|
WordWrap = False
|
||||||
|
end
|
||||||
end
|
end
|
||||||
object TabSheetBranches: TTabSheet
|
object TabSheetBranches: TTabSheet
|
||||||
Caption = 'Branches'
|
Caption = 'Branches'
|
||||||
@@ -2756,7 +2838,7 @@ object FormConfig: TFormConfig
|
|||||||
'la modifier - Valider la ligne apr'#232's modification'
|
'la modifier - Valider la ligne apr'#232's modification'
|
||||||
end
|
end
|
||||||
object Label34: TLabel
|
object Label34: TLabel
|
||||||
Left = 408
|
Left = 472
|
||||||
Top = 192
|
Top = 192
|
||||||
Width = 136
|
Width = 136
|
||||||
Height = 26
|
Height = 26
|
||||||
@@ -2764,7 +2846,7 @@ object FormConfig: TFormConfig
|
|||||||
WordWrap = True
|
WordWrap = True
|
||||||
end
|
end
|
||||||
object GroupBox20: TGroupBox
|
object GroupBox20: TGroupBox
|
||||||
Left = 408
|
Left = 464
|
||||||
Top = 24
|
Top = 24
|
||||||
Width = 153
|
Width = 153
|
||||||
Height = 161
|
Height = 161
|
||||||
@@ -2809,7 +2891,7 @@ object FormConfig: TFormConfig
|
|||||||
object RichBranche: TRichEdit
|
object RichBranche: TRichEdit
|
||||||
Left = 0
|
Left = 0
|
||||||
Top = 24
|
Top = 24
|
||||||
Width = 401
|
Width = 457
|
||||||
Height = 401
|
Height = 401
|
||||||
Color = clBlack
|
Color = clBlack
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
@@ -2822,6 +2904,7 @@ object FormConfig: TFormConfig
|
|||||||
ParentFont = False
|
ParentFont = False
|
||||||
ScrollBars = ssBoth
|
ScrollBars = ssBoth
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
|
WordWrap = False
|
||||||
OnMouseDown = RichBrancheMouseDown
|
OnMouseDown = RichBrancheMouseDown
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -2838,10 +2921,10 @@ object FormConfig: TFormConfig
|
|||||||
'z sur une ligne pour afficher la description du signal'
|
'z sur une ligne pour afficher la description du signal'
|
||||||
end
|
end
|
||||||
object GroupBox12: TGroupBox
|
object GroupBox12: TGroupBox
|
||||||
Left = 288
|
Left = 336
|
||||||
Top = 40
|
Top = 40
|
||||||
Width = 281
|
Width = 281
|
||||||
Height = 353
|
Height = 385
|
||||||
Caption = 'Description du signal'
|
Caption = 'Description du signal'
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object ImageSignal: TImage
|
object ImageSignal: TImage
|
||||||
@@ -2964,10 +3047,11 @@ object FormConfig: TFormConfig
|
|||||||
object MemoCarre: TMemo
|
object MemoCarre: TMemo
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 280
|
Top = 280
|
||||||
Width = 241
|
Width = 265
|
||||||
Height = 65
|
Height = 89
|
||||||
ScrollBars = ssVertical
|
ScrollBars = ssBoth
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
|
WordWrap = False
|
||||||
OnChange = MemoCarreChange
|
OnChange = MemoCarreChange
|
||||||
end
|
end
|
||||||
object ComboBoxDec: TComboBox
|
object ComboBoxDec: TComboBox
|
||||||
@@ -3052,7 +3136,7 @@ object FormConfig: TFormConfig
|
|||||||
OnChange = EditSuiv4Change
|
OnChange = EditSuiv4Change
|
||||||
end
|
end
|
||||||
object CheckVerrouCarre: TCheckBox
|
object CheckVerrouCarre: TCheckBox
|
||||||
Left = 104
|
Left = 120
|
||||||
Top = 224
|
Top = 224
|
||||||
Width = 145
|
Width = 145
|
||||||
Height = 17
|
Height = 17
|
||||||
@@ -3115,8 +3199,8 @@ object FormConfig: TFormConfig
|
|||||||
object RichSig: TRichEdit
|
object RichSig: TRichEdit
|
||||||
Left = 0
|
Left = 0
|
||||||
Top = 56
|
Top = 56
|
||||||
Width = 273
|
Width = 329
|
||||||
Height = 337
|
Height = 369
|
||||||
Color = clBlack
|
Color = clBlack
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
Font.Color = clYellow
|
Font.Color = clYellow
|
||||||
@@ -3173,43 +3257,27 @@ object FormConfig: TFormConfig
|
|||||||
'iquez sur une ligne pour afficher la description de l'#39'action'
|
'iquez sur une ligne pour afficher la description de l'#39'action'
|
||||||
end
|
end
|
||||||
object GroupBox13: TGroupBox
|
object GroupBox13: TGroupBox
|
||||||
Left = 304
|
Left = 360
|
||||||
Top = 32
|
Top = 32
|
||||||
Width = 257
|
Width = 257
|
||||||
Height = 385
|
Height = 385
|
||||||
Caption = 'Description de l'#39'actionneur '
|
Caption = 'Description de l'#39'actionneur '
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object GroupBoxRadio: TGroupBox
|
object Label40: TLabel
|
||||||
Left = 16
|
Left = 16
|
||||||
Top = 24
|
Top = 328
|
||||||
Width = 225
|
Width = 191
|
||||||
Height = 65
|
Height = 26
|
||||||
Caption = 'Type d'#39'actionneur '
|
Caption =
|
||||||
TabOrder = 0
|
'Les accessoires ne sont utilisables qu'#39'en mode connect'#233' avec CDM' +
|
||||||
object RadioButtonLoc: TRadioButton
|
' Rail'
|
||||||
Left = 24
|
WordWrap = True
|
||||||
Top = 24
|
|
||||||
Width = 193
|
|
||||||
Height = 17
|
|
||||||
Caption = 'Fonction F pour locomotive'
|
|
||||||
TabOrder = 0
|
|
||||||
OnClick = RadioButtonLocClick
|
|
||||||
end
|
|
||||||
object RadioButtonAccess: TRadioButton
|
|
||||||
Left = 24
|
|
||||||
Top = 40
|
|
||||||
Width = 161
|
|
||||||
Height = 17
|
|
||||||
Caption = 'Fonction F pour accessoire'
|
|
||||||
TabOrder = 1
|
|
||||||
OnClick = RadioButtonAccessClick
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
object GroupBoxPN: TGroupBox
|
object GroupBoxPN: TGroupBox
|
||||||
Left = 32
|
Left = -32
|
||||||
Top = 80
|
Top = 24
|
||||||
Width = 225
|
Width = 225
|
||||||
Height = 193
|
Height = 289
|
||||||
Caption = 'Actionneurs gestion passage '#224' niveau'
|
Caption = 'Actionneurs gestion passage '#224' niveau'
|
||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
object Label21: TLabel
|
object Label21: TLabel
|
||||||
@@ -3253,6 +3321,13 @@ object FormConfig: TFormConfig
|
|||||||
Width = 137
|
Width = 137
|
||||||
Height = 2
|
Height = 2
|
||||||
end
|
end
|
||||||
|
object Label39: TLabel
|
||||||
|
Left = 8
|
||||||
|
Top = 188
|
||||||
|
Width = 30
|
||||||
|
Height = 13
|
||||||
|
Caption = 'Voie 4'
|
||||||
|
end
|
||||||
object EditAdrFerme: TEdit
|
object EditAdrFerme: TEdit
|
||||||
Left = 120
|
Left = 120
|
||||||
Top = 24
|
Top = 24
|
||||||
@@ -3349,19 +3424,61 @@ object FormConfig: TFormConfig
|
|||||||
TabOrder = 11
|
TabOrder = 11
|
||||||
OnChange = EditV3OChange
|
OnChange = EditV3OChange
|
||||||
end
|
end
|
||||||
|
object EditV4F: TEdit
|
||||||
|
Left = 64
|
||||||
|
Top = 184
|
||||||
|
Width = 41
|
||||||
|
Height = 21
|
||||||
|
TabOrder = 12
|
||||||
|
OnChange = EditV4FChange
|
||||||
end
|
end
|
||||||
object GroupBoxAct: TGroupBox
|
object EditV4O: TEdit
|
||||||
|
Left = 152
|
||||||
|
Top = 184
|
||||||
|
Width = 41
|
||||||
|
Height = 21
|
||||||
|
TabOrder = 13
|
||||||
|
OnChange = EditV4OChange
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object GroupBoxRadio: TGroupBox
|
||||||
Left = 16
|
Left = 16
|
||||||
Top = 72
|
Top = 72
|
||||||
Width = 225
|
Width = 225
|
||||||
Height = 249
|
Height = 65
|
||||||
|
Caption = 'Type d'#39'actionneur '
|
||||||
|
TabOrder = 0
|
||||||
|
object RadioButtonLoc: TRadioButton
|
||||||
|
Left = 24
|
||||||
|
Top = 24
|
||||||
|
Width = 193
|
||||||
|
Height = 17
|
||||||
|
Caption = 'Fonction F pour locomotive'
|
||||||
|
TabOrder = 0
|
||||||
|
OnClick = RadioButtonLocClick
|
||||||
|
end
|
||||||
|
object RadioButtonAccess: TRadioButton
|
||||||
|
Left = 24
|
||||||
|
Top = 40
|
||||||
|
Width = 161
|
||||||
|
Height = 17
|
||||||
|
Caption = 'Fonction F pour accessoire'
|
||||||
|
TabOrder = 1
|
||||||
|
OnClick = RadioButtonAccessClick
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object GroupBoxAct: TGroupBox
|
||||||
|
Left = 16
|
||||||
|
Top = 104
|
||||||
|
Width = 225
|
||||||
|
Height = 225
|
||||||
Caption = 'Actionneur fonction de locomotive '
|
Caption = 'Actionneur fonction de locomotive '
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
object GroupBox18: TGroupBox
|
object GroupBox18: TGroupBox
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 24
|
Top = 24
|
||||||
Width = 209
|
Width = 209
|
||||||
Height = 97
|
Height = 81
|
||||||
Caption = 'D'#233'clencheur '
|
Caption = 'D'#233'clencheur '
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object LabelActionneur: TLabel
|
object LabelActionneur: TLabel
|
||||||
@@ -3417,13 +3534,13 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
object GroupBox19: TGroupBox
|
object GroupBox19: TGroupBox
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 128
|
Top = 112
|
||||||
Width = 209
|
Width = 209
|
||||||
Height = 105
|
Height = 105
|
||||||
Caption = 'Action '
|
Caption = 'Action '
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
object LabelTempo: TLabel
|
object LabelTempo: TLabel
|
||||||
Left = 40
|
Left = 48
|
||||||
Top = 52
|
Top = 52
|
||||||
Width = 55
|
Width = 55
|
||||||
Height = 13
|
Height = 13
|
||||||
@@ -3447,8 +3564,8 @@ object FormConfig: TFormConfig
|
|||||||
Caption = #224
|
Caption = #224
|
||||||
end
|
end
|
||||||
object EditTempo: TEdit
|
object EditTempo: TEdit
|
||||||
Left = 128
|
Left = 112
|
||||||
Top = 45
|
Top = 46
|
||||||
Width = 33
|
Width = 33
|
||||||
Height = 21
|
Height = 21
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
@@ -3456,7 +3573,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
object CheckRAZ: TCheckBox
|
object CheckRAZ: TCheckBox
|
||||||
Left = 32
|
Left = 32
|
||||||
Top = 72
|
Top = 80
|
||||||
Width = 145
|
Width = 145
|
||||||
Height = 17
|
Height = 17
|
||||||
Caption = 'Remise '#224' 0 apr'#232's pilotage'
|
Caption = 'Remise '#224' 0 apr'#232's pilotage'
|
||||||
@@ -3465,7 +3582,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
object EditFonctionAccess: TEdit
|
object EditFonctionAccess: TEdit
|
||||||
Left = 112
|
Left = 112
|
||||||
Top = 15
|
Top = 18
|
||||||
Width = 25
|
Width = 25
|
||||||
Height = 21
|
Height = 21
|
||||||
Hint = 'Num'#233'ro de fonction du d'#233'codeur du train'
|
Hint = 'Num'#233'ro de fonction du d'#233'codeur du train'
|
||||||
@@ -3476,7 +3593,7 @@ object FormConfig: TFormConfig
|
|||||||
end
|
end
|
||||||
object EditEtatFoncSortie: TEdit
|
object EditEtatFoncSortie: TEdit
|
||||||
Left = 160
|
Left = 160
|
||||||
Top = 15
|
Top = 18
|
||||||
Width = 25
|
Width = 25
|
||||||
Height = 21
|
Height = 21
|
||||||
TabOrder = 3
|
TabOrder = 3
|
||||||
@@ -3488,7 +3605,7 @@ object FormConfig: TFormConfig
|
|||||||
object GroupBox14: TGroupBox
|
object GroupBox14: TGroupBox
|
||||||
Left = 0
|
Left = 0
|
||||||
Top = 32
|
Top = 32
|
||||||
Width = 297
|
Width = 345
|
||||||
Height = 185
|
Height = 185
|
||||||
Caption = 'Actionneurs locomotives ou accessoires'
|
Caption = 'Actionneurs locomotives ou accessoires'
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
@@ -3516,7 +3633,7 @@ object FormConfig: TFormConfig
|
|||||||
object RichAct: TRichEdit
|
object RichAct: TRichEdit
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 48
|
Top = 48
|
||||||
Width = 281
|
Width = 329
|
||||||
Height = 129
|
Height = 129
|
||||||
Color = clBlack
|
Color = clBlack
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
@@ -3526,16 +3643,17 @@ object FormConfig: TFormConfig
|
|||||||
Font.Style = []
|
Font.Style = []
|
||||||
ParentFont = False
|
ParentFont = False
|
||||||
ReadOnly = True
|
ReadOnly = True
|
||||||
ScrollBars = ssVertical
|
ScrollBars = ssBoth
|
||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
|
WordWrap = False
|
||||||
OnMouseDown = RichActMouseDown
|
OnMouseDown = RichActMouseDown
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object GroupBox17: TGroupBox
|
object GroupBox17: TGroupBox
|
||||||
Left = 0
|
Left = 0
|
||||||
Top = 232
|
Top = 232
|
||||||
Width = 297
|
Width = 345
|
||||||
Height = 185
|
Height = 193
|
||||||
Caption = 'Actionneurs passage '#224' niveau'
|
Caption = 'Actionneurs passage '#224' niveau'
|
||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
object ButtonNouvPN: TButton
|
object ButtonNouvPN: TButton
|
||||||
@@ -3562,8 +3680,8 @@ object FormConfig: TFormConfig
|
|||||||
object RichPN: TRichEdit
|
object RichPN: TRichEdit
|
||||||
Left = 8
|
Left = 8
|
||||||
Top = 48
|
Top = 48
|
||||||
Width = 281
|
Width = 329
|
||||||
Height = 129
|
Height = 137
|
||||||
Color = clBlack
|
Color = clBlack
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
Font.Color = clYellow
|
Font.Color = clYellow
|
||||||
@@ -3572,8 +3690,9 @@ object FormConfig: TFormConfig
|
|||||||
Font.Style = []
|
Font.Style = []
|
||||||
ParentFont = False
|
ParentFont = False
|
||||||
ReadOnly = True
|
ReadOnly = True
|
||||||
ScrollBars = ssVertical
|
ScrollBars = ssBoth
|
||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
|
WordWrap = False
|
||||||
OnMouseDown = RichPNMouseDown
|
OnMouseDown = RichPNMouseDown
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
1049
UnitConfig.pas
1049
UnitConfig.pas
File diff suppressed because it is too large
Load Diff
BIN
UnitDebug.dcu
BIN
UnitDebug.dcu
Binary file not shown.
BIN
UnitPrinc.dcu
BIN
UnitPrinc.dcu
Binary file not shown.
@@ -1,6 +1,6 @@
|
|||||||
object FormPrinc: TFormPrinc
|
object FormPrinc: TFormPrinc
|
||||||
Left = 58
|
Left = 55
|
||||||
Top = 217
|
Top = 177
|
||||||
Width = 1212
|
Width = 1212
|
||||||
Height = 664
|
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'
|
||||||
@@ -1434,6 +1434,7 @@ object FormPrinc: TFormPrinc
|
|||||||
ReadOnly = True
|
ReadOnly = True
|
||||||
ScrollBars = ssBoth
|
ScrollBars = ssBoth
|
||||||
TabOrder = 7
|
TabOrder = 7
|
||||||
|
WordWrap = False
|
||||||
OnChange = FenRichChange
|
OnChange = FenRichChange
|
||||||
end
|
end
|
||||||
object GroupBox2: TGroupBox
|
object GroupBox2: TGroupBox
|
||||||
@@ -1600,6 +1601,7 @@ object FormPrinc: TFormPrinc
|
|||||||
end
|
end
|
||||||
object Vrifierlacohrence: TMenuItem
|
object Vrifierlacohrence: TMenuItem
|
||||||
Caption = 'V'#233'rifier la coh'#233'rence'
|
Caption = 'V'#233'rifier la coh'#233'rence'
|
||||||
|
Hint = 'V'#233'rifie la coh'#233'rence de la configuration'
|
||||||
OnClick = VrifierlacohrenceClick
|
OnClick = VrifierlacohrenceClick
|
||||||
end
|
end
|
||||||
object N8: TMenuItem
|
object N8: TMenuItem
|
||||||
|
|||||||
@@ -208,6 +208,7 @@ type TBranche = record
|
|||||||
Adresse : integer;
|
Adresse : integer;
|
||||||
modele : integer; // 0=n'existe pas 1=aiguillage 2=TJD 3=TJS 4=aiguillage triple
|
modele : integer; // 0=n'existe pas 1=aiguillage 2=TJD 3=TJS 4=aiguillage triple
|
||||||
position, // position actuelle : 1=dévié 2=droit (centrale LENZ)
|
position, // position actuelle : 1=dévié 2=droit (centrale LENZ)
|
||||||
|
posInit, // position d'initialisation
|
||||||
Adrtriple, // 2eme adresse pour un aiguillage triple
|
Adrtriple, // 2eme adresse pour un aiguillage triple
|
||||||
temps, // temps de pilotage (durée de l'impulsion en x 100 ms)
|
temps, // temps de pilotage (durée de l'impulsion en x 100 ms)
|
||||||
inversion : integer; // positionné dans fichier config_gl section_init
|
inversion : integer; // positionné dans fichier config_gl section_init
|
||||||
@@ -268,7 +269,7 @@ TFeu = record
|
|||||||
posAig : char;
|
posAig : char;
|
||||||
end;
|
end;
|
||||||
CondCarre : array[1..6] of array of record // conditions supplémentaires d'aiguillages en position pour le carré
|
CondCarre : array[1..6] of array of record // conditions supplémentaires d'aiguillages en position pour le carré
|
||||||
// attention les données sont stockée en adresse 1 du tableau dynamique
|
// attention les données sont stockées en adresse 1 du tableau dynamique
|
||||||
Adresse : integer; // aiguillage
|
Adresse : integer; // aiguillage
|
||||||
posAig : char;
|
posAig : char;
|
||||||
end;
|
end;
|
||||||
@@ -1261,6 +1262,7 @@ var TypeFeu : integer;
|
|||||||
const espY = 15;//40; // espacement Y entre deux lignes de feux
|
const espY = 15;//40; // espacement Y entre deux lignes de feux
|
||||||
begin
|
begin
|
||||||
TypeFeu:=feux[rang].aspect;
|
TypeFeu:=feux[rang].aspect;
|
||||||
|
if typeFeu<=0 then exit;
|
||||||
Feux[rang].Img:=Timage.create(Formprinc.ScrollBox1);
|
Feux[rang].Img:=Timage.create(Formprinc.ScrollBox1);
|
||||||
with Feux[rang].Img do
|
with Feux[rang].Img do
|
||||||
begin
|
begin
|
||||||
@@ -2294,7 +2296,6 @@ var
|
|||||||
combine,aspect,code : word;
|
combine,aspect,code : word;
|
||||||
s : string;
|
s : string;
|
||||||
begin
|
begin
|
||||||
code:=etatsignalcplx[adresse];
|
|
||||||
if (ancien_tablo_signalCplx[adresse]<>EtatSignalCplx[adresse]) then //; && (stop_cmd==FALSE))
|
if (ancien_tablo_signalCplx[adresse]<>EtatSignalCplx[adresse]) then //; && (stop_cmd==FALSE))
|
||||||
begin
|
begin
|
||||||
ancien_tablo_signalCplx[adresse]:=EtatSignalCplx[adresse];
|
ancien_tablo_signalCplx[adresse]:=EtatSignalCplx[adresse];
|
||||||
@@ -2430,7 +2431,6 @@ begin
|
|||||||
if TCO[x,y].Bimage=30 then
|
if TCO[x,y].Bimage=30 then
|
||||||
begin
|
begin
|
||||||
adresse:=TCO[x,y].adresse; // vérifie si le feu existe dans le TCO
|
adresse:=TCO[x,y].adresse; // vérifie si le feu existe dans le TCO
|
||||||
a:=EtatsignalCplx[adresse]; // a = état binaire du feu
|
|
||||||
aspect:=TCO[x,y].aspect;
|
aspect:=TCO[x,y].aspect;
|
||||||
case aspect of
|
case aspect of
|
||||||
2 : ImageFeu:=Formprinc.Image2feux;
|
2 : ImageFeu:=Formprinc.Image2feux;
|
||||||
@@ -2563,7 +2563,6 @@ procedure trouve_detecteur(detecteur : integer);
|
|||||||
var NBranche,i : integer;
|
var NBranche,i : integer;
|
||||||
begin
|
begin
|
||||||
Nbranche:=1;
|
Nbranche:=1;
|
||||||
i:=1;
|
|
||||||
repeat
|
repeat
|
||||||
i:=index_detecteur(detecteur,Nbranche);
|
i:=index_detecteur(detecteur,Nbranche);
|
||||||
if i=0 then inc(NBranche);
|
if i=0 then inc(NBranche);
|
||||||
@@ -2579,7 +2578,6 @@ procedure trouve_aiguillage(adresse : integer);
|
|||||||
var NBranche,i : integer;
|
var NBranche,i : integer;
|
||||||
begin
|
begin
|
||||||
Nbranche:=1;
|
Nbranche:=1;
|
||||||
i:=1;
|
|
||||||
repeat
|
repeat
|
||||||
i:=index_aiguillage(Adresse,Nbranche);
|
i:=index_aiguillage(Adresse,Nbranche);
|
||||||
if i=0 then inc(NBranche);
|
if i=0 then inc(NBranche);
|
||||||
@@ -2637,7 +2635,6 @@ var s,sa,chaine,SOrigine: string;
|
|||||||
if esp<>0 then delete(s,esp,1);
|
if esp<>0 then delete(s,esp,1);
|
||||||
until esp=0;
|
until esp=0;
|
||||||
lit_ligne:=s;
|
lit_ligne:=s;
|
||||||
//Affiche(s,clWhite);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure compile_section_init;
|
procedure compile_section_init;
|
||||||
@@ -2650,14 +2647,16 @@ var s,sa,chaine,SOrigine: string;
|
|||||||
if j>1 then
|
if j>1 then
|
||||||
begin
|
begin
|
||||||
begin
|
begin
|
||||||
adresse:=StrToINT(copy(s,1,j-1));Delete(s,1,j); // adresse aiguillage
|
Val(s,adresse,erreur);
|
||||||
|
Delete(s,1,j); // adresse aiguillage
|
||||||
if (adresse>0) and (AvecInitAiguillages) then
|
if (adresse>0) and (AvecInitAiguillages) then
|
||||||
begin
|
begin
|
||||||
j:=pos(',',s);
|
j:=pos(',',s);
|
||||||
position:=StrToInt(copy(s,1,j-1));Delete(S,1,j);// position aiguillage
|
Val(s,position,erreur);
|
||||||
|
Delete(S,1,j);// position aiguillage
|
||||||
if (position<1) or (position>2) then position:=1;
|
if (position<1) or (position>2) then position:=1;
|
||||||
index:=Index_Aig(adresse);
|
index:=Index_Aig(adresse);
|
||||||
aiguillage[index].position:=position;
|
aiguillage[index].posInit:=position;
|
||||||
|
|
||||||
// temporisation aiguillage
|
// temporisation aiguillage
|
||||||
j:=pos(',',s);if j=0 then j:=length(s);
|
j:=pos(',',s);if j=0 then j:=length(s);
|
||||||
@@ -2704,6 +2703,7 @@ begin
|
|||||||
Aiguillage[i].modele:=0 ; // sans existence
|
Aiguillage[i].modele:=0 ; // sans existence
|
||||||
Aiguillage[i].adresse:=0;
|
Aiguillage[i].adresse:=0;
|
||||||
Aiguillage[i].position:=const_inconnu; // position inconnue
|
Aiguillage[i].position:=const_inconnu; // position inconnue
|
||||||
|
Aiguillage[i].PosInit:=const_inconnu; // position inconnue
|
||||||
Aiguillage[i].temps:=5 ;
|
Aiguillage[i].temps:=5 ;
|
||||||
Aiguillage[i].inversion:=0;
|
Aiguillage[i].inversion:=0;
|
||||||
Aiguillage[i].inversionCDM:=0;
|
Aiguillage[i].inversionCDM:=0;
|
||||||
@@ -2715,7 +2715,6 @@ begin
|
|||||||
Ancien_detecteur[i]:=false;
|
Ancien_detecteur[i]:=false;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
Affiche('lecture du fichier de configuration config.cfg',clyellow);
|
Affiche('lecture du fichier de configuration config.cfg',clyellow);
|
||||||
{$I+}
|
{$I+}
|
||||||
try
|
try
|
||||||
@@ -3367,6 +3366,7 @@ begin
|
|||||||
AvecInitAiguillages:=s='1';
|
AvecInitAiguillages:=s='1';
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
// taille de la fenetre
|
||||||
sa:=uppercase(fenetre_ch)+'=';
|
sa:=uppercase(fenetre_ch)+'=';
|
||||||
i:=pos(sa,s);
|
i:=pos(sa,s);
|
||||||
if i<>0 then
|
if i<>0 then
|
||||||
@@ -3378,6 +3378,7 @@ begin
|
|||||||
if fenetre=1 then Formprinc.windowState:=wsMaximized;
|
if fenetre=1 then Formprinc.windowState:=wsMaximized;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
// temporisation aiguillages
|
||||||
sa:=uppercase(Tempo_Aig_ch)+'=';
|
sa:=uppercase(Tempo_Aig_ch)+'=';
|
||||||
i:=pos(sa,s);
|
i:=pos(sa,s);
|
||||||
if i<>0 then
|
if i<>0 then
|
||||||
@@ -3388,7 +3389,6 @@ begin
|
|||||||
val(s,Tempo_Aig,erreur);
|
val(s,Tempo_Aig,erreur);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
i:=pos(uppercase(section_init),s);
|
i:=pos(uppercase(section_init),s);
|
||||||
if i<>0 then
|
if i<>0 then
|
||||||
begin
|
begin
|
||||||
@@ -3418,7 +3418,6 @@ begin
|
|||||||
delete(s,i,length(sa));
|
delete(s,i,length(sa));
|
||||||
trouve_NOTIF_VERSION:=true;
|
trouve_NOTIF_VERSION:=true;
|
||||||
// vérification de la version au démarrage
|
// vérification de la version au démarrage
|
||||||
i:=0;
|
|
||||||
val(s,i,erreur);
|
val(s,i,erreur);
|
||||||
notificationVersion:=i=1;
|
notificationVersion:=i=1;
|
||||||
end;
|
end;
|
||||||
@@ -3431,7 +3430,6 @@ begin
|
|||||||
delete(s,i,length(sa));
|
delete(s,i,length(sa));
|
||||||
trouve_TCO:=true;
|
trouve_TCO:=true;
|
||||||
// vérification de la version au démarrage
|
// vérification de la version au démarrage
|
||||||
i:=0;
|
|
||||||
val(s,i,erreur);
|
val(s,i,erreur);
|
||||||
AvecTCO:=i=1;
|
AvecTCO:=i=1;
|
||||||
end;
|
end;
|
||||||
@@ -3444,7 +3442,6 @@ begin
|
|||||||
trouve_CDM:=true;
|
trouve_CDM:=true;
|
||||||
delete(s,i,length(sa));
|
delete(s,i,length(sa));
|
||||||
// vérification de la version au démarrage
|
// vérification de la version au démarrage
|
||||||
i:=0;
|
|
||||||
val(s,i,erreur);
|
val(s,i,erreur);
|
||||||
LanceCDM:=i=1;
|
LanceCDM:=i=1;
|
||||||
end;
|
end;
|
||||||
@@ -3466,7 +3463,6 @@ begin
|
|||||||
inc(nv);
|
inc(nv);
|
||||||
trouve_serveur_interface:=true;
|
trouve_serveur_interface:=true;
|
||||||
delete(s,i,length(sa));
|
delete(s,i,length(sa));
|
||||||
i:=0;
|
|
||||||
val(s,i,erreur);
|
val(s,i,erreur);
|
||||||
ServeurInterfaceCDM:=i;
|
ServeurInterfaceCDM:=i;
|
||||||
end;
|
end;
|
||||||
@@ -3478,7 +3474,6 @@ begin
|
|||||||
inc(nv);
|
inc(nv);
|
||||||
trouve_retro:=true;
|
trouve_retro:=true;
|
||||||
delete(s,i,length(sa));
|
delete(s,i,length(sa));
|
||||||
i:=0;
|
|
||||||
val(s,i,erreur);
|
val(s,i,erreur);
|
||||||
ServeurRetroCDM:=i;
|
ServeurRetroCDM:=i;
|
||||||
end;
|
end;
|
||||||
@@ -3490,7 +3485,6 @@ begin
|
|||||||
inc(nv);
|
inc(nv);
|
||||||
trouve_NbDetDist:=true;
|
trouve_NbDetDist:=true;
|
||||||
delete(s,i,length(sa));
|
delete(s,i,length(sa));
|
||||||
i:=0;
|
|
||||||
val(s,i,erreur);
|
val(s,i,erreur);
|
||||||
if i<2 then begin i:=2;Affiche('Attention '+nb_det_dist_ch+' ramené à '+IntToSTR(i),clOrange); end;
|
if i<2 then begin i:=2;Affiche('Attention '+nb_det_dist_ch+' ramené à '+IntToSTR(i),clOrange); end;
|
||||||
Nb_Det_Dist:=i;
|
Nb_Det_Dist:=i;
|
||||||
@@ -4449,6 +4443,7 @@ end;
|
|||||||
|
|
||||||
|
|
||||||
// renvoie vrai si les aiguillages déclarés dans la définition du signal sont mal positionnés
|
// renvoie vrai si les aiguillages déclarés dans la définition du signal sont mal positionnés
|
||||||
|
// (conditions suppplémentares)
|
||||||
function cond_carre(adresse : integer) : boolean;
|
function cond_carre(adresse : integer) : boolean;
|
||||||
var i,l,k,NCondCarre,adrAig,index : integer;
|
var i,l,k,NCondCarre,adrAig,index : integer;
|
||||||
resultatET,resultatOU: boolean;
|
resultatET,resultatOU: boolean;
|
||||||
@@ -4469,10 +4464,13 @@ begin
|
|||||||
//s2:=s2+'A'+IntToSTR(feux[i].condcarre[l][k].Adresse)+feux[i].condcarre[l][k].PosAig+' ';
|
//s2:=s2+'A'+IntToSTR(feux[i].condcarre[l][k].Adresse)+feux[i].condcarre[l][k].PosAig+' ';
|
||||||
AdrAig:=feux[i].condcarre[l][k].Adresse;
|
AdrAig:=feux[i].condcarre[l][k].Adresse;
|
||||||
index:=index_aig(adrAig);
|
index:=index_aig(adrAig);
|
||||||
|
if index<>0 then
|
||||||
|
begin
|
||||||
if nivDebug=3 then AfficheDebug('Contrôle aiguillage '+IntToSTR(AdrAig),clyellow);
|
if nivDebug=3 then AfficheDebug('Contrôle aiguillage '+IntToSTR(AdrAig),clyellow);
|
||||||
resultatET:=((aiguillage[index].position=const_devie) and (feux[i].condcarre[l][k].PosAig='S') or (aiguillage[index].position=const_droit) and (feux[i].condcarre[l][k].PosAig='D'))
|
resultatET:=((aiguillage[index].position=const_devie) and (feux[i].condcarre[l][k].PosAig='S') or (aiguillage[index].position=const_droit) and (feux[i].condcarre[l][k].PosAig='D'))
|
||||||
and resultatET;
|
and resultatET;
|
||||||
end;
|
end;
|
||||||
|
end;
|
||||||
//if resultatET then Affiche('VRAI',clyellow) else affiche('FAUX',clred);
|
//if resultatET then Affiche('VRAI',clyellow) else affiche('FAUX',clred);
|
||||||
inc(l);
|
inc(l);
|
||||||
resultatOU:=resultatOU or resultatET;
|
resultatOU:=resultatOU or resultatET;
|
||||||
@@ -6269,7 +6267,7 @@ begin
|
|||||||
j:=posEx(',',PortCom,j+1);
|
j:=posEx(',',PortCom,j+1);
|
||||||
j:=posEx(',',PortCom,j+1);
|
j:=posEx(',',PortCom,j+1);
|
||||||
|
|
||||||
confStCom:=copy(portCom,i+1,j-i-1); //Affiche(ConfStCom,clred);
|
confStCom:=copy(portCom,i+1,j-i-1);
|
||||||
Settings:=ConfStCom; // COMx:vitesse,n,8,1
|
Settings:=ConfStCom; // COMx:vitesse,n,8,1
|
||||||
Affiche('Demande ouverture COM'+intToSTR(NumPort)+':'+ConfStCom+' protocole '+IntToSTR(protocole),CLYellow);
|
Affiche('Demande ouverture COM'+intToSTR(NumPort)+':'+ConfStCom+' protocole '+IntToSTR(protocole),CLYellow);
|
||||||
if protocole>=4 then Handshaking:=0 {0=aucun 1=Xon-Xoff 2=cts 3=RTS-Xon-Xoff 4=5=protocoles "maison"}
|
if protocole>=4 then Handshaking:=0 {0=aucun 1=Xon-Xoff 2=cts 3=RTS-Xon-Xoff 4=5=protocoles "maison"}
|
||||||
@@ -6786,7 +6784,7 @@ begin
|
|||||||
index:=index_aig(i);
|
index:=index_aig(i);
|
||||||
if aiguillage[index].modele<>0 then // si l'aiguillage existe
|
if aiguillage[index].modele<>0 then // si l'aiguillage existe
|
||||||
begin
|
begin
|
||||||
pos:=aiguillage[index].position;
|
pos:=aiguillage[index].posInit;
|
||||||
s:='Init aiguillage '+intToSTR(i)+'='+intToSTR(pos);
|
s:='Init aiguillage '+intToSTR(i)+'='+intToSTR(pos);
|
||||||
if pos=1 then s:=s+' (dévié)' else s:=s+' (droit)';
|
if pos=1 then s:=s+' (dévié)' else s:=s+' (droit)';
|
||||||
Affiche(s,cyan);
|
Affiche(s,cyan);
|
||||||
@@ -7139,7 +7137,7 @@ procedure TFormPrinc.MenuConnecterEthernetClick(Sender: TObject);
|
|||||||
begin
|
begin
|
||||||
if AdresseIP<>'0' then
|
if AdresseIP<>'0' then
|
||||||
begin
|
begin
|
||||||
Affiche('Demande de connexion de l''interface Lenz en ethernet '+AdresseIP+':'+IntToSTR(Port),clyellow);
|
Affiche('Demande de connexion de l''interface XpressNet en ethernet sur '+AdresseIP+':'+IntToSTR(Port),clyellow);
|
||||||
ClientSocketLenz.port:=port;
|
ClientSocketLenz.port:=port;
|
||||||
ClientSocketLenz.Address:=AdresseIP;
|
ClientSocketLenz.Address:=AdresseIP;
|
||||||
ClientSocketLenz.Open;
|
ClientSocketLenz.Open;
|
||||||
@@ -7422,7 +7420,6 @@ begin
|
|||||||
// Tempo_chgt_feux:=10; // demander la mise à jour des feux
|
// Tempo_chgt_feux:=10; // demander la mise à jour des feux
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
// évènement détecteur
|
// évènement détecteur
|
||||||
posDT:=pos('CMDACC-ST_DT',commandeCDM);
|
posDT:=pos('CMDACC-ST_DT',commandeCDM);
|
||||||
if posDT<>0 then
|
if posDT<>0 then
|
||||||
@@ -7593,9 +7590,8 @@ begin
|
|||||||
ConnecterCDMRail.enabled:=true;
|
ConnecterCDMRail.enabled:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure TFormPrinc.Codificationdesfeux1Click(Sender: TObject);
|
procedure TFormPrinc.Codificationdesfeux1Click(Sender: TObject);
|
||||||
var i,j,k,l,CondCarre,NfeuxDir : integer;
|
var i,j,k,l,CondCarre,NfeuxDir,nc : integer;
|
||||||
s,s2 : string;
|
s,s2 : string;
|
||||||
begin
|
begin
|
||||||
Affiche('Codification interne des feux',Cyan);
|
Affiche('Codification interne des feux',Cyan);
|
||||||
@@ -7612,31 +7608,29 @@ begin
|
|||||||
s:=s+' Det='+IntToSTR(feux[i].Adr_det1);
|
s:=s+' Det='+IntToSTR(feux[i].Adr_det1);
|
||||||
s:=s+' El_Suiv1='+IntToSTR(feux[i].Adr_el_suiv1)+' Type suiv1='+intToSTR(feux[i].Btype_suiv1);
|
s:=s+' El_Suiv1='+IntToSTR(feux[i].Adr_el_suiv1)+' Type suiv1='+intToSTR(feux[i].Btype_suiv1);
|
||||||
case feux[i].Btype_suiv1 of
|
case feux[i].Btype_suiv1 of
|
||||||
1 : s:=s+' (détecteur)';
|
1 : s:=s+' (détecteur) ';
|
||||||
2 : s:=s+' (aiguillage ou TJD-S)';
|
2 : s:=s+' (aiguillage ou TJD-S) ';
|
||||||
4 : s:=s+' (aiguillage triple)';
|
4 : s:=s+' (aiguillage triple) ';
|
||||||
5 : s:=s+' (aiguillage bis)';
|
5 : s:=s+' (aiguillage bis) ';
|
||||||
end;
|
end;
|
||||||
if feux[i].decodeur=6 then
|
if feux[i].decodeur=6 then
|
||||||
s:=s+' Cible unisemaf='+intToSTR(feux[i].Unisemaf);
|
s:=s+'Cible unisemaf= '+intToSTR(feux[i].Unisemaf);
|
||||||
|
|
||||||
// conditions sur carré
|
// conditions sur carré
|
||||||
CondCarre:=Length(feux[i].condcarre[1]);
|
|
||||||
l:=1;
|
l:=1;
|
||||||
s2:='';
|
repeat
|
||||||
while condCarre<>0 do
|
nc:=Length(feux[i].condcarre[l])-1 ;
|
||||||
|
if (nc>0) and (l=1) then begin Affiche(s,clYellow);s:='';end; // pour afficher sur 2 lignes
|
||||||
|
for k:=1 to nc do
|
||||||
begin
|
begin
|
||||||
if condcarre<>0 then dec(condcarre);
|
s:=s+'A'+IntToSTR(feux[i].condcarre[l][k].Adresse)+feux[i].condcarre[l][k].PosAig;
|
||||||
for k:=1 to condCarre do
|
if k<nc then s:=s+',';
|
||||||
begin
|
|
||||||
s2:=s2+'A'+IntToSTR(feux[i].condcarre[l][k].Adresse)+feux[i].condcarre[l][k].PosAig+' ';
|
|
||||||
end;
|
end;
|
||||||
s2:=s2+'/';
|
|
||||||
inc(l);
|
inc(l);
|
||||||
CondCarre:=Length(feux[i].condcarre[l]);
|
if nc>0 then s:=s+'/';
|
||||||
end;
|
until (nc<=0) or (l>6);
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
else
|
else
|
||||||
// feu directionnel
|
// feu directionnel
|
||||||
begin
|
begin
|
||||||
@@ -7981,7 +7975,7 @@ begin
|
|||||||
Tformconfig.create(nil);
|
Tformconfig.create(nil);
|
||||||
formconfig.PageControl.ActivePage:=formconfig.TabSheetSig;
|
formconfig.PageControl.ActivePage:=formconfig.TabSheetSig;
|
||||||
//Affiche(intToSTR(index),clOrange);
|
//Affiche(intToSTR(index),clOrange);
|
||||||
lignecliquee:=index-1;
|
ligneClicSig:=index-1;
|
||||||
formconfig.showmodal;
|
formconfig.showmodal;
|
||||||
formconfig.close;
|
formconfig.close;
|
||||||
end;
|
end;
|
||||||
|
|||||||
BIN
UnitTCO.dcu
BIN
UnitTCO.dcu
Binary file not shown.
Binary file not shown.
@@ -1,28 +1,31 @@
|
|||||||
object FormVersion: TFormVersion
|
object FormVersion: TFormVersion
|
||||||
Left = 497
|
Left = 197
|
||||||
Top = 186
|
Top = 230
|
||||||
Width = 468
|
BorderIcons = []
|
||||||
Height = 194
|
BorderStyle = bsDialog
|
||||||
Caption = 'V'#233'rification de version'
|
Caption = 'V'#233'rification de version'
|
||||||
Color = clBtnFace
|
ClientHeight = 213
|
||||||
|
ClientWidth = 644
|
||||||
|
Color = clNavy
|
||||||
Font.Charset = ANSI_CHARSET
|
Font.Charset = ANSI_CHARSET
|
||||||
Font.Color = clBlack
|
Font.Color = clBlack
|
||||||
Font.Height = -16
|
Font.Height = -16
|
||||||
Font.Name = 'Arial Narrow'
|
Font.Name = 'Arial Narrow'
|
||||||
Font.Style = []
|
Font.Style = []
|
||||||
OldCreateOrder = False
|
OldCreateOrder = False
|
||||||
Position = poScreenCenter
|
|
||||||
OnCreate = FormCreate
|
OnCreate = FormCreate
|
||||||
PixelsPerInch = 96
|
PixelsPerInch = 96
|
||||||
TextHeight = 20
|
TextHeight = 20
|
||||||
object Memo1: TMemo
|
object Memo1: TMemo
|
||||||
Left = 16
|
Left = 0
|
||||||
Top = 32
|
Top = 0
|
||||||
Width = 425
|
Width = 641
|
||||||
Height = 105
|
Height = 209
|
||||||
|
BorderStyle = bsNone
|
||||||
|
Color = clNavy
|
||||||
Font.Charset = ANSI_CHARSET
|
Font.Charset = ANSI_CHARSET
|
||||||
Font.Color = clBlack
|
Font.Color = clYellow
|
||||||
Font.Height = -13
|
Font.Height = -19
|
||||||
Font.Name = 'Arial Narrow'
|
Font.Name = 'Arial Narrow'
|
||||||
Font.Style = []
|
Font.Style = []
|
||||||
ParentFont = False
|
ParentFont = False
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ interface
|
|||||||
|
|
||||||
uses
|
uses
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
Dialogs, StdCtrls , ComCtrls ,WinInet, ExtCtrls;
|
Dialogs, StdCtrls , ComCtrls ,WinInet, ExtCtrls , StrUtils;
|
||||||
|
|
||||||
type
|
type
|
||||||
TFormVersion = class(TForm)
|
TFormVersion = class(TForm)
|
||||||
@@ -23,7 +23,7 @@ var
|
|||||||
Lance_verif : integer;
|
Lance_verif : integer;
|
||||||
verifVersion,notificationVersion : boolean;
|
verifVersion,notificationVersion : boolean;
|
||||||
|
|
||||||
Const Version='3.0'; // sert à la comparaison de la version publiée
|
Const Version='3.1'; // sert à la comparaison de la version publiée
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
@@ -100,10 +100,11 @@ end;
|
|||||||
|
|
||||||
procedure verifie_version;
|
procedure verifie_version;
|
||||||
var s,s2,s3,Version_p,Url,LocalFile : string;
|
var s,s2,s3,Version_p,Url,LocalFile : string;
|
||||||
trouve_version,trouve_zip : boolean;
|
trouve_version,trouve_zip,zone_comm : boolean;
|
||||||
fichier : text;
|
fichier : text;
|
||||||
i,j,erreur : integer;
|
i,j,erreur,Ncomm,i2,i3 : integer;
|
||||||
V_publie,V_utile : real;
|
V_publie,V_utile : real;
|
||||||
|
comm : array[1..10] of string;
|
||||||
begin
|
begin
|
||||||
//Affiche('vérifie version',clLime);
|
//Affiche('vérifie version',clLime);
|
||||||
if not(AvecInit) then exit ;
|
if not(AvecInit) then exit ;
|
||||||
@@ -112,6 +113,8 @@ begin
|
|||||||
LocalFile:='page.txt';
|
LocalFile:='page.txt';
|
||||||
trouve_version:=false;
|
trouve_version:=false;
|
||||||
trouve_zip:=false;
|
trouve_zip:=false;
|
||||||
|
zone_comm:=false;
|
||||||
|
Ncomm:=0;
|
||||||
if DownloadURL_NOCache(Url,localFile) then
|
if DownloadURL_NOCache(Url,localFile) then
|
||||||
begin
|
begin
|
||||||
AssignFile(fichier,LocalFile);
|
AssignFile(fichier,LocalFile);
|
||||||
@@ -124,18 +127,43 @@ begin
|
|||||||
begin
|
begin
|
||||||
i:=pos('version ',s);
|
i:=pos('version ',s);
|
||||||
trouve_version:=i<>0;
|
trouve_version:=i<>0;
|
||||||
if trouve_version then s2:=s;
|
if trouve_version then begin s2:=s;zone_comm:=true;end;
|
||||||
end;
|
end;
|
||||||
if not(trouve_zip) then
|
if not(trouve_zip) then
|
||||||
begin
|
begin
|
||||||
i:=pos('.zip',s);
|
i:=pos('.zip',s);
|
||||||
trouve_zip:=i<>0;
|
trouve_zip:=i<>0;
|
||||||
if trouve_zip then
|
if trouve_zip then begin s3:=s;zone_comm:=false;end;
|
||||||
s3:=s;
|
end;
|
||||||
|
// commentaire en gras
|
||||||
|
if zone_comm then
|
||||||
|
begin
|
||||||
|
i:=pos('bold">',s)+6;i2:=posEx('<br />',s,i+1);
|
||||||
|
if i<>6 then
|
||||||
|
begin
|
||||||
|
inc(ncomm);
|
||||||
|
comm[ncomm]:=UTF8Decode(copy(s,i,i2-i));
|
||||||
|
Delete(s,1,i2-1);
|
||||||
|
j:=0;
|
||||||
|
repeat
|
||||||
|
i:=pos('<br />',s)+6;i3:=posEx('</span>',s,i+1);i2:=posEx('<br />',s,i+1);
|
||||||
|
inc(ncomm);
|
||||||
|
if i2<i3 then
|
||||||
|
begin
|
||||||
|
comm[ncomm]:=UTF8Decode(copy(s,i,i2-i));Delete(s,1,i2-1);
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
comm[ncomm]:=UTF8Decode(copy(s,i,i3-i));Delete(s,1,i3-1);
|
||||||
|
end;
|
||||||
|
inc(j);
|
||||||
|
until (i3<i2) or (ncomm=10) or (j=20);
|
||||||
|
zone_comm:=false;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
// Aff(s)
|
|
||||||
end;
|
end;
|
||||||
closefile(fichier);
|
closefile(fichier);
|
||||||
|
|
||||||
if trouve_version and trouve_zip then
|
if trouve_version and trouve_zip then
|
||||||
begin
|
begin
|
||||||
// isoler le champ version
|
// isoler le champ version
|
||||||
@@ -151,7 +179,6 @@ begin
|
|||||||
i:=pos('.',s3);
|
i:=pos('.',s3);
|
||||||
if i<>0 then delete(s3,i,1); // supprimer le .
|
if i<>0 then delete(s3,i,1); // supprimer le .
|
||||||
s3:='http://cdmrail.free.fr/ForumCDR'+s3 ;
|
s3:='http://cdmrail.free.fr/ForumCDR'+s3 ;
|
||||||
aff(s3); // lien dans s3
|
|
||||||
|
|
||||||
// changer le . en ,
|
// changer le . en ,
|
||||||
s:=Version_p;
|
s:=Version_p;
|
||||||
@@ -164,9 +191,17 @@ begin
|
|||||||
|
|
||||||
if V_utile<V_publie then
|
if V_utile<V_publie then
|
||||||
begin
|
begin
|
||||||
|
FormVersion.Top:=1;
|
||||||
|
FormVersion.Left:=1;
|
||||||
FormVersion.show;
|
FormVersion.show;
|
||||||
|
//aff(s3); // url dans s3
|
||||||
s:='Vous utilisez la version '+version+' mais il existe la version '+Version_p;
|
s:='Vous utilisez la version '+version+' mais il existe la version '+Version_p;
|
||||||
Aff(s);
|
if ncomm>0 then
|
||||||
|
begin
|
||||||
|
Aff('Nouveautés de la V'+version_p+' de Signaux_Complexes_GL :');
|
||||||
|
Aff(' ');
|
||||||
|
for i:=1 to ncomm do aff(comm[i]);
|
||||||
|
end;
|
||||||
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
|
// récupérer depuis la variable d'environnement windows USERPROFILE le repertoire de la session ouverte
|
||||||
|
|||||||
@@ -56,6 +56,9 @@ version 3.0 : Ajout des fonctions Nouveau / supprimer feu, accessoires dans le
|
|||||||
Tous les éléments des feux, aiguillages, branches et actionneurs peuvent être modifiés depuis le panneau.
|
Tous les éléments des feux, aiguillages, branches et actionneurs peuvent être modifiés depuis le panneau.
|
||||||
Nécessite de nommer les sections dans le fichier config.cfg
|
Nécessite de nommer les sections dans le fichier config.cfg
|
||||||
Il n'est donc plus nécessaire de modifier les fichiers de configuration.
|
Il n'est donc plus nécessaire de modifier les fichiers de configuration.
|
||||||
|
version 3.1 : Renforcement de la vérification de la configuration.
|
||||||
|
Modification de la liste d'initialisation des aiguillages en mode autonome.
|
||||||
|
Indépendance des modifications entre les onglets du panneau de configuration.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user