Slice 4 - Launcher-Live-Ueberblick (LauncherWidgetsPanel, isoliertes UserControl, rechts angedockt, 30s-Refresh; minimaler Eingriff ins von Richard bearbeitete Launcher-Designer): - Modul-PnL/Winrate-Kacheln (je Modul + Gesamt: Heute/7T/30T, gruen/rot) via TradeAnalytics. - Supervisor-KI-Kurzfassung (letzter sup_report). - Warnungen & Fehler (heutige JSONL-Logs, Error/Warning). - Auffaellige Trades (24h, nach |PnL| sortiert). Regressionen aus VS-Re-Serialisierung behoben (VS liess hand-erstellte DataGridView-Spalten fallen -> col* null -> NRE beim Oeffnen): - DashboardView (dgvTrades): Spalten-Instanziierung + AutoGenerateColumns=false + Columns.AddRange + Spalten-Konfig wiederhergestellt. - JobsView (dgvJobs): dito (nur Button-Spalte hatte ueberlebt). - Smoke-UI dauerhaft um JobsView/TerminalView/SettingsView erweitert -> faengt diese Regressionsklasse kuenftig ab. Enthaelt ausserdem Richards zwischenzeitliche UI-Arbeit (Launcher-Icons cross_reference/emotion_batman/ file_start_workflow, Designer-Re-Serialisierungen, .ico-Sammlung, Modul-Form-.resx). Persoenliche Notizdatei bewusst NICHT committet. Build 0 Fehler, 396 Tests gruen, --smoke-ui alle 9 Views/Forms gruen. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
245 lines
12 KiB
C#
245 lines
12 KiB
C#
namespace PolyTraderSharp.Ui
|
|
{
|
|
partial class LauncherWidgetsPanel
|
|
{
|
|
private System.ComponentModel.IContainer components = null;
|
|
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
if (disposing && (components != null))
|
|
{
|
|
components.Dispose();
|
|
}
|
|
base.Dispose(disposing);
|
|
}
|
|
|
|
#region Vom Komponenten-Designer generierter Code
|
|
|
|
private void InitializeComponent()
|
|
{
|
|
this.tableLayout = new System.Windows.Forms.TableLayoutPanel();
|
|
this.flpKpis = new System.Windows.Forms.FlowLayoutPanel();
|
|
this.grpSupervisor = new System.Windows.Forms.GroupBox();
|
|
this.rtbSupervisor = new System.Windows.Forms.RichTextBox();
|
|
this.grpAlerts = new System.Windows.Forms.GroupBox();
|
|
this.dgvAlerts = new System.Windows.Forms.DataGridView();
|
|
this.colAlertTime = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.colAlertLevel = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.colAlertMsg = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.grpNotable = new System.Windows.Forms.GroupBox();
|
|
this.dgvNotable = new System.Windows.Forms.DataGridView();
|
|
this.colNotModule = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.colNotMarket = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.colNotPnl = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.colNotPnlPct = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.tableLayout.SuspendLayout();
|
|
this.grpSupervisor.SuspendLayout();
|
|
this.grpAlerts.SuspendLayout();
|
|
((System.ComponentModel.ISupportInitialize)(this.dgvAlerts)).BeginInit();
|
|
this.grpNotable.SuspendLayout();
|
|
((System.ComponentModel.ISupportInitialize)(this.dgvNotable)).BeginInit();
|
|
this.SuspendLayout();
|
|
//
|
|
// tableLayout
|
|
//
|
|
this.tableLayout.ColumnCount = 1;
|
|
this.tableLayout.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
|
this.tableLayout.Controls.Add(this.flpKpis, 0, 0);
|
|
this.tableLayout.Controls.Add(this.grpSupervisor, 0, 1);
|
|
this.tableLayout.Controls.Add(this.grpAlerts, 0, 2);
|
|
this.tableLayout.Controls.Add(this.grpNotable, 0, 3);
|
|
this.tableLayout.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.tableLayout.Location = new System.Drawing.Point(0, 0);
|
|
this.tableLayout.Name = "tableLayout";
|
|
this.tableLayout.RowCount = 4;
|
|
this.tableLayout.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 210F));
|
|
this.tableLayout.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 30F));
|
|
this.tableLayout.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 35F));
|
|
this.tableLayout.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 35F));
|
|
this.tableLayout.Size = new System.Drawing.Size(540, 900);
|
|
this.tableLayout.TabIndex = 0;
|
|
//
|
|
// flpKpis
|
|
//
|
|
this.flpKpis.AutoScroll = true;
|
|
this.flpKpis.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.flpKpis.Location = new System.Drawing.Point(3, 3);
|
|
this.flpKpis.Name = "flpKpis";
|
|
this.flpKpis.Padding = new System.Windows.Forms.Padding(2);
|
|
this.flpKpis.Size = new System.Drawing.Size(534, 204);
|
|
this.flpKpis.TabIndex = 0;
|
|
//
|
|
// grpSupervisor
|
|
//
|
|
this.grpSupervisor.Controls.Add(this.rtbSupervisor);
|
|
this.grpSupervisor.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.grpSupervisor.Location = new System.Drawing.Point(3, 213);
|
|
this.grpSupervisor.Name = "grpSupervisor";
|
|
this.grpSupervisor.Padding = new System.Windows.Forms.Padding(6);
|
|
this.grpSupervisor.Size = new System.Drawing.Size(534, 200);
|
|
this.grpSupervisor.TabIndex = 1;
|
|
this.grpSupervisor.TabStop = false;
|
|
this.grpSupervisor.Text = "Supervisor-KI (letzter Bericht)";
|
|
//
|
|
// rtbSupervisor
|
|
//
|
|
this.rtbSupervisor.BackColor = System.Drawing.Color.White;
|
|
this.rtbSupervisor.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
|
this.rtbSupervisor.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.rtbSupervisor.Location = new System.Drawing.Point(6, 22);
|
|
this.rtbSupervisor.Name = "rtbSupervisor";
|
|
this.rtbSupervisor.ReadOnly = true;
|
|
this.rtbSupervisor.Size = new System.Drawing.Size(522, 172);
|
|
this.rtbSupervisor.TabIndex = 0;
|
|
this.rtbSupervisor.Text = "";
|
|
//
|
|
// grpAlerts
|
|
//
|
|
this.grpAlerts.Controls.Add(this.dgvAlerts);
|
|
this.grpAlerts.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.grpAlerts.Location = new System.Drawing.Point(3, 419);
|
|
this.grpAlerts.Name = "grpAlerts";
|
|
this.grpAlerts.Padding = new System.Windows.Forms.Padding(6);
|
|
this.grpAlerts.Size = new System.Drawing.Size(534, 234);
|
|
this.grpAlerts.TabIndex = 2;
|
|
this.grpAlerts.TabStop = false;
|
|
this.grpAlerts.Text = "Warnungen & Fehler (heute)";
|
|
//
|
|
// dgvAlerts
|
|
//
|
|
this.dgvAlerts.AllowUserToAddRows = false;
|
|
this.dgvAlerts.AllowUserToDeleteRows = false;
|
|
this.dgvAlerts.AutoGenerateColumns = false;
|
|
this.dgvAlerts.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
|
this.dgvAlerts.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
|
|
this.colAlertTime, this.colAlertLevel, this.colAlertMsg});
|
|
this.dgvAlerts.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.dgvAlerts.Location = new System.Drawing.Point(6, 22);
|
|
this.dgvAlerts.Name = "dgvAlerts";
|
|
this.dgvAlerts.ReadOnly = true;
|
|
this.dgvAlerts.RowHeadersVisible = false;
|
|
this.dgvAlerts.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
|
this.dgvAlerts.Size = new System.Drawing.Size(522, 206);
|
|
this.dgvAlerts.TabIndex = 0;
|
|
//
|
|
// colAlertTime
|
|
//
|
|
this.colAlertTime.DataPropertyName = "Time";
|
|
this.colAlertTime.HeaderText = "Zeit";
|
|
this.colAlertTime.Name = "colAlertTime";
|
|
this.colAlertTime.ReadOnly = true;
|
|
this.colAlertTime.Width = 70;
|
|
//
|
|
// colAlertLevel
|
|
//
|
|
this.colAlertLevel.DataPropertyName = "Level";
|
|
this.colAlertLevel.HeaderText = "Level";
|
|
this.colAlertLevel.Name = "colAlertLevel";
|
|
this.colAlertLevel.ReadOnly = true;
|
|
this.colAlertLevel.Width = 70;
|
|
//
|
|
// colAlertMsg
|
|
//
|
|
this.colAlertMsg.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
|
|
this.colAlertMsg.DataPropertyName = "Message";
|
|
this.colAlertMsg.HeaderText = "Nachricht";
|
|
this.colAlertMsg.Name = "colAlertMsg";
|
|
this.colAlertMsg.ReadOnly = true;
|
|
//
|
|
// grpNotable
|
|
//
|
|
this.grpNotable.Controls.Add(this.dgvNotable);
|
|
this.grpNotable.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.grpNotable.Location = new System.Drawing.Point(3, 659);
|
|
this.grpNotable.Name = "grpNotable";
|
|
this.grpNotable.Padding = new System.Windows.Forms.Padding(6);
|
|
this.grpNotable.Size = new System.Drawing.Size(534, 238);
|
|
this.grpNotable.TabIndex = 3;
|
|
this.grpNotable.TabStop = false;
|
|
this.grpNotable.Text = "Auffällige Trades (24h)";
|
|
//
|
|
// dgvNotable
|
|
//
|
|
this.dgvNotable.AllowUserToAddRows = false;
|
|
this.dgvNotable.AllowUserToDeleteRows = false;
|
|
this.dgvNotable.AutoGenerateColumns = false;
|
|
this.dgvNotable.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
|
this.dgvNotable.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
|
|
this.colNotModule, this.colNotMarket, this.colNotPnl, this.colNotPnlPct});
|
|
this.dgvNotable.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.dgvNotable.Location = new System.Drawing.Point(6, 22);
|
|
this.dgvNotable.Name = "dgvNotable";
|
|
this.dgvNotable.ReadOnly = true;
|
|
this.dgvNotable.RowHeadersVisible = false;
|
|
this.dgvNotable.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
|
this.dgvNotable.Size = new System.Drawing.Size(522, 210);
|
|
this.dgvNotable.TabIndex = 0;
|
|
//
|
|
// colNotModule
|
|
//
|
|
this.colNotModule.DataPropertyName = "Module";
|
|
this.colNotModule.HeaderText = "Modul";
|
|
this.colNotModule.Name = "colNotModule";
|
|
this.colNotModule.ReadOnly = true;
|
|
this.colNotModule.Width = 100;
|
|
//
|
|
// colNotMarket
|
|
//
|
|
this.colNotMarket.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
|
|
this.colNotMarket.DataPropertyName = "Market";
|
|
this.colNotMarket.HeaderText = "Markt";
|
|
this.colNotMarket.Name = "colNotMarket";
|
|
this.colNotMarket.ReadOnly = true;
|
|
//
|
|
// colNotPnl
|
|
//
|
|
this.colNotPnl.DataPropertyName = "Pnl";
|
|
this.colNotPnl.HeaderText = "PnL";
|
|
this.colNotPnl.Name = "colNotPnl";
|
|
this.colNotPnl.ReadOnly = true;
|
|
this.colNotPnl.Width = 80;
|
|
//
|
|
// colNotPnlPct
|
|
//
|
|
this.colNotPnlPct.DataPropertyName = "PnlPct";
|
|
this.colNotPnlPct.HeaderText = "PnL %";
|
|
this.colNotPnlPct.Name = "colNotPnlPct";
|
|
this.colNotPnlPct.ReadOnly = true;
|
|
this.colNotPnlPct.Width = 70;
|
|
//
|
|
// LauncherWidgetsPanel
|
|
//
|
|
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
|
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
this.Controls.Add(this.tableLayout);
|
|
this.Name = "LauncherWidgetsPanel";
|
|
this.Size = new System.Drawing.Size(540, 900);
|
|
this.tableLayout.ResumeLayout(false);
|
|
this.grpSupervisor.ResumeLayout(false);
|
|
this.grpAlerts.ResumeLayout(false);
|
|
((System.ComponentModel.ISupportInitialize)(this.dgvAlerts)).EndInit();
|
|
this.grpNotable.ResumeLayout(false);
|
|
((System.ComponentModel.ISupportInitialize)(this.dgvNotable)).EndInit();
|
|
this.ResumeLayout(false);
|
|
}
|
|
|
|
#endregion
|
|
|
|
private System.Windows.Forms.TableLayoutPanel tableLayout;
|
|
private System.Windows.Forms.FlowLayoutPanel flpKpis;
|
|
private System.Windows.Forms.GroupBox grpSupervisor;
|
|
private System.Windows.Forms.RichTextBox rtbSupervisor;
|
|
private System.Windows.Forms.GroupBox grpAlerts;
|
|
private System.Windows.Forms.DataGridView dgvAlerts;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colAlertTime;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colAlertLevel;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colAlertMsg;
|
|
private System.Windows.Forms.GroupBox grpNotable;
|
|
private System.Windows.Forms.DataGridView dgvNotable;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colNotModule;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colNotMarket;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colNotPnl;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colNotPnlPct;
|
|
}
|
|
}
|