Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
src
rviz
default_plugin
tools
interaction_tool.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2008, Willow Garage, Inc.
3
* All rights reserved.
4
*
5
* Redistribution and use in source and binary forms, with or without
6
* modification, are permitted provided that the following conditions are met:
7
*
8
* * Redistributions of source code must retain the above copyright
9
* notice, this list of conditions and the following disclaimer.
10
* * Redistributions in binary form must reproduce the above copyright
11
* notice, this list of conditions and the following disclaimer in the
12
* documentation and/or other materials provided with the distribution.
13
* * Neither the name of the Willow Garage, Inc. nor the names of its
14
* contributors may be used to endorse or promote products derived from
15
* this software without specific prior written permission.
16
*
17
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
21
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27
* POSSIBILITY OF SUCH DAMAGE.
28
*/
29
30
#ifndef RVIZ_INTERACTION_TOOL_H
31
#define RVIZ_INTERACTION_TOOL_H
32
33
#include <stdint.h>
34
35
#include <
ros/subscriber.h
>
36
37
#include <
rviz/interactive_object.h
>
38
39
#include "
move_tool.h
"
40
41
namespace
rviz
42
{
43
44
class
BoolProperty;
45
46
class
InteractionTool
:
public
Tool
47
{
48
Q_OBJECT
49
public
:
50
InteractionTool
();
51
virtual
~InteractionTool
();
52
53
virtual
void
onInitialize
();
54
55
virtual
void
activate
();
56
virtual
void
deactivate
();
57
58
virtual
int
processMouseEvent
(
ViewportMouseEvent
& event );
59
virtual
int
processKeyEvent
( QKeyEvent* event,
RenderPanel
* panel );
60
61
public
Q_SLOTS:
62
63
void
hideInactivePropertyChanged
() {};
64
65
protected
:
66
67
70
void
updateFocus
(
const
ViewportMouseEvent
& event );
71
73
InteractiveObjectWPtr
focused_object_
;
74
75
uint64_t
last_selection_frame_count_
;
76
77
MoveTool
move_tool_
;
78
79
BoolProperty
*
hide_inactive_property_
;
80
};
81
82
}
83
84
#endif
85
86
rviz::InteractionTool::move_tool_
MoveTool move_tool_
Definition:
interaction_tool.h:77
rviz::InteractionTool::InteractionTool
InteractionTool()
Definition:
interaction_tool.cpp:51
rviz::Tool
Definition:
tool.h:55
rviz::InteractionTool::updateFocus
void updateFocus(const ViewportMouseEvent &event)
Check if the mouse has moved from one object to another, and update focused_object_ if so...
Definition:
interaction_tool.cpp:81
subscriber.h
rviz::InteractionTool::focused_object_
InteractiveObjectWPtr focused_object_
The object (control) which currently has the mouse focus.
Definition:
interaction_tool.h:73
rviz::RenderPanel
Definition:
render_panel.h:75
move_tool.h
rviz
Definition:
add_display_dialog.cpp:54
rviz::InteractionTool::deactivate
virtual void deactivate()
Definition:
interaction_tool.cpp:76
rviz::InteractionTool::~InteractionTool
virtual ~InteractionTool()
Definition:
interaction_tool.cpp:59
interactive_object.h
rviz::InteractionTool::hideInactivePropertyChanged
void hideInactivePropertyChanged()
Definition:
interaction_tool.h:63
rviz::InteractionTool::activate
virtual void activate()
Definition:
interaction_tool.cpp:70
rviz::InteractionTool::last_selection_frame_count_
uint64_t last_selection_frame_count_
Definition:
interaction_tool.h:75
rviz::InteractiveObjectWPtr
boost::weak_ptr< InteractiveObject > InteractiveObjectWPtr
Definition:
interactive_object.h:60
rviz::InteractionTool::processMouseEvent
virtual int processMouseEvent(ViewportMouseEvent &event)
Definition:
interaction_tool.cpp:135
rviz::InteractionTool::onInitialize
virtual void onInitialize()
Definition:
interaction_tool.cpp:63
rviz::InteractionTool
Definition:
interaction_tool.h:46
rviz::BoolProperty
Property specialized to provide getter for booleans.
Definition:
bool_property.h:38
rviz::InteractionTool::hide_inactive_property_
BoolProperty * hide_inactive_property_
Definition:
interaction_tool.h:79
rviz::MoveTool
Definition:
move_tool.h:40
rviz::ViewportMouseEvent
Definition:
viewport_mouse_event.h:46
rviz::InteractionTool::processKeyEvent
virtual int processKeyEvent(QKeyEvent *event, RenderPanel *panel)
Definition:
interaction_tool.cpp:193
rviz
Author(s): Dave Hershberger, David Gossow, Josh Faust
autogenerated on Sat Apr 27 2019 02:33:41