2#include <State/Message.hpp>
3#include <State/Value.hpp>
5#include <Device/ItemModels/NodeBasedItemModel.hpp>
6#include <Device/Node/DeviceNode.hpp>
8#include <Explorer/Explorer/Column.hpp>
10#include <score/document/DocumentContext.hpp>
12#include <QAbstractItemModel>
16#include <qnamespace.h>
18#include <score_plugin_deviceexplorer_export.h>
25class CommandStackFacade;
30struct AddressSettings;
35class ListeningManager;
36class DeviceDocumentPlugin;
37class DeviceEditDialog;
38class DeviceExplorerView;
39class DeviceExplorerWidget;
71 using QAbstractItemModel::beginResetModel;
72 using QAbstractItemModel::endResetModel;
80 const Device::Node& rootNode()
const override {
return m_rootNode; }
87 DeviceDocumentPlugin& deviceModel()
const;
88 QModelIndexList selectedIndexes()
const;
119 bool checkDeviceEditable(
125 bool checkAddressEditable(
132 int columnCount()
const;
133 QStringList getColumns()
const;
134 bool isEmpty()
const;
135 bool isDevice(QModelIndex index)
const;
138 void debug_printIndexes(
const QModelIndexList& indexes);
140 int columnCount(
const QModelIndex& parent)
const override;
142 QVariant data(
const QModelIndex& index,
int role)
const override;
143 QVariant headerData(
int section, Qt::Orientation orientation,
int role)
const override;
145 Qt::ItemFlags flags(
const QModelIndex& index)
const override;
147 bool setData(
const QModelIndex& index,
const QVariant& value,
int role)
override;
148 bool setHeaderData(
int, Qt::Orientation,
const QVariant&,
int = Qt::EditRole)
override;
151 const Device::NodePath& path, Column column,
const ossia::value& value,
int role);
152 void editData(
Device::Node& n, Column column,
const ossia::value& value,
int role);
154 Qt::DropActions supportedDropActions()
const override;
155 Qt::DropActions supportedDragActions()
const override;
156 QStringList mimeTypes()
const override;
157 QMimeData* mimeData(
const QModelIndexList& indexes)
const override;
158 bool canDropMimeData(
159 const QMimeData* data, Qt::DropAction action,
int row,
int column,
160 const QModelIndex& parent)
const override;
162 const QMimeData* mimeData, Qt::DropAction action,
int row,
int column,
163 const QModelIndex& parent)
override;
165 SelectedNodes uniqueSelectedNodes(
const QModelIndexList& indexes)
172 E_SIGNAL(SCORE_PLUGIN_DEVICEEXPLORER_EXPORT, nodeChanged, n)
183 E_SIGNAL(SCORE_PLUGIN_DEVICEEXPLORER_EXPORT, valueUpdated, n)
187 void deviceTreeAboutToChange(
Device::Node* device)
188 E_SIGNAL(SCORE_PLUGIN_DEVICEEXPLORER_EXPORT, deviceTreeAboutToChange, device)
189 void deviceTreeChanged(
Device::Node* device)
190 E_SIGNAL(SCORE_PLUGIN_DEVICEEXPLORER_EXPORT, deviceTreeChanged, device)
193 void debug_printPath(const
Device::NodePath& path);
196 DeviceDocumentPlugin& m_devicePlugin;
198 QModelIndex bottomIndex(const QModelIndex& index) const;
202 const
score::CommandStackFacade& m_cmdQ;
209SCORE_PLUGIN_DEVICEEXPLORER_EXPORT State::MessageList
210getSelectionSnapshot(DeviceExplorerModel& model);
212SCORE_PLUGIN_DEVICEEXPLORER_EXPORT DeviceExplorerModel&
213deviceExplorerFromObject(
const QObject&);
214SCORE_PLUGIN_DEVICEEXPLORER_EXPORT DeviceExplorerModel*
215try_deviceExplorerFromObject(
const QObject&);
216SCORE_PLUGIN_DEVICEEXPLORER_EXPORT DeviceExplorerModel*
218SCORE_PLUGIN_DEVICEEXPLORER_EXPORT DeviceExplorerModel&
223makeFullAddressAccessorSettings(
225 ossia::value min, ossia::value max, ossia::value cur);
Definition NodeBasedItemModel.hpp:18
Definition DeviceExplorerModel.hpp:67
Definition DeviceExplorerView.hpp:18
Path in a tree of QAbstractItemModel objects.
Definition TreePath.hpp:34
A small abstraction layer over the score::CommandStack.
Definition CommandStackFacade.hpp:20
Manipulation of Devices from Qt.
Definition AddressSettings.cpp:14
Base toolkit upon which the software is built.
Definition Application.cpp:117
Definition AddressSettings.hpp:49
Definition DeviceSettings.hpp:20
Definition AddressSettings.hpp:131
The SelectedNodes struct.
Definition DeviceExplorerModel.hpp:53
std::vector< Device::Node * > parents
parents The topmost parents of the selected parameters
Definition DeviceExplorerModel.hpp:57
std::vector< Device::Node * > messages
messages The selected messages
Definition DeviceExplorerModel.hpp:62
Definition Address.hpp:108
Definition DocumentContext.hpp:18