// Must be overridden if nulls will be inserted into items; when real item is needed,
        // this is called to create it.
        // Todo JohnT: can't just use m_items[i] once previous slices may have been
        // expanded. (Doesn't matter if we make them all to start with...)
        public override Slice MakeEditorAt(int i)
        {
            CheckDisposed();
            IConcSliceInfo csi = (IConcSliceInfo)m_items[i];
            ViewSlice      vs  = new ConcSlice(new ConcView(csi));

            if (csi.Count > 0)
            {
                vs.Expansion = DataTree.TreeItemState.ktisCollapsed;
            }
            Set <Slice> newKids = new Set <Slice>(1);

            newKids.Add(vs);
            InsertSliceRange(i, newKids);
            return(vs);
        }
Beispiel #2
0
            /// <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;
                }

                if (disposing)
                {
                    // Dispose managed resources here.
                }

                // Dispose unmanaged resources here, whether disposing is true or false.
                m_info = null;

                base.Dispose(disposing);
            }
            public override Slice BecomeReal(int index)
            {
                CheckDisposed();
                // Figure position relative to parent node
                int parentIndex = index - 1;

                while (ContainingDataTree.Slices[parentIndex] != m_csParent)
                {
                    parentIndex -= 1;
                }
                int            childIndex = index - parentIndex - 1;      // relative to parent
                IConcSliceInfo csi        = (IConcSliceInfo)m_csParent.SliceInfo.ChildAt(childIndex);
                ViewSlice      vs         = new ConcSlice(new ConcView(csi));

                vs.Indent = this.Indent;
                if (csi.Count > 0)
                {
                    vs.Expansion = DataTree.TreeItemState.ktisCollapsed;
                }

                ContainingDataTree.RawSetSlice(index, vs);
                return(vs);
            }
 public ConcView(IConcSliceInfo info)
 {
     m_info = info;
 }
 public SummaryVc(IConcSliceInfo info)
 {
     m_info = info;
 }
 public ContextVc(IConcSliceInfo info)
 {
     m_info = info;
 }
Beispiel #7
0
			public ConcView(IConcSliceInfo info)
			{
				m_info = info;
			}
Beispiel #8
0
			/// <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;

				if (disposing)
				{
					// Dispose managed resources here.
				}

				// Dispose unmanaged resources here, whether disposing is true or false.
				m_info = null;

				base.Dispose(disposing);
			}
Beispiel #9
0
			public SummaryVc(IConcSliceInfo info)
			{
				m_info = info;
			}
Beispiel #10
0
			public ContextVc(IConcSliceInfo info)
			{
				m_info = info;
			}