Loading...
Searching...
No Matches
AudioPortComboBox.hpp
1#pragma once
2#include <State/Address.hpp>
3
4#include <Device/Address/AddressSettings.hpp>
5#include <Device/Node/DeviceNode.hpp>
6
7#include <score/document/DocumentContext.hpp>
8
9#include <QComboBox>
10
11#include <score_lib_process_export.h>
12
13#include <verdigris>
14namespace Device
15{
16class DeviceInterface;
17class DeviceList;
18}
19namespace Process
20{
21class Port;
22class SCORE_LIB_PROCESS_EXPORT AudioPortComboBox final : public QComboBox
23{
24 W_OBJECT(AudioPortComboBox)
25public:
27 const State::Address& rootAddress, const Device::Node& node, QWidget* parent);
28
29 void setAddress(const State::Address& addr);
30
31 const Device::FullAddressSettings& address() const;
32
33 void addressChanged(const Device::FullAddressSettings& arg_1)
34 E_SIGNAL(SCORE_LIB_PROCESS_EXPORT, addressChanged, arg_1)
35
36private:
37 const State::Address m_root;
39 std::vector<QString> m_child;
40};
41
42SCORE_LIB_PROCESS_EXPORT
43QComboBox* makeAddressCombo(
44 State::Address root, const Device::Node& out_node, const Process::Port& port,
45 const score::DocumentContext& ctx, QWidget* parent);
46
47SCORE_LIB_PROCESS_EXPORT
48QComboBox* makeDeviceCombo(
49 std::function<bool(Device::DeviceInterface&)> condition, Device::DeviceList& devices,
50 const Process::Port& port, const score::DocumentContext& ctx, QWidget* parent);
51/*
52class SCORE_LIB_PROCESS_EXPORT MidiPortComboBox final : public QComboBox
53{
54 W_OBJECT(MidiPortComboBox)
55public:
56 MidiPortComboBox(
57 const std::vector<QString>& devices,
58 QWidget* parent);
59
60 void setDevice(const QString& dev);
61
62 const QString& device() const;
63
64 void deviceChanged(const QString& arg_1)
65 W_SIGNAL(deviceChanged, arg_1)
66
67private:
68 QString m_device;
69 std::vector<QString> m_available;
70};*/
71}
Definition DeviceInterface.hpp:66
The DeviceList class.
Definition DeviceList.hpp:26
Definition AudioPortComboBox.hpp:23
Definition Port.hpp:102
Manipulation of Devices from Qt.
Definition AddressSettings.cpp:14
Base classes and tools to implement processes and layers.
Definition JSONVisitor.hpp:1324
Definition AddressSettings.hpp:62
The Address struct.
Definition Address.hpp:58
Definition DocumentContext.hpp:18