/// <summary> /// Constructor which sets the page for adding a sensor /// </summary> /// <param name="sensorLogic"></param> public RegisterPage(SensorLogic sensorLogic) { InitializeComponent(); logic = sensorLogic; ModifyBtn.Visibility = Visibility.Hidden; AddBtn.IsEnabled = true; }
/// <summary> /// Constructor which sets the page for adding a sensor, /// but with some already known data, which is filled in the fields /// </summary> /// <param name="sensorLogic"></param> /// <param name="knownData"></param> public RegisterPage(SensorLogic sensorLogic, SensorData knownData) : this(sensorLogic) { txtName.Text = knownData.Name; txtDesc.Text = knownData.Description; numLat.Value = knownData.Location.Latitude; numLong.Value = knownData.Location.Longitude; sensorTypeChooser.Text = knownData.Type; numPoll.Value = knownData.PollingInterval; }
/// <summary> /// Constructor which sets the page for modifying a sensor /// </summary> /// <param name="sensorLogic"></param> /// <param name="currentSensor"></param> public RegisterPage(SensorLogic sensorLogic, Sensor currentSensor) { InitializeComponent(); logic = sensorLogic; sensor = currentSensor; InitializeTextFields(sensor); sensorTypeChooser.IsEnabled = false; AddBtn.Visibility = Visibility.Hidden; txtName.IsEnabled = false; }
/// <summary> /// Initializes the sensorLogic and creates the home page /// </summary> public MainWindow() { InitializeComponent(); sensorLogic = new SensorLogic(); pageWindow.Content = new HomePage( new MapPage( sensorLogic, OpenDetails, id => OpenEdit(sensorLogic.Sensors.Find(sensor => sensor.Id == id))) ); }
/// <summary> /// - Initializeng the delegates, /// - Adding a function to the map double click event, for adding a new sensor, /// - Binding the pushpins with the map /// </summary> /// <param name="sensorLogic"></param> /// <param name="addSensorDelegate"></param> /// <param name="modifySensorDelegate"></param> public MapPage(SensorLogic sensorLogic, Action <SensorData> addSensorDelegate, Action <ulong> modifySensorDelegate) { InitializeComponent(); locationMap.MouseDoubleClick += AddSensorOnClick; ModifySensorDelegate = modifySensorDelegate; AddSensorDelegate = addSensorDelegate; pushpins = sensorLogic.initializePins(); Binding binding = new Binding(); binding.Source = locationMap; binding.Path = new PropertyPath("Heading"); binding.Mode = BindingMode.TwoWay; foreach (var pin in pushpins) { pin.SetBinding(Pushpin.HeadingProperty, binding); pin.MouseDown += ModifyPinClicked; locationMap.Children.Add(pin); } }