Computer Assisted Medical Intervention Tool Kit  version 5.2
ShowFrame.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * $CAMITK_LICENCE_BEGIN$
3  *
4  * CamiTK - Computer Assisted Medical Intervention ToolKit
5  * (c) 2001-2024 Univ. Grenoble Alpes, CNRS, Grenoble INP - UGA, TIMC, 38000 Grenoble, France
6  *
7  * Visit http://camitk.imag.fr for more information
8  *
9  * This file is part of CamiTK.
10  *
11  * CamiTK is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * CamiTK is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Lesser General Public License version 3 for more details.
19  *
20  * You should have received a copy of the GNU Lesser General Public License
21  * version 3 along with CamiTK. If not, see <http://www.gnu.org/licenses/>.
22  *
23  * $CAMITK_LICENCE_END$
24  ****************************************************************************/
25 
26 #ifndef SHOWFRAME_H
27 #define SHOWFRAME_H
28 
29 #include <Action.h>
30 
34 class ShowFrame : public camitk::Action {
35  Q_OBJECT
36 
37 public:
40 
42  virtual ~ShowFrame() = default;
43 
45  virtual QWidget* getWidget() override;
46 
48  virtual bool event(QEvent* e) override;
49 
51  QAction* getQAction(camitk::Component* target = nullptr) override;
52 
53 public slots:
55  virtual camitk::Action::ApplyStatus apply() override;
56 
57 private:
58  // block auto update during UI refresh
59  bool blockAutoUpdate;
60 
61  // currently selected/active component
62  camitk::Component* comp;
63 
64  // get size in world coordinates for the frame representation depending on the component bounding radius and percentage
65  double getFrameSize();
66 };
67 
68 #endif // SHOWFRAME_H
This action allows you to show/hide the 3D axes representation of the component's frame.
Definition: ShowFrame.h:34
virtual ~ShowFrame()=default
Destructor.
virtual bool event(QEvent *e) override
manage change immediately
Definition: ShowFrame.cpp:93
virtual QWidget * getWidget() override
update the property visibility
Definition: ShowFrame.cpp:62
ShowFrame(camitk::ActionExtension *)
the constructor
Definition: ShowFrame.cpp:36
virtual camitk::Action::ApplyStatus apply() override
show/hide the frame depending on the user choice
Definition: ShowFrame.cpp:145
QAction * getQAction(camitk::Component *target=nullptr) override
Get the corresponding QAction (overriden to update the checked status)
Definition: ShowFrame.cpp:131
This class describes what is a generic Action extension.
Definition: ActionExtension.h:57
Action class is an abstract class that enables you to build a action (generally on a component).
Definition: Action.h:209
ApplyStatus
describes what happened during the application of an algorithm (i.e. results of the apply method)
Definition: Action.h:225
A Component represents something that could be included in the explorer view, the interactive 3D view...
Definition: sdk/libraries/core/component/Component.h:303