Skip to content

Commit f8e3e34

Browse files
committed
update to support multiple overlays per pin
1 parent da70e59 commit f8e3e34

File tree

2 files changed

+16
-4
lines changed

2 files changed

+16
-4
lines changed

qml/Functions.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ function loadPinmux()
104104
targetPin.info = functionsData
105105
break;
106106
case "CAPE":
107-
targetPin.overlay = functionsData[0]
107+
targetPin.overlay = functionsData
108108
break;
109109
case "PRU":
110110
targetPin.pruPinNumber = parseInt(functionsData[0])

qml/Pin.qml

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ Item {
2727
property var functions: ["GPIO", "I2C", "UART"] // pinmux functions
2828
property var info: ["gpio1_0", "gpio1_0", "i2c1_cs", "uart0_sck"] // info to default function and pinmux functions
2929
property string type: "GPIO" // current selected type
30-
property string overlay: "cape-test" // overlay that is necessary for pinmuxing
30+
property var overlay: ["cape-test"] // overlay that is necessary for pinmuxing
3131
property var loadedOverlays: ["cape-test", "cape-test2"] // currently loaded overlay
3232
property bool pinmuxActive: getPinmuxActive() // determines wheter the pinmux is active or not
3333
property string previewType: "" // type for preview mode
@@ -72,7 +72,19 @@ Item {
7272
}
7373

7474
function getPinmuxActive() {
75-
return (loadedOverlays.indexOf(overlay) !== -1) && ((functions.length > 0) && (functions[0] !== "reserved"))
75+
var overlayActive = false
76+
for (var i = 0; i < overlay.length; ++i) {
77+
if (overlay[i] === "") {
78+
continue
79+
}
80+
81+
if (loadedOverlays.indexOf(overlay[i]) !== -1) {
82+
overlayActive = true
83+
break
84+
}
85+
}
86+
87+
return (overlayActive) && ((functions.length > 0) && (functions[0] !== "reserved"))
7688
}
7789

7890
function getEditable() {
@@ -136,7 +148,7 @@ Item {
136148

137149
function getPreviewActive() {
138150

139-
if (previewEnabled && (previewType == "") && (previewOverlay == overlay))
151+
if (previewEnabled && (previewType == "") && (overlay.indexOf(previewOverlay) != -1))
140152
return true
141153

142154
if ((!previewEnabled) || (previewType == ""))

0 commit comments

Comments
 (0)