public override void MakeRoot() { CheckDisposed(); base.MakeRoot(); if (DesignMode) { return; } // Review JohnT: why doesn't the base class do this?? m_rootb = VwRootBoxClass.Create(); m_rootb.SetSite(this); m_sda = new GhostDaDecorator(m_fdoCache.DomainDataByFlid as ISilDataAccessManaged, m_fdoCache.TsStrFactory.EmptyString(m_wsToCreate), (int)m_clidDst); m_rootb.DataAccess = m_sda; m_vc = new GhostStringSliceVc(); // arg1 is a meaningless root HVO, since this VC only displays one dummy property and gets it from the ghostDA, // which ignores the HVO. // arg3 is a meaningless initial fragment, since this VC only displays one thing. m_rootb.SetRootObject(GhostStringSlice.khvoFake, m_vc, 1, m_styleSheet); }
/// <summary> /// Executes in two distinct scenarios. /// /// 1. If disposing is true, the method has been called directly /// or indirectly by a user's code via the Dispose method. /// Both managed and unmanaged resources can be disposed. /// /// 2. If disposing is false, the method has been called by the /// runtime from inside the finalizer and you should not reference (access) /// other managed objects, as they already have been garbage collected. /// Only unmanaged resources can be disposed. /// </summary> /// <param name="disposing"></param> /// <remarks> /// If any exceptions are thrown, that is fine. /// If the method is being done in a finalizer, it will be ignored. /// If it is thrown by client code calling Dispose, /// it needs to be handled by fixing the bug. /// /// If subclasses override this method, they should call the base implementation. /// </remarks> protected override void Dispose(bool disposing) { //Debug.WriteLineIf(!disposing, "****************** " + GetType().Name + " 'disposing' is false. ******************"); // Must not be run more than once. if (IsDisposed) { return; } base.Dispose(disposing); if (disposing) { // Dispose managed resources here. } // Dispose unmanaged resources here, whether disposing is true or false. m_vc = null; }
public override void MakeRoot() { CheckDisposed(); base.MakeRoot(); if (DesignMode) { return; } m_fdoCache.CreateDummyID(out m_hvoRoot); // Pretend it is of our expected destination class. Very few things should care about this, // but it allows IsValidObject to return true for it, which is important when reconstructing // the root box, as happens during Refresh. m_fdoCache.VwCacheDaAccessor.CacheIntProp(m_hvoRoot, (int)CmObjectFields.kflidCmObject_Class, (int)m_clidDst); // Review JohnT: why doesn't the base class do this?? m_rootb = VwRootBoxClass.Create(); m_rootb.SetSite(this); m_sda = m_fdoCache.MainCacheAccessor; IVwCacheDa cda = m_sda as IVwCacheDa; IVwVirtualHandler vh = cda.GetVirtualHandlerName(GhostStringVirtualHandler.GhostClassName, GhostStringVirtualHandler.FieldNameForWs(m_wsToCreate)); if (vh == null) { vh = new GhostStringVirtualHandler(m_wsToCreate); cda.InstallVirtual(vh); } m_flidGhost = vh.Tag; m_rootb.DataAccess = m_sda; m_vc = new GhostStringSliceVc(m_flidGhost); // arg3 is a meaningless initial fragment, since this VC only displays one thing. m_rootb.SetRootObject(m_hvoRoot, m_vc, 1, m_styleSheet); }
public override void MakeRoot() { CheckDisposed(); if (m_cache == null || DesignMode) { return; } base.MakeRoot(); m_sda = new GhostDaDecorator(m_cache.DomainDataByFlid as ISilDataAccessManaged, TsStringUtils.EmptyString(m_wsToCreate), m_clidDst); m_rootb.DataAccess = m_sda; m_vc = new GhostStringSliceVc(); // arg1 is a meaningless root HVO, since this VC only displays one dummy property and gets it from the ghostDA, // which ignores the HVO. // arg3 is a meaningless initial fragment, since this VC only displays one thing. m_rootb.SetRootObject(khvoFake, m_vc, 1, m_styleSheet); }
public override void MakeRoot() { CheckDisposed(); base.MakeRoot(); if (DesignMode) return; m_fdoCache.CreateDummyID(out m_hvoRoot); // Pretend it is of our expected destination class. Very few things should care about this, // but it allows IsValidObject to return true for it, which is important when reconstructing // the root box, as happens during Refresh. m_fdoCache.VwCacheDaAccessor.CacheIntProp(m_hvoRoot, (int)CmObjectFields.kflidCmObject_Class, (int)m_clidDst); // Review JohnT: why doesn't the base class do this?? m_rootb = VwRootBoxClass.Create(); m_rootb.SetSite(this); m_sda = m_fdoCache.MainCacheAccessor; IVwCacheDa cda = m_sda as IVwCacheDa; IVwVirtualHandler vh = cda.GetVirtualHandlerName(GhostStringVirtualHandler.GhostClassName, GhostStringVirtualHandler.FieldNameForWs(m_wsToCreate)); if (vh == null) { vh = new GhostStringVirtualHandler(m_wsToCreate); cda.InstallVirtual(vh); } m_flidGhost = vh.Tag; m_rootb.DataAccess = m_sda; m_vc = new GhostStringSliceVc(m_flidGhost); // arg3 is a meaningless initial fragment, since this VC only displays one thing. m_rootb.SetRootObject(m_hvoRoot, m_vc, 1, m_styleSheet); }
/// <summary> /// Executes in two distinct scenarios. /// /// 1. If disposing is true, the method has been called directly /// or indirectly by a user's code via the Dispose method. /// Both managed and unmanaged resources can be disposed. /// /// 2. If disposing is false, the method has been called by the /// runtime from inside the finalizer and you should not reference (access) /// other managed objects, as they already have been garbage collected. /// Only unmanaged resources can be disposed. /// </summary> /// <param name="disposing"></param> /// <remarks> /// If any exceptions are thrown, that is fine. /// If the method is being done in a finalizer, it will be ignored. /// If it is thrown by client code calling Dispose, /// it needs to be handled by fixing the bug. /// /// If subclasses override this method, they should call the base implementation. /// </remarks> protected override void Dispose(bool disposing) { //Debug.WriteLineIf(!disposing, "****************** " + GetType().Name + " 'disposing' is false. ******************"); // Must not be run more than once. if (IsDisposed) return; base.Dispose(disposing); if (disposing) { // Dispose managed resources here. if (m_vc != null) m_vc.Dispose(); } // Dispose unmanaged resources here, whether disposing is true or false. m_vc = null; }
public override void MakeRoot() { CheckDisposed(); base.MakeRoot(); if (DesignMode) return; // Review JohnT: why doesn't the base class do this?? m_rootb = VwRootBoxClass.Create(); m_rootb.SetSite(this); m_sda = new GhostDaDecorator(m_fdoCache.DomainDataByFlid as ISilDataAccessManaged, m_fdoCache.TsStrFactory.EmptyString(m_wsToCreate), (int)m_clidDst); m_rootb.DataAccess = m_sda; m_vc = new GhostStringSliceVc(); // arg1 is a meaningless root HVO, since this VC only displays one dummy property and gets it from the ghostDA, // which ignores the HVO. // arg3 is a meaningless initial fragment, since this VC only displays one thing. m_rootb.SetRootObject(GhostStringSlice.khvoFake, m_vc, 1, m_styleSheet); }