* Triggered when a setting field has changed. * @protected * @param {Field} setting Sender setting field * @param {mixed} value New field value
(setting, value)
| 313 | * @param {mixed} value New field value |
| 314 | */ |
| 315 | settingValueDidChange (setting, value) { |
| 316 | switch (setting.getName()) { |
| 317 | case 'shortMark': |
| 318 | case 'longerMark': |
| 319 | case 'spaceMark': |
| 320 | // Revalidate other settings |
| 321 | ;['shortMark', 'longerMark', 'spaceMark'] |
| 322 | .filter(name => name !== setting.getName()) |
| 323 | .forEach(name => this.getSetting(name).revalidateValue()) |
| 324 | break |
| 325 | case 'signalOnMark': |
| 326 | case 'signalOffMark': |
| 327 | // Revalidate other settings |
| 328 | ;['signalOnMark', 'signalOffMark'] |
| 329 | .filter(name => name !== setting.getName()) |
| 330 | .forEach(name => this.getSetting(name).revalidateValue()) |
| 331 | break |
| 332 | case 'representation': |
| 333 | // Show & hide fields for given representation |
| 334 | this.getSetting('shortMark').setVisible(value === 'code') |
| 335 | this.getSetting('longerMark').setVisible(value === 'code') |
| 336 | this.getSetting('spaceMark').setVisible(value === 'code') |
| 337 | this.getSetting('signalOnMark').setVisible(value === 'timing') |
| 338 | this.getSetting('signalOffMark').setVisible(value === 'timing') |
| 339 | break |
| 340 | } |
| 341 | } |
| 342 | |
| 343 | /** |
| 344 | * Encodes given character to its morse code representation. |
nothing calls this directly
no test coverage detected