6#include <iprm/IEnableableParam.h>
7#include <iprm/IOptionsList.h>
8#include <iprm/ISelectionParam.h>
9#include <icomp/CComponentBase.h>
12#include <imtloggui/ILayerController.h>
13#include <imtbase/CStaticObjectCollection.h>
21 public icomp::CComponentBase,
23 virtual public iprm::IOptionsList,
24 virtual public iprm::ISelectionParam,
25 virtual public imtloggui::ILayerController,
26 virtual public iprm::IEnableableParam
29 typedef icomp::CComponentBase BaseClass;
32 I_BEGIN_COMPONENT(CLayerComp)
34 I_REGISTER_INTERFACE(iprm::IOptionsList);
35 I_REGISTER_INTERFACE(iprm::ISelectionParam);
36 I_REGISTER_INTERFACE(imtloggui::ILayerController);
37 I_REGISTER_INTERFACE(iprm::IEnableableParam);
38 I_ASSIGN_MULTI_0(m_idAttrPtr,
"RepresentationIds",
"Representation ids",
false);
39 I_ASSIGN_MULTI_0(m_nameAttrPtr,
"RepresentationNames",
"Representation names",
false);
40 I_ASSIGN_MULTI_0(m_representationCompPtr,
"Representations",
"Representations",
false);
41 I_ASSIGN_MULTI_0(m_representationControllerCompPtr,
"RepresentationControllers",
"Representation controllers",
false);
47 virtual bool IsEnabled()
const override;
48 virtual bool IsEnablingAllowed()
const override;
49 virtual bool SetEnabled(
bool isEnabled =
true)
override;
52 virtual QByteArray GetActiveRepresentationId()
const override;
53 virtual bool SetActiveRepresentationId(
const QByteArray& representationId)
override;
56 virtual const IOptionsList* GetSelectionConstraints()
const override;
57 virtual int GetSelectedOptionIndex()
const override;
58 virtual bool SetSelectedOptionIndex(
int index)
override;
59 virtual ISelectionParam* GetSubselection(
int index)
const override;
62 virtual int GetOptionsFlags()
const override;
63 virtual int GetOptionsCount()
const override;
64 virtual QString GetOptionName(
int index)
const override;
65 virtual QString GetOptionDescription(
int index)
const override;
66 virtual QByteArray GetOptionId(
int index)
const override;
67 virtual bool IsOptionEnabled(
int index)
const override;
71 virtual void OnComponentCreated()
override;
74 I_MULTIATTR(QByteArray, m_idAttrPtr);
75 I_MULTIATTR(QString, m_nameAttrPtr);
76 I_MULTIREF(istd::IChangeable, m_representationCompPtr);
77 I_MULTIREF(iprm::IEnableableParam, m_representationControllerCompPtr);
79 QByteArray m_activeRepresentationId;