![]() |
Workspace 6.21.5
|
A tree widget that allows users to view and modify a scene hierarchy defined in the workspace. More...
#include <Rendering/SceneInteraction/sceneinteractionwidget.h>
Inherits QTreeWidget.
Public Slots | |
void | clearExisitingTree () |
void | connectToWorkspace (CSIRO::DataExecution::Workspace *workspace) |
void | editSceneItemTriggered () |
void | selectSceneItem (const CSIRO::Rendering::PickedItem &item, const CSIRO::Rendering::PickFilter &filter) |
Signals | |
void | addSceneItem (const QString &idPath, const CSIRO::Rendering::SceneItemType *typeBeingAdded) |
void | editItem (CSIRO::Rendering::SceneInteractionWidgetItem *item) |
void | focusCameraOnItem (const QString &idPath, const QString &outputName) |
void | focusCameraOnPosition (const CSIRO::Mesh::Vector3d &pos) |
void | itemLabelChanged (const QString &idPath, const CSIRO::Rendering::SceneItemType *type) |
void | itemSelected (CSIRO::Rendering::SceneInteractionWidgetItem *item) |
void | removeSceneItem (const QString &idPath, const CSIRO::Rendering::SceneItemType *type, const CSIRO::Rendering::SceneInteractionWidgetItem *item) |
Static Public Attributes | |
static const Application::LogManager::MessageCategory | LOG_SCENEINTERACTIONWIDGET |
Properties | |
bool | displayItemTypes |
bool | enableContextMenu |
Placing the string "siw_hide" in an operation label will cause this widget to skip over the operation. It will still parse any valid children. Placing the string "siw_hide_branch" will hide the operation AND any children
SceneInteractionWidget | ( | QWidget * | parent = nullptr | ) |
|
override |
|
signal |
Emitted when the user has selected to add a new scene item.
idPath | The parent operation this new scene item should be added under. This is usually a TransformBuilder operation. |
typeBeingAdded | The SceneItemType we want to add. |
void addSceneItemTypeToAllowListForContextMenu | ( | const SceneItemType * | sit | ) |
void allowAddSceneItemType | ( | const SceneItemType * | type, |
bool | enabled | ||
) |
void allowEditSceneItemType | ( | const SceneItemType * | type, |
QString | menuLabel | ||
) |
void clearAllowListForContextMenu | ( | ) |
|
slot |
|
slot |
|
signal |
Emitted when an item is about to be edited
item | The SceneInteractionWidgetItem that was selected. |
|
slot |
void enableContextMenu | ( | bool | enable | ) |
|
signal |
Emitted when the uses requests the camera to focus on a scene item.
idPath | The workspace id path of the operation we want to focus on. |
outputName | The output name for the SceneItem. |
|
signal |
Emitted when the uses requests the camera to focus on a position.
Note: This is the final signal that can be connected to the GLWidget to handle a camera focus event the originated from a focusCameraOnItem signal.
void focusCameraOnPositionRelay | ( | const CSIRO::Mesh::Vector3d & | pos | ) |
void getHeaders | ( | QStringList * | headersOut | ) | const |
void handleOperationLabelChangeEvent | ( | const DataExecution::OperationLabelChangeEvent & | event | ) |
void handleOperationRemovedEvent | ( | const DataExecution::RemoveOperationEvent & | event | ) |
bool isContextMenuEnabled | ( | ) | const |
bool isDisplayingItemTypes | ( | ) | const |
|
signal |
Emitted when the user has changed the name of a scene item.
idPath | The workspace id path of the operation we want to update. |
type | The SceneItemType we want to update. |
void itemLabelChangeTriggered | ( | const QString & | idPath, |
const SceneItemType * | type | ||
) |
|
signal |
Emitted when an item is selected
item | The SceneInteractionWidgetItem that was selected. |
bool labelChangeAllowed | ( | ) | const |
void registerCallbackProposedOptionToAddSceneItemTypeIsApproved | ( | std::function< bool(SceneInteractionWidget *, const SceneItemType *)> | callbackToSetContextMenuRestrictions | ) |
|
signal |
Emitted when the user has selected to remove a scene item.
idPath | The workspace id path of the operation we want to remove. |
type | The SceneItemType we want to remove. |
item | The tree item |
|
slot |
void setActiveAllowListForContextMenu | ( | bool | val | ) |
void setBusy | ( | bool | busy, |
const QString & | reason = "" |
||
) |
Toggles whether the widget should be active or not based on it being busy performing some action.
busy | True if the widget should be busy, false otherwise. |
reason | A message describing the current reason for being busy or empty if not. |
void setDisplayingItemTypes | ( | bool | b | ) |
bool setHeaders | ( | const QStringList & | headersIn | ) |
void setHideDisabledContextMenuEntries | ( | bool | val | ) |
void setLabelChangeAllowed | ( | bool | val | ) |
void update | ( | SceneBuilder & | scene | ) |
Update the QTreeWidget based on the supplied tree.
|
static |
|
readwrite |
|
readwrite |