/// <summary> /// Walks the WebExtension element, invoking the delegates provided on all the Strings and Int32 values /// </summary> /// <param name="wep">WebExtensionPart the element to be walked</param> /// <param name="svCallback">StringValueFoo delegate to be called for StringValues</param> /// <param name="int32Callback">Int32ValueFoo delegate to be called for Int32Values</param> private void WalkWep(WebExtensionPart wep, TypedValueFoo <StringValue> svCallback, TypedValueFoo <Int32Value> int32Callback) { We.WebExtension we = wep.WebExtension; foreach (OpenXmlElement blipKid in we.Snapshot) { // Actually they say (obj.GetType() == typeof(ClassA)) is faster, but we are not in hurry here anyways if (blipKid is A.AlphaBiLevel) { A.AlphaBiLevel abl = blipKid as A.AlphaBiLevel; abl.Threshold = int32Callback(abl.Threshold); } else if (blipKid is A.AlphaCeiling) { } else if (blipKid is A.AlphaFloor) { } else if (blipKid is A.BlipExtensionList) { A.BlipExtensionList bel = blipKid as A.BlipExtensionList; foreach (A.BlipExtension be in bel) { be.Uri = svCallback(be.Uri); } // it's possible to try and access the childs of be, but these are OpenXmlUnknownElement // and it's not possible to modify them in an intelligent way. } } we.Id = svCallback(we.Id); foreach (We.WebExtensionBinding binding in we.WebExtensionBindingList) { binding.AppReference = svCallback(binding.AppReference); binding.Id = svCallback(binding.Id); // UF: how about the Type? } foreach (We.WebExtensionProperty prop in we.WebExtensionPropertyBag) { prop.Name = svCallback(prop.Name); prop.Value = svCallback(prop.Value); } { We.WebExtensionStoreReference refr = we.WebExtensionStoreReference; refr.Id = svCallback(refr.Id); refr.Store = svCallback(refr.Store); refr.StoreType = svCallback(refr.StoreType); refr.Version = svCallback(refr.Version); } foreach (We.WebExtensionStoreReference refr in we.WebExtensionReferenceList) { refr.Id = svCallback(refr.Id); refr.Store = svCallback(refr.Store); refr.StoreType = svCallback(refr.StoreType); refr.Version = svCallback(refr.Version); } }
private Xdr.TwoCellAnchor AddTwoCellAnchor(int startRow, int startColumn, int endRow, int endColumn, string imagerId) { Xdr.TwoCellAnchor twoCellAnchor1 = new Xdr.TwoCellAnchor() { EditAs = Xdr.EditAsValues.OneCell }; Xdr.FromMarker fromMarker1 = new Xdr.FromMarker(); Xdr.ColumnId columnId1 = new Xdr.ColumnId(); columnId1.Text = startColumn.ToString(); Xdr.ColumnOffset columnOffset1 = new Xdr.ColumnOffset(); columnOffset1.Text = "0"; Xdr.RowId rowId1 = new Xdr.RowId(); rowId1.Text = startRow.ToString(); Xdr.RowOffset rowOffset1 = new Xdr.RowOffset(); rowOffset1.Text = "0"; fromMarker1.Append(columnId1); fromMarker1.Append(columnOffset1); fromMarker1.Append(rowId1); fromMarker1.Append(rowOffset1); Xdr.ToMarker toMarker1 = new Xdr.ToMarker(); Xdr.ColumnId columnId2 = new Xdr.ColumnId(); columnId2.Text = endColumn.ToString(); Xdr.ColumnOffset columnOffset2 = new Xdr.ColumnOffset(); columnOffset2.Text = "152381"; Xdr.RowId rowId2 = new Xdr.RowId(); rowId2.Text = endRow.ToString(); Xdr.RowOffset rowOffset2 = new Xdr.RowOffset(); rowOffset2.Text = "152381"; toMarker1.Append(columnId2); toMarker1.Append(columnOffset2); toMarker1.Append(rowId2); toMarker1.Append(rowOffset2); Xdr.Picture picture1 = new Xdr.Picture(); Xdr.NonVisualPictureProperties nonVisualPictureProperties1 = new Xdr.NonVisualPictureProperties(); Xdr.NonVisualDrawingProperties nonVisualDrawingProperties1 = new Xdr.NonVisualDrawingProperties() { Id = (UInt32Value)2U, Name = "Picture 1" }; Xdr.NonVisualPictureDrawingProperties nonVisualPictureDrawingProperties1 = new Xdr.NonVisualPictureDrawingProperties(); A.PictureLocks pictureLocks1 = new A.PictureLocks() { NoChangeAspect = true }; nonVisualPictureDrawingProperties1.Append(pictureLocks1); nonVisualPictureProperties1.Append(nonVisualDrawingProperties1); nonVisualPictureProperties1.Append(nonVisualPictureDrawingProperties1); Xdr.BlipFill blipFill1 = new Xdr.BlipFill(); A.Blip blip1 = new A.Blip() { Embed = imagerId }; blip1.AddNamespaceDeclaration("r", "http://schemas.openxmlformats.org/officeDocument/2006/relationships"); A.BlipExtensionList blipExtensionList1 = new A.BlipExtensionList(); A.BlipExtension blipExtension1 = new A.BlipExtension() { Uri = "{28A0092B-C50C-407E-A947-70E740481C1C}" }; A14.UseLocalDpi useLocalDpi1 = new A14.UseLocalDpi() { Val = false }; useLocalDpi1.AddNamespaceDeclaration("a14", "http://schemas.microsoft.com/office/drawing/2010/main"); blipExtension1.Append(useLocalDpi1); blipExtensionList1.Append(blipExtension1); blip1.Append(blipExtensionList1); A.Stretch stretch1 = new A.Stretch(); A.FillRectangle fillRectangle1 = new A.FillRectangle(); stretch1.Append(fillRectangle1); blipFill1.Append(blip1); blipFill1.Append(stretch1); Xdr.ShapeProperties shapeProperties1 = new Xdr.ShapeProperties(); A.Transform2D transform2D1 = new A.Transform2D(); A.Offset offset1 = new A.Offset() { X = 0L, Y = 0L }; A.Extents extents1 = new A.Extents() { Cx = 152381L, Cy = 152381L }; transform2D1.Append(offset1); transform2D1.Append(extents1); A.PresetGeometry presetGeometry1 = new A.PresetGeometry() { Preset = A.ShapeTypeValues.Rectangle }; A.AdjustValueList adjustValueList1 = new A.AdjustValueList(); presetGeometry1.Append(adjustValueList1); shapeProperties1.Append(transform2D1); shapeProperties1.Append(presetGeometry1); picture1.Append(nonVisualPictureProperties1); picture1.Append(blipFill1); picture1.Append(shapeProperties1); Xdr.ClientData clientData1 = new Xdr.ClientData(); twoCellAnchor1.Append(fromMarker1); twoCellAnchor1.Append(toMarker1); twoCellAnchor1.Append(picture1); twoCellAnchor1.Append(clientData1); return(twoCellAnchor1); }