//I want to make events to callback to the hardware handler. public HardwareCommunicator(HardwareHandler hardwareHandler) { try { outgoingThread.Abort(); } catch { } try { incomingThread.Abort(); } catch { } try { passdataThread.Abort(); } catch { } hwh = hardwareHandler; }
private void AutoSky_Load(object sender, EventArgs e) { var url = Environment.CurrentDirectory; url = url.Substring(0, url.IndexOf("\\bin\\Debug")) + "\\" + "AutoSky.html"; GoogleSkyWebBrowser.Url = new Uri(url); _savedPlacemarks = XmlHelper.ReadPlacemarkXml(); _placemarks = new Placemarks(); _placemarks.Items = new List <Placemark>(); _placemarks.Items.AddRange(_savedPlacemarks.Items); _placemarks.Items.AddRange(ExcelHelper.readPlanets().Items); regexRA = new Regex(@"^(?:([01]?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9])(.[0-9][0-9]?)?$"); regexDEC = new Regex(@"[0-8][0-9]:[0-5][0-9]:[0-5][0-9](.[0-9][0-9]?)?$"); isRAValid = false; isDECValid = false; _hardwareHandler = new HardwareHandler(); _hardwareHandler.ArduinoMessageEvent += Listener; GoogleSkyWebBrowser.ObjectForScripting = new ScriptManager(this); task = new Task(() => _hardwareHandler.ConnectToArduino()); task.Start(); }