From 2f7427d5b42ed1a1ff104cfe88f9780d10c47e06 Mon Sep 17 00:00:00 2001 From: Nathan Woodburn Date: Thu, 8 Jun 2023 15:16:03 +1000 Subject: [PATCH] main: Added DNS Updates and test Icon --- FireWallet/BatchForm.Designer.cs | 30 +- FireWallet/BatchForm.cs | 189 ++++++- FireWallet/BatchForm.resx | 175 ++++++ FireWallet/BatchImportForm.Designer.cs | 62 +-- FireWallet/BatchImportForm.resx | 175 ++++++ FireWallet/DNSForm.Designer.cs | 210 ++++++++ FireWallet/DNSForm.cs | 617 +++++++++++++++++++++ FireWallet/DNSForm.resx | 295 +++++++++++ FireWallet/DomainForm.Designer.cs | 118 +++-- FireWallet/DomainForm.cs | 64 ++- FireWallet/DomainForm.resx | 175 ++++++ FireWallet/FireWallet.csproj | 19 +- FireWallet/Firewallet.ico | Bin 0 -> 10149 bytes FireWallet/HSDBatcher.ico | Bin 0 -> 123504 bytes FireWallet/MainForm.Designer.cs | 2 + FireWallet/MainForm.cs | 29 +- FireWallet/MainForm.resx | 708 +++++++++++++++++++++++++ FireWallet/NodeForm.Designer.cs | 2 + FireWallet/NodeForm.resx | 175 ++++++ FireWallet/NotifyForm.Designer.cs | 2 + FireWallet/NotifyForm.resx | 175 ++++++ 21 files changed, 3086 insertions(+), 136 deletions(-) create mode 100644 FireWallet/DNSForm.Designer.cs create mode 100644 FireWallet/DNSForm.cs create mode 100644 FireWallet/DNSForm.resx create mode 100644 FireWallet/Firewallet.ico create mode 100644 FireWallet/HSDBatcher.ico diff --git a/FireWallet/BatchForm.Designer.cs b/FireWallet/BatchForm.Designer.cs index 067873c..6d17d18 100644 --- a/FireWallet/BatchForm.Designer.cs +++ b/FireWallet/BatchForm.Designer.cs @@ -28,6 +28,7 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(BatchForm)); buttonCancel = new Button(); buttonSend = new Button(); groupBoxTransactions = new GroupBox(); @@ -41,9 +42,9 @@ // buttonCancel.FlatStyle = FlatStyle.Flat; buttonCancel.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - buttonCancel.Location = new System.Drawing.Point(707, 401); + buttonCancel.Location = new Point(707, 401); buttonCancel.Name = "buttonCancel"; - buttonCancel.Size = new System.Drawing.Size(81, 37); + buttonCancel.Size = new Size(81, 37); buttonCancel.TabIndex = 0; buttonCancel.TabStop = false; buttonCancel.Text = "Cancel Batch"; @@ -54,9 +55,9 @@ // buttonSend.FlatStyle = FlatStyle.Flat; buttonSend.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - buttonSend.Location = new System.Drawing.Point(620, 401); + buttonSend.Location = new Point(620, 401); buttonSend.Name = "buttonSend"; - buttonSend.Size = new System.Drawing.Size(81, 37); + buttonSend.Size = new Size(81, 37); buttonSend.TabIndex = 1; buttonSend.TabStop = false; buttonSend.Text = "Send"; @@ -66,9 +67,9 @@ // groupBoxTransactions // groupBoxTransactions.Controls.Add(panelTXs); - groupBoxTransactions.Location = new System.Drawing.Point(0, 0); + groupBoxTransactions.Location = new Point(0, 0); groupBoxTransactions.Name = "groupBoxTransactions"; - groupBoxTransactions.Size = new System.Drawing.Size(614, 438); + groupBoxTransactions.Size = new Size(614, 438); groupBoxTransactions.TabIndex = 2; groupBoxTransactions.TabStop = false; groupBoxTransactions.Text = "Transactions"; @@ -77,18 +78,18 @@ // panelTXs.AutoScroll = true; panelTXs.Dock = DockStyle.Fill; - panelTXs.Location = new System.Drawing.Point(3, 19); + panelTXs.Location = new Point(3, 19); panelTXs.Name = "panelTXs"; - panelTXs.Size = new System.Drawing.Size(608, 416); + panelTXs.Size = new Size(608, 416); panelTXs.TabIndex = 3; // // buttonImport // buttonImport.FlatStyle = FlatStyle.Flat; buttonImport.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - buttonImport.Location = new System.Drawing.Point(620, 19); + buttonImport.Location = new Point(620, 19); buttonImport.Name = "buttonImport"; - buttonImport.Size = new System.Drawing.Size(81, 37); + buttonImport.Size = new Size(81, 37); buttonImport.TabIndex = 3; buttonImport.TabStop = false; buttonImport.Text = "Import"; @@ -99,9 +100,9 @@ // buttonExport.FlatStyle = FlatStyle.Flat; buttonExport.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - buttonExport.Location = new System.Drawing.Point(707, 19); + buttonExport.Location = new Point(707, 19); buttonExport.Name = "buttonExport"; - buttonExport.Size = new System.Drawing.Size(81, 37); + buttonExport.Size = new Size(81, 37); buttonExport.TabIndex = 4; buttonExport.TabStop = false; buttonExport.Text = "Export"; @@ -110,15 +111,16 @@ // // BatchForm // - AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); + AutoScaleDimensions = new SizeF(7F, 15F); AutoScaleMode = AutoScaleMode.Font; - ClientSize = new System.Drawing.Size(800, 450); + ClientSize = new Size(800, 450); Controls.Add(buttonExport); Controls.Add(buttonImport); Controls.Add(groupBoxTransactions); Controls.Add(buttonSend); Controls.Add(buttonCancel); FormBorderStyle = FormBorderStyle.Fixed3D; + Icon = (Icon)resources.GetObject("$this.Icon"); MaximizeBox = false; Name = "BatchForm"; Text = "Batch"; diff --git a/FireWallet/BatchForm.cs b/FireWallet/BatchForm.cs index 40f576e..fb03eda 100644 --- a/FireWallet/BatchForm.cs +++ b/FireWallet/BatchForm.cs @@ -1,5 +1,7 @@ using System.Data; +using System.Net; using System.Runtime.InteropServices; +using Microsoft.VisualBasic; using Newtonsoft.Json.Linq; using Point = System.Drawing.Point; @@ -47,7 +49,8 @@ namespace FireWallet deleteTX.Width = 25; deleteTX.Height = 25; deleteTX.TextAlign = ContentAlignment.MiddleCenter; - deleteTX.Click += (sender, e) => { + deleteTX.Click += (sender, e) => + { panelTXs.Controls.Remove(tx); FixSpacing(); List temp = new List(); @@ -110,7 +113,8 @@ namespace FireWallet deleteTX.Width = 25; deleteTX.Height = 25; deleteTX.TextAlign = ContentAlignment.MiddleCenter; - deleteTX.Click += (sender, e) => { + deleteTX.Click += (sender, e) => + { panelTXs.Controls.Remove(tx); FixSpacing(); List temp = new List(); @@ -161,7 +165,7 @@ namespace FireWallet toAddressLabel.Location = new Point(200, 10); toAddressLabel.AutoSize = true; tx.Controls.Add(toAddressLabel); - + Button deleteTX = new Button(); deleteTX.Text = "X"; @@ -169,7 +173,64 @@ namespace FireWallet deleteTX.Width = 25; deleteTX.Height = 25; deleteTX.TextAlign = ContentAlignment.MiddleCenter; - deleteTX.Click += (sender, e) => { + deleteTX.Click += (sender, e) => + { + panelTXs.Controls.Remove(tx); + FixSpacing(); + List temp = new List(); + foreach (Batch batch in batches) + { + if (batch.domain != domain && batch.method != operation) + { + temp.Add(batch); + } + } + batches = temp.ToArray(); + }; + deleteTX.FlatStyle = FlatStyle.Flat; + deleteTX.Font = new Font(deleteTX.Font.FontFamily, 9F, FontStyle.Bold); + tx.Controls.Add(deleteTX); + + panelTXs.Controls.Add(tx); + UpdateTheme(); + } + + public void AddBatch(string domain, string operation, DNS[] updateRecords) + { + batches = batches.Concat(new Batch[] { new Batch(domain, operation, updateRecords) }).ToArray(); + Panel tx = new Panel(); + tx.Left = 0; + tx.Top = panelTXs.Controls.Count * 52 + 2; + tx.Width = panelTXs.Width - SystemInformation.VerticalScrollBarWidth; + tx.Height = 50; + tx.BorderStyle = BorderStyle.FixedSingle; + + Label action = new Label(); + action.Text = operation; + action.Location = new Point(10, 10); + action.AutoSize = true; + tx.Controls.Add(action); + Label target = new Label(); + target.Text = domain; + target.Location = new Point(10, 30); + target.AutoSize = true; + tx.Controls.Add(target); + + Label toAddressLabel = new Label(); + toAddressLabel.Text = "-> UPDATE RECORDS"; + toAddressLabel.Location = new Point(200, 10); + toAddressLabel.AutoSize = true; + tx.Controls.Add(toAddressLabel); + + + Button deleteTX = new Button(); + deleteTX.Text = "X"; + deleteTX.Location = new Point(tx.Width - 40, 10); + deleteTX.Width = 25; + deleteTX.Height = 25; + deleteTX.TextAlign = ContentAlignment.MiddleCenter; + deleteTX.Click += (sender, e) => + { panelTXs.Controls.Remove(tx); FixSpacing(); List temp = new List(); @@ -400,10 +461,10 @@ namespace FireWallet HttpClient httpClient = new HttpClient(); private async void buttonSend_Click(object sender, EventArgs e) { - string batchTX = "[" +string.Join(", ", batches.Select(batch => batch.ToString())) + "]"; + string batchTX = "[" + string.Join(", ", batches.Select(batch => batch.ToString())) + "]"; string content = "{\"method\": \"sendbatch\",\"params\":[ " + batchTX + "]}"; - string responce = await APIPost("",true,content); - + string responce = await APIPost("", true, content); + if (responce == "Error") { AddLog("Error sending batch"); @@ -412,7 +473,7 @@ namespace FireWallet notifyForm.Dispose(); return; } - + JObject jObject = JObject.Parse(responce); if (jObject["error"].ToString() != "") { @@ -423,11 +484,11 @@ namespace FireWallet notifyForm.Dispose(); return; } - + JObject result = JObject.Parse(jObject["result"].ToString()); string hash = result["hash"].ToString(); AddLog("Batch sent with hash: " + hash); - NotifyForm notifyForm2 = new NotifyForm("Batch sent\nThis might take a while to mine.", "Explorer", mainForm.userSettings["explorer-tx"]+hash); + NotifyForm notifyForm2 = new NotifyForm("Batch sent\nThis might take a while to mine.", "Explorer", mainForm.userSettings["explorer-tx"] + hash); notifyForm2.ShowDialog(); notifyForm2.Dispose(); this.Close(); @@ -455,7 +516,8 @@ namespace FireWallet else if (b.method == "TRANSFER") { sw.WriteLine(b.domain + "," + b.method + "," + b.toAddress); - } else + } + else { sw.WriteLine(b.domain + "," + b.method); } @@ -522,10 +584,12 @@ namespace FireWallet if (b.method == "BID") { AddBatch(b.domain, b.method, b.bid, b.lockup); - } else if (b.method == "TRANSFER") + } + else if (b.method == "TRANSFER") { AddBatch(b.domain, b.method, b.toAddress); - } else + } + else { AddBatch(b.domain, b.method); } @@ -582,48 +646,131 @@ namespace FireWallet public decimal bid { get; } public decimal lockup { get; } public string toAddress { get; } - public Batch(string domain, string method) + DNS[]? update; + public Batch(string domain, string method) // Normal TXs { this.domain = domain; this.method = method; bid = 0; lockup = 0; toAddress = ""; + update = null; } - public Batch(string domain, string method, string toAddress) + public Batch(string domain, string method, string toAddress) // Transfers { this.domain = domain; this.method = method; this.toAddress = toAddress; bid = 0; lockup = 0; + update = null; } - public Batch(string domain, string method, decimal bid, decimal lockup) + public Batch(string domain, string method, decimal bid, decimal lockup) // Bids { this.domain = domain; this.method = method; this.bid = bid; this.lockup = lockup; toAddress = ""; + update = null; } - public Batch(string domain, string method, decimal bid, decimal lockup, string toAddress) + public Batch(string domain, string method, DNS[] update) // DNS Update { this.domain = domain; this.method = method; - this.bid = bid; - this.lockup = lockup; - this.toAddress = toAddress; + this.update = update; + } public override string ToString() { if (method == "BID") { return "[\"BID\", \"" + domain + "\", " + bid + ", " + lockup + "]"; - } else if (method == "TRANSFER") + } + else if (method == "TRANSFER") { return "[\"TRANSFER\", \"" + domain + "\", \"" + toAddress + "\"]"; } + else if (method == "UPDATE" && update != null) + { + + string records = "{records:[" + string.Join(", ", update.Select(record => record.ToString())) + "]}"; + return "[\"UPDATE\", \"" + domain + "\", " + records + "]"; + + } return "[\"" + method + "\", \"" + domain + "\"]"; } } + public class DNS + { + public string? type { get; } + public string? ns { get; } + public string? address { get; } + public string[]? TXT { get; } + public int? keyTag { get; } + public int? algorithm { get; } + public int? digestType { get; } + public string? digest { get; } + + public DNS(string type, string content) // NS, SYNTH4, SYNTH6 + { + this.type = type; + switch (type) + { + case "NS": + ns = content; + break; + case "SYNTH4": + address = content; + break; + case "SYNTH6": + address = content; + break; + } + } + public DNS(string type, string[] content) // TXT + { + this.type = type; + TXT = content; + } + public DNS(string type, string ns, string address) // GLUE4, GLUE6 + { + this.type = type; + this.ns = ns; + this.address = address; + } + public DNS(string type, int keyTag, int algorithm, int digestType, string digest) // DS + { + this.type = type; + this.keyTag = keyTag; + this.algorithm = algorithm; + this.digestType = digestType; + this.digest = digest; + } + public override string ToString() + { + switch (type) + { + case "DS": + return "{\"type\": \"" + type + "\",\"keyTag\": " + keyTag + ",\"algorithm\": " + algorithm + ",\"digestType\": " + digestType + ",\"digest\":\"" + digest + "\"}"; + break; + case "NS": + return "{\"type\": \"" + type + "\",\"ns\": \"" + ns + "\"}"; + break; + case "GLUE4": + case "GLUE6": + return "{\"type\": \"" + type + "\",\"ns\": \"" + ns + "\",\"address\": \"" + address + "\"}"; + break; + case "SYNTH4": + case "SYNTH6": + return "{\"type\": \"" + type + "\",\"address\": \"" + address + "\"}"; + break; + case "TXT": + return "{\"type\": \"" + type + "\",\"txt\": [" + string.Join(", ", TXT.Select(record => ("\"" + record + "\""))) + "]}"; + break; + } + return ""; + + } + } } diff --git a/FireWallet/BatchForm.resx b/FireWallet/BatchForm.resx index a395bff..3f56770 100644 --- a/FireWallet/BatchForm.resx +++ b/FireWallet/BatchForm.resx @@ -117,4 +117,179 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + 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 + AElFTkSuQmCC + + \ No newline at end of file diff --git a/FireWallet/BatchImportForm.Designer.cs b/FireWallet/BatchImportForm.Designer.cs index 2823ee7..6ddc815 100644 --- a/FireWallet/BatchImportForm.Designer.cs +++ b/FireWallet/BatchImportForm.Designer.cs @@ -28,6 +28,7 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(BatchImportForm)); listBoxDomains = new ListBox(); label1 = new Label(); comboBoxMode = new ComboBox(); @@ -50,18 +51,18 @@ // listBoxDomains.FormattingEnabled = true; listBoxDomains.ItemHeight = 15; - listBoxDomains.Location = new System.Drawing.Point(12, 42); + listBoxDomains.Location = new Point(12, 42); listBoxDomains.Name = "listBoxDomains"; - listBoxDomains.Size = new System.Drawing.Size(241, 484); + listBoxDomains.Size = new Size(241, 484); listBoxDomains.TabIndex = 0; // // label1 // label1.AutoSize = true; label1.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - label1.Location = new System.Drawing.Point(12, 9); + label1.Location = new Point(12, 9); label1.Name = "label1"; - label1.Size = new System.Drawing.Size(75, 21); + label1.Size = new Size(75, 21); label1.TabIndex = 1; label1.Text = "Domains:"; // @@ -72,9 +73,9 @@ comboBoxMode.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); comboBoxMode.FormattingEnabled = true; comboBoxMode.Items.AddRange(new object[] { "OPEN", "BID", "REVEAL", "REDEEM", "RENEW", "TRANSFER", "FINALIZE", "CANCEL" }); - comboBoxMode.Location = new System.Drawing.Point(346, 42); + comboBoxMode.Location = new Point(346, 42); comboBoxMode.Name = "comboBoxMode"; - comboBoxMode.Size = new System.Drawing.Size(226, 29); + comboBoxMode.Size = new Size(226, 29); comboBoxMode.TabIndex = 2; comboBoxMode.SelectedIndexChanged += comboBoxMode_SelectedIndexChanged; // @@ -82,9 +83,9 @@ // label2.AutoSize = true; label2.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - label2.Location = new System.Drawing.Point(287, 45); + label2.Location = new Point(287, 45); label2.Name = "label2"; - label2.Size = new System.Drawing.Size(53, 21); + label2.Size = new Size(53, 21); label2.TabIndex = 3; label2.Text = "Mode:"; // @@ -92,9 +93,9 @@ // label3.AutoSize = true; label3.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - label3.Location = new System.Drawing.Point(25, 25); + label3.Location = new Point(25, 25); label3.Name = "label3"; - label3.Size = new System.Drawing.Size(35, 21); + label3.Size = new Size(35, 21); label3.TabIndex = 3; label3.Text = "Bid:"; // @@ -102,35 +103,35 @@ // label4.AutoSize = true; label4.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - label4.Location = new System.Drawing.Point(12, 73); + label4.Location = new Point(12, 73); label4.Name = "label4"; - label4.Size = new System.Drawing.Size(48, 21); + label4.Size = new Size(48, 21); label4.TabIndex = 3; label4.Text = "Blind:"; // // textBoxBid // textBoxBid.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - textBoxBid.Location = new System.Drawing.Point(66, 22); + textBoxBid.Location = new Point(66, 22); textBoxBid.Name = "textBoxBid"; - textBoxBid.Size = new System.Drawing.Size(226, 29); + textBoxBid.Size = new Size(226, 29); textBoxBid.TabIndex = 4; // // textBoxBlind // textBoxBlind.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - textBoxBlind.Location = new System.Drawing.Point(66, 70); + textBoxBlind.Location = new Point(66, 70); textBoxBlind.Name = "textBoxBlind"; - textBoxBlind.Size = new System.Drawing.Size(226, 29); + textBoxBlind.Size = new Size(226, 29); textBoxBlind.TabIndex = 5; // // buttonImport // buttonImport.FlatStyle = FlatStyle.Flat; buttonImport.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - buttonImport.Location = new System.Drawing.Point(851, 485); + buttonImport.Location = new Point(851, 485); buttonImport.Name = "buttonImport"; - buttonImport.Size = new System.Drawing.Size(87, 38); + buttonImport.Size = new Size(87, 38); buttonImport.TabIndex = 6; buttonImport.Text = "Import"; buttonImport.UseVisualStyleBackColor = true; @@ -140,9 +141,9 @@ // buttonCancel.FlatStyle = FlatStyle.Flat; buttonCancel.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - buttonCancel.Location = new System.Drawing.Point(731, 485); + buttonCancel.Location = new Point(731, 485); buttonCancel.Name = "buttonCancel"; - buttonCancel.Size = new System.Drawing.Size(87, 38); + buttonCancel.Size = new Size(87, 38); buttonCancel.TabIndex = 6; buttonCancel.Text = "Cancel"; buttonCancel.UseVisualStyleBackColor = true; @@ -152,9 +153,9 @@ // label5.AutoSize = true; label5.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - label5.Location = new System.Drawing.Point(6, 19); + label5.Location = new Point(6, 19); label5.Name = "label5"; - label5.Size = new System.Drawing.Size(67, 21); + label5.Size = new Size(67, 21); label5.TabIndex = 7; label5.Text = "Send To:"; // @@ -164,9 +165,9 @@ groupBoxBid.Controls.Add(label3); groupBoxBid.Controls.Add(label4); groupBoxBid.Controls.Add(textBoxBlind); - groupBoxBid.Location = new System.Drawing.Point(287, 99); + groupBoxBid.Location = new Point(287, 99); groupBoxBid.Name = "groupBoxBid"; - groupBoxBid.Size = new System.Drawing.Size(370, 200); + groupBoxBid.Size = new Size(370, 200); groupBoxBid.TabIndex = 8; groupBoxBid.TabStop = false; groupBoxBid.Text = "Bid Settings"; @@ -175,9 +176,9 @@ // groupBoxtransfer.Controls.Add(textBoxToAddress); groupBoxtransfer.Controls.Add(label5); - groupBoxtransfer.Location = new System.Drawing.Point(287, 99); + groupBoxtransfer.Location = new Point(287, 99); groupBoxtransfer.Name = "groupBoxtransfer"; - groupBoxtransfer.Size = new System.Drawing.Size(370, 200); + groupBoxtransfer.Size = new Size(370, 200); groupBoxtransfer.TabIndex = 0; groupBoxtransfer.TabStop = false; groupBoxtransfer.Text = "Transfer Settings"; @@ -185,16 +186,16 @@ // textBoxToAddress // textBoxToAddress.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - textBoxToAddress.Location = new System.Drawing.Point(6, 43); + textBoxToAddress.Location = new Point(6, 43); textBoxToAddress.Name = "textBoxToAddress"; - textBoxToAddress.Size = new System.Drawing.Size(358, 29); + textBoxToAddress.Size = new Size(358, 29); textBoxToAddress.TabIndex = 8; // // BatchImportForm // - AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); + AutoScaleDimensions = new SizeF(7F, 15F); AutoScaleMode = AutoScaleMode.Font; - ClientSize = new System.Drawing.Size(950, 535); + ClientSize = new Size(950, 535); Controls.Add(groupBoxtransfer); Controls.Add(groupBoxBid); Controls.Add(buttonCancel); @@ -204,6 +205,7 @@ Controls.Add(label1); Controls.Add(listBoxDomains); FormBorderStyle = FormBorderStyle.Fixed3D; + Icon = (Icon)resources.GetObject("$this.Icon"); MaximizeBox = false; Name = "BatchImportForm"; Text = "Import"; diff --git a/FireWallet/BatchImportForm.resx b/FireWallet/BatchImportForm.resx index a395bff..3f56770 100644 --- a/FireWallet/BatchImportForm.resx +++ b/FireWallet/BatchImportForm.resx @@ -117,4 +117,179 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + 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 + AElFTkSuQmCC + + \ No newline at end of file diff --git a/FireWallet/DNSForm.Designer.cs b/FireWallet/DNSForm.Designer.cs new file mode 100644 index 0000000..7294f98 --- /dev/null +++ b/FireWallet/DNSForm.Designer.cs @@ -0,0 +1,210 @@ +namespace FireWallet +{ + partial class DNSForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DNSForm)); + groupBoxRecords = new GroupBox(); + panelRecords = new Panel(); + buttonAddRecord = new Button(); + buttonCancel = new Button(); + buttonSend = new Button(); + label1 = new Label(); + groupBoxAddRecord = new GroupBox(); + labelRecordAlt = new Label(); + textBoxAlt = new TextBox(); + textBoxMain = new TextBox(); + labelRecordMain = new Label(); + comboBoxType = new ComboBox(); + groupBoxRecords.SuspendLayout(); + groupBoxAddRecord.SuspendLayout(); + SuspendLayout(); + // + // groupBoxRecords + // + groupBoxRecords.Controls.Add(panelRecords); + groupBoxRecords.Location = new Point(12, 12); + groupBoxRecords.Name = "groupBoxRecords"; + groupBoxRecords.Size = new Size(542, 540); + groupBoxRecords.TabIndex = 0; + groupBoxRecords.TabStop = false; + groupBoxRecords.Text = "DNS Records"; + // + // panelRecords + // + panelRecords.AutoScroll = true; + panelRecords.Dock = DockStyle.Fill; + panelRecords.Location = new Point(3, 19); + panelRecords.Name = "panelRecords"; + panelRecords.Size = new Size(536, 518); + panelRecords.TabIndex = 0; + // + // buttonAddRecord + // + buttonAddRecord.FlatStyle = FlatStyle.Flat; + buttonAddRecord.Location = new Point(6, 163); + buttonAddRecord.Name = "buttonAddRecord"; + buttonAddRecord.Size = new Size(93, 46); + buttonAddRecord.TabIndex = 1; + buttonAddRecord.TabStop = false; + buttonAddRecord.Text = "Add Record"; + buttonAddRecord.UseVisualStyleBackColor = true; + buttonAddRecord.Click += buttonAddRecord_Click; + // + // buttonCancel + // + buttonCancel.FlatStyle = FlatStyle.Flat; + buttonCancel.Location = new Point(557, 500); + buttonCancel.Name = "buttonCancel"; + buttonCancel.Size = new Size(93, 46); + buttonCancel.TabIndex = 1; + buttonCancel.TabStop = false; + buttonCancel.Text = "Cancel Edit"; + buttonCancel.UseVisualStyleBackColor = true; + buttonCancel.Click += buttonCancel_Click; + // + // buttonSend + // + buttonSend.FlatStyle = FlatStyle.Flat; + buttonSend.Location = new Point(888, 500); + buttonSend.Name = "buttonSend"; + buttonSend.Size = new Size(93, 46); + buttonSend.TabIndex = 1; + buttonSend.TabStop = false; + buttonSend.Text = "Send Edit"; + buttonSend.UseVisualStyleBackColor = true; + buttonSend.Click += buttonSend_Click; + // + // label1 + // + label1.AutoSize = true; + label1.Location = new Point(6, 28); + label1.Name = "label1"; + label1.Size = new Size(34, 15); + label1.TabIndex = 2; + label1.Text = "Type:"; + // + // groupBoxAddRecord + // + groupBoxAddRecord.Controls.Add(labelRecordAlt); + groupBoxAddRecord.Controls.Add(textBoxAlt); + groupBoxAddRecord.Controls.Add(textBoxMain); + groupBoxAddRecord.Controls.Add(labelRecordMain); + groupBoxAddRecord.Controls.Add(comboBoxType); + groupBoxAddRecord.Controls.Add(label1); + groupBoxAddRecord.Controls.Add(buttonAddRecord); + groupBoxAddRecord.Location = new Point(560, 12); + groupBoxAddRecord.Name = "groupBoxAddRecord"; + groupBoxAddRecord.Size = new Size(421, 224); + groupBoxAddRecord.TabIndex = 3; + groupBoxAddRecord.TabStop = false; + groupBoxAddRecord.Text = "New Record"; + // + // labelRecordAlt + // + labelRecordAlt.AutoSize = true; + labelRecordAlt.Location = new Point(6, 105); + labelRecordAlt.Name = "labelRecordAlt"; + labelRecordAlt.Size = new Size(52, 15); + labelRecordAlt.TabIndex = 6; + labelRecordAlt.Text = "Address:"; + // + // textBoxAlt + // + textBoxAlt.Location = new Point(65, 102); + textBoxAlt.Name = "textBoxAlt"; + textBoxAlt.Size = new Size(326, 23); + textBoxAlt.TabIndex = 5; + textBoxAlt.KeyDown += textBoxMain_KeyDown; + // + // textBoxMain + // + textBoxMain.Location = new Point(65, 65); + textBoxMain.Name = "textBoxMain"; + textBoxMain.Size = new Size(326, 23); + textBoxMain.TabIndex = 5; + textBoxMain.KeyDown += textBoxMain_KeyDown; + // + // labelRecordMain + // + labelRecordMain.AutoSize = true; + labelRecordMain.Location = new Point(6, 68); + labelRecordMain.Name = "labelRecordMain"; + labelRecordMain.Size = new Size(53, 15); + labelRecordMain.TabIndex = 4; + labelRecordMain.Text = "Content:"; + // + // comboBoxType + // + comboBoxType.DropDownStyle = ComboBoxStyle.DropDownList; + comboBoxType.FlatStyle = FlatStyle.Flat; + comboBoxType.FormattingEnabled = true; + comboBoxType.Items.AddRange(new object[] { "NS", "DS", "GLUE4", "GLUE6", "TXT" }); + comboBoxType.Location = new Point(65, 25); + comboBoxType.Name = "comboBoxType"; + comboBoxType.Size = new Size(129, 23); + comboBoxType.TabIndex = 3; + comboBoxType.SelectedIndexChanged += comboBoxType_SelectedIndexChanged; + // + // DNSForm + // + AutoScaleDimensions = new SizeF(7F, 15F); + AutoScaleMode = AutoScaleMode.Font; + ClientSize = new Size(993, 564); + Controls.Add(groupBoxAddRecord); + Controls.Add(buttonSend); + Controls.Add(buttonCancel); + Controls.Add(groupBoxRecords); + FormBorderStyle = FormBorderStyle.Fixed3D; + Icon = (Icon)resources.GetObject("$this.Icon"); + MaximizeBox = false; + Name = "DNSForm"; + Text = "DNSForm"; + Load += DNSForm_Load; + groupBoxRecords.ResumeLayout(false); + groupBoxAddRecord.ResumeLayout(false); + groupBoxAddRecord.PerformLayout(); + ResumeLayout(false); + } + + #endregion + + private GroupBox groupBoxRecords; + private Panel panelRecords; + private Button buttonAddRecord; + private Button buttonCancel; + private Button buttonSend; + private Label label1; + private GroupBox groupBoxAddRecord; + private ComboBox comboBoxType; + private Label labelRecordMain; + private Label labelRecordAlt; + private TextBox textBoxAlt; + private TextBox textBoxMain; + } +} \ No newline at end of file diff --git a/FireWallet/DNSForm.cs b/FireWallet/DNSForm.cs new file mode 100644 index 0000000..cedd738 --- /dev/null +++ b/FireWallet/DNSForm.cs @@ -0,0 +1,617 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.DirectoryServices.ActiveDirectory; +using System.Drawing; +using System.Linq; +using System.Runtime.InteropServices; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using Newtonsoft.Json.Linq; + +namespace FireWallet +{ + public partial class DNSForm : Form + { + private string dir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\FireWallet\\"; + private Dictionary theme; + private Dictionary nodeSettings; + private string domain; + MainForm mainForm; + public bool cancel { get; set; } + public DNS[] DNSrecords { get; set; } + public DNSForm(MainForm mainForm, string domain) + { + InitializeComponent(); + this.domain = domain; + this.mainForm = mainForm; + nodeSettings = mainForm.nodeSettings; + + cancel = true; + } + private void DNSForm_Load(object sender, EventArgs e) + { + UpdateTheme(); + GetDNS(); + + comboBoxType.SelectedIndex = 0; + } + + + + private void UpdateDNSGroup() + { + panelRecords.Controls.Clear(); + int i = 0; + foreach (DNS record in DNSrecords) + { + Panel DNSPanel = new Panel(); + // Count for scroll width + DNSPanel.Width = panelRecords.Width - SystemInformation.VerticalScrollBarWidth - 2; + DNSPanel.Height = 60; + DNSPanel.BorderStyle = BorderStyle.FixedSingle; + DNSPanel.Top = 62 * i; + + Label DNSType = new Label(); + DNSType.Text = record.type; + DNSType.Location = new System.Drawing.Point(10, 10); + DNSType.AutoSize = true; + DNSType.Font = new Font(DNSType.Font.FontFamily, 11.0f, FontStyle.Bold); + DNSPanel.Controls.Add(DNSType); + + + switch (DNSType.Text) + { + case "NS": + Label DNSNS = new Label(); + DNSNS.Text = record.ns; + DNSNS.Location = new System.Drawing.Point(10, 30); + DNSNS.AutoSize = true; + DNSPanel.Controls.Add(DNSNS); + break; + case "GLUE4": + case "GLUE6": + Label DNSNS1 = new Label(); + DNSNS1.Text = record.ns; + DNSNS1.Location = new System.Drawing.Point(10, 30); + DNSNS1.AutoSize = true; + DNSPanel.Controls.Add(DNSNS1); + Label address = new Label(); + address.Text = record.address; + address.Location = new System.Drawing.Point(DNSNS1.Left + DNSNS1.Width + 20, 30); + address.AutoSize = true; + DNSPanel.Controls.Add(address); + break; + case "DS": + Label keyTag = new Label(); + keyTag.Text = record.keyTag.ToString(); + keyTag.Location = new System.Drawing.Point(10, 30); + keyTag.AutoSize = true; + DNSPanel.Controls.Add(keyTag); + Label algorithm = new Label(); + algorithm.Text = record.algorithm.ToString(); + algorithm.Location = new System.Drawing.Point(keyTag.Left + keyTag.Width + 10, 30); + algorithm.AutoSize = true; + DNSPanel.Controls.Add(algorithm); + Label digestType = new Label(); + digestType.Text = record.digestType.ToString(); + digestType.Location = new System.Drawing.Point(algorithm.Left + algorithm.Width + 10, 30); + digestType.AutoSize = true; + DNSPanel.Controls.Add(digestType); + Label digest = new Label(); + digest.Text = record.digest; + digest.Location = new System.Drawing.Point(digestType.Left + digestType.Width + 10, 30); + digest.AutoSize = true; + DNSPanel.Controls.Add(digest); + break; + case "TXT": + + int j = 0; + foreach (string txt in record.TXT) + { + Label DNSTXT = new Label(); + DNSTXT.Text = txt; + DNSTXT.Location = new System.Drawing.Point(10, 30 + (j * 20)); + DNSTXT.AutoSize = true; + DNSPanel.Controls.Add(DNSTXT); + DNSPanel.Height = 60 + (j * 20); + j++; + } + break; + + } + Button DeleteButton = new Button(); + DeleteButton.Text = "X"; + DeleteButton.Width = 30; + DeleteButton.Height = 30; + DeleteButton.Left = DNSPanel.Width - 40; + // On click remove record from DNS[] and refresh display + DeleteButton.TextAlign = ContentAlignment.MiddleCenter; + + DNS current = record; + DeleteButton.Click += (sender, e) => + { + DNS[] newRecords = new DNS[DNSrecords.Length - 1]; + int a = 0; + foreach (DNS r in DNSrecords) + { + if (r.type == current.type && r.ns == current.ns && + r.TXT == current.TXT && r.address == current.address && + r.digest == current.digest && r.digestType == current.digestType && + r.algorithm == current.algorithm && r.keyTag == current.keyTag) + { + // Deleted + } + else + { + newRecords[a] = r; + a++; + } + } + DNSrecords = newRecords; + UpdateDNSGroup(); + }; + + DNSPanel.Controls.Add(DeleteButton); + DeleteButton.BringToFront(); + + panelRecords.Controls.Add(DNSPanel); + i++; + + } + } + + #region Logging + public void AddLog(string message) + { + StreamWriter sw = new StreamWriter(dir + "log.txt", true); + sw.WriteLine(DateTime.Now.ToString() + ": " + message); + sw.Dispose(); + } + #endregion + #region Theming + private void UpdateTheme() + { + // Check if file exists + if (!Directory.Exists(dir)) + { + CreateConfig(dir); + } + if (!File.Exists(dir + "theme.txt")) + { + CreateConfig(dir); + } + + // Read file + StreamReader sr = new StreamReader(dir + "theme.txt"); + theme = new Dictionary(); + while (!sr.EndOfStream) + { + string line = sr.ReadLine(); + string[] split = line.Split(':'); + theme.Add(split[0].Trim(), split[1].Trim()); + } + sr.Dispose(); + + if (!theme.ContainsKey("background") || !theme.ContainsKey("background-alt") || !theme.ContainsKey("foreground") || !theme.ContainsKey("foreground-alt")) + { + AddLog("Theme file is missing key"); + return; + } + + // Apply theme + this.BackColor = ColorTranslator.FromHtml(theme["background"]); + + // Foreground + this.ForeColor = ColorTranslator.FromHtml(theme["foreground"]); + + + // Need to specify this for each groupbox to override the black text + foreach (Control c in Controls) + { + ThemeControl(c); + } + applyTransparency(theme); + + + } + private void ThemeControl(Control c) + { + if (c.GetType() == typeof(GroupBox) || c.GetType() == typeof(Panel)) + { + c.ForeColor = ColorTranslator.FromHtml(theme["foreground"]); + foreach (Control sub in c.Controls) + { + ThemeControl(sub); + } + } + if (c.GetType() == typeof(TextBox) || c.GetType() == typeof(Button) + || c.GetType() == typeof(ComboBox) || c.GetType() == typeof(StatusStrip) || c.GetType() == typeof(ToolStrip) || + c.GetType() == typeof(ListBox)) + { + c.ForeColor = ColorTranslator.FromHtml(theme["foreground-alt"]); + c.BackColor = ColorTranslator.FromHtml(theme["background-alt"]); + } + } + + private void applyTransparency(Dictionary theme) + { + if (theme.ContainsKey("transparent-mode")) + { + switch (theme["transparent-mode"]) + { + case "mica": + var accent = new AccentPolicy { AccentState = AccentState.ACCENT_ENABLE_BLURBEHIND }; + var accentStructSize = Marshal.SizeOf(accent); + var accentPtr = Marshal.AllocHGlobal(accentStructSize); + Marshal.StructureToPtr(accent, accentPtr, false); + var data = new WindowCompositionAttributeData + { + Attribute = WindowCompositionAttribute.WCA_ACCENT_POLICY, + SizeOfData = accentStructSize, + Data = accentPtr + }; + User32.SetWindowCompositionAttribute(Handle, ref data); + Marshal.FreeHGlobal(accentPtr); + break; + case "key": + if (theme.ContainsKey("transparency-key")) + { + switch (theme["transparency-key"]) + { + case "alt": + this.TransparencyKey = ColorTranslator.FromHtml(theme["background-alt"]); + break; + case "main": + this.TransparencyKey = ColorTranslator.FromHtml(theme["background"]); + break; + default: + this.TransparencyKey = ColorTranslator.FromHtml(theme["transparency-key"]); + break; + } + } + else + { + AddLog("No transparency-key found in theme file"); + } + break; + case "percent": + if (theme.ContainsKey("transparency-percent")) + { + Opacity = Convert.ToDouble(theme["transparency-percent"]) / 100; + } + else + { + AddLog("No transparency-percent found in theme file"); + } + break; + } + } + } + + private void CreateConfig(string dir) + { + if (!Directory.Exists(dir)) + { + Directory.CreateDirectory(dir); + } + StreamWriter sw = new StreamWriter(dir + "theme.txt"); + sw.WriteLine("background: #000000"); + sw.WriteLine("foreground: #8e05c2"); + sw.WriteLine("background-alt: #3e065f"); + sw.WriteLine("foreground-alt: #ffffff"); + sw.WriteLine("transparent-mode: off"); + sw.WriteLine("transparency-key: main"); + sw.WriteLine("transparency-percent: 90"); + sw.WriteLine("selected-bg: #000000"); + sw.WriteLine("selected-fg: #ffffff"); + sw.WriteLine("error: #ff0000"); + + sw.Dispose(); + AddLog("Created theme file"); + } + + // Required for mica effect + internal enum AccentState + { + ACCENT_DISABLED = 0, + ACCENT_ENABLE_GRADIENT = 1, + ACCENT_ENABLE_TRANSPARENTGRADIENT = 2, + ACCENT_ENABLE_BLURBEHIND = 3, + ACCENT_INVALID_STATE = 4 + } + + internal enum WindowCompositionAttribute + { + WCA_ACCENT_POLICY = 19 + } + + [StructLayout(LayoutKind.Sequential)] + internal struct AccentPolicy + { + public AccentState AccentState; + public int AccentFlags; + public int GradientColor; + public int AnimationId; + } + + [StructLayout(LayoutKind.Sequential)] + internal struct WindowCompositionAttributeData + { + public WindowCompositionAttribute Attribute; + public IntPtr Data; + public int SizeOfData; + } + + internal static class User32 + { + [DllImport("user32.dll")] + internal static extern int SetWindowCompositionAttribute(IntPtr hwnd, ref WindowCompositionAttributeData data); + } + #endregion + #region API + + + private async void GetDNS() + { + + // Get DNS records + string contentDNS = "{\"method\": \"getnameresource\", \"params\": [\"" + domain + "\"]}"; + string responseDNS = await APIPost("", false, contentDNS); + JObject jObjectDNS = JObject.Parse(responseDNS); + JObject result = (JObject)jObjectDNS["result"]; + JArray records = (JArray)result["records"]; + // For each record + int i = 0; + DNSrecords = new DNS[records.Count()]; + foreach (JObject record in records) + { + Panel DNSPanel = new Panel(); + // Count for scroll width + DNSPanel.Width = panelRecords.Width - SystemInformation.VerticalScrollBarWidth - 2; + DNSPanel.Height = 60; + DNSPanel.BorderStyle = BorderStyle.FixedSingle; + DNSPanel.Top = 62 * i; + + Label DNSType = new Label(); + DNSType.Text = record["type"].ToString(); + DNSType.Location = new System.Drawing.Point(10, 10); + DNSType.AutoSize = true; + DNSType.Font = new Font(DNSType.Font.FontFamily, 11.0f, FontStyle.Bold); + DNSPanel.Controls.Add(DNSType); + + + switch (DNSType.Text) + { + case "NS": + DNSrecords[i] = new DNS(record["type"].ToString(), record["ns"].ToString()); + break; + case "GLUE4": + case "GLUE6": + DNSrecords[i] = new DNS(record["type"].ToString(), record["ns"].ToString(), record["address"].ToString()); + break; + case "DS": + DNSrecords[i] = new DNS(record["type"].ToString(), int.Parse(record["keyTag"].ToString()), + int.Parse(record["algorithm"].ToString()), int.Parse(record["digestType"].ToString()), + record["digest"].ToString()); + break; + case "TXT": + JArray txts = (JArray)record["txt"]; + int j = 0; + string[] TXTs = new string[txts.Count]; + foreach (string txt in txts) + { + TXTs[j] = txt; + j++; + } + DNSrecords[i] = new DNS("TXT", TXTs); + break; + } + i++; + } + + UpdateDNSGroup(); + } + + private string convertHNS(string dollarydoos) + { + decimal hns = Convert.ToDecimal(dollarydoos); + hns = hns / 1000000; + return decimal.Round(hns, 2).ToString(); + } + + + + HttpClient httpClient = new HttpClient(); + /// + /// Post to HSD API + /// + /// Path to post to + /// Whether to use port 12039 + /// Content to post + /// + private async Task APIPost(string path, bool wallet, string content) + { + string key = nodeSettings["Key"]; + string ip = nodeSettings["IP"]; + string port = "1203"; + if (mainForm.network == 1) + { + port = "1303"; + } + if (wallet) port = port + "9"; + else port = port + "7"; + + HttpRequestMessage req = new HttpRequestMessage(HttpMethod.Post, "http://" + ip + ":" + port + "/" + path); + req.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes("x:" + key))); + req.Content = new StringContent(content); + + // Send request + HttpResponseMessage resp = await httpClient.SendAsync(req); + + try + { + resp.EnsureSuccessStatusCode(); + } + catch (Exception ex) + { + AddLog("Post Error: " + ex.Message); + AddLog("Post Error: " + await resp.Content.ReadAsStringAsync()); + return "Error"; + } + + return await resp.Content.ReadAsStringAsync(); + } + /// + /// Get from HSD API + /// + /// Path to get + /// Whether to use port 12039 + /// + private async Task APIGet(string path, bool wallet) + { + string key = nodeSettings["Key"]; + string ip = nodeSettings["IP"]; + + string port = "1203"; + if (mainForm.network == 1) + { + port = "1303"; + } + if (wallet) port = port + "9"; + else port = port + "7"; + + try + { + HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, "http://" + ip + ":" + port + "/" + path); + // Add API key to header + request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes("x:" + key))); + // Send request and log response + HttpResponseMessage response = await httpClient.SendAsync(request); + response.EnsureSuccessStatusCode(); + return await response.Content.ReadAsStringAsync(); + + } + // Log errors to log textbox + catch (Exception ex) + { + AddLog("Get Error: " + ex.Message); + return "Error"; + } + } + #endregion + + private void buttonAddRecord_Click(object sender, EventArgs e) + { + DNS[] updatedDNS = new DNS[DNSrecords.Length + 1]; + DNSrecords.CopyTo(updatedDNS, 0); + if (textBoxMain.Text == "") + { + AddLog("No Content"); + return; + } + switch (comboBoxType.Text) + { + case "NS": + updatedDNS[updatedDNS.Length - 1] = new DNS("NS", textBoxMain.Text.ToLower()); + break; + case "TXT": + string[] TXT = new string[1]; + TXT[0] = textBoxMain.Text; + updatedDNS[updatedDNS.Length - 1] = new DNS("TXT", TXT); + break; + case "DS": + try + { + string[] parts = textBoxMain.Text.Trim().Split(' '); + if (parts.Length != 4) return; + int keyTag = int.Parse(parts[0]); + int algorithm = int.Parse(parts[1]); + int digestType = int.Parse(parts[2]); + string digest = parts[3]; + updatedDNS[updatedDNS.Length - 1] = new DNS("DS", keyTag, algorithm, digestType, digest); + } + catch + { + NotifyForm notifyForm = new NotifyForm("Incorrect format for DS"); + notifyForm.ShowDialog(); + notifyForm.Dispose(); + } + break; + case "GLUE4": + case "GLUE6": + if (textBoxAlt.Text == "") return; + updatedDNS[updatedDNS.Length - 1] = new DNS(comboBoxType.Text, textBoxMain.Text, textBoxAlt.Text); + break; + } + textBoxMain.Text = ""; + textBoxAlt.Text = ""; + DNSrecords = updatedDNS; + UpdateDNSGroup(); + } + + private void buttonCancel_Click(object sender, EventArgs e) + { + this.cancel = true; + this.Close(); + } + + private void buttonSend_Click(object sender, EventArgs e) + { + this.cancel = false; + this.Close(); + } + + private void comboBoxType_SelectedIndexChanged(object sender, EventArgs e) + { + switch (comboBoxType.Text) + { + case "NS": + textBoxAlt.Hide(); + labelRecordAlt.Hide(); + labelRecordMain.Text = "NS"; + textBoxMain.PlaceholderText = "ns1.woodburn."; + break; + case "DS": + textBoxAlt.Hide(); + labelRecordAlt.Hide(); + labelRecordMain.Text = "DS"; + textBoxMain.PlaceholderText = "57355 8 2 95a57c3bab7849dbcddf7c72ada71a88146b141110318ca5be672057e865c3e2"; + break; + case "TXT": + textBoxAlt.Hide(); + labelRecordAlt.Hide(); + labelRecordMain.Text = "TXT"; + break; + case "GLUE4": + textBoxAlt.Show(); + labelRecordAlt.Show(); + labelRecordMain.Text = "NS"; + labelRecordAlt.Text = "Address"; + textBoxMain.PlaceholderText = "ns1.woodburn."; + textBoxAlt.PlaceholderText = "127.0.0.1"; + break; + case "GLUE6": + textBoxAlt.Show(); + labelRecordAlt.Show(); + labelRecordMain.Text = "NS"; + labelRecordAlt.Text = "Address"; + textBoxMain.PlaceholderText = "ns1.woodburn."; + textBoxAlt.PlaceholderText = "::1"; + break; + } + } + + private void textBoxMain_KeyDown(object sender, KeyEventArgs e) + { + if (e.KeyValue == 13) + { + e.SuppressKeyPress = true; + buttonAddRecord.PerformClick(); + + } + } + } +} diff --git a/FireWallet/DNSForm.resx b/FireWallet/DNSForm.resx new file mode 100644 index 0000000..3f56770 --- /dev/null +++ b/FireWallet/DNSForm.resx @@ -0,0 +1,295 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + 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 + AElFTkSuQmCC + + + \ No newline at end of file diff --git a/FireWallet/DomainForm.Designer.cs b/FireWallet/DomainForm.Designer.cs index 29b49cc..8f395e1 100644 --- a/FireWallet/DomainForm.Designer.cs +++ b/FireWallet/DomainForm.Designer.cs @@ -28,6 +28,7 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DomainForm)); labelTitle = new Label(); groupBoxStatus = new GroupBox(); labelStatusTimeToNext = new Label(); @@ -66,9 +67,9 @@ // labelTitle.AutoSize = true; labelTitle.Font = new Font("Segoe UI", 20F, FontStyle.Regular, GraphicsUnit.Point); - labelTitle.Location = new System.Drawing.Point(12, 9); + labelTitle.Location = new Point(12, 9); labelTitle.Name = "labelTitle"; - labelTitle.Size = new System.Drawing.Size(126, 37); + labelTitle.Size = new Size(126, 37); labelTitle.TabIndex = 0; labelTitle.Text = "labelTitle"; // @@ -87,9 +88,9 @@ groupBoxStatus.Controls.Add(labelStatusMain); groupBoxStatus.Controls.Add(labelStatus1); groupBoxStatus.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - groupBoxStatus.Location = new System.Drawing.Point(12, 68); + groupBoxStatus.Location = new Point(12, 68); groupBoxStatus.Name = "groupBoxStatus"; - groupBoxStatus.Size = new System.Drawing.Size(378, 173); + groupBoxStatus.Size = new Size(378, 173); groupBoxStatus.TabIndex = 1; groupBoxStatus.TabStop = false; groupBoxStatus.Text = "Info"; @@ -97,117 +98,117 @@ // labelStatusTimeToNext // labelStatusTimeToNext.AutoSize = true; - labelStatusTimeToNext.Location = new System.Drawing.Point(112, 130); + labelStatusTimeToNext.Location = new Point(112, 130); labelStatusTimeToNext.Name = "labelStatusTimeToNext"; - labelStatusTimeToNext.Size = new System.Drawing.Size(67, 21); + labelStatusTimeToNext.Size = new Size(67, 21); labelStatusTimeToNext.TabIndex = 11; labelStatusTimeToNext.Text = "0 Blocks"; // // labelStatusNextState // labelStatusNextState.AutoSize = true; - labelStatusNextState.Location = new System.Drawing.Point(27, 130); + labelStatusNextState.Location = new Point(27, 130); labelStatusNextState.Name = "labelStatusNextState"; - labelStatusNextState.Size = new System.Drawing.Size(79, 21); + labelStatusNextState.Size = new Size(79, 21); labelStatusNextState.TabIndex = 10; labelStatusNextState.Text = "Expires in:"; // // labelStatusTransferring // labelStatusTransferring.AutoSize = true; - labelStatusTransferring.Location = new System.Drawing.Point(112, 109); + labelStatusTransferring.Location = new Point(112, 109); labelStatusTransferring.Name = "labelStatusTransferring"; - labelStatusTransferring.Size = new System.Drawing.Size(31, 21); + labelStatusTransferring.Size = new Size(31, 21); labelStatusTransferring.TabIndex = 9; labelStatusTransferring.Text = "No"; // // labelStatus5 // labelStatus5.AutoSize = true; - labelStatus5.Location = new System.Drawing.Point(9, 109); + labelStatus5.Location = new Point(9, 109); labelStatus5.Name = "labelStatus5"; - labelStatus5.Size = new System.Drawing.Size(97, 21); + labelStatus5.Size = new Size(97, 21); labelStatus5.TabIndex = 8; labelStatus5.Text = "Transferring:"; // // labelStatusPaid // labelStatusPaid.AutoSize = true; - labelStatusPaid.Location = new System.Drawing.Point(112, 88); + labelStatusPaid.Location = new Point(112, 88); labelStatusPaid.Name = "labelStatusPaid"; - labelStatusPaid.Size = new System.Drawing.Size(95, 21); + labelStatusPaid.Size = new Size(95, 21); labelStatusPaid.TabIndex = 7; labelStatusPaid.Text = "Not Opened"; // // labelStatus4 // labelStatus4.AutoSize = true; - labelStatus4.Location = new System.Drawing.Point(26, 88); + labelStatus4.Location = new Point(26, 88); labelStatus4.Name = "labelStatus4"; - labelStatus4.Size = new System.Drawing.Size(80, 21); + labelStatus4.Size = new Size(80, 21); labelStatus4.TabIndex = 6; labelStatus4.Text = "Price Paid:"; // // labelStatusHighest // labelStatusHighest.AutoSize = true; - labelStatusHighest.Location = new System.Drawing.Point(112, 67); + labelStatusHighest.Location = new Point(112, 67); labelStatusHighest.Name = "labelStatusHighest"; - labelStatusHighest.Size = new System.Drawing.Size(95, 21); + labelStatusHighest.Size = new Size(95, 21); labelStatusHighest.TabIndex = 5; labelStatusHighest.Text = "Not Opened"; // // labelStatus3 // labelStatus3.AutoSize = true; - labelStatus3.Location = new System.Drawing.Point(14, 67); + labelStatus3.Location = new Point(14, 67); labelStatus3.Name = "labelStatus3"; - labelStatus3.Size = new System.Drawing.Size(92, 21); + labelStatus3.Size = new Size(92, 21); labelStatus3.TabIndex = 4; labelStatus3.Text = "Highest Bid:"; // // labelStatusReserved // labelStatusReserved.AutoSize = true; - labelStatusReserved.Location = new System.Drawing.Point(112, 25); + labelStatusReserved.Location = new Point(112, 25); labelStatusReserved.Name = "labelStatusReserved"; - labelStatusReserved.Size = new System.Drawing.Size(40, 21); + labelStatusReserved.Size = new Size(40, 21); labelStatusReserved.TabIndex = 3; labelStatusReserved.Text = "True"; // // labelStatus2 // labelStatus2.AutoSize = true; - labelStatus2.Location = new System.Drawing.Point(29, 25); + labelStatus2.Location = new Point(29, 25); labelStatus2.Name = "labelStatus2"; - labelStatus2.Size = new System.Drawing.Size(77, 21); + labelStatus2.Size = new Size(77, 21); labelStatus2.TabIndex = 2; labelStatus2.Text = "Reserved:"; // // labelStatusMain // labelStatusMain.AutoSize = true; - labelStatusMain.Location = new System.Drawing.Point(112, 46); + labelStatusMain.Location = new Point(112, 46); labelStatusMain.Name = "labelStatusMain"; - labelStatusMain.Size = new System.Drawing.Size(57, 21); + labelStatusMain.Size = new Size(57, 21); labelStatusMain.TabIndex = 1; labelStatusMain.Text = "Closed"; // // labelStatus1 // labelStatus1.AutoSize = true; - labelStatus1.Location = new System.Drawing.Point(51, 46); + labelStatus1.Location = new Point(51, 46); labelStatus1.Name = "labelStatus1"; - labelStatus1.Size = new System.Drawing.Size(55, 21); + labelStatus1.Size = new Size(55, 21); labelStatus1.TabIndex = 0; labelStatus1.Text = "Status:"; // // groupBoxDNS // groupBoxDNS.Controls.Add(panelDNS); - groupBoxDNS.Location = new System.Drawing.Point(12, 247); + groupBoxDNS.Location = new Point(12, 247); groupBoxDNS.Name = "groupBoxDNS"; - groupBoxDNS.Size = new System.Drawing.Size(962, 313); + groupBoxDNS.Size = new Size(962, 313); groupBoxDNS.TabIndex = 12; groupBoxDNS.TabStop = false; groupBoxDNS.Text = "DNS"; @@ -215,18 +216,18 @@ // panelDNS // panelDNS.Dock = DockStyle.Fill; - panelDNS.Location = new System.Drawing.Point(3, 19); + panelDNS.Location = new Point(3, 19); panelDNS.Name = "panelDNS"; - panelDNS.Size = new System.Drawing.Size(956, 291); + panelDNS.Size = new Size(956, 291); panelDNS.TabIndex = 0; // // groupBoxBids // groupBoxBids.Controls.Add(panelBids); groupBoxBids.Font = new Font("Segoe UI", 9F, FontStyle.Regular, GraphicsUnit.Point); - groupBoxBids.Location = new System.Drawing.Point(12, 247); + groupBoxBids.Location = new Point(12, 247); groupBoxBids.Name = "groupBoxBids"; - groupBoxBids.Size = new System.Drawing.Size(962, 313); + groupBoxBids.Size = new Size(962, 313); groupBoxBids.TabIndex = 13; groupBoxBids.TabStop = false; groupBoxBids.Text = "Bids"; @@ -235,9 +236,9 @@ // panelBids // panelBids.Dock = DockStyle.Fill; - panelBids.Location = new System.Drawing.Point(3, 19); + panelBids.Location = new Point(3, 19); panelBids.Name = "panelBids"; - panelBids.Size = new System.Drawing.Size(956, 291); + panelBids.Size = new Size(956, 291); panelBids.TabIndex = 0; // // groupBoxAction @@ -251,9 +252,9 @@ groupBoxAction.Controls.Add(buttonActionAlt); groupBoxAction.Controls.Add(buttonActionMain); groupBoxAction.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - groupBoxAction.Location = new System.Drawing.Point(396, 68); + groupBoxAction.Location = new Point(396, 68); groupBoxAction.Name = "groupBoxAction"; - groupBoxAction.Size = new System.Drawing.Size(575, 173); + groupBoxAction.Size = new Size(575, 173); groupBoxAction.TabIndex = 14; groupBoxAction.TabStop = false; groupBoxAction.Text = "Bid"; @@ -262,9 +263,9 @@ // buttonTransfer // buttonTransfer.FlatStyle = FlatStyle.Flat; - buttonTransfer.Location = new System.Drawing.Point(253, 22); + buttonTransfer.Location = new Point(253, 22); buttonTransfer.Name = "buttonTransfer"; - buttonTransfer.Size = new System.Drawing.Size(155, 37); + buttonTransfer.Size = new Size(155, 37); buttonTransfer.TabIndex = 6; buttonTransfer.Text = "Transfer"; buttonTransfer.UseVisualStyleBackColor = true; @@ -274,9 +275,9 @@ // buttonRenew // buttonRenew.FlatStyle = FlatStyle.Flat; - buttonRenew.Location = new System.Drawing.Point(414, 22); + buttonRenew.Location = new Point(414, 22); buttonRenew.Name = "buttonRenew"; - buttonRenew.Size = new System.Drawing.Size(155, 37); + buttonRenew.Size = new Size(155, 37); buttonRenew.TabIndex = 6; buttonRenew.Text = "Renew"; buttonRenew.UseVisualStyleBackColor = true; @@ -285,18 +286,18 @@ // // textBoxBlind // - textBoxBlind.Location = new System.Drawing.Point(60, 64); + textBoxBlind.Location = new Point(60, 64); textBoxBlind.Name = "textBoxBlind"; - textBoxBlind.Size = new System.Drawing.Size(180, 29); + textBoxBlind.Size = new Size(180, 29); textBoxBlind.TabIndex = 5; textBoxBlind.Visible = false; textBoxBlind.TextChanged += BidBlind_TextChanged; // // textBoxBid // - textBoxBid.Location = new System.Drawing.Point(60, 22); + textBoxBid.Location = new Point(60, 22); textBoxBid.Name = "textBoxBid"; - textBoxBid.Size = new System.Drawing.Size(180, 29); + textBoxBid.Size = new Size(180, 29); textBoxBid.TabIndex = 4; textBoxBid.Visible = false; textBoxBid.TextChanged += BidBlind_TextChanged; @@ -304,9 +305,9 @@ // labelBlind // labelBlind.AutoSize = true; - labelBlind.Location = new System.Drawing.Point(6, 67); + labelBlind.Location = new Point(6, 67); labelBlind.Name = "labelBlind"; - labelBlind.Size = new System.Drawing.Size(48, 21); + labelBlind.Size = new Size(48, 21); labelBlind.TabIndex = 3; labelBlind.Text = "Blind:"; labelBlind.Visible = false; @@ -314,9 +315,9 @@ // labelBid // labelBid.AutoSize = true; - labelBid.Location = new System.Drawing.Point(19, 25); + labelBid.Location = new Point(19, 25); labelBid.Name = "labelBid"; - labelBid.Size = new System.Drawing.Size(35, 21); + labelBid.Size = new Size(35, 21); labelBid.TabIndex = 2; labelBid.Text = "Bid:"; labelBid.Visible = false; @@ -324,9 +325,9 @@ // buttonActionAlt // buttonActionAlt.FlatStyle = FlatStyle.Flat; - buttonActionAlt.Location = new System.Drawing.Point(253, 130); + buttonActionAlt.Location = new Point(253, 130); buttonActionAlt.Name = "buttonActionAlt"; - buttonActionAlt.Size = new System.Drawing.Size(155, 37); + buttonActionAlt.Size = new Size(155, 37); buttonActionAlt.TabIndex = 1; buttonActionAlt.Text = "Bid in Batch"; buttonActionAlt.UseVisualStyleBackColor = true; @@ -335,9 +336,9 @@ // buttonActionMain // buttonActionMain.FlatStyle = FlatStyle.Flat; - buttonActionMain.Location = new System.Drawing.Point(414, 130); + buttonActionMain.Location = new Point(414, 130); buttonActionMain.Name = "buttonActionMain"; - buttonActionMain.Size = new System.Drawing.Size(155, 37); + buttonActionMain.Size = new Size(155, 37); buttonActionMain.TabIndex = 0; buttonActionMain.Text = "Send Bid"; buttonActionMain.UseVisualStyleBackColor = true; @@ -347,9 +348,9 @@ // buttonExplorer.FlatStyle = FlatStyle.Flat; buttonExplorer.Font = new Font("Segoe UI", 12F, FontStyle.Regular, GraphicsUnit.Point); - buttonExplorer.Location = new System.Drawing.Point(876, 12); + buttonExplorer.Location = new Point(876, 12); buttonExplorer.Name = "buttonExplorer"; - buttonExplorer.Size = new System.Drawing.Size(98, 34); + buttonExplorer.Size = new Size(98, 34); buttonExplorer.TabIndex = 15; buttonExplorer.TabStop = false; buttonExplorer.Text = "Explorer"; @@ -358,9 +359,9 @@ // // DomainForm // - AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); + AutoScaleDimensions = new SizeF(7F, 15F); AutoScaleMode = AutoScaleMode.Font; - ClientSize = new System.Drawing.Size(986, 572); + ClientSize = new Size(986, 572); Controls.Add(buttonExplorer); Controls.Add(groupBoxAction); Controls.Add(groupBoxBids); @@ -368,6 +369,7 @@ Controls.Add(groupBoxStatus); Controls.Add(labelTitle); FormBorderStyle = FormBorderStyle.Fixed3D; + Icon = (Icon)resources.GetObject("$this.Icon"); MaximizeBox = false; Name = "DomainForm"; Text = "DomainForm"; diff --git a/FireWallet/DomainForm.cs b/FireWallet/DomainForm.cs index 924e9fc..8d2332e 100644 --- a/FireWallet/DomainForm.cs +++ b/FireWallet/DomainForm.cs @@ -1,6 +1,7 @@ using System.Diagnostics; using System.Runtime.InteropServices; using System.Text.RegularExpressions; +using Microsoft.VisualBasic; using Newtonsoft.Json.Linq; namespace FireWallet @@ -20,9 +21,9 @@ namespace FireWallet int TransferEnd; - public MainForm mainForm { get; set; } + private MainForm mainForm; - public DomainForm(string domain, string explorerTX, string explorerName) + public DomainForm(MainForm mainForm, string domain, string explorerTX, string explorerName) { InitializeComponent(); this.Text = domain + "/ | FireWallet"; @@ -30,6 +31,7 @@ namespace FireWallet this.domain = domain; this.explorerTX = explorerTX; this.explorerName = explorerName; + this.mainForm = mainForm; } #region Theming @@ -624,7 +626,7 @@ namespace FireWallet { foreach (string d in mainForm.Domains) { - if (d==domain) + if (d == domain) { return true; } @@ -830,7 +832,7 @@ namespace FireWallet else if (state == "CLOSED") { if (labelStatusTransferring.Text == "Yes") - { + { string content = "{\"method\": \"sendfinalize\", \"params\": [\"" + domain + "\"]}"; if (height < TransferEnd) { @@ -865,6 +867,50 @@ namespace FireWallet } } + else + { + DNSForm DNSEdit = new DNSForm(mainForm, domain); + DNSEdit.ShowDialog(); + + if (!DNSEdit.cancel) + { + string records = string.Join(", ", DNSEdit.DNSrecords.Select(record => record.ToString())); + + string content = "{\"method\": \"sendupdate\", \"params\": [\"" + domain + "\", {\"records\": [" + records + "]}]}"; + AddLog(content); + string response = await APIPost("", true, content); + + if (response == "Error") + { + NotifyForm notifyForm = new NotifyForm("Error sending update"); + notifyForm.ShowDialog(); + notifyForm.Dispose(); + } + else + { + JObject jObject = JObject.Parse(response); + if (jObject["result"].ToString() == "") + { + JObject error = (JObject)jObject["error"]; + string message = (string)error["message"]; + NotifyForm notifyForm2 = new NotifyForm("Error sending update: \n" + message); + notifyForm2.ShowDialog(); + notifyForm2.Dispose(); + return; + } + JObject result = (JObject)jObject["result"]; + string hash = (string)result["hash"]; + + NotifyForm notifyForm = new NotifyForm("Update sent: " + hash, "Explorer", explorerTX + hash); + notifyForm.ShowDialog(); + notifyForm.Dispose(); + + } + + } + + DNSEdit.Dispose(); + } } } @@ -922,6 +968,16 @@ namespace FireWallet this.Close(); } } + else + { + DNSForm dnsEdit = new DNSForm(mainForm, domain); + dnsEdit.ShowDialog(); + if (!dnsEdit.cancel) + { + mainForm.AddBatch(domain, "UPDATE", dnsEdit.DNSrecords); + } + dnsEdit.Dispose(); + } } else { diff --git a/FireWallet/DomainForm.resx b/FireWallet/DomainForm.resx index a395bff..3f56770 100644 --- a/FireWallet/DomainForm.resx +++ b/FireWallet/DomainForm.resx @@ -117,4 +117,179 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + 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 + AElFTkSuQmCC + + \ No newline at end of file diff --git a/FireWallet/FireWallet.csproj b/FireWallet/FireWallet.csproj index 8f7a687..ec2187a 100644 --- a/FireWallet/FireWallet.csproj +++ b/FireWallet/FireWallet.csproj @@ -6,11 +6,28 @@ enable true enable + Firewallet.ico + FireWallet + https://l.woodburn.au + HSDBatcher.png + https://github.com/Nathanwoodburn/FireWallet + git - + + + + + + True + \ + + + + + diff --git a/FireWallet/Firewallet.ico b/FireWallet/Firewallet.ico new file mode 100644 index 0000000000000000000000000000000000000000..0f6471f278992aeafab25bfe432d57f0d3caf3ca GIT binary patch literal 10149 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 literal 0 HcmV?d00001 diff --git a/FireWallet/HSDBatcher.ico b/FireWallet/HSDBatcher.ico new file mode 100644 index 0000000000000000000000000000000000000000..906e2061ac45e941367cfaf677cf21a264cec05a GIT binary patch literal 123504 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 literal 0 HcmV?d00001 diff --git a/FireWallet/MainForm.Designer.cs b/FireWallet/MainForm.Designer.cs index d2f4e3b..9fe3900 100644 --- a/FireWallet/MainForm.Designer.cs +++ b/FireWallet/MainForm.Designer.cs @@ -34,6 +34,7 @@ namespace FireWallet private void InitializeComponent() { components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm)); statusStripmain = new StatusStrip(); toolStripStatusLabelNetwork = new ToolStripStatusLabel(); toolStripStatusLabelstatus = new ToolStripStatusLabel(); @@ -682,6 +683,7 @@ namespace FireWallet Controls.Add(panelNav); Controls.Add(panelaccount); Controls.Add(statusStripmain); + Icon = (Icon)resources.GetObject("$this.Icon"); Name = "MainForm"; Text = "FireWallet"; FormClosing += MainForm_Closing; diff --git a/FireWallet/MainForm.cs b/FireWallet/MainForm.cs index d78ace3..b568886 100644 --- a/FireWallet/MainForm.cs +++ b/FireWallet/MainForm.cs @@ -3,8 +3,9 @@ using System.Runtime.InteropServices; using Newtonsoft.Json.Linq; using Point = System.Drawing.Point; using Size = System.Drawing.Size; -using IronBarCode; +using QRCoder; using System.Text.RegularExpressions; +using System.Security.Cryptography; namespace FireWallet { @@ -848,8 +849,10 @@ namespace FireWallet textBoxReceiveAddress.Width = size.Width + 10; textBoxReceiveAddress.Left = (panelRecieve.Width - textBoxReceiveAddress.Width) / 2; - GeneratedBarcode Qrcode = QRCodeWriter.CreateQrCode(textBoxReceiveAddress.Text); - pictureBoxReceiveQR.Image = Qrcode.Image; + QRCodeGenerator qrcode = new QRCodeGenerator(); + QRCodeData qrData = qrcode.CreateQrCode(textBoxReceiveAddress.Text, QRCodeGenerator.ECCLevel.Q); + QRCode qrCode = new QRCode(qrData); + pictureBoxReceiveQR.Image = qrCode.GetGraphic(20, theme["foreground"], theme["background"]); pictureBoxReceiveQR.SizeMode = PictureBoxSizeMode.Zoom; pictureBoxReceiveQR.Width = panelRecieve.Width / 3; pictureBoxReceiveQR.Left = (panelRecieve.Width - pictureBoxReceiveQR.Width) / 2; @@ -1055,7 +1058,7 @@ namespace FireWallet // On Click open domain domainTMP.Click += new EventHandler((sender, e) => { - DomainForm domainForm = new DomainForm(name["name"].ToString(), userSettings["explorer-tx"], userSettings["explorer-domain"]); + DomainForm domainForm = new DomainForm(this, name["name"].ToString(), userSettings["explorer-tx"], userSettings["explorer-domain"]); domainForm.Show(); }); @@ -1068,10 +1071,11 @@ namespace FireWallet JObject stats = JObject.Parse(name["stats"].ToString()); Label expiry = new Label(); - expiry.Text = "Expires: " + stats["blocksUntilExpire"].ToString() + " blocks"; + expiry.Text = "Expires: " + stats["daysUntilExpire"].ToString() + " days"; expiry.Top = 5; - expiry.Left = domainTMP.Width - expiry.Width - 5; expiry.AutoSize = true; + expiry.Left = domainTMP.Width - expiry.Width - 100; + domainTMP.Controls.Add(domainName); domainTMP.Controls.Add(expiry); @@ -1087,8 +1091,7 @@ namespace FireWallet { textBoxDomainSearch.Text = textBoxDomainSearch.Text.Trim().ToLower(); e.SuppressKeyPress = true; - DomainForm domainForm = new DomainForm(textBoxDomainSearch.Text, userSettings["explorer-tx"], userSettings["explorer-domain"]); - domainForm.mainForm = this; + DomainForm domainForm = new DomainForm(this, textBoxDomainSearch.Text, userSettings["explorer-tx"], userSettings["explorer-domain"]); domainForm.Show(); @@ -1122,6 +1125,16 @@ namespace FireWallet batchForm.AddBatch(domain, operation, bid, lockup); } + public void AddBatch(string domain, string operation, DNS[] updateRecords) + { + if (!batchMode) + { + batchForm = new BatchForm(this); + batchForm.Show(); + batchMode = true; + } + batchForm.AddBatch(domain, operation, updateRecords); + } public void FinishBatch() { batchMode = false; diff --git a/FireWallet/MainForm.resx b/FireWallet/MainForm.resx index b9647bd..f4122f6 100644 --- a/FireWallet/MainForm.resx +++ b/FireWallet/MainForm.resx @@ -123,4 +123,712 @@ 269, 17 + + + + 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 + Ng+/rHaXDlcTERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERER + ERERERERERERERERERERERERERERERERERERERERERERERERERERkbz1/wNrGKFswMgwBwAAAABJRU5E + rkJggg== + + \ No newline at end of file diff --git a/FireWallet/NodeForm.Designer.cs b/FireWallet/NodeForm.Designer.cs index 6c0fb9d..88902d2 100644 --- a/FireWallet/NodeForm.Designer.cs +++ b/FireWallet/NodeForm.Designer.cs @@ -33,6 +33,7 @@ namespace FireWallet /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(NodeForm)); labelWelcome = new Label(); groupBoxNode = new GroupBox(); labelNodeStatus = new Label(); @@ -168,6 +169,7 @@ namespace FireWallet Controls.Add(groupBoxNode); Controls.Add(labelWelcome); FormBorderStyle = FormBorderStyle.Fixed3D; + Icon = (Icon)resources.GetObject("$this.Icon"); Name = "NodeForm"; Text = "Setup"; Load += CreateForm_Load; diff --git a/FireWallet/NodeForm.resx b/FireWallet/NodeForm.resx index a395bff..3f56770 100644 --- a/FireWallet/NodeForm.resx +++ b/FireWallet/NodeForm.resx @@ -117,4 +117,179 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + 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 + AElFTkSuQmCC + + \ No newline at end of file diff --git a/FireWallet/NotifyForm.Designer.cs b/FireWallet/NotifyForm.Designer.cs index 4cbe485..3aa1395 100644 --- a/FireWallet/NotifyForm.Designer.cs +++ b/FireWallet/NotifyForm.Designer.cs @@ -32,6 +32,7 @@ namespace FireWallet /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(NotifyForm)); labelmessage = new Label(); buttonOK = new Button(); buttonALT = new Button(); @@ -80,6 +81,7 @@ namespace FireWallet Controls.Add(buttonOK); Controls.Add(labelmessage); FormBorderStyle = FormBorderStyle.FixedDialog; + Icon = (Icon)resources.GetObject("$this.Icon"); Name = "NotifyForm"; Text = "FireWallet"; Load += NotifyForm_Load; diff --git a/FireWallet/NotifyForm.resx b/FireWallet/NotifyForm.resx index a395bff..3f56770 100644 --- a/FireWallet/NotifyForm.resx +++ b/FireWallet/NotifyForm.resx @@ -117,4 +117,179 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + 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 + AElFTkSuQmCC + + \ No newline at end of file