blob: 025112750eac768e127f7361b9f027c12f5d28f3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
// Copyright (C) 2025 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls
import QtQuick.Layouts
RowLayout {
required property CameraHelper camera
required property MediaDevicesHelper mediaDevices
enabled: Object.values(mediaDevices.allCameraDevicesSoFarDict).length > 0
Label { text: "Device" }
ComboBox {
implicitContentWidthPolicy: ComboBox.WidestText
model: Object.values(mediaDevices.allCameraDevicesSoFarDict)
.map((item) => { return {
displayText: item.device.description + (item.connected ? "" : " (Disconnected)"),
device: item.device } })
valueRole: "device"
textRole: "displayText"
onActivated: index => {
camera.cameraDevice = currentValue
}
currentIndex: model.findIndex(
item => String(item.device.id) === String(camera.cameraDevice.id))
}
Button {
text: "Default"
onClicked: camera.cameraDevice = mediaDevices.defaultVideoInput
}
}
|