コード例 #1
0
ファイル: Dashboard.cs プロジェクト: willwhitehead94/SCIPA
        private void stop_lbDevice_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                var selectedDevice = (Device) stop_lbDevice.SelectedItem;
                //stop_tId.Text = selectedDevice.Id.ToString(); //Removed.
                stop_tDevName.Text = selectedDevice.Name;
                stop_tLocation.Text = selectedDevice.Location;
                stop_tCustodian.Text = selectedDevice.Custodian;

                //Load the values from MongoDb
                var max = 10000; //Max number of records to display
                var controller = new ValueController();
                stop_lbValues.Items.Clear();

                //Only add upto the first 'max' values.
                var allValues = controller.GetValuesForDevice(selectedDevice);

                if (allValues != null && allValues.Any())
                {
                    var vals = allValues.Take(max).ToArray();

                    var distinct = new List<string>();
                    foreach (var val in vals.Where(val => !distinct.Contains(val.ToString())))
                    {
                        distinct.Add(val.ToString());
                    }


                    stop_lbValues.Items.AddRange(distinct.ToArray());
                }

                //Allow global access
                _selectedDevice = selectedDevice;
            }
            catch (Exception ex)
            {
                DebugOutput.Print("Could not load data for selected object. ", ex.Message);
            }
        }
コード例 #2
0
ファイル: Dashboard.cs プロジェクト: willwhitehead94/SCIPA
        private void alarm_lbAlarms_SelectedIndexChanged(object sender, EventArgs e)
        {
            //Resetting the form.
            alarm_bRule.Enabled = false;
            alarm_bDevice.Enabled = false;
            alarm_tDateTime.Text = "";
            alarm_rbTrue.Checked = false;
            alarm_rbFalse.Checked = false;
            alarm_tValue.Text = "";
            alarm_tDevice.Text = "";

            try
            {
                var selected = (Alarm) alarm_lbAlarms.SelectedItem;

                alarm_tDateTime.Text = selected.TimeStamp.ToString();
                alarm_rbTrue.Checked = selected.Accepted;
                alarm_rbFalse.Checked = !selected.Accepted;

                //Get Value information.
                if (selected.ValueId > 0)
                {
                    var controller = new ValueController();
                    _value = controller.GetValueById(selected.ValueId);
                    selected.Value = _value;
                    alarm_tValue.Text = selected.Value.StringValue;
                }

                //Get Rule information.
                if (selected.RuleId > 0)
                {
                    var controller = new RuleController();
                    _rule = controller.RetrieveRuleById(selected.RuleId);
                    alarm_bRule.Enabled = true;
                }

                //Get Device information.
                if (selected.DeviceId > 0)
                {
                    var controller = new DeviceController();
                    _selectedDevice = controller.RetrieveDevice(selected.DeviceId);
                    selected.Device = _selectedDevice;
                    alarm_tDevice.Text = _selectedDevice.ToString();
                    alarm_bDevice.Enabled = true;
                }
            }
            catch
            {
                DebugOutput.Print("Attempted to load an alarm and failed...");
            }
        }