UI: Master-Key-Button (Settings, via Designer) + UI-Designer-WIP + Steuer-PDF

- Settings: neuer Toolbar-Button 'Master-Key erzeugen' (Tab General Settings, via Designer).
  Erzeugt zufaelligen 32-Byte-AES-Key -> master.key (gitignored), nur aktiv wenn KEIN Key
  existiert (Env-Var oder Datei), Lockout-Schutz + Backup-Warnung, danach deaktiviert.
- Einbezogen: laufende Designer-Umstrukturierung (SettingsView/LauncherForm: Button-Bilder
  aus Properties.Resources statt eingebettet; dgv_accountlist im Launcher; DashboardView.resx).
- docs/steuer: US-CPA-Fragebogen als PDF.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Richard
2026-07-15 09:27:34 +02:00
co-authored by Claude Opus 4.8
parent 36c89a6acf
commit 4df07bd3d2
6 changed files with 427 additions and 147 deletions
+42 -5
View File
@@ -32,10 +32,14 @@ namespace PolyTraderSharp.Ui
lbl_trading = new ToolStripStatusLabel();
lbl_modules = new ToolStripStatusLabel();
lbl_ratelimit = new ToolStripStatusLabel();
dgv_accountlist = new DataGridView();
btn_accounting = new ToolStripButton();
toolStripSeparator1 = new ToolStripSeparator();
menuStrip.SuspendLayout();
toolstrip_windows.SuspendLayout();
toolstrip_quickbar.SuspendLayout();
statusStrip_info.SuspendLayout();
((System.ComponentModel.ISupportInitialize)dgv_accountlist).BeginInit();
SuspendLayout();
//
// menuStrip
@@ -54,18 +58,18 @@ namespace PolyTraderSharp.Ui
miDatei.Name = "miDatei";
miDatei.Size = new Size(69, 29);
miDatei.Text = "Datei";
//
//
// miBeenden
//
miBeenden.Name = "miBeenden";
miBeenden.Size = new Size(275, 34);
miBeenden.Size = new Size(182, 34);
miBeenden.Text = "Beenden";
//
// toolstrip_windows
//
toolstrip_windows.AutoSize = false;
toolstrip_windows.ImageScalingSize = new Size(64, 64);
toolstrip_windows.Items.AddRange(new ToolStripItem[] { btn_dashboard, btn_settings, btn_terminal, btn_jobs });
toolstrip_windows.Items.AddRange(new ToolStripItem[] { btn_dashboard, btn_settings, btn_terminal, btn_jobs, btn_accounting, toolStripSeparator1 });
toolstrip_windows.Location = new Point(0, 35);
toolstrip_windows.Name = "toolstrip_windows";
toolstrip_windows.Size = new Size(2599, 70);
@@ -140,7 +144,7 @@ namespace PolyTraderSharp.Ui
statusStrip_info.BackColor = Color.Gainsboro;
statusStrip_info.ImageScalingSize = new Size(24, 24);
statusStrip_info.Items.AddRange(new ToolStripItem[] { lbl_trading, lbl_modules, lbl_ratelimit });
statusStrip_info.Location = new Point(0, 140);
statusStrip_info.Location = new Point(0, 637);
statusStrip_info.Name = "statusStrip_info";
statusStrip_info.Size = new Size(2599, 32);
statusStrip_info.TabIndex = 5;
@@ -164,11 +168,40 @@ namespace PolyTraderSharp.Ui
lbl_ratelimit.Size = new Size(66, 25);
lbl_ratelimit.Text = "API: —";
//
// dgv_accountlist
//
dgv_accountlist.AllowUserToAddRows = false;
dgv_accountlist.AllowUserToDeleteRows = false;
dgv_accountlist.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
dgv_accountlist.Dock = DockStyle.Fill;
dgv_accountlist.Location = new Point(0, 139);
dgv_accountlist.Name = "dgv_accountlist";
dgv_accountlist.ReadOnly = true;
dgv_accountlist.RowHeadersWidth = 62;
dgv_accountlist.Size = new Size(2599, 498);
dgv_accountlist.TabIndex = 6;
//
// btn_accounting
//
btn_accounting.Image = Properties.Resources.coins_in_hand;
btn_accounting.ImageScaling = ToolStripItemImageScaling.None;
btn_accounting.ImageTransparentColor = Color.Magenta;
btn_accounting.Name = "btn_accounting";
btn_accounting.Size = new Size(106, 65);
btn_accounting.Text = "Accounting";
btn_accounting.TextImageRelation = TextImageRelation.ImageAboveText;
//
// toolStripSeparator1
//
toolStripSeparator1.Name = "toolStripSeparator1";
toolStripSeparator1.Size = new Size(6, 70);
//
// LauncherForm
//
AutoScaleDimensions = new SizeF(10F, 25F);
AutoScaleMode = AutoScaleMode.Font;
ClientSize = new Size(2599, 172);
ClientSize = new Size(2599, 669);
Controls.Add(dgv_accountlist);
Controls.Add(statusStrip_info);
Controls.Add(toolstrip_quickbar);
Controls.Add(toolstrip_windows);
@@ -187,6 +220,7 @@ namespace PolyTraderSharp.Ui
toolstrip_quickbar.PerformLayout();
statusStrip_info.ResumeLayout(false);
statusStrip_info.PerformLayout();
((System.ComponentModel.ISupportInitialize)dgv_accountlist).EndInit();
ResumeLayout(false);
PerformLayout();
}
@@ -208,5 +242,8 @@ namespace PolyTraderSharp.Ui
private ToolStripStatusLabel lbl_trading;
private ToolStripStatusLabel lbl_modules;
private ToolStripStatusLabel lbl_ratelimit;
private ToolStripButton btn_accounting;
private ToolStripSeparator toolStripSeparator1;
private DataGridView dgv_accountlist;
}
}