public override int OnElementValueChanged(uint elementid, object varValueOld, object varValueNew) { var hr = base.OnElementValueChanged(elementid, varValueOld, varValueNew); if (elementid == (uint)VSConstants.VSSELELEMID.SEID_DocumentFrame) { if (varValueOld != null) { var oldFrame = new EntityDesignFrameWrapper(varValueOld as IVsWindowFrame); if (oldFrame.IsEscherDocInEntityDesigner) { var oldVsArtifact = PackageManager.Package.ModelManager.GetArtifact(oldFrame.Uri) as VSArtifact; if (oldVsArtifact != null) { oldVsArtifact.LayerManager.Unload(); } } } if (varValueNew != null) { var newFrame = new EntityDesignFrameWrapper(varValueNew as IVsWindowFrame); if (newFrame.IsEscherDocInEntityDesigner) { var vsArtifact = PackageManager.Package.ModelManager.GetArtifact(newFrame.Uri) as VSArtifact; if (vsArtifact != null) { vsArtifact.LayerManager.Load(); } } } } return(hr); }
public override int OnBeforeDocumentWindowShow(uint docCookie, int fFirstShow, IVsWindowFrame pFrame) { if (fFirstShow != 0) { if (pFrame != null) { var frameWrapper = new EntityDesignFrameWrapper(pFrame); if (frameWrapper.IsEscherDocInXmlEditor) { // we have an EDMX file that is being opened in the XML editor so we want to validate // so users can fix up safe-mode errors or even non-safe mode errors VisualStudioEdmxValidator.LoadAndValidateFiles(frameWrapper.Uri); } } } return(NativeMethods.S_OK); }
public override int OnElementValueChanged(uint elementid, object varValueOld, object varValueNew) { var hr = base.OnElementValueChanged(elementid, varValueOld, varValueNew); if (elementid == (uint)VSConstants.VSSELELEMID.SEID_DocumentFrame) { if (varValueOld != null) { var oldFrame = new EntityDesignFrameWrapper(varValueOld as IVsWindowFrame); if (oldFrame.IsEscherDocInEntityDesigner) { var oldVsArtifact = PackageManager.Package.ModelManager.GetArtifact(oldFrame.Uri) as VSArtifact; if (oldVsArtifact != null) { oldVsArtifact.LayerManager.Unload(); } } } if (varValueNew != null) { var newFrame = new EntityDesignFrameWrapper(varValueNew as IVsWindowFrame); if (newFrame.IsEscherDocInEntityDesigner) { var vsArtifact = PackageManager.Package.ModelManager.GetArtifact(newFrame.Uri) as VSArtifact; if (vsArtifact != null) { vsArtifact.LayerManager.Load(); } } } } return hr; }
public override int OnBeforeDocumentWindowShow(uint docCookie, int fFirstShow, IVsWindowFrame pFrame) { if (fFirstShow != 0) { if (pFrame != null) { var frameWrapper = new EntityDesignFrameWrapper(pFrame); if (frameWrapper.IsEscherDocInXmlEditor) { // we have an EDMX file that is being opened in the XML editor so we want to validate // so users can fix up safe-mode errors or even non-safe mode errors VisualStudioEdmxValidator.LoadAndValidateFiles(frameWrapper.Uri); } } } return NativeMethods.S_OK; }