private void DisableDefaultRoutingCB_CheckedChanged(object sender, EventArgs e) { GXDLMSG3Plc6LoWPan target = (GXDLMSG3Plc6LoWPan)Target; target.DisableDefaultRouting = DisableDefaultRoutingCB.Checked; errorProvider1.SetError(DisableDefaultRoutingCB, Properties.Resources.ValueChangedTxt); }
/// <summary> /// Add new item to routing table. /// </summary> private void RoutingAddBtn_Click(object sender, EventArgs e) { try { GXDLMSRoutingTable item = new GXDLMSRoutingTable(); GXDLMSRoutingTableDlg dlg = new GXDLMSRoutingTableDlg(item); if (dlg.ShowDialog(this) == DialogResult.OK) { GXDLMSG3Plc6LoWPan target = (GXDLMSG3Plc6LoWPan)Target; target.RoutingTable.Add(item); ListViewItem li = new ListViewItem(item.DestinationAddress.ToString()); li.SubItems.Add(item.NextHopAddress.ToString()); li.SubItems.Add(item.RouteCost.ToString()); li.SubItems.Add(item.HopCount.ToString()); li.SubItems.Add(item.WeakLinkCount.ToString()); li.SubItems.Add(item.ValidTime.ToString()); li.Tag = item; PrefixTable.Items.Add(li); errorProvider1.SetError(Routing, Properties.Resources.ValueChangedTxt); } } catch (Exception ex) { MessageBox.Show(this, ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// Edit routing table item. /// </summary> private void RoutingEditBtn_Click(object sender, EventArgs e) { try { if (Routing.SelectedItems.Count != 0) { GXDLMSG3Plc6LoWPan target = (GXDLMSG3Plc6LoWPan)Target; ListViewItem li = Routing.SelectedItems[0]; GXDLMSRoutingTable item = (GXDLMSRoutingTable)li.Tag; GXDLMSRoutingTableDlg dlg = new GXDLMSRoutingTableDlg(item); if (dlg.ShowDialog(this) == DialogResult.OK) { li.SubItems[0].Text = item.DestinationAddress.ToString(); li.SubItems[1].Text = item.NextHopAddress.ToString(); li.SubItems[2].Text = item.RouteCost.ToString(); li.SubItems[3].Text = item.HopCount.ToString(); li.SubItems[4].Text = item.WeakLinkCount.ToString(); li.SubItems[5].Text = item.ValidTime.ToString(); errorProvider1.SetError(Routing, Properties.Resources.ValueChangedTxt); Target.UpdateDirty(8, target.RoutingTable); } } } catch (Exception ex) { MessageBox.Show(this, ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
void ShowPrefixTable(GXDLMSG3Plc6LoWPan target) { PrefixTable.Items.Clear(); if (target.PrefixTable != null) { foreach (object item in target.PrefixTable) { ListViewItem li = new ListViewItem(item.ToString()); PrefixTable.Items.Add(li); } } }
void ShowGroupTable(GXDLMSG3Plc6LoWPan target) { GroupTable.Items.Clear(); if (target.GroupTable != null) { foreach (UInt16 item in target.GroupTable) { ListViewItem li = new ListViewItem(item.ToString()); GroupTable.Items.Add(li); } } }
void ShowContextInformation(GXDLMSG3Plc6LoWPan target) { ContextInformation.Items.Clear(); foreach (var item in target.ContextInformationTable) { ListViewItem li = new ListViewItem(item.CID); li.SubItems.Add(GXDLMSTranslator.ToHex(item.Context)); li.SubItems.Add(item.Compression.ToString()); li.SubItems.Add(item.ValidLifetime.ToString()); li.Tag = item; ContextInformation.Items.Add(li); } }
void ShowBlackList(GXDLMSG3Plc6LoWPan target) { BlackList.Items.Clear(); if (target.BlacklistTable != null) { foreach (GXKeyValuePair <UInt16, UInt16> item in target.BlacklistTable) { ListViewItem li = new ListViewItem(item.Key.ToString()); li.SubItems.Add(item.Value.ToString()); li.Tag = item; BlackList.Items.Add(li); } } }
void ShowRoutings(GXDLMSG3Plc6LoWPan target) { PrefixTable.Items.Clear(); foreach (var item in target.RoutingTable) { ListViewItem li = new ListViewItem(item.DestinationAddress.ToString()); li.SubItems.Add(item.NextHopAddress.ToString()); li.SubItems.Add(item.RouteCost.ToString()); li.SubItems.Add(item.HopCount.ToString()); li.SubItems.Add(item.WeakLinkCount.ToString()); li.SubItems.Add(item.ValidTime.ToString()); li.Tag = item; PrefixTable.Items.Add(li); } }
void ShowBroadcastLog(GXDLMSG3Plc6LoWPan target) { BroadcastLog.Items.Clear(); if (target.BroadcastLogTable != null) { foreach (GXDLMSBroadcastLogTable item in target.BroadcastLogTable) { ListViewItem li = new ListViewItem(item.SourceAddress.ToString()); li.SubItems.Add(item.SequenceNumber.ToString()); li.SubItems.Add(item.ValidTime.ToString()); li.Tag = item; BroadcastLog.Items.Add(li); } } }
/// <summary> /// Remove item from routing table. /// </summary> private void RoutingRemoveBtn_Click(object sender, EventArgs e) { try { while (Routing.SelectedItems.Count != 0) { GXDLMSRoutingTable item = (GXDLMSRoutingTable)Routing.SelectedItems[0].Tag; Routing.Items.Remove(Routing.SelectedItems[0]); GXDLMSG3Plc6LoWPan target = Target as GXDLMSG3Plc6LoWPan; target.RoutingTable.Remove(item); errorProvider1.SetError(Routing, Properties.Resources.ValueChangedTxt); } } catch (Exception ex) { MessageBox.Show(this, ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void OnValueChanged(int index, object value, bool user, bool connected) { GXDLMSG3Plc6LoWPan target = (GXDLMSG3Plc6LoWPan)Target; switch (index) { case 5: ShowPrefixTable(target); break; case 6: ShowRoutingConfiguration(target); break; case 8: ShowRoutings(target); break; case 9: ShowContextInformation(target); break; case 10: ShowBlackList(target); break; case 11: ShowBroadcastLog(target); break; case 12: ShowGroupTable(target); break; case 18: DisableDefaultRoutingCB.CheckedChanged -= new System.EventHandler(this.DisableDefaultRoutingCB_CheckedChanged); DisableDefaultRoutingCB.Checked = target.DisableDefaultRouting; DisableDefaultRoutingCB.CheckedChanged += new System.EventHandler(this.DisableDefaultRoutingCB_CheckedChanged); break; default: throw new IndexOutOfRangeException("index"); } }
void ShowRoutingConfiguration(GXDLMSG3Plc6LoWPan target) { RoutingConfiguration.Items.Clear(); foreach (GXDLMSRoutingConfiguration item in target.RoutingConfiguration) { ListViewItem li = new ListViewItem(item.NetTraversalTime.ToString()); li.SubItems.Add(item.RoutingTableEntryTtl.ToString()); li.SubItems.Add(item.Kr.ToString()); li.SubItems.Add(item.Km.ToString()); li.SubItems.Add(item.Kc.ToString()); li.SubItems.Add(item.Kq.ToString()); li.SubItems.Add(item.Kh.ToString()); li.SubItems.Add(item.Krt.ToString()); li.SubItems.Add(item.RreqRetries.ToString()); li.SubItems.Add(item.RreqRerrWait.ToString()); li.SubItems.Add(item.BlacklistTableEntryTtl.ToString()); li.SubItems.Add(item.UnicastRreqGenEnable.ToString()); li.SubItems.Add(item.RlcEnabled.ToString()); li.SubItems.Add(item.AddRevLinkCost.ToString()); li.Tag = item; RoutingConfiguration.Items.Add(li); } }