void ezQtEmbeddedClassPropertyWidget::OnInit() { m_pGrid->GetObjectManager()->m_PropertyEvents.AddEventHandler( ezMakeDelegate(&ezQtEmbeddedClassPropertyWidget::PropertyEventHandler, this)); m_pGrid->GetCommandHistory()->m_Events.AddEventHandler( ezMakeDelegate(&ezQtEmbeddedClassPropertyWidget::CommandHistoryEventHandler, this)); }
void ezGreyBoxEditTool::OnConfigured() { GetDocument()->m_GameObjectEvents.AddEventHandler(ezMakeDelegate(&ezGreyBoxEditTool::GameObjectEventHandler, this)); ezManipulatorManager::GetSingleton()->m_Events.AddEventHandler(ezMakeDelegate(&ezGreyBoxEditTool::ManipulatorManagerEventHandler, this)); m_DrawBoxGizmo.SetOwner(GetWindow(), nullptr); }
ezQtPropertyGridWidget::ezQtPropertyGridWidget(QWidget* pParent, ezDocument* pDocument, bool bBindToSelectionManager) : QWidget(pParent) { m_pDocument = nullptr; m_pScroll = new QScrollArea(this); m_pScroll->setContentsMargins(0, 0, 0, 0); m_pLayout = new QVBoxLayout(this); m_pLayout->setSpacing(0); m_pLayout->setMargin(0); setLayout(m_pLayout); m_pLayout->addWidget(m_pScroll); m_pContent = new QWidget(this); m_pScroll->setWidget(m_pContent); m_pScroll->setWidgetResizable(true); m_pContent->setBackgroundRole(QPalette::ColorRole::Window); m_pContent->setAutoFillBackground(true); m_pContentLayout = new QVBoxLayout(m_pContent); m_pContentLayout->setSpacing(1); m_pContentLayout->setMargin(1); m_pContent->setLayout(m_pContentLayout); m_pSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); m_pContentLayout->addSpacerItem(m_pSpacer); m_pTypeWidget = nullptr; s_Factory.m_Events.AddEventHandler(ezMakeDelegate(&ezQtPropertyGridWidget::FactoryEventHandler, this)); ezPhantomRttiManager::s_Events.AddEventHandler(ezMakeDelegate(&ezQtPropertyGridWidget::TypeEventHandler, this)); SetDocument(pDocument, bBindToSelectionManager); }
ezQtPropertyTypeContainerWidget::~ezQtPropertyTypeContainerWidget() { m_pGrid->GetDocument()->GetObjectManager()->m_StructureEvents.RemoveEventHandler( ezMakeDelegate(&ezQtPropertyTypeContainerWidget::StructureEventHandler, this)); m_pGrid->GetCommandHistory()->m_Events.RemoveEventHandler( ezMakeDelegate(&ezQtPropertyTypeContainerWidget::CommandHistoryEventHandler, this)); }
ezQtPropertyGridWidget::~ezQtPropertyGridWidget() { s_Factory.m_Events.RemoveEventHandler(ezMakeDelegate(&ezQtPropertyGridWidget::FactoryEventHandler, this)); ezPhantomRttiManager::s_Events.RemoveEventHandler(ezMakeDelegate(&ezQtPropertyGridWidget::TypeEventHandler, this)); if (m_pDocument) { m_pDocument->m_ObjectAccessorChangeEvents.RemoveEventHandler( ezMakeDelegate(&ezQtPropertyGridWidget::ObjectAccessorChangeEventHandler, this)); m_pDocument->GetSelectionManager()->m_Events.RemoveEventHandler(ezMakeDelegate(&ezQtPropertyGridWidget::SelectionEventHandler, this)); } }
ezQtLogPanel::~ezQtLogPanel() { QSettings Settings; Settings.beginGroup(QLatin1String("LogPanel")); { Settings.setValue("Splitter", splitter->saveState()); } Settings.endGroup(); ezGlobalLog::RemoveLogWriter(ezMakeDelegate(&ezQtLogPanel::LogWriter, this)); ezEditorEngineProcessConnection::s_Events.RemoveEventHandler(ezMakeDelegate(&ezQtLogPanel::EngineProcessMsgHandler, this)); }
ezQtPropertyAnimAssetDocumentWindow::~ezQtPropertyAnimAssetDocumentWindow() { GetPropertyAnimDocument()->m_PropertyAnimEvents.RemoveEventHandler( ezMakeDelegate(&ezQtPropertyAnimAssetDocumentWindow::PropertyAnimAssetEventHandler, this)); // GetDocument()->GetObjectManager()->m_PropertyEvents.RemoveEventHandler(ezMakeDelegate(&ezQtPropertyAnimAssetDocumentWindow::PropertyEventHandler, // this)); GetDocument()->GetObjectManager()->m_StructureEvents.RemoveEventHandler( ezMakeDelegate(&ezQtPropertyAnimAssetDocumentWindow::StructureEventHandler, this)); GetDocument()->GetSelectionManager()->m_Events.RemoveEventHandler( ezMakeDelegate(&ezQtPropertyAnimAssetDocumentWindow::SelectionEventHandler, this)); GetDocument()->GetCommandHistory()->m_Events.RemoveEventHandler( ezMakeDelegate(&ezQtPropertyAnimAssetDocumentWindow::CommandHistoryEventHandler, this)); }
ezResourceLoadDesc ezMaterialResource::UnloadData(Unload WhatToUnload) { if (m_Desc.m_hBaseMaterial.IsValid()) { ezResourceLock<ezMaterialResource> pBaseMaterial(m_Desc.m_hBaseMaterial, ezResourceAcquireMode::PointerOnly); pBaseMaterial->m_ModifiedEvent.RemoveEventHandler(ezMakeDelegate(&ezMaterialResource::OnBaseMaterialModified, this)); } m_Desc.Clear(); m_OriginalDesc.Clear(); if (!m_hConstantBufferStorage.IsInvalidated()) { ezRenderContext::DeleteConstantBufferStorage(m_hConstantBufferStorage); m_hConstantBufferStorage.Invalidate(); } m_hCachedShader.Invalidate(); m_CachedPermutationVars.Clear(); m_CachedParameters.Clear(); m_CachedTexture2DBindings.Clear(); m_CachedTextureCubeBindings.Clear(); ezResourceLoadDesc res; res.m_uiQualityLevelsDiscardable = 0; res.m_uiQualityLevelsLoadable = 0; res.m_State = ezResourceState::Unloaded; return res; }
ezQtEngineViewWidget::ezQtEngineViewWidget(QWidget* pParent, ezQtEngineDocumentWindow* pDocumentWindow, ezEngineViewConfig* pViewConfig) : QWidget(pParent) , m_pDocumentWindow(pDocumentWindow) , m_pViewConfig(pViewConfig) { m_pRestartButtonLayout = nullptr; m_pRestartButton = nullptr; setFocusPolicy(Qt::FocusPolicy::StrongFocus); // setAttribute(Qt::WA_OpaquePaintEvent); setAutoFillBackground(false); setMouseTracking(true); setMinimumSize(64, 64); // prevent the window from becoming zero sized, otherwise the rendering code may crash setAttribute(Qt::WA_PaintOnScreen, true); setAttribute(Qt::WA_NativeWindow, true); setAttribute(Qt::WA_NoBackground); setAttribute(Qt::WA_NoSystemBackground); installEventFilter(this); m_bUpdatePickingData = false; m_bInDragAndDropOperation = false; m_uiViewID = s_uiNextViewID; ++s_uiNextViewID; m_fCameraLerp = 1.0f; m_fCameraTargetFovOrDim = 70.0f; ezEditorEngineProcessConnection::s_Events.AddEventHandler(ezMakeDelegate(&ezQtEngineViewWidget::EngineViewProcessEventHandler, this)); if (ezEditorEngineProcessConnection::GetSingleton()->IsProcessCrashed()) ShowRestartButton(true); }
ezParticleAction::ezParticleAction(const ezActionContext& context, const char* szName, ezParticleAction::ActionType type, float fSimSpeed) : ezButtonAction(context, szName, false, "") { m_Type = type; m_fSimSpeed = fSimSpeed; m_pEffectDocument = const_cast<ezParticleEffectAssetDocument*>(static_cast<const ezParticleEffectAssetDocument*>(context.m_pDocument)); m_pEffectDocument->m_Events.AddEventHandler(ezMakeDelegate(&ezParticleAction::EffectEventHandler, this)); switch (m_Type) { case ActionType::PauseEffect: SetIconPath(":/EditorPluginParticle/Icons/Pause16.png"); break; case ActionType::RestartEffect: SetIconPath(":/EditorPluginParticle/Icons/Restart16.png"); break; case ActionType::AutoRestart: SetIconPath(":/EditorPluginParticle/Icons/Loop16.png"); break; case ActionType::RenderVisualizers: SetCheckable(true); SetIconPath(":/EditorFramework/Icons/Visualizers16.png"); SetChecked(m_pEffectDocument->GetRenderVisualizers()); break; } UpdateState(); }
ezWorld::ezWorld(ezWorldDesc& desc) : m_UpdateTask("", ezMakeDelegate(&ezWorld::UpdateFromThread, this)) , m_Data(desc) { m_Data.m_pCoordinateSystemProvider->m_pOwnerWorld = this; ezStringBuilder sb = desc.m_sName.GetString(); sb.Append(".Update"); m_UpdateTask.SetTaskName(sb); m_uiIndex = ezInvalidIndex; // find a free world slot for (ezUInt32 i = 0; i < s_Worlds.GetCount(); i++) { if (s_Worlds[i] == nullptr) { s_Worlds[i] = this; m_uiIndex = i; break; } } if (m_uiIndex == ezInvalidIndex) { m_uiIndex = s_Worlds.GetCount(); s_Worlds.PushBack(this); } }
void ezVisualScriptTypeRegistry::UpdateNodeTypes() { // Base Node Type if (m_pBaseType == nullptr) { ezReflectedTypeDescriptor desc; desc.m_sTypeName = "ezVisualScriptNodeBase"; desc.m_sPluginName = "VisualScriptTypes"; desc.m_sParentTypeName = ezGetStaticRTTI<ezReflectedClass>()->GetTypeName(); desc.m_Flags = ezTypeFlags::Phantom | ezTypeFlags::Abstract | ezTypeFlags::Class; desc.m_uiTypeSize = 0; desc.m_uiTypeVersion = 1; m_pBaseType = ezPhantomRttiManager::RegisterType(desc); ezPhantomRttiManager::s_Events.AddEventHandler(ezMakeDelegate(&ezVisualScriptTypeRegistry::PhantomTypeRegistryEventHandler, this)); } auto& dynEnum = ezDynamicStringEnum::GetDynamicEnum("ComponentTypes"); dynEnum.Clear(); for (const ezRTTI* pRtti = ezRTTI::GetFirstInstance(); pRtti != nullptr; pRtti = pRtti->GetNextInstance()) { if (pRtti->IsDerivedFrom<ezComponent>()) { dynEnum.AddValidValue(pRtti->GetTypeName(), true); } } for (const ezRTTI* pRtti = ezRTTI::GetFirstInstance(); pRtti != nullptr; pRtti = pRtti->GetNextInstance()) { UpdateNodeType(pRtti); } }
void ezConsole::EnableLogOutput(bool bEnable) { if (m_bLogOutputEnabled == bEnable) return; m_bLogOutputEnabled = bEnable; if (bEnable) { ezGlobalLog::AddLogWriter(ezMakeDelegate(&ezConsole::LogHandler, this)); } else { ezGlobalLog::RemoveLogWriter(ezMakeDelegate(&ezConsole::LogHandler, this)); } }
ezGameObjectSelectionAction::ezGameObjectSelectionAction(const ezActionContext& context, const char* szName, ezGameObjectSelectionAction::ActionType type) : ezButtonAction(context, szName, false, "") { m_Type = type; // TODO const cast m_pSceneDocument = const_cast<ezGameObjectDocument*>(static_cast<const ezGameObjectDocument*>(context.m_pDocument)); switch (m_Type) { case ActionType::ShowInScenegraph: SetIconPath(":/EditorFramework/Icons/Scenegraph16.png"); break; case ActionType::FocusOnSelection: SetIconPath(":/EditorFramework/Icons/FocusOnSelection16.png"); break; case ActionType::FocusOnSelectionAllViews: SetIconPath(":/EditorFramework/Icons/FocusOnSelectionAllViews16.png"); break; case ActionType::SnapCameraToObject: // SetIconPath(":/EditorFramework/Icons/Duplicate16.png"); // TODO Icon break; case ActionType::MoveCameraHere: // SetIconPath(":/EditorFramework/Icons/Duplicate16.png"); // TODO Icon break; case ActionType::CreateGameObjectHere: SetIconPath(":/EditorFramework/Icons/CreateEmpty16.png"); break; } UpdateEnableState(); m_Context.m_pDocument->GetSelectionManager()->m_Events.AddEventHandler( ezMakeDelegate(&ezGameObjectSelectionAction::SelectionEventHandler, this)); }
/// \todo Should be done on any thread, but currently crashes when deleting custom loaders in the resource manager ezMaterialResource::ezMaterialResource() : ezResource(DoUpdate::OnMainThread, 1) { m_iLastUpdated = 0; m_iLastConstantsUpdated = 0; ezResourceManager::s_ResourceEvents.AddEventHandler(ezMakeDelegate(&ezMaterialResource::OnResourceEvent, this)); }
ezQtEngineViewWidget::~ezQtEngineViewWidget() { ezEditorEngineProcessConnection::s_Events.RemoveEventHandler(ezMakeDelegate(&ezQtEngineViewWidget::EngineViewProcessEventHandler, this)); ezViewDestroyedMsgToEngine msg; msg.m_uiViewID = GetViewID(); m_pDocumentWindow->GetDocument()->SendMessageToEngine(&msg); m_pDocumentWindow->RemoveViewWidget(this); }
ezVisualizerAdapterRegistry::~ezVisualizerAdapterRegistry() { ezVisualizerManager::GetSingleton()->m_Events.RemoveEventHandler(ezMakeDelegate(&ezVisualizerAdapterRegistry::VisualizerManagerEventHandler, this)); for (auto it = m_DocumentAdapters.GetIterator(); it.IsValid(); ++it) { ClearAdapters(it.Key()); } }
void ezQtPropertyGridWidget::SetDocument(ezDocument* pDocument, bool bBindToSelectionManager) { m_bBindToSelectionManager = bBindToSelectionManager; if (m_pDocument) { m_pDocument->m_ObjectAccessorChangeEvents.RemoveEventHandler( ezMakeDelegate(&ezQtPropertyGridWidget::ObjectAccessorChangeEventHandler, this)); m_pDocument->GetSelectionManager()->m_Events.RemoveEventHandler(ezMakeDelegate(&ezQtPropertyGridWidget::SelectionEventHandler, this)); } m_pDocument = pDocument; if (m_pDocument) { m_pDocument->m_ObjectAccessorChangeEvents.AddEventHandler( ezMakeDelegate(&ezQtPropertyGridWidget::ObjectAccessorChangeEventHandler, this)); m_pDocument->GetSelectionManager()->m_Events.AddEventHandler(ezMakeDelegate(&ezQtPropertyGridWidget::SelectionEventHandler, this)); } }
ezQtLogPanel::ezQtLogPanel() : ezQtApplicationPanel("Panel.Log") , m_SingletonRegistrar(this) { setupUi(this); setWindowIcon(ezQtUiServices::GetCachedIconResource(":/GuiFoundation/Icons/Log.png")); setWindowTitle(QString::fromUtf8(ezTranslate("Panel.Log"))); EditorLog->GetSearchWidget()->setPlaceholderText(QStringLiteral("Search Editor Log")); EngineLog->GetSearchWidget()->setPlaceholderText(QStringLiteral("Search Engine Log")); ezGlobalLog::AddLogWriter(ezMakeDelegate(&ezQtLogPanel::LogWriter, this)); ezEditorEngineProcessConnection::s_Events.AddEventHandler(ezMakeDelegate(&ezQtLogPanel::EngineProcessMsgHandler, this)); QSettings Settings; Settings.beginGroup(QLatin1String("LogPanel")); { splitter->restoreState(Settings.value("Splitter", splitter->saveState()).toByteArray()); } Settings.endGroup(); }
void ezGameObjectGizmoEditTool::EngineWindowEventHandler(const ezEngineWindowEvent& e) { if (ezQtGameObjectViewWidget* pViewWidget = qobject_cast<ezQtGameObjectViewWidget*>(e.m_pView)) { switch (e.m_Type) { case ezEngineWindowEvent::Type::ViewCreated: pViewWidget->m_pOrthoGizmoContext->m_GizmoEvents.AddEventHandler( ezMakeDelegate(&ezGameObjectGizmoEditTool::TransformationGizmoEventHandler, this)); break; } } }
ezPropertyAnimAssetDocumentManager::ezPropertyAnimAssetDocumentManager() { ezDocumentManager::s_Events.AddEventHandler(ezMakeDelegate(&ezPropertyAnimAssetDocumentManager::OnDocumentManagerEvent, this)); m_AssetDesc.m_bCanCreate = true; m_AssetDesc.m_sDocumentTypeName = "PropertyAnim Asset"; m_AssetDesc.m_sFileExtension = "ezPropertyAnimAsset"; m_AssetDesc.m_sIcon = ":/AssetIcons/PropertyAnim.png"; m_AssetDesc.m_pDocumentType = ezGetStaticRTTI<ezPropertyAnimAssetDocument>(); m_AssetDesc.m_pManager = this; ezQtImageCache::GetSingleton()->RegisterTypeImage("PropertyAnim", QPixmap(":/AssetIcons/PropertyAnim.png")); }
ezQtTypeWidget::ezQtTypeWidget(QWidget* pParent, ezQtPropertyGridWidget* pGrid, ezObjectAccessorBase* pObjectAccessor, const ezRTTI* pType, const char* szIncludeProperties, const char* szExcludeProperties) : QWidget(pParent) , m_pGrid(pGrid) , m_pObjectAccessor(pObjectAccessor) , m_pType(pType) { EZ_ASSERT_DEBUG(m_pGrid && m_pObjectAccessor && m_pType, ""); m_pLayout = new QGridLayout(this); m_pLayout->setColumnStretch(0, 1); m_pLayout->setColumnStretch(1, 0); m_pLayout->setColumnMinimumWidth(1, 5); m_pLayout->setColumnStretch(2, 2); m_pLayout->setMargin(0); m_pLayout->setSpacing(0); setLayout(m_pLayout); m_pGrid->GetObjectManager()->m_PropertyEvents.AddEventHandler(ezMakeDelegate(&ezQtTypeWidget::PropertyEventHandler, this)); m_pGrid->GetCommandHistory()->m_Events.AddEventHandler(ezMakeDelegate(&ezQtTypeWidget::CommandHistoryEventHandler, this)); ezManipulatorManager::GetSingleton()->m_Events.AddEventHandler(ezMakeDelegate(&ezQtTypeWidget::ManipulatorManagerEventHandler, this)); BuildUI(pType, szIncludeProperties, szExcludeProperties); }
void ezQtPropertyPointerWidget::OnInit() { m_pGroup->SetTitle(ezTranslate(m_pProp->GetPropertyName())); m_pGrid->SetCollapseState(m_pGroup); connect(m_pGroup, &ezQtGroupBoxBase::CollapseStateChanged, m_pGrid, &ezQtPropertyGridWidget::OnCollapseStateChanged); // Add Buttons auto pAttr = m_pProp->GetAttributeByType<ezContainerAttribute>(); m_pAddButton->setVisible(!pAttr || pAttr->CanAdd()); m_pDeleteButton->setVisible(!pAttr || pAttr->CanDelete()); m_pAddButton->Init(m_pGrid, m_pObjectAccessor, m_pType, m_pProp); m_pGrid->GetDocument()->GetObjectManager()->m_StructureEvents.AddEventHandler( ezMakeDelegate(&ezQtPropertyPointerWidget::StructureEventHandler, this)); }
void ezNonUniformBoxManipulatorAdapter::Finalize() { auto* pDoc = m_pObject->GetDocumentObjectManager()->GetDocument(); auto* pWindow = ezQtDocumentWindow::FindWindowByDocument(pDoc); ezQtEngineDocumentWindow* pEngineWindow = qobject_cast<ezQtEngineDocumentWindow*>(pWindow); EZ_ASSERT_DEV(pEngineWindow != nullptr, "Manipulators are only supported in engine document windows"); m_Gizmo.SetTransformation(GetObjectTransform()); m_Gizmo.SetOwner(pEngineWindow, nullptr); m_Gizmo.SetVisible(m_bManipulatorIsVisible); m_Gizmo.m_GizmoEvents.AddEventHandler(ezMakeDelegate(&ezNonUniformBoxManipulatorAdapter::GizmoEventHandler, this)); }
void ezQtNodeScene::SetDocumentNodeManager(const ezDocumentNodeManager* pManager) { if (pManager == m_pManager) return; Clear(); if (m_pManager != nullptr) { m_pManager->m_NodeEvents.RemoveEventHandler(ezMakeDelegate(&ezQtNodeScene::NodeEventsHandler, this)); m_pManager->GetDocument()->GetSelectionManager()->m_Events.RemoveEventHandler( ezMakeDelegate(&ezQtNodeScene::SelectionEventsHandler, this)); m_pManager->m_PropertyEvents.RemoveEventHandler(ezMakeDelegate(&ezQtNodeScene::PropertyEventsHandler, this)); } m_pManager = pManager; if (pManager != nullptr) { pManager->m_NodeEvents.AddEventHandler(ezMakeDelegate(&ezQtNodeScene::NodeEventsHandler, this)); m_pManager->GetDocument()->GetSelectionManager()->m_Events.AddEventHandler( ezMakeDelegate(&ezQtNodeScene::SelectionEventsHandler, this)); m_pManager->m_PropertyEvents.AddEventHandler(ezMakeDelegate(&ezQtNodeScene::PropertyEventsHandler, this)); // Create Nodes const auto& rootObjects = pManager->GetRootObject()->GetChildren(); for (const auto& pObject : rootObjects) { if (pManager->IsNode(pObject)) { CreateNode(pObject); } } // Connect Pins for (auto it = m_Nodes.GetIterator(); it.IsValid(); ++it) { auto outputs = pManager->GetOutputPins(it.Value()->GetObject()); for (const ezPin* pOutPin : outputs) { auto connections = pOutPin->GetConnections(); for (const ezConnection* pConnection : connections) { ConnectPins(pConnection); } } } } }
void ezGameObjectGizmoEditTool::DocumentWindowEventHandler(const ezQtDocumentWindowEvent& e) { if (e.m_Type == ezQtDocumentWindowEvent::WindowClosing && e.m_pWindow == GetWindow()) { GetDocument()->m_GameObjectEvents.RemoveEventHandler(ezMakeDelegate(&ezGameObjectGizmoEditTool::GameObjectEventHandler, this)); GetDocument()->GetCommandHistory()->m_Events.RemoveEventHandler( ezMakeDelegate(&ezGameObjectGizmoEditTool::CommandHistoryEventHandler, this)); GetDocument()->GetSelectionManager()->m_Events.RemoveEventHandler( ezMakeDelegate(&ezGameObjectGizmoEditTool::SelectionManagerEventHandler, this)); ezManipulatorManager::GetSingleton()->m_Events.RemoveEventHandler( ezMakeDelegate(&ezGameObjectGizmoEditTool::ManipulatorManagerEventHandler, this)); GetWindow()->m_EngineWindowEvent.RemoveEventHandler(ezMakeDelegate(&ezGameObjectGizmoEditTool::EngineWindowEventHandler, this)); GetDocument()->GetObjectManager()->m_StructureEvents.RemoveEventHandler( ezMakeDelegate(&ezGameObjectGizmoEditTool::ObjectStructureEventHandler, this)); } }
void ezGameObjectGizmoEditTool::OnConfigured() { GetDocument()->m_GameObjectEvents.AddEventHandler(ezMakeDelegate(&ezGameObjectGizmoEditTool::GameObjectEventHandler, this)); GetDocument()->GetCommandHistory()->m_Events.AddEventHandler( ezMakeDelegate(&ezGameObjectGizmoEditTool::CommandHistoryEventHandler, this)); GetDocument()->GetSelectionManager()->m_Events.AddEventHandler( ezMakeDelegate(&ezGameObjectGizmoEditTool::SelectionManagerEventHandler, this)); ezManipulatorManager::GetSingleton()->m_Events.AddEventHandler( ezMakeDelegate(&ezGameObjectGizmoEditTool::ManipulatorManagerEventHandler, this)); GetWindow()->m_EngineWindowEvent.AddEventHandler(ezMakeDelegate(&ezGameObjectGizmoEditTool::EngineWindowEventHandler, this)); GetDocument()->GetObjectManager()->m_StructureEvents.AddEventHandler( ezMakeDelegate(&ezGameObjectGizmoEditTool::ObjectStructureEventHandler, this)); // subscribe to all views that already exist for (ezQtEngineViewWidget* pView : GetWindow()->GetViewWidgets()) { if (ezQtGameObjectViewWidget* pViewWidget = qobject_cast<ezQtGameObjectViewWidget*>(pView)) { pViewWidget->m_pOrthoGizmoContext->m_GizmoEvents.AddEventHandler( ezMakeDelegate(&ezGameObjectGizmoEditTool::TransformationGizmoEventHandler, this)); } } }
ezGreyBoxEditTool::~ezGreyBoxEditTool() { m_DrawBoxGizmo.m_GizmoEvents.RemoveEventHandler(ezMakeDelegate(&ezGreyBoxEditTool::GizmoEventHandler, this)); }
ezQtPropertyPointerWidget::~ezQtPropertyPointerWidget() { m_pGrid->GetDocument()->GetObjectManager()->m_StructureEvents.RemoveEventHandler( ezMakeDelegate(&ezQtPropertyPointerWidget::StructureEventHandler, this)); }
ezPropertyAnimAssetDocumentManager::~ezPropertyAnimAssetDocumentManager() { ezDocumentManager::s_Events.RemoveEventHandler(ezMakeDelegate(&ezPropertyAnimAssetDocumentManager::OnDocumentManagerEvent, this)); }