You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
82 lines
2.4 KiB
C#
82 lines
2.4 KiB
C#
using System;
|
|
using System.ComponentModel.Design;
|
|
using System.Drawing;
|
|
using System.Windows.Forms;
|
|
using Be.Windows.Forms;
|
|
using DotNetCTFDumper.Utils;
|
|
|
|
namespace DotNetCTFDumper.GUI
|
|
{
|
|
public partial class HexViewForm : Form
|
|
{
|
|
public byte[] parsedData;
|
|
public byte[] rawData;
|
|
private ByteViewer _viewer;
|
|
|
|
|
|
public HexViewForm(byte[] parsedData, byte[] rawData,Color color)
|
|
{
|
|
InitializeComponent();
|
|
foreach (Control item in Controls)
|
|
{
|
|
item.ForeColor = color;
|
|
}
|
|
hexBox1.InfoForeColor = Color.FromArgb(color.R/2, color.G/2, color.B/2);
|
|
hexBox1.SelectionForeColor=Color.FromArgb(color.R, color.G, color.B);
|
|
hexBox1.SelectionBackColor=Color.FromArgb(color.R/4, color.G/4, color.B/4);
|
|
hexBox1.ShadowSelectionColor=Color.FromArgb(150,color.R/4, color.G/4, color.B/4);
|
|
this.parsedData = parsedData;
|
|
this.rawData = rawData;
|
|
|
|
UpdateInfo(false);
|
|
}
|
|
|
|
public HexViewForm(byte[] parsedData, byte[] rawData, Color color, string name)
|
|
{
|
|
InitializeComponent();
|
|
sizeLabel.ForeColor = color;
|
|
rawBox.ForeColor = color;
|
|
hexBox1.ForeColor = color;
|
|
hexBox1.InfoForeColor = Color.FromArgb(color.R/2, color.G/2, color.B/2);
|
|
hexBox1.SelectionForeColor=Color.FromArgb(color.R, color.G, color.B);
|
|
hexBox1.SelectionBackColor=Color.FromArgb(color.R/4, color.G/4, color.B/4);
|
|
hexBox1.ShadowSelectionColor=Color.FromArgb(150,color.R/4, color.G/4, color.B/4);
|
|
this.parsedData = parsedData;
|
|
this.rawData = rawData;
|
|
this.Text = name;
|
|
|
|
UpdateInfo(false);
|
|
|
|
|
|
}
|
|
|
|
private void HexViewForm_Load(object sender, EventArgs e)
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void UpdateInfo(bool raw)
|
|
{
|
|
var bytes = raw ? rawData : parsedData;
|
|
hexBox1.ByteProvider = new DynamicByteProvider(bytes);
|
|
sizeLabel.Text = "Size: "+bytes.Length.ToPrettySize();
|
|
|
|
}
|
|
|
|
private void rawBox_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
UpdateInfo(rawBox.Checked);
|
|
}
|
|
|
|
private void hexBox1_Click(object sender, EventArgs e)
|
|
{
|
|
Console.WriteLine("Semen");
|
|
}
|
|
}
|
|
|
|
|
|
} |