private void miExtractGumpSphere_Click(object sender, System.EventArgs e) { if (sfdExtractGumpSphere.ShowDialog() == DialogResult.OK) { PacketListViewItem lvi = (PacketListViewItem)lvPackets.SelectedItems[0]; BaseGump gump = (BaseGump)lvi.TimePacket.Packet; StreamWriter writer = null; try { writer = File.CreateText(sfdExtractGumpSphere.FileName); gump.WriteSphereGump(writer); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Save error", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { if (writer != null) { writer.Close(); } } } }
public static string GetMessage(PacketListViewItem item) { PacketProp[] props = item.TimePacket.Packet.GetPacketProperties(); if (props == null) { return("Unknown message"); } else if (props.Length == 0) { return("Empty message"); } StringBuilder sb = new StringBuilder(); int i = 0; while (true) { PacketProp prop = props[i]; sb.Append("- " + prop.PropInfo.Name + ": \"" + prop.GetStringValue() + "\""); if (++i < props.Length) { sb.Append("\r\n"); } else { break; } } return(sb.ToString()); }
private void lvPackets_SelectedIndexChanged(object sender, System.EventArgs e) { if (lvPackets.SelectedItems.Count > 0) { miSetBaseTime.Enabled = true; miHide.Enabled = true; PacketListViewItem lvi = (PacketListViewItem)lvPackets.SelectedItems[0]; Packet packet = lvi.TimePacket.Packet; if (packet is BaseGump) { miExtractGump.Enabled = true; miExtractGumpSphere.Enabled = true; return; } } else { miSetBaseTime.Enabled = false; miHide.Enabled = false; } miExtractGump.Enabled = false; miExtractGumpSphere.Enabled = false; }
private void lvPackets_ItemActivate(object sender, System.EventArgs e) { ListView.SelectedListViewItemCollection sel = lvPackets.SelectedItems; if (sel.Count > 0) { PacketListViewItem item = (PacketListViewItem)sel[0]; PacketDetails pDetails = new PacketDetails(item); pDetails.Show(); } }
public PacketDetails( PacketListViewItem item ) { InitializeComponent(); tbType.Text = item.GetPacketType(); tbTime.Text = item.GetTime(); tbRelTime.Text = item.GetRelTime(); tbDifTime.Text = item.GetDifTime(); tbLength.Text = item.GetLength(); tbMessage.Text = GetMessage( item ); tbPacket.Text = GetPacket( item ); }
public PacketDetails(PacketListViewItem item) { InitializeComponent(); tbType.Text = item.GetPacketType(); tbTime.Text = item.GetTime(); tbRelTime.Text = item.GetRelTime(); tbDifTime.Text = item.GetDifTime(); tbLength.Text = item.GetLength(); tbMessage.Text = GetMessage(item); tbPacket.Text = GetPacket(item); }
private void AddPacket(TimePacket packet) { PacketListViewItem item = new PacketListViewItem(packet, m_BaseTime, m_LastTime); lvPackets.Items.Add(item); if (m_AutoScrolling) { lvPackets.EnsureVisible(lvPackets.Items.Count - 1); } m_LastTime = packet.Time; }
private void miSetBaseTime_Click(object sender, System.EventArgs e) { ListView.SelectedListViewItemCollection sel = lvPackets.SelectedItems; if (sel.Count > 0) { PacketListViewItem item = (PacketListViewItem)sel[0]; m_BaseTime = item.TimePacket.Time; foreach (PacketListViewItem plvi in lvPackets.Items) { plvi.UpdateRelTime(m_BaseTime); } } }
public static string GetPacket(PacketListViewItem item) { Packet packet = item.TimePacket.Packet; byte[] data = packet.Data; StringBuilder sb = new StringBuilder(); for (int l = 0; l < data.Length; l += 0x10) { sb.AppendFormat("{0:X4}:", l); for (int i = l; i < l + 0x10; i++) { sb.AppendFormat(" {0}", i < data.Length ? data[i].ToString("X2") : "--"); } sb.Append("\t"); for (int i = l; i < l + 0x10; i++) { if (i >= data.Length) { break; } byte b = data[i]; char c; if (b >= 0x20 && b < 0x80) { c = (char)b; } else { c = '.'; } sb.Append(c); } sb.Append("\r\n"); } return(sb.ToString()); }
public static string GetMessage( PacketListViewItem item ) { PacketProp[] props = item.TimePacket.Packet.GetPacketProperties(); if ( props == null ) return "Unknown message"; else if ( props.Length == 0 ) return "Empty message"; StringBuilder sb = new StringBuilder(); int i = 0; while ( true ) { PacketProp prop = props[i]; sb.Append( "- " + prop.PropInfo.Name + ": \"" + prop.GetStringValue() + "\"" ); if ( ++i < props.Length ) sb.Append( "\r\n" ); else break; } return sb.ToString(); }
public static string GetPacket( PacketListViewItem item ) { Packet packet = item.TimePacket.Packet; byte[] data = packet.Data; StringBuilder sb = new StringBuilder(); for ( int l = 0; l < data.Length; l += 0x10 ) { sb.AppendFormat( "{0:X4}:", l ); for ( int i = l; i < l + 0x10; i++ ) sb.AppendFormat( " {0}", i < data.Length ? data[i].ToString( "X2" ) : "--" ); sb.Append( "\t" ); for ( int i = l; i < l + 0x10; i++ ) { if ( i >= data.Length ) break; byte b = data[i]; char c; if ( b >= 0x20 && b < 0x80 ) c = (char)b; else c = '.'; sb.Append( c ); } sb.Append( "\r\n" ); } return sb.ToString(); }
private void miHide_Click(object sender, System.EventArgs e) { if (lvPackets.SelectedIndices.Count > 0) { int index = lvPackets.SelectedIndices[0]; lvPackets.Items.RemoveAt(index); if (index < lvPackets.Items.Count) { PacketListViewItem item = (PacketListViewItem)lvPackets.Items[index]; if (index == 0) { item.UpdateDifTime(DateTime.MinValue); } else { item.UpdateDifTime(((PacketListViewItem)lvPackets.Items[index - 1]).TimePacket.Time); } } miShowHidden.Enabled = true; } }
private void AddPacket( TimePacket packet ) { PacketListViewItem item = new PacketListViewItem( packet, m_BaseTime, m_LastTime ); lvPackets.Items.Add( item ); if ( m_AutoScrolling ) lvPackets.EnsureVisible( lvPackets.Items.Count - 1 ); m_LastTime = packet.Time; }