ImagingTools Core SDK
CTableViewParamRepresentationControllerComp.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4
5// ImtCore includes
6#include <imtserverapp/CGuiElementRepresentationControllerComp.h>
7
8
9namespace imtserverapp
10{
11
12
13class CTableViewParamRepresentationControllerComp:
14 public ilog::CLoggerComponentBase,
15 virtual public IRepresentationController
16{
17public:
18 typedef ilog::CLoggerComponentBase BaseClass;
19
20 I_BEGIN_COMPONENT(CTableViewParamRepresentationControllerComp)
21 I_REGISTER_INTERFACE(IRepresentationController);
22 I_ASSIGN(m_modelIdAttrPtr, "ModelId", "Model-ID", false, "");
23 I_END_COMPONENT;
24
25protected:
26 // reimplemented (IRepresentationController)
27 virtual QByteArray GetModelId() const override;
28 virtual bool IsModelSupported(const istd::IChangeable& dataModel) const override;
29 virtual bool GetRepresentationFromDataModel(
30 const istd::IChangeable& dataModel,
31 QJsonObject& representation,
32 const iprm::IParamsSet* paramsPtr = nullptr) const override;
33 virtual bool GetDataModelFromRepresentation(
34 const QJsonObject& representation,
35 istd::IChangeable& dataModel) const override;
36
37protected:
38 I_ATTR(QByteArray, m_modelIdAttrPtr);
39};
40
41
42} // namespace imtbase
43