diff --git a/EduNetworkBuilder/Network.cs b/EduNetworkBuilder/Network.cs index b2536b0..f75c99c 100644 --- a/EduNetworkBuilder/Network.cs +++ b/EduNetworkBuilder/Network.cs @@ -57,7 +57,7 @@ namespace EduNetworkBuilder private bool previously_had_packets = false; //used on "tick" to determine if we are starting from scratch - private List PacketColors = new List(); + private List PacketColors = new List(); private List PacketImages = new List(); public Network(string Name) @@ -1427,20 +1427,25 @@ namespace EduNetworkBuilder } } - public Image GetPacketImage(Color PacketColor) + public Image GetPacketImage(Color PacketColor, Color VLANColor) { - if(PacketColors.Contains(PacketColor)) + if (VLANColor == Color.Blue) VLANColor = PacketColor; + string ColorNames = PacketColor.Name + VLANColor.Name; + if(PacketColors.Contains(ColorNames)) { - return PacketImages[PacketColors.IndexOf(PacketColor)]; + return PacketImages[PacketColors.IndexOf(ColorNames)]; } - PacketColors.Add(PacketColor); + PacketColors.Add(ColorNames); Image newPacketImage = new Bitmap(NB.PacketPixelSize, NB.PacketPixelSize); using (Graphics G = Graphics.FromImage(newPacketImage)) { G.Clear(Color.Transparent); // Pen myPen = new Pen(PacketColor, NB.PacketPixelSize); - Brush tBrush = new SolidBrush(PacketColor); + Brush tBrush = new SolidBrush(VLANColor); G.FillEllipse(tBrush, 0,0, NB.PacketPixelSize, NB.PacketPixelSize); + tBrush = new SolidBrush(PacketColor); + int dist = NB.PacketPixelSize / 4; + G.FillEllipse(tBrush, dist, dist, NB.PacketPixelSize / 2, NB.PacketPixelSize / 2); } PacketImages.Add(newPacketImage); return newPacketImage; diff --git a/EduNetworkBuilder/Packet.cs b/EduNetworkBuilder/Packet.cs index 495104e..4aa2fee 100644 --- a/EduNetworkBuilder/Packet.cs +++ b/EduNetworkBuilder/Packet.cs @@ -240,9 +240,9 @@ namespace EduNetworkBuilder else { Color VLANPacketColor = theNet.ColorFromPacketVLAN(VLANID); - if (VLANPacketColor != Color.Blue) - pencolor = VLANPacketColor; - Image tImage = theNet.GetPacketImage(pencolor); + //if (VLANPacketColor != Color.Blue) + // pencolor = VLANPacketColor; + Image tImage = theNet.GetPacketImage(pencolor, VLANPacketColor); //if (VLANPacketColor != Color.Blue && VLANPacketColor != Color.Empty) //{ // tImage = theNet.ColoredImage(tImage, VLANPacketColor);