Computer Assited Medical Intervention Tool Kit  version 5.0
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-2021 Univ. Grenoble Alpes, CNRS, Grenoble INP, 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
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
camitk::Action::setFamily
void setFamily(QString family)
the name of the family in which this action is associated
Definition: Action.cpp:136
camitk::InterfaceFrame::getFrameVisibility
virtual bool getFrameVisibility(QString) const =0
Get the Component Frame visibility for a given viewer.
InteractiveGeometryViewer.h
ShowFrame::getWidget
virtual QWidget * getWidget() override
update the property visibility
Definition: ShowFrame.cpp:62
camitk::Action::SUCCESS
@ SUCCESS
everything went according to plan
Definition: Action.h:248
camitk::ActionWidget
Build a default widget for a given action using its Qt properties. It should be good enough in most o...
Definition: ActionWidget.h:96
camitk::Action::ApplyStatus
ApplyStatus
Definition: Action.h:247
camitk::Action::setName
void setName(QString name)
Definition: Action.cpp:120
InteractiveGeometryViewer
Interactive 3D viewer.
Definition: InteractiveGeometryViewer.h:56
camitk::InterfaceFrame::getFrameAxisActor
virtual vtkSmartPointer< vtkAxesActor > getFrameAxisActor()=0
Gives the 3D representation of the frame (based on xyz arrows)
camitk::Action::setAutoUpdateProperties
void setAutoUpdateProperties(bool)
are the properties to be udpated every time the user makes a change in the widget (default is false)?
Definition: Action.cpp:426
camitk::Action::setComponent
void setComponent(QString component)
the name of the component class that can be used by this action
Definition: Action.cpp:131
camitk::Action::getTargets
const ComponentList getTargets() const
the currently selected and valid (regarding the component property) components, for which this action...
Definition: Action.cpp:166
Action.h
camitk::InterfaceFrame::setFrameVisibility
virtual void setFrameVisibility(QString, bool)=0
Set the Component Frame visible for a given viewer.
ShowFrame::ShowFrame
ShowFrame(camitk::ActionExtension *)
the constructor
Definition: ShowFrame.cpp:36
ShowFrame::event
virtual bool event(QEvent *e) override
manage change immediatly
Definition: ShowFrame.cpp:93
camitk::Property
This class describes a property that can be used in components and actions or any class that needs to...
Definition: Property.h:303
ShowFrame::comp
camitk::Component * comp
Definition: ShowFrame.h:85
ActionWidget.h
camitk::Action::addTag
void addTag(QString tag)
add a tag to the tags list of this action
Definition: Action.cpp:141
ShowFrame::~ShowFrame
virtual ~ShowFrame()=default
Destructor.
camitk::Action
Action class is an abstract class that enables you to build a action (generally on a component)....
Definition: Action.h:231
Property.h
camitk::Property::setAttribute
void setAttribute(const QString &attribute, const QVariant &value)
Set a given property for this attribute.
Definition: Property.cpp:183
camitk::InteractiveViewer::refresh
void refresh(Viewer *whoIsAsking=nullptr) override
Definition: InteractiveViewer.cpp:416
camitk::Action::setDescription
void setDescription(QString description)
the description of the action
Definition: Action.cpp:126
ShowFrame::getQAction
QAction * getQAction(camitk::Component *target=nullptr) override
Get the corresponding QAction (overriden to update the checked status)
Definition: ShowFrame.cpp:131
ShowFrame::blockAutoUpdate
bool blockAutoUpdate
Definition: ShowFrame.h:82
camitk::InteractiveViewer::getBoundsOfSelected
void getBoundsOfSelected(double *bound)
Compute the bounding box of the selected elements [xmin,xmax, ymin,ymax, zmin,zmax].
Definition: InteractiveViewer.cpp:1552
camitk::Action::addParameter
virtual bool addParameter(Property *)
Add a new parameter to the action, using the CamiTK property class.
Definition: Action.cpp:440
camitk::ActionExtension
This class describes what is a generic Action extension. To add a ActionExtension to CamiTK core,...
Definition: ActionExtension.h:80
ShowFrame::getFrameSize
double getFrameSize()
Definition: ShowFrame.cpp:115
ShowFrame.h
camitk::refresh
void refresh()
refresh the display
ShowFrame::apply
virtual camitk::Action::ApplyStatus apply() override
show/hide the frame depending on the user choice
Definition: ShowFrame.cpp:145
ShowFrame
This action allows you to show/hide the 3D axes representation of the component's frame.
Definition: ShowFrame.h:34
camitk::Component
A Component represents something that could be included in the explorer view, the interactive 3D view...
Definition: sdk/libraries/core/component/Component.h:302
camitk
Definition: Action.cpp:35