gepetto-viewer 6.0.0
An user-friendly Graphical Interface
Loading...
Searching...
No Matches
bodytreewidget.hh
Go to the documentation of this file.
1// Copyright (c) 2015-2018, LAAS-CNRS
2// Authors: Joseph Mirabel (joseph.mirabel@laas.fr)
3//
4// This file is part of gepetto-viewer.
5// gepetto-viewer is free software: you can redistribute it
6// and/or modify it under the terms of the GNU Lesser General Public
7// License as published by the Free Software Foundation, either version
8// 3 of the License, or (at your option) any later version.
9//
10// gepetto-viewer is distributed in the hope that it will be
11// useful, but WITHOUT ANY WARRANTY; without even the implied warranty
12// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13// General Lesser Public License for more details. You should have
14// received a copy of the GNU Lesser General Public License along with
15// gepetto-viewer. If not, see <http://www.gnu.org/licenses/>.
16
17#ifndef GEPETTO_GUI_BODYTREEWIDGET_HH
18#define GEPETTO_GUI_BODYTREEWIDGET_HH
19
20#include <gepetto/gui/fwd.hh>
21// This include must be include before any other Qt include for GLDEBUGPROC
22#include <QStandardItemModel>
23#include <QToolBox>
24#include <QTreeView>
25#include <QVector3D>
26#include <QWidget>
27
28namespace gepetto {
29namespace gui {
31class BodyTreeWidget : public QWidget {
32 Q_OBJECT
33
34 public:
35 explicit BodyTreeWidget(QWidget* parent = NULL) : QWidget(parent) {}
36
40 void init(QTreeView* view, QWidget* propertyArea);
41
42 virtual ~BodyTreeWidget() {}
43
45 QTreeView* view();
46
47 QStandardItemModel* model() { return model_; }
48
50
51 signals:
53
54 public slots:
57
60 void selectBodyByName(const QString bodyName);
61
64 void selectBodyByName(const std::string& bodyName);
65
67 QList<BodyTreeItem*> selectedBodies() const;
68
70
71 protected slots:
74 void customContextMenu(const QPoint& pos);
75
76 void currentChanged(const QModelIndex& current, const QModelIndex& previous);
77
78 private:
83 void handleSelectionEvent(const SelectionEvent* event);
84
85 void updatePropertyArea(BodyTreeItem* item);
86
87 QTreeView* view_;
88 QStandardItemModel* model_;
90 QWidget* propertyArea_;
91};
92} // namespace gui
93} // namespace gepetto
94
95#endif // GEPETTO_GUI_BODYTREEWIDGET_HH
Definition tree-item.hh:33
Contains the list of all the bodies in the scene.
Definition bodytreewidget.hh:31
BodyTreeWidget(QWidget *parent=NULL)
Definition bodytreewidget.hh:35
void currentChanged(const QModelIndex &current, const QModelIndex &previous)
void customContextMenu(const QPoint &pos)
virtual ~BodyTreeWidget()
Definition bodytreewidget.hh:42
void init(QTreeView *view, QWidget *propertyArea)
void emitBodySelected(SelectionEvent *event)
QStandardItemModel * model()
Definition bodytreewidget.hh:47
QTreeView * view()
Get the body tree view.
void bodySelected(SelectionEvent *event)
Definition selection-event.hh:31
void selectBodyByName(const std::string &bodyName)
QList< BodyTreeItem * > selectedBodies() const
Get selected bodies.
void selectBodyByName(const QString bodyName)
viewer::shared_ptr< WindowsManager > WindowsManagerPtr_t
Definition fwd.hh:59
Definition action-search-bar.hh:27