MCPcopy Index your code
hub / github.com/SasPes/key-decoding / drawPinsWithUnderline

Function drawPinsWithUnderline

KeyDecoding.js:383–414  ·  view source on GitHub ↗
(pins, selectedPinIndex, showMode, pinSpacing, keyType)

Source from the content-addressed store, hash-verified

381}
382
383function drawPinsWithUnderline(pins, selectedPinIndex, showMode, pinSpacing, keyType) {
384 if (keys[keyType] && keys[keyType].isDiskDetainer) {
385 drawDisksWithUnderline(pins, selectedPinIndex, showMode, pinSpacing, keyType);
386 return;
387 }
388
389 var startY = 55;
390 var underlineY = startY + 15;
391 var totalWidth = pinSpacing * pins.length;
392 var startX = (displayWidth - totalWidth) / 2;
393
394 var numberSize = 12;
395 var keyConfig = keys[keyType] || {};
396 var pinsStartCount = keyConfig.pinsStartAtZero === true;
397 var pinNumbersOffset = keyConfig.pinNumbersOffset || 0;
398
399 // Draw pins numbers
400 for (var i = 0; i < pins.length; i++) {
401 var pinNumberX = startX + numberSize + i * pinSpacing + pinNumbersOffset;
402 var displayNumber = pinsStartCount ? pins[i] : (pins[i] + 1);
403 display.drawString(displayNumber.toString(), pinNumberX, startY);
404
405 if (showMode !== "random" && typeof selectedPinIndex !== "undefined" && i === selectedPinIndex) {
406 display.drawRect(pinNumberX - 1, underlineY, 12, 2, secColor);
407 }
408 }
409
410 // Draw the key shape under the pins
411 var keyX = startX - pinSpacing / 2;
412 var keyY = startY + pinSpacing;
413 drawKeyShape(keyX, keyY, totalWidth, 66, priColor, pins.length, pins, keyType);
414}
415
416function drawDiskKeyShape(x, y, width, height, color, diskCount, disks, keyType) {
417 var keyConfig = keys[keyType] || {};

Callers 1

KeyFunction · 0.85

Calls 2

drawDisksWithUnderlineFunction · 0.85
drawKeyShapeFunction · 0.85

Tested by

no test coverage detected