diff --git a/EduNetworkBuilder/EduNetworkBuilder.csproj b/EduNetworkBuilder/EduNetworkBuilder.csproj
index bab84f5..f15f49b 100644
--- a/EduNetworkBuilder/EduNetworkBuilder.csproj
+++ b/EduNetworkBuilder/EduNetworkBuilder.csproj
@@ -424,6 +424,7 @@
+
diff --git a/EduNetworkBuilder/NB.cs b/EduNetworkBuilder/NB.cs
index 0a823b1..3103823 100644
--- a/EduNetworkBuilder/NB.cs
+++ b/EduNetworkBuilder/NB.cs
@@ -58,7 +58,7 @@ namespace EduNetworkBuilder
Network, Packet, NIC, Interface, Router, PacketCorruption, GeneralWireless, WirelessSSID, WirelessKey,
WirelessAP, WirelessRouter, WirelessRepeater, WirelessBridge, VLAN, Power, Traceroute
}
- public enum CaptionType { host, host_ip, ip, full, none }
+ public enum CaptionType { none=0, host=1, ip=2, host_ip=3, full=4 }
public enum FirewallRuleType { Allow, Drop }
public enum SolvedNetworkNames { DHCP, OneNet, TwoNets, ThreeNets, firewalls, VLAN, InternetHomeAndOffice }
public enum PuzzleNames
diff --git a/EduNetworkBuilder/NetTest.cs b/EduNetworkBuilder/NetTest.cs
index 516c599..ced7c7f 100644
--- a/EduNetworkBuilder/NetTest.cs
+++ b/EduNetworkBuilder/NetTest.cs
@@ -375,7 +375,7 @@ namespace EduNetworkBuilder
BuilderWindow myWin = NB.GetBuilderWin();
if (myWin != null)
{
- Control ctl = myWin.GetControlNamed("cbViewTitles");
+ Control ctl = myWin.GetControlNamed("btnCaptions");
if (ctl == null) return false;
if (ctl.BackColor != WrongColor)
ctl.BackColor = WrongColor;
diff --git a/EduNetworkBuilder/Network.cs b/EduNetworkBuilder/Network.cs
index 9cb2711..dfbc080 100644
--- a/EduNetworkBuilder/Network.cs
+++ b/EduNetworkBuilder/Network.cs
@@ -24,8 +24,8 @@ namespace EduNetworkBuilder
public int myWidth = 1024;
public int Level = 0;
public double SortOrder = 0;
- public bool OptionShowLabels = false;
- public bool ShowLabelsHere = false;
+ public CaptionType OptionShowLabels = CaptionType.none;
+ public CaptionType ShowLabelsHere = CaptionType.none;
public bool VLANsEnabled = false;
public bool VLANPacketColors = false;
private bool _LoadedFromResource = false; //If we are a puzzle that is built-into the program
@@ -195,8 +195,17 @@ namespace EduNetworkBuilder
PuzzleName = Individual.InnerText;
break;
case "showlabels":
- bool.TryParse(Individual.InnerText, out OptionShowLabels);
- ShowLabelsHere = OptionShowLabels;
+ bool tf_answer = false;
+ if(bool.TryParse(Individual.InnerText, out tf_answer))
+ {
+ //compatibility with the old simple true/false
+ if (tf_answer) ShowLabelsHere = CaptionType.full;
+ else ShowLabelsHere = CaptionType.none;
+ }
+ else
+ {
+ ShowLabelsHere = NB.TryParseEnum(Individual.InnerText, CaptionType.none);
+ }
break;
case "vlansenabled":
bool.TryParse(Individual.InnerText, out VLANsEnabled);
@@ -722,7 +731,7 @@ namespace EduNetworkBuilder
foreach (NetworkComponent NC in NetComponents)
{
if (NC.GetType().ToString() == "EduNetworkBuilder.NetworkLink")
- NC.Print(TheNetImage, false);
+ NC.Print(TheNetImage, CaptionType.none);
}
//Now, do all the devices
foreach (NetworkComponent NC in NetComponents)
diff --git a/EduNetworkBuilder/NetworkBuilder.Designer.cs b/EduNetworkBuilder/NetworkBuilder.Designer.cs
index 0311062..bc8e582 100644
--- a/EduNetworkBuilder/NetworkBuilder.Designer.cs
+++ b/EduNetworkBuilder/NetworkBuilder.Designer.cs
@@ -63,6 +63,7 @@
this.puzzlesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.solvedToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toSolveToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.randomToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.panelChoices = new System.Windows.Forms.Panel();
this.lbMessages = new System.Windows.Forms.ListBox();
this.lblStatus = new System.Windows.Forms.Label();
@@ -73,9 +74,8 @@
this.rbHelp2 = new System.Windows.Forms.RadioButton();
this.rbHelp1 = new System.Windows.Forms.RadioButton();
this.HelpPanel = new System.Windows.Forms.Panel();
- this.cbViewTitles = new System.Windows.Forms.CheckBox();
+ this.btnCaptions = new System.Windows.Forms.Button();
this.myProgressBar = new System.Windows.Forms.ProgressBar();
- this.randomToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.msMainMenuStrip.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pbNetworkView)).BeginInit();
this.HelpPanel.SuspendLayout();
@@ -342,22 +342,29 @@
// puzzlesToolStripMenuItem
//
this.puzzlesToolStripMenuItem.Name = "puzzlesToolStripMenuItem";
- this.puzzlesToolStripMenuItem.Size = new System.Drawing.Size(181, 26);
+ this.puzzlesToolStripMenuItem.Size = new System.Drawing.Size(140, 26);
this.puzzlesToolStripMenuItem.Text = "Puzzles";
this.puzzlesToolStripMenuItem.Click += new System.EventHandler(this.puzzlesToolStripMenuItem_Click);
//
// solvedToolStripMenuItem
//
this.solvedToolStripMenuItem.Name = "solvedToolStripMenuItem";
- this.solvedToolStripMenuItem.Size = new System.Drawing.Size(181, 26);
+ this.solvedToolStripMenuItem.Size = new System.Drawing.Size(140, 26);
this.solvedToolStripMenuItem.Text = "Solved";
//
// toSolveToolStripMenuItem
//
this.toSolveToolStripMenuItem.Name = "toSolveToolStripMenuItem";
- this.toSolveToolStripMenuItem.Size = new System.Drawing.Size(181, 26);
+ this.toSolveToolStripMenuItem.Size = new System.Drawing.Size(140, 26);
this.toSolveToolStripMenuItem.Text = "To Solve";
//
+ // randomToolStripMenuItem
+ //
+ this.randomToolStripMenuItem.Name = "randomToolStripMenuItem";
+ this.randomToolStripMenuItem.Size = new System.Drawing.Size(140, 26);
+ this.randomToolStripMenuItem.Text = "Random";
+ this.randomToolStripMenuItem.Click += new System.EventHandler(this.randomToolStripMenuItem_Click);
+ //
// panelChoices
//
this.panelChoices.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
@@ -475,7 +482,7 @@
// HelpPanel
//
this.HelpPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.HelpPanel.Controls.Add(this.cbViewTitles);
+ this.HelpPanel.Controls.Add(this.btnCaptions);
this.HelpPanel.Controls.Add(this.rbHelp4);
this.HelpPanel.Controls.Add(this.btnHelp);
this.HelpPanel.Controls.Add(this.rbHelp1);
@@ -487,16 +494,16 @@
this.HelpPanel.Size = new System.Drawing.Size(33, 369);
this.HelpPanel.TabIndex = 10;
//
- // cbViewTitles
+ // btnCaptions
//
- this.cbViewTitles.AutoSize = true;
- this.cbViewTitles.Location = new System.Drawing.Point(7, 9);
- this.cbViewTitles.Margin = new System.Windows.Forms.Padding(4);
- this.cbViewTitles.Name = "cbViewTitles";
- this.cbViewTitles.Size = new System.Drawing.Size(18, 17);
- this.cbViewTitles.TabIndex = 10;
- this.cbViewTitles.UseVisualStyleBackColor = true;
- this.cbViewTitles.CheckedChanged += new System.EventHandler(this.cbViewTitles_CheckedChanged);
+ this.btnCaptions.BackgroundImage = global::EduNetworkBuilder.Properties.Resources.CaptionBtn;
+ this.btnCaptions.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
+ this.btnCaptions.Location = new System.Drawing.Point(6, 3);
+ this.btnCaptions.Name = "btnCaptions";
+ this.btnCaptions.Size = new System.Drawing.Size(24, 25);
+ this.btnCaptions.TabIndex = 10;
+ this.btnCaptions.UseVisualStyleBackColor = true;
+ this.btnCaptions.Click += new System.EventHandler(this.btnCaptions_Click);
//
// myProgressBar
//
@@ -508,13 +515,6 @@
this.myProgressBar.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
this.myProgressBar.TabIndex = 11;
//
- // randomToolStripMenuItem
- //
- this.randomToolStripMenuItem.Name = "randomToolStripMenuItem";
- this.randomToolStripMenuItem.Size = new System.Drawing.Size(181, 26);
- this.randomToolStripMenuItem.Text = "Random";
- this.randomToolStripMenuItem.Click += new System.EventHandler(this.randomToolStripMenuItem_Click);
- //
// BuilderWindow
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
@@ -589,7 +589,6 @@
private System.Windows.Forms.ToolStripMenuItem puzzlesToolStripMenuItem;
private System.Windows.Forms.ProgressBar myProgressBar;
private System.Windows.Forms.ToolStripMenuItem changeLanguageToolStripMenuItem;
- private System.Windows.Forms.CheckBox cbViewTitles;
private System.Windows.Forms.ToolStripMenuItem classSetupToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem profileToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem addToClassworkToolStripMenuItem;
@@ -598,6 +597,7 @@
private System.Windows.Forms.ToolStripMenuItem markAsGradedToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem logoutToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem randomToolStripMenuItem;
+ private System.Windows.Forms.Button btnCaptions;
}
}
diff --git a/EduNetworkBuilder/NetworkBuilder.cs b/EduNetworkBuilder/NetworkBuilder.cs
index 31d9e52..0d08955 100644
--- a/EduNetworkBuilder/NetworkBuilder.cs
+++ b/EduNetworkBuilder/NetworkBuilder.cs
@@ -85,7 +85,7 @@ namespace EduNetworkBuilder
myTooltip.SetToolTip(rbHelp3, NB.Translate("NB_BuildWindMinor", OurSettings));
myTooltip.SetToolTip(rbHelp4, NB.Translate("NB_BuildWindDecent", OurSettings));
myTooltip.SetToolTip(btnHelp, NB.Translate("NB_BuildWindMsg", OurSettings));
- myTooltip.SetToolTip(cbViewTitles, NB.Translate("NB_cbViewTitles", OurSettings));
+ myTooltip.SetToolTip(btnCaptions, NB.Translate("NB_btnCaptions", OurSettings));
myTooltip.Popup += myTooltip_Popup;
lblStatus.Text = "";
@@ -466,6 +466,9 @@ namespace EduNetworkBuilder
myNetwork.TestForCompletion(true);
}
+ ///
+ /// Basically updae everything. Does UpdateMenu, UpdateMessages, UpdateVisuals and a few other things.
+ ///
public void UpdateForm()
{
UpdateMenu();
@@ -476,7 +479,6 @@ namespace EduNetworkBuilder
else
optionsToolStripMenuItem.Visible = true;
processing = true;
- cbViewTitles.Checked = myNetwork.ShowLabelsHere;
Text = NB.Translate("NB_UpdteFrmName", OurSettings);
if (myNetwork.NetTitle.GetText() != "")
Text += ": " + myNetwork.NetTitle.GetText();
@@ -1286,7 +1288,7 @@ namespace EduNetworkBuilder
//set it to the new pos
toMove.ChangeLocationUnsnapped(NewPosition);
//tell it to draw
- toMove.Print(pbNetworkView.BackgroundImage, false);
+ toMove.Print(pbNetworkView.BackgroundImage, CaptionType.none);
//invalidate
myNetwork.Invalidate(newrec);
}
@@ -1965,7 +1967,7 @@ namespace EduNetworkBuilder
{
if(!processing)
{
- myNetwork.ShowLabelsHere = cbViewTitles.Checked;
+ //myNetwork.ShowLabelsHere = cbViewTitles.Checked;
bool didsomething = myNetwork.NoteActionDone(NetTestType.HelpRequest, "", "ViewButton");
if (didsomething)
{
@@ -2133,6 +2135,26 @@ namespace EduNetworkBuilder
return true;
}
+ //change how we view captions
+ private void btnCaptions_Click(object sender, EventArgs e)
+ {
+ //we toggle the next
+ int tmp = (int)myNetwork.ShowLabelsHere;
+ tmp++;
+ if (tmp >= Enum.GetNames(typeof(CaptionType)).Length)
+ tmp = 0;
+ myNetwork.ShowLabelsHere = (CaptionType)tmp;
+
+ //For help
+ bool didsomething = myNetwork.NoteActionDone(NetTestType.HelpRequest, "", "ViewButton");
+ if (didsomething)
+ {
+ UpdateForm();
+ myNetwork.TestForCompletion(true);
+ }
+
+ UpdateVisuals();
+ }
#region Random Map Stuff
private void randomToolStripMenuItem_Click(object sender, EventArgs e)
@@ -2198,8 +2220,8 @@ namespace EduNetworkBuilder
// TraversalCollection[0].DumpPath();
//}
- myNetwork.OptionShowLabels = true;
- myNetwork.ShowLabelsHere = true;
+ myNetwork.OptionShowLabels = CaptionType.host;
+ myNetwork.ShowLabelsHere = CaptionType.host;
myNetwork.ClearMessages();
myNetwork.DoAllClearDHCP();
@@ -2207,5 +2229,8 @@ namespace EduNetworkBuilder
UpdateMessages();
}
#endregion Random Map Stuff
+
+
+
}
}
\ No newline at end of file
diff --git a/EduNetworkBuilder/NetworkComponent.cs b/EduNetworkBuilder/NetworkComponent.cs
index 3e3552c..39e2f76 100644
--- a/EduNetworkBuilder/NetworkComponent.cs
+++ b/EduNetworkBuilder/NetworkComponent.cs
@@ -25,7 +25,7 @@ namespace EduNetworkBuilder
protected bool isInvisible = false; //Not used often. Basically, to simulate a device (usually a switch) that we forgot about.
- public virtual void Print(Image BaseImage, bool DrawTitle)
+ public virtual void Print(Image BaseImage, CaptionType DrawTitle)
{
}
diff --git a/EduNetworkBuilder/NetworkDevice.cs b/EduNetworkBuilder/NetworkDevice.cs
index 5d1b9e8..72e4be6 100644
--- a/EduNetworkBuilder/NetworkDevice.cs
+++ b/EduNetworkBuilder/NetworkDevice.cs
@@ -1000,7 +1000,7 @@ namespace EduNetworkBuilder
myGraphics.DrawString(measureString, stringFont, myBrush, new PointF(x - (stringSize.Width / 2), y));
}
- public override void Print(Image BaseImage, bool DrawTitle)
+ public override void Print(Image BaseImage, CaptionType DrawTitle)
{
ValidateSize();
if (MyImage == null) return; //nothing to print
@@ -1026,40 +1026,87 @@ namespace EduNetworkBuilder
Image NewBMP = ColoredImage(MyImage);
Graphics.FromImage(BaseImage).DrawImage(NewBMP, MyLocation.X, MyLocation.Y, Size, Size);
}
- if (DrawTitle)
+ if (DrawTitle != CaptionType.none)
{
int x = MyLocation.X + (Size / 2);
int y = MyLocation.Y + Size - (Size / 6);
int gap = 22;
- int counter = 0;
- CenterString(BaseImage, x, y + (counter * gap), hostname, Color.Black);
- counter++;
- if (myType != NetworkComponentType.microwave && myType != NetworkComponentType.fluorescent)
- {
- foreach (NetworkCard nic in NICs)
- {
- if (nic.GetNicType != NicType.lo && nic.GetNicType != NicType.port && nic.GetNicType != NicType.wport)
- {
- string title = "";
- if (nic.GetNicType == NicType.management_interface)
- title += "if: ";
- else
- title += nic.NicName() + ": ";
- foreach (string addr_str in nic.IPAddresses(true))
- {
- CenterString(BaseImage, x, y + (counter * gap), title + addr_str, Color.Black);
- counter++;
- }
- }
- }
+ List toShow = DeviceCaptions(DrawTitle);
+ for(int counter=0; counter < toShow.Count; counter++)
+ {
+ CenterString(BaseImage, x, y + (counter * gap), toShow[counter], Color.Black);
}
}
} //if it is not invisible
IsDirty = false; //We printed it, now we are content that we are clean
}
+ private List DeviceCaptions(CaptionType What)
+ {
+ List WhatToShow = new List();
+ switch(What)
+ {
+ case CaptionType.none:
+ break; //nothing to show
+ case CaptionType.full:
+ WhatToShow.Add(hostname);
+ if (myType == NetworkComponentType.microwave || myType == NetworkComponentType.fluorescent) break;
+ foreach (NetworkCard nic in NICs)
+ {
+ if (nic.GetNicType != NicType.lo && nic.GetNicType != NicType.port && nic.GetNicType != NicType.wport)
+ {
+ string title = "";
+ if (nic.GetNicType == NicType.management_interface)
+ title += "if: ";
+ else
+ title += nic.NicName() + ": ";
+
+ foreach (string addr_str in nic.IPAddresses(true))
+ {
+ WhatToShow.Add(title + addr_str);
+ }
+ }
+ }
+ break;
+ case CaptionType.host:
+ WhatToShow.Add(hostname);
+ break;
+ case CaptionType.host_ip:
+ WhatToShow.Add(hostname);
+ if (myType == NetworkComponentType.microwave || myType == NetworkComponentType.fluorescent) break;
+ foreach (NetworkCard nic in NICs)
+ {
+ if (nic.GetNicType != NicType.lo && nic.GetNicType != NicType.port && nic.GetNicType != NicType.wport)
+ {
+ string title = "";
+
+ foreach (string addr_str in nic.IPAddresses(true))
+ {
+ WhatToShow.Add(title + addr_str);
+ }
+ }
+ }
+ break;
+ case CaptionType.ip:
+ if (myType == NetworkComponentType.microwave || myType == NetworkComponentType.fluorescent) break;
+ foreach (NetworkCard nic in NICs)
+ {
+ if (nic.GetNicType != NicType.lo && nic.GetNicType != NicType.port && nic.GetNicType != NicType.wport)
+ {
+ string title = "";
+
+ foreach (string addr_str in nic.IPAddresses(true))
+ {
+ WhatToShow.Add(title + addr_str);
+ }
+ }
+ }
+ break;
+ }
+ return WhatToShow;
+ }
///
/// Check all the network cards on this device to see if it has a nic with the given MAC address
diff --git a/EduNetworkBuilder/NetworkLink.cs b/EduNetworkBuilder/NetworkLink.cs
index ce7535a..b83e6b6 100644
--- a/EduNetworkBuilder/NetworkLink.cs
+++ b/EduNetworkBuilder/NetworkLink.cs
@@ -253,7 +253,7 @@ namespace EduNetworkBuilder
return false;
}
- public override void Print(Image BaseImage, bool DrawTitle)
+ public override void Print(Image BaseImage, CaptionType DrawTitle)
{
if (isInvisible) return; //We do not print the line if it is invisible
diff --git a/EduNetworkBuilder/OptionsWindow.cs b/EduNetworkBuilder/OptionsWindow.cs
index ba3abf1..880a2cb 100644
--- a/EduNetworkBuilder/OptionsWindow.cs
+++ b/EduNetworkBuilder/OptionsWindow.cs
@@ -75,7 +75,7 @@ namespace EduNetworkBuilder
tbItemSize.Text = myNet.itemsize.ToString();
tbMessage.Text = myNet.NetMessage.GetText();
tbNetworkTitle.Text = myNet.NetTitle.GetText();
- cbDisplayTitles.Checked = myNet.OptionShowLabels;
+ //cbDisplayTitles.Checked = myNet.OptionShowLabels;
cbVLANs.Checked = myNet.VLANsEnabled;
cb_ColoredPackets.Checked = myNet.VLANPacketColors;
tbNetworkX.Text = myNet.myWidth.ToString();
@@ -113,7 +113,7 @@ namespace EduNetworkBuilder
int.TryParse(tbItemSize.Text, out myNet.itemsize);
myNet.NetMessage.Add( tbMessage.Text);
myNet.NetTitle.Add(tbNetworkTitle.Text);
- myNet.OptionShowLabels = cbDisplayTitles.Checked;
+ //myNet.OptionShowLabels = cbDisplayTitles.Checked;
myNet.VLANsEnabled = cbVLANs.Checked;
myNet.VLANPacketColors = cb_ColoredPackets.Checked;
myNet.ShowLabelsHere = myNet.OptionShowLabels;
diff --git a/EduNetworkBuilder/Properties/Resources.Designer.cs b/EduNetworkBuilder/Properties/Resources.Designer.cs
index b240650..5828c01 100644
--- a/EduNetworkBuilder/Properties/Resources.Designer.cs
+++ b/EduNetworkBuilder/Properties/Resources.Designer.cs
@@ -70,6 +70,16 @@ namespace EduNetworkBuilder.Properties {
}
}
+ ///
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap CaptionBtn {
+ get {
+ object obj = ResourceManager.GetObject("CaptionBtn", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
///
/// Looks up a localized resource of type System.Drawing.Bitmap.
///
@@ -1142,7 +1152,7 @@ namespace EduNetworkBuilder.Properties {
///
/// Looks up a localized string similar to {\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff0\deff0\stshfdbch31505\stshfloch31506\stshfhich31506\stshfbi0\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f2\fbidi \fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}
- ///{\f3\fbidi \froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f10\fbidi \fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings;}{\f34\fbidi \fro [rest of string was truncated]";.
+ ///{\f3\fbidi \froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f10\fbidi \fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings;}{\f34\fbidi \fr [rest of string was truncated]";.
///
internal static string ReleaseNotes {
get {
diff --git a/EduNetworkBuilder/Properties/Resources.resx b/EduNetworkBuilder/Properties/Resources.resx
index 1507fbf..6337b82 100644
--- a/EduNetworkBuilder/Properties/Resources.resx
+++ b/EduNetworkBuilder/Properties/Resources.resx
@@ -478,6 +478,9 @@
..\Resources\Level1_VPNTraceroute.enbx;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ ..\Resources\CaptionBtn.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Resources\InternetHomeAndOffice.enbx;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
diff --git a/EduNetworkBuilder/Resources/CaptionBtn.png b/EduNetworkBuilder/Resources/CaptionBtn.png
new file mode 100644
index 0000000..58f4582
Binary files /dev/null and b/EduNetworkBuilder/Resources/CaptionBtn.png differ
diff --git a/EduNetworkBuilder/Resources/ReleaseNotes.rtf b/EduNetworkBuilder/Resources/ReleaseNotes.rtf
index b11847d..1235470 100644
--- a/EduNetworkBuilder/Resources/ReleaseNotes.rtf
+++ b/EduNetworkBuilder/Resources/ReleaseNotes.rtf
@@ -104,45 +104,47 @@ Normal Table;}}{\*\listtable{\list\listtemplateid-678110632\listhybrid{\listleve
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li6480\lin6480 }{\listname
;}\listid1574776731}}{\*\listoverridetable{\listoverride\listid300036472\listoverridecount0\ls1}{\listoverride\listid1535926840\listoverridecount0\ls2}{\listoverride\listid569733219\listoverridecount0\ls3}{\listoverride\listid1059207521
\listoverridecount0\ls4}{\listoverride\listid159203163\listoverridecount0\ls5}{\listoverride\listid272565942\listoverridecount0\ls6}{\listoverride\listid1574776731\listoverridecount0\ls7}}{\*\rsidtbl \rsid3230122\rsid3954092\rsid4148115\rsid4201155
-\rsid4984628\rsid4995504\rsid7431196\rsid7475506\rsid8871995\rsid9125153\rsid9664289\rsid11235612\rsid12019296\rsid12193239\rsid12727249\rsid12727595\rsid13454907\rsid14170698\rsid14577306\rsid15677065\rsid16005564\rsid16457871}{\mmathPr\mmathFont34
-\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim0}{\info{\operator tim.young@lightsys.org}{\creatim\yr2017\mo3\dy14\hr9\min58}{\revtim\yr2017\mo8\dy30\hr2\min51}{\version22}{\edmins29}{\nofpages10}
-{\nofwords1983}{\nofchars11304}{\nofcharsws13261}{\vern91}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect
+\rsid4674322\rsid4984628\rsid4995504\rsid7431196\rsid7475506\rsid8871995\rsid9125153\rsid9664289\rsid11235612\rsid12019296\rsid12193239\rsid12727249\rsid12727595\rsid13454907\rsid14170698\rsid14577306\rsid15677065\rsid16005564\rsid16457871}{\mmathPr
+\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim0}{\info{\operator tim.young@lightsys.org}{\creatim\yr2017\mo3\dy14\hr9\min58}{\revtim\yr2017\mo8\dy30\hr15\min23}{\version23}{\edmins29}
+{\nofpages10}{\nofwords1997}{\nofchars11389}{\nofcharsws13360}{\vern91}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect
\widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata1\grfdocevents0\validatexml0\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors0\horzdoc\dghspace120\dgvspace120\dghorigin1701
\dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind1\viewscale110\rsidroot14577306 \nouicompat \fet0{\*\wgrffmtfilter 2450}\nofeaturethrottle1\ilfomacatclnup0\ltrpar \sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\*\pnseclvl1
\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5
\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang
{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid4148115 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0
-\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid4148115 \hich\af39\dbch\af31505\loch\f39 Version 1.0.4}{\rtlch\fcs1 \ab\af39
-\ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid4148115 \hich\af39\dbch\af31505\loch\f39 1}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid4148115
+\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid4148115 \hich\af39\dbch\af31505\loch\f39 Version 1.0.41
\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid9664289 {\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4148115\charrsid4148115 \hich\af39\dbch\af31505\loch\f39 * }{\rtlch\fcs1
\ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4148115 \hich\af39\dbch\af31505\loch\f39 Added another solved }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12193239 \hich\af39\dbch\af31505\loch\f39 network (Internet)}{
-\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4148115\charrsid4148115
+\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4148115
+\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4674322 \hich\af39\dbch\af31505\loch\f39 * Give us more options for viewing text under devices. This lets us see things much more cleanly.}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0
+\f39\lang9\langfe1033\langnp9\insrsid4674322\charrsid4148115
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid4984628 \hich\af39\dbch\af31505\loch\f39 Version 1.0.40
\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid4984628 {\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4984628 \hich\af39\dbch\af31505\loch\f39
* Jumping ahead version numbers. Adding Educational Mode (see doc on the wiki for a description of the basic functionality added) }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4984628\charrsid4984628
\hich\af39\dbch\af31505\loch\f39 https://git.solidcharity.com/timy/EduNetworkBuilder/wikis/Teacherdoc}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4984628
-\par \hich\af39\dbch\af31505\loch\f39 * Added the ability to make msi files for better deployment in multi-user settings
+\par \hich\af39\dbch\af31505\loch\f39 * Added the ability to make msi files for better deploym\hich\af39\dbch\af31505\loch\f39 ent in multi-user settings
\par \hich\af39\dbch\af31505\loch\f39 * Adjusted drag functionality so we do not jostle devices around accidentally
-\par \hich\af39\dbch\af31505\loch\f39 * Fixed bug when trying to\hich\af39\dbch\af31505\loch\f39 ping wireless devices by name
+\par \hich\af39\dbch\af31505\loch\f39 * Fixed bug when trying to ping wireless devices by name
\par \hich\af39\dbch\af31505\loch\f39 * Fixed a bug pinging 0.0.0.0
\par \hich\af39\dbch\af31505\loch\f39 * Fixed lots of other bugs}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4984628\charrsid4984628
\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid9664289 {\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid13454907 \hich\af39\dbch\af31505\loch\f39 Version 1.0.33}{\rtlch\fcs1
\ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid9664289
-\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid14170698 {\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid3954092 \hich\af39\dbch\af31505\loch\f39
-* Fixed a major bug in settings that would blow up new installs.
+\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid14170698 {\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid3954092 \hich\af39\dbch\af31505\loch\f39 * Fixed a major bug in
+\hich\af39\dbch\af31505\loch\f39 settings that would blow up new installs.
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid9664289\charrsid9664289 \hich\af39\dbch\af31505\loch\f39 *}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid9664289 \hich\af39\dbch\af31505\loch\f39 \hich\f39
ctrl-right-click a device to add \'93\loch\f39 \hich\f39 hide\'94\loch\f39 to the context menu.
-\par \hich\af39\dbch\af31505\loch\f39 * From the puzzle menu yo\hich\af39\dbch\af31505\loch\f39 u can ctrl-alt click items to mark them as solved.
+\par \hich\af39\dbch\af31505\loch\f39 * From the puzzle menu you can ctrl-alt click items to mark them as solved.
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid16457871 \hich\af39\dbch\af31505\loch\f39 *}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid9125153 \hich\af39\dbch\af31505\loch\f39 }{\rtlch\fcs1 \ab\af39
\ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid16457871 \hich\af39\dbch\af31505\loch\f39 Display bad subnet masks (that cannot be displayed using CIDR notation) as /?
-\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid9125153 \hich\af39\dbch\af31505\loch\f39 * Allow pings from devices that are locked. A bug made it so we could not change the address we wanted to ping to; all ip-ad
-\hich\af39\dbch\af31505\loch\f39 \hich\f39 dresses were locked, even a \'93\loch\f39 \hich\f39 ping to\'94\loch\f39 address.
-\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12727249 \hich\af39\dbch\af31505\loch\f39 * Minor bug: If we ping a local IP that does not exist, the error message we were getting was the wrong error message. Fixed that.
-\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4995504 \hich\af39\dbch\af31505\loch\f39 * When wireless device is powered off, remove all wireless links. Links conn\hich\af39\dbch\af31505\loch\f39
-ected to WLAN had been reconnected. Fixed that.
-\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid11235612 \hich\af39\dbch\af31505\loch\f39 \hich\f39 * Cannot go into the network options if we have loaded the network from resources. This way we cannot \'93\loch\f39 \hich\f39
-cheat\'94\loch\f39 by changing the network options. This is in preparation for setting this up for school use. Ma\hich\af39\dbch\af31505\loch\f39 king it harder for students to cheat on homework assignments.}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0
-\f39\lang9\langfe1033\langnp9\insrsid11235612\charrsid9664289
+\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid9125153 \hich\af39\dbch\af31505\loch\f39 \hich\f39
+* Allow pings from devices that are locked. A bug made it so we could not change the address we wanted to ping to; all ip-addresses were locked, even a \'93\loch\f39 \hich\f39 ping to\'94\loch\f39 address.
+\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12727249 \hich\af39\dbch\af31505\loch\f39 * Mino\hich\af39\dbch\af31505\loch\f39
+r bug: If we ping a local IP that does not exist, the error message we were getting was the wrong error message. Fixed that.
+\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4995504 \hich\af39\dbch\af31505\loch\f39 * When wireless device is powered off, remove all wireless links. Links connected to WLAN had been reconnected. Fixed that.
+\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid11235612 \hich\af39\dbch\af31505\loch\f39 * Ca\hich\af39\dbch\af31505\loch\f39 \hich\f39
+nnot go into the network options if we have loaded the network from resources. This way we cannot \'93\loch\f39 \hich\f39 cheat\'94\loch\f39
+ by changing the network options. This is in preparation for setting this up for school use. Making it harder for students to cheat on homework ass\hich\af39\dbch\af31505\loch\f39 i\hich\af39\dbch\af31505\loch\f39 gnments.}{\rtlch\fcs1 \ab\af39
+\ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid11235612\charrsid9664289
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid14170698 \hich\af39\dbch\af31505\loch\f39 Version 1.0.32
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid14170698\charrsid14170698 \hich\af39\dbch\af31505\loch\f39 *}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid14170698 \hich\af39\dbch\af31505\loch\f39
Allow dragging of items
@@ -154,7 +156,7 @@ cheat\'94\loch\f39 by changing the network options. This is in preparation for
\par \hich\af39\dbch\af31505\loch\f39 * Can right-click and change color of multiple selected items
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid8871995 \hich\af39\dbch\af31505\loch\f39 * Fixed some tracert bugs
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid7431196 \hich\af39\dbch\af31505\loch\f39 * lots of minor fixes so is more stable on Linux
-\par \hich\af39\dbch\af31505\loch\f39 * Saves settin\hich\af39\dbch\af31505\loch\f39 gs in ~/.conf/EduNetworkbuilder_config.xml file on Linux
+\par \hich\af39\dbch\af31505\loch\f39 * Saves settings in ~/.conf/EduNetworkbuilder_config.xml file o\hich\af39\dbch\af31505\loch\f39 n Linux
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid7475506 \hich\af39\dbch\af31505\loch\f39 * Cannot edit something that is powered off. Also, cannot ping, do DHCP refresh, etc.
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid4201155 \hich\af39\dbch\af31505\loch\f39 * Fixed losing the VPN password changes when editing VPN Info.
\par \hich\af39\dbch\af31505\loch\f39 * Fixed anchoring of puzzle filter box.
@@ -164,13 +166,13 @@ nvisible items. Forgotten switches and unseen network wires. Right now, the on
\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid14577306 \hich\af39\dbch\af31505\loch\f39 Version 1.0.31
\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid14577306 {\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid14577306\charrsid14577306 \hich\af39\dbch\af31505\loch\f39 *}{
\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid14577306 \hich\af39\dbch\af31505\loch\f39 Added powering off switches, routers, and the like
-\par \hich\af39\dbch\af31505\loch\f39 * Added traceroute
+\par \hich\af39\dbch\af31505\loch\f39 * Added\hich\af39\dbch\af31505\loch\f39 traceroute
\par \hich\af39\dbch\af31505\loch\f39 * Added a few puzzles for those
\par \hich\af39\dbch\af31505\loch\f39 * Moved to a new git repository
\par \hich\af39\dbch\af31505\loch\f39 * Changed the default location of popups. They worked very strange in a multi-window environment.}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid14577306\charrsid14577306
\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.30
\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * Another downloadable (zip only, stable) version.}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296
-\par \hich\af39\dbch\af31505\loch\f39 Version \hich\af39\dbch\af31505\loch\f39 1.0.29
+\par \hich\af39\dbch\af31505\loch\f39 Version 1.0.29
\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * Lots of VLAN butfixes
\par \hich\af39\dbch\af31505\loch\f39 * Fixed ping-fail test
\par \hich\af39\dbch\af31505\loch\f39 * Lots more VLAN puzzles
@@ -186,25 +188,25 @@ nvisible items. Forgotten switches and unseen network wires. Right now, the on
\par \hich\af39\dbch\af31505\loch\f39 - Graphics drawn "smarter"
\par \hich\af39\dbch\af31505\loch\f39 - Result is that things flow smoother. Loopback2 also works much nicer.
\par \hich\af39\dbch\af31505\loch\f39 * Fixed minor issue with "help" puzzle
-\par \hich\af39\dbch\af31505\loch\f39 * Made help "?" bu\hich\af39\dbch\af31505\loch\f39 tton turn red when it is part of the puzzle
+\par \hich\af39\dbch\af31505\loch\f39 * Made help "?" button tur\hich\af39\dbch\af31505\loch\f39 n red when it is part of the puzzle
\par \hich\af39\dbch\af31505\loch\f39 * Put checkmark to display names and IPs of devices on front form.
\par \hich\af39\dbch\af31505\loch\f39 * Add a NetTest to show people to click on the "display Device names and IP" checkmark}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 Version 1.0.25
\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * Minor changes to help file
-\par \hich\af39\dbch\af31505\loch\f39 * Fixed size o\hich\af39\dbch\af31505\loch\f39 f labels on IP-Address editor box
+\par \hich\af39\dbch\af31505\loch\f39 * Fixed size of labels\hich\af39\dbch\af31505\loch\f39 on IP-Address editor box
\par \hich\af39\dbch\af31505\loch\f39 * Hide gateway label when we do not need it. (ip-address editor)
\par \hich\af39\dbch\af31505\loch\f39 * rename "mixed network" puzzle to be "adding devices" (the puzzle was about adding devices)
\par \hich\af39\dbch\af31505\loch\f39 * Changed layout of many messages
-\par \hich\af39\dbch\af31505\loch\f39 * Save the level we are workin\hich\af39\dbch\af31505\loch\f39 g on. Allows us to finish level 5 before level 3 if we want to.
+\par \hich\af39\dbch\af31505\loch\f39 * Save the level we are working on. A\hich\af39\dbch\af31505\loch\f39 llows us to finish level 5 before level 3 if we want to.
\par \hich\af39\dbch\af31505\loch\f39 * Make network-loop puzzles sit next to each-other
\par \hich\af39\dbch\af31505\loch\f39 * Make it so network-loop2 puzzle asks for second ping after first one finishes
\par \hich\af39\dbch\af31505\loch\f39 * Lots of work towards the French translation}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296
-\par \hich\af39\dbch\af31505\loch\f39 Version 1.0.2\hich\af39\dbch\af31505\loch\f39 4
-\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * Add sound when ctrl-s is pressed so we know we saved.
+\par \hich\af39\dbch\af31505\loch\f39 Version 1.0.24
+\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * A\hich\af39\dbch\af31505\loch\f39 dd sound when ctrl-s is pressed so we know we saved.
\par \hich\af39\dbch\af31505\loch\f39 * Add sound fail when save is canceled (will use it later if ctrl-s fails)
\par \hich\af39\dbch\af31505\loch\f39 * Added some wireless puzzles
\par \hich\af39\dbch\af31505\loch\f39 * Fix issue with WAP not forwarding packets correctly
-\par \hich\af39\dbch\af31505\loch\f39 * Clear out old status message if we\hich\af39\dbch\af31505\loch\f39 do something. So we do not say "saved" forever...
+\par \hich\af39\dbch\af31505\loch\f39 * Clear out old status message if we do some\hich\af39\dbch\af31505\loch\f39 thing. So we do not say "saved" forever...
\par \hich\af39\dbch\af31505\loch\f39 * Fixed bad gateway on wireless router issue
\par \hich\af39\dbch\af31505\loch\f39 * Fixed wbridge misbehaving. (issue with gateway)
\par \hich\af39\dbch\af31505\loch\f39 * Added wireless items to help and context help topics
@@ -213,51 +215,51 @@ nvisible items. Forgotten switches and unseen network wires. Right now, the on
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.23 09/20/2015
\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * Fixed issues with broadcast packets
\par \hich\af39\dbch\af31505\loch\f39 * Fixed a network loop issue
-\par \hich\af39\dbch\af31505\loch\f39 * Fixed issue with multiple interfaces and bein\hich\af39\dbch\af31505\loch\f39 g able to go out a different interface than we came in on
+\par \hich\af39\dbch\af31505\loch\f39 * Fixed issue with multiple interfaces and being able to go o\hich\af39\dbch\af31505\loch\f39 ut a different interface than we came in on
\par \hich\af39\dbch\af31505\loch\f39 * Fixed many small bugs that crept in when fixing other bugs. Now all puzzles seem to play correctly}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 Version 1.0.22 09/01/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Added ssid and keys for wireless links
-\par \hich\af39\dbch\af31505\loch\f39 * Wireless will auto-disconn\hich\af39\dbch\af31505\loch\f39 ect if link is too long
+\par \hich\af39\dbch\af31505\loch\f39 * Wireless will auto-disconnect if link is\hich\af39\dbch\af31505\loch\f39 too long
\par \hich\af39\dbch\af31505\loch\f39 * Wireless will auto-connect if ssid and key match, if link is short enough
\par \hich\af39\dbch\af31505\loch\f39 * Packets will drop on wireless links if distance is too great
\par \hich\af39\dbch\af31505\loch\f39 * wport has no interface (cannot edit IP address)
-\par \hich\af39\dbch\af31505\loch\f39 * wireless router works properly - forwards\hich\af39\dbch\af31505\loch\f39 broadcast packets
+\par \hich\af39\dbch\af31505\loch\f39 * wireless router works properly - forwards broadcast pac\hich\af39\dbch\af31505\loch\f39 kets
\par \hich\af39\dbch\af31505\loch\f39 * wireless router handles dhcp requests properly (both responds to it but also passes it on)
\par \hich\af39\dbch\af31505\loch\f39 * right-clicking light and microwave no longer has ping, arp, edit, and other context menus
\par \hich\af39\dbch\af31505\loch\f39 * added net-test for DHCP server status (on/off)
-\par \hich\af39\dbch\af31505\loch\f39 * I\hich\af39\dbch\af31505\loch\f39 f multiple DHCP servers, client randomly chooses which to keep.
+\par \hich\af39\dbch\af31505\loch\f39 * If multiple DHC\hich\af39\dbch\af31505\loch\f39 P servers, client randomly chooses which to keep.
\par \hich\af39\dbch\af31505\loch\f39 *Add Wireless Puzzle
\par \hich\af39\dbch\af31505\loch\f39 *Fix many wireless device bugs\line }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.21 08/15/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0
\f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Added a microwave and fluorescent light. They corrupt data when packets run close to them.
-\par \hich\af39\dbch\af31505\loch\f39 * Added some packe\hich\af39\dbch\af31505\loch\f39 t corruption puzzles
+\par \hich\af39\dbch\af31505\loch\f39 * Added some packet corruption p\hich\af39\dbch\af31505\loch\f39 uzzles
\par \hich\af39\dbch\af31505\loch\f39 * Fixed window resize-on-load issue where the help window popped up first, then the builder window resized over to hide the help window.
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.20 08/12/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * wports do not display on tooltips or when printing the device info
-\par \hich\af39\dbch\af31505\loch\f39 *\hich\af39\dbch\af31505\loch\f39 Added ctrl-s to quick-save a network we are working on
+\par \hich\af39\dbch\af31505\loch\f39 * Added ctrl-s \hich\af39\dbch\af31505\loch\f39 to quick-save a network we are working on
\par \hich\af39\dbch\af31505\loch\f39 * commented out wireless devices for now - doing a big demo and wireless is not yet complete
\par \hich\af39\dbch\af31505\loch\f39 * added search box to help
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.19 08/08/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
-\par \hich\af39\dbch\af31505\loch\f39 *Updated context help for most puzzles that introduce\hich\af39\dbch\af31505\loch\f39 new ideas.
+\par \hich\af39\dbch\af31505\loch\f39 *Updated context help for most puzzles that introduce new ideas.
\par \hich\af39\dbch\af31505\loch\f39 * Sorted Help topics when adding them in net-tests.
\par \hich\af39\dbch\af31505\loch\f39 * Added some images to the help to help clarify things.
\par \hich\af39\dbch\af31505\loch\f39 * Start with the help windows being the same "height" as the network window.
-\par \hich\af39\dbch\af31505\loch\f39 * Open Help so it can be kept open while the puzzles prog\hich\af39\dbch\af31505\loch\f39 ress.
-\par \hich\af39\dbch\af31505\loch\f39 * Deal with minimized state better (used to shrink window to smallest possible state)
+\par \hich\af39\dbch\af31505\loch\f39 * Open Help so it can be kept open while the puzzles progress.
+\par \hich\af39\dbch\af31505\loch\f39 * Deal w\hich\af39\dbch\af31505\loch\f39 ith minimized state better (used to shrink window to smallest possible state)
\par \hich\af39\dbch\af31505\loch\f39 * Remember size and location of main window between uses.
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.18 08/08/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Added Context Help for puzzles.
\par \hich\af39\dbch\af31505\loch\f39 - Each puzzle can have context help
-\par \hich\af39\dbch\af31505\loch\f39 - There\hich\af39\dbch\af31505\loch\f39 is a net-test to have us read help
+\par \hich\af39\dbch\af31505\loch\f39 - There is a net-test\hich\af39\dbch\af31505\loch\f39 to have us read help
\par \hich\af39\dbch\af31505\loch\f39 * fixed minor problem with a "ding" sound when we load a puzzle that has something locked.
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.17 08/01/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Added more help
\par \hich\af39\dbch\af31505\loch\f39 * Much progress made in preparing for a French translation
-\par \hich\af39\dbch\af31505\loch\f39 * allow for Puzzle's desc\hich\af39\dbch\af31505\loch\f39 ription to be in another language
+\par \hich\af39\dbch\af31505\loch\f39 * allow for Puzzle's description to be \hich\af39\dbch\af31505\loch\f39 in another language
\par \hich\af39\dbch\af31505\loch\f39 * Added more to help
\par \hich\af39\dbch\af31505\loch\f39 * Removed edit -> cut, paste, copy, undo. They never did anything. So why have them?
\par \hich\af39\dbch\af31505\loch\f39 * Save box starts in the directory of the file we opened (if we have one)
-\par \hich\af39\dbch\af31505\loch\f39 * Choose a language at startup if one ha\hich\af39\dbch\af31505\loch\f39 s never been chosen, and have option to change language.
+\par \hich\af39\dbch\af31505\loch\f39 * Choose a language at startup if one has never been c\hich\af39\dbch\af31505\loch\f39 hosen, and have option to change language.
\par \hich\af39\dbch\af31505\loch\f39 * Added another puzzle, showing what happens (or does not happen) if we have two networks that use the same IP addresses, and we want to build a VPN between them.
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.16 07/18/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Added a\hich\af39\dbch\af31505\loch\f39 bility to break links (bad network wire)
@@ -268,25 +270,26 @@ nvisible items. Forgotten switches and unseen network wires. Right now, the on
\par \hich\af39\dbch\af31505\loch\f39 * Fixed bug: switches could not use DHCP for many different reasons. Now it works for them.
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.15 07/11/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Added ping time progress bar
-\par \hich\af39\dbch\af31505\loch\f39 * Fixed issue with things timing out before they completed. If the\hich\af39\dbch\af31505\loch\f39
- network screen is too large, it makes it go just a tiny bit slower and various things would fail. When the first packet successfully makes it to the far end, it recomputes the time needed and gives extra time.
-\par \hich\af39\dbch\af31505\loch\f39 * Added context menu ping. If an item is su\hich\af39\dbch\af31505\loch\f39 pposed to ping something, right-clicking adds the ping test to the menu. Takes some of the guess-work out of things.
-\par \hich\af39\dbch\af31505\loch\f39 * Fixed minor issue with this change log. Had two 1.0.11 versions & somehow was stating we were at version 10.x.x instead of 1.x.x (sigh)\hich\af39\dbch\af31505\loch\f39
-\par \hich\af39\dbch\af31505\loch\f39 * Fixed the VPNify puzzle. Had a goof in it.
+\par \hich\af39\dbch\af31505\loch\f39 * Fixed issue with things timing out before they completed. If the network\hich\af39\dbch\af31505\loch\f39
+ screen is too large, it makes it go just a tiny bit slower and various things would fail. When the first packet successfully makes it to the far end, it recomputes the time needed and gives extra time.
+\par \hich\af39\dbch\af31505\loch\f39 * Added context menu ping. If an item is supposed t\hich\af39\dbch\af31505\loch\f39 o ping something, right-clicking adds the ping test to the menu. Takes some of the guess-work out of things.
+\par \hich\af39\dbch\af31505\loch\f39 * Fixed minor issue with this change log. Had two 1.0.11 versions & somehow was stating we were at version 10.x.x instead of 1.x.x (sigh)
+\par \hich\af39\dbch\af31505\loch\f39 * Fix\hich\af39\dbch\af31505\loch\f39 ed the VPNify puzzle. Had a goof in it.
\par \hich\af39\dbch\af31505\loch\f39 * Made it so you cannot connect a link to a VPN. A VPN should be a virtual connection, not a physical connection.
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.14 07/10/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
-\par \hich\af39\dbch\af31505\loch\f39 * When we finish a puzzle, allow us to auto-open the "next puzzle\hich\af39\dbch\af31505\loch\f39 " box.
-\par \hich\af39\dbch\af31505\loch\f39 * Added lots more puzzles
+\par \hich\af39\dbch\af31505\loch\f39 * When we finish a puzzle, allow us to auto-open the "next puzzle" box.
+\par \hich\af39\dbch\af31505\loch\f39 *\hich\af39\dbch\af31505\loch\f39 Added lots more puzzles
\par \hich\af39\dbch\af31505\loch\f39 * Added more help & documentation
\par \hich\af39\dbch\af31505\loch\f39 * Made it so test for local IP also checked to make sure the subnet-masks matched
\par \hich\af39\dbch\af31505\loch\f39 * Made it so the test for a matching route compared netmasks
\par \hich\af39\dbch\af31505\loch\f39 * Added a printer object
-\par \hich\af39\dbch\af31505\loch\f39 * Added a copier obje\hich\af39\dbch\af31505\loch\f39 ct
-\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.13 06/21/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
+\par \hich\af39\dbch\af31505\loch\f39 * Added a copier object
+\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Versi\hich\af39\dbch\af31505\loch\f39 on 1.0.13 06/21/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
+
\par \hich\af39\dbch\af31505\loch\f39 * Fixed issues with arp - arp could go through routers. Now works correctly
\par \hich\af39\dbch\af31505\loch\f39 * Made it test for puzzle completion after adding devices
\par \hich\af39\dbch\af31505\loch\f39 * Made it test for completion after changing / deleting devices
-\par \hich\af39\dbch\af31505\loch\f39 * Let you delete / add NICs\hich\af39\dbch\af31505\loch\f39 on PCs, primarily so we can solve the duplicate MAC puzzle
+\par \hich\af39\dbch\af31505\loch\f39 * Let you delete / add NICs on PCs,\hich\af39\dbch\af31505\loch\f39 primarily so we can solve the duplicate MAC puzzle
\par \hich\af39\dbch\af31505\loch\f39 * Replaced the "Network Loop" puzzle with the correct one.
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.12 06/20/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Added VPN and TUN nic types
@@ -327,39 +330,39 @@ nvisible items. Forgotten switches and unseen network wires. Right now, the on
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.0.8 05/25/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Always Start with level0 puzzles for now
\par \hich\af39\dbch\af31505\loch\f39 * Fixed the icon when program running
-\par \hich\af39\dbch\af31505\loch\f39 * Added an infrastructure for Puzzles (needs work)
+\par \hich\af39\dbch\af31505\loch\f39 * Added an infrastructure \hich\af39\dbch\af31505\loch\f39 for Puzzles (needs work)
\par \hich\af39\dbch\af31505\loch\f39 * Added a number of basic puzzles
\par \hich\af39\dbch\af31505\loch\f39 * Fixed DHCP Leases. Now it clears leases when you change the DHCP server range.
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.0.7 05/16/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Added file association so we can double-click an enbx file
-\par \hich\af39\dbch\af31505\loch\f39 * Fixed the icon so it looks right (removed left edge)
+\par \hich\af39\dbch\af31505\loch\f39 * Fixed the icon so it lo\hich\af39\dbch\af31505\loch\f39 oks right (removed left edge)
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.0.6 05/16/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Able to delete a route (right click route and delete it)
\par \hich\af39\dbch\af31505\loch\f39 * Add map title as something we can load/save
\par \hich\af39\dbch\af31505\loch\f39 * Add message as something we can load and save
-\par \hich\af39\dbch\af31505\loch\f39 * Changing size o\hich\af39\dbch\af31505\loch\f39 f items affects all items
+\par \hich\af39\dbch\af31505\loch\f39 * Changing size of items affects all items
\par \hich\af39\dbch\af31505\loch\f39 * Allow entering a hostname in the IP address field (ping / gateway)
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.0.5 04/26/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Fixed ping from switch
\par \hich\af39\dbch\af31505\loch\f39 * Fixed error message when pinging IP that does not exist
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.0.4 04/26/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
-\par \hich\af39\dbch\af31505\loch\f39 * Fixed broadcast pi\hich\af39\dbch\af31505\loch\f39 ng
-\par \hich\af39\dbch\af31505\loch\f39 *Fixed dhcp request error
+\par \hich\af39\dbch\af31505\loch\f39 * Fixed broadcast ping
+\par \hich\af39\dbch\af31505\loch\f39 *Fixed dhcp request err\hich\af39\dbch\af31505\loch\f39 or
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.0.3 04/15/2015
\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * Added "file" -> "new" to erase and start a clean new network
\par \hich\af39\dbch\af31505\loch\f39 * Fixed pc2 to have gateway on "solved"->"Two Networks"
-\par \hich\af39\dbch\af31505\loch\f39 * Fixed - only machines capable of doing DHCP do dhcp request if we do DHCP req\hich\af39\dbch\af31505\loch\f39 uest on all
+\par \hich\af39\dbch\af31505\loch\f39 * Fixed - only machines capable of doing DHCP do dhcp request if we do DHCP request on all
\par \hich\af39\dbch\af31505\loch\f39 * Changed - major overhaul to tcp-stack.
\par \hich\af39\dbch\af31505\loch\f39 * Downgrade - Arp temporarily removed from system while tcp-stack overhaul completed
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.0.2 4/19/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Added IP-Phone
-\par \hich\af39\dbch\af31505\loch\f39 * Packet\hich\af39\dbch\af31505\loch\f39 s terminate at the far end - this makes it easier to see packets go both directions
+\par \hich\af39\dbch\af31505\loch\f39 * Packets terminate at the far end - this makes it easier to see packets go both dire\hich\af39\dbch\af31505\loch\f39 ctions
\par \hich\af39\dbch\af31505\loch\f39 * Packets are randomized in transit - Allows packets to arrive at slightly different times
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.0.1 4/11/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * DHCP selection on nics is not functioning correctly
\par \hich\af39\dbch\af31505\loch\f39 * Various small bug-fixes
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.0.0 4/10/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
-\par \hich\af39\dbch\af31505\loch\f39 This is the initial alpha build
+\par \hich\af39\dbch\af31505\loch\f39 This is the initial al\hich\af39\dbch\af31505\loch\f39 pha build
\par \hich\af39\dbch\af31505\loch\f39 * basic pinging
\par \hich\af39\dbch\af31505\loch\f39 * basic arp
\par \hich\af39\dbch\af31505\loch\f39 * Routers
@@ -507,8 +510,8 @@ fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e500000000000000000000000060fb
-8fd76421d301feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
+ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e50000000000000000000000005038
+91d6cd21d301feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000105000000000000}}
\ No newline at end of file
diff --git a/EduNetworkBuilder/Resources/languages/edustrings.resx b/EduNetworkBuilder/Resources/languages/edustrings.resx
index 3c1023c..d9e656a 100644
--- a/EduNetworkBuilder/Resources/languages/edustrings.resx
+++ b/EduNetworkBuilder/Resources/languages/edustrings.resx
@@ -1505,9 +1505,9 @@
Starting on link.
P_StartingOnLink = Starting on link.
-
- Display the name and IPs of network devices
- NetworkBuilder: NB_cbViewTitles = Display the name and IPs of network devices
+
+ Cycle through showing the name and IPs of network devices
+ NetworkBuilder: NB_btnCaptionss = Cycle through showing the name and IPs of network devices
VLANs