Due programmi che condividono uModbusRTU e uGauge: - Console/PlanciaConsole: plancia nautica descritta da file XML, con modalita' plancia e modalita' configurazione. Comandi, spie, selettori, strumenti e allarmi sonori; il bus gira in un thread suo perche' la finestra non si fermi mai. - ProjectPlancia: il programma di prova piu' vecchio, usato per collaudare i canali. Le plance sono in Console/*.xml, la documentazione in Console/LEGGIMI.md. Esclusi dal versionamento i compilati (.exe, .dcu), i file dell'IDE e un audio da 17 MB. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
973 lines
21 KiB
ObjectPascal
973 lines
21 KiB
ObjectPascal
object ConsoleForm: TConsoleForm
|
|
Left = 0
|
|
Top = 0
|
|
Caption = 'Plancia'
|
|
ClientHeight = 760
|
|
ClientWidth = 1200
|
|
Color = clBtnFace
|
|
Font.Charset = DEFAULT_CHARSET
|
|
Font.Color = clWindowText
|
|
Font.Height = -12
|
|
Font.Name = 'Segoe UI'
|
|
Font.Style = []
|
|
Position = poScreenCenter
|
|
OnCloseQuery = FormCloseQuery
|
|
OnCreate = FormCreate
|
|
OnDestroy = FormDestroy
|
|
OnKeyDown = FormKeyDown
|
|
OnKeyPress = FormKeyPress
|
|
TextHeight = 15
|
|
object pnlToolbar: TPanel
|
|
Left = 0
|
|
Top = 0
|
|
Width = 1200
|
|
Height = 44
|
|
Align = alTop
|
|
BevelOuter = bvNone
|
|
TabOrder = 0
|
|
object lblZoom: TLabel
|
|
Left = 702
|
|
Top = 15
|
|
Width = 30
|
|
Height = 15
|
|
Caption = 'Zoom'
|
|
end
|
|
object lblFile: TLabel
|
|
Left = 852
|
|
Top = 15
|
|
Width = 3
|
|
Height = 15
|
|
end
|
|
object btnNuovo: TButton
|
|
Left = 10
|
|
Top = 8
|
|
Width = 80
|
|
Height = 28
|
|
Caption = 'Nuovo'
|
|
TabOrder = 0
|
|
OnClick = btnNuovoClick
|
|
end
|
|
object btnApri: TButton
|
|
Left = 96
|
|
Top = 8
|
|
Width = 80
|
|
Height = 28
|
|
Caption = 'Apri...'
|
|
TabOrder = 1
|
|
OnClick = btnApriClick
|
|
end
|
|
object btnSalva: TButton
|
|
Left = 182
|
|
Top = 8
|
|
Width = 80
|
|
Height = 28
|
|
Caption = 'Salva'
|
|
TabOrder = 2
|
|
OnClick = btnSalvaClick
|
|
end
|
|
object btnSalvaCome: TButton
|
|
Left = 268
|
|
Top = 8
|
|
Width = 110
|
|
Height = 28
|
|
Caption = 'Salva con nome...'
|
|
TabOrder = 3
|
|
OnClick = btnSalvaComeClick
|
|
end
|
|
object btnAnnulla: TButton
|
|
Left = 390
|
|
Top = 8
|
|
Width = 80
|
|
Height = 28
|
|
Hint = 'Annulla l'#39'ultima modifica (Ctrl+Z)'
|
|
Caption = 'Annulla'
|
|
Enabled = False
|
|
ParentShowHint = False
|
|
ShowHint = True
|
|
TabOrder = 6
|
|
OnClick = btnAnnullaClick
|
|
end
|
|
object btnRipeti: TButton
|
|
Left = 476
|
|
Top = 8
|
|
Width = 80
|
|
Height = 28
|
|
Hint = 'Ripete la modifica annullata (Ctrl+Y)'
|
|
Caption = 'Ripeti'
|
|
Enabled = False
|
|
ParentShowHint = False
|
|
ShowHint = True
|
|
TabOrder = 7
|
|
OnClick = btnRipetiClick
|
|
end
|
|
object chkGriglia: TCheckBox
|
|
Left = 568
|
|
Top = 14
|
|
Width = 120
|
|
Height = 17
|
|
Caption = 'Griglia 10 px'
|
|
Checked = True
|
|
State = cbChecked
|
|
TabOrder = 4
|
|
OnClick = chkGrigliaClick
|
|
end
|
|
object cboZoom: TComboBox
|
|
Left = 742
|
|
Top = 11
|
|
Width = 84
|
|
Height = 23
|
|
Style = csDropDownList
|
|
TabOrder = 5
|
|
OnChange = ZoomChanged
|
|
end
|
|
end
|
|
object pnlStatus: TPanel
|
|
Left = 0
|
|
Top = 730
|
|
Width = 1200
|
|
Height = 30
|
|
Align = alBottom
|
|
BevelOuter = bvNone
|
|
TabOrder = 1
|
|
object shpLed: TShape
|
|
Left = 12
|
|
Top = 8
|
|
Width = 14
|
|
Height = 14
|
|
Brush.Color = clGray
|
|
Shape = stCircle
|
|
end
|
|
object lblStatus: TLabel
|
|
Left = 36
|
|
Top = 8
|
|
Width = 3
|
|
Height = 15
|
|
end
|
|
object btnModo: TButton
|
|
Left = 1040
|
|
Top = 3
|
|
Width = 150
|
|
Height = 24
|
|
Anchors = [akTop, akRight]
|
|
Caption = 'Vai in plancia'
|
|
TabOrder = 0
|
|
OnClick = btnModoClick
|
|
end
|
|
object btnNotte: TButton
|
|
Left = 934
|
|
Top = 3
|
|
Width = 100
|
|
Height = 24
|
|
Anchors = [akTop, akRight]
|
|
Caption = 'Notte'
|
|
TabOrder = 1
|
|
OnClick = btnNotteClick
|
|
end
|
|
object btnAllarmi: TButton
|
|
Left = 470
|
|
Top = 3
|
|
Width = 228
|
|
Height = 24
|
|
Hint = 'Rimette in funzione gli allarmi sonori zittiti'
|
|
Anchors = [akTop, akRight]
|
|
Caption = 'Allarmi zittiti'
|
|
ParentShowHint = False
|
|
ShowHint = True
|
|
TabOrder = 3
|
|
TabStop = False
|
|
Visible = False
|
|
OnClick = btnAllarmiClick
|
|
end
|
|
object cboPlancia: TComboBox
|
|
Left = 704
|
|
Top = 3
|
|
Width = 224
|
|
Height = 23
|
|
Hint = 'Passa a un'#39'altra plancia della stessa cartella'
|
|
Style = csDropDownList
|
|
Anchors = [akTop, akRight]
|
|
ParentShowHint = False
|
|
ShowHint = True
|
|
TabOrder = 2
|
|
TabStop = False
|
|
Visible = False
|
|
OnSelect = cboPlanciaSelect
|
|
end
|
|
end
|
|
object pnlPalette: TPanel
|
|
Left = 0
|
|
Top = 44
|
|
Width = 200
|
|
Height = 686
|
|
Align = alLeft
|
|
BevelOuter = bvNone
|
|
TabOrder = 2
|
|
object lblPaletteTitle: TLabel
|
|
Left = 10
|
|
Top = 6
|
|
Width = 44
|
|
Height = 15
|
|
Caption = 'Palette'
|
|
Font.Charset = DEFAULT_CHARSET
|
|
Font.Color = clWindowText
|
|
Font.Height = -12
|
|
Font.Name = 'Segoe UI'
|
|
Font.Style = [fsBold]
|
|
ParentFont = False
|
|
end
|
|
object gbImmagini: TGroupBox
|
|
Left = 6
|
|
Top = 306
|
|
Width = 188
|
|
Height = 160
|
|
Caption = 'Libreria immagini'
|
|
TabOrder = 0
|
|
object lstImmagini: TListBox
|
|
Left = 10
|
|
Top = 20
|
|
Width = 168
|
|
Height = 100
|
|
ItemHeight = 15
|
|
TabOrder = 0
|
|
end
|
|
object btnImgAdd: TButton
|
|
Left = 10
|
|
Top = 126
|
|
Width = 80
|
|
Height = 26
|
|
Caption = 'Aggiungi...'
|
|
TabOrder = 1
|
|
OnClick = btnImgAddClick
|
|
end
|
|
object btnImgDel: TButton
|
|
Left = 96
|
|
Top = 126
|
|
Width = 82
|
|
Height = 26
|
|
Caption = 'Rimuovi'
|
|
TabOrder = 2
|
|
OnClick = btnImgDelClick
|
|
end
|
|
end
|
|
object gbGenerale: TGroupBox
|
|
Left = 0
|
|
Top = 486
|
|
Width = 200
|
|
Height = 200
|
|
Align = alBottom
|
|
Caption = 'Generale'
|
|
TabOrder = 1
|
|
object lblPort: TLabel
|
|
Left = 10
|
|
Top = 18
|
|
Width = 55
|
|
Height = 15
|
|
Caption = 'Porta COM'
|
|
end
|
|
object lblBaud: TLabel
|
|
Left = 105
|
|
Top = 18
|
|
Width = 27
|
|
Height = 15
|
|
Caption = 'Baud'
|
|
end
|
|
object lblPoll: TLabel
|
|
Left = 10
|
|
Top = 62
|
|
Width = 65
|
|
Height = 15
|
|
Caption = 'Polling (ms)'
|
|
end
|
|
object lblPanelSize: TLabel
|
|
Left = 105
|
|
Top = 62
|
|
Width = 88
|
|
Height = 15
|
|
Caption = 'Pannello L x A'
|
|
end
|
|
object lblTitolo: TLabel
|
|
Left = 10
|
|
Top = 106
|
|
Width = 76
|
|
Height = 15
|
|
Caption = 'Titolo plancia'
|
|
end
|
|
object lblSfondo: TLabel
|
|
Left = 10
|
|
Top = 150
|
|
Width = 105
|
|
Height = 15
|
|
Caption = 'Immagine di sfondo'
|
|
end
|
|
object cboPort: TComboBox
|
|
Left = 10
|
|
Top = 36
|
|
Width = 88
|
|
Height = 23
|
|
TabOrder = 0
|
|
Text = 'COM1'
|
|
OnChange = GeneralChanged
|
|
end
|
|
object cboBaud: TComboBox
|
|
Left = 105
|
|
Top = 36
|
|
Width = 85
|
|
Height = 23
|
|
TabOrder = 1
|
|
Text = '9600'
|
|
OnChange = GeneralChanged
|
|
end
|
|
object edtPoll: TEdit
|
|
Left = 10
|
|
Top = 80
|
|
Width = 60
|
|
Height = 23
|
|
TabOrder = 2
|
|
Text = '500'
|
|
OnChange = GeneralChanged
|
|
end
|
|
object edtPanelW: TEdit
|
|
Left = 105
|
|
Top = 80
|
|
Width = 40
|
|
Height = 23
|
|
TabOrder = 3
|
|
Text = '1000'
|
|
OnChange = GeneralChanged
|
|
end
|
|
object edtPanelH: TEdit
|
|
Left = 150
|
|
Top = 80
|
|
Width = 40
|
|
Height = 23
|
|
TabOrder = 4
|
|
Text = '640'
|
|
OnChange = GeneralChanged
|
|
end
|
|
object edtTitolo: TEdit
|
|
Left = 10
|
|
Top = 124
|
|
Width = 180
|
|
Height = 23
|
|
TabOrder = 5
|
|
Text = 'Plancia'
|
|
OnChange = GeneralChanged
|
|
end
|
|
object cboSfondo: TComboBox
|
|
Left = 10
|
|
Top = 168
|
|
Width = 180
|
|
Height = 23
|
|
Style = csDropDownList
|
|
TabOrder = 6
|
|
OnChange = BackgroundChanged
|
|
end
|
|
end
|
|
end
|
|
object pnlProps: TPanel
|
|
Left = 956
|
|
Top = 44
|
|
Width = 244
|
|
Height = 686
|
|
Align = alRight
|
|
BevelOuter = bvNone
|
|
TabOrder = 3
|
|
object lblPropTitle: TLabel
|
|
Left = 12
|
|
Top = 10
|
|
Width = 158
|
|
Height = 15
|
|
Caption = 'Nessun elemento selezionato'
|
|
Font.Charset = DEFAULT_CHARSET
|
|
Font.Color = clWindowText
|
|
Font.Height = -12
|
|
Font.Name = 'Segoe UI'
|
|
Font.Style = [fsBold]
|
|
ParentFont = False
|
|
end
|
|
object lblTipo: TLabel
|
|
Left = 12
|
|
Top = 32
|
|
Width = 25
|
|
Height = 15
|
|
Caption = 'Tipo'
|
|
end
|
|
object cboTipo: TComboBox
|
|
Left = 12
|
|
Top = 50
|
|
Width = 210
|
|
Height = 23
|
|
Style = csDropDownList
|
|
TabOrder = 16
|
|
OnChange = KindChanged
|
|
end
|
|
object lblCap: TLabel
|
|
Left = 12
|
|
Top = 82
|
|
Width = 48
|
|
Height = 15
|
|
Caption = 'Etichetta'
|
|
end
|
|
object lblFontSize: TLabel
|
|
Left = 180
|
|
Top = 82
|
|
Width = 42
|
|
Height = 15
|
|
Caption = 'Testo px'
|
|
end
|
|
object lblSlave: TLabel
|
|
Left = 12
|
|
Top = 130
|
|
Width = 30
|
|
Height = 15
|
|
Caption = 'Slave'
|
|
end
|
|
object lblCanale: TLabel
|
|
Left = 122
|
|
Top = 130
|
|
Width = 39
|
|
Height = 15
|
|
Caption = 'Canale'
|
|
end
|
|
object lblPos: TLabel
|
|
Left = 12
|
|
Top = 178
|
|
Width = 78
|
|
Height = 15
|
|
Caption = 'Posizione X / Y'
|
|
end
|
|
object lblSize: TLabel
|
|
Left = 12
|
|
Top = 226
|
|
Width = 105
|
|
Height = 15
|
|
Caption = 'Larghezza / altezza'
|
|
end
|
|
object edtCaption: TEdit
|
|
Left = 12
|
|
Top = 100
|
|
Width = 162
|
|
Height = 23
|
|
TabOrder = 0
|
|
OnChange = PropChanged
|
|
end
|
|
object edtFontSize: TEdit
|
|
Left = 180
|
|
Top = 100
|
|
Width = 42
|
|
Height = 23
|
|
TabOrder = 10
|
|
OnChange = PropChanged
|
|
end
|
|
object edtSlave: TEdit
|
|
Left = 12
|
|
Top = 148
|
|
Width = 96
|
|
Height = 23
|
|
TabOrder = 1
|
|
OnChange = PropChanged
|
|
end
|
|
object edtCanale: TEdit
|
|
Left = 122
|
|
Top = 148
|
|
Width = 100
|
|
Height = 23
|
|
TabOrder = 2
|
|
OnChange = PropChanged
|
|
end
|
|
object edtLeft: TEdit
|
|
Left = 12
|
|
Top = 196
|
|
Width = 96
|
|
Height = 23
|
|
TabOrder = 3
|
|
OnChange = PropChanged
|
|
end
|
|
object edtTop: TEdit
|
|
Left = 122
|
|
Top = 196
|
|
Width = 100
|
|
Height = 23
|
|
TabOrder = 4
|
|
OnChange = PropChanged
|
|
end
|
|
object edtWidth: TEdit
|
|
Left = 12
|
|
Top = 244
|
|
Width = 96
|
|
Height = 23
|
|
TabOrder = 5
|
|
OnChange = PropChanged
|
|
end
|
|
object edtHeight: TEdit
|
|
Left = 122
|
|
Top = 244
|
|
Width = 100
|
|
Height = 23
|
|
TabOrder = 6
|
|
OnChange = PropChanged
|
|
end
|
|
object gbImgElem: TGroupBox
|
|
Left = 8
|
|
Top = 276
|
|
Width = 228
|
|
Height = 212
|
|
Caption = 'Aspetto'
|
|
TabOrder = 7
|
|
object lblShape: TLabel
|
|
Left = 12
|
|
Top = 20
|
|
Width = 35
|
|
Height = 15
|
|
Caption = 'Forma'
|
|
end
|
|
object lblCapPos: TLabel
|
|
Left = 117
|
|
Top = 20
|
|
Width = 51
|
|
Height = 15
|
|
Caption = 'Etichetta'
|
|
end
|
|
object lblOnColor: TLabel
|
|
Left = 12
|
|
Top = 66
|
|
Width = 148
|
|
Height = 15
|
|
Caption = 'Colore acceso / a riposo'
|
|
end
|
|
object lblImgOff: TLabel
|
|
Left = 12
|
|
Top = 112
|
|
Width = 178
|
|
Height = 15
|
|
Caption = 'Immagine a riposo (vuoto = disegno)'
|
|
end
|
|
object lblImgOn: TLabel
|
|
Left = 12
|
|
Top = 158
|
|
Width = 90
|
|
Height = 15
|
|
Caption = 'Immagine attiva'
|
|
end
|
|
object cboShape: TComboBox
|
|
Left = 12
|
|
Top = 38
|
|
Width = 95
|
|
Height = 23
|
|
Style = csDropDownList
|
|
TabOrder = 0
|
|
OnChange = PropChanged
|
|
end
|
|
object cboCapPos: TComboBox
|
|
Left = 117
|
|
Top = 38
|
|
Width = 95
|
|
Height = 23
|
|
Style = csDropDownList
|
|
TabOrder = 1
|
|
OnChange = PropChanged
|
|
end
|
|
object edtOnColor: TEdit
|
|
Left = 12
|
|
Top = 84
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 2
|
|
OnChange = PropChanged
|
|
end
|
|
object edtOffColor: TEdit
|
|
Left = 117
|
|
Top = 84
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 5
|
|
OnChange = PropChanged
|
|
end
|
|
object cboImgOff: TComboBox
|
|
Left = 12
|
|
Top = 130
|
|
Width = 200
|
|
Height = 23
|
|
Style = csDropDownList
|
|
TabOrder = 3
|
|
OnChange = PropChanged
|
|
end
|
|
object cboImgOn: TComboBox
|
|
Left = 12
|
|
Top = 176
|
|
Width = 200
|
|
Height = 23
|
|
Style = csDropDownList
|
|
TabOrder = 4
|
|
OnChange = PropChanged
|
|
end
|
|
end
|
|
object gbGauge: TGroupBox
|
|
Left = 8
|
|
Top = 276
|
|
Width = 228
|
|
Height = 272
|
|
Caption = 'Scala del gauge'
|
|
TabOrder = 8
|
|
object lblRaw: TLabel
|
|
Left = 12
|
|
Top = 20
|
|
Width = 133
|
|
Height = 15
|
|
Caption = 'Registro: minimo / massimo'
|
|
end
|
|
object lblEng: TLabel
|
|
Left = 12
|
|
Top = 68
|
|
Width = 128
|
|
Height = 15
|
|
Caption = 'Valore reale: min / max'
|
|
end
|
|
object lblUnits: TLabel
|
|
Left = 12
|
|
Top = 116
|
|
Width = 80
|
|
Height = 15
|
|
Caption = 'Unit'#224' di misura'
|
|
end
|
|
object lblWarn: TLabel
|
|
Left = 12
|
|
Top = 164
|
|
Width = 116
|
|
Height = 15
|
|
Caption = 'Allarme sotto / sopra'
|
|
end
|
|
object edtRawMin: TEdit
|
|
Left = 12
|
|
Top = 38
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 0
|
|
OnChange = PropChanged
|
|
end
|
|
object edtRawMax: TEdit
|
|
Left = 117
|
|
Top = 38
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 1
|
|
OnChange = PropChanged
|
|
end
|
|
object edtEngMin: TEdit
|
|
Left = 12
|
|
Top = 86
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 2
|
|
OnChange = PropChanged
|
|
end
|
|
object edtEngMax: TEdit
|
|
Left = 117
|
|
Top = 86
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 3
|
|
OnChange = PropChanged
|
|
end
|
|
object edtUnits: TEdit
|
|
Left = 12
|
|
Top = 134
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 4
|
|
OnChange = PropChanged
|
|
end
|
|
object edtWarnLo: TEdit
|
|
Left = 12
|
|
Top = 182
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 5
|
|
OnChange = PropChanged
|
|
end
|
|
object edtWarnHi: TEdit
|
|
Left = 117
|
|
Top = 182
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 6
|
|
OnChange = PropChanged
|
|
end
|
|
object lblDigits: TLabel
|
|
Left = 12
|
|
Top = 212
|
|
Width = 34
|
|
Height = 15
|
|
Caption = 'Cifre'
|
|
end
|
|
object lblDecimals: TLabel
|
|
Left = 117
|
|
Top = 212
|
|
Width = 51
|
|
Height = 15
|
|
Caption = 'Decimali'
|
|
end
|
|
object edtDigits: TEdit
|
|
Left = 12
|
|
Top = 230
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 7
|
|
OnChange = PropChanged
|
|
end
|
|
object edtDecimals: TEdit
|
|
Left = 117
|
|
Top = 230
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 8
|
|
OnChange = PropChanged
|
|
end
|
|
end
|
|
object gbTesto: TGroupBox
|
|
Left = 8
|
|
Top = 276
|
|
Width = 228
|
|
Height = 170
|
|
Caption = 'Testo'
|
|
TabOrder = 12
|
|
object lblFontName: TLabel
|
|
Left = 12
|
|
Top = 20
|
|
Width = 148
|
|
Height = 15
|
|
Caption = 'Font (vuoto = quello del pannello)'
|
|
end
|
|
object lblSpacing: TLabel
|
|
Left = 12
|
|
Top = 66
|
|
Width = 128
|
|
Height = 15
|
|
Caption = 'Spaziatura fra le lettere'
|
|
end
|
|
object lblFrame: TLabel
|
|
Left = 12
|
|
Top = 112
|
|
Width = 128
|
|
Height = 15
|
|
Caption = 'Cornice e spessore'
|
|
end
|
|
object edtFontName: TEdit
|
|
Left = 12
|
|
Top = 38
|
|
Width = 200
|
|
Height = 23
|
|
TabOrder = 0
|
|
OnChange = PropChanged
|
|
end
|
|
object edtSpacing: TEdit
|
|
Left = 12
|
|
Top = 84
|
|
Width = 95
|
|
Height = 23
|
|
TabOrder = 1
|
|
OnChange = PropChanged
|
|
end
|
|
object cboFrame: TComboBox
|
|
Left = 12
|
|
Top = 130
|
|
Width = 140
|
|
Height = 23
|
|
Style = csDropDownList
|
|
TabOrder = 2
|
|
OnChange = PropChanged
|
|
end
|
|
object edtFrameWidth: TEdit
|
|
Left = 160
|
|
Top = 130
|
|
Width = 52
|
|
Height = 23
|
|
TabOrder = 3
|
|
OnChange = PropChanged
|
|
end
|
|
end
|
|
object gbRotary: TGroupBox
|
|
Left = 8
|
|
Top = 276
|
|
Width = 228
|
|
Height = 205
|
|
Caption = 'Selettore'
|
|
TabOrder = 11
|
|
object lblPositions: TLabel
|
|
Left = 12
|
|
Top = 20
|
|
Width = 55
|
|
Height = 15
|
|
Caption = 'Posizioni'
|
|
end
|
|
object lblLegend: TLabel
|
|
Left = 12
|
|
Top = 68
|
|
Width = 145
|
|
Height = 15
|
|
Caption = 'Legenda sopra la manopola'
|
|
end
|
|
object cboPositions: TComboBox
|
|
Left = 12
|
|
Top = 38
|
|
Width = 95
|
|
Height = 23
|
|
Style = csDropDownList
|
|
TabOrder = 0
|
|
OnChange = PropChanged
|
|
end
|
|
object edtLegend: TEdit
|
|
Left = 12
|
|
Top = 86
|
|
Width = 200
|
|
Height = 23
|
|
TabOrder = 1
|
|
OnChange = PropChanged
|
|
end
|
|
object lblCanale2: TLabel
|
|
Left = 12
|
|
Top = 116
|
|
Width = 200
|
|
Height = 15
|
|
Caption = 'Canale lato destro'
|
|
end
|
|
object edtCanale2: TEdit
|
|
Left = 12
|
|
Top = 134
|
|
Width = 60
|
|
Height = 23
|
|
Hint = 'Bobina del lato destro; vuoto = canale + 1'
|
|
ParentShowHint = False
|
|
ShowHint = True
|
|
TabOrder = 2
|
|
OnChange = PropChanged
|
|
end
|
|
object chkMolla: TCheckBox
|
|
Left = 12
|
|
Top = 166
|
|
Width = 205
|
|
Height = 32
|
|
Hint =
|
|
'Tiene la posizione finch'#233' lo tieni premuto e torna al centro al ' +
|
|
'rilascio, come il comando di avviamento'
|
|
Caption = 'Ritorno a molla (torna al centro)'
|
|
ParentShowHint = False
|
|
ShowHint = True
|
|
TabOrder = 3
|
|
WordWrap = True
|
|
OnClick = PropChanged
|
|
end
|
|
end
|
|
object gbSuono: TGroupBox
|
|
Left = 8
|
|
Top = 492
|
|
Width = 228
|
|
Height = 74
|
|
Caption = 'Allarme sonoro'
|
|
TabOrder = 12
|
|
object chkAllarme: TCheckBox
|
|
Left = 12
|
|
Top = 18
|
|
Width = 205
|
|
Height = 17
|
|
Hint = 'Suona quando la spia si accende'
|
|
Caption = 'Suona quando si accende'
|
|
ParentShowHint = False
|
|
ShowHint = True
|
|
TabOrder = 0
|
|
OnClick = PropChanged
|
|
end
|
|
object cboSuono: TComboBox
|
|
Left = 12
|
|
Top = 40
|
|
Width = 134
|
|
Height = 23
|
|
Hint = 'File nella cartella "suoni" accanto alla plancia'
|
|
Style = csDropDownList
|
|
ParentShowHint = False
|
|
ShowHint = True
|
|
TabOrder = 1
|
|
OnChange = PropChanged
|
|
end
|
|
object btnSuoniRileggi: TButton
|
|
Left = 152
|
|
Top = 40
|
|
Width = 66
|
|
Height = 23
|
|
Hint = 'Rilegge la cartella dei suoni'
|
|
Caption = 'Aggiorna'
|
|
ParentShowHint = False
|
|
ShowHint = True
|
|
TabOrder = 2
|
|
OnClick = btnSuoniRileggiClick
|
|
end
|
|
end
|
|
object btnElimina: TButton
|
|
Left = 12
|
|
Top = 566
|
|
Width = 210
|
|
Height = 30
|
|
Caption = 'Elimina elemento'
|
|
TabOrder = 9
|
|
OnClick = btnEliminaClick
|
|
end
|
|
end
|
|
object scrCanvas: TScrollBox
|
|
Left = 200
|
|
Top = 44
|
|
Width = 756
|
|
Height = 686
|
|
Align = alClient
|
|
BevelInner = bvNone
|
|
BevelOuter = bvNone
|
|
BorderStyle = bsNone
|
|
Color = clAppWorkSpace
|
|
ParentColor = False
|
|
TabOrder = 4
|
|
object pnlCanvas: TPanel
|
|
Left = 0
|
|
Top = 0
|
|
Width = 1000
|
|
Height = 640
|
|
BevelOuter = bvNone
|
|
Color = clBtnFace
|
|
ParentBackground = False
|
|
TabOrder = 0
|
|
OnDragDrop = CanvasDragDrop
|
|
OnDragOver = CanvasDragOver
|
|
OnMouseDown = CanvasMouseDown
|
|
end
|
|
end
|
|
object tmrPoll: TTimer
|
|
Enabled = False
|
|
Interval = 500
|
|
OnTimer = tmrPollTimer
|
|
Left = 640
|
|
Top = 96
|
|
end
|
|
object dlgApri: TOpenDialog
|
|
DefaultExt = 'xml'
|
|
Filter =
|
|
'Configurazione plancia (*.xml)|*.xml|Tutti i file (*.*)|*.*'
|
|
Options = [ofHideReadOnly, ofPathMustExist, ofFileMustExist, ofEnableSizing]
|
|
Title = 'Apri configurazione'
|
|
Left = 704
|
|
Top = 96
|
|
end
|
|
object dlgSalva: TSaveDialog
|
|
DefaultExt = 'xml'
|
|
Filter =
|
|
'Configurazione plancia (*.xml)|*.xml|Tutti i file (*.*)|*.*'
|
|
Options = [ofOverwritePrompt, ofHideReadOnly, ofPathMustExist, ofEnableSizing]
|
|
Title = 'Salva configurazione'
|
|
Left = 768
|
|
Top = 96
|
|
end
|
|
object dlgImmagine: TOpenPictureDialog
|
|
Options = [ofHideReadOnly, ofAllowMultiSelect, ofPathMustExist, ofFileMustExist, ofEnableSizing]
|
|
Title = 'Aggiungi immagini alla libreria'
|
|
Left = 832
|
|
Top = 96
|
|
end
|
|
end
|