示例#1
0
        protected override void OnDestroyed()
        {
            if (viewContents != null)
            {
                foreach (BaseViewContent sv in SubViewContents)
                {
                    sv.Dispose();
                }
                viewContents = null;
            }

            if (content != null)
            {
                content.ContentNameChanged -= SetTitleEvent;
                content.DirtyChanged       -= HandleDirtyChanged;
                content.WorkbenchWindow     = null;
                content.Dispose();
                content = null;
            }

            if (subViewToolbar != null)
            {
                subViewToolbar.Dispose();
                subViewToolbar = null;
            }

            DetachFromPathedDocument();
            commandHandler   = null;
            document         = null;
            extensionContext = null;
            base.OnDestroyed();
        }
示例#2
0
        protected override void OnDestroyed()
        {
            if (present_timeout != 0)
            {
                GLib.Source.Remove(present_timeout);
            }

            base.OnDestroyed();
            if (viewContents != null)
            {
                foreach (IAttachableViewContent sv in SubViewContents)
                {
                    sv.Dispose();
                }
                viewContents = null;
            }

            if (content != null)
            {
                content.ContentNameChanged -= new EventHandler(SetTitleEvent);
                content.DirtyChanged       -= HandleDirtyChanged;
                content.BeforeSave         -= new EventHandler(BeforeSave);
                content.ContentChanged     -= new EventHandler(OnContentChanged);
                content.WorkbenchWindow     = null;
                content.Dispose();
                content = null;
            }

            if (subViewToolbar != null)
            {
                subViewToolbar.Dispose();
                subViewToolbar = null;
            }
        }