SerializeObject( Object serializedObject ) { DocumentPage dp = serializedObject as DocumentPage; if (dp != null) { Toolbox.EmitEvent(EventTrace.Event.WClientDRXGetVisualStart); Visual pageRootVisual = dp.Visual; Toolbox.EmitEvent(EventTrace.Event.WClientDRXGetVisualEnd); NgcSerializationManager NgcManager = SerializationManager as NgcSerializationManager; bool bManualStartDoc = NgcManager.StartPage(); ReachSerializer serializer = SerializationManager.GetSerializer(pageRootVisual); serializer.SerializeObject(pageRootVisual); NgcManager.EndPage(); if (bManualStartDoc) { NgcManager.EndDocument(); } } }
AsyncOperation( NGCSerializerContext context ) { if (context == null) { } switch (context.Action) { case SerializerAction.endPersistObjectData: { EndPersistObjectData(); XpsSerializationProgressChangedEventArgs e = new XpsSerializationProgressChangedEventArgs(XpsWritingProgressChangeLevel.FixedDocumentSequenceWritingProgress, 0, 0, null); NgcSerializationManager.OnNGCSerializationProgressChanged(e); break; } default: { base.AsyncOperation(context); break; } } }
BeginSerializeObject( Object serializedObject ) { DocumentPage dp = serializedObject as DocumentPage; if (dp != null) { Visual pageRootVisual = dp.Visual; bool bManualStartDoc = NgcSerializationManager.StartPage(); SerializableObjectContext serializableObjectContext = SerializableObjectContext.CreateContext(SerializationManager, serializedObject, null, null); NGCPageSerializerContext context = new NGCPageSerializerContext(this, serializableObjectContext, SerializerAction.endPersistObjectData, bManualStartDoc); NgcSerializationManager.OperationStack.Push(context); ReachSerializer serializer = SerializationManager.GetSerializer(pageRootVisual); serializer.SerializeObject(pageRootVisual); } }
BeginSerializeObject( Object serializedObject ) { FixedDocument fd = serializedObject as FixedDocument; if (!NgcSerializationManager.IsPrintTicketEventHandlerEnabled) { //NgcSerializationManager.FdPrintTicket = fd.PrintTicket as PrintTicket; } NgcSerializationManager.StartDocument(fd, true); // // Create the context for the current object // NGCSerializerContext context = new NGCSerializerContext(this, null, SerializerAction.endPersistObjectData); NgcSerializationManager.OperationStack.Push(context); ReachSerializer serializer = NgcSerializationManager.GetSerializer(fd.Pages); serializer.SerializeObject(fd.Pages); }
BeginSerializeObject( Object serializedObject ) { FixedPage fp = serializedObject as FixedPage; bool bManualStartDoc = NgcSerializationManager.StartPage(); SerializableObjectContext serializableObjectContext = SerializableObjectContext.CreateContext(SerializationManager, serializedObject, null, null); NGCPageSerializerContext context = new NGCPageSerializerContext(this, serializableObjectContext, SerializerAction.endPersistObjectData, bManualStartDoc); NgcSerializationManager.OperationStack.Push(context); Visual visual = (Visual)serializableObjectContext.TargetObject as Visual; Size pageSize = new Size(fp.Width, fp.Height); NgcSerializationManager.PageSize = pageSize; if (visual != null) { NgcSerializationManager.WalkVisual(visual); } }
BeginSerializeObject( Object serializedObject ) { DocumentPaginator paginator = (DocumentPaginator)serializedObject; NgcSerializationManager.StartDocument(paginator, true); NGCSerializerContext context = new NGCSerializerContext(this, null, SerializerAction.endPersistObjectData); NgcSerializationManager.OperationStack.Push(context); if (paginator != null) { NGCDocumentPaginatorSerializerContext paginatorContext = new NGCDocumentPaginatorSerializerContext(this, paginator, 0, SerializerAction.serializeNextDocumentPage); NgcSerializationManager.OperationStack.Push(paginatorContext); } }
BeginSerializeObject( Object serializedObject ) { FixedDocumentSequence fds = serializedObject as FixedDocumentSequence; if (!NgcSerializationManager.IsPrintTicketEventHandlerEnabled) { //NgcSerializationManager.FdsPrintTicket = fds.PrintTicket as PrintTicket; } else { XpsSerializationPrintTicketRequiredEventArgs e = new XpsSerializationPrintTicketRequiredEventArgs(PrintTicketLevel.FixedDocumentSequencePrintTicket, 0); NgcSerializationManager.OnNGCSerializationPrintTicketRequired(e); } NgcSerializationManager.StartDocument(fds, false); NGCSerializerContext context = new NGCSerializerContext(this, null, SerializerAction.endPersistObjectData); NgcSerializationManager.OperationStack.Push(context); ReachSerializer serializer = NgcSerializationManager.GetSerializer(fds.References); serializer.SerializeObject(fds.References); }
SerializeDocumentReference( object documentReference ) { IDocumentPaginatorSource idp = ((DocumentReference)documentReference).GetDocument(false); if (idp != null) { FixedDocument fixedDoc = idp as FixedDocument; if (fixedDoc != null) { ReachSerializer serializer = NgcSerializationManager.GetSerializer(fixedDoc); if (serializer != null) { serializer.SerializeObject(fixedDoc); } } else { ReachSerializer serializer = NgcSerializationManager.GetSerializer(idp.DocumentPaginator); if (serializer != null) { serializer.SerializeObject(idp); } } } }
SerializeObject( Object serializedObject ) { FixedPage fixedPage = Toolbox.GetPageRoot(serializedObject); if (fixedPage != null) { ReachSerializer serializer = SerializationManager.GetSerializer(fixedPage); if (serializer != null) { NgcSerializationManager manager = SerializationManager as NgcSerializationManager; XpsSerializationPrintTicketRequiredEventArgs e = new XpsSerializationPrintTicketRequiredEventArgs(PrintTicketLevel.FixedPagePrintTicket, 0); manager.OnNGCSerializationPrintTicketRequired(e); Toolbox.Layout(fixedPage, manager.GetActivePrintTicket()); serializer.SerializeObject(fixedPage); } else { throw new XpsSerializationException(SR.Get(SRID.ReachSerialization_NoSerializer)); } } }
EndPersistObjectData( bool isManualStartDoc ) { NgcSerializationManager.EndPage(); if (isManualStartDoc) { NgcSerializationManager.EndDocument(); } }
BeginSerializeObject( Object serializedObject ) { Visual visual = serializedObject as Visual; if (visual != null) { NgcSerializationManager.WalkVisual(visual); } }
SerializeObject( Object serializedObject ) { NgcSerializationManager NgcManager = SerializationManager as NgcSerializationManager; Visual visual = (Visual)serializedObject as Visual; if (visual != null) { NgcManager.WalkVisual(visual); } }
PersistObjectData( SerializableObjectContext serializableObjectContext ) { if (serializableObjectContext == null) { throw new ArgumentNullException("serializableObjectContext"); } Visual visual = (Visual)serializableObjectContext.TargetObject as Visual; if (visual != null) { NgcSerializationManager.WalkVisual(visual); } }
SerializeObject( Object serializedObject ) { if (serializedObject == null) { throw new ArgumentNullException("serializedObject"); } FixedDocumentSequence fds = serializedObject as FixedDocumentSequence; if (fds == null) { throw new ArgumentException(SR.Get(SRID.ReachSerialization_ExpectedFixedDocumentSequence)); } NgcSerializationManager ngcManager = SerializationManager as NgcSerializationManager; if (!ngcManager.IsPrintTicketEventHandlerEnabled) { //ngcManager.FdsPrintTicket = fds.PrintTicket as PrintTicket; } else { XpsSerializationPrintTicketRequiredEventArgs printTicketEvent = new XpsSerializationPrintTicketRequiredEventArgs(PrintTicketLevel.FixedDocumentSequencePrintTicket, 0); ngcManager.OnNGCSerializationPrintTicketRequired(printTicketEvent); } ngcManager.StartDocument(fds, false); ReachSerializer serializer = ngcManager.GetSerializer(fds.References); serializer.SerializeObject(fds.References); ngcManager.EndDocument(); XpsSerializationProgressChangedEventArgs e = new XpsSerializationProgressChangedEventArgs(XpsWritingProgressChangeLevel.FixedDocumentSequenceWritingProgress, 0, 0, null); ngcManager.OnNGCSerializationProgressChagned(e); }
SerializeObject( Object serializedObject ) { NgcSerializationManager ngcManager = SerializationManager as NgcSerializationManager; DocumentPaginator paginator = (DocumentPaginator)serializedObject; // // For FlowDocument, the application might attach a PrintTicket DP on it. // DependencyObject dependencyObject = paginator != null ? paginator.Source as DependencyObject : null; if (dependencyObject != null) { if (!ngcManager.IsPrintTicketEventHandlerEnabled) { //ngcManager.FdPrintTicket = dependencyObject.GetValue(FixedDocument.PrintTicketProperty) as PrintTicket; } } ngcManager.StartDocument(paginator, true); if (paginator != null) { for (int i = 0; !paginator.IsPageCountValid || (i < paginator.PageCount); i++) { DocumentPage page = Toolbox.GetPage(paginator, i); ReachSerializer serializer = SerializationManager.GetSerializer(page); if (serializer != null) { serializer.SerializeObject(page); } } } ngcManager.EndDocument(); }
SerializeObject( Object serializedObject ) { NgcSerializationManager ngcManager = SerializationManager as NgcSerializationManager; if (serializedObject == null) { throw new ArgumentNullException("serializedObject"); } FixedPage fp = serializedObject as FixedPage; if (fp == null) { throw new ArgumentException(SR.Get(SRID.ReachSerialization_ExpectedFixedPage)); } bool bManualStartDoc = ngcManager.StartPage(); Size pageSize = new Size(fp.Width, fp.Height); ngcManager.PageSize = pageSize; Visual visual = (Visual)serializedObject as Visual; if (visual != null) { ngcManager.WalkVisual(visual); } ngcManager.EndPage(); if (bManualStartDoc) { ngcManager.EndDocument(); } }
SerializeObject( Object serializedObject ) { if (serializedObject == null) { throw new ArgumentNullException("serializedObject"); } FixedDocument fd = serializedObject as FixedDocument; if (fd == null) { throw new ArgumentException(SR.Get(SRID.ReachSerialization_ExpectedFixedDocument)); } NgcSerializationManager ngcManager = SerializationManager as NgcSerializationManager; ngcManager.StartDocument(fd, true); ReachSerializer serializer = ngcManager.GetSerializer(fd.Pages); serializer.SerializeObject(fd.Pages); ngcManager.EndDocument(); }
EndPersistObjectData( ) { NgcSerializationManager.EndDocument(); }