This commit is contained in:
f1iwq2
2024-01-07 10:49:38 +01:00
parent 51c1334fdc
commit 5562e9c899
22 changed files with 1400 additions and 820 deletions
+2 -2
View File
@@ -14,8 +14,8 @@
-$N+ -$N+
-$O- -$O-
-$P+ -$P+
-$Q- -$Q+
-$R- -$R+
-$S- -$S-
-$T- -$T-
-$U- -$U-
+2 -2
View File
@@ -17,8 +17,8 @@ M=0
N=1 N=1
O=0 O=0
P=1 P=1
Q=0 Q=1
R=0 R=1
S=0 S=0
T=0 T=0
U=0 U=0
+44 -44
View File
@@ -1,8 +1,8 @@
Start Length Name Class Start Length Name Class
0001:00000000 0019EF04H .text CODE 0001:00000000 001A20F8H .text CODE
0002:00000000 00002C2CH .data DATA 0002:00000000 00002C7CH .data DATA
0002:00002C2C 045DDFF1H .bss BSS 0002:00002C7C 045DE035H .bss BSS
Detailed map of segments Detailed map of segments
@@ -76,29 +76,29 @@ Detailed map of segments
0001:00095228 00000128 C=CODE S=.text G=(none) M=WinSock ACBP=A9 0001:00095228 00000128 C=CODE S=.text G=(none) M=WinSock ACBP=A9
0001:00095350 00003A78 C=CODE S=.text G=(none) M=ScktComp ACBP=A9 0001:00095350 00003A78 C=CODE S=.text G=(none) M=ScktComp ACBP=A9
0001:00098DC8 000008EA C=CODE S=.text G=(none) M=OleServer ACBP=A9 0001:00098DC8 000008EA C=CODE S=.text G=(none) M=OleServer ACBP=A9
0001:000996B4 00000598 C=CODE S=.text G=(none) M=MSCommLib_TLB ACBP=A9 0001:000996B4 000005A0 C=CODE S=.text G=(none) M=MSCommLib_TLB ACBP=A9
0001:00099C4C 00000040 C=CODE S=.text G=(none) M=MMSystem ACBP=A9 0001:00099C54 00000040 C=CODE S=.text G=(none) M=MMSystem ACBP=A9
0001:00099C8C 00000038 C=CODE S=.text G=(none) M=Nb30 ACBP=A9 0001:00099C94 00000038 C=CODE S=.text G=(none) M=Nb30 ACBP=A9
0001:00099CC4 00000A18 C=CODE S=.text G=(none) M=MaskUtils ACBP=A9 0001:00099CCC 00000A18 C=CODE S=.text G=(none) M=MaskUtils ACBP=A9
0001:0009A6DC 00002108 C=CODE S=.text G=(none) M=Mask ACBP=A9 0001:0009A6E4 00002108 C=CODE S=.text G=(none) M=Mask ACBP=A9
0001:0009C7E4 0000924C C=CODE S=.text G=(none) M=Grids ACBP=A9 0001:0009C7EC 0000924C C=CODE S=.text G=(none) M=Grids ACBP=A9
0001:000A5A30 00001748 C=CODE S=.text G=(none) M=UnitPilote ACBP=A9 0001:000A5A38 00001980 C=CODE S=.text G=(none) M=UnitPilote ACBP=A9
0001:000A7178 000004D0 C=CODE S=.text G=(none) M=Importation ACBP=A9 0001:000A73B8 000004D0 C=CODE S=.text G=(none) M=Importation ACBP=A9
0001:000A7648 00013ACC C=CODE S=.text G=(none) M=UnitAnalyseSegCDM ACBP=A9 0001:000A7888 00013ACC C=CODE S=.text G=(none) M=UnitAnalyseSegCDM ACBP=A9
0001:000BB114 000026F4 C=CODE S=.text G=(none) M=UnitConfigTCO ACBP=A9 0001:000BB354 00002CA4 C=CODE S=.text G=(none) M=UnitConfigTCO ACBP=A9
0001:000BD808 00000D10 C=CODE S=.text G=(none) M=Unit_Pilote_aig ACBP=A9 0001:000BDFF8 00000D10 C=CODE S=.text G=(none) M=Unit_Pilote_aig ACBP=A9
0001:000BE518 00003A0C C=CODE S=.text G=(none) M=UnitConfigCellTCO ACBP=A9 0001:000BED08 00004DD8 C=CODE S=.text G=(none) M=UnitConfigCellTCO ACBP=A9
0001:000C1F24 000452C0 C=CODE S=.text G=(none) M=UnitTCO ACBP=A9 0001:000C3AE0 00045748 C=CODE S=.text G=(none) M=UnitTCO ACBP=A9
0001:001071E4 000030E4 C=CODE S=.text G=(none) M=UnitSR ACBP=A9 0001:00109228 00003160 C=CODE S=.text G=(none) M=UnitSR ACBP=A9
0001:0010A2C8 000027D4 C=CODE S=.text G=(none) M=UnitCDF ACBP=A9 0001:0010C388 00002880 C=CODE S=.text G=(none) M=UnitCDF ACBP=A9
0001:0010CA9C 00001833 C=CODE S=.text G=(none) M=verif_version ACBP=A9 0001:0010EC08 000431B4 C=CODE S=.text G=(none) M=UnitConfig ACBP=A9
0001:0010E2D0 000011D0 C=CODE S=.text G=(none) M=UnitPareFeu ACBP=A9 0001:00151DBC 00001833 C=CODE S=.text G=(none) M=verif_version ACBP=A9
0001:0010F4A0 00042A80 C=CODE S=.text G=(none) M=UnitConfig ACBP=A9 0001:001535F0 000011D0 C=CODE S=.text G=(none) M=UnitPareFeu ACBP=A9
0001:00151F20 00002B44 C=CODE S=.text G=(none) M=UnitDebug ACBP=A9 0001:001547C0 00002BC8 C=CODE S=.text G=(none) M=UnitDebug ACBP=A9
0001:00154A64 00000D2C C=CODE S=.text G=(none) M=UnitSimule ACBP=A9 0001:00157388 00000D2C C=CODE S=.text G=(none) M=UnitSimule ACBP=A9
0001:00155790 00002584 C=CODE S=.text G=(none) M=Unitplace ACBP=A9 0001:001580B4 00002604 C=CODE S=.text G=(none) M=Unitplace ACBP=A9
0001:00157D14 00046D60 C=CODE S=.text G=(none) M=UnitPrinc ACBP=A9 0001:0015A6B8 000475B0 C=CODE S=.text G=(none) M=UnitPrinc ACBP=A9
0001:0019EA74 0000048D C=CODE S=.text G=(none) M=Signaux_complexes_GL ACBP=A9 0001:001A1C68 0000048D C=CODE S=.text G=(none) M=Signaux_complexes_GL ACBP=A9
0002:00000000 000000CC C=DATA S=.data G=DGROUP M=System ACBP=A9 0002:00000000 000000CC C=DATA S=.data G=DGROUP M=System ACBP=A9
0002:000000CC 00000020 C=DATA S=.data G=DGROUP M=SysInit ACBP=A9 0002:000000CC 00000020 C=DATA S=.data G=DGROUP M=SysInit ACBP=A9
0002:000000EC 00000254 C=DATA S=.data G=DGROUP M=SysUtils ACBP=A9 0002:000000EC 00000254 C=DATA S=.data G=DGROUP M=SysUtils ACBP=A9
@@ -125,12 +125,12 @@ Detailed map of segments
0002:00001250 00000030 C=DATA S=.data G=DGROUP M=ComObj ACBP=A9 0002:00001250 00000030 C=DATA S=.data G=DGROUP M=ComObj ACBP=A9
0002:00001280 0000002C C=DATA S=.data G=DGROUP M=OleCtrls ACBP=A9 0002:00001280 0000002C C=DATA S=.data G=DGROUP M=OleCtrls ACBP=A9
0002:000012AC 00000908 C=DATA S=.data G=DGROUP M=jpeg ACBP=A9 0002:000012AC 00000908 C=DATA S=.data G=DGROUP M=jpeg ACBP=A9
0002:00001BB4 00000058 C=DATA S=.data G=DGROUP M=MSCommLib_TLB ACBP=A9 0002:00001BB4 00000080 C=DATA S=.data G=DGROUP M=MSCommLib_TLB ACBP=A9
0002:00001C0C 00000009 C=DATA S=.data G=DGROUP M=MaskUtils ACBP=A9 0002:00001C34 00000009 C=DATA S=.data G=DGROUP M=MaskUtils ACBP=A9
0002:00001C18 00000004 C=DATA S=.data G=DGROUP M=Mask ACBP=A9 0002:00001C40 00000004 C=DATA S=.data G=DGROUP M=Mask ACBP=A9
0002:00001C1C 00000006 C=DATA S=.data G=DGROUP M=Grids ACBP=A9 0002:00001C44 00000006 C=DATA S=.data G=DGROUP M=Grids ACBP=A9
0002:00001C24 000000D4 C=DATA S=.data G=DGROUP M=UnitTCO ACBP=A9 0002:00001C4C 000000D4 C=DATA S=.data G=DGROUP M=UnitTCO ACBP=A9
0002:00001CF8 0000060D C=DATA S=.data G=DGROUP M=UnitPrinc ACBP=A9 0002:00001D20 0000060D C=DATA S=.data G=DGROUP M=UnitPrinc ACBP=A9
0002:00003000 00000664 C=BSS S=.bss G=DGROUP M=System ACBP=A9 0002:00003000 00000664 C=BSS S=.bss G=DGROUP M=System ACBP=A9
0002:00003664 00000010 C=BSS S=.bss G=DGROUP M=SysInit ACBP=A9 0002:00003664 00000010 C=BSS S=.bss G=DGROUP M=SysInit ACBP=A9
0002:00003674 00000004 C=BSS S=.bss G=DGROUP M=Types ACBP=A9 0002:00003674 00000004 C=BSS S=.bss G=DGROUP M=Types ACBP=A9
@@ -212,16 +212,16 @@ Detailed map of segments
0002:00015724 00000014 C=BSS S=.bss G=DGROUP M=UnitConfigTCO ACBP=A9 0002:00015724 00000014 C=BSS S=.bss G=DGROUP M=UnitConfigTCO ACBP=A9
0002:00015738 00000014 C=BSS S=.bss G=DGROUP M=Unit_Pilote_aig ACBP=A9 0002:00015738 00000014 C=BSS S=.bss G=DGROUP M=Unit_Pilote_aig ACBP=A9
0002:0001574C 00000014 C=BSS S=.bss G=DGROUP M=UnitConfigCellTCO ACBP=A9 0002:0001574C 00000014 C=BSS S=.bss G=DGROUP M=UnitConfigCellTCO ACBP=A9
0002:00015760 004186C8 C=BSS S=.bss G=DGROUP M=UnitTCO ACBP=A9 0002:00015760 00418704 C=BSS S=.bss G=DGROUP M=UnitTCO ACBP=A9
0002:0042DE28 00000010 C=BSS S=.bss G=DGROUP M=UnitSR ACBP=A9 0002:0042DE64 00000010 C=BSS S=.bss G=DGROUP M=UnitSR ACBP=A9
0002:0042DE38 00000014 C=BSS S=.bss G=DGROUP M=UnitCDF ACBP=A9 0002:0042DE74 00000014 C=BSS S=.bss G=DGROUP M=UnitCDF ACBP=A9
0002:0042DE4C 00000018 C=BSS S=.bss G=DGROUP M=verif_version ACBP=A9 0002:0042DE88 000004FC C=BSS S=.bss G=DGROUP M=UnitConfig ACBP=A9
0002:0042DE64 00000004 C=BSS S=.bss G=DGROUP M=UnitPareFeu ACBP=A9 0002:0042E384 00000018 C=BSS S=.bss G=DGROUP M=verif_version ACBP=A9
0002:0042DE68 000004FC C=BSS S=.bss G=DGROUP M=UnitConfig ACBP=A9 0002:0042E39C 00000004 C=BSS S=.bss G=DGROUP M=UnitPareFeu ACBP=A9
0002:0042E364 0000002C C=BSS S=.bss G=DGROUP M=UnitDebug ACBP=A9 0002:0042E3A0 0000002C C=BSS S=.bss G=DGROUP M=UnitDebug ACBP=A9
0002:0042E390 0000000C C=BSS S=.bss G=DGROUP M=UnitSimule ACBP=A9 0002:0042E3CC 0000000C C=BSS S=.bss G=DGROUP M=UnitSimule ACBP=A9
0002:0042E39C 00000008 C=BSS S=.bss G=DGROUP M=Unitplace ACBP=A9 0002:0042E3D8 00000008 C=BSS S=.bss G=DGROUP M=Unitplace ACBP=A9
0002:0042E3A4 041B2C4C C=BSS S=.bss G=DGROUP M=UnitPrinc ACBP=A9 0002:0042E3E0 041B2C54 C=BSS S=.bss G=DGROUP M=UnitPrinc ACBP=A9
Bound resource files Bound resource files
@@ -237,8 +237,8 @@ UnitConfigCellTCO.dfm
UnitTCO.dfm UnitTCO.dfm
UnitSR.dfm UnitSR.dfm
UnitCDF.dfm UnitCDF.dfm
verif_version.dfm
UnitConfig.dfm UnitConfig.dfm
verif_version.dfm
UnitDebug.dfm UnitDebug.dfm
UnitSimule.dfm UnitSimule.dfm
Unitplace.dfm Unitplace.dfm
@@ -247,4 +247,4 @@ Signaux_complexes_GL.res
Signaux_complexes_GL.drf Signaux_complexes_GL.drf
Program entry point at 0001:0019ED84 Program entry point at 0001:001A1F78
+1
View File
@@ -14,6 +14,7 @@ object FormCDF: TFormCDF
OldCreateOrder = False OldCreateOrder = False
OnActivate = FormActivate OnActivate = FormActivate
OnClose = FormClose OnClose = FormClose
OnCreate = FormCreate
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
object Label20: TLabel object Label20: TLabel
+25 -1
View File
@@ -81,6 +81,7 @@ type
procedure EditNAdressesChange(Sender: TObject); procedure EditNAdressesChange(Sender: TObject);
procedure BitBtnOkClick(Sender: TObject); procedure BitBtnOkClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
private private
{ Déclarations privées } { Déclarations privées }
public public
@@ -95,12 +96,28 @@ var
{$R *.dfm} {$R *.dfm}
procedure dessine_feu_CDF; procedure dessine_feu_CDF;
procedure couleurs_cdf;
implementation implementation
procedure couleurs_cdf;
var i : integer;
c : tComponent;
begin
if sombre then with formCDF do
begin
Color:=Couleurfond;
for i:=0 to ComponentCount-1 do
begin
c:=Components[i];
composant(c,couleurFond,clWhite);
end;
end;
end;
procedure TFormCDF.FormActivate(Sender: TObject); procedure TFormCDF.FormActivate(Sender: TObject);
var erreur : integer; var i,erreur : integer;
c : tcomponent;
begin begin
Val(FormConfig.EditAdrSig.text,Adresse,erreur); Val(FormConfig.EditAdrSig.text,Adresse,erreur);
index:=index_Signal(Adresse); index:=index_Signal(Adresse);
@@ -170,6 +187,8 @@ begin
Edit19.Text:=intToSTR(Signaux[index].SR[19].sortie1); Edit19.Text:=intToSTR(Signaux[index].SR[19].sortie1);
editNadresses.text:=intToSTR(Signaux[index].NA); editNadresses.text:=intToSTR(Signaux[index].NA);
end; end;
procedure dessine_feu_CDF; procedure dessine_feu_CDF;
@@ -466,4 +485,9 @@ begin
dessineCDF:=false; dessineCDF:=false;
end; end;
procedure TFormCDF.FormCreate(Sender: TObject);
begin
couleurs_cdf;
end;
end. end.
+67 -38
View File
@@ -1,6 +1,6 @@
object FormConfig: TFormConfig object FormConfig: TFormConfig
Left = 251 Left = 238
Top = 157 Top = 145
Hint = 'Modifie la configuration selon les s'#233'lections choisies' Hint = 'Modifie la configuration selon les s'#233'lections choisies'
BorderStyle = bsDialog BorderStyle = bsDialog
Caption = 'Configuration g'#233'n'#233'rale' Caption = 'Configuration g'#233'n'#233'rale'
@@ -668,7 +668,7 @@ object FormConfig: TFormConfig
Top = 8 Top = 8
Width = 633 Width = 633
Height = 505 Height = 505
ActivePage = TabSheetAig ActivePage = TabSheetPeriph
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack Font.Color = clBlack
Font.Height = -11 Font.Height = -11
@@ -681,7 +681,7 @@ object FormConfig: TFormConfig
Caption = 'CDM Rail' Caption = 'CDM Rail'
object Label36: TLabel object Label36: TLabel
Left = 24 Left = 24
Top = 448 Top = 456
Width = 369 Width = 369
Height = 13 Height = 13
Caption = Caption =
@@ -1032,49 +1032,49 @@ object FormConfig: TFormConfig
end end
object GroupBox15: TGroupBox object GroupBox15: TGroupBox
Left = 312 Left = 312
Top = 280 Top = 272
Width = 297 Width = 297
Height = 161 Height = 177
Caption = 'Divers' Caption = 'Divers'
TabOrder = 5 TabOrder = 5
object Label31: TLabel object Label31: TLabel
Left = 8 Left = 8
Top = 24 Top = 22
Width = 204 Width = 204
Height = 13 Height = 13
Caption = 'Seuil du nombre de d'#233'tecteurs trop distants' Caption = 'Seuil du nombre de d'#233'tecteurs trop distants'
end end
object Label41: TLabel object Label41: TLabel
Left = 8 Left = 8
Top = 68 Top = 64
Width = 188 Width = 188
Height = 13 Height = 13
Caption = 'Taille de la fonte de la fen'#234'tre principale' Caption = 'Taille de la fonte de la fen'#234'tre principale'
end end
object Label44: TLabel object Label44: TLabel
Left = 8 Left = 8
Top = 45 Top = 43
Width = 223 Width = 223
Height = 13 Height = 13
Caption = 'Nombre de cantons pr'#233'sence train avant signal' Caption = 'Nombre de cantons pr'#233'sence train avant signal'
end end
object Label55: TLabel object Label55: TLabel
Left = 8 Left = 8
Top = 90 Top = 86
Width = 32 Width = 32
Height = 13 Height = 13
Caption = 'Debug' Caption = 'Debug'
end end
object Label28: TLabel object Label28: TLabel
Left = 8 Left = 8
Top = 136 Top = 110
Width = 182 Width = 182
Height = 13 Height = 13
Caption = 'Port du serveur de Signaux Complexes' Caption = 'Port du serveur de Signaux Complexes'
end end
object EditNbDetDist: TEdit object EditNbDetDist: TEdit
Left = 240 Left = 240
Top = 20 Top = 18
Width = 25 Width = 25
Height = 21 Height = 21
ParentShowHint = False ParentShowHint = False
@@ -1083,7 +1083,7 @@ object FormConfig: TFormConfig
end end
object EditFonte: TEdit object EditFonte: TEdit
Left = 240 Left = 240
Top = 64 Top = 62
Width = 25 Width = 25
Height = 21 Height = 21
ParentShowHint = False ParentShowHint = False
@@ -1092,7 +1092,7 @@ object FormConfig: TFormConfig
end end
object EditNbCantons: TEdit object EditNbCantons: TEdit
Left = 240 Left = 240
Top = 41 Top = 39
Width = 25 Width = 25
Height = 21 Height = 21
Hint = Hint =
@@ -1104,7 +1104,7 @@ object FormConfig: TFormConfig
end end
object EditDebug: TEdit object EditDebug: TEdit
Left = 240 Left = 240
Top = 88 Top = 86
Width = 25 Width = 25
Height = 21 Height = 21
Hint = Hint =
@@ -1116,7 +1116,7 @@ object FormConfig: TFormConfig
end end
object CheckBoxVerifXpressNet: TCheckBox object CheckBoxVerifXpressNet: TCheckBox
Left = 8 Left = 8
Top = 108 Top = 150
Width = 233 Width = 233
Height = 17 Height = 17
Hint = Hint =
@@ -1130,8 +1130,8 @@ object FormConfig: TFormConfig
OnClick = CheckBoxVerifXpressNetClick OnClick = CheckBoxVerifXpressNetClick
end end
object EditPortServeur: TEdit object EditPortServeur: TEdit
Left = 224 Left = 216
Top = 130 Top = 110
Width = 49 Width = 49
Height = 21 Height = 21
Hint = 'Port de 1 '#224' 65535' Hint = 'Port de 1 '#224' 65535'
@@ -1141,9 +1141,33 @@ object FormConfig: TFormConfig
OnChange = EditPortServeurChange OnChange = EditPortServeurChange
OnExit = EditPortServeurExit OnExit = EditPortServeurExit
end end
object CheckBoxSombre: TCheckBox
Left = 8
Top = 132
Width = 209
Height = 17
Hint =
'Red'#233'marrer signaux_complexes pour prise en compte apr'#232's changeme' +
'nt'
Caption = 'Affichage mode sombre'
ParentShowHint = False
ShowHint = True
TabOrder = 6
end
object ButtonCouleur: TButton
Left = 144
Top = 130
Width = 25
Height = 17
Caption = '...'
ParentShowHint = False
ShowHint = True
TabOrder = 7
OnClick = ButtonCouleurClick
end
end end
object ButtonPFCDM: TButton object ButtonPFCDM: TButton
Left = 40 Left = 32
Top = 416 Top = 416
Width = 241 Width = 241
Height = 25 Height = 25
@@ -1448,7 +1472,7 @@ object FormConfig: TFormConfig
end end
object GroupBox22: TGroupBox object GroupBox22: TGroupBox
Left = 312 Left = 312
Top = 376 Top = 368
Width = 297 Width = 297
Height = 65 Height = 65
Caption = 'Protocole de connexion '#224' la centrale ou '#224' l'#39'interface' Caption = 'Protocole de connexion '#224' la centrale ou '#224' l'#39'interface'
@@ -1478,14 +1502,14 @@ object FormConfig: TFormConfig
end end
object GroupBox25: TGroupBox object GroupBox25: TGroupBox
Left = 312 Left = 312
Top = 320 Top = 304
Width = 297 Width = 297
Height = 49 Height = 57
Caption = 'Divers' Caption = 'Divers'
TabOrder = 9 TabOrder = 9
object Label58: TLabel object Label58: TLabel
Left = 24 Left = 16
Top = 24 Top = 20
Width = 155 Width = 155
Height = 13 Height = 13
Caption = 'Filtrage des d'#233'tecteurs (x100 ms)' Caption = 'Filtrage des d'#233'tecteurs (x100 ms)'
@@ -2267,7 +2291,7 @@ object FormConfig: TFormConfig
end end
object Label24: TLabel object Label24: TLabel
Left = 104 Left = 104
Top = 120 Top = 124
Width = 8 Width = 8
Height = 13 Height = 13
Caption = '1' Caption = '1'
@@ -2280,7 +2304,7 @@ object FormConfig: TFormConfig
end end
object Label25: TLabel object Label25: TLabel
Left = 104 Left = 104
Top = 144 Top = 148
Width = 8 Width = 8
Height = 13 Height = 13
Caption = '2' Caption = '2'
@@ -2293,7 +2317,7 @@ object FormConfig: TFormConfig
end end
object Label26: TLabel object Label26: TLabel
Left = 104 Left = 104
Top = 168 Top = 172
Width = 8 Width = 8
Height = 13 Height = 13
Caption = '3' Caption = '3'
@@ -2306,7 +2330,7 @@ object FormConfig: TFormConfig
end end
object Label27: TLabel object Label27: TLabel
Left = 104 Left = 104
Top = 192 Top = 196
Width = 8 Width = 8
Height = 13 Height = 13
Caption = '4' Caption = '4'
@@ -2381,7 +2405,7 @@ object FormConfig: TFormConfig
Width = 137 Width = 137
Height = 21 Height = 21
Style = csDropDownList Style = csDropDownList
ItemHeight = 0 ItemHeight = 13
TabOrder = 1 TabOrder = 1
OnChange = ComboBoxDecChange OnChange = ComboBoxDecChange
end end
@@ -2488,7 +2512,7 @@ object FormConfig: TFormConfig
Width = 137 Width = 137
Height = 21 Height = 21
Style = csDropDownList Style = csDropDownList
ItemHeight = 0 ItemHeight = 13
TabOrder = 2 TabOrder = 2
OnChange = ComboBoxAspChange OnChange = ComboBoxAspChange
end end
@@ -2570,9 +2594,9 @@ object FormConfig: TFormConfig
end end
object CheckBoxContreVoie: TCheckBox object CheckBoxContreVoie: TCheckBox
Left = 120 Left = 120
Top = 294 Top = 296
Width = 137 Width = 137
Height = 25 Height = 17
Hint = 'Signal clignotant' Hint = 'Signal clignotant'
Caption = 'Signal de contrevoie' Caption = 'Signal de contrevoie'
ParentShowHint = False ParentShowHint = False
@@ -2781,7 +2805,7 @@ object FormConfig: TFormConfig
Top = 56 Top = 56
Width = 193 Width = 193
Height = 21 Height = 21
ItemHeight = 0 ItemHeight = 13
TabOrder = 0 TabOrder = 0
OnChange = ComboBoxDecodeurPersoChange OnChange = ComboBoxDecodeurPersoChange
end end
@@ -2800,7 +2824,7 @@ object FormConfig: TFormConfig
Width = 145 Width = 145
Height = 21 Height = 21
Style = csDropDownList Style = csDropDownList
ItemHeight = 0 ItemHeight = 13
TabOrder = 2 TabOrder = 2
OnChange = ComboBoxNationChange OnChange = ComboBoxNationChange
end end
@@ -2846,7 +2870,7 @@ object FormConfig: TFormConfig
Width = 193 Width = 193
Height = 21 Height = 21
Style = csDropDownList Style = csDropDownList
ItemHeight = 0 ItemHeight = 13
TabOrder = 6 TabOrder = 6
OnChange = ComboBoxDecCdeChange OnChange = ComboBoxDecCdeChange
end end
@@ -3231,7 +3255,7 @@ object FormConfig: TFormConfig
Height = 21 Height = 21
Hint = 'Nom de l'#39'accessoire d'#233'fini dans l'#39'onglet "p'#233'riph'#233'riques COM/USB"' Hint = 'Nom de l'#39'accessoire d'#233'fini dans l'#39'onglet "p'#233'riph'#233'riques COM/USB"'
Style = csDropDownList Style = csDropDownList
ItemHeight = 0 ItemHeight = 13
ParentShowHint = False ParentShowHint = False
ShowHint = True ShowHint = True
TabOrder = 6 TabOrder = 6
@@ -3412,7 +3436,7 @@ object FormConfig: TFormConfig
Height = 21 Height = 21
Hint = 'Nom de l'#39'accessoire d'#233'fini dans l'#39'onglet "p'#233'riph'#233'riques COM/USB"' Hint = 'Nom de l'#39'accessoire d'#233'fini dans l'#39'onglet "p'#233'riph'#233'riques COM/USB"'
Style = csDropDownList Style = csDropDownList
ItemHeight = 0 ItemHeight = 13
ParentShowHint = False ParentShowHint = False
ShowHint = True ShowHint = True
TabOrder = 10 TabOrder = 10
@@ -4151,7 +4175,7 @@ object FormConfig: TFormConfig
end end
object GroupBoxDesc: TGroupBox object GroupBoxDesc: TGroupBox
Left = 280 Left = 280
Top = 80 Top = 88
Width = 329 Width = 329
Height = 129 Height = 129
Caption = 'Description du p'#233'riph'#233'rique' Caption = 'Description du p'#233'riph'#233'rique'
@@ -4254,4 +4278,9 @@ object FormConfig: TFormConfig
OnClick = outcopierentatquetexte1Click OnClick = outcopierentatquetexte1Click
end end
end end
object ColorDialogFond: TColorDialog
OnShow = ColorDialogFondShow
Left = 696
Top = 376
end
end end
+117 -18
View File
@@ -352,6 +352,9 @@ type
ButtonPFCDM: TButton; ButtonPFCDM: TButton;
CheckBoxZ21: TCheckBox; CheckBoxZ21: TCheckBox;
RadioButtonDCCpp: TRadioButton; RadioButtonDCCpp: TRadioButton;
CheckBoxSombre: TCheckBox;
ButtonCouleur: TButton;
ColorDialogFond: TColorDialog;
procedure ButtonAppliquerEtFermerClick(Sender: TObject); procedure ButtonAppliquerEtFermerClick(Sender: TObject);
procedure FormActivate(Sender: TObject); procedure FormActivate(Sender: TObject);
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
@@ -533,6 +536,8 @@ type
procedure EditP1Exit(Sender: TObject); procedure EditP1Exit(Sender: TObject);
procedure EditP2Exit(Sender: TObject); procedure EditP2Exit(Sender: TObject);
procedure EditDevieS2Change(Sender: TObject); procedure EditDevieS2Change(Sender: TObject);
procedure ButtonCouleurClick(Sender: TObject);
procedure ColorDialogFondShow(Sender: TObject);
private private
{ Déclarations privées } { Déclarations privées }
@@ -551,6 +556,8 @@ const
// constantes du fichier de configuration // constantes du fichier de configuration
NomConfig='ConfigGenerale.cfg'; NomConfig='ConfigGenerale.cfg';
Debug_ch='Debug'; Debug_ch='Debug';
Sombre_ch='Mode_Sombre';
couleur_fond_ch='coul_fond';
serveurIPCDM_Touche_ch='serveurIPCDM_Touche'; serveurIPCDM_Touche_ch='serveurIPCDM_Touche';
PortServeur_ch='Port_Serveur'; PortServeur_ch='Port_Serveur';
AntiTimeoutEthLenz_ch='AntiTimeoutEthLenz'; AntiTimeoutEthLenz_ch='AntiTimeoutEthLenz';
@@ -681,6 +688,7 @@ procedure trier_detecteurs;
function decodeDCC(s : string) : string; function decodeDCC(s : string) : string;
function encode_aig(index : integer): string; function encode_aig(index : integer): string;
function Ipok(s : string) : boolean; function Ipok(s : string) : boolean;
procedure couleurs_config;
implementation implementation
@@ -1697,6 +1705,9 @@ begin
writeln(fichierN,Algo_localisation_ch+'=',Algo_localisation); writeln(fichierN,Algo_localisation_ch+'=',Algo_localisation);
writeln(fichierN,Avec_roulage_ch+'=',avecRoulage); writeln(fichierN,Avec_roulage_ch+'=',avecRoulage);
writeln(fichierN,debug_ch+'=',debug); writeln(fichierN,debug_ch+'=',debug);
if sombre then s:='1' else s:='0';
writeln(fichierN,sombre_ch+'=',s);
writeln(fichierN,couleur_fond_ch+'='+IntToHex(couleurFond,6));
if serveurIPCDM_Touche then s:='1' else s:='0'; if serveurIPCDM_Touche then s:='1' else s:='0';
writeln(fichierN,serveurIPCDM_Touche_ch+'='+s); writeln(fichierN,serveurIPCDM_Touche_ch+'='+s);
writeln(fichierN,PortServeur_ch+'=',PortServeur); writeln(fichierN,PortServeur_ch+'=',PortServeur);
@@ -2975,6 +2986,22 @@ var s,sa,SOrigine: string;
val(s,debug,erreur); val(s,debug,erreur);
end; end;
sa:=uppercase(sombre_ch)+'=';
i:=pos(sa,s);
if i=1 then
begin
delete(s,i,length(sa));
val(s,i,erreur);
sombre:=i=1;
end;
sa:=uppercase(couleur_fond_ch)+'=';
i:=pos(sa,s);
if i=1 then
begin
delete(s,i,length(sa));
val('$'+s,CouleurFond,erreur);
end;
sa:=uppercase(serveurIPCDM_Touche_ch)+'='; sa:=uppercase(serveurIPCDM_Touche_ch)+'=';
i:=pos(sa,s); i:=pos(sa,s);
@@ -3967,6 +3994,7 @@ begin
AvecDemandeAiguillages:=checkPosAig.checked; AvecDemandeAiguillages:=checkPosAig.checked;
AvecDemandeInterfaceUSB:=CheckBoxDemarUSB.checked; AvecDemandeInterfaceUSB:=CheckBoxDemarUSB.checked;
AvecDemandeInterfaceEth:=CheckBoxDemarEth.checked; AvecDemandeInterfaceEth:=CheckBoxDemarEth.checked;
sombre:=CheckBoxSombre.Checked;
protocole:=1; protocole:=1;
if RadioButtonXpress.Checked then if RadioButtonXpress.Checked then
begin begin
@@ -4029,7 +4057,7 @@ begin
Val(s,Adresse,erreur); // Adresse du signal Val(s,Adresse,erreur); // Adresse du signal
if adresse=0 then exit; if adresse=0 then exit;
FormConfig.EditAdrSig.Color:=clWindow; if sombre then Formconfig.editAdrSig.Color:=couleurfond else FormConfig.EditAdrSig.Color:=clWindow;
aff_champs_sig_feux(index); // affiche les champs du feu aff_champs_sig_feux(index); // affiche les champs du feu
clicliste:=false; clicliste:=false;
@@ -4128,6 +4156,7 @@ begin
CheckPosAig.checked:=AvecDemandeAiguillages; CheckPosAig.checked:=AvecDemandeAiguillages;
CheckBoxDemarUSB.checked:=AvecDemandeInterfaceUSB; CheckBoxDemarUSB.checked:=AvecDemandeInterfaceUSB;
CheckBoxDemarEth.checked:=AvecDemandeInterfaceEth; CheckBoxDemarEth.checked:=AvecDemandeInterfaceEth;
CheckBoxSombre.Checked:=sombre;
RadioButtonXpress.Checked:=protocole=1; RadioButtonXpress.Checked:=protocole=1;
RadioButtonDcc.Checked:=protocole=2; RadioButtonDcc.Checked:=protocole=2;
@@ -4514,7 +4543,7 @@ begin
Tablo_periph[ligneClicAccPeriph+1].NumCom:=i; Tablo_periph[ligneClicAccPeriph+1].NumCom:=i;
Tablo_com_cde[ligneClicAccPeriph+1].NumPeriph:=ligneClicAccPeriph+1; Tablo_com_cde[ligneClicAccPeriph+1].NumPeriph:=ligneClicAccPeriph+1;
ListBoxPeriph.Selected[ligneClicAccPeriph]:=true; ListBoxPeriph.Selected[ligneClicAccPeriph]:=true;
maj_champs_combos(ligneClicAccPeriph+1); maj_champs_combos(ligneClicAccPeriph+1);
// recalculer le nombre de sockets et de comusb // recalculer le nombre de sockets et de comusb
@@ -4541,6 +4570,52 @@ begin
end; end;
end; end;
procedure couleurs_config;
var i : integer;
c : tcomponent;
begin
if sombre then
with formconfig do
begin
Color:=Couleurfond;
// page principale
for i:=0 to formconfig.ComponentCount-1 do
begin
c:=Components[i];
composant(c,couleurfond,couleurTexte);
end;
// onglet cdmrail
for i:=0 to TabSheetCDM.ComponentCount-1 do
begin
c:=TabSheetCDM.Components[i];
Affiche(c.Name,clred);
composant(c,couleurfond,couleurTexte);
end;
// onglet décodeurs
for i:=0 to TabSheetDecodeurs.ComponentCount-1 do
begin
c:=TabSheetDecodeurs.Components[i];
composant(c,couleurfond,couleurTexte);
end;
// PN
for i:=0 to GroupBoxPNA.ComponentCount-1 do
begin
c:=GroupBoxPNA.Components[i];
composant(c,couleurfond,couleurTexte);
end;
// périphériques
for i:=0 to TabSheetPeriph.ComponentCount-1 do
begin
c:=TabSheetPeriph.Components[i];
composant(c,couleurfond,couleurTexte);
end;
end;
end;
// on change textBoxCde des décodeurs // on change textBoxCde des décodeurs
procedure TformConfig.tbCde_onchange(sender : Tobject); procedure TformConfig.tbCde_onchange(sender : Tobject);
var tb : tEdit; var tb : tEdit;
@@ -4559,10 +4634,17 @@ end;
procedure TFormConfig.FormCreate(Sender: TObject); procedure TFormConfig.FormCreate(Sender: TObject);
var i,j,y,l,LongestLength,PixelLength : integer; var i,j,y,l,LongestLength,PixelLength : integer;
s,LongestString : string; cs,s,LongestString : string;
begin begin
if debug=1 then Affiche('Création fenêtre config',clLime); if debug=1 then Affiche('Création fenêtre config',clLime);
clicListe:=true; clicListe:=true;
cs:='ColorA='+IntToHex(couleurFond,6); // pour rajouter aux couleurs personnalisées de la fenetre couleur
colorDialogFond.CustomColors.Add(cs);
ButtonCouleur.Hint:='Change la couleur de fond de toutes les fenêtres de Signaux_Complexes.'+#13+
'Utilisez la couleur personnalisée n°1 et après modification,'+#13+
'cliquer sur "ajouter aux couleurs personnalisées" qui seule sera sauvegardée';
Affiche_avert:=false; Affiche_avert:=false;
if affevt then affiche('FormConfig create',clLime); if affevt then affiche('FormConfig create',clLime);
PageControl.ActivePage:=Formconfig.TabSheetCDM; // force le premier onglet sur la page PageControl.ActivePage:=Formconfig.TabSheetCDM; // force le premier onglet sur la page
@@ -4593,7 +4675,6 @@ begin
name:='Ligne'+intToSTR(i); name:='Ligne'+intToSTR(i);
left:=5;width:=350; top:=y;height:=42; left:=5;width:=350; top:=y;height:=42;
brush.Style:=bsSolid; brush.Style:=bsSolid;
brush.Color:=clBtnFace;
pen.color:=clBlack; pen.color:=clBlack;
shape:=stRectangle; shape:=stRectangle;
parent:=TabSheetDecodeurs; parent:=TabSheetDecodeurs;
@@ -4611,7 +4692,7 @@ begin
onChange:=formConfig.modif_ComboL; onChange:=formConfig.modif_ComboL;
Style:=csDropDownList; Style:=csDropDownList;
visible:=false; visible:=false;
end; end;
ComboL2[i]:=Tcombobox.create(FormConfig.TabSheetDecodeurs); ComboL2[i]:=Tcombobox.create(FormConfig.TabSheetDecodeurs);
with ComboL2[i] do with ComboL2[i] do
@@ -4625,7 +4706,7 @@ begin
onChange:=formConfig.modif_ComboL; onChange:=formConfig.modif_ComboL;
Style:=csDropDownList; Style:=csDropDownList;
visible:=false; visible:=false;
end; end;
EditT[i]:=TEdit.create(FormConfig.TabSheetDecodeurs); EditT[i]:=TEdit.create(FormConfig.TabSheetDecodeurs);
with EditT[i] do with EditT[i] do
@@ -4690,6 +4771,7 @@ begin
ShowHint:=false; ShowHint:=false;
visible:=false; visible:=false;
end; end;
TextBoxCde[i]:=Tedit.Create(FormConfig.TabSheetDecodeurs); TextBoxCde[i]:=Tedit.Create(FormConfig.TabSheetDecodeurs);
with TextBoxCde[i] do with TextBoxCde[i] do
begin begin
@@ -5350,8 +5432,8 @@ begin
end; end;
// composants dynamiques car on ne peut plus ajouter de composants en mode conception! // composants dynamiques car on ne peut plus ajouter de composants en mode conception!
// onglet accessoires COM/USB/Socket // onglet périphériques COM/USB/Socket
//--------- groupbox //--------- groupbox
gp1:=TgroupBox.Create(FormConfig.TabSheetPeriph); gp1:=TgroupBox.Create(FormConfig.TabSheetPeriph);
with gp1 do with gp1 do
begin begin
@@ -5447,7 +5529,6 @@ begin
caption:='Périphérique'; caption:='Périphérique';
parent:=FormConfig.TabSheetPeriph; parent:=FormConfig.TabSheetPeriph;
name:='LabelNumeroP'; name:='LabelNumeroP';
end; end;
EditPortCde:=TEdit.Create(FormConfig.TabSheetPeriph); EditPortCde:=TEdit.Create(FormConfig.TabSheetPeriph);
@@ -5458,7 +5539,7 @@ begin
text:=''; text:='';
parent:=GroupBoxDesc; parent:=GroupBoxDesc;
hint:='Port COM/USB : COMX:vitesse,parité,nombre de bits de données, nombre de bits de stop '+#13+ hint:='Port COM/USB : COMX:vitesse,parité,nombre de bits de données, nombre de bits de stop '+#13+
'ou'+#13+#13+ 'ou'+#13+
'Socket : AdresseIPV4:port'; 'Socket : AdresseIPV4:port';
ShowHint:=true; ShowHint:=true;
OnChange:=formconfig.tb_onChange; OnChange:=formconfig.tb_onChange;
@@ -5517,6 +5598,7 @@ begin
ligneClicAccPeriph:=-1; ligneClicAccPeriph:=-1;
AncligneClicAccPeriph:=-1; AncligneClicAccPeriph:=-1;
couleurs_config;
end; end;
@@ -5635,7 +5717,6 @@ var Adresse,Adr2,ind,id2,erreur,position : integer;
tjd,tri,tjs,croi : boolean; tjd,tri,tjs,croi : boolean;
s,ss : string; s,ss : string;
i : integer; i : integer;
B : char;
begin begin
if index<1 then exit; if index<1 then exit;
s:=Uppercase(formConfig.ListBoxAig.items[index-1]); s:=Uppercase(formConfig.ListBoxAig.items[index-1]);
@@ -5650,6 +5731,7 @@ begin
ss:=InttoSTr(Adresse); ss:=InttoSTr(Adresse);
formconfig.EditAdrAig.text:= ss; formconfig.EditAdrAig.text:= ss;
if sombre then formConfig.editAdrAig.Color:=couleurfond else FormConfig.EditAdrAig.Color:=clWindow;
tjd:=pos('TJD',s)<>0 ; tjd:=pos('TJD',s)<>0 ;
tri:=pos('TRI',s)<>0 ; tri:=pos('TRI',s)<>0 ;
@@ -5657,7 +5739,6 @@ begin
croi:=pos('CROI',s)<>0 ; croi:=pos('CROI',s)<>0 ;
with formconfig do with formconfig do
begin begin
EditAdrAig.Color:=clWindow;
ImageAffiche.Picture.Bitmap.TransparentMode:=tmAuto; ImageAffiche.Picture.Bitmap.TransparentMode:=tmAuto;
ImageAffiche.Picture.Bitmap.TransparentColor:=clblue; ImageAffiche.Picture.Bitmap.TransparentColor:=clblue;
ImageAffiche.Transparent:=true; ImageAffiche.Transparent:=true;
@@ -6744,7 +6825,8 @@ begin
with formConfig do with formConfig do
begin begin
LabelInfo.caption:=''; LabelInfo.caption:='';
EditAdrAig.Text:='';EditAigTriple.Text:=''; EditAdrAig.Text:='';
EditAigTriple.Text:='';
Edit_HG.text:=''; Edit_HG.text:='';
editDevie_HD.Text:=''; editDevie_HD.Text:='';
editDroit_BD.Text:=''; editDroit_BD.Text:='';
@@ -8123,11 +8205,11 @@ begin
if (aiguillage[Index_Aig(i)].modele<>rien) then if (aiguillage[Index_Aig(i)].modele<>rien) then
begin begin
EditAdrAig.Color:=clred; EditAdrAig.Color:=clred;
LabelInfo.caption:='aiguillage '+IntToSTR(i)+' existe déja - ne sera pas écrasé' ; LabelInfo.caption:='aiguillage '+IntToSTR(i)+' existe déjà - ne sera pas écrasé' ;
exit; exit;
end; end;
EditAdrAig.Color:=clWindow; if sombre then editAdrAig.Color:=couleurfond else EditAdrAig.Color:=clWindow;
LabelInfo.caption:=' '; LabelInfo.caption:=' ';
if (modele=aig) or (modele=triple) or (modele=crois) then if (modele=aig) or (modele=triple) or (modele=crois) then
@@ -12746,6 +12828,7 @@ begin
ligneClicSig:=itemindex; ligneClicSig:=itemindex;
clicListeSignal(ligneClicSig+1); clicListeSignal(ligneClicSig+1);
end; end;
clicliste:=false;
end; end;
procedure TFormConfig.ListBoxSigKeyDown(Sender: TObject; var Key: Word; procedure TFormConfig.ListBoxSigKeyDown(Sender: TObject; var Key: Word;
@@ -13052,7 +13135,7 @@ begin
for i:=1 to NbPeriph do for i:=1 to NbPeriph do
begin begin
if com_socket(i)=1 then // si port comusb if com_socket(i)=1 then // si port com$usb
begin begin
if connecte_port_usb_periph(i) then if connecte_port_usb_periph(i) then
Affiche('COM'+intToSTR(Tablo_periph[i].numcom)+' périphérique ouvert',clLime) Affiche('COM'+intToSTR(Tablo_periph[i].numcom)+' périphérique ouvert',clLime)
@@ -13471,7 +13554,7 @@ begin
LabelInfo.caption:='Signal '+intToSTR(i)+' existe, il ne sera pas écrasé';exit; LabelInfo.caption:='Signal '+intToSTR(i)+' existe, il ne sera pas écrasé';exit;
end; end;
EditAdrSig.Color:=clWindow; if sombre then editAdrSig.Color:=couleurfond else EditAdrSig.Color:=clWindow;
LabelInfo.caption:=' '; LabelInfo.caption:=' ';
Signaux[ligneClicSig+1].adresse:=i; Signaux[ligneClicSig+1].adresse:=i;
tablo_index_signal[i]:=ligneClicSig+1; tablo_index_signal[i]:=ligneClicSig+1;
@@ -13495,6 +13578,22 @@ procedure TFormConfig.EditP2Exit(Sender: TObject);
end; end;
end. procedure TFormConfig.ButtonCouleurClick(Sender: TObject);
begin
if colorDialogFond.execute then
begin
Couleurfond:=colorDialogFond.Color;
Maj_couleurs;
end;
end;
procedure TFormConfig.ColorDialogFondShow(Sender: TObject);
var s : string;
begin
s:='Couleur de fond de Signaux_complexes';
SetWindowText(ColorDialogFond.Handle,pchar(s));
end;
end.
+13
View File
@@ -453,6 +453,8 @@ begin
end; end;
procedure TFormConfCellTCO.FormCreate(Sender: TObject); procedure TFormConfCellTCO.FormCreate(Sender: TObject);
var i : integer;
c : tcomponent;
begin begin
// fenetre toujours dessus // fenetre toujours dessus
if affevt then Affiche('FormConfCellTCO create',clyellow); if affevt then Affiche('FormConfCellTCO create',clyellow);
@@ -463,6 +465,17 @@ begin
ImagePaletteCC.Width:=iconeX; ImagePaletteCC.Width:=iconeX;
ImagePaletteCC.Height:=iconeY; ImagePaletteCC.Height:=iconeY;
RadioGroupSel.itemIndex:=0; RadioGroupSel.itemIndex:=0;
if sombre then
begin
Color:=Couleurfond;
for i:=0 to ComponentCount-1 do
begin
c:=Components[i];
composant(c,couleurFond,couleurTexte);
end;
end;
// dessine les composants - non utilisé // dessine les composants - non utilisé
{ {
i:=1; i:=1;
+26 -13
View File
@@ -212,24 +212,21 @@ object FormConfigTCO: TFormConfigTCO
Width = 353 Width = 353
Height = 57 Height = 57
Caption = 'Graphisme de tous les TCOs' Caption = 'Graphisme de tous les TCOs'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
TabOrder = 4 TabOrder = 4
end end
object RadioButtonLignes: TRadioButton
Left = 376
Top = 312
Width = 113
Height = 17
Caption = 'Lignes bris'#233'es'
TabOrder = 5
OnClick = RadioButtonLignesClick
end
object RadioButtonCourbes: TRadioButton object RadioButtonCourbes: TRadioButton
Left = 376 Left = 392
Top = 328 Top = 328
Width = 113 Width = 113
Height = 17 Height = 17
Caption = 'Lignes courbes' Caption = 'Lignes courbes'
TabOrder = 6 TabOrder = 5
OnClick = RadioButtonCourbesClick OnClick = RadioButtonCourbesClick
end end
object GroupBox3: TGroupBox object GroupBox3: TGroupBox
@@ -238,7 +235,7 @@ object FormConfigTCO: TFormConfigTCO
Width = 289 Width = 289
Height = 89 Height = 89
Caption = 'Configuration du TCO ' Caption = 'Configuration du TCO '
TabOrder = 7 TabOrder = 6
object Label3: TLabel object Label3: TLabel
Left = 16 Left = 16
Top = 20 Top = 20
@@ -318,7 +315,7 @@ object FormConfigTCO: TFormConfigTCO
Width = 289 Width = 289
Height = 273 Height = 273
Caption = 'Configuration de tous les TCOs' Caption = 'Configuration de tous les TCOs'
TabOrder = 8 TabOrder = 7
object Ratio: TLabel object Ratio: TLabel
Left = 8 Left = 8
Top = 208 Top = 208
@@ -369,6 +366,7 @@ object FormConfigTCO: TFormConfigTCO
Width = 273 Width = 273
Height = 161 Height = 161
ColCount = 3 ColCount = 3
FixedColor = clAppWorkSpace
RowCount = 11 RowCount = 11
TabOrder = 0 TabOrder = 0
ColWidths = ( ColWidths = (
@@ -426,6 +424,21 @@ object FormConfigTCO: TFormConfigTCO
OnChange = TrackBarEpaisseurChange OnChange = TrackBarEpaisseurChange
end end
end end
object RadioButtonLignes: TRadioButton
Left = 392
Top = 312
Width = 113
Height = 17
Caption = 'Lignes bris'#233'es'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
TabOrder = 8
OnClick = RadioButtonLignesClick
end
object ColorDialog1: TColorDialog object ColorDialog1: TColorDialog
OnShow = ColorDialog1Show OnShow = ColorDialog1Show
Left = 272 Left = 272
+18 -5
View File
@@ -36,7 +36,6 @@ type
ImagePiedFeu: TImage; ImagePiedFeu: TImage;
BitBtnOk: TBitBtn; BitBtnOk: TBitBtn;
RadioGroup1: TRadioGroup; RadioGroup1: TRadioGroup;
RadioButtonLignes: TRadioButton;
RadioButtonCourbes: TRadioButton; RadioButtonCourbes: TRadioButton;
GroupBox3: TGroupBox; GroupBox3: TGroupBox;
Label3: TLabel; Label3: TLabel;
@@ -59,6 +58,7 @@ type
TrackBarEpaisseur: TTrackBar; TrackBarEpaisseur: TTrackBar;
Label17: TLabel; Label17: TLabel;
Label18: TLabel; Label18: TLabel;
RadioButtonLignes: TRadioButton;
procedure ButtonDessineClick(Sender: TObject); procedure ButtonDessineClick(Sender: TObject);
procedure FormActivate(Sender: TObject); procedure FormActivate(Sender: TObject);
procedure ImageAigClick(Sender: TObject); procedure ImageAigClick(Sender: TObject);
@@ -204,7 +204,6 @@ begin
x2:=x1+width; x2:=x1+width;
jy1:=(Haut div 2)-round(12*fryGlob[indexTCO]); // pos Y de la bande sup jy1:=(Haut div 2)-round(12*fryGlob[indexTCO]); // pos Y de la bande sup
jy2:=(Haut div 2)+round(12*fryGlob[indexTCO]); // pos Y de la bande inf jy2:=(Haut div 2)+round(12*fryGlob[indexTCO]); // pos Y de la bande inf
canvas.PolyGon([point(x1,jy1),point(x2,jy1),point(x2,jy2),point(x1,jy2)]); canvas.PolyGon([point(x1,jy1),point(x2,jy1),point(x2,jy2),point(x1,jy2)]);
end; end;
@@ -220,11 +219,10 @@ begin
x1:=Larg div 2; x1:=Larg div 2;
y1:=0; y1:=0;
canvas.moveTo(x1,y1); canvas.moveTo(x1,y1);
y2:=HauteurCell[indexTCO] div 2; y2:=haut div 2;
canvas.LineTo(x1,y2); canvas.LineTo(x1,y2);
canvas.LineTo(x1-10,y2); canvas.LineTo(x1-10,y2);
end; end;
end; end;
function verif_config_TCO(indexTCO : integer) : boolean; // renvoie true si ok function verif_config_TCO(indexTCO : integer) : boolean; // renvoie true si ok
@@ -317,6 +315,7 @@ begin
for i:=1 to 10 do for i:=1 to 10 do
begin begin
stringGridTCO.Cells[1,i]:=NomFichierTCO[i]; stringGridTCO.Cells[1,i]:=NomFichierTCO[i];
if i<=nbreTCO then stringGridTCO.Cells[2,i]:='X' else stringGridTCO.Cells[2,i]:=' '; if i<=nbreTCO then stringGridTCO.Cells[2,i]:='X' else stringGridTCO.Cells[2,i]:=' ';
end; end;
// stringGridTCO.canvas.Font.Style:=[fsBOld]; // stringGridTCO.canvas.Font.Style:=[fsBOld];
@@ -548,8 +547,9 @@ end;
procedure TFormConfigTCO.FormCreate(Sender: TObject); procedure TFormConfigTCO.FormCreate(Sender: TObject);
var i : integer; var i : integer;
c : tcomponent;
begin begin
for i := 0 to stringGridTCO.RowCount - 1 do for i:=0 to stringGridTCO.RowCount - 1 do
with stringGridTCO do with stringGridTCO do
begin begin
RowHeights[i]:=15; RowHeights[i]:=15;
@@ -565,6 +565,17 @@ begin
Cells[0,0]:='Num'; Cells[0,0]:='Num';
Cells[1,0]:='Nom fichier'; Cells[1,0]:='Nom fichier';
Cells[2,0]:='X'; Cells[2,0]:='X';
font.Color:=clBlack;
end;
if sombre then
begin
Color:=Couleurfond;
for i:=0 to ComponentCount-1 do
begin
c:=Components[i];
composant(c,couleurFond,couleurTexte);
end;
end; end;
end; end;
@@ -580,4 +591,6 @@ end;
end. end.
+45 -46
View File
@@ -1,10 +1,9 @@
object FormDebug: TFormDebug object FormDebug: TFormDebug
Left = 321 Left = 234
Top = 0 Top = 128
Width = 864 Width = 884
Height = 718 Height = 732
VertScrollBar.Increment = 67 VertScrollBar.Increment = 67
VertScrollBar.Position = 98
VertScrollBar.Tracking = True VertScrollBar.Tracking = True
Caption = 'Fen'#234'tre de d'#233'bug' Caption = 'Fen'#234'tre de d'#233'bug'
Color = clWindow Color = clWindow
@@ -21,13 +20,13 @@ object FormDebug: TFormDebug
OnCreate = FormCreate OnCreate = FormCreate
OnKeyPress = FormKeyPress OnKeyPress = FormKeyPress
DesignSize = ( DesignSize = (
839 851
687) 693)
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
object Label1: TLabel object Label1: TLabel
Left = 595 Left = 615
Top = -94 Top = 4
Width = 108 Width = 108
Height = 13 Height = 13
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
@@ -41,9 +40,9 @@ object FormDebug: TFormDebug
ParentColor = False ParentColor = False
ParentFont = False ParentFont = False
end end
object Label2: TLabel object LabelTitreDebug: TLabel
Left = 443 Left = 463
Top = -96 Top = 2
Width = 131 Width = 131
Height = 18 Height = 18
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
@@ -56,8 +55,8 @@ object FormDebug: TFormDebug
ParentFont = False ParentFont = False
end end
object EditNivDebug: TEdit object EditNivDebug: TEdit
Left = 754 Left = 774
Top = -96 Top = 2
Width = 49 Width = 49
Height = 21 Height = 21
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
@@ -72,8 +71,8 @@ object FormDebug: TFormDebug
OnKeyPress = EditNivDebugKeyPress OnKeyPress = EditNivDebugKeyPress
end end
object ButtonEcrLog: TButton object ButtonEcrLog: TButton
Left = 442 Left = 462
Top = 230 Top = 328
Width = 97 Width = 97
Height = 29 Height = 29
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
@@ -82,8 +81,8 @@ object FormDebug: TFormDebug
OnClick = ButtonEcrLogClick OnClick = ButtonEcrLogClick
end end
object ButtonRazTampon: TButton object ButtonRazTampon: TButton
Left = 442 Left = 462
Top = 262 Top = 360
Width = 97 Width = 97
Height = 33 Height = 33
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
@@ -93,8 +92,8 @@ object FormDebug: TFormDebug
OnClick = ButtonRazTamponClick OnClick = ButtonRazTamponClick
end end
object ButtonCherche: TButton object ButtonCherche: TButton
Left = 442 Left = 462
Top = 198 Top = 296
Width = 97 Width = 97
Height = 25 Height = 25
Hint = 'Cherche la cha'#238'ne "erreur"' Hint = 'Cherche la cha'#238'ne "erreur"'
@@ -106,8 +105,8 @@ object FormDebug: TFormDebug
OnClick = ButtonChercheClick OnClick = ButtonChercheClick
end end
object ButtonAffEvtChrono: TButton object ButtonAffEvtChrono: TButton
Left = 442 Left = 462
Top = 158 Top = 256
Width = 97 Width = 97
Height = 33 Height = 33
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
@@ -117,8 +116,8 @@ object FormDebug: TFormDebug
OnClick = ButtonAffEvtChronoClick OnClick = ButtonAffEvtChronoClick
end end
object ButtonCop: TButton object ButtonCop: TButton
Left = 442 Left = 462
Top = 110 Top = 208
Width = 97 Width = 97
Height = 41 Height = 41
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
@@ -134,8 +133,8 @@ object FormDebug: TFormDebug
OnClick = ButtonCopClick OnClick = ButtonCopClick
end end
object ButtonRazLog: TButton object ButtonRazLog: TButton
Left = 442 Left = 462
Top = 302 Top = 400
Width = 97 Width = 97
Height = 33 Height = 33
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
@@ -145,8 +144,8 @@ object FormDebug: TFormDebug
OnClick = ButtonRazLogClick OnClick = ButtonRazLogClick
end end
object GroupBox1: TGroupBox object GroupBox1: TGroupBox
Left = 448 Left = 468
Top = 502 Top = 600
Width = 369 Width = 369
Height = 185 Height = 185
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
@@ -305,9 +304,9 @@ object FormDebug: TFormDebug
end end
end end
object GroupBox2: TGroupBox object GroupBox2: TGroupBox
Left = 440 Left = 460
Top = -78 Top = 20
Width = 401 Width = 384
Height = 149 Height = 149
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
Caption = 'S'#233'lections d'#39'affichage' Caption = 'S'#233'lections d'#39'affichage'
@@ -466,7 +465,7 @@ object FormDebug: TFormDebug
OnClick = CheckBox1Click OnClick = CheckBox1Click
end end
object CheckDebugTCO: TCheckBox object CheckDebugTCO: TCheckBox
Left = 264 Left = 256
Top = 128 Top = 128
Width = 121 Width = 121
Height = 17 Height = 17
@@ -482,7 +481,7 @@ object FormDebug: TFormDebug
OnClick = CheckDebugTCOClick OnClick = CheckDebugTCOClick
end end
object CheckDetSIg: TCheckBox object CheckDetSIg: TCheckBox
Left = 264 Left = 256
Top = 112 Top = 112
Width = 121 Width = 121
Height = 17 Height = 17
@@ -501,7 +500,7 @@ object FormDebug: TFormDebug
OnClick = CheckDetSIgClick OnClick = CheckDetSIgClick
end end
object CheckBoxPrinc: TCheckBox object CheckBoxPrinc: TCheckBox
Left = 264 Left = 256
Top = 96 Top = 96
Width = 121 Width = 121
Height = 17 Height = 17
@@ -519,9 +518,9 @@ object FormDebug: TFormDebug
end end
object RichDebug: TRichEdit object RichDebug: TRichEdit
Left = 8 Left = 8
Top = -90 Top = 8
Width = 425 Width = 445
Height = 671 Height = 685
Anchors = [akLeft, akTop, akRight, akBottom] Anchors = [akLeft, akTop, akRight, akBottom]
Lines.Strings = ( Lines.Strings = (
'RichDebug') 'RichDebug')
@@ -531,8 +530,8 @@ object FormDebug: TFormDebug
OnChange = RichDebugChange OnChange = RichDebugChange
end end
object GroupBox5: TGroupBox object GroupBox5: TGroupBox
Left = 448 Left = 468
Top = 390 Top = 488
Width = 372 Width = 372
Height = 57 Height = 57
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
@@ -598,8 +597,8 @@ object FormDebug: TFormDebug
end end
end end
object ButtonRazTout: TButton object ButtonRazTout: TButton
Left = 443 Left = 463
Top = 78 Top = 176
Width = 97 Width = 97
Height = 25 Height = 25
Hint = Hint =
@@ -613,8 +612,8 @@ object FormDebug: TFormDebug
OnClick = ButtonRazToutClick OnClick = ButtonRazToutClick
end end
object GroupBox6: TGroupBox object GroupBox6: TGroupBox
Left = 448 Left = 468
Top = 454 Top = 552
Width = 372 Width = 372
Height = 41 Height = 41
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
@@ -690,9 +689,9 @@ object FormDebug: TFormDebug
end end
end end
object MemoEvtDet: TRichEdit object MemoEvtDet: TRichEdit
Left = 544 Left = 565
Top = 76 Top = 174
Width = 281 Width = 280
Height = 307 Height = 307
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
Color = clBlack Color = clBlack
+19 -1
View File
@@ -10,7 +10,7 @@ type
TFormDebug = class(TForm) TFormDebug = class(TForm)
EditNivDebug: TEdit; EditNivDebug: TEdit;
Label1: TLabel; Label1: TLabel;
Label2: TLabel; LabelTitreDebug: TLabel;
SaveDialog: TSaveDialog; SaveDialog: TSaveDialog;
ButtonEcrLog: TButton; ButtonEcrLog: TButton;
ButtonRazTampon: TButton; ButtonRazTampon: TButton;
@@ -124,6 +124,7 @@ procedure AfficheDebug(s : string;lacouleur : TColor);
procedure AfficheDebug_suivi(s : string;lacouleur : TColor); procedure AfficheDebug_suivi(s : string;lacouleur : TColor);
procedure RE_ColorLine(ARichEdit: TRichEdit; ARow: Integer; AColor: TColor); procedure RE_ColorLine(ARichEdit: TRichEdit; ARow: Integer; AColor: TColor);
procedure affiche_evt(s: string;lacouleur : TColor); procedure affiche_evt(s: string;lacouleur : TColor);
procedure couleurs_debug;
implementation implementation
@@ -163,6 +164,21 @@ begin
end; end;
end; end;
procedure couleurs_debug;
var c : tcomponent;
i : integer;
begin
if sombre then with formdebug do
begin
Color:=Couleurfond;
for i:=0 to ComponentCount-1 do
begin
c:=Components[i];
composant(c,couleurFond,couleurTexte);
end;
end;
end;
procedure AfficheDebug_suivi(s : string;lacouleur : TColor); procedure AfficheDebug_suivi(s : string;lacouleur : TColor);
var i : integer; var i : integer;
begin begin
@@ -192,6 +208,8 @@ begin
compt_erreur:=0; compt_erreur:=0;
LigneErreur:=0; LigneErreur:=0;
if debug=1 then Affiche('Fin création fenêtre debug',clLime); if debug=1 then Affiche('Fin création fenêtre debug',clLime);
couleurs_debug;
end; end;
procedure TFormDebug.ButtonEcrLogClick(Sender: TObject); procedure TFormDebug.ButtonEcrLogClick(Sender: TObject);
+17 -2
View File
@@ -111,6 +111,7 @@ var
AdrPilote : integer; AdrPilote : integer;
procedure dessine_feu_pilote; procedure dessine_feu_pilote;
procedure couleurs_pilote;
implementation implementation
@@ -269,10 +270,24 @@ begin
dessine_feu_pilote; dessine_feu_pilote;
end; end;
procedure couleurs_pilote;
var i : integer;
c : tcomponent;
begin
if sombre then with formPilote do
begin
Color:=Couleurfond;
for i:=0 to ComponentCount-1 do
begin
c:=Components[i];
composant(c,couleurFond,couleurTexte);
end;
end;
end;
procedure TFormPilote.FormCreate(Sender: TObject); procedure TFormPilote.FormCreate(Sender: TObject);
begin begin
// radioVert.Checked:=false; couleurs_pilote;
// radioVertCli.Checked:=false;
end; end;
procedure TFormPilote.ButtonPiloteClick(Sender: TObject); procedure TFormPilote.ButtonPiloteClick(Sender: TObject);
+59 -31
View File
@@ -1,8 +1,8 @@
object FormPrinc: TFormPrinc object FormPrinc: TFormPrinc
Left = 79 Left = 107
Top = 256 Top = 224
Width = 1133 Width = 1149
Height = 653 Height = 689
Anchors = [akLeft, akTop, akRight] Anchors = [akLeft, akTop, akRight]
Caption = 'Signaux complexes' Caption = 'Signaux complexes'
Color = clBtnFace Color = clBtnFace
@@ -19,8 +19,8 @@ object FormPrinc: TFormPrinc
OnCreate = FormCreate OnCreate = FormCreate
OnResize = FormResize OnResize = FormResize
DesignSize = ( DesignSize = (
1117 1141
595) 638)
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
object LabelTitre: TLabel object LabelTitre: TLabel
@@ -1429,8 +1429,8 @@ object FormPrinc: TFormPrinc
end end
object StatusBar1: TStatusBar object StatusBar1: TStatusBar
Left = 0 Left = 0
Top = 573 Top = 616
Width = 1117 Width = 1141
Height = 22 Height = 22
Panels = < Panels = <
item item
@@ -1467,7 +1467,7 @@ object FormPrinc: TFormPrinc
00020000802500000000080000000000000000003F00000011000000} 00020000802500000000080000000000000000003F00000011000000}
end end
object Button1: TButton object Button1: TButton
Left = 728 Left = 744
Top = 8 Top = 8
Width = 75 Width = 75
Height = 25 Height = 25
@@ -1478,15 +1478,14 @@ object FormPrinc: TFormPrinc
OnClick = Button1Click OnClick = Button1Click
end end
object GrandPanel: TPanel object GrandPanel: TPanel
Left = 0 Left = 8
Top = 32 Top = 48
Width = 1065 Width = 1025
Height = 473 Height = 476
Anchors = [akLeft, akTop, akRight]
TabOrder = 3 TabOrder = 3
DesignSize = ( DesignSize = (
1065 1025
473) 476)
object SplitterV: TSplitter object SplitterV: TSplitter
Left = 1 Left = 1
Top = 1 Top = 1
@@ -1521,8 +1520,8 @@ object FormPrinc: TFormPrinc
OnMouseDown = FenRichMouseDown OnMouseDown = FenRichMouseDown
end end
object ScrollBox1: TScrollBox object ScrollBox1: TScrollBox
Left = 512 Left = 504
Top = 192 Top = 176
Width = 465 Width = 465
Height = 249 Height = 249
HorzScrollBar.Increment = 48 HorzScrollBar.Increment = 48
@@ -1535,7 +1534,7 @@ object FormPrinc: TFormPrinc
TabOrder = 1 TabOrder = 1
end end
object GroupBox1: TGroupBox object GroupBox1: TGroupBox
Left = 505 Left = 465
Top = 21 Top = 21
Width = 265 Width = 265
Height = 52 Height = 52
@@ -1555,6 +1554,12 @@ object FormPrinc: TFormPrinc
Width = 49 Width = 49
Height = 21 Height = 21
Hint = 'Adresse accessoire' Hint = 'Adresse accessoire'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
TabOrder = 0 TabOrder = 0
Text = '1' Text = '1'
end end
@@ -1586,7 +1591,7 @@ object FormPrinc: TFormPrinc
end end
end end
object GroupBox3: TGroupBox object GroupBox3: TGroupBox
Left = 497 Left = 457
Top = 104 Top = 104
Width = 265 Width = 265
Height = 129 Height = 129
@@ -1752,7 +1757,10 @@ object FormPrinc: TFormPrinc
Top = 88 Top = 88
Width = 83 Width = 83
Height = 33 Height = 33
Hint = 'Envoie la vitesse au train'
Caption = 'Envoi vitesse '#224' loco' Caption = 'Envoi vitesse '#224' loco'
ParentShowHint = False
ShowHint = True
TabOrder = 0 TabOrder = 0
WordWrap = True WordWrap = True
OnClick = locoClick OnClick = locoClick
@@ -1809,7 +1817,7 @@ object FormPrinc: TFormPrinc
TabOrder = 5 TabOrder = 5
end end
object TrackBarVit: TTrackBar object TrackBarVit: TTrackBar
Left = 24 Left = 16
Top = 64 Top = 64
Width = 233 Width = 233
Height = 21 Height = 21
@@ -1818,12 +1826,14 @@ object FormPrinc: TFormPrinc
Max = 100 Max = 100
Min = -100 Min = -100
ParentCtl3D = False ParentCtl3D = False
ParentShowHint = False
ShowHint = True
TabOrder = 7 TabOrder = 7
OnChange = TrackBarVitChange OnChange = TrackBarVitChange
end end
end end
object Panel1: TPanel object Panel1: TPanel
Left = 729 Left = 689
Top = -3 Top = -3
Width = 288 Width = 288
Height = 180 Height = 180
@@ -1970,16 +1980,16 @@ object FormPrinc: TFormPrinc
end end
end end
object GroupBox2: TGroupBox object GroupBox2: TGroupBox
Left = 505 Left = 577
Top = 16 Top = 104
Width = 265 Width = 265
Height = 105 Height = 129
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
Caption = 'Variables CV' Caption = 'Variables CV'
TabOrder = 5 TabOrder = 5
object Label3: TLabel object Label3: TLabel
Left = 208 Left = 208
Top = 34 Top = 42
Width = 14 Width = 14
Height = 13 Height = 13
Caption = 'CV' Caption = 'CV'
@@ -1987,7 +1997,7 @@ object FormPrinc: TFormPrinc
end end
object LabelVCV: TLabel object LabelVCV: TLabel
Left = 208 Left = 208
Top = 55 Top = 71
Width = 47 Width = 47
Height = 13 Height = 13
Caption = 'Valeur CV' Caption = 'Valeur CV'
@@ -1995,7 +2005,7 @@ object FormPrinc: TFormPrinc
end end
object ButtonEcrCV: TButton object ButtonEcrCV: TButton
Left = 8 Left = 8
Top = 16 Top = 24
Width = 153 Width = 153
Height = 33 Height = 33
Hint = 'Ecriture CV en mode direct sur voie de programmation' Hint = 'Ecriture CV en mode direct sur voie de programmation'
@@ -2006,7 +2016,7 @@ object FormPrinc: TFormPrinc
end end
object ButtonLitCV: TButton object ButtonLitCV: TButton
Left = 8 Left = 8
Top = 64 Top = 80
Width = 153 Width = 153
Height = 33 Height = 33
Hint = 'Lecture CV en mode direct sur voie de programmation' Hint = 'Lecture CV en mode direct sur voie de programmation'
@@ -2018,19 +2028,37 @@ object FormPrinc: TFormPrinc
end end
object EditCV: TEdit object EditCV: TEdit
Left = 168 Left = 168
Top = 32 Top = 40
Width = 33 Width = 33
Height = 21 Height = 21
TabOrder = 2 TabOrder = 2
end end
object EditVal: TEdit object EditVal: TEdit
Left = 168 Left = 168
Top = 52 Top = 68
Width = 33 Width = 33
Height = 21 Height = 21
TabOrder = 3 TabOrder = 3
end end
end end
object PanelBouton: TPanel
Left = 952
Top = 200
Width = 64
Height = 67
BorderStyle = bsSingle
Color = clGreen
TabOrder = 6
Visible = False
object SpeedButton1: TSpeedButton
Left = 0
Top = 0
Width = 57
Height = 57
Caption = 'bouton maison'
Flat = True
end
end
end end
object MSCommCde1: TMSComm object MSCommCde1: TMSComm
Left = 1064 Left = 1064
+244 -24
View File
@@ -1,5 +1,5 @@
Unit UnitPrinc; Unit UnitPrinc;
// 29/12 10h // 5/1 9h
(******************************************** (********************************************
Programme signaux complexes Graphique Lenz Programme signaux complexes Graphique Lenz
Delphi 7 + activeX Tmscomm + clientSocket Delphi 7 + activeX Tmscomm + clientSocket
@@ -44,6 +44,15 @@ Unit UnitPrinc;
// si on bouge un aiguillage à la raquette, on récupère bien sa position par XpressNet. // si on bouge un aiguillage à la raquette, on récupère bien sa position par XpressNet.
// Une loco sur un détecteur au lancement ne renvoie pas son état statique. Seuls les changements // Une loco sur un détecteur au lancement ne renvoie pas son état statique. Seuls les changements
// d'état sont renvoyés par la centrale. // d'état sont renvoyés par la centrale.
//
// Notes pour compilation sous Embarcadero : --------------------------------------------------
// Pour compilation avec Rad Studio (Delphi11): Projet / Options // Application / Apparence /
// Embarcadero technologies / carbon ou Auric
//
// Pour le mode sombre sous embarcadero, il faut sélectionner:
// Projet / Options // Application / manifeste / fichier manifeste : personnaliser
// à la sauvegarde, ce champ appraitra sous "générer automatiquement"
// et : décocher "activer les thèmes d'exécution"
//{$Q-} // pas de vérification du débordement des opérations de calcul //{$Q-} // pas de vérification du débordement des opérations de calcul
//{$R-} // pas de vérification des limites d'index du tableau et des variables //{$R-} // pas de vérification des limites d'index du tableau et des variables
@@ -218,6 +227,8 @@ type
Copierltatdesaiguillageseninitialisation1: TMenuItem; Copierltatdesaiguillageseninitialisation1: TMenuItem;
ServerSocket: TServerSocket; ServerSocket: TServerSocket;
Listedesclientsconnects1: TMenuItem; Listedesclientsconnects1: TMenuItem;
PanelBouton: TPanel;
SpeedButton1: TSpeedButton;
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
procedure MSCommUSBInterfaceComm(Sender: TObject); procedure MSCommUSBInterfaceComm(Sender: TObject);
@@ -401,6 +412,7 @@ const_inconnu=9; // position inconnue
IdClients=10; // Index maxi de clients IdClients=10; // Index maxi de clients
NbCouleurTrain=8; NbCouleurTrain=8;
MaxCdeDccpp=20; MaxCdeDccpp=20;
couleurTexte=$A0FFFF;
clRose=$AAAAFF; clRose=$AAAAFF;
clCyan=$FFA0A0; clCyan=$FFA0A0;
clviolet=$FF00FF; clviolet=$FF00FF;
@@ -566,7 +578,7 @@ var
AvecDemandeInterfaceUSB,AvecDemandeInterfaceEth,aff_acc,affiche_aigdcc,modeStkRetro, AvecDemandeInterfaceUSB,AvecDemandeInterfaceEth,aff_acc,affiche_aigdcc,modeStkRetro,
retEtatDet,roulage,init_aig_cours,affevt,placeAffiche,clicComboTrain,clicAdrTrain, retEtatDet,roulage,init_aig_cours,affevt,placeAffiche,clicComboTrain,clicAdrTrain,
avec_splitter,fichier_module_cdm,Diffusion,cdmDevant,avecRESA,serveurIPCDM_Touche, avec_splitter,fichier_module_cdm,Diffusion,cdmDevant,avecRESA,serveurIPCDM_Touche,
Z21 : boolean; Z21,sombre,serveur_ouvert : boolean;
tick,Premier_tick : longint; tick,Premier_tick : longint;
@@ -702,7 +714,7 @@ var
end; end;
tablo_CV : array [1..255] of integer; tablo_CV : array [1..255] of integer;
couleur : Tcolor; couleur,Couleurfond : Tcolor;
// modélisations des fichiers config // modélisations des fichiers config
branche : array [1..MaxBranches] of string; branche : array [1..MaxBranches] of string;
@@ -850,12 +862,16 @@ procedure mosaiqueH;
procedure mosaiqueV; procedure mosaiqueV;
function InfoSignal(adresse : integer) : string; function InfoSignal(adresse : integer) : string;
procedure det_prec_signal(adresse : integer;var tabloDet : TTabloDet); procedure det_prec_signal(adresse : integer;var tabloDet : TTabloDet);
procedure composant(c : tComponent;fond,texte : tColor);
procedure maj_couleurs;
implementation implementation
uses UnitDebug, UnitPilote, UnitSimule, UnitTCO, UnitConfig, uses UnitDebug, UnitPilote, UnitSimule, UnitTCO, UnitConfig,
Unitplace, verif_version , UnitCDF, UnitAnalyseSegCDM, UnitConfigCellTCO, Unitplace, verif_version , UnitCDF, UnitAnalyseSegCDM, UnitConfigCellTCO,
UnitConfigTCO; UnitConfigTCO,
UnitSR;
{ {
procedure menu_interface(MA : TMA); procedure menu_interface(MA : TMA);
@@ -879,11 +895,35 @@ begin
inc(etape); inc(etape);
end; end;
procedure Tformprinc.DoHint(Sender : Tobject); procedure Tformprinc.DoHint(Sender : Tobject); // le sender est tApplication
var s: string; var s,nomForm: string;
c : tcomponent;
FormeTCO : boolean;
begin begin
s:=Application.Hint; s:=Application.Hint; // texte du hint
StatusBar1.Panels[0].text:=s; StatusBar1.Panels[0].text:=s;
// détection d'un hint provoqué dans formtco
NomForm:=uppercase(Screen.activeform.Name);
formeTCO:=copy(NomForm,1,7)='FORMTCO';
// dessine les encadrés de colonne/ligne dans le tco suivant sélection du popup menu, en fonction du hint qu'on accroche
if formeTCO then
begin
// hints des colonnes
if (s=s101) or (s=s93) or (s=s94) then
begin
if not(colonneAffiche) then encadre_colonne;
end
else if colonneAffiche then encadre_colonne;
// hints des lignes
if (s=s90) or (s=s91) or (s=s100) then
begin
if not(ligneAffiche) then encadre_ligne;
end
else if ligneAffiche then encadre_ligne;
end;
end; end;
// fonctions sur les bits // fonctions sur les bits
@@ -2284,16 +2324,16 @@ begin
//if Signaux[rang].aspect=5 then cercle(Picture.Bitmap.Canvas,13,22,6,ClYellow); //if Signaux[rang].aspect=5 then cercle(Picture.Bitmap.Canvas,13,22,6,ClYellow);
refresh; refresh;
Picture.Bitmap.Modified:=True; Picture.Bitmap.Modified:=True;
end; end;
// créée le label pour afficher son adresse // créée le label pour afficher son adresse
Signaux[rang].Lbl:=Tlabel.create(Formprinc.ScrollBox1); Signaux[rang].Lbl:=Tlabel.create(Formprinc.ScrollBox1);
with Signaux[rang].Lbl do with Signaux[rang].Lbl do
begin begin
Name:='LabelFeu'+intToSTR(Signaux[rang].adresse);
caption:='@'+IntToSTR(Signaux[rang].adresse); caption:='@'+IntToSTR(Signaux[rang].adresse);
Parent:=Formprinc.ScrollBox1; Parent:=Formprinc.ScrollBox1;
font.color:=clBlack;
width:=100;height:=20; width:=100;height:=20;
Top:=HtImg+((HtImg+EspY+20)*((rang-1) div NbreImagePLigne)); Top:=HtImg+((HtImg+EspY+20)*((rang-1) div NbreImagePLigne));
Left:=10+ (LargImg+5)*((rang-1) mod (NbreImagePLigne)); Left:=10+ (LargImg+5)*((rang-1) mod (NbreImagePLigne));
@@ -2311,6 +2351,7 @@ begin
Hint:='Feu blanc'; Hint:='Feu blanc';
Name:='CheckBoxFB'+intToSTR(adresse); // affecter l'adresse du feu pour pouvoir le retrouver dans la procédure Name:='CheckBoxFB'+intToSTR(adresse); // affecter l'adresse du feu pour pouvoir le retrouver dans la procédure
caption:='dem FB'; caption:='dem FB';
font.color:=clBlack;
Parent:=Formprinc.ScrollBox1; Parent:=Formprinc.ScrollBox1;
width:=100;height:=15; width:=100;height:=15;
Top:=HtImg+15+((HtImg+EspY+20)*((rang-1) div NbreImagePLigne)); Top:=HtImg+15+((HtImg+EspY+20)*((rang-1) div NbreImagePLigne));
@@ -7357,6 +7398,17 @@ begin
3: begin prec:=Signaux[i].Adr_det3; actuel:=Signaux[i].Adr_el_suiv3; TypeElActuel:=Signaux[i].Btype_suiv3; end; 3: begin prec:=Signaux[i].Adr_det3; actuel:=Signaux[i].Adr_el_suiv3; TypeElActuel:=Signaux[i].Btype_suiv3; end;
4: begin prec:=Signaux[i].Adr_det4; actuel:=Signaux[i].Adr_el_suiv4; TypeElActuel:=Signaux[i].Btype_suiv4; end; 4: begin prec:=Signaux[i].Adr_det4; actuel:=Signaux[i].Adr_el_suiv4; TypeElActuel:=Signaux[i].Btype_suiv4; end;
end; end;
if (prec=0) then
begin
s:='Erreur 780 : détecteur nul déclaré sur signal '+intToSTR(adresse);
Affiche(s,clred);
affichedebug(s,clred);
result:=0;
reserveTrainTiers:=false;
AdrTrain:=0;
exit;
end;
TypeElPrec:=Det; TypeElPrec:=Det;
end end
else else
@@ -7519,7 +7571,7 @@ begin
TypePrec:=det; TypePrec:=det;
if prec=0 then if prec=0 then
begin begin
Affiche('Msg 601 - feu '+intToSTR(prec)+' détecteur non renseigné ',clOrange); Affiche('Msg 601 - Signal '+intToSTR(prec)+' détecteur non renseigné ',clOrange);
if NivDebug=3 then AfficheDebug('Msg 602 - détecteur '+intToSTR(prec)+' non renseigné ',clOrange); if NivDebug=3 then AfficheDebug('Msg 602 - détecteur '+intToSTR(prec)+' non renseigné ',clOrange);
signal_suivant_det:=0; signal_suivant_det:=0;
if debug=3 then formprinc.Caption:=''; if debug=3 then formprinc.Caption:='';
@@ -10672,8 +10724,8 @@ begin
begin begin
if aiguillage[index].position=const_inconnu then if aiguillage[index].position=const_inconnu then
begin begin
Affiche('Attention : position de l''aiguillage '+IntToSTR(i)+' inconnue',clred); Affiche('Attention : position de l''aiguillage '+IntToSTR(i)+' inconnue',ClOrange);
AfficheDebug('Attention : position de l''aiguillage '+IntToSTR(i)+' inconnue',clred); AfficheDebug('Attention : position de l''aiguillage '+IntToSTR(i)+' inconnue',ClOrange);
end; end;
end; end;
end; end;
@@ -12634,6 +12686,7 @@ begin
end; end;
// positionne les composants de la fenêtre principale // positionne les composants de la fenêtre principale
// i : position X du splitter
procedure positionne_elements(i : integer); procedure positionne_elements(i : integer);
begin begin
with formprinc do with formprinc do
@@ -12642,7 +12695,7 @@ begin
GroupBox2.Left:=i+12; GroupBox2.Left:=i+12;
GroupBox3.Left:=i+12; GroupBox3.Left:=i+12;
ScrollBox1.Left:=i+12; ScrollBox1.Left:=i+12;
ScrollBox1.width:=GrandPanel.Width-i-5; ScrollBox1.width:=GrandPanel.Width-i-20;
Panel1.Left:=GroupBox1.Left+GroupBox1.Width+5; Panel1.Left:=GroupBox1.Left+GroupBox1.Width+5;
Panel1.top:=9; Panel1.top:=9;
GroupBox1.Top:=5; GroupBox1.Top:=5;
@@ -12652,6 +12705,144 @@ begin
end; end;
end; end;
procedure composant(c : tComponent;fond,texte : tColor);
var cGB : TGroupBox;
cTE : tEdit;
cCB : tComboBox;
cPa : tPanel;
cLa : tLabel;
cSc : tScrollBox;
cSB : tcheckBox;
cSh : tShape;
cMe : tMemo;
cBu : Tbutton;
cRa : tRadioGroup;
cRb : tRadioButton;
begin
if c is Tshape then
begin
csH:=c as tShape;
csH.Brush.Color:=fond;
exit;
end;
if c is TGroupBox then
begin
cGB:=c as TgroupBox;
cGB.color:=fond;
cGB.font.color:=texte;
exit;
end;
if c is TRadioGroup then
begin
cRa:=c as TRadioGroup;
cRa.color:=fond;
cRa.font.color:=texte;
exit;
end;
if c is TRadioButton then
begin
cRb:=c as tRadioButton;
cRb.color:=fond;
cRb.font.color:=texte;
exit;
end;
if c is TMemo then
begin
cMe:=c as TMemo;
cMe.color:=fond;
cMe.font.color:=texte;
exit;
end;
if c is TGroupBox then
begin
cGB:=c as TgroupBox;
cGB.color:=fond;
cGB.font.color:=texte;
cGB.Repaint;
exit;
end;
if c is TEdit then
begin
cTE:=c as tEdit;
cTE.color:=fond;
cTE.Font.Color:=texte;
exit;
end;
if c is tComboBox then
begin
cCB:=c as tComboBox;
cCB.color:=fond;
cCb.Font.Color:=clWhite;
exit;
end;
if c is tPanel then
begin
cPa:=c as tPanel;
cPA.Color:=fond;
cPA.Font.Color:=texte;
exit;
end;
if c is tLabel then
begin
cLa:=c as tLabel;
cLa.Color:=fond;
cLa.Font.Color:=texte;
exit;
end;
if c is tCheckBox then
begin
cSb:=c as tCheckBox;
cSb.Color:=fond;
cSB.Font.Color:=texte;
exit;
end;
end;
procedure couleurs_Princ;
var
fond,texte : tColor;
i : integer;
c : Tcomponent;
cSc: tScrollBox;
begin
fond:=couleurFond;
texte:=couleurTexte;
if sombre then
begin
formprinc.Color:=fond;
for i:=0 to formprinc.ComponentCount-1 do
begin
c:=formprinc.Components[i];
//Affiche(c.Name,clyellow);
composant(c,fond,texte);
end;
cSc:=Formprinc.FindComponent('ScrollBox1') as tScrollBox;
if assigned(cSc) then
begin
texte:=clBlack;
fond:=Formprinc.ScrollBox1.Color;
for i:=0 to formprinc.ScrollBox1.ComponentCount-1 do
begin
c:=formprinc.ScrollBox1.Components[i];
//Affiche(c.Name,clLime);
composant(c,fond,texte);
end;
end;
end;
end;
procedure maj_couleurs;
begin
couleurs_princ;
Couleurs_config;
couleurs_debug;
couleurs_SR;
couleurs_cdf;
couleurs_place;
couleurs_pilote;
end;
// démarrage principal du programme signaux_complexes // démarrage principal du programme signaux_complexes
procedure TFormPrinc.FormCreate(Sender: TObject); procedure TFormPrinc.FormCreate(Sender: TObject);
var n,t,i,index,OrgMilieu : integer; var n,t,i,index,OrgMilieu : integer;
@@ -12668,6 +12859,7 @@ begin
protocole:=1; protocole:=1;
filtrageDet0:=3; filtrageDet0:=3;
cdmHd:=0; cdmHd:=0;
CouleurFond:=$404040 ;
// services commIP CDM par défaut // services commIP CDM par défaut
Srvc_Aig:=true; Srvc_Aig:=true;
@@ -12721,6 +12913,7 @@ begin
formatY:=-1; formatY:=-1;
avecResa:=false; // réservation des aiguillages en mode normal avecResa:=false; // réservation des aiguillages en mode normal
serveurIPCDM_Touche:=false; serveurIPCDM_Touche:=false;
sombre:=false;
AvecInit:=true; // &&&& avec initialisation des aiguillages ou pas AvecInit:=true; // &&&& avec initialisation des aiguillages ou pas
Diffusion:=AvecInit; // mode diffusion publique + debug mise au point etc Diffusion:=AvecInit; // mode diffusion publique + debug mise au point etc
roulage1.visible:=false; roulage1.visible:=false;
@@ -12790,9 +12983,15 @@ begin
procetape('Lecture de la configuration'); procetape('Lecture de la configuration');
lit_config; lit_config;
serveur_ouvert:=true;
serverSocket.Port:=PortServeur; serverSocket.Port:=PortServeur;
ServerSocket.Open; try
ServerSocket.Active:=true; ServerSocket.Open;
except
serveur_ouvert:=false;
Affiche('Serveur signaux_complexes non ouvert, le port '+intToSTR(PortServeur)+' est utilisé',clred);
end;
if serveur_ouvert then ServerSocket.Active:=true;
Menu_tco(NbreTCO); Menu_tco(NbreTCO);
procetape('Lecture du TCO'); procetape('Lecture du TCO');
@@ -12816,7 +13015,6 @@ begin
EditEnvoi.Visible:=true; EditEnvoi.Visible:=true;
end; end;
Application.ProcessMessages; Application.ProcessMessages;
// Initialisation des images des signaux // Initialisation des images des signaux
procetape('Création des signaux'); procetape('Création des signaux');
@@ -12829,7 +13027,7 @@ begin
if debug=1 then affiche('Création du signal '+intToSTR(i)+' ----------',clLime); if debug=1 then affiche('Création du signal '+intToSTR(i)+' ----------',clLime);
cree_image(i); // et initialisation tableaux signaux cree_image(i); // et initialisation tableaux signaux
end; end;
Tempo_init:=5; // démarre les initialisation des signaux et des aiguillages dans 0,5 s Tempo_init:=5; // démarre les initialisation des signaux et des aiguillages dans 0,5 s
if debug=1 then Affiche('Création TCO',clLime); if debug=1 then Affiche('Création TCO',clLime);
@@ -12869,11 +13067,10 @@ begin
//Align:=AlLeft; // si on ne met pas AlignLeft, alors le splitter n'est pas accrochable //Align:=AlLeft; // si on ne met pas AlignLeft, alors le splitter n'est pas accrochable
top:=formprinc.LabelTitre.top+formprinc.LabelTitre.Height+4;; top:=formprinc.LabelTitre.top+formprinc.LabelTitre.Height+4;;
width:=formprinc.width-30; width:=formprinc.width-30;
height:=formprinc.Height-StatusBar1.Height-LabelTitre.Height-63; height:=formprinc.Height-StatusBar1.Height-LabelTitre.Height-66;
Anchors:=[akLeft,akTop,akRight,akBottom]; Anchors:=[akLeft,akTop,akRight,akBottom];
end; end;
if avec_splitter then if avec_splitter then
begin begin
with Fenrich do with Fenrich do
@@ -12900,10 +13097,9 @@ begin
Parent:=GrandPanel; Parent:=GrandPanel;
Anchors:=[akTop,akRight,akBottom]; Anchors:=[akTop,akRight,akBottom];
width:=GrandPanel.Width-SplitterV.Width-5; width:=GrandPanel.Width-SplitterV.Width-5;
height:=GrandPanel.Height-groupBox3.height-groupBox3.top-25; height:=GrandPanel.Height-groupBox3.height-groupBox3.top-10;
top:=GroupBox3.Top+GroupBox3.Height+5; top:=GroupBox3.Top+GroupBox3.Height+5;
end; end;
positionne_elements(splitterV.left); positionne_elements(splitterV.left);
end end
@@ -12931,7 +13127,6 @@ begin
end; end;
end; end;
if (PosSplitter>0) and (PosSPlitter<formPrinc.Width) and (AffMemoFenetre=1) then if (PosSplitter>0) and (PosSPlitter<formPrinc.Width) and (AffMemoFenetre=1) then
begin begin
fenRich.Width:=PosSplitter; fenRich.Width:=PosSplitter;
@@ -12982,6 +13177,10 @@ begin
end; end;
end; end;
couleurs_princ;
//formprinc.panel2.Color:=clred;
SpeedButton1.Align:=alClient;
if debug=1 then Affiche('Initialisations',clLime); if debug=1 then Affiche('Initialisations',clLime);
raz_tout; raz_tout;
@@ -13028,7 +13227,6 @@ begin
end; end;
end; end;
if debug=1 then Affiche('Tentative ouverture liaison centrale',clLime); if debug=1 then Affiche('Tentative ouverture liaison centrale',clLime);
if portCommOuvert or parSocketLenz then if portCommOuvert or parSocketLenz then
With Formprinc do With Formprinc do
@@ -13144,7 +13342,6 @@ begin
ConfCellTCO:=false; ConfCellTCO:=false;
if debug=1 then Affiche('Fini',clLime); if debug=1 then Affiche('Fini',clLime);
end; end;
@@ -15661,8 +15858,29 @@ begin
end; end;
procedure TFormPrinc.TrackBarVitChange(Sender: TObject); procedure TFormPrinc.TrackBarVitChange(Sender: TObject);
var s : string;
i,adr,vit,erreur : integer;
sens : boolean;
begin begin
EditVitesse.Text:=intToSTR(TrackBarVit.position); EditVitesse.Text:=intToSTR(TrackBarVit.position);
s:=editAdrTrain.Text;
val(s,adr,erreur);
if (erreur<>0) or (adr<0) then exit;
//if not(portCommOuvert) and not(parSocketLenz) and not(CDM_Connecte) then exit;
s:=editVitesse.Text;
val(s,vit,erreur);
if (erreur<>0) or (vit<-100) or (vit>100) then exit;
i:=0;s:='';
if combotrains.itemindex<>-1 then
begin
s:=combotrains.Items[combotrains.itemindex];
i:=index_train_nom(s);
end;
//Affiche('Commande vitesse train '+s+' ('+intToSTR(adr)+') à '+IntToSTR(vit)+'%',cllime);
sens:=vit>0;
vitesse_loco(s,i,adr,vit,sens,true);
if s='' then s:=intToSTR(adr);
end; end;
procedure TFormPrinc.EditVitesseChange(Sender: TObject); procedure TFormPrinc.EditVitesseChange(Sender: TObject);
@@ -17094,6 +17312,8 @@ begin
if n>1 then affiche(intToSTR(n)+' clients connectés',clyellow); if n>1 then affiche(intToSTR(n)+' clients connectés',clyellow);
end; end;
end. end.
+18
View File
@@ -126,6 +126,7 @@ var
FormSR: TFormSR; FormSR: TFormSR;
Adr,IndexSig : integer; Adr,IndexSig : integer;
procedure couleurs_SR;
implementation implementation
@@ -464,8 +465,24 @@ begin
maj_db; maj_db;
end; end;
procedure couleurs_SR;
var i : integer;
c : tComponent;
begin
if sombre then with formSR do
begin
color:=couleurfond;
for i:=0 to ComponentCount-1 do
begin
c:=Components[i];
composant(c,couleurFond,couleurTexte);
end;
end;
end;
procedure TFormSR.FormCreate(Sender: TObject); procedure TFormSR.FormCreate(Sender: TObject);
var i : integer; var i : integer;
c : tcomponent;
begin begin
for i:=0 to 19 do for i:=0 to 19 do
begin begin
@@ -486,6 +503,7 @@ begin
ComboBoxAdr15.items.add(etats[i]); ComboBoxAdr15.items.add(etats[i]);
ComboBoxAdr16.items.add(etats[i]); ComboBoxAdr16.items.add(etats[i]);
end; end;
couleurs_SR;
end; end;
procedure TFormSR.BitBtnokClick(Sender: TObject); procedure TFormSR.BitBtnokClick(Sender: TObject);
+23 -18
View File
@@ -1,8 +1,8 @@
object FormTCO: TFormTCO object FormTCO: TFormTCO
Left = 89 Left = 104
Top = 111 Top = 226
Width = 1212 Width = 1212
Height = 580 Height = 661
VertScrollBar.Visible = False VertScrollBar.Visible = False
Caption = 'c' Caption = 'c'
Color = clBtnFace Color = clBtnFace
@@ -23,8 +23,8 @@ object FormTCO: TFormTCO
OnKeyPress = FormKeyPress OnKeyPress = FormKeyPress
OnMouseWheel = FormMouseWheel OnMouseWheel = FormMouseWheel
DesignSize = ( DesignSize = (
1196 1204
521) 610)
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
object LabelZoom: TLabel object LabelZoom: TLabel
@@ -59,7 +59,7 @@ object FormTCO: TFormTCO
Left = 10 Left = 10
Top = 15 Top = 15
Width = 687 Width = 687
Height = 266 Height = 347
HorzScrollBar.Smooth = True HorzScrollBar.Smooth = True
HorzScrollBar.Tracking = True HorzScrollBar.Tracking = True
VertScrollBar.Smooth = True VertScrollBar.Smooth = True
@@ -71,12 +71,12 @@ object FormTCO: TFormTCO
TabOrder = 1 TabOrder = 1
DesignSize = ( DesignSize = (
683 683
262) 343)
object ImageTCO: TImage object ImageTCO: TImage
Left = 120 Left = 120
Top = 41 Top = 41
Width = 486 Width = 486
Height = 176 Height = 257
Anchors = [akLeft, akTop, akRight, akBottom] Anchors = [akLeft, akTop, akRight, akBottom]
AutoSize = True AutoSize = True
ParentShowHint = False ParentShowHint = False
@@ -108,7 +108,7 @@ object FormTCO: TFormTCO
end end
object Panel1: TPanel object Panel1: TPanel
Left = 2 Left = 2
Top = 332 Top = 413
Width = 1143 Width = 1143
Height = 185 Height = 185
Anchors = [akLeft, akRight, akBottom] Anchors = [akLeft, akRight, akBottom]
@@ -1227,7 +1227,7 @@ object FormTCO: TFormTCO
end end
object PopupMenu1: TPopupMenu object PopupMenu1: TPopupMenu
OnPopup = PopupMenu1Popup OnPopup = PopupMenu1Popup
Left = 368 Left = 944
Top = 8 Top = 8
object MenuCouper: TMenuItem object MenuCouper: TMenuItem
Caption = 'Couper' Caption = 'Couper'
@@ -1245,7 +1245,7 @@ object FormTCO: TFormTCO
Caption = '-' Caption = '-'
end end
object Annulercouper: TMenuItem object Annulercouper: TMenuItem
Caption = 'Annuler ctrl+Z' Caption = 'Annuler ctrl+Z'
OnClick = AnnulercouperClick OnClick = AnnulercouperClick
end end
object N1: TMenuItem object N1: TMenuItem
@@ -1285,7 +1285,7 @@ object FormTCO: TFormTCO
Caption = '-' Caption = '-'
end end
object Toutslectionner1: TMenuItem object Toutslectionner1: TMenuItem
Caption = 'Tout s'#233'lectionner' Caption = 'Tout s'#233'lectionner ctrl+A'
OnClick = Toutslectionner1Click OnClick = Toutslectionner1Click
end end
object Inserer: TMenuItem object Inserer: TMenuItem
@@ -1297,6 +1297,7 @@ object FormTCO: TFormTCO
end end
object LigneDessous: TMenuItem object LigneDessous: TMenuItem
Caption = 'Ligne en dessous' Caption = 'Ligne en dessous'
Hint = 'ins'#232're une ligne en dessous'
OnClick = LigneDessousClick OnClick = LigneDessousClick
end end
object N7: TMenuItem object N7: TMenuItem
@@ -1304,10 +1305,12 @@ object FormTCO: TFormTCO
end end
object Colonnegauche1: TMenuItem object Colonnegauche1: TMenuItem
Caption = 'Colonne '#224' gauche' Caption = 'Colonne '#224' gauche'
Hint = 'ins'#232're une colonne '#224' gauche'
OnClick = Colonnegauche1Click OnClick = Colonnegauche1Click
end end
object Colonnedroite1: TMenuItem object Colonnedroite1: TMenuItem
Caption = 'Colonne '#224' droite' Caption = 'Colonne '#224' droite'
Hint = 'ins'#232're une colonne '#224' droite'
OnClick = Colonnedroite1Click OnClick = Colonnedroite1Click
end end
end end
@@ -1315,10 +1318,12 @@ object FormTCO: TFormTCO
Caption = 'Supprimer' Caption = 'Supprimer'
object SupprimeLigne: TMenuItem object SupprimeLigne: TMenuItem
Caption = 'Ligne' Caption = 'Ligne'
Hint = 'supprime la ligne point'#233'e'
OnClick = SupprimeLigneClick OnClick = SupprimeLigneClick
end end
object Colonne: TMenuItem object Colonne: TMenuItem
Caption = 'Colonne' Caption = 'Colonne'
Hint = 'supprime la colonne point'#233'e'
OnClick = ColonneClick OnClick = ColonneClick
end end
end end
@@ -1337,17 +1342,17 @@ object FormTCO: TFormTCO
Font.Height = -11 Font.Height = -11
Font.Name = 'MS Sans Serif' Font.Name = 'MS Sans Serif'
Font.Style = [] Font.Style = []
Left = 264 Left = 880
Top = 408 Top = 8
end end
object ColorDialog1: TColorDialog object ColorDialog1: TColorDialog
OnShow = ColorDialog1Show OnShow = ColorDialog1Show
Left = 448 Left = 848
Top = 432 Top = 8
end end
object MainMenuTCO: TMainMenu object MainMenuTCO: TMainMenu
Left = 1000 Left = 912
Top = 48 Top = 8
object MenuTCO: TMenuItem object MenuTCO: TMenuItem
Caption = 'TCO' Caption = 'TCO'
object SauvegarderleTCO1: TMenuItem object SauvegarderleTCO1: TMenuItem
+637 -574
View File
File diff suppressed because it is too large Load Diff
+20
View File
@@ -83,6 +83,8 @@ type
var var
FormPlace: TFormPlace; FormPlace: TFormPlace;
procedure couleurs_place;
implementation implementation
uses UnitConfig, UnitTCO; uses UnitConfig, UnitTCO;
@@ -529,9 +531,27 @@ begin
placement[6].detdir:=i; placement[6].detdir:=i;
end; end;
procedure couleurs_place;
var i : integer;
c : tComponent;
begin
if sombre then with formPlace do
begin
color:=couleurFond;
for i:=0 to ComponentCount-1 do
begin
c:=Components[i];
composant(c,couleurFond,couleurTexte);
end;
end;
end;
procedure TFormPlace.FormCreate(Sender: TObject); procedure TFormPlace.FormCreate(Sender: TObject);
var c : tcomponent;
i : integer;
begin begin
PlaceAffiche:=true; PlaceAffiche:=true;
couleurs_place;
end; end;
procedure TFormPlace.BitBtn1Click(Sender: TObject); procedure TFormPlace.BitBtn1Click(Sender: TObject);
+1 -1
View File
@@ -25,7 +25,7 @@ var
verifVersion,notificationVersion : boolean; verifVersion,notificationVersion : boolean;
date_creation,nombre_tel : string; date_creation,nombre_tel : string;
Const Version='8.35'; // sert à la comparaison de la version publiée Const Version='8.36'; // sert à la comparaison de la version publiée
SousVersion=' '; // A B C ... en cas d'absence de sous version mettre un espace SousVersion=' '; // A B C ... en cas d'absence de sous version mettre un espace
function GetCurrentProcessEnvVar(const VariableName: string): string; function GetCurrentProcessEnvVar(const VariableName: string): string;
+2
View File
@@ -219,4 +219,6 @@ version 8.34 : Correction signal Unisemaf.
version 8.35 : Correction ajout de signaux et d'aiguillages. version 8.35 : Correction ajout de signaux et d'aiguillages.
Renforcement de la vérification de la cohérence. Renforcement de la vérification de la cohérence.
Amélioration de l'édition des TJD. Amélioration de l'édition des TJD.
version 8.36 : Création d'un mode de fond sombre modifiable pour l'affichage.
Amélioration édition des lignes et colonnes du TCO.