ICF 3.0.5.47
Technical documentation of ICF Libraries
CSearchBasedFeaturesSupplierGuiComp.h
Go to the documentation of this file.
1/********************************************************************************
2** This file is part of the ICF Framework. Copyright (C) Witold Gantzke & Kirill Lepskiy
3** ICF Framework may be used under the terms of the LGPL License v. 2.1 by the Free Software Foundation.
4********************************************************************************/
5
6#ifndef iqtipr_CSearchBasedFeaturesSupplierGuiComp_included
7#define iqtipr_CSearchBasedFeaturesSupplierGuiComp_included
8
9
10// ICF includes
11#include <imod/IObserver.h>
12#include <imod/TModelWrap.h>
14#include <i2d/CCircle.h>
15#include <istdgui/IGuiObject.h>
18#include <iview/IShapeFactory.h>
19#include <iview/CCircleShape.h>
21#include <iiprgui/iiprgui.h>
22
23#include <GeneratedFiles/iiprgui/ui_CSearchBasedFeaturesSupplierGuiComp.h>
24
25
26namespace iiprgui
27{
28
29
31 public iinspgui::TSupplierGuiCompBase<Ui::CSearchBasedFeaturesSupplierGuiComp>
32{
33 Q_OBJECT
34
35public:
37
47
48 I_BEGIN_COMPONENT(CSearchBasedFeaturesSupplierGuiComp);
49 I_ASSIGN(m_intermediateResultsGuiCompPtr, "IntermediateResultsGui", "GUI integrated into group 'Intermediate Results'", false, "IntermediateResultsGui");
50 I_ASSIGN(m_showResultShapesAttrPtr, "ShowResultShapes", "Show result shapes in the image as circles", true, true);
51 I_END_COMPONENT;
52
54
55protected:
56 // reimplemented (iinspgui::TSupplierGuiCompBase)
57 QWidget* GetParamsWidget() const override;
58 void OnSupplierParamsChanged() override;
59
60 // reimplemented (i2dgui::IViewExtender)
61 void AddItemsToScene(i2dgui::IViewProvider* providerPtr, int flags) override;
62 void RemoveItemsFromScene(i2dgui::IViewProvider* providerPtr) override;
63
64 // reimplemented (istdgui::TGuiObserverWrap)
65 void OnGuiModelAttached() override;
66 void OnGuiModelDetached() override;
67 void UpdateGui(const istd::IChangeable::ChangeSet& changeSet) override;
68
69 // reimplemented (istdgui::IGuiObject)
70 void OnGuiCreated() override;
71 void OnGuiHidden() override;
72
73 // reimplemented (icomp::IComponentBase)
74 void OnComponentDestroyed() override;
75
76protected Q_SLOTS:
80
81private:
82 void ConnectShapes(iview::IShapeView& view);
83 void DisconnectShapes(iview::IShapeView& view);
84 void ClearResults();
85
86private:
87 I_REF(istdgui::IGuiObject, m_intermediateResultsGuiCompPtr);
88 I_ATTR(bool, m_showResultShapesAttrPtr);
89
90 // result shapes
93 VisualObjects m_visualPositions;
94
95 iview::IShapeView* m_lastViewPtr;
96};
97
98
99} // namespace iiprgui
100
101
102#endif // !iqtipr_CSearchBasedFeaturesSupplierGuiComp_included
103
104
Interface for GUI objects managing view.
void OnGuiCreated() override
Called just after GUI is initialized.
void AddItemsToScene(i2dgui::IViewProvider *providerPtr, int flags) override
Called when items should be added to specified scene.
QWidget * GetParamsWidget() const override
void OnGuiHidden() override
Called from widget event filter when slave widget is hidden.
void UpdateGui(const istd::IChangeable::ChangeSet &changeSet) override
void RemoveItemsFromScene(i2dgui::IViewProvider *providerPtr) override
Called when items should be removed from specified scene.
iinspgui::TSupplierGuiCompBase< Ui::CSearchBasedFeaturesSupplierGuiComp > BaseClass
Set of change flags (its IDs).
Definition IChangeable.h:38
Implementation of a pointer container, which controls the live cycle of the pointer object.
Common interface for GUI objects using in component context.
Definition IGuiObject.h:27
Common interface for a general shape view implementations.
Definition IShapeView.h:32
This package contains Qt based implementations of image processing components.

© Witold Gantzke and Kirill Lepskiy