2#include <NDEVR/QTDesignObject.h>
3#include <NDEVR/Pointer.h>
10 class NDEVR_API DesignObjectWidgetInterface
13 DesignObjectWidgetInterface();
14 virtual ~DesignObjectWidgetInterface();
A specification of upper and lower bounds in N-dimensions.
The equivelent of std::vector but with a bit more control.
Base level class providing convenience functions for interfacing with one or more DesignObjects.
const Dictionary< UUID, DynamicPointer< QTDesignObject > > & targets() const
Returns a const reference to the dictionary of all targets.
virtual void removeTarget(const DynamicPointer< QTDesignObject > &object)
Removes a specific target design object and disconnects its signals.
virtual Bounds< 3, fltp08 > bounds() const
Returns the combined 3D bounding box of all target design objects.
virtual void removeTarget(const UUID &object)
Removes a specific target by UUID and disconnects its signals.
void onTargetDeletedSlot(UUID id)
Slot called when a target design object is deleted, removing it from the targets.
void setManager(QTModelManager *manager)
Sets the model manager used for UUID-based lookups.
virtual void addTarget(const DynamicPointer< QTDesignObject > &object)
Adds a design object to the set of targets and connects its signals.
QTModelManager * manager() const
Returns the current model manager.
Dictionary< UUID, DynamicPointer< QTDesignObject > > m_targets
Maps each target UUID to its design object pointer.
DesignObjectWidgetInterface * m_widget_interface
The owning widget interface that receives update callbacks.
DesignObjectInterface(DesignObjectWidgetInterface *widget_interface)
Constructs a DesignObjectInterface bound to the given widget interface.
Buffer< Model > models() const
Returns all target objects as Models.
QTModelManager * m_manager
The model manager for UUID-based lookups.
void onTargetUpdatedSlot(UUID id)
Slot called when a target design object is updated, forwarding to the widget interface.
Buffer< UUID > targetIDs() const
Returns the UUIDs of all current target design objects.
A hash-based key-value store, useful for quick associative lookups.
Provides a modifiable pointer that has shared ownership of a dynamically allocated object.
A wrapper around DesignObjectLookup that provides signal and slot functionality and adds rendering ca...
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
The primary namespace for the NDEVR SDK.