34#include <NDEVR/UUID.h>
35#include <NDEVR/Angle.h>
36#include <NDEVR/Pointer.h>
37#include <NDEVR/Buffer.h>
51 class DESIGN_WIDGETS_API CameraView :
public QFrame
77 CameraView(QWidget* parent =
nullptr)
80 virtual ~CameraView() {}
86 virtual void updateView() = 0;
91 virtual void setTouchTheme(
bool touch_theme) = 0;
96 virtual void setSwapMode(SwapMode mode) = 0;
101 virtual UUID id()
const = 0;
106 virtual ConstPointer<Camera> camera()
const = 0;
111 virtual DynamicPointer<Camera> camera() = 0;
117 bool event(QEvent* event)
override;
122 virtual void setIconSizeMultiplier(fltp04){};
127 virtual void addWidget(
const QPointer<QWidget>&) {};
132 virtual void removeWidget(
const QPointer<QWidget>&) {};
137 virtual void setCameraRotation(Angle<fltp08>) {};
142 virtual void setCameraZoom(fltp08) {};
147 virtual Angle<fltp08> cameraRotation() {
return Angle<fltp08>(0); }
151 virtual void resetToolRibbon() {};
156 virtual void disableContextMenu(
bool disable) { m_disable_context_menu = disable; }
161 virtual void showToolRibbon(
bool) {};
166 virtual QSize sizeHint()
const override;
171 virtual QWidget* cameraToolbar() {
return nullptr; };
176 virtual RecordingState recordingState()
const {
return RecordingState::e_stopped; }
182 virtual void addContextCustomMenu(
const UUID&, ContextMenuCallback*) {};
187 virtual void requestShowInfoDisplay(
bool) {};
189 void viewportSelectionSignal(UUID camera, Buffer<UUID> selection);
190 void viewportShowing();
191 void requestCameraCopy(UUID signal,
bool);
192 void requestSwapSignal(UUID signal);
193 void requestRedrawAllSignal();
194 void viewHiddenSignal();
195 void recordingStateChangedSignal(RecordingState state);
196 void onScreenshotSaved(
const File& file);
197 void onVideoSaved(
const File& file);
198 void requestSelectedSignal();
199 void requestMoveable(
bool moveable);
201 bool m_disable_context_menu =
false;
A core object representing a user view as well as convenience functions for moving this view through ...
Logic for reading or writing to a file as well as navigating filesystems or other common file operati...
The primary namespace for the NDEVR SDK.