ESC key clears selected items.

This commit is contained in:
Tim Young 2017-06-06 20:53:16 -05:00
parent a99a9ed696
commit e13454b950
3 changed files with 124 additions and 106 deletions

View File

@ -96,8 +96,8 @@
this.samplesToolStripMenuItem});
this.msMainMenuStrip.Location = new System.Drawing.Point(0, 0);
this.msMainMenuStrip.Name = "msMainMenuStrip";
this.msMainMenuStrip.Padding = new System.Windows.Forms.Padding(4, 2, 0, 2);
this.msMainMenuStrip.Size = new System.Drawing.Size(463, 28);
this.msMainMenuStrip.Padding = new System.Windows.Forms.Padding(5, 2, 0, 2);
this.msMainMenuStrip.Size = new System.Drawing.Size(617, 28);
this.msMainMenuStrip.TabIndex = 0;
this.msMainMenuStrip.Text = "msMainMenuStrip";
//
@ -407,10 +407,10 @@
//
this.panelChoices.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
this.panelChoices.Location = new System.Drawing.Point(10, 25);
this.panelChoices.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.panelChoices.Location = new System.Drawing.Point(13, 31);
this.panelChoices.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.panelChoices.Name = "panelChoices";
this.panelChoices.Size = new System.Drawing.Size(59, 300);
this.panelChoices.Size = new System.Drawing.Size(79, 369);
this.panelChoices.TabIndex = 2;
//
// lbMessages
@ -420,10 +420,10 @@
this.lbMessages.Font = new System.Drawing.Font("Courier New", 8F);
this.lbMessages.FormattingEnabled = true;
this.lbMessages.ItemHeight = 16;
this.lbMessages.Location = new System.Drawing.Point(74, 329);
this.lbMessages.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.lbMessages.Location = new System.Drawing.Point(99, 405);
this.lbMessages.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.lbMessages.Name = "lbMessages";
this.lbMessages.Size = new System.Drawing.Size(366, 68);
this.lbMessages.Size = new System.Drawing.Size(487, 68);
this.lbMessages.TabIndex = 3;
this.lbMessages.DoubleClick += new System.EventHandler(this.lbMessages_DoubleClick);
//
@ -431,10 +431,9 @@
//
this.lblStatus.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblStatus.Location = new System.Drawing.Point(74, 400);
this.lblStatus.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.lblStatus.Location = new System.Drawing.Point(99, 492);
this.lblStatus.Name = "lblStatus";
this.lblStatus.Size = new System.Drawing.Size(365, 14);
this.lblStatus.Size = new System.Drawing.Size(487, 17);
this.lblStatus.TabIndex = 4;
this.lblStatus.Text = "lblStatus";
this.lblStatus.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@ -445,10 +444,10 @@
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pbNetworkView.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pbNetworkView.Location = new System.Drawing.Point(74, 25);
this.pbNetworkView.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.pbNetworkView.Location = new System.Drawing.Point(99, 31);
this.pbNetworkView.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.pbNetworkView.Name = "pbNetworkView";
this.pbNetworkView.Size = new System.Drawing.Size(366, 300);
this.pbNetworkView.Size = new System.Drawing.Size(487, 369);
this.pbNetworkView.TabIndex = 1;
this.pbNetworkView.TabStop = false;
this.pbNetworkView.DoubleClick += new System.EventHandler(this.pbNetworkView_DoubleClick);
@ -459,10 +458,10 @@
// btnHelp
//
this.btnHelp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.btnHelp.Location = new System.Drawing.Point(2, 27);
this.btnHelp.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnHelp.Location = new System.Drawing.Point(3, 33);
this.btnHelp.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.btnHelp.Name = "btnHelp";
this.btnHelp.Size = new System.Drawing.Size(21, 20);
this.btnHelp.Size = new System.Drawing.Size(28, 25);
this.btnHelp.TabIndex = 5;
this.btnHelp.Text = "?";
this.btnHelp.UseVisualStyleBackColor = true;
@ -472,8 +471,8 @@
//
this.rbHelp4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.rbHelp4.AutoSize = true;
this.rbHelp4.Location = new System.Drawing.Point(6, 53);
this.rbHelp4.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.rbHelp4.Location = new System.Drawing.Point(14, 65);
this.rbHelp4.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.rbHelp4.Name = "rbHelp4";
this.rbHelp4.Size = new System.Drawing.Size(17, 16);
this.rbHelp4.TabIndex = 6;
@ -484,8 +483,8 @@
//
this.rbHelp3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.rbHelp3.AutoSize = true;
this.rbHelp3.Location = new System.Drawing.Point(6, 69);
this.rbHelp3.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.rbHelp3.Location = new System.Drawing.Point(14, 85);
this.rbHelp3.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.rbHelp3.Name = "rbHelp3";
this.rbHelp3.Size = new System.Drawing.Size(17, 16);
this.rbHelp3.TabIndex = 7;
@ -496,8 +495,8 @@
//
this.rbHelp2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.rbHelp2.AutoSize = true;
this.rbHelp2.Location = new System.Drawing.Point(6, 87);
this.rbHelp2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.rbHelp2.Location = new System.Drawing.Point(14, 107);
this.rbHelp2.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.rbHelp2.Name = "rbHelp2";
this.rbHelp2.Size = new System.Drawing.Size(17, 16);
this.rbHelp2.TabIndex = 8;
@ -509,8 +508,8 @@
this.rbHelp1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.rbHelp1.AutoSize = true;
this.rbHelp1.Checked = true;
this.rbHelp1.Location = new System.Drawing.Point(6, 105);
this.rbHelp1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.rbHelp1.Location = new System.Drawing.Point(14, 129);
this.rbHelp1.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.rbHelp1.Name = "rbHelp1";
this.rbHelp1.Size = new System.Drawing.Size(17, 16);
this.rbHelp1.TabIndex = 9;
@ -527,16 +526,17 @@
this.HelpPanel.Controls.Add(this.rbHelp1);
this.HelpPanel.Controls.Add(this.rbHelp3);
this.HelpPanel.Controls.Add(this.rbHelp2);
this.HelpPanel.Location = new System.Drawing.Point(438, 25);
this.HelpPanel.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.HelpPanel.Location = new System.Drawing.Point(584, 31);
this.HelpPanel.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.HelpPanel.Name = "HelpPanel";
this.HelpPanel.Size = new System.Drawing.Size(25, 300);
this.HelpPanel.Size = new System.Drawing.Size(33, 369);
this.HelpPanel.TabIndex = 10;
//
// cbViewTitles
//
this.cbViewTitles.AutoSize = true;
this.cbViewTitles.Location = new System.Drawing.Point(5, 7);
this.cbViewTitles.Location = new System.Drawing.Point(7, 9);
this.cbViewTitles.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.cbViewTitles.Name = "cbViewTitles";
this.cbViewTitles.Size = new System.Drawing.Size(18, 17);
this.cbViewTitles.TabIndex = 10;
@ -546,18 +546,18 @@
// myProgressBar
//
this.myProgressBar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.myProgressBar.Location = new System.Drawing.Point(10, 329);
this.myProgressBar.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.myProgressBar.Location = new System.Drawing.Point(13, 405);
this.myProgressBar.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.myProgressBar.Name = "myProgressBar";
this.myProgressBar.Size = new System.Drawing.Size(59, 19);
this.myProgressBar.Size = new System.Drawing.Size(79, 23);
this.myProgressBar.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
this.myProgressBar.TabIndex = 11;
//
// BuilderWindow
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(463, 412);
this.ClientSize = new System.Drawing.Size(617, 507);
this.Controls.Add(this.myProgressBar);
this.Controls.Add(this.lblStatus);
this.Controls.Add(this.lbMessages);
@ -567,13 +567,14 @@
this.Controls.Add(this.HelpPanel);
this.Icon = global::EduNetworkBuilder.Properties.Resources.NBIco;
this.MainMenuStrip = this.msMainMenuStrip;
this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.Name = "BuilderWindow";
this.Text = "Network Builder";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.BuilderWindow_FormClosing);
this.Load += new System.EventHandler(this.BuilderWindow_Load);
this.Shown += new System.EventHandler(this.BuilderWindow_Shown);
this.ResizeEnd += new System.EventHandler(this.BuilderWindow_ResizeEnd);
this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.BuilderWindow_KeyDown);
this.Resize += new System.EventHandler(this.BuilderWindow_Resize);
this.msMainMenuStrip.ResumeLayout(false);
this.msMainMenuStrip.PerformLayout();

View File

@ -88,6 +88,9 @@ namespace EduNetworkBuilder
myTimer.Tick += Tick;
myTimer.Start();
//Set this so we can intercept the esc key. We want to un-set the selected items if esc is pressed
KeyPreview = true;
LoadPuzzleInfo();
}
@ -1681,5 +1684,15 @@ namespace EduNetworkBuilder
this.DesktopLocation = new Point(x, y);
}
private void BuilderWindow_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Escape)
{
ItemsSelected.Clear();
pbNetworkView.Image = null;
UpdateVisuals();
}
}
}
}

View File

@ -94,19 +94,22 @@ Normal Table;}}{\*\listtable{\list\listtemplateid-678110632\listhybrid{\listleve
\fi-360\li5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5760\lin5760 }
{\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
;}\listid1535926840}}{\*\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}}{\*\rsidtbl \rsid12019296\rsid14170698\rsid14577306}{\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\mo6\dy6\hr8\min34}{\version3}{\edmins4}{\nofpages9}{\nofwords1631}{\nofchars9303}{\nofcharsws10913}
{\vern91}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect
\listoverridecount0\ls4}{\listoverride\listid159203163\listoverridecount0\ls5}{\listoverride\listid272565942\listoverridecount0\ls6}}{\*\rsidtbl \rsid12019296\rsid12727595\rsid14170698\rsid14577306\rsid15677065}{\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\mo6\dy6\hr20\min51}{\version5}{\edmins5}{\nofpages9}{\nofwords1656}
{\nofchars9442}{\nofcharsws11076}{\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\viewscale100\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\pararsid14170698 \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\insrsid14170698 \hich\af39\dbch\af31505\loch\f39 Version 1.0.32}{\rtlch\fcs1
\ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid14170698
\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\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
\hich\af39\dbch\af31505\loch\f39 Allow dragging of items
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid14170698\charrsid14170698
Allow dragging of items
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12727595 \hich\af39\dbch\af31505\loch\f39 * Select multiple items for dragging by using a nice big drag-box.}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0
\f39\lang9\langfe1033\langnp9\insrsid14170698
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12727595 \hich\af39\dbch\af31505\loch\f39 * Highlight the multiple items if selecting them
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid15677065 \hich\af39\dbch\af31505\loch\f39 * Allow the ESC key to clear the selected items.}{\rtlch\fcs1 \ab\af39 \ltrch\fcs0
\f39\lang9\langfe1033\langnp9\insrsid15677065\charrsid14170698
\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
@ -114,77 +117,79 @@ Normal Table;}}{\*\listtable{\list\listtemplateid-678110632\listhybrid{\listleve
\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 }\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 Versio\hich\af39\dbch\af31505\loch\f39
n 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 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
\par \hich\af39\dbch\af31505\loch\f39 * Up\hich\af39\dbch\af31505\loch\f39 date VLAN documentation
\par \hich\af39\dbch\af31505\loch\f39 * Update VLAN documentation
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.28
\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * Initial VLAN release
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.27
\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * Made distribution easier by CD (does updates from web, but we also have a downloadable zip you can install from)
\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * Made distribution easier b\hich\af39\dbch\af31505\loch\f39
y CD (does updates from web, but we also have a downloadable zip you can install from)
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.26
\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * Major graphics overhaul
\par \hich\af39\dbch\af31505\loch\f39 - Packets move on tim\hich\af39\dbch\af31505\loch\f39 er
\par \hich\af39\dbch\af31505\loch\f39 - Packets move on timer
\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 "?" button turn red when it is part of the puzzle
\par \hich\af39\dbch\af31505\loch\f39 * Put checkmark to display names and IPs of dev\hich\af39\dbch\af31505\loch\f39 ices 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 * Put checkmark to display names and IPs of devices on front form.
\par \hich\af39\dbch\af31505\loch\f39 * Add a NetT\hich\af39\dbch\af31505\loch\f39 est 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 of labels 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 * rename "mixed network"\hich\af39\dbch\af31505\loch\f39 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 working on. Allows us to finish level 5\hich\af39\dbch\af31505\loch\f39 before level 3 if we want to.
\par \hich\af39\dbch\af31505\loch\f39 * Save the level we are working on. Allows 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 * Make \hich\af39\dbch\af31505\loch\f39 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.24
\par }{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 * Add sound when ctrl-s is pr\hich\af39\dbch\af31505\loch\f39 essed 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 }{\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 * Add sound fail when save is canceled (will use it later if c\hich\af39\dbch\af31505\loch\f39 trl-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 do something. So we do not say "\hich\af39\dbch\af31505\loch\f39 saved" forever...
\par \hich\af39\dbch\af31505\loch\f39 * Clear out old status message if we do something. 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 * Fixed wbridge misbehavin\hich\af39\dbch\af31505\loch\f39 g. (issue with gateway)
\par \hich\af39\dbch\af31505\loch\f39 * Added wireless items to help and context help topics
\par \hich\af39\dbch\af31505\loch\f39 * Thanks to Peter Wilson for so much of the translation backbone.
\par \hich\af39\dbch\af31505\loch\f39 * Lots of translation \hich\af39\dbch\af31505\loch\f39 string changes. The French translation should be soon in coming.
\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 \hich\af39\dbch\af31505\loch\f39 * Lots of translation string changes. The French translation should be soon in coming.
\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/\hich\af39\dbch\af31505\loch\f39 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 being able to go out a different interface than we c\hich\af39\dbch\af31505\loch\f39 ame in on
\par \hich\af39\dbch\af31505\loch\f39 * Fixed issue with multiple interfaces and being able to go out 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-disconnect if link is 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 * Wireless will auto-connect if ss\hich\af39\dbch\af31505\loch\f39 id 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 broadcast packets
\par \hich\af39\dbch\af31505\loch\f39 * wir\hich\af39\dbch\af31505\loch\f39 eless router handles dhcp requests properly (both responds to it but also passes it on)
\par \hich\af39\dbch\af31505\loch\f39 * wireless router handles dhcp requests\hich\af39\dbch\af31505\loch\f39 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 * If multiple DHCP servers,\hich\af39\dbch\af31505\loch\f39 client randomly chooses which to keep.
\par \hich\af39\dbch\af31505\loch\f39 * If multiple DHCP servers, client randomly chooses which to \hich\af39\dbch\af31505\loch\f39 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 packet corruption puzzles
\par \hich\af39\dbch\af31505\loch\f39 * F\hich\af39\dbch\af31505\loch\f39 ixed window resize-on-load issue where the help window popped up first, then the builder window resized over to hide the help window.
\par \hich\af39\dbch\af31505\loch\f39 * Fixed window resize-on-load issue w\hich\af39\dbch\af31505\loch\f39 here 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 * Added ctrl-s to quick-s\hich\af39\dbch\af31505\loch\f39 ave 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 ctrl-s to quick-save a network we are working on
\par \hich\af39\dbch\af31505\loch\f39 * \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 new ideas.
\par \hich\af39\dbch\af31505\loch\f39 * Sorted Hel\hich\af39\dbch\af31505\loch\f39 p topics when adding them in net-tests.
\par \hich\af39\dbch\af31505\loch\f39 * Sorted Help topics when adding them in net-t\hich\af39\dbch\af31505\loch\f39 ests.
\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 progress.
@ -193,119 +198,118 @@ Normal Table;}}{\*\listtable{\list\listtemplateid-678110632\listhybrid{\listleve
\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 is a net-test to have us read help
\par \hich\af39\dbch\af31505\loch\f39 - There is a net-test to have us \hich\af39\dbch\af31505\loch\f39 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 Puzzl\hich\af39\dbch\af31505\loch\f39 e's description to be in another language
\par \hich\af39\dbch\af31505\loch\f39 * allow for Puzzle's description to be in another l\hich\af39\dbch\af31505\loch\f39 anguage
\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 i\hich\af39\dbch\af31505\loch\f39 f one has 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 chosen, and h\hich\af39\dbch\af31505\loch\f39 ave 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 *\hich\af39\dbch\af31505\loch\f39 Added ability to break links (bad network wire)
\par \hich\af39\dbch\af31505\loch\f39 * Added ability to break links (bad\hich\af39\dbch\af31505\loch\f39 network wire)
\par \hich\af39\dbch\af31505\loch\f39 * "connection lights" on network cards / ports when we edit devices
\par \hich\af39\dbch\af31505\loch\f39 * Test for "needs link to" does not succeed if the link in question is a broken link
\par \hich\af39\dbch\af31505\loch\f39 * Added a puzzle to show you how to find broken links
\par \hich\af39\dbch\af31505\loch\f39 * Used broken links in other puzzles
\par \hich\af39\dbch\af31505\loch\f39 * Used broken links in other puzz\hich\af39\dbch\af31505\loch\f39 les
\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 screen is too large, it m\hich\af39\dbch\af31505\loch\f39
akes 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 to ping something, right-cl\hich\af39\dbch\af31505\loch\f39 icking 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 * Fixed the VPNify puzzle. Had\hich\af39\dbch\af31505\loch\f39 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 * When we finish a puzzle, allow us to auto-open the "next puzzle" box.
\par \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 *\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 object
\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 * Fixed issues with arp - arp could go through routers. Now works correctly
\par \hich\af39\dbch\af31505\loch\f39 * Fi\hich\af39\dbch\af31505\loch\f39 xed 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 \hich\af39\dbch\af31505\loch\f39 you delete / add NICs 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, primarily so we can solve\hich\af39\dbch\af31505\loch\f39 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
\par \hich\af39\dbch\af31505\loch\f39 * Fixed numerous small bugs
\par \hich\af39\dbch\af31505\loch\f39 * Fixed bug with early solution\hich\af39\dbch\af31505\loch\f39 to failed ping test
\par \hich\af39\dbch\af31505\loch\f39 * Added "ding" when a test is solved.
\par \hich\af39\dbch\af31505\loch\f39 * Fixed bug with early solution to failed ping test
\par \hich\af39\dbch\af31505\loch\f39 * Added "ding" when a test is solv\hich\af39\dbch\af31505\loch\f39 ed.
\par \hich\af39\dbch\af31505\loch\f39 * Added a "firewall" network that has a firewall and vpns
\par \hich\af39\dbch\af31505\loch\f39 * Added numerous firewall / vpn puzzles
\par \hich\af39\dbch\af31505\loch\f39 * Fixed a DNS issue. It now more intelligently finds the right IP address when you ping it
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version\hich\af39\dbch\af31505\loch\f39 1.0.11 06/14/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Added the ability to lock various important features to make puzzles better
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.11 06/14/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Added the ability to lock variou\hich\af39\dbch\af31505\loch\f39 s important features to make puzzles better
\par \hich\af39\dbch\af31505\loch\f39 * Able to add interfaces (multiple IPs on a Network Card)
\par \hich\af39\dbch\af31505\loch\f39 * Right-click context menu to add net-tests.
\par \hich\af39\dbch\af31505\loch\f39 * Del key now deletes the last item we had clicked o\hich\af39\dbch\af31505\loch\f39 n
\par \hich\af39\dbch\af31505\loch\f39 * Del key now deletes the last item we had clicked on
\par \hich\af39\dbch\af31505\loch\f39 * Can add NICs (on some devices)
\par \hich\af39\dbch\af31505\loch\f39 * Can delete NICs
\par \hich\af39\dbch\af31505\loch\f39 * Fixed minor bug with broadcast pinging solving ping test for individual computers
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.10 06/13/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Renamed puzzles to manage them easier
\par \hich\af39\dbch\af31505\loch\f39 * Deal with duplicate IPs, and what happens when a packet returns to a computer that did not send it.
\par \hich\af39\dbch\af31505\loch\f39 * Change to the help window so you can keep the window open while working with the puzzle.
\par \hich\af39\dbch\af31505\loch\f39 * Change to the donation link. Not that it will ever be used, \hich\af39\dbch\af31505\loch\f39 but it makes me feel better having a few places for people to donate to if they wish.
\par \hich\af39\dbch\af31505\loch\f39 * Minor change for how broadcast packets work, specifically dealing with duplicate IP addresses.
\par \hich\af39\dbch\af31505\loch\f39 * \hich\af39\dbch\af31505\loch\f39 Change to the help window so you can keep the window open while working with the puzzle.
\par \hich\af39\dbch\af31505\loch\f39 * Change to the donation link. Not that it will ever be used, but it makes me feel better having a few places for people to donate to if they wish.
\par \hich\af39\dbch\af31505\loch\f39 * Minor change for\hich\af39\dbch\af31505\loch\f39 how broadcast packets work, specifically dealing with duplicate IP addresses.
\par \hich\af39\dbch\af31505\loch\f39 * Added a "firewall" device & WAN port with masquerade
\par \hich\af39\dbch\af31505\loch\f39 * Added a FailedPi\hich\af39\dbch\af31505\loch\f39 ng test so we can ping things that must fail (show the firewall works)
\par \hich\af39\dbch\af31505\loch\f39 * Added a FailedPing test so we can ping things that must fail (show the firewall works)
\par \hich\af39\dbch\af31505\loch\f39 * added more to the help
\par \hich\af39\dbch\af31505\loch\f39 * added more puzzles
\par \hich\af39\dbch\af31505\loch\f39 * added \hich\af39\dbch\af31505\loch\f39 more puzzles
\par }{\rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.0.9 05/29/2015}{\rtlch\fcs1 \af39 \ltrch\fcs0 \f39\lang9\langfe1033\langnp9\insrsid12019296
\par \hich\af39\dbch\af31505\loch\f39 * Add a grid to the network map. It makes things easier to straighten up
\par \hich\af39\dbch\af31505\loch\f39 * Sorted and organized the puzzles
\par \hich\af39\dbch\af31505\loch\f39 *\hich\af39\dbch\af31505\loch\f39 Made a level for each puzzle.
\par \hich\af39\dbch\af31505\loch\f39 * Made a level for each puzzle.
\par \hich\af39\dbch\af31505\loch\f39 * Tracked the puzzles which have been completed
\par \hich\af39\dbch\af31505\loch\f39 * When we open the puzzle list, we now show the first level of puzzles that have an uncompleted puzzle.
\par \hich\af39\dbch\af31505\loch\f39 * When we open the puzzle\hich\af39\dbch\af31505\loch\f39 list, we now show the first level of puzzles that have an uncompleted puzzle.
\par \hich\af39\dbch\af31505\loch\f39 * Added more "tests", viewing help, pinging, arp, and dhcp.
\par \hich\af39\dbch\af31505\loch\f39 * Reset butto\hich\af39\dbch\af31505\loch\f39 ns when we load a new network.
\par \hich\af39\dbch\af31505\loch\f39 * Reset buttons when we load a new network.
\par \hich\af39\dbch\af31505\loch\f39 * Added a bunch more puzzles
\par \hich\af39\dbch\af31505\loch\f39 * Sometimes the remembered IP gets annoying when it remembers odd gateways and numbers we cannot change. Fixed that in many cases.
\par \hich\af39\dbch\af31505\loch\f39 * Sometimes the remembered IP gets annoying \hich\af39\dbch\af31505\loch\f39 when it remembers odd gateways and numbers we cannot change. Fixed that in many cases.
\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 \hich\af39\dbch\af31505\loch\f39 for now
\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 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 a\hich\af39\dbch\af31505\loch\f39 ssociation 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 * 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 e\hich\af39\dbch\af31505\loch\f39 dge)
\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 of items affects all items
\par \hich\af39\dbch\af31505\loch\f39 * Allow entering a hostname in the IP address field (ping / gateway)
\par \hich\af39\dbch\af31505\loch\f39 * Allow entering a hostna\hich\af39\dbch\af31505\loch\f39 me 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\hich\af39\dbch\af31505\loch\f39 does not exist
\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 ping
\par \hich\af39\dbch\af31505\loch\f39 *Fixed dhcp request error
\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 \ab\af39 \ltrch\fcs0 \b\f39\lang9\langfe1033\langnp9\insrsid12019296 \hich\af39\dbch\af31505\loch\f39 Version 1.0.0.3 04/1\hich\af39\dbch\af31505\loch\f39 5/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\hich\af39\dbch\af31505\loch\f39 machines capable of doing DHCP do dhcp request if we do DHCP request 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 directions
\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 alpha bui\hich\af39\dbch\af31505\loch\f39 ld
\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
@ -453,8 +457,8 @@ fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e500000000000000000000000010b9
6a9fc9ded201feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e50000000000000000000000005023
b5a230dfd201feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000105000000000000}}