Ejemplo n.º 1
0
            public object Deserialize(object o, Altaxo.Serialization.Xml.IXmlDeserializationInfo info, object parent)
            {
                XYZMeshedColumnPlotData s = null != o ? (XYZMeshedColumnPlotData)o : new XYZMeshedColumnPlotData();

                var _xColumn = (IReadableColumnProxy)info.GetValue("XColumn", s);
                var _yColumn = (IReadableColumnProxy)info.GetValue("YColumn", s);

                int count        = info.OpenArray();
                var _dataColumns = new IReadableColumnProxy[count];

                for (int i = 0; i < count; i++)
                {
                    _dataColumns[i] = (IReadableColumnProxy)info.GetValue("e", s);
                }
                info.CloseArray(count);

#pragma warning disable 618
                s._matrixProxy = new DataTableMatrixProxy(_xColumn, _yColumn, _dataColumns);
#pragma warning restore 618

                s._xBoundaries = (IPhysicalBoundaries)info.GetValue("XBoundaries", s);
                s._yBoundaries = (IPhysicalBoundaries)info.GetValue("YBoundaries", s);
                s._vBoundaries = (IPhysicalBoundaries)info.GetValue("VBoundaries", s);

                s._matrixProxy.ParentObject = s;
                s._xBoundaries.ParentObject = s;
                s._yBoundaries.ParentObject = s;
                s._vBoundaries.ParentObject = s;

                s._isCachedDataValid = false;

                return(s);
            }
Ejemplo n.º 2
0
 protected override IEnumerable <DocumentNodeAndName> GetDocumentNodeChildrenWithName()
 {
     if (null != _columnProxy)
     {
         yield return(new DocumentNodeAndName(_columnProxy, () => _columnProxy = null, "Column"));
     }
 }
 /// <summary>
 /// Sets the data column proxy and creates the necessary event links.
 /// </summary>
 /// <param name="proxy"></param>
 protected void InternalSetDataColumnProxy(IReadableColumnProxy proxy)
 {
     if (ChildSetMember(ref _dataColumnProxy, proxy))
     {
         EhChildChanged(_dataColumnProxy, EventArgs.Empty);
     }
 }
Ejemplo n.º 4
0
 public RangeOfNumericalValues()
 {
     _lowerValue       = 0;
     _isLowerInclusive = true;
     _upperValue       = 1;
     _isUpperInclusive = true;
     _columnProxy      = null;
 }
Ejemplo n.º 5
0
 /// <summary>
 /// Adds a data column proxy to the data column collection without cloning it (i.e. the proxy is directly added).
 /// </summary>
 /// <param name="info">The bundle to which to add the column proxy.</param>
 /// <param name="proxy">The proxy.</param>
 private void InternalAddDataColumnNoClone(ColumnBundleInfo info, IReadableColumnProxy proxy)
 {
     if (null != proxy)
     {
         info.DataColumns.Add(proxy);
         proxy.ParentObject = this;
     }
 }
Ejemplo n.º 6
0
		public RangeOfNumericalValues()
		{
			_lowerValue = 0;
			_isLowerInclusive = true;
			_upperValue = 1;
			_isUpperInclusive = true;
			_columnProxy = null;
		}
Ejemplo n.º 7
0
            public void EhDeserializationFinished(Altaxo.Serialization.Xml.IXmlDeserializationInfo info, Main.IDocumentNode documentRoot, bool isFinallyCall)
            {
                bool bAllResolved = true;

                if (_xColumnPath != null)
                {
                    object xColumn = Main.AbsoluteDocumentPath.GetObject(_xColumnPath, _plotAssociation, documentRoot);
                    bAllResolved &= (null != xColumn);
                    if (xColumn is Altaxo.Data.INumericColumn)
                    {
                        _xColumnPath  = null;
                        _xColumnProxy = ReadableColumnProxyBase.FromColumn((Altaxo.Data.INumericColumn)xColumn);
                    }
                }

                if (_yColumnPath != null)
                {
                    object yColumn = Main.AbsoluteDocumentPath.GetObject(_yColumnPath, _plotAssociation, documentRoot);
                    bAllResolved &= (null != yColumn);
                    if (yColumn is Altaxo.Data.INumericColumn)
                    {
                        _yColumnPath  = null;
                        _yColumnProxy = ReadableColumnProxyBase.FromColumn((Altaxo.Data.INumericColumn)yColumn);
                    }
                }

                for (int i = 0; i < _vColumnPaths.Length; i++)
                {
                    if (_vColumnPaths[i] != null)
                    {
                        object vColumn = Main.AbsoluteDocumentPath.GetObject(_vColumnPaths[i], _plotAssociation, documentRoot);
                        bAllResolved &= (null != vColumn);
                        if (vColumn is Altaxo.Data.IReadableColumn)
                        {
                            _vColumnPaths[i]   = null;
                            _vColumnProxies[i] = ReadableColumnProxyBase.FromColumn((Altaxo.Data.IReadableColumn)vColumn);
                        }
                    }
                }

                if (bAllResolved || isFinallyCall)
                {
                    info.DeserializationFinished -= new Altaxo.Serialization.Xml.XmlDeserializationCallbackEventHandler(EhDeserializationFinished);
#pragma warning disable 618
                    _plotAssociation._matrixProxy = new DataTableMatrixProxy(_xColumnProxy, _yColumnProxy, _vColumnProxies)
                    {
                        ParentObject = _plotAssociation
                    };
#pragma warning restore 618
                }
            }
Ejemplo n.º 8
0
        private DataColumn GetColumnInOtherTable(DataTable table, int groupNumber, IReadableColumnProxy proxyTemplate)
        {
            var oldColumn = (DataColumn)proxyTemplate.Document;

            if (null != oldColumn)
            {
                // first by name, then by position

                var        parentColl = DataColumnCollection.GetParentDataColumnCollectionOf(oldColumn);
                var        oldName    = parentColl.GetColumnName(oldColumn);
                var        oldPos     = parentColl.GetColumnNumber(oldColumn);
                DataColumn newCol     = null;

                if (table.DataColumns.ContainsColumn(oldName))
                {
                    newCol = table.DataColumns[oldName];
                }
                else if (oldPos < table.DataColumns.ColumnCount)
                {
                    newCol = table.DataColumns[oldPos];
                }

                if (null != newCol && table.DataColumns.GetColumnGroup(newCol) == groupNumber)
                {
                    return(newCol);
                }
            }
            else // no document available, try it with the path name
            {
                var        documentPath = proxyTemplate.DocumentPath;
                var        oldName      = documentPath.LastPart;
                DataColumn newCol       = null;

                if (table.DataColumns.ContainsColumn(oldName))
                {
                    newCol = table.DataColumns[oldName];
                }

                if (null != newCol && table.DataColumns.GetColumnGroup(newCol) == groupNumber)
                {
                    return(newCol);
                }
            }

            return(null);
        }
Ejemplo n.º 9
0
		protected override IEnumerable<DocumentNodeAndName> GetDocumentNodeChildrenWithName()
		{
			if (null != _columnProxy)
				yield return new DocumentNodeAndName(_columnProxy, () => _columnProxy = null, "Column");
		}
Ejemplo n.º 10
0
		private void InternalReallocIndependentVariables(int noIndep)
		{
			var oldArr = this._independentVariables;
			var newArr = new IReadableColumnProxy[noIndep];
			for (int i = Math.Min(newArr.Length, oldArr.Length) - 1; i >= 0; i--)
				newArr[i] = oldArr[i];

			this._independentVariables = newArr;
		}
Ejemplo n.º 11
0
		/// <summary>
		/// Adds a data column proxy to the data column collection without cloning it (i.e. the proxy is directly added).
		/// </summary>
		/// <param name="info">The bundle to which to add the column proxy.</param>
		/// <param name="proxy">The proxy.</param>
		private void InternalAddDataColumnNoClone(ColumnBundleInfo info, IReadableColumnProxy proxy)
		{
			if (null != proxy)
			{
				info.DataColumns.Add(proxy);
				proxy.ParentObject = this;
			}
		}
Ejemplo n.º 12
0
		/// <summary>
		/// Deserialization constructor. Initializes a new instance of the <see cref="RangeOfNumericalValues"/> class.
		/// </summary>
		/// <param name="info">The deserialization information.</param>
		/// <param name="lower">The lower.</param>
		/// <param name="isLowerInclusive">if set to <c>true</c> [is lower inclusive].</param>
		/// <param name="upper">The upper.</param>
		/// <param name="isUpperInclusive">if set to <c>true</c> [is upper inclusive].</param>
		/// <param name="columnProxy">The column.</param>
		protected RangeOfNumericalValues(Altaxo.Serialization.Xml.IXmlDeserializationInfo info, double lower, bool isLowerInclusive, double upper, bool isUpperInclusive, IReadableColumnProxy columnProxy)
		{
			_lowerValue = lower;
			_isLowerInclusive = isLowerInclusive;
			_upperValue = upper;
			_isUpperInclusive = isUpperInclusive;
			ChildSetMember(ref _columnProxy, columnProxy);
		}
		/// <summary>
		/// Sets the data column proxy and creates the necessary event links.
		/// </summary>
		/// <param name="proxy"></param>
		protected void InternalSetDataColumnProxy(IReadableColumnProxy proxy)
		{
			if (ChildSetMember(ref _dataColumnProxy, proxy))
				EhChildChanged(_dataColumnProxy, EventArgs.Empty);
		}
Ejemplo n.º 14
0
 public IncludeSingleTextValue()
 {
     _value       = string.Empty;
     _columnProxy = null;
 }
Ejemplo n.º 15
0
		/// <summary>
		/// Deserialization constructor
		/// </summary>
		/// <param name="info">The information.</param>
		public ErrorBarYPlotStyle(Altaxo.Serialization.Xml.IXmlDeserializationInfo info, IReadableColumnProxy posErrorColumn, IReadableColumnProxy negErrorColumn) : base(info, posErrorColumn, negErrorColumn)
		{
		}
Ejemplo n.º 16
0
 /// <summary>
 /// Deserialization constructor. Initializes a new instance of the <see cref="IncludeSingleNumericalValue"/> class.
 /// </summary>
 /// <param name="info">The deserialization information.</param>
 /// <param name="value">The numerical value.</param>
 /// <param name="columnProxy">The column.</param>
 protected IncludeSingleNumericalValue(Altaxo.Serialization.Xml.IXmlDeserializationInfo info, double value, IReadableColumnProxy columnProxy)
 {
     _value = value;
     ChildSetMember(ref _columnProxy, columnProxy);
 }
Ejemplo n.º 17
0
 /// <summary>
 /// Deserialization constructor. Initializes a new instance of the <see cref="IncludeTextContains"/> class.
 /// </summary>
 /// <param name="info">The deserialization information.</param>
 /// <param name="value">The numerical value.</param>
 /// <param name="ignoreCase">If true, string comparison is done case-insensitive.</param>
 /// <param name="columnProxy">The column.</param>
 protected IncludeTextContains(Altaxo.Serialization.Xml.IXmlDeserializationInfo info, string value, bool ignoreCase, IReadableColumnProxy columnProxy)
 {
     _value      = value;
     _ignoreCase = ignoreCase;
     ChildSetMember(ref _columnProxy, columnProxy);
 }
Ejemplo n.º 18
0
		protected ErrorBarPlotStyle(Altaxo.Serialization.Xml.IXmlDeserializationInfo info, IReadableColumnProxy posColumnProxy, IReadableColumnProxy negColumnProxy)
		{
			ChildSetMember(ref _positiveErrorColumn, posColumnProxy);
			ChildSetMember(ref _negativeErrorColumn, negColumnProxy);
			_useCommonErrorColumn = null == negColumnProxy;
		}
Ejemplo n.º 19
0
			public void EhDeserializationFinished(Altaxo.Serialization.Xml.IXmlDeserializationInfo info, Main.IDocumentNode documentRoot, bool isFinallyCall)
			{
				bool bAllResolved = true;

				if (this._xColumnPath != null)
				{
					object xColumn = Main.AbsoluteDocumentPath.GetObject(this._xColumnPath, this._plotAssociation, documentRoot);
					bAllResolved &= (null != xColumn);
					if (xColumn is Altaxo.Data.INumericColumn)
					{
						this._xColumnPath = null;
						this._xColumnProxy = ReadableColumnProxyBase.FromColumn((Altaxo.Data.INumericColumn)xColumn);
					}
				}

				if (this._yColumnPath != null)
				{
					object yColumn = Main.AbsoluteDocumentPath.GetObject(this._yColumnPath, this._plotAssociation, documentRoot);
					bAllResolved &= (null != yColumn);
					if (yColumn is Altaxo.Data.INumericColumn)
					{
						this._yColumnPath = null;
						this._yColumnProxy = ReadableColumnProxyBase.FromColumn((Altaxo.Data.INumericColumn)yColumn);
					}
				}

				for (int i = 0; i < this._vColumnPaths.Length; i++)
				{
					if (this._vColumnPaths[i] != null)
					{
						object vColumn = Main.AbsoluteDocumentPath.GetObject(this._vColumnPaths[i], this._plotAssociation, documentRoot);
						bAllResolved &= (null != vColumn);
						if (vColumn is Altaxo.Data.IReadableColumn)
						{
							this._vColumnPaths[i] = null;
							this._vColumnProxies[i] = ReadableColumnProxyBase.FromColumn((Altaxo.Data.IReadableColumn)vColumn);
						}
					}
				}

				if (bAllResolved || isFinallyCall)
				{
					info.DeserializationFinished -= new Altaxo.Serialization.Xml.XmlDeserializationCallbackEventHandler(this.EhDeserializationFinished);
#pragma warning disable 618
					_plotAssociation._matrixProxy = new DataTableMatrixProxy(_xColumnProxy, _yColumnProxy, _vColumnProxies) { ParentObject = _plotAssociation };
#pragma warning restore 618
				}
			}
Ejemplo n.º 20
0
		/// <summary>
		/// Sets the data column proxy and creates the necessary event links.
		/// </summary>
		/// <param name="proxy"></param>
		protected void InternalSetDataColumnProxy(IReadableColumnProxy proxy)
		{
			ChildSetMember(ref _dataColumnProxy, proxy);
		}
Ejemplo n.º 21
0
 public IncludeTextStartsWith()
 {
     _value       = string.Empty;
     _columnProxy = null;
 }
Ejemplo n.º 22
0
			public object Deserialize(object o, Altaxo.Serialization.Xml.IXmlDeserializationInfo info, object parent)
			{
				XYZMeshedColumnPlotData s = null != o ? (XYZMeshedColumnPlotData)o : new XYZMeshedColumnPlotData();

				var _xColumn = (IReadableColumnProxy)info.GetValue("XColumn", s);
				var _yColumn = (IReadableColumnProxy)info.GetValue("YColumn", s);

				int count = info.OpenArray();
				var _dataColumns = new IReadableColumnProxy[count];
				for (int i = 0; i < count; i++)
				{
					_dataColumns[i] = (IReadableColumnProxy)info.GetValue("e", s);
				}
				info.CloseArray(count);

#pragma warning disable 618
				s._matrixProxy = new DataTableMatrixProxy(_xColumn, _yColumn, _dataColumns);
#pragma warning restore 618

				s._xBoundaries = (IPhysicalBoundaries)info.GetValue("XBoundaries", s);
				s._yBoundaries = (IPhysicalBoundaries)info.GetValue("YBoundaries", s);
				s._vBoundaries = (IPhysicalBoundaries)info.GetValue("VBoundaries", s);

				s._matrixProxy.ParentObject = s;
				s._xBoundaries.ParentObject = s;
				s._yBoundaries.ParentObject = s;
				s._vBoundaries.ParentObject = s;

				s._isCachedDataValid = false;

				return s;
			}
Ejemplo n.º 23
0
		private void InternalReallocDependentVariables(int noDep)
		{
			{
				var oldArr = this._dependentVariables;
				var newArr = new IReadableColumnProxy[noDep];
				for (int i = Math.Min(newArr.Length, oldArr.Length) - 1; i >= 0; i--)
					newArr[i] = oldArr[i];
				this._dependentVariables = newArr;
			}
			{
				// do the same also with the error scaling

				IVarianceScaling[] oldArr = _errorEvaluation;
				IVarianceScaling[] newArr = new IVarianceScaling[noDep];
				for (int i = Math.Min(newArr.Length, oldArr.Length) - 1; i >= 0; i--)
					newArr[i] = oldArr[i];
				this._errorEvaluation = newArr;
			}
		}
Ejemplo n.º 24
0
 public IncludeTextContains()
 {
     _value       = string.Empty;
     _columnProxy = null;
 }
Ejemplo n.º 25
0
 public IncludeSingleNumericalValue()
 {
     _value       = 0;
     _columnProxy = null;
 }
Ejemplo n.º 26
0
 /// <summary>
 /// Sets the data column proxy and creates the necessary event links.
 /// </summary>
 /// <param name="proxy"></param>
 protected void InternalSetDataColumnProxy(IReadableColumnProxy proxy)
 {
     ChildSetMember(ref _dataColumnProxy, proxy);
 }
Ejemplo n.º 27
0
 /// <summary>
 /// Deserialization constructor. Initializes a new instance of the <see cref="RangeOfNumericalValues"/> class.
 /// </summary>
 /// <param name="info">The deserialization information.</param>
 /// <param name="lower">The lower.</param>
 /// <param name="isLowerInclusive">if set to <c>true</c> [is lower inclusive].</param>
 /// <param name="upper">The upper.</param>
 /// <param name="isUpperInclusive">if set to <c>true</c> [is upper inclusive].</param>
 /// <param name="columnProxy">The column.</param>
 protected RangeOfNumericalValues(Altaxo.Serialization.Xml.IXmlDeserializationInfo info, double lower, bool isLowerInclusive, double upper, bool isUpperInclusive, IReadableColumnProxy columnProxy)
 {
     _lowerValue       = lower;
     _isLowerInclusive = isLowerInclusive;
     _upperValue       = upper;
     _isUpperInclusive = isUpperInclusive;
     ChildSetMember(ref _columnProxy, columnProxy);
 }