6#include <ibase/ICommandsProvider.h>
7#include <ilog/TLoggerCompWrap.h>
8#include <imod/IModel.h>
9#include <imod/TSingleModelObserverBase.h>
10#include <iqtgui/TMakeIconProviderCompWrap.h>
11#include <iqtgui/CHierarchicalCommand.h>
14#include <imtqml/IQuickObject.h>
21class CCommandsObserverQmlComp:
23 public iqtgui::TMakeIconProviderCompWrap<ilog::CLoggerComponentBase>,
24 public ibase::ICommandsProvider,
25 public iser::ISerializable,
26 protected imod::TSingleModelObserverBase<iprm::IEnableableParam>
30 typedef ilog::CLoggerComponentBase BaseClass;
32 I_BEGIN_COMPONENT(CCommandsObserverQmlComp);
33 I_REGISTER_INTERFACE(ibase::ICommandsProvider);
34 I_REGISTER_INTERFACE(iser::ISerializable);
35 I_ASSIGN(m_quickObjectCompPtr,
"QuickObject",
"Main QML Component",
true,
"QuickObject");
36 I_ASSIGN(m_quickItemCreatedCompPtr,
"QuickItemCreated",
"Quick item created",
false,
"QuickItemCreated");
37 I_ASSIGN_TO(m_quickItemCreatedModelCompPtr, m_quickItemCreatedCompPtr,
false);
40 CCommandsObserverQmlComp();
44 virtual void OnComponentCreated()
override;
47 virtual const ibase::IHierarchicalCommand* GetCommands()
const override;
50 virtual bool Serialize(iser::IArchive& archive)
override;
53 virtual void OnUpdate(
const istd::IChangeable::ChangeSet& changeSet)
override;
56 void OnCommandsModelChanged(QVariant variant);
60 iqtgui::CHierarchicalCommand m_commandsList;
64 I_REF(iprm::IEnableableParam, m_quickItemCreatedCompPtr);
65 I_REF(imod::IModel, m_quickItemCreatedModelCompPtr);