MCPcopy Create free account
hub / github.com/cryptii/cryptii / settingValueDidChange

Method settingValueDidChange

src/Encoder/MorseCode.js:315–341  ·  view source on GitHub ↗

* Triggered when a setting field has changed. * @protected * @param {Field} setting Sender setting field * @param {mixed} value New field value

(setting, value)

Source from the content-addressed store, hash-verified

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.

Callers

nothing calls this directly

Calls 4

revalidateValueMethod · 0.80
getSettingMethod · 0.80
getNameMethod · 0.45
setVisibleMethod · 0.45

Tested by

no test coverage detected