public override void Dispose()
 {
     if (GameTimeForm != null && !GameTimeForm.IsDisposed)
     {
         GameTimeForm.Close();
     }
     CurrentState.OnStart     -= state_OnStart;
     CurrentState.OnReset     -= state_OnReset;
     CurrentState.OnUndoSplit -= State_OnUndoSplit;
 }
 void state_OnReset(object sender, TimerPhase e)
 {
     GameTimeForm.Close();
     PreviousLocation = GameTimeForm.Location;
 }