ArtnetProtocolSettingsWidget.hpp
1 #pragma once
2 #include <ossia/detail/config.hpp>
3 #if defined(OSSIA_PROTOCOL_ARTNET)
4 
5 #include <Device/Protocol/DeviceSettings.hpp>
6 #include <Device/Protocol/ProtocolSettingsWidget.hpp>
7 
8 #include <Protocols/Artnet/ArtnetSpecificSettings.hpp>
9 
10 #include <verdigris>
11 
12 class QLineEdit;
13 class QSpinBox;
14 class QTableWidget;
15 class QPushButton;
16 class QRadioButton;
17 
18 namespace Protocols
19 {
20 
22 {
24 
25 public:
26  explicit ArtnetProtocolSettingsWidget(QWidget* parent = nullptr);
28  Device::DeviceSettings getSettings() const override;
29  void setSettings(const Device::DeviceSettings& settings) override;
30 
31 private:
32  void updateHosts(int protocolindex);
33  void updateTable();
34  QLineEdit* m_deviceNameEdit{};
35  QComboBox* m_host{};
36  QSpinBox* m_rate{};
37  QSpinBox* m_universe{};
38  QComboBox* m_transport{};
39  QRadioButton* m_source{};
40  QRadioButton* m_sink{};
41  QTableWidget* m_fixturesWidget{};
42  QPushButton* m_addFixture{};
43  QPushButton* m_rmFixture{};
44  std::vector<Artnet::Fixture> m_fixtures;
45 };
46 }
47 #endif
Definition: ProtocolSettingsWidget.hpp:22
Definition: ArtnetProtocolSettingsWidget.hpp:22
Definition: DeviceSettings.hpp:20