示例#1
0
        public override void saveTo(BinaryWriter writer, PersistContext ctx)
        {
            base.saveTo(writer, ctx);
            ctx.saveReference(this, selectedItems, 1);
            ctx.saveReference(this, selectedBoxes, 2);
            ctx.saveReference(this, selectedTables, 3);
            ctx.saveReference(this, selectedArrows, 4);

            writer.Write((int)style);

            // new in file format 12
            ctx.saveReference(this, selectedHosts, 5);
        }
示例#2
0
 public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
 {
     writer.Write(List.Count);
     for (int i = 0; i < List.Count; ++i)
     {
         ctx.saveReference(this, (ChartObject)List[i], i);
     }
 }
示例#3
0
        public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
        {
            ctx.saveReference(this, node, 1);
            writer.Write((int)type);
            writer.Write(attData);

            // in format revision 28 'percents' changed from Rectangle to RectangleF
            ctx.saveRect(percents);
        }
示例#4
0
        public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
        {
            ctx.saveReference(this, arrow, 1);
            writer.Write(incoming);

            // in format revision 22 these become float:
            writer.Write(relativePosition.X);
            writer.Write(relativePosition.Y);
        }
示例#5
0
		public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			ctx.saveReference(this, node, 1);
			writer.Write((int)type);
			writer.Write(attData);

			// in format revision 28 'percents' changed from Rectangle to RectangleF
			ctx.saveRect(percents);
		}
示例#6
0
        public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
        {
            ctx.saveRect(rect);
            writer.Write(constructed);
            writer.Write(locked);
            writer.Write(zIndex);
            writer.Write((int)penDashStyle);
            writer.Write((double)penWidth);
            writer.Write((double)shadowOffsetX);
            writer.Write((double)shadowOffsetY);
            writer.Write(invisible);
            writer.Write(selected);

            bool tagSerializable = false;

            if (tag != null)
            {
                tagSerializable = tag.GetType().IsSerializable;
            }
            writer.Write(tagSerializable);

            if (tagSerializable)
            {
                ctx.saveTag(tag);
            }

            ctx.saveFont(Font);
            writer.Write(toolTip);

            ctx.saveReference(this, subordinateGroup, 100);
            ctx.saveReference(this, masterGroup, 101);

            // new in file format 10
            ctx.saveColor(shadowColor);
            writer.Write(ignoreLayout);

            // new in file format 15
            writer.Write(printable);

            // new in file format 16
            writer.Write(weight);
        }
示例#7
0
 public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
 {
     ctx.saveReference(this, _brush, 1);
     ctx.saveColor(_color);
     ctx.saveFloatArray(_compoundArray);
     writer.Write((int)_dashStyle);
     ctx.saveFloatArray(_dashPattern);
     writer.Write((double)_dashOffset);
     writer.Write((double)_width);
     writer.Write((int)_lineJoin);
     writer.Write((double)_miterLimit);
 }
示例#8
0
        public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
        {
            ctx.saveReference(this, prevPoints, 1);
            ctx.saveRect(prevRect);
            writer.Write(attachments.Count);
            for (int i = 0; i < attachments.Count; ++i)
            {
                Attachment atch = (Attachment)attachments[i];
                ctx.saveObject(atch);
            }
            ctx.saveReference(this, mainObj, 2);

            writer.Write(visible);

            bool tagSerializable = false;

            if (tag != null)
            {
                tagSerializable = tag.GetType().IsSerializable;
            }
            writer.Write(tagSerializable);

            if (tagSerializable)
            {
                ctx.saveTag(tag);
            }

            // new in save format 17
            writer.Write(autoDeleteItems);

            // new in save format 21
            writer.Write(expandable);

            // new in save format 22
            writer.Write(followMasterRotation);
        }
示例#9
0
 public override void saveTo(BinaryWriter writer, PersistContext ctx)
 {
     base.saveTo(writer, ctx);
     ctx.saveReference(this, table, 2);
     writer.Write(row);
 }
示例#10
0
		public override void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			base.saveTo(writer, ctx);
			ctx.saveReference(this, selectedItems, 1);
			ctx.saveReference(this, selectedBoxes, 2);
			ctx.saveReference(this, selectedTables, 3);
			ctx.saveReference(this, selectedArrows, 4);

			writer.Write((int)style);

			// new in file format 12
			ctx.saveReference(this, selectedHosts, 5);
		}
示例#11
0
			public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
			{
				writer.Write(InnerList.Count);
				for (int i = 0; i < InnerList.Count; ++i)
				{
					ctx.saveReference(this, (Cell)InnerList[i], i);
				}
			}
示例#12
0
		public override void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			base.saveTo(writer, ctx);

			ctx.saveReference(this, cells, 1);
			ctx.saveReference(this, rowsList, 2);
			ctx.saveReference(this, colsList, 3);
			writer.Write(currScrollRow);
			writer.Write(scrollable);
			ctx.saveColor(fillColor);
			ctx.saveColor(frameColor);
			writer.Write(caption);
			ctx.saveColor(captionColor);
			ctx.saveStringFormat(captionFormat);

			writer.Write((double)captionHeight);
			writer.Write((int)cellBorders);
			writer.Write(rowsCount);
			writer.Write((double)rowHeight);
			writer.Write(columnsCount);
			writer.Write((double)columnWidth);
			ctx.saveColor(textColor);
			writer.Write((int)picturePos);

			ctx.saveImage(picture);

			ctx.saveObject(pen);
			ctx.saveReference(this, brush, 4);

			writer.Write((int)selStyle);

			// new in save format 6
			ctx.saveAnchorPattern(rowAnchorPattern);
			writer.Write((long)enabledHandles);
			writer.Write((int)Style);

			// new in file format 8
			writer.Write((int)linkStyle);

			// new in file format 9
			ctx.saveAnchorPattern(anchorPattern);

			ctx.saveReference(this, incomingArrows, 5);
			ctx.saveReference(this, outgoingArrows, 6);

			// new in save format 14
			writer.Write(Expanded);
			writer.Write(Expandable);
			writer.Write(useStyledText);

			// new in save format 19
			writer.Write((int)customDraw);
			writer.Write((int)cellCustomDraw);

			// new in save format 22
			writer.Write(offsetHeaderRows);

			// new in save format 25
			ctx.saveReference(this, captionBackBrush, 7);
		}
示例#13
0
 public override void saveTo(BinaryWriter writer, PersistContext ctx)
 {
     base.saveTo(writer, ctx);
     ctx.saveReference(this, host, 2);
 }
示例#14
0
文件: GDI.cs 项目: ChrisMoreton/Test3
		public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			ctx.saveReference(this, _brush, 1);
			ctx.saveColor(_color);
			ctx.saveFloatArray(_compoundArray);
			writer.Write((int)_dashStyle);
			ctx.saveFloatArray(_dashPattern);
			writer.Write((double)_dashOffset);
			writer.Write((double)_width);
			writer.Write((int)_lineJoin);
			writer.Write((double)_miterLimit);
		}
示例#15
0
		public override void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			base.saveTo(writer, ctx);

			writer.Write((int)style);
			ctx.saveColor(penColor);
			ctx.saveReference(this, orgnLink, 1);
			ctx.saveReference(this, destLink, 2);
			writer.Write(segmentCount);
			writer.Write(text);
			ctx.saveColor(textColor);
			writer.Write((int)arrowHead);
			writer.Write((int)arrowBase);
			writer.Write((int)arrowInterm);
			writer.Write((double)headSize);
			writer.Write((double)baseSize);
			writer.Write((double)intermSize);
			ctx.saveColor(fillColor);
			writer.Write(dynamic);
			writer.Write((int)cascadeOrientation);
			writer.Write(cascadeStartHorizontal);
			writer.Write(reflexive);
			ctx.saveReference(this, points, 3);
			ctx.saveReference(this, null, 4);

			ctx.saveObject(pen);
			ctx.saveReference(this, brush, 5);

			// new in file format 5
			writer.Write(allowMoveStart);
			writer.Write(allowMoveEnd);
			writer.Write(orgnAnchor);
			writer.Write(destAnchor);

			// new in file format 8
			writer.Write(autoRoute);
			writer.Write(retainForm);
			writer.Write((int)textStyle);

			// new in file format 10
			ctx.saveObject(headPen);

			// new in file format 17
			writer.Write((int)customDraw);

			// new in file format 20
			writer.Write(snapToNodeBorder);
			writer.Write((int)selStyle);

			// new in file format 26
			writer.Write(hyperLink);

			// new in file format 29
			writer.Write(drawCrossings);
		}
示例#16
0
        public override void saveTo(BinaryWriter writer, PersistContext ctx)
        {
            base.saveTo(writer, ctx);

            writer.Write((long)enabledHandles);
            writer.Write((int)ctrlMouseAction);
            ctx.saveReference(this, incomingArrows, 1);
            ctx.saveReference(this, outgoingArrows, 2);

            if (_control != null)
            {
                System.Type type = _control.GetType();

                string assemblyName = type.Assembly.GetName().Name;
                string typeName     = type.FullName;

                writer.Write(true);
                writer.Write(assemblyName);
                writer.Write(typeName);

                // Save control serializable properties
                PropertyInfo[] props = type.GetProperties();
                foreach (PropertyInfo prop in props)
                {
                    // Will not serialize indexed properties
                    ParameterInfo[] iparams = prop.GetIndexParameters();
                    if (iparams == null || iparams.Length > 0)
                    {
                        continue;
                    }
                    if (!prop.CanRead || !prop.CanWrite)
                    {
                        continue;
                    }

                    object val = null;
                    try
                    {
                        val = prop.GetValue(_control, null);
                    }
                    catch
                    {
                        // Some properties cannot be read
                        continue;
                    }
                    if (val == null)
                    {
                        continue;
                    }
                    if (!(val.GetType().IsSerializable))
                    {
                        continue;
                    }
                    if (val is ChartObject)
                    {
                        continue;
                    }

                    writer.Write(true);
                    writer.Write(prop.Name);
                    ctx.saveTag(val);
                }
                writer.Write(false);

                flowChart.fireControlHostSerializing(this, writer);
            }
            else
            {
                writer.Write(false);
            }

            // new in save format 14
            writer.Write(Expanded);
            writer.Write(Expandable);

            // new in save format 22
            writer.Write((int)selStyle);
        }
示例#17
0
		/// <summary>
		/// Saves the flowchart document into a stream
		/// </summary>
		public void SaveToStream(Stream stream, bool clearDirty)
		{
			PersistContext ctx = new PersistContext(stream, this);
			ctx.writeHeader();

			// write properties
			DocInfoVer1 docInfo1 = new DocInfoVer1(this);
			DocInfoVer2 docInfo2 = new DocInfoVer2(this);
			ctx.saveObject(docInfo1);
			ctx.saveObject(docInfo2);

			ctx.saveStringFormat(textFormat);
			ctx.saveFont(Font);
			ctx.saveImage(BackgroundImage);

			// write collections
			ctx.saveObject(zOrder);
			ctx.saveObject(groups);
			ctx.saveObject(selection);

			ctx.saveReference(this, activeObject, 1);

			ctx.saveObject(shapeTemplate);

			Brush.StoreBrushes(new BinaryWriter(stream), ctx);
			ctx.saveObject(boxPen);
			ctx.saveObject(arrowPen);
			ctx.saveObject(tablePen);
			ctx.saveReference(this, boxBrush, 2);
			ctx.saveReference(this, arrowBrush, 3);
			ctx.saveReference(this, tableBrush, 4);

			ctx.writer.Write((int)boxSelStyle);
			ctx.writer.Write((int)tableSelStyle);

			// new in save format 5
			ctx.writer.Write(allowLinksRepeat);

			// new in save format 6
			ctx.writer.Write(PolyTextLayout);
			ctx.writer.Write(ShapeOrientation);

			// new in save format 8
			ctx.writer.Write(routeArrows);
			ctx.writer.Write(arrowsRetainForm);
			ctx.writer.Write((int)arrowTextStyle);
			ctx.writer.Write((int)tableLinkStyle);

			// new in save format 12
			ctx.writer.Write((int)measureUnit);
			ctx.saveRect(docExtentsMin);

			// new in save format 14
			ctx.writer.Write((int)expandBtnPos);

			ctx.writer.Write((int)Orientation.Auto);	// not used anymore
			ctx.writer.Write((int)Orientation.Auto); // not used anymore

			ctx.writer.Write(enableStyledText);
			ctx.writer.Write(usePolyTextLt);
			ctx.saveReference(this, brush, 5);

			// new in save format 17
			ctx.writer.Write(arrowText);
			ctx.writer.Write(boxText);
			ctx.writer.Write((int)arrowCrossings);
			ctx.writer.Write((int)gridStyle);
			ctx.writer.Write(crossRadius);

			// new in save format 20
			ctx.saveReference(this, exteriorBrush, 6);
			ctx.writer.Write(arrowsSnapToBorders);
			ctx.writer.Write((int)arrowSelStyle);

			// new in save format 21
			bool tagSerializable = false;
			if (Tag != null)
				tagSerializable = Tag.GetType().IsSerializable;
			ctx.writer.Write(tagSerializable);

			if (tagSerializable)
				ctx.saveTag(Tag);

			// new in save format 27
			ctx.writer.Write(roundedArrows);
			ctx.writer.Write(roundedArrowsRadius);

			// write the chart objects
			ctx.writeReferencedObjects();

			if (clearDirty)
				Dirty = false;
		}
示例#18
0
		public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			ctx.saveRect(rect);
			writer.Write(constructed);
			writer.Write(locked);
			writer.Write(zIndex);
			writer.Write((int)penDashStyle);
			writer.Write((double)penWidth);
			writer.Write((double)shadowOffsetX);
			writer.Write((double)shadowOffsetY);
			writer.Write(invisible);
			writer.Write(selected);

			bool tagSerializable = false;
			if (tag != null)
				tagSerializable = tag.GetType().IsSerializable;
			writer.Write(tagSerializable);

			if (tagSerializable)
				ctx.saveTag(tag);

			ctx.saveFont(Font);
			writer.Write(toolTip);

			ctx.saveReference(this, subordinateGroup, 100);
			ctx.saveReference(this, masterGroup, 101);

			// new in file format 10
			ctx.saveColor(shadowColor);
			writer.Write(ignoreLayout);

			// new in file format 15
			writer.Write(printable);

			// new in file format 16
			writer.Write(weight);
		}
示例#19
0
		public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			writer.Write(List.Count);
			for (int i = 0; i < List.Count; ++i)
			{
				ctx.saveReference(this, (ChartObject)List[i], i);
			}
		}
示例#20
0
		public override void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			base.saveTo(writer, ctx);
			ctx.saveReference(this, table, 2);
			writer.Write(row);
		}
示例#21
0
			public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
			{
				ctx.saveReference(this, table, 1);
				writer.Write((double)width);
				writer.Write((int)columnStyle);
			}
示例#22
0
		public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			ctx.saveReference(this, prevPoints, 1);
			ctx.saveRect(prevRect);
			writer.Write(attachments.Count);
			for (int i = 0; i < attachments.Count; ++i)
			{
				Attachment atch = (Attachment)attachments[i];
				ctx.saveObject(atch);
			}
			ctx.saveReference(this, mainObj, 2);

			writer.Write(visible);

			bool tagSerializable = false;
			if (tag != null)
				tagSerializable = tag.GetType().IsSerializable;
			writer.Write(tagSerializable);

			if (tagSerializable)
				ctx.saveTag(tag);

			// new in save format 17
			writer.Write(autoDeleteItems);

			// new in save format 21
			writer.Write(expandable);

			// new in save format 22
			writer.Write(followMasterRotation);
		}
示例#23
0
			public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
			{
				writer.Write(text);
				ctx.saveStringFormat(textFormat);
				ctx.saveReference(this, table, 1);

				// new in save format 6
				writer.Write((int)picturePos);
				ctx.saveImage(picture);

				// new in save format 14
				ctx.saveColor(textColor);
				ctx.saveReference(this, brush, 2);

				// new in save format 18
				writer.Write(toolTip);

				// new in save format 19
				writer.Write(hyperLink);

				// new in save format 22
				writer.Write(columnSpan);
				writer.Write(rowSpan);

				bool tagSerializable = false;
				if (tag != null)
					tagSerializable = tag.GetType().IsSerializable;
				writer.Write(tagSerializable);

				if (tagSerializable)
					ctx.saveTag(tag);
			}
示例#24
0
		public override void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			base.saveTo(writer, ctx);
			ctx.saveReference(this, host, 2);
		}
示例#25
0
			public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
			{
				writer.Write((double)height);
				ctx.saveReference(this, table, 1);
				ctx.saveReference(this, incomingArrows, 2);
				ctx.saveReference(this, outgoingArrows, 3);
				ctx.saveReference(this, relatedOneToMany, 4);
				ctx.saveReference(this, relatedManyToOne, 5);

				// new in save format 6
				ctx.saveAnchorPattern(anchorPattern);

				// new in save format 22
				writer.Write(header);
				writer.Write(expanded);
			}
示例#26
0
		public override void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			base.saveTo(writer, ctx);

			writer.Write((long)enabledHandles);
			writer.Write((int)ctrlMouseAction);
			ctx.saveReference(this, incomingArrows, 1);
			ctx.saveReference(this, outgoingArrows, 2);

			if (_control != null)
			{
				System.Type type = _control.GetType();

				string assemblyName = type.Assembly.GetName().Name;
				string typeName = type.FullName;

				writer.Write(true);
				writer.Write(assemblyName);
				writer.Write(typeName);

				// Save control serializable properties
				PropertyInfo[] props = type.GetProperties();
				foreach (PropertyInfo prop in props)
				{
					// Will not serialize indexed properties
					ParameterInfo[] iparams = prop.GetIndexParameters();
					if (iparams == null || iparams.Length > 0)
						continue;
					if (!prop.CanRead || !prop.CanWrite)
						continue;

					object val = null;
					try
					{
						val = prop.GetValue(_control, null);
					}
					catch
					{
						// Some properties cannot be read
						continue;
					}
					if (val == null)
						continue;
					if (!(val.GetType().IsSerializable))
						continue;
					if (val is ChartObject)
						continue;

					writer.Write(true);
					writer.Write(prop.Name);
					ctx.saveTag(val);
				}
				writer.Write(false);

				flowChart.fireControlHostSerializing(this, writer);
			}
			else
			{
				writer.Write(false);
			}

			// new in save format 14
			writer.Write(Expanded);
			writer.Write(Expandable);

			// new in save format 22
			writer.Write((int)selStyle);
		}
示例#27
0
		public virtual void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			ctx.saveReference(this, arrow, 1);
			writer.Write(incoming);

			// in format revision 22 these become float:
			writer.Write(relativePosition.X);
			writer.Write(relativePosition.Y);
		}
示例#28
0
文件: Box.cs 项目: ChrisMoreton/Test3
		public override void saveTo(BinaryWriter writer, PersistContext ctx)
		{
			base.saveTo(writer, ctx);

			writer.Write(Expanded);
			writer.Write(Expandable);
			writer.Write((long)enabledHandles);
			writer.Write((int)style);
			ctx.saveColor(fillColor);
			ctx.saveColor(frameColor);
			writer.Write((int)ImageAlign);
			writer.Write(text);
			ctx.saveColor(textColor);
			ctx.saveStringFormat(textFormat);
			writer.Write(transparent);

			ctx.saveReference(this, incomingArrows, 1);
			ctx.saveReference(this, outgoingArrows, 2);
			writer.Write((int)0/*anchorIncoming*/);
			writer.Write((int)0/*anchorOutgoing*/);
			writer.Write((int)customDraw);

			ctx.saveImage(image);

			ctx.saveObject(pen);
			ctx.saveReference(this, brush, 3);

			writer.Write((int)selStyle);

			// new in save format 5
			ctx.saveAnchorPattern(anchorPattern);

			// new in save format 6
			writer.Write(PolyTextLayout);
			writer.Write((double)shapeRotation);

			if (shapeTemplate != null)
			{
				writer.Write((int)0);
				writer.Write(shapeTemplate.Id);
				if (shapeTemplate.Id == "")
				{
					ctx.saveObject(shapeTemplate);
					ctx.saveObject(shapeData);
				}
			}
			else
			{
				writer.Write((int)-1);
			}

			// new in save format 13
			// now in Node: writer.Write(hyperLink);

			// new in save format 14
			writer.Write(useStyledText);

			// new in save format 22
			writer.Write(rotationAngle);
			writer.Write(rotateContents);
		}