public BlackboardVariablePropertyView(Store store, IVariableDeclarationModel variableDeclarationModel, Blackboard.RebuildCallback rebuildCallback, Stencil stencil) : base(variableDeclarationModel, rebuildCallback) { m_Store = store; m_Stencil = stencil; RegisterCallback <AttachToPanelEvent>(OnAttachToPanel); RegisterCallback <DetachFromPanelEvent>(OnDetachFromPanel); if (variableDeclarationModel.VariableType != VariableType.FunctionVariable && variableDeclarationModel.VariableType != VariableType.GraphVariable) { return; } if (!variableDeclarationModel.InitializationModel?.NodeAssetReference) { if (stencil.GetVariableInitializer().RequiresInitialization(variableDeclarationModel)) { m_InitializationElement = new Button(OnInitializationButton) { text = "Create Init value" }; m_InitializationElement.AddToClassList("rowButton"); } } else { m_InitializationObject = new SerializedObject(variableDeclarationModel.InitializationModel.NodeAssetReference); m_InitializationObject.Update(); m_InitializationElement = new IMGUIContainer(OnInitializationGUI); } }