ACF $AcfVersion:0$
TViewExtenderDelegatorCompWrap.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ACF-Commercial
2#pragma once
3
4
5// ACF includes
7
8
9namespace iqt2d
10{
11
12
13template<class Base>
15 public Base,
16 virtual public iqt2d::IViewExtender
17{
18public:
19 typedef Base BaseClass;
20
21 I_BEGIN_COMPONENT(TViewExtenderDelegatorCompWrap);
22 I_REGISTER_INTERFACE(iqt2d::IViewExtender);
23 I_ASSIGN(m_slaveExtenderCompPtr, "SlaveSceneExtender", "Slave scene extender", false, "SlaveSceneExtender");
24 I_END_COMPONENT;
25
26 // reimplemented (iqt2d::IViewExtender)
27 virtual void AddItemsToScene(iqt2d::IViewProvider* providerPtr, int flags) override;
28 virtual void RemoveItemsFromScene(iqt2d::IViewProvider* providerPtr) override;
29
30private:
31 I_REF(iqt2d::IViewExtender, m_slaveExtenderCompPtr);
32};
33
34
35// reimplemented (iqt2d::IViewExtender)
36
37template<class Base>
39{
40 if (m_slaveExtenderCompPtr.IsValid()){
41 m_slaveExtenderCompPtr->AddItemsToScene(providerPtr, flags);
42 }
43}
44
45
46template<class Base>
48{
49 if (m_slaveExtenderCompPtr.IsValid()){
50 m_slaveExtenderCompPtr->RemoveItemsFromScene(providerPtr);
51 }
52}
53
54
56
57
58} // namespace iqt2d
59
Interface for GUI objects presenting its results using extern view objects.
Interface for GUI objects managing view.
virtual void AddItemsToScene(iqt2d::IViewProvider *providerPtr, int flags) override
Called when items should be added to specified scene.
virtual void RemoveItemsFromScene(iqt2d::IViewProvider *providerPtr) override
Called when items should be removed from specified scene.
This package contains Qt based implementations for 2D graphic objects.
TViewExtenderDelegatorCompWrap< icomp::CComponentBase > CViewExtenderDelegatorComp