33#include <NDEVR/QTModelManager.h>
35#include <NDEVR/QTWindowManager.h>
36#include <NDEVR/QTDesignObject.h>
37#include <NDEVR/DesignObjectWidgetInterface.h>
38#include <NDEVR/CameraPane.h>
39#include <NDEVR/Button.h>
40#include <NDEVR/QTTools.h>
41#include <NDEVR/Camera.h>
42#include <NDEVR/Pointer.h>
44#include <QRadioButton>
45#include <QActionGroup>
50 class NDEVR_API CameraLocationWidget :
public QTResourceListener,
public DesignObjectWidgetInterface
53 CameraLocationWidget(QTModelManager* manager);
54 CameraLocationWidget(QTModelManager* manager, DynamicPointer<Camera> camera);
55 void removeTarget(
const DynamicPointer<QTDesignObject>&
object)
override;
56 void addTarget(
const DynamicPointer<QTDesignObject>&
object)
override;
58 void setupAutoCamera();
59 void onZoom(SnapLocation location);
61 virtual void onTargetUpdated(UUID)
override;
62 void setCamera(
const DynamicPointer<Camera>& camera);
63 QWidget* widget()
const;
64 DynamicPointer<Camera> camera()
const;
66 void requestSettingsSignal();
70 DynamicPointer<Camera> m_active_camera;
71 QTModelManager* m_manager =
nullptr;
72 TimeSpan m_animation_time;
73 QRadioButton* m_perspective =
nullptr;
74 QRadioButton* m_orthographic =
nullptr;
75 Button* m_top =
nullptr;
76 Button* m_bottom =
nullptr;
77 Button* m_front =
nullptr;
78 Button* m_back =
nullptr;
79 Button* m_left =
nullptr;
80 Button* m_right =
nullptr;
81 QAction* m_settings =
nullptr;