- Fenster-Menue: WindowMenu fuellt die oberste MenuStrip mit Top-Level-Eintraegen nebeneinander (mit Icon) statt Untermenue "Fenster"; ModuleView.Icon zentral in der App zugewiesen (AssignMenuIcons). Kein miFenster mehr im Launcher-Designer. - Sicheres Beenden: ShutdownConfirmDialog (10s-Timer sperrt "Jetzt beenden", Abbrechen jederzeit) via IModuleUiHost.RequestShutdown(). Nur der Launcher (Hauptprozess) bietet "Beenden"; andere Fenster nur "Fenster schliessen" (kein App-Shutdown, Module laufen weiter). Launcher-Schliessen-X routet ueber dieselbe Abfrage. - Modul-Aktivierung (restart-basiert): ServerSettings.DisabledModules, in Program.Main vor der DI-Registrierung gefiltert -> deaktivierte Module werden nicht geladen. Dashboard-Tab "Module" zeigt Status + schaltet um (Hinweis: greift nach Neustart). Optionaler IPolyTraderModule.GetActivationBlocker fuer "nicht aktivierbar"-Info. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
370 lines
16 KiB
C#
370 lines
16 KiB
C#
namespace PolyTraderSharp.Ui
|
|
{
|
|
partial class LauncherForm
|
|
{
|
|
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()
|
|
{
|
|
menuStrip = new MenuStrip();
|
|
toolstrip_windows = new ToolStrip();
|
|
btn_dashboard = new ToolStripButton();
|
|
btn_settings = new ToolStripButton();
|
|
btn_terminal = new ToolStripButton();
|
|
btn_jobs = new ToolStripButton();
|
|
btn_accounting = new ToolStripButton();
|
|
toolStripSeparator1 = new ToolStripSeparator();
|
|
toolStripSeparator2 = new ToolStripSeparator();
|
|
btn_copytrading = new ToolStripButton();
|
|
btn_resolutionfarming = new ToolStripButton();
|
|
btn_supervisor = new ToolStripButton();
|
|
toolstrip_quickbar = new ToolStrip();
|
|
btn_liveTrading = new ToolStripButton();
|
|
btn_demoTrading = new ToolStripButton();
|
|
statusStrip_info = new StatusStrip();
|
|
lbl_trading = new ToolStripStatusLabel();
|
|
lbl_modules = new ToolStripStatusLabel();
|
|
lbl_ratelimit = new ToolStripStatusLabel();
|
|
dgv_accountlist = new DataGridView();
|
|
colAccName = new DataGridViewTextBoxColumn();
|
|
colAccModules = new DataGridViewTextBoxColumn();
|
|
colAccPoly = new DataGridViewButtonColumn();
|
|
colAccBalance = new DataGridViewTextBoxColumn();
|
|
colAccPnl3d = new DataGridViewTextBoxColumn();
|
|
colAccWin3d = new DataGridViewTextBoxColumn();
|
|
colAccOverall = new DataGridViewTextBoxColumn();
|
|
launcherWidgets = new LauncherWidgetsPanel();
|
|
menuStrip.SuspendLayout();
|
|
toolstrip_windows.SuspendLayout();
|
|
toolstrip_quickbar.SuspendLayout();
|
|
statusStrip_info.SuspendLayout();
|
|
((System.ComponentModel.ISupportInitialize)dgv_accountlist).BeginInit();
|
|
SuspendLayout();
|
|
//
|
|
// menuStrip
|
|
//
|
|
menuStrip.ImageScalingSize = new Size(24, 24);
|
|
// Einträge werden zur Laufzeit über WindowMenu.Wire gefüllt (alle Fenster nebeneinander mit Icon).
|
|
menuStrip.Location = new Point(0, 0);
|
|
menuStrip.Name = "menuStrip";
|
|
menuStrip.Padding = new Padding(9, 3, 0, 3);
|
|
menuStrip.Size = new Size(2599, 35);
|
|
menuStrip.TabIndex = 0;
|
|
//
|
|
// 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, btn_accounting, btn_supervisor, toolStripSeparator1, toolStripSeparator2, btn_copytrading, btn_resolutionfarming });
|
|
toolstrip_windows.Location = new Point(0, 35);
|
|
toolstrip_windows.Name = "toolstrip_windows";
|
|
toolstrip_windows.Size = new Size(2599, 70);
|
|
toolstrip_windows.TabIndex = 3;
|
|
toolstrip_windows.Text = "toolStrip1";
|
|
//
|
|
// btn_dashboard
|
|
//
|
|
btn_dashboard.Image = Properties.Resources.dashboard;
|
|
btn_dashboard.ImageScaling = ToolStripItemImageScaling.None;
|
|
btn_dashboard.Name = "btn_dashboard";
|
|
btn_dashboard.Overflow = ToolStripItemOverflow.Never;
|
|
btn_dashboard.Size = new Size(104, 65);
|
|
btn_dashboard.Text = "Dashboard";
|
|
btn_dashboard.TextImageRelation = TextImageRelation.ImageAboveText;
|
|
//
|
|
// btn_settings
|
|
//
|
|
btn_settings.BackColor = SystemColors.Control;
|
|
btn_settings.Image = Properties.Resources.setting_tools;
|
|
btn_settings.ImageScaling = ToolStripItemImageScaling.None;
|
|
btn_settings.ImageTransparentColor = Color.Magenta;
|
|
btn_settings.Name = "btn_settings";
|
|
btn_settings.Size = new Size(80, 65);
|
|
btn_settings.Text = "Settings";
|
|
btn_settings.TextImageRelation = TextImageRelation.ImageAboveText;
|
|
//
|
|
// btn_terminal
|
|
//
|
|
btn_terminal.Image = Properties.Resources.error_log;
|
|
btn_terminal.ImageScaling = ToolStripItemImageScaling.None;
|
|
btn_terminal.Name = "btn_terminal";
|
|
btn_terminal.Size = new Size(136, 65);
|
|
btn_terminal.Text = "Terminal / Logs";
|
|
btn_terminal.TextImageRelation = TextImageRelation.ImageAboveText;
|
|
//
|
|
// btn_jobs
|
|
//
|
|
btn_jobs.Image = Properties.Resources.system_time;
|
|
btn_jobs.ImageScaling = ToolStripItemImageScaling.None;
|
|
btn_jobs.Name = "btn_jobs";
|
|
btn_jobs.Size = new Size(106, 65);
|
|
btn_jobs.Text = "Server Jobs";
|
|
btn_jobs.TextImageRelation = TextImageRelation.ImageAboveText;
|
|
//
|
|
// 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);
|
|
//
|
|
// toolStripSeparator2
|
|
//
|
|
toolStripSeparator2.Margin = new Padding(20, 0, 0, 0);
|
|
toolStripSeparator2.Name = "toolStripSeparator2";
|
|
toolStripSeparator2.Size = new Size(6, 70);
|
|
//
|
|
// btn_copytrading
|
|
//
|
|
btn_copytrading.Image = Properties.Resources.cross_reference;
|
|
btn_copytrading.ImageScaling = ToolStripItemImageScaling.None;
|
|
btn_copytrading.ImageTransparentColor = Color.Magenta;
|
|
btn_copytrading.Name = "btn_copytrading";
|
|
btn_copytrading.Size = new Size(116, 65);
|
|
btn_copytrading.Text = "CopyTrading";
|
|
btn_copytrading.TextImageRelation = TextImageRelation.ImageAboveText;
|
|
//
|
|
// btn_resolutionfarming
|
|
//
|
|
btn_resolutionfarming.Image = Properties.Resources.file_start_workflow;
|
|
btn_resolutionfarming.ImageScaling = ToolStripItemImageScaling.None;
|
|
btn_resolutionfarming.ImageTransparentColor = Color.Magenta;
|
|
btn_resolutionfarming.Name = "btn_resolutionfarming";
|
|
btn_resolutionfarming.Size = new Size(163, 65);
|
|
btn_resolutionfarming.Text = "ResolutionFarming";
|
|
btn_resolutionfarming.TextImageRelation = TextImageRelation.ImageAboveText;
|
|
//
|
|
// btn_supervisor
|
|
//
|
|
btn_supervisor.Image = Properties.Resources.emotion_batman;
|
|
btn_supervisor.ImageScaling = ToolStripItemImageScaling.None;
|
|
btn_supervisor.ImageTransparentColor = Color.Magenta;
|
|
btn_supervisor.Name = "btn_supervisor";
|
|
btn_supervisor.Size = new Size(100, 65);
|
|
btn_supervisor.Text = "Supervisor";
|
|
btn_supervisor.TextImageRelation = TextImageRelation.ImageAboveText;
|
|
//
|
|
// toolstrip_quickbar
|
|
//
|
|
toolstrip_quickbar.ImageScalingSize = new Size(24, 24);
|
|
toolstrip_quickbar.Items.AddRange(new ToolStripItem[] { btn_liveTrading, btn_demoTrading });
|
|
toolstrip_quickbar.Location = new Point(0, 105);
|
|
toolstrip_quickbar.Name = "toolstrip_quickbar";
|
|
toolstrip_quickbar.Size = new Size(2599, 34);
|
|
toolstrip_quickbar.TabIndex = 4;
|
|
toolstrip_quickbar.Text = "toolStrip2";
|
|
//
|
|
// btn_liveTrading
|
|
//
|
|
btn_liveTrading.DisplayStyle = ToolStripItemDisplayStyle.Text;
|
|
btn_liveTrading.Name = "btn_liveTrading";
|
|
btn_liveTrading.Size = new Size(137, 29);
|
|
btn_liveTrading.Text = "LiveTrading (—)";
|
|
//
|
|
// btn_demoTrading
|
|
//
|
|
btn_demoTrading.DisplayStyle = ToolStripItemDisplayStyle.Text;
|
|
btn_demoTrading.Name = "btn_demoTrading";
|
|
btn_demoTrading.Size = new Size(156, 29);
|
|
btn_demoTrading.Text = "DemoTrading (—)";
|
|
//
|
|
// statusStrip_info
|
|
//
|
|
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, 637);
|
|
statusStrip_info.Name = "statusStrip_info";
|
|
statusStrip_info.Size = new Size(2599, 32);
|
|
statusStrip_info.TabIndex = 5;
|
|
statusStrip_info.Text = "statusStrip1";
|
|
//
|
|
// lbl_trading
|
|
//
|
|
lbl_trading.Name = "lbl_trading";
|
|
lbl_trading.Size = new Size(97, 25);
|
|
lbl_trading.Text = "Trading: —";
|
|
//
|
|
// lbl_modules
|
|
//
|
|
lbl_modules.Name = "lbl_modules";
|
|
lbl_modules.Size = new Size(100, 25);
|
|
lbl_modules.Text = "Module: —";
|
|
//
|
|
// lbl_ratelimit
|
|
//
|
|
lbl_ratelimit.Name = "lbl_ratelimit";
|
|
lbl_ratelimit.Size = new Size(66, 25);
|
|
lbl_ratelimit.Text = "API: —";
|
|
//
|
|
// dgv_accountlist
|
|
//
|
|
dgv_accountlist.AllowUserToAddRows = false;
|
|
dgv_accountlist.AllowUserToDeleteRows = false;
|
|
dgv_accountlist.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
|
|
dgv_accountlist.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
|
dgv_accountlist.Columns.AddRange(new DataGridViewColumn[] { colAccName, colAccModules, colAccPoly, colAccBalance, colAccPnl3d, colAccWin3d, colAccOverall });
|
|
dgv_accountlist.Dock = DockStyle.Fill;
|
|
dgv_accountlist.Location = new Point(0, 139);
|
|
dgv_accountlist.Name = "dgv_accountlist";
|
|
dgv_accountlist.ReadOnly = true;
|
|
dgv_accountlist.RowHeadersVisible = false;
|
|
dgv_accountlist.RowHeadersWidth = 62;
|
|
dgv_accountlist.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
|
|
dgv_accountlist.Size = new Size(2599, 498);
|
|
dgv_accountlist.TabIndex = 6;
|
|
//
|
|
// colAccName
|
|
//
|
|
colAccName.DataPropertyName = "Name";
|
|
colAccName.HeaderText = "Account";
|
|
colAccName.MinimumWidth = 8;
|
|
colAccName.Name = "colAccName";
|
|
colAccName.ReadOnly = true;
|
|
colAccName.Width = 113;
|
|
//
|
|
// colAccModules
|
|
//
|
|
colAccModules.DataPropertyName = "Modules";
|
|
colAccModules.HeaderText = "Module";
|
|
colAccModules.MinimumWidth = 8;
|
|
colAccModules.Name = "colAccModules";
|
|
colAccModules.ReadOnly = true;
|
|
colAccModules.Width = 109;
|
|
//
|
|
// colAccPoly
|
|
//
|
|
colAccPoly.HeaderText = "Polymarket";
|
|
colAccPoly.MinimumWidth = 8;
|
|
colAccPoly.Name = "colAccPoly";
|
|
colAccPoly.ReadOnly = true;
|
|
colAccPoly.Text = "Öffnen";
|
|
colAccPoly.UseColumnTextForButtonValue = true;
|
|
colAccPoly.Width = 106;
|
|
//
|
|
// colAccBalance
|
|
//
|
|
colAccBalance.DataPropertyName = "Balance";
|
|
colAccBalance.HeaderText = "Wallet (USDC)";
|
|
colAccBalance.MinimumWidth = 8;
|
|
colAccBalance.Name = "colAccBalance";
|
|
colAccBalance.ReadOnly = true;
|
|
colAccBalance.Width = 157;
|
|
//
|
|
// colAccPnl3d
|
|
//
|
|
colAccPnl3d.DataPropertyName = "Pnl3d";
|
|
colAccPnl3d.HeaderText = "3T PnL";
|
|
colAccPnl3d.MinimumWidth = 8;
|
|
colAccPnl3d.Name = "colAccPnl3d";
|
|
colAccPnl3d.ReadOnly = true;
|
|
//
|
|
// colAccWin3d
|
|
//
|
|
colAccWin3d.DataPropertyName = "WinRate3d";
|
|
colAccWin3d.HeaderText = "3T Winrate %";
|
|
colAccWin3d.MinimumWidth = 8;
|
|
colAccWin3d.Name = "colAccWin3d";
|
|
colAccWin3d.ReadOnly = true;
|
|
colAccWin3d.Width = 153;
|
|
//
|
|
// colAccOverall
|
|
//
|
|
colAccOverall.DataPropertyName = "OverallPnl";
|
|
colAccOverall.HeaderText = "Overall P/L";
|
|
colAccOverall.MinimumWidth = 8;
|
|
colAccOverall.Name = "colAccOverall";
|
|
colAccOverall.ReadOnly = true;
|
|
colAccOverall.Width = 133;
|
|
//
|
|
// launcherWidgets
|
|
//
|
|
launcherWidgets.Dock = DockStyle.Right;
|
|
launcherWidgets.Location = new Point(2039, 139);
|
|
launcherWidgets.Name = "launcherWidgets";
|
|
launcherWidgets.Size = new Size(560, 498);
|
|
launcherWidgets.TabIndex = 7;
|
|
//
|
|
// LauncherForm
|
|
//
|
|
AutoScaleDimensions = new SizeF(10F, 25F);
|
|
AutoScaleMode = AutoScaleMode.Font;
|
|
ClientSize = new Size(2599, 669);
|
|
Controls.Add(dgv_accountlist);
|
|
Controls.Add(launcherWidgets);
|
|
Controls.Add(statusStrip_info);
|
|
Controls.Add(toolstrip_quickbar);
|
|
Controls.Add(toolstrip_windows);
|
|
Controls.Add(menuStrip);
|
|
MainMenuStrip = menuStrip;
|
|
Margin = new Padding(4, 5, 4, 5);
|
|
MinimumSize = new Size(1280, 720);
|
|
Name = "LauncherForm";
|
|
StartPosition = FormStartPosition.CenterScreen;
|
|
Text = "PolyTrader";
|
|
WindowState = FormWindowState.Maximized;
|
|
menuStrip.ResumeLayout(false);
|
|
menuStrip.PerformLayout();
|
|
toolstrip_windows.ResumeLayout(false);
|
|
toolstrip_windows.PerformLayout();
|
|
toolstrip_quickbar.ResumeLayout(false);
|
|
toolstrip_quickbar.PerformLayout();
|
|
statusStrip_info.ResumeLayout(false);
|
|
statusStrip_info.PerformLayout();
|
|
((System.ComponentModel.ISupportInitialize)dgv_accountlist).EndInit();
|
|
ResumeLayout(false);
|
|
PerformLayout();
|
|
}
|
|
|
|
#endregion
|
|
|
|
private System.Windows.Forms.MenuStrip menuStrip;
|
|
private ToolStrip toolstrip_windows;
|
|
private ToolStripButton btn_settings;
|
|
private ToolStripButton btn_terminal;
|
|
private ToolStripButton btn_jobs;
|
|
private ToolStripButton btn_dashboard;
|
|
private ToolStripButton btn_copytrading;
|
|
private ToolStripButton btn_resolutionfarming;
|
|
private ToolStripButton btn_supervisor;
|
|
private ToolStrip toolstrip_quickbar;
|
|
private ToolStripButton btn_liveTrading;
|
|
private ToolStripButton btn_demoTrading;
|
|
private StatusStrip statusStrip_info;
|
|
private ToolStripStatusLabel lbl_trading;
|
|
private ToolStripStatusLabel lbl_modules;
|
|
private ToolStripStatusLabel lbl_ratelimit;
|
|
private ToolStripButton btn_accounting;
|
|
private ToolStripSeparator toolStripSeparator1;
|
|
private DataGridView dgv_accountlist;
|
|
private DataGridViewTextBoxColumn colAccName;
|
|
private DataGridViewTextBoxColumn colAccModules;
|
|
private DataGridViewButtonColumn colAccPoly;
|
|
private DataGridViewTextBoxColumn colAccBalance;
|
|
private DataGridViewTextBoxColumn colAccPnl3d;
|
|
private DataGridViewTextBoxColumn colAccWin3d;
|
|
private DataGridViewTextBoxColumn colAccOverall;
|
|
private ToolStripSeparator toolStripSeparator2;
|
|
private LauncherWidgetsPanel launcherWidgets;
|
|
}
|
|
}
|