Physics Simulation & Visualization Tool
0.1
A C++ physics simulation engine with real-time 3D visualization
Loading...
Searching...
No Matches
HierarchyWidget.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <QTreeWidget>
4
#include <QToolBar>
5
#include "
graphics/core/SceneObject.h
"
6
7
class
HierarchyWidget
:
public
QWidget {
8
Q_OBJECT
9
10
public
:
11
explicit
HierarchyWidget
(QWidget* parent =
nullptr
);
12
void
addObject
(
SceneObject
* obj);
13
void
removeObject
(
SceneObject
* obj);
14
void
deleteSelected
();
15
//SceneObject* getSelectedObject() const;
16
17
signals:
18
void
selectionChanged
(
SceneObject
* previous,
SceneObject
* current);
19
void
createObjectRequested
(
const
CreationOptions
& options);
20
void
renameObjectRequested
(
SceneObject
* obj,
const
QString& newName);
21
void
deleteObjectRequested
(
SceneObject
* obj);
22
void
focusObjectRequested
(
SceneObject
* obj);
23
void
followObjectRequested
(
SceneObject
* obj);
24
void
clearCameraFollowRequested
();
25
26
public
slots:
27
void
onItemNameChanged
(QTreeWidgetItem* item,
int
column);
28
void
setObjectName
(
SceneObject
* obj,
const
QString& name);
29
void
onItemSelectionChanged
();
30
void
selectObject
(
SceneObject
* obj);
31
void
showContextMenu
(
const
QPoint& pos);
32
33
private
:
34
QTreeWidget* tree;
35
QToolBar* toolBar;
36
QTreeWidgetItem* previousItem =
nullptr
;
37
38
static
SceneObject
* getObjectFromItem(QTreeWidgetItem* item);
39
QString typeFor(
SceneObject
* obj);
40
41
protected
:
42
void
keyPressEvent
(QKeyEvent* event)
override
;
43
};
CreationOptions
std::variant< ObjectOptions, PointMassOptions, RigidBodyOptions > CreationOptions
Definition
SceneObjectOptions.h:53
SceneObject.h
HierarchyWidget
Definition
HierarchyWidget.h:7
HierarchyWidget::renameObjectRequested
void renameObjectRequested(SceneObject *obj, const QString &newName)
HierarchyWidget::deleteSelected
void deleteSelected()
Definition
HierarchyWidget.cpp:207
HierarchyWidget::selectObject
void selectObject(SceneObject *obj)
Definition
HierarchyWidget.cpp:146
HierarchyWidget::addObject
void addObject(SceneObject *obj)
Definition
HierarchyWidget.cpp:123
HierarchyWidget::removeObject
void removeObject(SceneObject *obj)
Definition
HierarchyWidget.cpp:132
HierarchyWidget::setObjectName
void setObjectName(SceneObject *obj, const QString &name)
Definition
HierarchyWidget.cpp:173
HierarchyWidget::focusObjectRequested
void focusObjectRequested(SceneObject *obj)
HierarchyWidget::deleteObjectRequested
void deleteObjectRequested(SceneObject *obj)
HierarchyWidget::clearCameraFollowRequested
void clearCameraFollowRequested()
HierarchyWidget::showContextMenu
void showContextMenu(const QPoint &pos)
Definition
HierarchyWidget.cpp:65
HierarchyWidget::onItemSelectionChanged
void onItemSelectionChanged()
Definition
HierarchyWidget.cpp:185
HierarchyWidget::followObjectRequested
void followObjectRequested(SceneObject *obj)
HierarchyWidget::selectionChanged
void selectionChanged(SceneObject *previous, SceneObject *current)
HierarchyWidget::onItemNameChanged
void onItemNameChanged(QTreeWidgetItem *item, int column)
Definition
HierarchyWidget.cpp:162
HierarchyWidget::keyPressEvent
void keyPressEvent(QKeyEvent *event) override
Definition
HierarchyWidget.cpp:200
HierarchyWidget::createObjectRequested
void createObjectRequested(const CreationOptions &options)
SceneObject
Definition
SceneObject.h:22
src
ui
HierarchyWidget.h
Generated by
1.9.8