home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 October / CMCD1004.ISO / Software / Shareware / Programare / gpssdk / GPS.NET Global Positioning SDK 1.4.6.msi / Data1.cab / MainForm.vb4 < prev    next >
Encoding:
Text File  |  2004-08-25  |  84.5 KB  |  1,842 lines

  1. ' **************************************************************************
  2. ' ****
  3. ' ****   GPS.NET Global Positioning SDK Example 1
  4. ' ****   A demonstration of GPS.NET's major features.
  5. ' ****
  6. ' ****   For assistance with your GPS device or for troubleshooting:
  7. ' ****
  8. ' ****          http://www.gpsdotnet.com/support
  9. ' ****          support@gpsdotnet.com
  10. ' ****
  11. ' ****   To view known product issues & updates in the Knowledge Base:
  12. ' ****
  13. ' ****          http://www.gpsdotnet.com/kb
  14. ' ****
  15. ' ****   For pricing information & online ordering:
  16. ' ****
  17. ' ****          http://www.gpsdotnet.com/purchase
  18. ' ****
  19. ' ****   This source code is considered public domain and may be re-used
  20. ' ****   in your own applications.
  21. ' ****
  22. ' *************************************************************************
  23. ' ****
  24. ' ****   NOTE: Since GPS.NET is multi-threaded, the Invoke() method is
  25. ' ****   used frequently to make sure that updates to form controls occur
  26. ' ****   on the form's thread.  This prevents the application from locking.
  27. ' ****   up, especially for Compact Framework apps.  For more information, 
  28. ' ****   refer to the Knowledge Base.  
  29. ' ****
  30. ' *************************************************************************
  31.  
  32. Imports StormSource.Gps
  33.  
  34. Public Class Form1
  35.     Inherits System.Windows.Forms.Form
  36.  
  37. #Region " Windows Form Designer generated code "
  38.  
  39.     Public Sub New()
  40.  
  41.         MyBase.New()
  42.  
  43.         InitializeComponent()
  44.  
  45.         'Add any initialization after the InitializeComponent() call
  46.  
  47.     End Sub
  48.  
  49.     'Form overrides dispose to clean up the component list.
  50.     Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
  51.         MyBase.Dispose(disposing)
  52.     End Sub
  53.  
  54.     'NOTE: The following procedure is required by the Windows Form Designer
  55.     'It can be modified using the Windows Form Designer.  
  56.     'Do not modify it using the code editor.
  57.     Friend WithEvents TabControl1 As System.Windows.Forms.TabControl
  58.     Friend WithEvents RawDataTabPage As System.Windows.Forms.TabPage
  59.     Friend WithEvents ParseButton As System.Windows.Forms.Button
  60.     Friend WithEvents Label1 As System.Windows.Forms.Label
  61.     Friend WithEvents ParsingText As System.Windows.Forms.TextBox
  62.     Friend WithEvents RecognizedSentencesLabel As System.Windows.Forms.Label
  63.     Friend WithEvents UnrecognizedSentencesLabel As System.Windows.Forms.Label
  64.     Friend WithEvents UnrecognizedSentences As System.Windows.Forms.ListBox
  65.     Friend WithEvents RecognizedSentences As System.Windows.Forms.ListBox
  66.     Friend WithEvents PositionTabPage As System.Windows.Forms.TabPage
  67.     Friend WithEvents SatelliteTabPage As System.Windows.Forms.TabPage
  68.     Friend WithEvents WaypointDisplayModeComboBox As System.Windows.Forms.ComboBox
  69.     Friend WithEvents WaypointColorComboBox As System.Windows.Forms.ComboBox
  70.     Friend WithEvents WaypointSymbolComboBox As System.Windows.Forms.ComboBox
  71.     Friend WithEvents WaypointIntersectingRoadCheckbox As System.Windows.Forms.CheckBox
  72.     Friend WithEvents WaypointCountryCheckbox As System.Windows.Forms.CheckBox
  73.     Friend WithEvents WaypointDepthCheckbox As System.Windows.Forms.CheckBox
  74.     Friend WithEvents WaypointFacilityNameCheckbox As System.Windows.Forms.CheckBox
  75.     Friend WithEvents WaypointCityCheckbox As System.Windows.Forms.CheckBox
  76.     Friend WithEvents WaypointStateCheckbox As System.Windows.Forms.CheckBox
  77.     Friend WithEvents WaypointAddressCheckbox As System.Windows.Forms.CheckBox
  78.     Friend WithEvents WaypointAltitudeCheckbox As System.Windows.Forms.CheckBox
  79.     Friend WithEvents WaypointDisplayModeCheckbox As System.Windows.Forms.CheckBox
  80.     Friend WithEvents WaypointSymbolCheckbox As System.Windows.Forms.CheckBox
  81.     Friend WithEvents WaypointColorCheckbox As System.Windows.Forms.CheckBox
  82.     Friend WithEvents WaypointCommentCheckbox As System.Windows.Forms.CheckBox
  83.     Friend WithEvents SupportsRoutes As System.Windows.Forms.Label
  84.     Friend WithEvents SupportsTracks As System.Windows.Forms.Label
  85.     Friend WithEvents SupportsWaypoints As System.Windows.Forms.Label
  86.     Friend WithEvents SupportsRoutesLabel As System.Windows.Forms.Label
  87.     Friend WithEvents SupportsTracksLabel As System.Windows.Forms.Label
  88.     Friend WithEvents SupportsWaypointsLabel As System.Windows.Forms.Label
  89.     Friend WithEvents BatteryLifeLabel As System.Windows.Forms.Label
  90.     Friend WithEvents BatteryLife As System.Windows.Forms.Label
  91.     Friend WithEvents ProtocolLabel As System.Windows.Forms.Label
  92.     Friend WithEvents Protocol As System.Windows.Forms.Label
  93.     Friend WithEvents SoftwareVersion As System.Windows.Forms.Label
  94.     Friend WithEvents SoftwareVersionLabel As System.Windows.Forms.Label
  95.     Friend WithEvents DeviceName As System.Windows.Forms.Label
  96.     Friend WithEvents ManufacturerLabel As System.Windows.Forms.Label
  97.     Friend WithEvents Manufacturer As System.Windows.Forms.Label
  98.     Friend WithEvents DeviceNameLabel As System.Windows.Forms.Label
  99.     Friend WithEvents PowerOffButton As System.Windows.Forms.Button
  100.     Friend WithEvents ErrorTabPage As System.Windows.Forms.TabPage
  101.     Friend WithEvents GpsExceptionTextBox As System.Windows.Forms.TextBox
  102.     Friend WithEvents Label3 As System.Windows.Forms.Label
  103.     Friend WithEvents ParsingExceptionTextBox As System.Windows.Forms.TextBox
  104.     Friend WithEvents Label2 As System.Windows.Forms.Label
  105.     Friend WithEvents ColumnHeader1 As System.Windows.Forms.ColumnHeader
  106.     Friend WithEvents ColumnHeader2 As System.Windows.Forms.ColumnHeader
  107.     Friend WithEvents ColumnHeader3 As System.Windows.Forms.ColumnHeader
  108.     Friend WithEvents ColumnHeader5 As System.Windows.Forms.ColumnHeader
  109.     Friend WithEvents ColumnHeader4 As System.Windows.Forms.ColumnHeader
  110.     Friend WithEvents BaudRateComboBox As System.Windows.Forms.ComboBox
  111.     Friend WithEvents BaudRateLabel As System.Windows.Forms.Label
  112.     Friend WithEvents ComPortLabel As System.Windows.Forms.Label
  113.     Friend WithEvents COMPortComboBox As System.Windows.Forms.ComboBox
  114.     Friend WithEvents StopButton As System.Windows.Forms.Button
  115.     Friend WithEvents StartButton As System.Windows.Forms.Button
  116.     Friend WithEvents UtmPosition As System.Windows.Forms.Label
  117.     Friend WithEvents UtmPositionLabel As System.Windows.Forms.Label
  118.     Friend WithEvents FixMethod As System.Windows.Forms.Label
  119.     Friend WithEvents FixMethodLabel As System.Windows.Forms.Label
  120.     Friend WithEvents TrackedSatellites As System.Windows.Forms.Label
  121.     Friend WithEvents TrackedSatellitesLabel As System.Windows.Forms.Label
  122.     Friend WithEvents FixedSatellites As System.Windows.Forms.Label
  123.     Friend WithEvents ActiveSatellitesLabel As System.Windows.Forms.Label
  124.     Friend WithEvents MeanDilutionOfPrecision As System.Windows.Forms.Label
  125.     Friend WithEvents MeanDilutionOfPrecisionLabel As System.Windows.Forms.Label
  126.     Friend WithEvents VerticalDilutionOfPrecision As System.Windows.Forms.Label
  127.     Friend WithEvents VerticalDilutionOfPrecisionLabel As System.Windows.Forms.Label
  128.     Friend WithEvents HorizontalDilutionOfPrecision As System.Windows.Forms.Label
  129.     Friend WithEvents HorizontalDilutionOfPrecisionLabel As System.Windows.Forms.Label
  130.     Friend WithEvents FixQuality As System.Windows.Forms.Label
  131.     Friend WithEvents FixQualityLabel As System.Windows.Forms.Label
  132.     Friend WithEvents FixObtained As System.Windows.Forms.Label
  133.     Friend WithEvents FixObtainedLabel As System.Windows.Forms.Label
  134.     Friend WithEvents FixMode As System.Windows.Forms.Label
  135.     Friend WithEvents FixModeLabel As System.Windows.Forms.Label
  136.     Friend WithEvents LocalTime As System.Windows.Forms.Label
  137.     Friend WithEvents LocalTimeLabel As System.Windows.Forms.Label
  138.     Friend WithEvents Speed As System.Windows.Forms.Label
  139.     Friend WithEvents SpeedLabel As System.Windows.Forms.Label
  140.     Friend WithEvents ActiveSatellites As System.Windows.Forms.Label
  141.     Friend WithEvents FixedSatellitesLabel As System.Windows.Forms.Label
  142.     Friend WithEvents UTCDateTime As System.Windows.Forms.Label
  143.     Friend WithEvents UTCDateTimeLabel As System.Windows.Forms.Label
  144.     Friend WithEvents Direction As System.Windows.Forms.Label
  145.     Friend WithEvents DirectionLabel As System.Windows.Forms.Label
  146.     Friend WithEvents Bearing As System.Windows.Forms.Label
  147.     Friend WithEvents Altitude As System.Windows.Forms.Label
  148.     Friend WithEvents Longitude As System.Windows.Forms.Label
  149.     Friend WithEvents Latitude As System.Windows.Forms.Label
  150.     Friend WithEvents BearingLabel As System.Windows.Forms.Label
  151.     Friend WithEvents LongitudeLabel As System.Windows.Forms.Label
  152.     Friend WithEvents AltitudeLabel As System.Windows.Forms.Label
  153.     Friend WithEvents LatitudeLabel As System.Windows.Forms.Label
  154.     Friend WithEvents StatusBar As System.Windows.Forms.StatusBar
  155.     Friend WithEvents LocalTimeTimer As System.Windows.Forms.Timer
  156.     Friend WithEvents SatelliteList As System.Windows.Forms.ListView
  157.     Friend WithEvents SatelliteID As System.Windows.Forms.ColumnHeader
  158.     Friend WithEvents SatelliteElevation As System.Windows.Forms.ColumnHeader
  159.     Friend WithEvents SatelliteAzimuth As System.Windows.Forms.ColumnHeader
  160.     Friend WithEvents SatelliteSignalStrength As System.Windows.Forms.ColumnHeader
  161.  
  162.     Private Sub InitializeComponent()
  163.         Dim ListViewItem1 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  164.         Dim ListViewSubItem1 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  165.         Dim ListViewSubItem2 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  166.         Dim ListViewSubItem3 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  167.         Dim ListViewSubItem4 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  168.         Dim ListViewItem2 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  169.         Dim ListViewSubItem5 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  170.         Dim ListViewSubItem6 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  171.         Dim ListViewSubItem7 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  172.         Dim ListViewSubItem8 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  173.         Dim ListViewItem3 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  174.         Dim ListViewSubItem9 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  175.         Dim ListViewSubItem10 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  176.         Dim ListViewSubItem11 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  177.         Dim ListViewSubItem12 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  178.         Dim ListViewItem4 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  179.         Dim ListViewSubItem13 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  180.         Dim ListViewSubItem14 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  181.         Dim ListViewSubItem15 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  182.         Dim ListViewSubItem16 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  183.         Dim ListViewItem5 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  184.         Dim ListViewSubItem17 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  185.         Dim ListViewSubItem18 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  186.         Dim ListViewSubItem19 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  187.         Dim ListViewSubItem20 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  188.         Dim ListViewItem6 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  189.         Dim ListViewSubItem21 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  190.         Dim ListViewSubItem22 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  191.         Dim ListViewSubItem23 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  192.         Dim ListViewSubItem24 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  193.         Dim ListViewItem7 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  194.         Dim ListViewSubItem25 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  195.         Dim ListViewSubItem26 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  196.         Dim ListViewSubItem27 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  197.         Dim ListViewSubItem28 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  198.         Dim ListViewItem8 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  199.         Dim ListViewSubItem29 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  200.         Dim ListViewSubItem30 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  201.         Dim ListViewSubItem31 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  202.         Dim ListViewSubItem32 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  203.         Dim ListViewItem9 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  204.         Dim ListViewSubItem33 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  205.         Dim ListViewSubItem34 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  206.         Dim ListViewSubItem35 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  207.         Dim ListViewSubItem36 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  208.         Dim ListViewItem10 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  209.         Dim ListViewSubItem37 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  210.         Dim ListViewSubItem38 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  211.         Dim ListViewSubItem39 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  212.         Dim ListViewSubItem40 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  213.         Dim ListViewItem11 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  214.         Dim ListViewSubItem41 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  215.         Dim ListViewSubItem42 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  216.         Dim ListViewSubItem43 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  217.         Dim ListViewSubItem44 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  218.         Dim ListViewItem12 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  219.         Dim ListViewSubItem45 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  220.         Dim ListViewSubItem46 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  221.         Dim ListViewSubItem47 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  222.         Dim ListViewSubItem48 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  223.         Dim ListViewItem13 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  224.         Dim ListViewSubItem49 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  225.         Dim ListViewSubItem50 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  226.         Dim ListViewSubItem51 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  227.         Dim ListViewSubItem52 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  228.         Dim ListViewItem14 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  229.         Dim ListViewSubItem53 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  230.         Dim ListViewSubItem54 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  231.         Dim ListViewSubItem55 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  232.         Dim ListViewSubItem56 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  233.         Dim ListViewItem15 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  234.         Dim ListViewSubItem57 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  235.         Dim ListViewSubItem58 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  236.         Dim ListViewSubItem59 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  237.         Dim ListViewSubItem60 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  238.         Dim ListViewItem16 As System.Windows.Forms.ListViewItem = New System.Windows.Forms.ListViewItem
  239.         Dim ListViewSubItem61 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  240.         Dim ListViewSubItem62 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  241.         Dim ListViewSubItem63 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  242.         Dim ListViewSubItem64 As System.Windows.Forms.ListViewItem.ListViewSubItem = New System.Windows.Forms.ListViewItem.ListViewSubItem
  243.         Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(Form1))
  244.         Me.TabControl1 = New System.Windows.Forms.TabControl
  245.         Me.RawDataTabPage = New System.Windows.Forms.TabPage
  246.         Me.ParseButton = New System.Windows.Forms.Button
  247.         Me.Label1 = New System.Windows.Forms.Label
  248.         Me.ParsingText = New System.Windows.Forms.TextBox
  249.         Me.RecognizedSentencesLabel = New System.Windows.Forms.Label
  250.         Me.UnrecognizedSentencesLabel = New System.Windows.Forms.Label
  251.         Me.UnrecognizedSentences = New System.Windows.Forms.ListBox
  252.         Me.RecognizedSentences = New System.Windows.Forms.ListBox
  253.         Me.PositionTabPage = New System.Windows.Forms.TabPage
  254.         Me.UtmPosition = New System.Windows.Forms.Label
  255.         Me.UtmPositionLabel = New System.Windows.Forms.Label
  256.         Me.FixMethod = New System.Windows.Forms.Label
  257.         Me.FixMethodLabel = New System.Windows.Forms.Label
  258.         Me.TrackedSatellites = New System.Windows.Forms.Label
  259.         Me.TrackedSatellitesLabel = New System.Windows.Forms.Label
  260.         Me.FixedSatellites = New System.Windows.Forms.Label
  261.         Me.ActiveSatellitesLabel = New System.Windows.Forms.Label
  262.         Me.MeanDilutionOfPrecision = New System.Windows.Forms.Label
  263.         Me.MeanDilutionOfPrecisionLabel = New System.Windows.Forms.Label
  264.         Me.VerticalDilutionOfPrecision = New System.Windows.Forms.Label
  265.         Me.VerticalDilutionOfPrecisionLabel = New System.Windows.Forms.Label
  266.         Me.HorizontalDilutionOfPrecision = New System.Windows.Forms.Label
  267.         Me.HorizontalDilutionOfPrecisionLabel = New System.Windows.Forms.Label
  268.         Me.FixQuality = New System.Windows.Forms.Label
  269.         Me.FixQualityLabel = New System.Windows.Forms.Label
  270.         Me.FixObtained = New System.Windows.Forms.Label
  271.         Me.FixObtainedLabel = New System.Windows.Forms.Label
  272.         Me.FixMode = New System.Windows.Forms.Label
  273.         Me.FixModeLabel = New System.Windows.Forms.Label
  274.         Me.LocalTime = New System.Windows.Forms.Label
  275.         Me.LocalTimeLabel = New System.Windows.Forms.Label
  276.         Me.Speed = New System.Windows.Forms.Label
  277.         Me.SpeedLabel = New System.Windows.Forms.Label
  278.         Me.ActiveSatellites = New System.Windows.Forms.Label
  279.         Me.FixedSatellitesLabel = New System.Windows.Forms.Label
  280.         Me.UTCDateTime = New System.Windows.Forms.Label
  281.         Me.UTCDateTimeLabel = New System.Windows.Forms.Label
  282.         Me.Direction = New System.Windows.Forms.Label
  283.         Me.DirectionLabel = New System.Windows.Forms.Label
  284.         Me.Bearing = New System.Windows.Forms.Label
  285.         Me.Altitude = New System.Windows.Forms.Label
  286.         Me.Longitude = New System.Windows.Forms.Label
  287.         Me.Latitude = New System.Windows.Forms.Label
  288.         Me.BearingLabel = New System.Windows.Forms.Label
  289.         Me.LongitudeLabel = New System.Windows.Forms.Label
  290.         Me.AltitudeLabel = New System.Windows.Forms.Label
  291.         Me.LatitudeLabel = New System.Windows.Forms.Label
  292.         Me.SatelliteTabPage = New System.Windows.Forms.TabPage
  293.         Me.SatelliteList = New System.Windows.Forms.ListView
  294.         Me.SatelliteID = New System.Windows.Forms.ColumnHeader
  295.         Me.SatelliteElevation = New System.Windows.Forms.ColumnHeader
  296.         Me.SatelliteAzimuth = New System.Windows.Forms.ColumnHeader
  297.         Me.SatelliteSignalStrength = New System.Windows.Forms.ColumnHeader
  298.         Me.ErrorTabPage = New System.Windows.Forms.TabPage
  299.         Me.GpsExceptionTextBox = New System.Windows.Forms.TextBox
  300.         Me.Label3 = New System.Windows.Forms.Label
  301.         Me.ParsingExceptionTextBox = New System.Windows.Forms.TextBox
  302.         Me.Label2 = New System.Windows.Forms.Label
  303.         Me.WaypointDisplayModeComboBox = New System.Windows.Forms.ComboBox
  304.         Me.WaypointColorComboBox = New System.Windows.Forms.ComboBox
  305.         Me.WaypointSymbolComboBox = New System.Windows.Forms.ComboBox
  306.         Me.WaypointIntersectingRoadCheckbox = New System.Windows.Forms.CheckBox
  307.         Me.WaypointCountryCheckbox = New System.Windows.Forms.CheckBox
  308.         Me.WaypointDepthCheckbox = New System.Windows.Forms.CheckBox
  309.         Me.WaypointFacilityNameCheckbox = New System.Windows.Forms.CheckBox
  310.         Me.WaypointCityCheckbox = New System.Windows.Forms.CheckBox
  311.         Me.WaypointStateCheckbox = New System.Windows.Forms.CheckBox
  312.         Me.WaypointAddressCheckbox = New System.Windows.Forms.CheckBox
  313.         Me.WaypointAltitudeCheckbox = New System.Windows.Forms.CheckBox
  314.         Me.WaypointDisplayModeCheckbox = New System.Windows.Forms.CheckBox
  315.         Me.WaypointSymbolCheckbox = New System.Windows.Forms.CheckBox
  316.         Me.WaypointColorCheckbox = New System.Windows.Forms.CheckBox
  317.         Me.WaypointCommentCheckbox = New System.Windows.Forms.CheckBox
  318.         Me.SupportsRoutes = New System.Windows.Forms.Label
  319.         Me.SupportsTracks = New System.Windows.Forms.Label
  320.         Me.SupportsWaypoints = New System.Windows.Forms.Label
  321.         Me.SupportsRoutesLabel = New System.Windows.Forms.Label
  322.         Me.SupportsTracksLabel = New System.Windows.Forms.Label
  323.         Me.SupportsWaypointsLabel = New System.Windows.Forms.Label
  324.         Me.BatteryLifeLabel = New System.Windows.Forms.Label
  325.         Me.BatteryLife = New System.Windows.Forms.Label
  326.         Me.ProtocolLabel = New System.Windows.Forms.Label
  327.         Me.Protocol = New System.Windows.Forms.Label
  328.         Me.SoftwareVersion = New System.Windows.Forms.Label
  329.         Me.SoftwareVersionLabel = New System.Windows.Forms.Label
  330.         Me.DeviceName = New System.Windows.Forms.Label
  331.         Me.ManufacturerLabel = New System.Windows.Forms.Label
  332.         Me.Manufacturer = New System.Windows.Forms.Label
  333.         Me.DeviceNameLabel = New System.Windows.Forms.Label
  334.         Me.PowerOffButton = New System.Windows.Forms.Button
  335.         Me.ColumnHeader1 = New System.Windows.Forms.ColumnHeader
  336.         Me.ColumnHeader2 = New System.Windows.Forms.ColumnHeader
  337.         Me.ColumnHeader3 = New System.Windows.Forms.ColumnHeader
  338.         Me.ColumnHeader5 = New System.Windows.Forms.ColumnHeader
  339.         Me.ColumnHeader4 = New System.Windows.Forms.ColumnHeader
  340.         Me.BaudRateComboBox = New System.Windows.Forms.ComboBox
  341.         Me.BaudRateLabel = New System.Windows.Forms.Label
  342.         Me.ComPortLabel = New System.Windows.Forms.Label
  343.         Me.COMPortComboBox = New System.Windows.Forms.ComboBox
  344.         Me.StopButton = New System.Windows.Forms.Button
  345.         Me.StartButton = New System.Windows.Forms.Button
  346.         Me.StatusBar = New System.Windows.Forms.StatusBar
  347.         Me.LocalTimeTimer = New System.Windows.Forms.Timer
  348.         '
  349.         'TabControl1
  350.         '
  351.         Me.TabControl1.Controls.Add(Me.RawDataTabPage)
  352.         Me.TabControl1.Controls.Add(Me.PositionTabPage)
  353.         Me.TabControl1.Controls.Add(Me.SatelliteTabPage)
  354.         Me.TabControl1.Controls.Add(Me.ErrorTabPage)
  355.         Me.TabControl1.Location = New System.Drawing.Point(6, 9)
  356.         Me.TabControl1.SelectedIndex = 0
  357.         Me.TabControl1.Size = New System.Drawing.Size(543, 381)
  358.         '
  359.         'RawDataTabPage
  360.         '
  361.         Me.RawDataTabPage.BackColor = System.Drawing.SystemColors.Window
  362.         Me.RawDataTabPage.Controls.Add(Me.ParseButton)
  363.         Me.RawDataTabPage.Controls.Add(Me.Label1)
  364.         Me.RawDataTabPage.Controls.Add(Me.ParsingText)
  365.         Me.RawDataTabPage.Controls.Add(Me.RecognizedSentencesLabel)
  366.         Me.RawDataTabPage.Controls.Add(Me.UnrecognizedSentencesLabel)
  367.         Me.RawDataTabPage.Controls.Add(Me.UnrecognizedSentences)
  368.         Me.RawDataTabPage.Controls.Add(Me.RecognizedSentences)
  369.         Me.RawDataTabPage.Location = New System.Drawing.Point(4, 22)
  370.         Me.RawDataTabPage.Size = New System.Drawing.Size(535, 355)
  371.         Me.RawDataTabPage.Text = "Raw Data"
  372.         '
  373.         'ParseButton
  374.         '
  375.         Me.ParseButton.Location = New System.Drawing.Point(453, 204)
  376.         Me.ParseButton.Size = New System.Drawing.Size(72, 24)
  377.         Me.ParseButton.Text = "Parse"
  378.         '
  379.         'Label1
  380.         '
  381.         Me.Label1.Location = New System.Drawing.Point(9, 186)
  382.         Me.Label1.Size = New System.Drawing.Size(92, 15)
  383.         Me.Label1.Text = "Manual parsing:"
  384.         '
  385.         'ParsingText
  386.         '
  387.         Me.ParsingText.AcceptsReturn = True
  388.         Me.ParsingText.Location = New System.Drawing.Point(6, 204)
  389.         Me.ParsingText.Multiline = True
  390.         Me.ParsingText.ScrollBars = System.Windows.Forms.ScrollBars.Vertical
  391.         Me.ParsingText.Size = New System.Drawing.Size(441, 57)
  392.         Me.ParsingText.Text = ""
  393.         '
  394.         'RecognizedSentencesLabel
  395.         '
  396.         Me.RecognizedSentencesLabel.Location = New System.Drawing.Point(6, 6)
  397.         Me.RecognizedSentencesLabel.Size = New System.Drawing.Size(141, 15)
  398.         Me.RecognizedSentencesLabel.Text = "All Recognized Sentences:"
  399.         '
  400.         'UnrecognizedSentencesLabel
  401.         '
  402.         Me.UnrecognizedSentencesLabel.Location = New System.Drawing.Point(9, 267)
  403.         Me.UnrecognizedSentencesLabel.Size = New System.Drawing.Size(142, 15)
  404.         Me.UnrecognizedSentencesLabel.Text = "Unrecognized Sentences:"
  405.         '
  406.         'UnrecognizedSentences
  407.         '
  408.         Me.UnrecognizedSentences.Location = New System.Drawing.Point(9, 285)
  409.         Me.UnrecognizedSentences.Size = New System.Drawing.Size(519, 58)
  410.         '
  411.         'RecognizedSentences
  412.         '
  413.         Me.RecognizedSentences.Location = New System.Drawing.Point(6, 24)
  414.         Me.RecognizedSentences.Size = New System.Drawing.Size(519, 156)
  415.         '
  416.         'PositionTabPage
  417.         '
  418.         Me.PositionTabPage.BackColor = System.Drawing.SystemColors.Window
  419.         Me.PositionTabPage.Controls.Add(Me.UtmPosition)
  420.         Me.PositionTabPage.Controls.Add(Me.UtmPositionLabel)
  421.         Me.PositionTabPage.Controls.Add(Me.FixMethod)
  422.         Me.PositionTabPage.Controls.Add(Me.FixMethodLabel)
  423.         Me.PositionTabPage.Controls.Add(Me.TrackedSatellites)
  424.         Me.PositionTabPage.Controls.Add(Me.TrackedSatellitesLabel)
  425.         Me.PositionTabPage.Controls.Add(Me.FixedSatellites)
  426.         Me.PositionTabPage.Controls.Add(Me.ActiveSatellitesLabel)
  427.         Me.PositionTabPage.Controls.Add(Me.MeanDilutionOfPrecision)
  428.         Me.PositionTabPage.Controls.Add(Me.MeanDilutionOfPrecisionLabel)
  429.         Me.PositionTabPage.Controls.Add(Me.VerticalDilutionOfPrecision)
  430.         Me.PositionTabPage.Controls.Add(Me.VerticalDilutionOfPrecisionLabel)
  431.         Me.PositionTabPage.Controls.Add(Me.HorizontalDilutionOfPrecision)
  432.         Me.PositionTabPage.Controls.Add(Me.HorizontalDilutionOfPrecisionLabel)
  433.         Me.PositionTabPage.Controls.Add(Me.FixQuality)
  434.         Me.PositionTabPage.Controls.Add(Me.FixQualityLabel)
  435.         Me.PositionTabPage.Controls.Add(Me.FixObtained)
  436.         Me.PositionTabPage.Controls.Add(Me.FixObtainedLabel)
  437.         Me.PositionTabPage.Controls.Add(Me.FixMode)
  438.         Me.PositionTabPage.Controls.Add(Me.FixModeLabel)
  439.         Me.PositionTabPage.Controls.Add(Me.LocalTime)
  440.         Me.PositionTabPage.Controls.Add(Me.LocalTimeLabel)
  441.         Me.PositionTabPage.Controls.Add(Me.Speed)
  442.         Me.PositionTabPage.Controls.Add(Me.SpeedLabel)
  443.         Me.PositionTabPage.Controls.Add(Me.ActiveSatellites)
  444.         Me.PositionTabPage.Controls.Add(Me.FixedSatellitesLabel)
  445.         Me.PositionTabPage.Controls.Add(Me.UTCDateTime)
  446.         Me.PositionTabPage.Controls.Add(Me.UTCDateTimeLabel)
  447.         Me.PositionTabPage.Controls.Add(Me.Direction)
  448.         Me.PositionTabPage.Controls.Add(Me.DirectionLabel)
  449.         Me.PositionTabPage.Controls.Add(Me.Bearing)
  450.         Me.PositionTabPage.Controls.Add(Me.Altitude)
  451.         Me.PositionTabPage.Controls.Add(Me.Longitude)
  452.         Me.PositionTabPage.Controls.Add(Me.Latitude)
  453.         Me.PositionTabPage.Controls.Add(Me.BearingLabel)
  454.         Me.PositionTabPage.Controls.Add(Me.LongitudeLabel)
  455.         Me.PositionTabPage.Controls.Add(Me.AltitudeLabel)
  456.         Me.PositionTabPage.Controls.Add(Me.LatitudeLabel)
  457.         Me.PositionTabPage.Location = New System.Drawing.Point(4, 22)
  458.         Me.PositionTabPage.Size = New System.Drawing.Size(535, 355)
  459.         Me.PositionTabPage.Text = "Position"
  460.         '
  461.         'UtmPosition
  462.         '
  463.         Me.UtmPosition.Location = New System.Drawing.Point(123, 201)
  464.         Me.UtmPosition.Size = New System.Drawing.Size(249, 18)
  465.         Me.UtmPosition.Text = "(Unknown)"
  466.         '
  467.         'UtmPositionLabel
  468.         '
  469.         Me.UtmPositionLabel.Location = New System.Drawing.Point(9, 201)
  470.         Me.UtmPositionLabel.Size = New System.Drawing.Size(108, 18)
  471.         Me.UtmPositionLabel.Text = "UTM Position:"
  472.         '
  473.         'FixMethod
  474.         '
  475.         Me.FixMethod.Location = New System.Drawing.Point(123, 111)
  476.         Me.FixMethod.Size = New System.Drawing.Size(249, 18)
  477.         Me.FixMethod.Text = "(Unknown)"
  478.         '
  479.         'FixMethodLabel
  480.         '
  481.         Me.FixMethodLabel.Location = New System.Drawing.Point(9, 111)
  482.         Me.FixMethodLabel.Size = New System.Drawing.Size(108, 18)
  483.         Me.FixMethodLabel.Text = "Fix Method:"
  484.         '
  485.         'TrackedSatellites
  486.         '
  487.         Me.TrackedSatellites.Location = New System.Drawing.Point(123, 39)
  488.         Me.TrackedSatellites.Size = New System.Drawing.Size(249, 18)
  489.         Me.TrackedSatellites.Text = "(Unknown)"
  490.         '
  491.         'TrackedSatellitesLabel
  492.         '
  493.         Me.TrackedSatellitesLabel.Location = New System.Drawing.Point(9, 39)
  494.         Me.TrackedSatellitesLabel.Size = New System.Drawing.Size(108, 18)
  495.         Me.TrackedSatellitesLabel.Text = "Tracked Sat.:"
  496.         '
  497.         'FixedSatellites
  498.         '
  499.         Me.FixedSatellites.Location = New System.Drawing.Point(123, 21)
  500.         Me.FixedSatellites.Size = New System.Drawing.Size(249, 18)
  501.         Me.FixedSatellites.Text = "(Unknown)"
  502.         '
  503.         'ActiveSatellitesLabel
  504.         '
  505.         Me.ActiveSatellitesLabel.Location = New System.Drawing.Point(9, 3)
  506.         Me.ActiveSatellitesLabel.Size = New System.Drawing.Size(108, 18)
  507.         Me.ActiveSatellitesLabel.Text = "Active Satellites:"
  508.         '
  509.         'MeanDilutionOfPrecision
  510.         '
  511.         Me.MeanDilutionOfPrecision.Location = New System.Drawing.Point(123, 291)
  512.         Me.MeanDilutionOfPrecision.Size = New System.Drawing.Size(249, 18)
  513.         Me.MeanDilutionOfPrecision.Text = "(Unknown)"
  514.         '
  515.         'MeanDilutionOfPrecisionLabel
  516.         '
  517.         Me.MeanDilutionOfPrecisionLabel.Location = New System.Drawing.Point(9, 291)
  518.         Me.MeanDilutionOfPrecisionLabel.Size = New System.Drawing.Size(108, 18)
  519.         Me.MeanDilutionOfPrecisionLabel.Text = "PDOP:"
  520.         '
  521.         'VerticalDilutionOfPrecision
  522.         '
  523.         Me.VerticalDilutionOfPrecision.Location = New System.Drawing.Point(123, 327)
  524.         Me.VerticalDilutionOfPrecision.Size = New System.Drawing.Size(249, 18)
  525.         Me.VerticalDilutionOfPrecision.Text = "(Unknown)"
  526.         '
  527.         'VerticalDilutionOfPrecisionLabel
  528.         '
  529.         Me.VerticalDilutionOfPrecisionLabel.Location = New System.Drawing.Point(9, 327)
  530.         Me.VerticalDilutionOfPrecisionLabel.Size = New System.Drawing.Size(108, 18)
  531.         Me.VerticalDilutionOfPrecisionLabel.Text = "VDOP:"
  532.         '
  533.         'HorizontalDilutionOfPrecision
  534.         '
  535.         Me.HorizontalDilutionOfPrecision.Location = New System.Drawing.Point(123, 309)
  536.         Me.HorizontalDilutionOfPrecision.Size = New System.Drawing.Size(249, 18)
  537.         Me.HorizontalDilutionOfPrecision.Text = "(Unknown)"
  538.         '
  539.         'HorizontalDilutionOfPrecisionLabel
  540.         '
  541.         Me.HorizontalDilutionOfPrecisionLabel.Location = New System.Drawing.Point(9, 309)
  542.         Me.HorizontalDilutionOfPrecisionLabel.Size = New System.Drawing.Size(108, 18)
  543.         Me.HorizontalDilutionOfPrecisionLabel.Text = "HDOP:"
  544.         '
  545.         'FixQuality
  546.         '
  547.         Me.FixQuality.Location = New System.Drawing.Point(123, 129)
  548.         Me.FixQuality.Size = New System.Drawing.Size(249, 18)
  549.         Me.FixQuality.Text = "(Unknown)"
  550.         '
  551.         'FixQualityLabel
  552.         '
  553.         Me.FixQualityLabel.Location = New System.Drawing.Point(9, 129)
  554.         Me.FixQualityLabel.Size = New System.Drawing.Size(108, 18)
  555.         Me.FixQualityLabel.Text = "Fix Quality:"
  556.         '
  557.         'FixObtained
  558.         '
  559.         Me.FixObtained.Location = New System.Drawing.Point(123, 147)
  560.         Me.FixObtained.Size = New System.Drawing.Size(249, 18)
  561.         Me.FixObtained.Text = "(Unknown)"
  562.         '
  563.         'FixObtainedLabel
  564.         '
  565.         Me.FixObtainedLabel.Location = New System.Drawing.Point(9, 147)
  566.         Me.FixObtainedLabel.Size = New System.Drawing.Size(108, 18)
  567.         Me.FixObtainedLabel.Text = "Fix Obtained:"
  568.         '
  569.         'FixMode
  570.         '
  571.         Me.FixMode.Location = New System.Drawing.Point(123, 93)
  572.         Me.FixMode.Size = New System.Drawing.Size(249, 18)
  573.         Me.FixMode.Text = "(Unknown)"
  574.         '
  575.         'FixModeLabel
  576.         '
  577.         Me.FixModeLabel.Location = New System.Drawing.Point(9, 93)
  578.         Me.FixModeLabel.Size = New System.Drawing.Size(108, 18)
  579.         Me.FixModeLabel.Text = "Fix Mode:"
  580.         '
  581.         'LocalTime
  582.         '
  583.         Me.LocalTime.Location = New System.Drawing.Point(123, 75)
  584.         Me.LocalTime.Size = New System.Drawing.Size(249, 18)
  585.         Me.LocalTime.Text = "(Unknown)"
  586.         '
  587.         'LocalTimeLabel
  588.         '
  589.         Me.LocalTimeLabel.Location = New System.Drawing.Point(9, 75)
  590.         Me.LocalTimeLabel.Size = New System.Drawing.Size(108, 18)
  591.         Me.LocalTimeLabel.Text = "Local Time:"
  592.         '
  593.         'Speed
  594.         '
  595.         Me.Speed.Location = New System.Drawing.Point(123, 237)
  596.         Me.Speed.Size = New System.Drawing.Size(249, 18)
  597.         Me.Speed.Text = "(Unknown)"
  598.         '
  599.         'SpeedLabel
  600.         '
  601.         Me.SpeedLabel.Location = New System.Drawing.Point(9, 237)
  602.         Me.SpeedLabel.Size = New System.Drawing.Size(108, 18)
  603.         Me.SpeedLabel.Text = "Speed:"
  604.         '
  605.         'ActiveSatellites
  606.         '
  607.         Me.ActiveSatellites.Location = New System.Drawing.Point(123, 3)
  608.         Me.ActiveSatellites.Size = New System.Drawing.Size(249, 18)
  609.         Me.ActiveSatellites.Text = "(Unknown)"
  610.         '
  611.         'FixedSatellitesLabel
  612.         '
  613.         Me.FixedSatellitesLabel.Location = New System.Drawing.Point(9, 21)
  614.         Me.FixedSatellitesLabel.Size = New System.Drawing.Size(108, 18)
  615.         Me.FixedSatellitesLabel.Text = "Fixed Satellites:"
  616.         '
  617.         'UTCDateTime
  618.         '
  619.         Me.UTCDateTime.Location = New System.Drawing.Point(123, 57)
  620.         Me.UTCDateTime.Size = New System.Drawing.Size(249, 18)
  621.         Me.UTCDateTime.Text = "(Unknown)"
  622.         '
  623.         'UTCDateTimeLabel
  624.         '
  625.         Me.UTCDateTimeLabel.Location = New System.Drawing.Point(9, 57)
  626.         Me.UTCDateTimeLabel.Size = New System.Drawing.Size(108, 18)
  627.         Me.UTCDateTimeLabel.Text = "GPS Time:"
  628.         '
  629.         'Direction
  630.         '
  631.         Me.Direction.Location = New System.Drawing.Point(123, 273)
  632.         Me.Direction.Size = New System.Drawing.Size(249, 18)
  633.         Me.Direction.Text = "(Unknown)"
  634.         '
  635.         'DirectionLabel
  636.         '
  637.         Me.DirectionLabel.Location = New System.Drawing.Point(9, 273)
  638.         Me.DirectionLabel.Size = New System.Drawing.Size(108, 18)
  639.         Me.DirectionLabel.Text = "Direction:"
  640.         '
  641.         'Bearing
  642.         '
  643.         Me.Bearing.Location = New System.Drawing.Point(123, 255)
  644.         Me.Bearing.Size = New System.Drawing.Size(249, 18)
  645.         Me.Bearing.Text = "(Unknown)"
  646.         '
  647.         'Altitude
  648.         '
  649.         Me.Altitude.Location = New System.Drawing.Point(123, 219)
  650.         Me.Altitude.Size = New System.Drawing.Size(249, 18)
  651.         Me.Altitude.Text = "(Unknown)"
  652.         '
  653.         'Longitude
  654.         '
  655.         Me.Longitude.Location = New System.Drawing.Point(123, 183)
  656.         Me.Longitude.Size = New System.Drawing.Size(249, 18)
  657.         Me.Longitude.Text = "(Unknown)"
  658.         '
  659.         'Latitude
  660.         '
  661.         Me.Latitude.Location = New System.Drawing.Point(123, 165)
  662.         Me.Latitude.Size = New System.Drawing.Size(249, 18)
  663.         Me.Latitude.Text = "(Unknown)"
  664.         '
  665.         'BearingLabel
  666.         '
  667.         Me.BearingLabel.Location = New System.Drawing.Point(9, 255)
  668.         Me.BearingLabel.Size = New System.Drawing.Size(108, 18)
  669.         Me.BearingLabel.Text = "Bearing:"
  670.         '
  671.         'LongitudeLabel
  672.         '
  673.         Me.LongitudeLabel.Location = New System.Drawing.Point(9, 183)
  674.         Me.LongitudeLabel.Size = New System.Drawing.Size(108, 18)
  675.         Me.LongitudeLabel.Text = "Longitude:"
  676.         '
  677.         'AltitudeLabel
  678.         '
  679.         Me.AltitudeLabel.Location = New System.Drawing.Point(9, 219)
  680.         Me.AltitudeLabel.Size = New System.Drawing.Size(108, 18)
  681.         Me.AltitudeLabel.Text = "Altitude:"
  682.         '
  683.         'LatitudeLabel
  684.         '
  685.         Me.LatitudeLabel.Location = New System.Drawing.Point(9, 165)
  686.         Me.LatitudeLabel.Size = New System.Drawing.Size(108, 18)
  687.         Me.LatitudeLabel.Text = "Latitude:"
  688.         '
  689.         'SatelliteTabPage
  690.         '
  691.         Me.SatelliteTabPage.BackColor = System.Drawing.SystemColors.Window
  692.         Me.SatelliteTabPage.Controls.Add(Me.SatelliteList)
  693.         Me.SatelliteTabPage.Location = New System.Drawing.Point(4, 22)
  694.         Me.SatelliteTabPage.Size = New System.Drawing.Size(535, 355)
  695.         Me.SatelliteTabPage.Text = "Satellites"
  696.         '
  697.         'SatelliteList
  698.         '
  699.         Me.SatelliteList.CheckBoxes = True
  700.         Me.SatelliteList.Columns.Add(Me.SatelliteID)
  701.         Me.SatelliteList.Columns.Add(Me.SatelliteElevation)
  702.         Me.SatelliteList.Columns.Add(Me.SatelliteAzimuth)
  703.         Me.SatelliteList.Columns.Add(Me.SatelliteSignalStrength)
  704.         ListViewSubItem1.Text = ""
  705.         ListViewSubItem2.Text = ""
  706.         ListViewSubItem3.Text = ""
  707.         ListViewSubItem4.Text = ""
  708.         ListViewItem1.SubItems.Add(ListViewSubItem1)
  709.         ListViewItem1.SubItems.Add(ListViewSubItem2)
  710.         ListViewItem1.SubItems.Add(ListViewSubItem3)
  711.         ListViewItem1.SubItems.Add(ListViewSubItem4)
  712.         ListViewItem1.Text = ""
  713.         ListViewSubItem5.Text = ""
  714.         ListViewSubItem6.Text = ""
  715.         ListViewSubItem7.Text = ""
  716.         ListViewSubItem8.Text = ""
  717.         ListViewItem2.SubItems.Add(ListViewSubItem5)
  718.         ListViewItem2.SubItems.Add(ListViewSubItem6)
  719.         ListViewItem2.SubItems.Add(ListViewSubItem7)
  720.         ListViewItem2.SubItems.Add(ListViewSubItem8)
  721.         ListViewItem2.Text = ""
  722.         ListViewSubItem9.Text = ""
  723.         ListViewSubItem10.Text = ""
  724.         ListViewSubItem11.Text = ""
  725.         ListViewSubItem12.Text = ""
  726.         ListViewItem3.SubItems.Add(ListViewSubItem9)
  727.         ListViewItem3.SubItems.Add(ListViewSubItem10)
  728.         ListViewItem3.SubItems.Add(ListViewSubItem11)
  729.         ListViewItem3.SubItems.Add(ListViewSubItem12)
  730.         ListViewItem3.Text = ""
  731.         ListViewSubItem13.Text = ""
  732.         ListViewSubItem14.Text = ""
  733.         ListViewSubItem15.Text = ""
  734.         ListViewSubItem16.Text = ""
  735.         ListViewItem4.SubItems.Add(ListViewSubItem13)
  736.         ListViewItem4.SubItems.Add(ListViewSubItem14)
  737.         ListViewItem4.SubItems.Add(ListViewSubItem15)
  738.         ListViewItem4.SubItems.Add(ListViewSubItem16)
  739.         ListViewItem4.Text = ""
  740.         ListViewSubItem17.Text = ""
  741.         ListViewSubItem18.Text = ""
  742.         ListViewSubItem19.Text = ""
  743.         ListViewSubItem20.Text = ""
  744.         ListViewItem5.SubItems.Add(ListViewSubItem17)
  745.         ListViewItem5.SubItems.Add(ListViewSubItem18)
  746.         ListViewItem5.SubItems.Add(ListViewSubItem19)
  747.         ListViewItem5.SubItems.Add(ListViewSubItem20)
  748.         ListViewItem5.Text = ""
  749.         ListViewSubItem21.Text = ""
  750.         ListViewSubItem22.Text = ""
  751.         ListViewSubItem23.Text = ""
  752.         ListViewSubItem24.Text = ""
  753.         ListViewItem6.SubItems.Add(ListViewSubItem21)
  754.         ListViewItem6.SubItems.Add(ListViewSubItem22)
  755.         ListViewItem6.SubItems.Add(ListViewSubItem23)
  756.         ListViewItem6.SubItems.Add(ListViewSubItem24)
  757.         ListViewItem6.Text = ""
  758.         ListViewSubItem25.Text = ""
  759.         ListViewSubItem26.Text = ""
  760.         ListViewSubItem27.Text = ""
  761.         ListViewSubItem28.Text = ""
  762.         ListViewItem7.SubItems.Add(ListViewSubItem25)
  763.         ListViewItem7.SubItems.Add(ListViewSubItem26)
  764.         ListViewItem7.SubItems.Add(ListViewSubItem27)
  765.         ListViewItem7.SubItems.Add(ListViewSubItem28)
  766.         ListViewItem7.Text = ""
  767.         ListViewSubItem29.Text = ""
  768.         ListViewSubItem30.Text = ""
  769.         ListViewSubItem31.Text = ""
  770.         ListViewSubItem32.Text = ""
  771.         ListViewItem8.SubItems.Add(ListViewSubItem29)
  772.         ListViewItem8.SubItems.Add(ListViewSubItem30)
  773.         ListViewItem8.SubItems.Add(ListViewSubItem31)
  774.         ListViewItem8.SubItems.Add(ListViewSubItem32)
  775.         ListViewItem8.Text = ""
  776.         ListViewSubItem33.Text = ""
  777.         ListViewSubItem34.Text = ""
  778.         ListViewSubItem35.Text = ""
  779.         ListViewSubItem36.Text = ""
  780.         ListViewItem9.SubItems.Add(ListViewSubItem33)
  781.         ListViewItem9.SubItems.Add(ListViewSubItem34)
  782.         ListViewItem9.SubItems.Add(ListViewSubItem35)
  783.         ListViewItem9.SubItems.Add(ListViewSubItem36)
  784.         ListViewItem9.Text = ""
  785.         ListViewSubItem37.Text = ""
  786.         ListViewSubItem38.Text = ""
  787.         ListViewSubItem39.Text = ""
  788.         ListViewSubItem40.Text = ""
  789.         ListViewItem10.SubItems.Add(ListViewSubItem37)
  790.         ListViewItem10.SubItems.Add(ListViewSubItem38)
  791.         ListViewItem10.SubItems.Add(ListViewSubItem39)
  792.         ListViewItem10.SubItems.Add(ListViewSubItem40)
  793.         ListViewItem10.Text = ""
  794.         ListViewSubItem41.Text = ""
  795.         ListViewSubItem42.Text = ""
  796.         ListViewSubItem43.Text = ""
  797.         ListViewSubItem44.Text = ""
  798.         ListViewItem11.SubItems.Add(ListViewSubItem41)
  799.         ListViewItem11.SubItems.Add(ListViewSubItem42)
  800.         ListViewItem11.SubItems.Add(ListViewSubItem43)
  801.         ListViewItem11.SubItems.Add(ListViewSubItem44)
  802.         ListViewItem11.Text = ""
  803.         ListViewSubItem45.Text = ""
  804.         ListViewSubItem46.Text = ""
  805.         ListViewSubItem47.Text = ""
  806.         ListViewSubItem48.Text = ""
  807.         ListViewItem12.SubItems.Add(ListViewSubItem45)
  808.         ListViewItem12.SubItems.Add(ListViewSubItem46)
  809.         ListViewItem12.SubItems.Add(ListViewSubItem47)
  810.         ListViewItem12.SubItems.Add(ListViewSubItem48)
  811.         ListViewItem12.Text = ""
  812.         ListViewSubItem49.Text = ""
  813.         ListViewSubItem50.Text = ""
  814.         ListViewSubItem51.Text = ""
  815.         ListViewSubItem52.Text = ""
  816.         ListViewItem13.SubItems.Add(ListViewSubItem49)
  817.         ListViewItem13.SubItems.Add(ListViewSubItem50)
  818.         ListViewItem13.SubItems.Add(ListViewSubItem51)
  819.         ListViewItem13.SubItems.Add(ListViewSubItem52)
  820.         ListViewItem13.Text = ""
  821.         ListViewSubItem53.Text = ""
  822.         ListViewSubItem54.Text = ""
  823.         ListViewSubItem55.Text = ""
  824.         ListViewSubItem56.Text = ""
  825.         ListViewItem14.SubItems.Add(ListViewSubItem53)
  826.         ListViewItem14.SubItems.Add(ListViewSubItem54)
  827.         ListViewItem14.SubItems.Add(ListViewSubItem55)
  828.         ListViewItem14.SubItems.Add(ListViewSubItem56)
  829.         ListViewItem14.Text = ""
  830.         ListViewSubItem57.Text = ""
  831.         ListViewSubItem58.Text = ""
  832.         ListViewSubItem59.Text = ""
  833.         ListViewSubItem60.Text = ""
  834.         ListViewItem15.SubItems.Add(ListViewSubItem57)
  835.         ListViewItem15.SubItems.Add(ListViewSubItem58)
  836.         ListViewItem15.SubItems.Add(ListViewSubItem59)
  837.         ListViewItem15.SubItems.Add(ListViewSubItem60)
  838.         ListViewItem15.Text = ""
  839.         ListViewSubItem61.Text = ""
  840.         ListViewSubItem62.Text = ""
  841.         ListViewSubItem63.Text = ""
  842.         ListViewSubItem64.Text = ""
  843.         ListViewItem16.SubItems.Add(ListViewSubItem61)
  844.         ListViewItem16.SubItems.Add(ListViewSubItem62)
  845.         ListViewItem16.SubItems.Add(ListViewSubItem63)
  846.         ListViewItem16.SubItems.Add(ListViewSubItem64)
  847.         ListViewItem16.Text = ""
  848.         Me.SatelliteList.Items.Add(ListViewItem1)
  849.         Me.SatelliteList.Items.Add(ListViewItem2)
  850.         Me.SatelliteList.Items.Add(ListViewItem3)
  851.         Me.SatelliteList.Items.Add(ListViewItem4)
  852.         Me.SatelliteList.Items.Add(ListViewItem5)
  853.         Me.SatelliteList.Items.Add(ListViewItem6)
  854.         Me.SatelliteList.Items.Add(ListViewItem7)
  855.         Me.SatelliteList.Items.Add(ListViewItem8)
  856.         Me.SatelliteList.Items.Add(ListViewItem9)
  857.         Me.SatelliteList.Items.Add(ListViewItem10)
  858.         Me.SatelliteList.Items.Add(ListViewItem11)
  859.         Me.SatelliteList.Items.Add(ListViewItem12)
  860.         Me.SatelliteList.Items.Add(ListViewItem13)
  861.         Me.SatelliteList.Items.Add(ListViewItem14)
  862.         Me.SatelliteList.Items.Add(ListViewItem15)
  863.         Me.SatelliteList.Items.Add(ListViewItem16)
  864.         Me.SatelliteList.Location = New System.Drawing.Point(6, 6)
  865.         Me.SatelliteList.Size = New System.Drawing.Size(525, 336)
  866.         Me.SatelliteList.View = System.Windows.Forms.View.Details
  867.         '
  868.         'SatelliteID
  869.         '
  870.         Me.SatelliteID.Text = "Prc"
  871.         Me.SatelliteID.Width = 73
  872.         '
  873.         'SatelliteElevation
  874.         '
  875.         Me.SatelliteElevation.Text = "Elevation"
  876.         Me.SatelliteElevation.Width = 104
  877.         '
  878.         'SatelliteAzimuth
  879.         '
  880.         Me.SatelliteAzimuth.Text = "Azimuth"
  881.         Me.SatelliteAzimuth.Width = 131
  882.         '
  883.         'SatelliteSignalStrength
  884.         '
  885.         Me.SatelliteSignalStrength.Text = "Signal Strength"
  886.         Me.SatelliteSignalStrength.Width = 106
  887.         '
  888.         'ErrorTabPage
  889.         '
  890.         Me.ErrorTabPage.BackColor = System.Drawing.SystemColors.Window
  891.         Me.ErrorTabPage.Controls.Add(Me.GpsExceptionTextBox)
  892.         Me.ErrorTabPage.Controls.Add(Me.Label3)
  893.         Me.ErrorTabPage.Controls.Add(Me.ParsingExceptionTextBox)
  894.         Me.ErrorTabPage.Controls.Add(Me.Label2)
  895.         Me.ErrorTabPage.Location = New System.Drawing.Point(4, 22)
  896.         Me.ErrorTabPage.Size = New System.Drawing.Size(535, 355)
  897.         Me.ErrorTabPage.Text = "Errors"
  898.         '
  899.         'GpsExceptionTextBox
  900.         '
  901.         Me.GpsExceptionTextBox.Location = New System.Drawing.Point(7, 27)
  902.         Me.GpsExceptionTextBox.Multiline = True
  903.         Me.GpsExceptionTextBox.ReadOnly = True
  904.         Me.GpsExceptionTextBox.ScrollBars = System.Windows.Forms.ScrollBars.Vertical
  905.         Me.GpsExceptionTextBox.Size = New System.Drawing.Size(521, 171)
  906.         Me.GpsExceptionTextBox.Text = ""
  907.         '
  908.         'Label3
  909.         '
  910.         Me.Label3.Location = New System.Drawing.Point(7, 9)
  911.         Me.Label3.Size = New System.Drawing.Size(188, 15)
  912.         Me.Label3.Text = "Unexpected exceptions:"
  913.         '
  914.         'ParsingExceptionTextBox
  915.         '
  916.         Me.ParsingExceptionTextBox.Location = New System.Drawing.Point(6, 222)
  917.         Me.ParsingExceptionTextBox.Multiline = True
  918.         Me.ParsingExceptionTextBox.ReadOnly = True
  919.         Me.ParsingExceptionTextBox.ScrollBars = System.Windows.Forms.ScrollBars.Vertical
  920.         Me.ParsingExceptionTextBox.Size = New System.Drawing.Size(519, 123)
  921.         Me.ParsingExceptionTextBox.Text = ""
  922.         '
  923.         'Label2
  924.         '
  925.         Me.Label2.Location = New System.Drawing.Point(9, 204)
  926.         Me.Label2.Size = New System.Drawing.Size(171, 15)
  927.         Me.Label2.Text = "Recoverable parsing warnings:"
  928.         '
  929.         'WaypointDisplayModeComboBox
  930.         '
  931.         Me.WaypointDisplayModeComboBox.Enabled = False
  932.         Me.WaypointDisplayModeComboBox.Location = New System.Drawing.Point(33, 180)
  933.         Me.WaypointDisplayModeComboBox.Size = New System.Drawing.Size(141, 22)
  934.         '
  935.         'WaypointColorComboBox
  936.         '
  937.         Me.WaypointColorComboBox.Enabled = False
  938.         Me.WaypointColorComboBox.Location = New System.Drawing.Point(33, 129)
  939.         Me.WaypointColorComboBox.Size = New System.Drawing.Size(141, 22)
  940.         '
  941.         'WaypointSymbolComboBox
  942.         '
  943.         Me.WaypointSymbolComboBox.Enabled = False
  944.         Me.WaypointSymbolComboBox.Location = New System.Drawing.Point(33, 78)
  945.         Me.WaypointSymbolComboBox.Size = New System.Drawing.Size(141, 22)
  946.         '
  947.         'WaypointIntersectingRoadCheckbox
  948.         '
  949.         Me.WaypointIntersectingRoadCheckbox.AutoCheck = False
  950.         Me.WaypointIntersectingRoadCheckbox.Enabled = False
  951.         Me.WaypointIntersectingRoadCheckbox.Location = New System.Drawing.Point(201, 198)
  952.         Me.WaypointIntersectingRoadCheckbox.Size = New System.Drawing.Size(147, 21)
  953.         Me.WaypointIntersectingRoadCheckbox.Text = "Intersecting Road"
  954.         '
  955.         'WaypointCountryCheckbox
  956.         '
  957.         Me.WaypointCountryCheckbox.AutoCheck = False
  958.         Me.WaypointCountryCheckbox.Enabled = False
  959.         Me.WaypointCountryCheckbox.Location = New System.Drawing.Point(201, 174)
  960.         Me.WaypointCountryCheckbox.Size = New System.Drawing.Size(147, 21)
  961.         Me.WaypointCountryCheckbox.Text = "Country"
  962.         '
  963.         'WaypointDepthCheckbox
  964.         '
  965.         Me.WaypointDepthCheckbox.AutoCheck = False
  966.         Me.WaypointDepthCheckbox.Enabled = False
  967.         Me.WaypointDepthCheckbox.Location = New System.Drawing.Point(201, 54)
  968.         Me.WaypointDepthCheckbox.Size = New System.Drawing.Size(147, 21)
  969.         Me.WaypointDepthCheckbox.Text = "Depth"
  970.         '
  971.         'WaypointFacilityNameCheckbox
  972.         '
  973.         Me.WaypointFacilityNameCheckbox.AutoCheck = False
  974.         Me.WaypointFacilityNameCheckbox.Enabled = False
  975.         Me.WaypointFacilityNameCheckbox.Location = New System.Drawing.Point(201, 102)
  976.         Me.WaypointFacilityNameCheckbox.Size = New System.Drawing.Size(147, 21)
  977.         Me.WaypointFacilityNameCheckbox.Text = "Facility name"
  978.         '
  979.         'WaypointCityCheckbox
  980.         '
  981.         Me.WaypointCityCheckbox.AutoCheck = False
  982.         Me.WaypointCityCheckbox.Enabled = False
  983.         Me.WaypointCityCheckbox.Location = New System.Drawing.Point(201, 126)
  984.         Me.WaypointCityCheckbox.Size = New System.Drawing.Size(147, 21)
  985.         Me.WaypointCityCheckbox.Text = "City"
  986.         '
  987.         'WaypointStateCheckbox
  988.         '
  989.         Me.WaypointStateCheckbox.AutoCheck = False
  990.         Me.WaypointStateCheckbox.Enabled = False
  991.         Me.WaypointStateCheckbox.Location = New System.Drawing.Point(201, 150)
  992.         Me.WaypointStateCheckbox.Size = New System.Drawing.Size(147, 21)
  993.         Me.WaypointStateCheckbox.Text = "State"
  994.         '
  995.         'WaypointAddressCheckbox
  996.         '
  997.         Me.WaypointAddressCheckbox.AutoCheck = False
  998.         Me.WaypointAddressCheckbox.Enabled = False
  999.         Me.WaypointAddressCheckbox.Location = New System.Drawing.Point(201, 78)
  1000.         Me.WaypointAddressCheckbox.Size = New System.Drawing.Size(147, 21)
  1001.         Me.WaypointAddressCheckbox.Text = "Address"
  1002.         '
  1003.         'WaypointAltitudeCheckbox
  1004.         '
  1005.         Me.WaypointAltitudeCheckbox.AutoCheck = False
  1006.         Me.WaypointAltitudeCheckbox.Enabled = False
  1007.         Me.WaypointAltitudeCheckbox.Location = New System.Drawing.Point(201, 30)
  1008.         Me.WaypointAltitudeCheckbox.Size = New System.Drawing.Size(147, 21)
  1009.         Me.WaypointAltitudeCheckbox.Text = "Altitude"
  1010.         '
  1011.         'WaypointDisplayModeCheckbox
  1012.         '
  1013.         Me.WaypointDisplayModeCheckbox.AutoCheck = False
  1014.         Me.WaypointDisplayModeCheckbox.Enabled = False
  1015.         Me.WaypointDisplayModeCheckbox.Location = New System.Drawing.Point(15, 159)
  1016.         Me.WaypointDisplayModeCheckbox.Size = New System.Drawing.Size(150, 21)
  1017.         Me.WaypointDisplayModeCheckbox.Text = "Display Modes (See list):"
  1018.         '
  1019.         'WaypointSymbolCheckbox
  1020.         '
  1021.         Me.WaypointSymbolCheckbox.AutoCheck = False
  1022.         Me.WaypointSymbolCheckbox.Enabled = False
  1023.         Me.WaypointSymbolCheckbox.Location = New System.Drawing.Point(15, 54)
  1024.         Me.WaypointSymbolCheckbox.Size = New System.Drawing.Size(126, 21)
  1025.         Me.WaypointSymbolCheckbox.Text = "Symbols (See list):"
  1026.         '
  1027.         'WaypointColorCheckbox
  1028.         '
  1029.         Me.WaypointColorCheckbox.AutoCheck = False
  1030.         Me.WaypointColorCheckbox.Enabled = False
  1031.         Me.WaypointColorCheckbox.Location = New System.Drawing.Point(15, 108)
  1032.         Me.WaypointColorCheckbox.Size = New System.Drawing.Size(126, 21)
  1033.         Me.WaypointColorCheckbox.Text = "Colors (See list):"
  1034.         '
  1035.         'WaypointCommentCheckbox
  1036.         '
  1037.         Me.WaypointCommentCheckbox.AutoCheck = False
  1038.         Me.WaypointCommentCheckbox.Enabled = False
  1039.         Me.WaypointCommentCheckbox.Location = New System.Drawing.Point(15, 30)
  1040.         Me.WaypointCommentCheckbox.Size = New System.Drawing.Size(126, 21)
  1041.         Me.WaypointCommentCheckbox.Text = "Comment"
  1042.         '
  1043.         'SupportsRoutes
  1044.         '
  1045.         Me.SupportsRoutes.Location = New System.Drawing.Point(135, 195)
  1046.         Me.SupportsRoutes.Size = New System.Drawing.Size(159, 18)
  1047.         Me.SupportsRoutes.Text = "(Unknown)"
  1048.         '
  1049.         'SupportsTracks
  1050.         '
  1051.         Me.SupportsTracks.Location = New System.Drawing.Point(135, 171)
  1052.         Me.SupportsTracks.Size = New System.Drawing.Size(159, 18)
  1053.         Me.SupportsTracks.Text = "(Unknown)"
  1054.         '
  1055.         'SupportsWaypoints
  1056.         '
  1057.         Me.SupportsWaypoints.Location = New System.Drawing.Point(135, 147)
  1058.         Me.SupportsWaypoints.Size = New System.Drawing.Size(159, 18)
  1059.         Me.SupportsWaypoints.Text = "(Unknown)"
  1060.         '
  1061.         'SupportsRoutesLabel
  1062.         '
  1063.         Me.SupportsRoutesLabel.Location = New System.Drawing.Point(15, 195)
  1064.         Me.SupportsRoutesLabel.Size = New System.Drawing.Size(114, 18)
  1065.         Me.SupportsRoutesLabel.Text = "Supports Routes?"
  1066.         '
  1067.         'SupportsTracksLabel
  1068.         '
  1069.         Me.SupportsTracksLabel.Location = New System.Drawing.Point(15, 171)
  1070.         Me.SupportsTracksLabel.Size = New System.Drawing.Size(114, 18)
  1071.         Me.SupportsTracksLabel.Text = "Supports Tracks?"
  1072.         '
  1073.         'SupportsWaypointsLabel
  1074.         '
  1075.         Me.SupportsWaypointsLabel.Location = New System.Drawing.Point(15, 147)
  1076.         Me.SupportsWaypointsLabel.Size = New System.Drawing.Size(114, 18)
  1077.         Me.SupportsWaypointsLabel.Text = "Supports Waypoints?"
  1078.         '
  1079.         'BatteryLifeLabel
  1080.         '
  1081.         Me.BatteryLifeLabel.Location = New System.Drawing.Point(15, 123)
  1082.         Me.BatteryLifeLabel.Size = New System.Drawing.Size(114, 18)
  1083.         Me.BatteryLifeLabel.Text = "Battery Life:"
  1084.         '
  1085.         'BatteryLife
  1086.         '
  1087.         Me.BatteryLife.Location = New System.Drawing.Point(135, 123)
  1088.         Me.BatteryLife.Size = New System.Drawing.Size(159, 18)
  1089.         Me.BatteryLife.Text = "(Unknown)"
  1090.         '
  1091.         'ProtocolLabel
  1092.         '
  1093.         Me.ProtocolLabel.Location = New System.Drawing.Point(15, 99)
  1094.         Me.ProtocolLabel.Size = New System.Drawing.Size(114, 18)
  1095.         Me.ProtocolLabel.Text = "Protocol:"
  1096.         '
  1097.         'Protocol
  1098.         '
  1099.         Me.Protocol.Location = New System.Drawing.Point(135, 99)
  1100.         Me.Protocol.Size = New System.Drawing.Size(237, 18)
  1101.         Me.Protocol.Text = "(Unknown)"
  1102.         '
  1103.         'SoftwareVersion
  1104.         '
  1105.         Me.SoftwareVersion.Location = New System.Drawing.Point(135, 75)
  1106.         Me.SoftwareVersion.Size = New System.Drawing.Size(237, 18)
  1107.         Me.SoftwareVersion.Text = "(Unknown)"
  1108.         '
  1109.         'SoftwareVersionLabel
  1110.         '
  1111.         Me.SoftwareVersionLabel.Location = New System.Drawing.Point(15, 75)
  1112.         Me.SoftwareVersionLabel.Size = New System.Drawing.Size(114, 18)
  1113.         Me.SoftwareVersionLabel.Text = "Software Version:"
  1114.         '
  1115.         'DeviceName
  1116.         '
  1117.         Me.DeviceName.Location = New System.Drawing.Point(135, 27)
  1118.         Me.DeviceName.Size = New System.Drawing.Size(237, 18)
  1119.         Me.DeviceName.Text = "(Unknown)"
  1120.         '
  1121.         'ManufacturerLabel
  1122.         '
  1123.         Me.ManufacturerLabel.Location = New System.Drawing.Point(15, 51)
  1124.         Me.ManufacturerLabel.Size = New System.Drawing.Size(114, 18)
  1125.         Me.ManufacturerLabel.Text = "Manufacturer:"
  1126.         '
  1127.         'Manufacturer
  1128.         '
  1129.         Me.Manufacturer.Location = New System.Drawing.Point(135, 51)
  1130.         Me.Manufacturer.Size = New System.Drawing.Size(237, 18)
  1131.         Me.Manufacturer.Text = "(Unknown)"
  1132.         '
  1133.         'DeviceNameLabel
  1134.         '
  1135.         Me.DeviceNameLabel.Location = New System.Drawing.Point(15, 27)
  1136.         Me.DeviceNameLabel.Size = New System.Drawing.Size(114, 18)
  1137.         Me.DeviceNameLabel.Text = "Device Name:"
  1138.         '
  1139.         'PowerOffButton
  1140.         '
  1141.         Me.PowerOffButton.Enabled = False
  1142.         Me.PowerOffButton.Location = New System.Drawing.Point(300, 189)
  1143.         Me.PowerOffButton.Size = New System.Drawing.Size(72, 24)
  1144.         Me.PowerOffButton.Text = "Power Off"
  1145.         '
  1146.         'ColumnHeader1
  1147.         '
  1148.         Me.ColumnHeader1.Text = "Name"
  1149.         Me.ColumnHeader1.Width = 77
  1150.         '
  1151.         'ColumnHeader2
  1152.         '
  1153.         Me.ColumnHeader2.Text = "Latitude"
  1154.         Me.ColumnHeader2.Width = 80
  1155.         '
  1156.         'ColumnHeader3
  1157.         '
  1158.         Me.ColumnHeader3.Text = "Longitude"
  1159.         Me.ColumnHeader3.Width = 81
  1160.         '
  1161.         'ColumnHeader5
  1162.         '
  1163.         Me.ColumnHeader5.Text = "Symbol"
  1164.         Me.ColumnHeader5.Width = 60
  1165.         '
  1166.         'ColumnHeader4
  1167.         '
  1168.         Me.ColumnHeader4.Text = "Comment"
  1169.         Me.ColumnHeader4.Width = 60
  1170.         '
  1171.         'BaudRateComboBox
  1172.         '
  1173.         Me.BaudRateComboBox.Items.Add("Automatic")
  1174.         Me.BaudRateComboBox.Items.Add("4800")
  1175.         Me.BaudRateComboBox.Items.Add("9600")
  1176.         Me.BaudRateComboBox.Location = New System.Drawing.Point(552, 27)
  1177.         Me.BaudRateComboBox.Size = New System.Drawing.Size(75, 22)
  1178.         '
  1179.         'BaudRateLabel
  1180.         '
  1181.         Me.BaudRateLabel.Location = New System.Drawing.Point(555, 9)
  1182.         Me.BaudRateLabel.Size = New System.Drawing.Size(69, 15)
  1183.         Me.BaudRateLabel.Text = "Baud Rate:"
  1184.         '
  1185.         'ComPortLabel
  1186.         '
  1187.         Me.ComPortLabel.Location = New System.Drawing.Point(555, 57)
  1188.         Me.ComPortLabel.Size = New System.Drawing.Size(69, 15)
  1189.         Me.ComPortLabel.Text = "COM Port:"
  1190.         '
  1191.         'COMPortComboBox
  1192.         '
  1193.         Me.COMPortComboBox.Items.Add("Automatic")
  1194.         Me.COMPortComboBox.Items.Add("COM1")
  1195.         Me.COMPortComboBox.Items.Add("COM2")
  1196.         Me.COMPortComboBox.Items.Add("COM3")
  1197.         Me.COMPortComboBox.Items.Add("COM4")
  1198.         Me.COMPortComboBox.Items.Add("COM5")
  1199.         Me.COMPortComboBox.Items.Add("COM6")
  1200.         Me.COMPortComboBox.Items.Add("COM7")
  1201.         Me.COMPortComboBox.Items.Add("COM8")
  1202.         Me.COMPortComboBox.Items.Add("COM9")
  1203.         Me.COMPortComboBox.Items.Add("COM10")
  1204.         Me.COMPortComboBox.Items.Add("COM11")
  1205.         Me.COMPortComboBox.Items.Add("COM12")
  1206.         Me.COMPortComboBox.Items.Add("COM13")
  1207.         Me.COMPortComboBox.Items.Add("COM14")
  1208.         Me.COMPortComboBox.Items.Add("COM15")
  1209.         Me.COMPortComboBox.Items.Add("COM16")
  1210.         Me.COMPortComboBox.Items.Add("COM17")
  1211.         Me.COMPortComboBox.Items.Add("COM18")
  1212.         Me.COMPortComboBox.Items.Add("COM19")
  1213.         Me.COMPortComboBox.Items.Add("COM20")
  1214.         Me.COMPortComboBox.Location = New System.Drawing.Point(552, 75)
  1215.         Me.COMPortComboBox.Size = New System.Drawing.Size(75, 22)
  1216.         '
  1217.         'StopButton
  1218.         '
  1219.         Me.StopButton.Enabled = False
  1220.         Me.StopButton.Location = New System.Drawing.Point(555, 135)
  1221.         Me.StopButton.Size = New System.Drawing.Size(72, 24)
  1222.         Me.StopButton.Text = "Stop"
  1223.         '
  1224.         'StartButton
  1225.         '
  1226.         Me.StartButton.Location = New System.Drawing.Point(555, 105)
  1227.         Me.StartButton.Size = New System.Drawing.Size(72, 24)
  1228.         Me.StartButton.Text = "Start"
  1229.         '
  1230.         'StatusBar
  1231.         '
  1232.         Me.StatusBar.Location = New System.Drawing.Point(0, 398)
  1233.         Me.StatusBar.Size = New System.Drawing.Size(634, 20)
  1234.         Me.StatusBar.Text = "StatusBar1"
  1235.         '
  1236.         'LocalTimeTimer
  1237.         '
  1238.         Me.LocalTimeTimer.Interval = 250
  1239.         Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog
  1240.         '
  1241.         'Form1
  1242.         '
  1243.         Me.Controls.Add(Me.StatusBar)
  1244.         Me.Controls.Add(Me.BaudRateComboBox)
  1245.         Me.Controls.Add(Me.BaudRateLabel)
  1246.         Me.Controls.Add(Me.ComPortLabel)
  1247.         Me.Controls.Add(Me.COMPortComboBox)
  1248.         Me.Controls.Add(Me.StopButton)
  1249.         Me.Controls.Add(Me.StartButton)
  1250.         Me.Controls.Add(Me.TabControl1)
  1251.         Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
  1252.         Me.Text = "GPS.NET Complete Demonstration"
  1253.  
  1254.     End Sub
  1255.  
  1256. #End Region
  1257.  
  1258.     ' Create a new GPS receiver and enable events
  1259.     Private WithEvents GPS As New Receiver
  1260.  
  1261. #Region "  Demonstration of Automatic Device Detection  "
  1262.  
  1263.     '  GPS.NET is able to search for and detect GPS devices connected to the device.
  1264.     '  This feature is recommended because it virtually removes the need to train your
  1265.     '  users on what serial ports are, and also removes the need to troubleshoot customers
  1266.     '  which do not know their correct serial port settings. 
  1267.     '
  1268.     '  To use device detection, set the Receiver.Device.Settings.ComPort property to
  1269.     '  ComPort.Automatic.  You can also use the DeviceSettingsDetector class to make your
  1270.     '  own device detection features.
  1271.  
  1272.     Private Sub GPS_DeviceDetectionStarted(ByVal sender As Object, ByVal e As System.EventArgs) Handles GPS.DeviceDetectionStarted
  1273.         ' Update the status to show that the azimuth has changed
  1274.         CurrentStatus = "Please wait, detecting GPS devices..."
  1275.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1276.     End Sub
  1277.  
  1278.     Private Sub GPS_DeviceDetectionCompleted(ByVal sender As Object, ByVal e As System.EventArgs) Handles GPS.DeviceDetectionCompleted
  1279.         ' Update the status to show that the azimuth has changed
  1280.         CurrentStatus = "GPS device detection has completed."
  1281.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1282.     End Sub
  1283.  
  1284.     Private Sub GPS_DeviceDetected(ByVal sender As Object, ByVal e As StormSource.Gps.DeviceSettingsEventArgs) Handles GPS.DeviceDetected
  1285.         ' Update the status to show that the azimuth has changed
  1286.         CurrentStatus = "A GPS device was found on " & e.DeviceSettings.ComPort.ToString & "!"
  1287.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1288.     End Sub
  1289. #End Region
  1290.  
  1291. #Region "  Starting the GPS Receiver  "
  1292.  
  1293.     Private Sub StartButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles StartButton.Click
  1294.         ' Configure the baud rate and serial port
  1295.         If COMPortComboBox.Text = "Automatic" Then
  1296.             ' Yes. Set the receiver to detect the device automatically
  1297.             GPS.Device.Settings.ComPort = ComPort.Automatic
  1298.         Else
  1299.             ' No.  Use a manual selection
  1300.             GPS.Device.Settings.ComPort = COMPortComboBox.Text.Substring(3)
  1301.         End If
  1302.         If BaudRateComboBox.Text = "Automatic" Then
  1303.             ' Use automatic baud rate
  1304.             GPS.Device.Settings.BaudRate = BaudRate.Automatic
  1305.         Else
  1306.             ' Usa a manual baud rate
  1307.             GPS.Device.Settings.BaudRate = BaudRateComboBox.Text
  1308.         End If
  1309.  
  1310.         ' NOTE: It's important to add error checking around the Start() method and Enabled property
  1311.         Try
  1312.             ' Set the license key (to disable the trial window)
  1313.             ' GPS.SetLicenseKey("[your license goes here]")
  1314.  
  1315.             ' To maximize performance of Automatic Device Discovery, tell it to use
  1316.             ' previously-discovered devices to connect.
  1317.             GPS.Device.DetectionMode = DeviceDetectionMode.UsePreviouslyDetectedDevices
  1318.             ' Uncomment the following line to detect devices once per session (slower, but recommended)
  1319.             'GPS.Device.DetectionMode = DeviceDetectionMode.DetectOncePerSession 
  1320.  
  1321.             ' Start receiving messages
  1322.             GPS.Start()
  1323.         Catch ex As UnauthorizedAccessException
  1324.             ' The trial screen was cancelled 
  1325.             MessageBox.Show(ex.ToString, "Cannot Continue Trial", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1)
  1326.         Catch ex As GpsException
  1327.             ' Notify of the error
  1328.             MessageBox.Show(ex.ToString, "Unable to Begin GPS Communications", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1)
  1329.         End Try
  1330.     End Sub
  1331.  
  1332.     ' Raised just before a connection attempt is made
  1333.     Private Sub GPS_Connecting(ByVal sender As Object, ByVal e As DeviceSettingsEventArgs) Handles GPS.Connecting
  1334.         CurrentStatus = "Connecting to GPS device..."
  1335.         Me.Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1336.         ' Enable the Stop button, disable the Start button
  1337.         Me.Invoke(New EventHandler(AddressOf DisableStartButton))
  1338.     End Sub
  1339.  
  1340.     Private Sub GPS_Connected(ByVal sender As Object, ByVal e As System.EventArgs) Handles GPS.Connected
  1341.         CurrentStatus = "Connected to GPS device, please wait..."
  1342.         Me.Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1343.         ' Enable the Stop button, disable the Start button
  1344.         Me.Invoke(New EventHandler(AddressOf EnableStopButton))
  1345.     End Sub
  1346.  
  1347.     ' Invoked upon a connection attempt to disable the Start button
  1348.     Private Sub DisableStartButton(ByVal sender As Object, ByVal e As System.EventArgs)
  1349.         StartButton.Enabled = False
  1350.         BaudRateComboBox.Enabled = False
  1351.         COMPortComboBox.Enabled = False
  1352.     End Sub
  1353.  
  1354.     ' Invoked from the GPS.NET thread to enable the stop button
  1355.     Private Sub EnableStopButton(ByVal sender As Object, ByVal e As System.EventArgs)
  1356.         StopButton.Enabled = True
  1357.     End Sub
  1358.  
  1359.     Private Sub GPS_Acquiring(ByVal sender As Object, ByVal e As System.EventArgs) Handles GPS.Acquiring
  1360.         CurrentStatus = "Please wait while satellite information is gathered..."
  1361.         Me.Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1362.     End Sub
  1363.  
  1364.     ' Raised when the receiver has adjusted the baud rate in an attempt to receive GPS information
  1365.     Private Sub GPS_BaudRateChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GPS.BaudRateChanged
  1366.         Select Case GPS.Device.Settings.BaudRate
  1367.             Case StormSource.Gps.BaudRate.Baud4800
  1368.                 Me.BaudRateComboBox.SelectedIndex = 0
  1369.             Case StormSource.Gps.BaudRate.Baud9600
  1370.                 Me.BaudRateComboBox.SelectedIndex = 1
  1371.         End Select
  1372.     End Sub
  1373.  
  1374.     Private Sub GPS_Timeout(ByVal sender As Object, ByVal e As System.EventArgs) Handles GPS.Timeout
  1375.         MessageBox.Show("The GPS device did not respond to commands, even after attempts to detect the correct connection settings.  The device may be powered off.  Try restarting the Receiver.", "GPS Device Timeout", MessageBoxButtons.OK, MessageBoxIcon.Hand, MessageBoxDefaultButton.Button1)
  1376.     End Sub
  1377. #End Region
  1378.  
  1379. #Region "  Stopping the GPS Receiver  "
  1380.  
  1381.     Private Sub StopButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles StopButton.Click
  1382.         GPS.Stop()
  1383.     End Sub
  1384.  
  1385.     ' Raised just before an attempt is made to disconnect from the GPS device
  1386.     Private Sub GPS_Disconnecting(ByVal sender As Object, ByVal e As DeviceSettingsEventArgs) Handles GPS.Disconnecting
  1387.         CurrentStatus = "Disconnecting from GPS device..."
  1388.         Me.Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1389.     End Sub
  1390.  
  1391.     ' Raised when the connection with the device is now closed
  1392.     Private Sub GPS_Disconnected(ByVal sender As Object, ByVal e As System.EventArgs) Handles GPS.Disconnected
  1393.         CurrentStatus = "Disconnected from GPS device."
  1394.         Me.Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1395.         ' Reset start & stop buttons
  1396.         Me.Invoke(New EventHandler(AddressOf EnableStartButton))
  1397.     End Sub
  1398.  
  1399.     ' Invoked from the GPS.NET thread to enable the stop button
  1400.     Private Sub EnableStartButton(ByVal sender As Object, ByVal e As System.EventArgs)
  1401.         StartButton.Enabled = True
  1402.         PowerOffButton.Enabled = False
  1403.         StopButton.Enabled = False
  1404.         BaudRateComboBox.Enabled = True
  1405.         COMPortComboBox.Enabled = True
  1406.     End Sub
  1407.  
  1408. #End Region
  1409.  
  1410. #Region "  Demonstration of Motion-Related GPS Events  "
  1411.  
  1412.     ' Updates the current speed
  1413.     Private Sub UpdateSpeed(ByVal sender As Object, ByVal e As EventArgs)
  1414.         ' Are we using the Imperial or Metric system?
  1415.         If System.Globalization.RegionInfo.CurrentRegion.IsMetric Then
  1416.             ' Use the Metric system
  1417.             Speed.Text = GPS.Speed.ToKilometersPerHour.ToString
  1418.         Else
  1419.             ' Use the Imperial system
  1420.             Speed.Text = GPS.Speed.ToStatuteMilesPerHour.ToString
  1421.         End If
  1422.     End Sub
  1423.  
  1424.     ' Updates the current altitude
  1425.     Private Sub UpdateAltitude(ByVal sender As Object, ByVal e As EventArgs)
  1426.         ' Are we using the Imperial or Metric system?
  1427.         If System.Globalization.RegionInfo.CurrentRegion.IsMetric Then
  1428.             ' Use the metric system
  1429.             Altitude.Text = GPS.Altitude.ToMeters.ToString
  1430.         Else
  1431.             ' Use the Imperial system
  1432.             Altitude.Text = GPS.Altitude.ToFeet.ToString
  1433.         End If
  1434.     End Sub
  1435.  
  1436.     ' Updates the current bearing
  1437.     Private Sub UpdateBearing(ByVal sender As Object, ByVal e As EventArgs)
  1438.         ' Update the bearing
  1439.         Bearing.Text = GPS.Bearing.ToString
  1440.         ' And show the current bearing represented as a cardinal (compass) direction
  1441.         Direction.Text = GPS.Bearing.CardinalDirection.ToString
  1442.     End Sub
  1443.  
  1444.     ' Updates the currentposition (in UTM)
  1445.     Private Sub UpdateUtmPosition(ByVal sender As Object, ByVal e As EventArgs)
  1446.         ' Update the current position (in UTM)
  1447.         UtmPosition.Text = GPS.UtmPosition.ToString
  1448.     End Sub
  1449.  
  1450.     ' Updates the current location
  1451.     Private Sub UpdatePosition(ByVal sender As Object, ByVal e As EventArgs)
  1452.         ' Update the current latitude
  1453.         Latitude.Text = GPS.Position.Latitude.ToString
  1454.         ' Update the longitude
  1455.         Longitude.Text = GPS.Position.Longitude.ToString
  1456.     End Sub
  1457.  
  1458.     Private Sub GPS_AltitudeChanged(ByVal sender As Object, ByVal e As DistanceEventArgs) Handles GPS.AltitudeChanged
  1459.         CurrentStatus = "Altitude has changed."
  1460.         Me.Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1461.         ' Update the current altitude
  1462.         Me.Invoke(New EventHandler(AddressOf UpdateAltitude))
  1463.     End Sub
  1464.  
  1465.     Private Sub GPS_BearingChanged(ByVal sender As Object, ByVal e As AzimuthEventArgs) Handles GPS.BearingChanged
  1466.         CurrentStatus = "Bearing has changed."
  1467.         Me.Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1468.         ' Update the bearing and compass direction
  1469.         Me.Invoke(New EventHandler(AddressOf UpdateBearing))
  1470.     End Sub
  1471.  
  1472.     Private Sub GPS_SpeedChanged(ByVal sender As Object, ByVal e As SpeedEventArgs) Handles GPS.SpeedChanged
  1473.         CurrentStatus = "Speed has changed."
  1474.         Me.Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1475.         ' Update the speed
  1476.         Me.Invoke(New EventHandler(AddressOf UpdateSpeed))
  1477.     End Sub
  1478.  
  1479.     Private Sub GPS_PositionChanged(ByVal sender As Object, ByVal e As PositionEventArgs) Handles GPS.PositionChanged
  1480.         CurrentStatus = "Position has changed."
  1481.         Me.Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1482.         ' Update the labels with the new position
  1483.         Me.Invoke(New EventHandler(AddressOf UpdatePosition))
  1484.     End Sub
  1485.  
  1486.     ' Raised when UTM coordinates have been reported from the GPS device
  1487.     Private Sub GPS_UtmPositionChanged(ByVal sender As Object, ByVal e As StormSource.Gps.UtmPositionEventArgs) Handles GPS.UtmPositionChanged
  1488.         CurrentStatus = "UTM position has changed."
  1489.         Me.Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1490.         ' Update the UTM position
  1491.         Me.Invoke(New EventHandler(AddressOf UpdateUtmPosition))
  1492.     End Sub
  1493.  
  1494. #End Region
  1495.  
  1496. #Region "  Demonstration of Precision-Related Events  "
  1497.  
  1498.     ' Updates the form with dilution of precision (accuracy) information
  1499.     Private Sub UpdateMeanDilutionOfPrecision(ByVal sender As Object, ByVal e As EventArgs)
  1500.         ' Update the overall (mean) accuracy 
  1501.         MeanDilutionOfPrecision.Text = GPS.MeanDilutionOfPrecision.ToString
  1502.     End Sub
  1503.  
  1504.     ' Updates the form with dilution of precision (accuracy) information
  1505.     Private Sub UpdateHorizontalDilutionOfPrecision(ByVal sender As Object, ByVal e As EventArgs)
  1506.         ' Update the accuract of latitude/longitude measurements
  1507.         HorizontalDilutionOfPrecision.Text = GPS.HorizontalDilutionOfPrecision.ToString
  1508.     End Sub
  1509.  
  1510.     ' Updates the form with dilution of precision (accuracy) information
  1511.     Private Sub UpdateVerticalDilutionOfPrecision(ByVal sender As Object, ByVal e As EventArgs)
  1512.         ' Update the accuracy of altitude measurements
  1513.         VerticalDilutionOfPrecision.Text = GPS.VerticalDilutionOfPrecision.ToString
  1514.     End Sub
  1515.  
  1516.     ' Raised when the accuracy of latitude/longitude measurements has changed
  1517.     Private Sub GPS_HorizontalDilutionOfPrecisionChanged(ByVal sender As Object, ByVal e As DilutionOfPrecisionEventArgs) Handles GPS.HorizontalDilutionOfPrecisionChanged
  1518.         CurrentStatus = "Lat/long accuracy has changed to " & e.DilutionOfPrecision.ToString
  1519.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1520.         ' Update the accuracy information
  1521.         Invoke(New EventHandler(AddressOf UpdateHorizontalDilutionOfPrecision))
  1522.     End Sub
  1523.  
  1524.     ' Raised when the mean accuracy in the current latitude/longitude has changed
  1525.     Private Sub GPS_MeanDilutionOfPrecisionChanged(ByVal sender As Object, ByVal e As DilutionOfPrecisionEventArgs) Handles GPS.MeanDilutionOfPrecisionChanged
  1526.         CurrentStatus = "General accuracy has changed to " & e.DilutionOfPrecision.ToString
  1527.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1528.         ' Update the accuracy information
  1529.         Invoke(New EventHandler(AddressOf UpdateMeanDilutionOfPrecision))
  1530.     End Sub
  1531.  
  1532.     ' Raised when the confidence level of altitude measurements has changed
  1533.     Private Sub GPS_VerticalDilutionOfPrecisionChanged(ByVal sender As Object, ByVal e As DilutionOfPrecisionEventArgs) Handles GPS.VerticalDilutionOfPrecisionChanged
  1534.         CurrentStatus = "Altitude accuracy has changed to " & e.DilutionOfPrecision.ToString
  1535.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1536.         ' Update the accuracy information
  1537.         Invoke(New EventHandler(AddressOf UpdateVerticalDilutionOfPrecision))
  1538.     End Sub
  1539.  
  1540. #End Region
  1541.  
  1542. #Region "  Demonstration of Exception Handling  "
  1543.     ' NOTE: This event is raised for errors which occur on separate threads within the GPS.NET engine. 
  1544.     '       Use Try..Catch blocks to handle typical GPS errors via the GPSException class.
  1545.     Private Sub GPS_ErrorOccurred(ByVal sender As Object, ByVal e As ErrorEventArgs) Handles GPS.ErrorOccurred
  1546.         ' Add the error to the top of the list
  1547.         GpsExceptionTextBox.Text = e.Exception.ToString & vbCrLf & GpsExceptionTextBox.Text
  1548.     End Sub
  1549.  
  1550.     ' This event is raised when invalid or corrupt data is received by the device.  This event only
  1551.     ' serves as a warning that some data was not 100% understood.  These
  1552.     ' errors are not typically forwarded to the user.
  1553.     Private Sub GPS_ParsingErrorOccurred(ByVal sender As Object, ByVal e As StormSource.Gps.ParsingErrorEventArgs) Handles GPS.ParsingErrorOccurred
  1554.         ' Add the error to the top of the list
  1555.         ParsingExceptionTextBox.Text = e.ParsingException.ToString & vbCrLf & ParsingExceptionTextBox.Text
  1556.     End Sub
  1557. #End Region
  1558.  
  1559. #Region "  Demonstration of Fix-Related Events  "
  1560.  
  1561.     Public Sub UpdateFixInformation(ByVal sender As Object, ByVal e As System.EventArgs)
  1562.         If GPS.IsFixObtained Then
  1563.             FixObtained.Text = "Fix Obtained"
  1564.         Else
  1565.             FixObtained.Text = "No Fix Available"
  1566.         End If
  1567.         FixMethod.Text = GPS.FixMethod.ToString
  1568.         FixMode.Text = GPS.FixMode.ToString
  1569.         FixQuality.Text = GPS.FixQuality.ToString
  1570.     End Sub
  1571.  
  1572.     Private Sub GPS_FixLost(ByVal sender As Object, ByVal e As System.EventArgs) Handles GPS.FixLost
  1573.         CurrentStatus = "Satellite fix has been lost."
  1574.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1575.         ' Update the magnetic variation
  1576.         Invoke(New EventHandler(AddressOf UpdateFixInformation))
  1577.     End Sub
  1578.  
  1579.     Private Sub GPS_FixMethodChanged(ByVal sender As Object, ByVal e As FixMethodEventArgs) Handles GPS.FixMethodChanged
  1580.         CurrentStatus = "Satellite fix method has changed."
  1581.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1582.         ' Update the magnetic variation
  1583.         Invoke(New EventHandler(AddressOf UpdateFixInformation))
  1584.     End Sub
  1585.  
  1586.     Private Sub GPS_FixModeChanged(ByVal sender As Object, ByVal e As FixModeEventArgs) Handles GPS.FixModeChanged
  1587.         CurrentStatus = "Satellite fix mode has changed."
  1588.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1589.         ' Update the magnetic variation
  1590.         Invoke(New EventHandler(AddressOf UpdateFixInformation))
  1591.     End Sub
  1592.  
  1593.     Private Sub GPS_FixObtained(ByVal sender As Object, ByVal e As System.EventArgs) Handles GPS.FixObtained
  1594.         CurrentStatus = "Satellite fix has been obtained!"
  1595.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1596.         ' Update the magnetic variation
  1597.         Invoke(New EventHandler(AddressOf UpdateFixInformation))
  1598.     End Sub
  1599.  
  1600.     Private Sub GPS_FixQualityChanged(ByVal sender As Object, ByVal e As FixQualityEventArgs) Handles GPS.FixQualityChanged
  1601.         CurrentStatus = "Satellite fix quality has changed"
  1602.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1603.         ' Update the magnetic variation
  1604.         Invoke(New EventHandler(AddressOf UpdateFixInformation))
  1605.     End Sub
  1606.  
  1607. #End Region
  1608.  
  1609. #Region "  Demonstration of Satellite-Related GPS Events  "
  1610.     Private Sub GPS_SatelliteAzimuthChanged(ByVal sender As Object, ByVal e As SatelliteEventArgs) Handles GPS.SatelliteAzimuthChanged
  1611.         ' Update the list view associated with the specified satellite with the new azimuth
  1612.         SatelliteList.Items(e.Satellite.Index).SubItems(2).Text = e.Satellite.Azimuth.ToString
  1613.     End Sub
  1614.  
  1615.     Private Sub GPS_SatelliteElevationChanged(ByVal sender As Object, ByVal e As SatelliteEventArgs) Handles GPS.SatelliteElevationChanged
  1616.         ' Update the list view associated with the specified satellite with the new elevation
  1617.         SatelliteList.Items(e.Satellite.Index).SubItems(1).Text = e.Satellite.Elevation.ToString
  1618.     End Sub
  1619.  
  1620.     Private Sub GPS_SatelliteFixLost(ByVal sender As Object, ByVal e As SatelliteEventArgs) Handles GPS.SatelliteFixLost
  1621.         SatelliteList.Items(e.Satellite.Index).Checked = False
  1622.     End Sub
  1623.  
  1624.     Private Sub GPS_SatelliteFixObtained(ByVal sender As Object, ByVal e As SatelliteEventArgs) Handles GPS.SatelliteFixObtained
  1625.         SatelliteList.Items(e.Satellite.Index).Checked = True
  1626.     End Sub
  1627.  
  1628.     Private Sub GPS_SatellitePRCChanged(ByVal sender As Object, ByVal e As SatelliteEventArgs) Handles GPS.SatellitePseudoRandomCodeChanged
  1629.         SatelliteList.Items(e.Satellite.Index).Text = e.Satellite.PseudoRandomCode
  1630.     End Sub
  1631.  
  1632.     Private Sub GPS_SatelliteSignalToNoiseRatioChanged(ByVal sender As Object, ByVal e As SatelliteEventArgs) Handles GPS.SatelliteSignalToNoiseRatioChanged
  1633.         SatelliteList.Items(e.Satellite.Index).SubItems(3).Text = e.Satellite.SignalToNoiseRatio.ToString & " (" & e.Satellite.SignalToNoiseRatio.Rating.ToString & ")"
  1634.     End Sub
  1635.  
  1636.     ' Handles three events: SatelliteActiveCountChanged, SatelliteFixCountChanged, SatelliteTrackedCountChanged
  1637.     Private Sub GPS_SatelliteCountChanged(ByVal sender As Object, ByVal e As SatelliteCountEventArgs) Handles GPS.SatelliteActiveCountChanged, GPS.SatelliteFixedCountChanged, GPS.SatelliteTrackedCountChanged
  1638.         Select Case e.Type
  1639.             Case SatelliteCountType.ActiveCount
  1640.                 ActiveSatellites.Text = e.Count
  1641.             Case SatelliteCountType.FixedCount
  1642.                 FixedSatellites.Text = e.Count
  1643.             Case SatelliteCountType.TrackedCount
  1644.                 TrackedSatellites.Text = e.Count
  1645.         End Select
  1646.     End Sub
  1647. #End Region
  1648.  
  1649. #Region "  Demonstration of Raw Sentence Processing  "
  1650.  
  1651.     ' Stores information about the current sentence
  1652.     Private CurrentSentence As String
  1653.     ' Returns True if the sentence was fully understood
  1654.     Private CurrentSentenceType As SentenceType
  1655.  
  1656.     ' Adds the specified sentence to the list
  1657.     Private Sub AddSentence(ByVal sender As Object, ByVal e As EventArgs)
  1658.         Select Case CurrentSentenceType
  1659.             Case SentenceType.Recognized
  1660.                 ' The sentence was processed successfully
  1661.                 RecognizedSentences.Items.Add(CurrentSentence)
  1662.                 RecognizedSentences.SelectedIndex = RecognizedSentences.Items.Count - 1
  1663.                 ' Prevent too many lines from being in the list box
  1664.                 If RecognizedSentences.Items.Count > 50 Then RecognizedSentences.Items.RemoveAt(0)
  1665.             Case SentenceType.Unrecognized
  1666.                 ' The sentence contained some corrupt data, or was proprietary to a specific device
  1667.                 UnrecognizedSentences.Items.Add(CurrentSentence)
  1668.                 UnrecognizedSentences.SelectedIndex = UnrecognizedSentences.Items.Count - 1
  1669.                 ' Prevent too many lines from being in the list box
  1670.                 If UnrecognizedSentences.Items.Count > 50 Then UnrecognizedSentences.Items.RemoveAt(0)
  1671.         End Select
  1672.     End Sub
  1673.  
  1674.     ' Handles two events: SentenceReceived and UnrecognizedSentenceReceived
  1675.     Private Sub GPS_SentenceReceived(ByVal sender As Object, ByVal e As SentenceEventArgs) Handles GPS.SentenceReceived, GPS.UnrecognizedSentenceReceived
  1676.         CurrentSentence = e.Sentence
  1677.         CurrentSentenceType = e.Type
  1678.         ' Now add the sentence
  1679.         Invoke(New EventHandler(AddressOf AddSentence))
  1680.     End Sub
  1681.  
  1682.     ' Raised when someone clicks on the "Parse" button.
  1683.     Private Sub ParseButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ParseButton.Click
  1684.         ' Parse the data which was entered into the text box
  1685.         GPS.Parse(ParsingText.Text)
  1686.     End Sub
  1687. #End Region
  1688.  
  1689. #Region "  Demonstration of GPS device date/time information  "
  1690.  
  1691.     ' Updates the form with local date/time information
  1692.     Public Sub UpdateLocalTime(ByVal sender As Object, ByVal e As EventArgs)
  1693.         LocalTime.Text = Now.ToString
  1694.     End Sub
  1695.  
  1696.     ' Updates the form with GPS device's date/time information
  1697.     Public Sub UpdateGpsTime(ByVal sender As Object, ByVal e As EventArgs)
  1698.         ' NOTE: GPS devices send time in UTC.  We must convert it to local time
  1699.         UTCDateTime.Text = GPS.UtcDateTime.ToLocalTime.ToString
  1700.     End Sub
  1701.  
  1702.     ' Update the local time to show the comparison between local time and the time obtained from the GPS receiver
  1703.     Private Sub LocalTimeTimer_Elapsed(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LocalTimeTimer.Tick
  1704.         Invoke(New EventHandler(AddressOf UpdateLocalTime))
  1705.     End Sub
  1706.  
  1707.     ' Raised whenever the GPS device reports a new date/time
  1708.     ' NOTE: Several devices stop sending this information as soon as a fix is obtained!
  1709.     Private Sub GPS_UTCDateTimeChanged(ByVal sender As Object, ByVal e As DateTimeEventArgs) Handles GPS.UtcDateTimeChanged
  1710.         CurrentStatus = "GPS date/time has changed."
  1711.         Invoke(New EventHandler(AddressOf UpdateStatusBar))
  1712.         ' Update the magnetic variation
  1713.         Invoke(New EventHandler(AddressOf UpdateGpsTime))
  1714.     End Sub
  1715. #End Region
  1716.  
  1717. #Region "  Demonstration of GPS Device Identification  "
  1718.  
  1719.     ' Raised when GPS.NET is able to identify this device uniquely from any other device
  1720.     Private Sub GPS_DeviceIdentified(ByVal sender As Object, ByVal e As StormSource.Gps.DeviceEventArgs) Handles GPS.DeviceIdentified
  1721.         Invoke(New EventHandler(AddressOf UpdateDeviceInformation))
  1722.     End Sub
  1723.  
  1724.     Private Sub GPS_ProtocolChanged(ByVal sender As Object, ByVal e As StormSource.Gps.DeviceEventArgs) Handles GPS.ProtocolChanged
  1725.         Invoke(New EventHandler(AddressOf UpdateDeviceInformation))
  1726.     End Sub
  1727.  
  1728.     Private Sub GPS_ManufacturerChanged(ByVal sender As Object, ByVal e As StormSource.Gps.DeviceEventArgs) Handles GPS.ManufacturerChanged
  1729.         Invoke(New EventHandler(AddressOf UpdateDeviceInformation))
  1730.     End Sub
  1731.  
  1732.     Private Sub GPS_ProductNameChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GPS.ProductNameChanged
  1733.         Invoke(New EventHandler(AddressOf UpdateDeviceInformation))
  1734.     End Sub
  1735.  
  1736.     Private Sub GPS_BatteryLifeChanged(ByVal sender As Object, ByVal e As StormSource.Gps.TimeSpanEventArgs) Handles GPS.BatteryLifeChanged
  1737.         Invoke(New EventHandler(AddressOf UpdateDeviceInformation))
  1738.     End Sub
  1739.  
  1740.     ' Updates the form on the form's thread
  1741.     Private Sub UpdateDeviceInformation(ByVal sender As Object, ByVal e As EventArgs)
  1742.         Try
  1743.             ' Update device indentification information
  1744.             Me.Manufacturer.Text = GPS.Device.Manufacturer.ToString
  1745.             Me.DeviceName.Text = GPS.Device.Name
  1746.             Me.SoftwareVersion.Text = GPS.Device.SoftwareVersion
  1747.             Me.Protocol.Text = GPS.Device.Protocol.ToString
  1748.             Me.BatteryLife.Text = GPS.Device.BatteryLife.ToString
  1749.             ' Update waypoint capabilities
  1750.             Me.WaypointAddressCheckbox.Checked = GPS.Device.SupportsWaypointAddress
  1751.             Me.WaypointAltitudeCheckbox.Checked = GPS.Device.SupportsWaypointAltitude
  1752.             Me.WaypointCityCheckbox.Checked = GPS.Device.SupportsWaypointCity
  1753.             Me.WaypointColorCheckbox.Checked = GPS.Device.SupportsWaypointColor
  1754.             Me.WaypointCommentCheckbox.Checked = GPS.Device.SupportsWaypointComment
  1755.             Me.WaypointCountryCheckbox.Checked = GPS.Device.SupportsWaypointCountry
  1756.             Me.WaypointIntersectingRoadCheckbox.Checked = GPS.Device.SupportsWaypointIntersectingRoad
  1757.             Me.WaypointDepthCheckbox.Checked = GPS.Device.SupportsWaypointDepth
  1758.             Me.WaypointDisplayModeCheckbox.Checked = GPS.Device.SupportsWaypointDisplayMode
  1759.             Me.WaypointFacilityNameCheckbox.Checked = GPS.Device.SupportsWaypointFacility
  1760.             Me.WaypointStateCheckbox.Checked = GPS.Device.SupportsWaypointState
  1761.             Me.WaypointSymbolCheckbox.Checked = GPS.Device.SupportsWaypointSymbol
  1762.  
  1763.             ' To make features stand out more, enable/disable the checkbox
  1764.             Me.WaypointAddressCheckbox.Enabled = Me.WaypointAddressCheckbox.Checked
  1765.             Me.WaypointAltitudeCheckbox.Enabled = Me.WaypointAltitudeCheckbox.Checked
  1766.             Me.WaypointCityCheckbox.Enabled = Me.WaypointCityCheckbox.Checked
  1767.             Me.WaypointColorCheckbox.Enabled = Me.WaypointColorCheckbox.Checked
  1768.             Me.WaypointColorComboBox.Enabled = Me.WaypointColorCheckbox.Checked
  1769.             Me.WaypointCommentCheckbox.Enabled = Me.WaypointCommentCheckbox.Checked
  1770.             Me.WaypointCountryCheckbox.Enabled = Me.WaypointCountryCheckbox.Checked
  1771.             Me.WaypointIntersectingRoadCheckbox.Enabled = Me.WaypointIntersectingRoadCheckbox.Checked
  1772.             Me.WaypointDepthCheckbox.Enabled = Me.WaypointDepthCheckbox.Checked
  1773.             Me.WaypointDisplayModeCheckbox.Enabled = Me.WaypointDisplayModeCheckbox.Checked
  1774.             Me.WaypointDisplayModeComboBox.Enabled = Me.WaypointDisplayModeCheckbox.Checked
  1775.             Me.WaypointFacilityNameCheckbox.Enabled = Me.WaypointFacilityNameCheckbox.Checked
  1776.             Me.WaypointStateCheckbox.Enabled = Me.WaypointStateCheckbox.Checked
  1777.             Me.WaypointSymbolCheckbox.Enabled = Me.WaypointSymbolCheckbox.Checked
  1778.             Me.WaypointSymbolComboBox.Enabled = Me.WaypointSymbolCheckbox.Checked
  1779.             ' Update available waypoint symbols
  1780.             WaypointSymbolComboBox.Items.Clear()
  1781.             'WaypointSymbolComboBox.Items.AddRange(GPS.Device.GetSymbols)
  1782.             WaypointSymbolComboBox.SelectedIndex = 0
  1783.             ' Update available waypoint colors
  1784.             WaypointColorComboBox.Items.Clear()
  1785.             'WaypointColorComboBox.Items.AddRange(GPS.Device.GetColors)
  1786.             WaypointColorComboBox.SelectedIndex = 0
  1787.             ' Update available waypoint display modes
  1788.             WaypointDisplayModeComboBox.Items.Clear()
  1789.             'WaypointDisplayModeComboBox.Items.AddRange(GPS.Device.GetDisplayModes)
  1790.             WaypointDisplayModeComboBox.SelectedIndex = 0
  1791.             ' Enable/disable features based on the protocol
  1792.             Me.PowerOffButton.Enabled = (GPS.Device.Protocol = StormSource.Gps.Protocol.GarminBinary)
  1793.         Catch ex As Exception
  1794.         End Try
  1795.     End Sub
  1796.  
  1797. #End Region
  1798.  
  1799. #Region "  Demonstration of powering off a GPS device  "
  1800.     ' NOTE: Currently, the PowerOff() method is only supported when using the Garmin« 
  1801.     '       binary protocol. Set your device to use the Garmin protocol before using this method.
  1802.     Private Sub PowerOffButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PowerOffButton.Click
  1803.         ' Confirm that the device should be powered off
  1804.         Select Case MessageBox.Show("When you turn off the GPS device, you will need to turn it back on manually.  Do you still want to power off the device?", "GPS Device Power-Off", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2)
  1805.             Case DialogResult.Yes
  1806.                 Try
  1807.                     ' Try to power off the device.  If the device is not using the Garmin« protocol, this will fail
  1808.                     GPS.Device.PowerOff()
  1809.                 Catch ex As GpsException
  1810.                     ' The power-off failed
  1811.                     MessageBox.Show("The device must be set to the Garmin« protocol in order for it to be shut off.  Please change the protocol and try again.", "Unable to Power Off", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1)
  1812.                 End Try
  1813.         End Select
  1814.     End Sub
  1815. #End Region
  1816.  
  1817.  
  1818. #Region "  Miscellaneous Form Events  "
  1819.  
  1820.     ' Stores information about current activity going on with the GPS device
  1821.     Public CurrentStatus As String
  1822.  
  1823.     ' Used to update the status bar
  1824.     Public Sub UpdateStatusBar(ByVal sender As Object, ByVal e As EventArgs)
  1825.         StatusBar.Text = CurrentStatus
  1826.     End Sub
  1827.  
  1828.     Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
  1829.         ' Set the drop-down boxes to "Automatic"
  1830.         COMPortComboBox.SelectedIndex = 0
  1831.         BaudRateComboBox.SelectedIndex = 0
  1832.     End Sub
  1833.  
  1834.     Private Sub Form1_Closed(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Closed
  1835.         ' We're finished with the GPS completely.  Shut it down
  1836.         GPS.Stop()
  1837.         GPS.Dispose()
  1838.     End Sub
  1839. #End Region
  1840.  
  1841. End Class
  1842.