/// <summary> /// Draw a Geometry with the provided Brush and/or Pen. /// </summary> public void DrawGeometry(Brush brush, Pen pen, Geometry geometry) { if (geometry != null) { if (brush != null) { Rect bounds = geometry.Bounds; brush = ReduceBrush(brush, bounds); } if ((pen != null) && (pen.Brush != null)) { Rect bounds = Rect.Empty; if (VisualSerializer.NeedBounds(pen.Brush)) { bounds = geometry.GetRenderBounds(pen); } pen = ReducePen(pen, bounds); } else { pen = null; } // Draw even if brush/pen is null since geometry may be a hyperlink. // _dc should cull invisible geometries when necessary. _dc.DrawGeometry(brush, pen, geometry); } }
public void ValidSerializeDeserializeBoard() { var board = Puzzles.BuiltIn.Hard_12x12; var serialized = VisualSerializer.Serialize(board); var deserialized = VisualSerializer.Deserialize(serialized); Assert.IsTrue(board.SequenceEquals(deserialized)); }
public void MessageTypeSelectionChanged(Type messageType) { _messageType = messageType; _messageStuffer = new MessageStuffer(messageType); _visualSerializer = new VisualSerializer(messageType); var typeSerializedToString = _visualSerializer.GetSerializedType(true); _view.ShowSerializedMessageType(typeSerializedToString, messageType); }
public void InvalidSerializeDeserializeBoard() { var board = Puzzles.BuiltIn.Hard_12x12; var serialized = VisualSerializer.Serialize(board); var badCellCount = "_," + serialized; Assert.Throws <InvalidOperationException>(() => VisualSerializer.Deserialize(badCellCount)); var badCellChar = serialized.Replace("_", "invalidCellString"); Assert.Throws <ArgumentException>(() => VisualSerializer.Deserialize(badCellChar)); }
private void ExecuteBatch(object batch) { var stuffBatch = batch as StuffBatch; if (stuffBatch == null) { return; } int i = 1; foreach (var item in stuffBatch.items) { try { IMessageStuffer messageStuffer = new MessageStuffer(item.SelectedType); VisualSerializer visualSerializer = new VisualSerializer(item.SelectedType); var messages = visualSerializer.GetDeserializedType(item.MessageContent); messageStuffer.StuffMessagesToQueue(item.QueueName, messages); SetStatus(item, i, null); } catch (Exception e) { SetStatus(item, i, e); } if (stuffBatch.delay > 0) { Thread.Sleep(1000 * stuffBatch.delay); } i++; } ReportBatchFinished(); }
private void ExecuteBatch(object batch) { var stuffBatch = batch as StuffBatch; if (stuffBatch == null) return; int i = 1; foreach (var item in stuffBatch.items) { try { IMessageStuffer messageStuffer = new MessageStuffer(item.SelectedType); VisualSerializer visualSerializer = new VisualSerializer(item.SelectedType); var messages = visualSerializer.GetDeserializedType(item.MessageContent); messageStuffer.StuffMessagesToQueue(item.QueueName, messages); SetStatus(item, i, null); } catch (Exception e) { SetStatus(item, i, e); } if (stuffBatch.delay > 0) Thread.Sleep(1000 * stuffBatch.delay); i++; } ReportBatchFinished(); }