UI Slice 4: Launcher-Live-Widgets + VS-Re-Serialisierungs-Regressionen behoben

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>
This commit is contained in:
Richard
2026-07-23 09:31:59 +02:00
co-authored by Claude Opus 4.8
parent 936144c318
commit 3c8ea3534e
52 changed files with 3860 additions and 2217 deletions
+401 -375
View File
@@ -17,442 +17,468 @@ namespace PolyTraderSharp.Ui.Views
private void InitializeComponent()
{
this.toolStripDash = new System.Windows.Forms.ToolStrip();
this.tslKonto = new System.Windows.Forms.ToolStripLabel();
this.cbAccount = new System.Windows.Forms.ToolStripComboBox();
this.tslModul = new System.Windows.Forms.ToolStripLabel();
this.cbModule = new System.Windows.Forms.ToolStripComboBox();
this.tslArt = new System.Windows.Forms.ToolStripLabel();
this.cbMode = new System.Windows.Forms.ToolStripComboBox();
this.tslZeit = new System.Windows.Forms.ToolStripLabel();
this.cbRange = new System.Windows.Forms.ToolStripComboBox();
this.tsRefresh = new System.Windows.Forms.ToolStripButton();
this.tabControlDash = new System.Windows.Forms.TabControl();
this.tabDashboard = new System.Windows.Forms.TabPage();
this.picEquity = new System.Windows.Forms.PictureBox();
this.pnlChartsBottom = new System.Windows.Forms.Panel();
this.picDay = new System.Windows.Forms.PictureBox();
this.picModule = new System.Windows.Forms.PictureBox();
this.flpKpis = new System.Windows.Forms.FlowLayoutPanel();
this.lblKpiPnl = new System.Windows.Forms.Label();
this.lblKpiWin = new System.Windows.Forms.Label();
this.lblKpiTrades = new System.Windows.Forms.Label();
this.lblKpiAvg = new System.Windows.Forms.Label();
this.lblKpiPf = new System.Windows.Forms.Label();
this.tabHistory = new System.Windows.Forms.TabPage();
this.dgvTrades = new System.Windows.Forms.DataGridView();
this.colModule = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colAccount = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colMarket = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colOutcome = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colSide = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colEntry = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colExit = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colSize = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colPnl = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colPnlPct = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colClosedAt = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.pnlHistFilters = new System.Windows.Forms.Panel();
this.lblSuche = new System.Windows.Forms.Label();
this.tbSearch = new System.Windows.Forms.TextBox();
this.lblErgebnis = new System.Windows.Forms.Label();
this.cbWinLoss = new System.Windows.Forms.ComboBox();
this.toolStripDash.SuspendLayout();
this.tabControlDash.SuspendLayout();
this.tabDashboard.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.picEquity)).BeginInit();
this.pnlChartsBottom.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.picDay)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.picModule)).BeginInit();
this.flpKpis.SuspendLayout();
this.tabHistory.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dgvTrades)).BeginInit();
this.pnlHistFilters.SuspendLayout();
this.SuspendLayout();
//
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DashboardView));
toolStripDash = new ToolStrip();
tslKonto = new ToolStripLabel();
cbAccount = new ToolStripComboBox();
tslModul = new ToolStripLabel();
cbModule = new ToolStripComboBox();
tslArt = new ToolStripLabel();
cbMode = new ToolStripComboBox();
tslZeit = new ToolStripLabel();
cbRange = new ToolStripComboBox();
tsRefresh = new ToolStripButton();
tabControlDash = new TabControl();
tabDashboard = new TabPage();
picEquity = new PictureBox();
pnlChartsBottom = new Panel();
picDay = new PictureBox();
picModule = new PictureBox();
flpKpis = new FlowLayoutPanel();
lblKpiPnl = new Label();
lblKpiWin = new Label();
lblKpiTrades = new Label();
lblKpiAvg = new Label();
lblKpiPf = new Label();
tabHistory = new TabPage();
dgvTrades = new DataGridView();
colModule = new DataGridViewTextBoxColumn();
colAccount = new DataGridViewTextBoxColumn();
colMarket = new DataGridViewTextBoxColumn();
colOutcome = new DataGridViewTextBoxColumn();
colSide = new DataGridViewTextBoxColumn();
colEntry = new DataGridViewTextBoxColumn();
colExit = new DataGridViewTextBoxColumn();
colSize = new DataGridViewTextBoxColumn();
colPnl = new DataGridViewTextBoxColumn();
colPnlPct = new DataGridViewTextBoxColumn();
colClosedAt = new DataGridViewTextBoxColumn();
pnlHistFilters = new Panel();
cbWinLoss = new ComboBox();
lblErgebnis = new Label();
tbSearch = new TextBox();
lblSuche = new Label();
toolStripDash.SuspendLayout();
tabControlDash.SuspendLayout();
tabDashboard.SuspendLayout();
((System.ComponentModel.ISupportInitialize)picEquity).BeginInit();
pnlChartsBottom.SuspendLayout();
((System.ComponentModel.ISupportInitialize)picDay).BeginInit();
((System.ComponentModel.ISupportInitialize)picModule).BeginInit();
flpKpis.SuspendLayout();
tabHistory.SuspendLayout();
((System.ComponentModel.ISupportInitialize)dgvTrades).BeginInit();
pnlHistFilters.SuspendLayout();
SuspendLayout();
//
// toolStripDash
//
this.toolStripDash.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tslKonto, this.cbAccount, this.tslModul, this.cbModule, this.tslArt, this.cbMode,
this.tslZeit, this.cbRange, this.tsRefresh});
this.toolStripDash.Location = new System.Drawing.Point(0, 0);
this.toolStripDash.Name = "toolStripDash";
this.toolStripDash.Size = new System.Drawing.Size(1200, 27);
this.toolStripDash.TabIndex = 0;
//
//
toolStripDash.ImageScalingSize = new Size(24, 24);
toolStripDash.Items.AddRange(new ToolStripItem[] { tslKonto, cbAccount, tslModul, cbModule, tslArt, cbMode, tslZeit, cbRange, tsRefresh });
toolStripDash.Location = new Point(0, 0);
toolStripDash.Name = "toolStripDash";
toolStripDash.Padding = new Padding(0, 0, 3, 0);
toolStripDash.Size = new Size(1714, 34);
toolStripDash.TabIndex = 0;
//
// tslKonto
//
this.tslKonto.Name = "tslKonto";
this.tslKonto.Text = "Konto:";
//
//
tslKonto.Name = "tslKonto";
tslKonto.Size = new Size(64, 29);
tslKonto.Text = "Konto:";
//
// cbAccount
//
this.cbAccount.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cbAccount.Name = "cbAccount";
this.cbAccount.Size = new System.Drawing.Size(170, 27);
//
//
cbAccount.DropDownStyle = ComboBoxStyle.DropDownList;
cbAccount.Name = "cbAccount";
cbAccount.Size = new Size(241, 34);
//
// tslModul
//
this.tslModul.Name = "tslModul";
this.tslModul.Text = "Modul:";
//
//
tslModul.Name = "tslModul";
tslModul.Size = new Size(68, 29);
tslModul.Text = "Modul:";
//
// cbModule
//
this.cbModule.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cbModule.Name = "cbModule";
this.cbModule.Size = new System.Drawing.Size(150, 27);
//
//
cbModule.DropDownStyle = ComboBoxStyle.DropDownList;
cbModule.Name = "cbModule";
cbModule.Size = new Size(213, 34);
//
// tslArt
//
this.tslArt.Name = "tslArt";
this.tslArt.Text = "Art:";
//
//
tslArt.Name = "tslArt";
tslArt.Size = new Size(40, 29);
tslArt.Text = "Art:";
//
// cbMode
//
this.cbMode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cbMode.Name = "cbMode";
this.cbMode.Size = new System.Drawing.Size(100, 27);
//
//
cbMode.DropDownStyle = ComboBoxStyle.DropDownList;
cbMode.Name = "cbMode";
cbMode.Size = new Size(141, 34);
//
// tslZeit
//
this.tslZeit.Name = "tslZeit";
this.tslZeit.Text = "Zeitraum:";
//
//
tslZeit.Name = "tslZeit";
tslZeit.Size = new Size(86, 29);
tslZeit.Text = "Zeitraum:";
//
// cbRange
//
this.cbRange.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cbRange.Name = "cbRange";
this.cbRange.Size = new System.Drawing.Size(110, 27);
//
//
cbRange.DropDownStyle = ComboBoxStyle.DropDownList;
cbRange.Name = "cbRange";
cbRange.Size = new Size(155, 34);
//
// tsRefresh
//
this.tsRefresh.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.tsRefresh.Name = "tsRefresh";
this.tsRefresh.Text = "Aktualisieren";
//
//
tsRefresh.DisplayStyle = ToolStripItemDisplayStyle.Text;
tsRefresh.Name = "tsRefresh";
tsRefresh.Size = new Size(116, 29);
tsRefresh.Text = "Aktualisieren";
//
// tabControlDash
//
this.tabControlDash.Controls.Add(this.tabDashboard);
this.tabControlDash.Controls.Add(this.tabHistory);
this.tabControlDash.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabControlDash.Location = new System.Drawing.Point(0, 27);
this.tabControlDash.Name = "tabControlDash";
this.tabControlDash.SelectedIndex = 0;
this.tabControlDash.Size = new System.Drawing.Size(1200, 623);
this.tabControlDash.TabIndex = 1;
//
//
tabControlDash.Controls.Add(tabDashboard);
tabControlDash.Controls.Add(tabHistory);
tabControlDash.Dock = DockStyle.Fill;
tabControlDash.Location = new Point(0, 34);
tabControlDash.Margin = new Padding(4, 5, 4, 5);
tabControlDash.Name = "tabControlDash";
tabControlDash.SelectedIndex = 0;
tabControlDash.Size = new Size(1714, 1049);
tabControlDash.TabIndex = 1;
//
// tabDashboard
//
this.tabDashboard.Controls.Add(this.picEquity);
this.tabDashboard.Controls.Add(this.pnlChartsBottom);
this.tabDashboard.Controls.Add(this.flpKpis);
this.tabDashboard.Location = new System.Drawing.Point(4, 24);
this.tabDashboard.Name = "tabDashboard";
this.tabDashboard.Padding = new System.Windows.Forms.Padding(3);
this.tabDashboard.Size = new System.Drawing.Size(1192, 595);
this.tabDashboard.TabIndex = 0;
this.tabDashboard.Text = "Dashboard";
this.tabDashboard.UseVisualStyleBackColor = true;
//
//
tabDashboard.Controls.Add(picEquity);
tabDashboard.Controls.Add(pnlChartsBottom);
tabDashboard.Controls.Add(flpKpis);
tabDashboard.Location = new Point(4, 34);
tabDashboard.Margin = new Padding(4, 5, 4, 5);
tabDashboard.Name = "tabDashboard";
tabDashboard.Padding = new Padding(4, 5, 4, 5);
tabDashboard.Size = new Size(1706, 1011);
tabDashboard.TabIndex = 0;
tabDashboard.Text = "Dashboard";
tabDashboard.UseVisualStyleBackColor = true;
//
// picEquity
//
this.picEquity.BackColor = System.Drawing.Color.White;
this.picEquity.Dock = System.Windows.Forms.DockStyle.Fill;
this.picEquity.Location = new System.Drawing.Point(3, 79);
this.picEquity.Name = "picEquity";
this.picEquity.Size = new System.Drawing.Size(1186, 273);
this.picEquity.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.picEquity.TabIndex = 2;
this.picEquity.TabStop = false;
//
//
picEquity.BackColor = Color.White;
picEquity.Dock = DockStyle.Fill;
picEquity.Location = new Point(4, 132);
picEquity.Margin = new Padding(4, 5, 4, 5);
picEquity.Name = "picEquity";
picEquity.Size = new Size(1698, 474);
picEquity.SizeMode = PictureBoxSizeMode.Zoom;
picEquity.TabIndex = 2;
picEquity.TabStop = false;
//
// pnlChartsBottom
//
this.pnlChartsBottom.Controls.Add(this.picDay);
this.pnlChartsBottom.Controls.Add(this.picModule);
this.pnlChartsBottom.Dock = System.Windows.Forms.DockStyle.Bottom;
this.pnlChartsBottom.Location = new System.Drawing.Point(3, 352);
this.pnlChartsBottom.Name = "pnlChartsBottom";
this.pnlChartsBottom.Size = new System.Drawing.Size(1186, 240);
this.pnlChartsBottom.TabIndex = 1;
//
//
pnlChartsBottom.Controls.Add(picDay);
pnlChartsBottom.Controls.Add(picModule);
pnlChartsBottom.Dock = DockStyle.Bottom;
pnlChartsBottom.Location = new Point(4, 606);
pnlChartsBottom.Margin = new Padding(4, 5, 4, 5);
pnlChartsBottom.Name = "pnlChartsBottom";
pnlChartsBottom.Size = new Size(1698, 400);
pnlChartsBottom.TabIndex = 1;
//
// picDay
//
this.picDay.BackColor = System.Drawing.Color.White;
this.picDay.Dock = System.Windows.Forms.DockStyle.Fill;
this.picDay.Location = new System.Drawing.Point(593, 0);
this.picDay.Name = "picDay";
this.picDay.Size = new System.Drawing.Size(593, 240);
this.picDay.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.picDay.TabIndex = 1;
this.picDay.TabStop = false;
//
//
picDay.BackColor = Color.White;
picDay.Dock = DockStyle.Fill;
picDay.Location = new Point(847, 0);
picDay.Margin = new Padding(4, 5, 4, 5);
picDay.Name = "picDay";
picDay.Size = new Size(851, 400);
picDay.SizeMode = PictureBoxSizeMode.Zoom;
picDay.TabIndex = 1;
picDay.TabStop = false;
//
// picModule
//
this.picModule.BackColor = System.Drawing.Color.White;
this.picModule.Dock = System.Windows.Forms.DockStyle.Left;
this.picModule.Location = new System.Drawing.Point(0, 0);
this.picModule.Name = "picModule";
this.picModule.Size = new System.Drawing.Size(593, 240);
this.picModule.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.picModule.TabIndex = 0;
this.picModule.TabStop = false;
//
//
picModule.BackColor = Color.White;
picModule.Dock = DockStyle.Left;
picModule.Location = new Point(0, 0);
picModule.Margin = new Padding(4, 5, 4, 5);
picModule.Name = "picModule";
picModule.Size = new Size(847, 400);
picModule.SizeMode = PictureBoxSizeMode.Zoom;
picModule.TabIndex = 0;
picModule.TabStop = false;
//
// flpKpis
//
this.flpKpis.Controls.Add(this.lblKpiPnl);
this.flpKpis.Controls.Add(this.lblKpiWin);
this.flpKpis.Controls.Add(this.lblKpiTrades);
this.flpKpis.Controls.Add(this.lblKpiAvg);
this.flpKpis.Controls.Add(this.lblKpiPf);
this.flpKpis.Dock = System.Windows.Forms.DockStyle.Top;
this.flpKpis.Location = new System.Drawing.Point(3, 3);
this.flpKpis.Name = "flpKpis";
this.flpKpis.Padding = new System.Windows.Forms.Padding(4);
this.flpKpis.Size = new System.Drawing.Size(1186, 76);
this.flpKpis.TabIndex = 0;
this.flpKpis.WrapContents = false;
//
//
flpKpis.Controls.Add(lblKpiPnl);
flpKpis.Controls.Add(lblKpiWin);
flpKpis.Controls.Add(lblKpiTrades);
flpKpis.Controls.Add(lblKpiAvg);
flpKpis.Controls.Add(lblKpiPf);
flpKpis.Dock = DockStyle.Top;
flpKpis.Location = new Point(4, 5);
flpKpis.Margin = new Padding(4, 5, 4, 5);
flpKpis.Name = "flpKpis";
flpKpis.Padding = new Padding(6, 7, 6, 7);
flpKpis.Size = new Size(1698, 127);
flpKpis.TabIndex = 0;
flpKpis.WrapContents = false;
//
// lblKpiPnl
//
this.lblKpiPnl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.lblKpiPnl.Font = new System.Drawing.Font("Segoe UI", 10F, System.Drawing.FontStyle.Bold);
this.lblKpiPnl.Margin = new System.Windows.Forms.Padding(4);
this.lblKpiPnl.MinimumSize = new System.Drawing.Size(190, 56);
this.lblKpiPnl.Name = "lblKpiPnl";
this.lblKpiPnl.Padding = new System.Windows.Forms.Padding(8);
this.lblKpiPnl.Size = new System.Drawing.Size(190, 56);
this.lblKpiPnl.TabIndex = 0;
this.lblKpiPnl.Text = "Netto-PnL\n—";
this.lblKpiPnl.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
//
lblKpiPnl.BorderStyle = BorderStyle.FixedSingle;
lblKpiPnl.Font = new Font("Segoe UI", 10F, FontStyle.Bold);
lblKpiPnl.Location = new Point(12, 14);
lblKpiPnl.Margin = new Padding(6, 7, 6, 7);
lblKpiPnl.MinimumSize = new Size(271, 92);
lblKpiPnl.Name = "lblKpiPnl";
lblKpiPnl.Padding = new Padding(11, 13, 11, 13);
lblKpiPnl.Size = new Size(271, 92);
lblKpiPnl.TabIndex = 0;
lblKpiPnl.Text = "Netto-PnL\n—";
lblKpiPnl.TextAlign = ContentAlignment.MiddleLeft;
//
// lblKpiWin
//
this.lblKpiWin.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.lblKpiWin.Font = new System.Drawing.Font("Segoe UI", 10F, System.Drawing.FontStyle.Bold);
this.lblKpiWin.Margin = new System.Windows.Forms.Padding(4);
this.lblKpiWin.MinimumSize = new System.Drawing.Size(150, 56);
this.lblKpiWin.Name = "lblKpiWin";
this.lblKpiWin.Padding = new System.Windows.Forms.Padding(8);
this.lblKpiWin.Size = new System.Drawing.Size(150, 56);
this.lblKpiWin.TabIndex = 1;
this.lblKpiWin.Text = "Winrate\n—";
this.lblKpiWin.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
//
lblKpiWin.BorderStyle = BorderStyle.FixedSingle;
lblKpiWin.Font = new Font("Segoe UI", 10F, FontStyle.Bold);
lblKpiWin.Location = new Point(295, 14);
lblKpiWin.Margin = new Padding(6, 7, 6, 7);
lblKpiWin.MinimumSize = new Size(213, 92);
lblKpiWin.Name = "lblKpiWin";
lblKpiWin.Padding = new Padding(11, 13, 11, 13);
lblKpiWin.Size = new Size(213, 92);
lblKpiWin.TabIndex = 1;
lblKpiWin.Text = "Winrate\n—";
lblKpiWin.TextAlign = ContentAlignment.MiddleLeft;
//
// lblKpiTrades
//
this.lblKpiTrades.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.lblKpiTrades.Font = new System.Drawing.Font("Segoe UI", 10F, System.Drawing.FontStyle.Bold);
this.lblKpiTrades.Margin = new System.Windows.Forms.Padding(4);
this.lblKpiTrades.MinimumSize = new System.Drawing.Size(130, 56);
this.lblKpiTrades.Name = "lblKpiTrades";
this.lblKpiTrades.Padding = new System.Windows.Forms.Padding(8);
this.lblKpiTrades.Size = new System.Drawing.Size(130, 56);
this.lblKpiTrades.TabIndex = 2;
this.lblKpiTrades.Text = "Trades\n—";
this.lblKpiTrades.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
//
lblKpiTrades.BorderStyle = BorderStyle.FixedSingle;
lblKpiTrades.Font = new Font("Segoe UI", 10F, FontStyle.Bold);
lblKpiTrades.Location = new Point(520, 14);
lblKpiTrades.Margin = new Padding(6, 7, 6, 7);
lblKpiTrades.MinimumSize = new Size(185, 92);
lblKpiTrades.Name = "lblKpiTrades";
lblKpiTrades.Padding = new Padding(11, 13, 11, 13);
lblKpiTrades.Size = new Size(185, 92);
lblKpiTrades.TabIndex = 2;
lblKpiTrades.Text = "Trades\n—";
lblKpiTrades.TextAlign = ContentAlignment.MiddleLeft;
//
// lblKpiAvg
//
this.lblKpiAvg.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.lblKpiAvg.Font = new System.Drawing.Font("Segoe UI", 10F, System.Drawing.FontStyle.Bold);
this.lblKpiAvg.Margin = new System.Windows.Forms.Padding(4);
this.lblKpiAvg.MinimumSize = new System.Drawing.Size(170, 56);
this.lblKpiAvg.Name = "lblKpiAvg";
this.lblKpiAvg.Padding = new System.Windows.Forms.Padding(8);
this.lblKpiAvg.Size = new System.Drawing.Size(170, 56);
this.lblKpiAvg.TabIndex = 3;
this.lblKpiAvg.Text = "Ø PnL/Trade\n—";
this.lblKpiAvg.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
//
lblKpiAvg.BorderStyle = BorderStyle.FixedSingle;
lblKpiAvg.Font = new Font("Segoe UI", 10F, FontStyle.Bold);
lblKpiAvg.Location = new Point(717, 14);
lblKpiAvg.Margin = new Padding(6, 7, 6, 7);
lblKpiAvg.MinimumSize = new Size(242, 92);
lblKpiAvg.Name = "lblKpiAvg";
lblKpiAvg.Padding = new Padding(11, 13, 11, 13);
lblKpiAvg.Size = new Size(242, 92);
lblKpiAvg.TabIndex = 3;
lblKpiAvg.Text = "Ø PnL/Trade\n—";
lblKpiAvg.TextAlign = ContentAlignment.MiddleLeft;
//
// lblKpiPf
//
this.lblKpiPf.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.lblKpiPf.Font = new System.Drawing.Font("Segoe UI", 10F, System.Drawing.FontStyle.Bold);
this.lblKpiPf.Margin = new System.Windows.Forms.Padding(4);
this.lblKpiPf.MinimumSize = new System.Drawing.Size(150, 56);
this.lblKpiPf.Name = "lblKpiPf";
this.lblKpiPf.Padding = new System.Windows.Forms.Padding(8);
this.lblKpiPf.Size = new System.Drawing.Size(150, 56);
this.lblKpiPf.TabIndex = 4;
this.lblKpiPf.Text = "Profit-Faktor\n—";
this.lblKpiPf.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
//
lblKpiPf.BorderStyle = BorderStyle.FixedSingle;
lblKpiPf.Font = new Font("Segoe UI", 10F, FontStyle.Bold);
lblKpiPf.Location = new Point(971, 14);
lblKpiPf.Margin = new Padding(6, 7, 6, 7);
lblKpiPf.MinimumSize = new Size(213, 92);
lblKpiPf.Name = "lblKpiPf";
lblKpiPf.Padding = new Padding(11, 13, 11, 13);
lblKpiPf.Size = new Size(213, 92);
lblKpiPf.TabIndex = 4;
lblKpiPf.Text = "Profit-Faktor\n—";
lblKpiPf.TextAlign = ContentAlignment.MiddleLeft;
//
// tabHistory
//
this.tabHistory.Controls.Add(this.dgvTrades);
this.tabHistory.Controls.Add(this.pnlHistFilters);
this.tabHistory.Location = new System.Drawing.Point(4, 24);
this.tabHistory.Name = "tabHistory";
this.tabHistory.Padding = new System.Windows.Forms.Padding(3);
this.tabHistory.Size = new System.Drawing.Size(1192, 595);
this.tabHistory.TabIndex = 1;
this.tabHistory.Text = "Tradehistorie";
this.tabHistory.UseVisualStyleBackColor = true;
//
//
tabHistory.Controls.Add(dgvTrades);
tabHistory.Controls.Add(pnlHistFilters);
tabHistory.Location = new Point(4, 34);
tabHistory.Margin = new Padding(4, 5, 4, 5);
tabHistory.Name = "tabHistory";
tabHistory.Padding = new Padding(4, 5, 4, 5);
tabHistory.Size = new Size(1706, 1000);
tabHistory.TabIndex = 1;
tabHistory.Text = "Tradehistorie";
tabHistory.UseVisualStyleBackColor = true;
//
// dgvTrades
//
this.dgvTrades.AllowUserToAddRows = false;
this.dgvTrades.AllowUserToDeleteRows = false;
this.dgvTrades.AutoGenerateColumns = false;
this.dgvTrades.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvTrades.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.colModule, this.colAccount, this.colMarket, this.colOutcome, this.colSide,
this.colEntry, this.colExit, this.colSize, this.colPnl, this.colPnlPct, this.colClosedAt});
this.dgvTrades.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvTrades.Location = new System.Drawing.Point(3, 39);
this.dgvTrades.Name = "dgvTrades";
this.dgvTrades.ReadOnly = true;
this.dgvTrades.RowHeadersVisible = false;
this.dgvTrades.Size = new System.Drawing.Size(1186, 553);
this.dgvTrades.TabIndex = 1;
//
dgvTrades.AllowUserToAddRows = false;
dgvTrades.AllowUserToDeleteRows = false;
dgvTrades.AutoGenerateColumns = false;
dgvTrades.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
dgvTrades.Columns.AddRange(new DataGridViewColumn[] { colModule, colAccount, colMarket, colOutcome, colSide, colEntry, colExit, colSize, colPnl, colPnlPct, colClosedAt });
dgvTrades.Dock = DockStyle.Fill;
dgvTrades.Location = new Point(4, 65);
dgvTrades.Margin = new Padding(4, 5, 4, 5);
dgvTrades.Name = "dgvTrades";
dgvTrades.ReadOnly = true;
dgvTrades.RowHeadersVisible = false;
dgvTrades.RowHeadersWidth = 62;
dgvTrades.Size = new Size(1698, 930);
dgvTrades.TabIndex = 1;
//
// colModule
//
this.colModule.DataPropertyName = "Module";
this.colModule.HeaderText = "Modul";
this.colModule.Name = "colModule";
this.colModule.Width = 110;
colModule.DataPropertyName = "Module";
colModule.HeaderText = "Modul";
colModule.Name = "colModule";
colModule.Width = 110;
//
// colAccount
//
this.colAccount.DataPropertyName = "Account";
this.colAccount.HeaderText = "Konto";
this.colAccount.Name = "colAccount";
this.colAccount.Width = 130;
colAccount.DataPropertyName = "Account";
colAccount.HeaderText = "Konto";
colAccount.Name = "colAccount";
colAccount.Width = 130;
//
// colMarket
//
this.colMarket.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.colMarket.DataPropertyName = "Market";
this.colMarket.HeaderText = "Markt";
this.colMarket.Name = "colMarket";
colMarket.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
colMarket.DataPropertyName = "Market";
colMarket.HeaderText = "Markt";
colMarket.Name = "colMarket";
//
// colOutcome
//
this.colOutcome.DataPropertyName = "Outcome";
this.colOutcome.HeaderText = "Outcome";
this.colOutcome.Name = "colOutcome";
this.colOutcome.Width = 80;
colOutcome.DataPropertyName = "Outcome";
colOutcome.HeaderText = "Outcome";
colOutcome.Name = "colOutcome";
colOutcome.Width = 80;
//
// colSide
//
this.colSide.DataPropertyName = "Side";
this.colSide.HeaderText = "Side";
this.colSide.Name = "colSide";
this.colSide.Width = 60;
colSide.DataPropertyName = "Side";
colSide.HeaderText = "Side";
colSide.Name = "colSide";
colSide.Width = 60;
//
// colEntry
//
this.colEntry.DataPropertyName = "EntryPrice";
this.colEntry.HeaderText = "Entry";
this.colEntry.Name = "colEntry";
this.colEntry.Width = 70;
colEntry.DataPropertyName = "EntryPrice";
colEntry.HeaderText = "Entry";
colEntry.Name = "colEntry";
colEntry.Width = 70;
//
// colExit
//
this.colExit.DataPropertyName = "ExitPrice";
this.colExit.HeaderText = "Exit";
this.colExit.Name = "colExit";
this.colExit.Width = 70;
colExit.DataPropertyName = "ExitPrice";
colExit.HeaderText = "Exit";
colExit.Name = "colExit";
colExit.Width = 70;
//
// colSize
//
this.colSize.DataPropertyName = "Size";
this.colSize.HeaderText = "Size";
this.colSize.Name = "colSize";
this.colSize.Width = 70;
colSize.DataPropertyName = "Size";
colSize.HeaderText = "Size";
colSize.Name = "colSize";
colSize.Width = 70;
//
// colPnl
//
this.colPnl.DataPropertyName = "RealizedPnl";
this.colPnl.HeaderText = "PnL";
this.colPnl.Name = "colPnl";
this.colPnl.Width = 80;
colPnl.DataPropertyName = "RealizedPnl";
colPnl.HeaderText = "PnL";
colPnl.Name = "colPnl";
colPnl.Width = 80;
//
// colPnlPct
//
this.colPnlPct.DataPropertyName = "PnlPercent";
this.colPnlPct.HeaderText = "PnL %";
this.colPnlPct.Name = "colPnlPct";
this.colPnlPct.Width = 70;
colPnlPct.DataPropertyName = "PnlPercent";
colPnlPct.HeaderText = "PnL %";
colPnlPct.Name = "colPnlPct";
colPnlPct.Width = 70;
//
// colClosedAt
//
this.colClosedAt.DataPropertyName = "ClosedAt";
this.colClosedAt.HeaderText = "Geschlossen";
this.colClosedAt.Name = "colClosedAt";
this.colClosedAt.Width = 140;
colClosedAt.DataPropertyName = "ClosedAt";
colClosedAt.HeaderText = "Geschlossen";
colClosedAt.Name = "colClosedAt";
colClosedAt.Width = 140;
//
// pnlHistFilters
//
this.pnlHistFilters.Controls.Add(this.cbWinLoss);
this.pnlHistFilters.Controls.Add(this.lblErgebnis);
this.pnlHistFilters.Controls.Add(this.tbSearch);
this.pnlHistFilters.Controls.Add(this.lblSuche);
this.pnlHistFilters.Dock = System.Windows.Forms.DockStyle.Top;
this.pnlHistFilters.Location = new System.Drawing.Point(3, 3);
this.pnlHistFilters.Name = "pnlHistFilters";
this.pnlHistFilters.Size = new System.Drawing.Size(1186, 36);
this.pnlHistFilters.TabIndex = 0;
//
// lblSuche
//
this.lblSuche.AutoSize = true;
this.lblSuche.Location = new System.Drawing.Point(6, 9);
this.lblSuche.Name = "lblSuche";
this.lblSuche.Size = new System.Drawing.Size(45, 15);
this.lblSuche.TabIndex = 0;
this.lblSuche.Text = "Suche:";
//
// tbSearch
//
this.tbSearch.Location = new System.Drawing.Point(57, 6);
this.tbSearch.Name = "tbSearch";
this.tbSearch.PlaceholderText = "Markt / Outcome …";
this.tbSearch.Size = new System.Drawing.Size(280, 23);
this.tbSearch.TabIndex = 1;
//
// lblErgebnis
//
this.lblErgebnis.AutoSize = true;
this.lblErgebnis.Location = new System.Drawing.Point(360, 9);
this.lblErgebnis.Name = "lblErgebnis";
this.lblErgebnis.Size = new System.Drawing.Size(58, 15);
this.lblErgebnis.TabIndex = 2;
this.lblErgebnis.Text = "Ergebnis:";
//
//
pnlHistFilters.Controls.Add(cbWinLoss);
pnlHistFilters.Controls.Add(lblErgebnis);
pnlHistFilters.Controls.Add(tbSearch);
pnlHistFilters.Controls.Add(lblSuche);
pnlHistFilters.Dock = DockStyle.Top;
pnlHistFilters.Location = new Point(4, 5);
pnlHistFilters.Margin = new Padding(4, 5, 4, 5);
pnlHistFilters.Name = "pnlHistFilters";
pnlHistFilters.Size = new Size(1698, 60);
pnlHistFilters.TabIndex = 0;
//
// cbWinLoss
//
this.cbWinLoss.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cbWinLoss.Location = new System.Drawing.Point(424, 6);
this.cbWinLoss.Name = "cbWinLoss";
this.cbWinLoss.Size = new System.Drawing.Size(150, 23);
this.cbWinLoss.TabIndex = 3;
//
//
cbWinLoss.DropDownStyle = ComboBoxStyle.DropDownList;
cbWinLoss.Location = new Point(606, 10);
cbWinLoss.Margin = new Padding(4, 5, 4, 5);
cbWinLoss.Name = "cbWinLoss";
cbWinLoss.Size = new Size(213, 33);
cbWinLoss.TabIndex = 3;
//
// lblErgebnis
//
lblErgebnis.AutoSize = true;
lblErgebnis.Location = new Point(514, 15);
lblErgebnis.Margin = new Padding(4, 0, 4, 0);
lblErgebnis.Name = "lblErgebnis";
lblErgebnis.Size = new Size(84, 25);
lblErgebnis.TabIndex = 2;
lblErgebnis.Text = "Ergebnis:";
//
// tbSearch
//
tbSearch.Location = new Point(81, 10);
tbSearch.Margin = new Padding(4, 5, 4, 5);
tbSearch.Name = "tbSearch";
tbSearch.PlaceholderText = "Markt / Outcome …";
tbSearch.Size = new Size(398, 31);
tbSearch.TabIndex = 1;
//
// lblSuche
//
lblSuche.AutoSize = true;
lblSuche.Location = new Point(9, 15);
lblSuche.Margin = new Padding(4, 0, 4, 0);
lblSuche.Name = "lblSuche";
lblSuche.Size = new Size(63, 25);
lblSuche.TabIndex = 0;
lblSuche.Text = "Suche:";
//
// DashboardView
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.tabControlDash);
this.Controls.Add(this.toolStripDash);
this.ClientSize = new System.Drawing.Size(1200, 650);
this.Name = "DashboardView";
this.Text = "Dashboard";
this.toolStripDash.ResumeLayout(false);
this.toolStripDash.PerformLayout();
this.tabControlDash.ResumeLayout(false);
this.tabDashboard.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.picEquity)).EndInit();
this.pnlChartsBottom.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.picDay)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.picModule)).EndInit();
this.flpKpis.ResumeLayout(false);
this.tabHistory.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dgvTrades)).EndInit();
this.pnlHistFilters.ResumeLayout(false);
this.pnlHistFilters.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
//
AutoScaleDimensions = new SizeF(10F, 25F);
AutoScaleMode = AutoScaleMode.Font;
ClientSize = new Size(1714, 1083);
Controls.Add(tabControlDash);
Controls.Add(toolStripDash);
Icon = (Icon)resources.GetObject("$this.Icon");
Margin = new Padding(4, 5, 4, 5);
Name = "DashboardView";
Text = "Dashboard";
toolStripDash.ResumeLayout(false);
toolStripDash.PerformLayout();
tabControlDash.ResumeLayout(false);
tabDashboard.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)picEquity).EndInit();
pnlChartsBottom.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)picDay).EndInit();
((System.ComponentModel.ISupportInitialize)picModule).EndInit();
flpKpis.ResumeLayout(false);
tabHistory.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)dgvTrades).EndInit();
pnlHistFilters.ResumeLayout(false);
pnlHistFilters.PerformLayout();
ResumeLayout(false);
PerformLayout();
}
#endregion
+93 -27
View File
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
@@ -26,36 +26,36 @@
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
@@ -117,4 +117,70 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="toolStripDash.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAMAEBAAAAAAIACtAgAANgAAABgYAAAAACAAogQAAOMCAAAgIAAAAAAgANoFAACFBwAAiVBORw0K
GgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACdElEQVR4nJ2Tz09TQRDHv7Pd1/ejII8SlKQoNEIk
lUQFPOLByKHx5KFaJEC8+BfomYNHverBmz9QwZuXxrtHGmJKIpAepAZaoqkF2sfre/vemm1AEhIJcZJN
ZnfmM9/JZIfwb6Njd4nTWCaTiczNzTGiI1756k3FTlIhKaVKPlRqi8fjTDnVajUEUG+1ISUdFG/l8SMR
UhFM3JxIXxoauqfpRjoMA0MFGYu4ftPNra2uLhBRTuWpQqoIHcJSyvap+9Mv7U47u1OrYbtSabV+oIpz
PT3osG3Uftc+zL9785CI9lQRlslkmJRSz96d/GRZVhaBF0QYiWKxKEdGR1pH+YyRCAM/sCwzq3IVo1hS
Cun07ae9vb2P8vm8l7g8HO1ghI31deiW1RqS4zgYGByE7/tYX1vzro6MRjd/lJ7lPuceUyqVGujv6/96
bWzMaDYcSn18RQsXh+HoJkzPhSCCxjUIIVCv1zF+Y1wahinzS0vuRun7FdZld92JRnXrZ7mMrUaDKrsO
XpSWIRp7KDsufMfBvrsP3dDRGe/E7s4uVSpl6LpuKZZ7onk+quvY3KqEEc7Y2+vjqC1/wWs/j8n2PhRJ
wwXTBzEGu8PGVrmshhrGYjGmWOa6bhhhTMw+mBWmaYlE4InnZ5PiybYj3m9+E4nyhij9qgqnXhdNzxO2
bYuZ2RmhGMVy4QkSQvBCocBVJ2fiXZiwLOS7u7EYOJjmhEXeju42C6YVg6ZpWCmscDUTxVIymbxl6PqU
1/TJMAxwjYNHOEwtghJxhFIiEfrw/ABB4CMIAriuh6iuSbfZnD/VfpxkrZ+oftp/wUR/l+n46p7W5B/I
LyhjthL6EQAAAABJRU5ErkJggolQTkcNChoKAAAADUlIRFIAAAAYAAAAGAgGAAAA4Hc9+AAABGlJREFU
eJztlEtsVFUYx//ncXvnTnt7OzN9DCJpZBzQDjRRogZsmSBiiHYlMTFxBUjcaVILcdc0cWHAkOgOISYs
3Ei6AJqIEB9AQtBiYqsz2tLWNAptKn1MpzP3MffcY84puOgComFj4pfc3Jlz/9/vO9/jHOC/buRBgv7+
fjo0NMRc1yW5XE6vFQoFWJYle3p6xMDAQPRvg9N8Ps8fJLqrof8kA0oIiaSU+k8mk8k1WvUvwGCp9vbH
9OL09G8ENTG/7Fa+npycLGgQIZBSqkDR/QL8Lejo6Nj7eGZT3yPr1+c2bsykbbsR5ZWSFtkNDsrlZUxN
Tc7evnWrMDE5/mGxWLywlrE2AAGBjMt4eudLOz/OZDfvS6db6Z07d/BLsSAW5hdEWKtpITcMJFNJ9mRH
jjU3N2N2di6avDk2eOXilberpDoLqbk6W3qvkYQQ2eQ0te96edfF7Tuefw0Q5Py5s+LSlxeixfl55lar
dbv3vKgf9VutqW9D584KpVU+ylcx1EYVc20G9p7de37Y0d2dHf7+O+GurLDD7x3BJydOYXZ2Bm7VRW9f
rxYeP3YcVr2FdDqNQ28dwrEPjiLe0CCeefY5du3q1ZuXvrq0DUBZZ3A3Eu3e0XU6t2VL9sbwcG3mj1ss
7iQwMTGFWi0AYwyJRAInT5zUTyKZ0Gu1Wg1TE1NwGh0oH+WrGF3bu07fY+sMOjd37ss9teWzWNxiSwuL
bMXziKhWsOgFaLAsxDiHJICMVntHiNqTRBiGqFar6kwgZsUQt+KyKZEQbqUqiiOFN0bHRgeVktsp+/U6
0zR9z5O9R/qIk0zh01+HcRglVGwHhAAkEpC6bxKESDBGYcUstLS26BFNJpPoO/wu8X1PxizLVEzF5m1t
bU84TuPOlXJZEkpYYWQUrhA4WvLx0UQRpTDEcacdzYEPEkWQhIBTqifJNKmGmzFTZzMyOoogCJjv+VIx
FZvHDONRzoxWxrkol8vszOdnYDsOvtjWBX/kOk5Nj4O3uXjfSqNeCFhEosY4DCFWh55SWFYcruth8Mwg
6kyT2rYtFFOzCeFmGIZSmWEYOm01vB2pJnybexp7iyO4MPc7GuwK3uEtqCcEtsERSQlKGTg3FBSmaUL5
CyHUiZaKqdgUDAgCXzd7/8H92Nq5FZWVCoTvY0PMxPX2DPJuDK96Czjm3cbtShVzrg8RBLoskRD6hPpB
oH0PHDygM9NMBnAGKGFEGY04YxHjFFKqqyZEqbyMdYGHKzyO7hkP1xrLSEVlvMkc/Bkm0EwIjDoDQkZ6
bA3OdfMVSzEVm2Sz2VcSTtNQdtNmNDY5qkkQodAlEGqHajRlhLmaQCcFNlCJHyMClxswKQXRZWK62aof
KuDyUgk3x8ewWFrq4a7rThuG8c3PP42uE6GIJAHlhIIwouedktU3ZxTnAXgSSEUShhQQUqp6Q4pI326R
FCCSRIwzWhPhjGKr2lvqmgAQx8O1qrouVACSz+dVuR66Xb58eXWW/zfcx/4CcQn+oRLx+roAAAAASUVO
RK5CYIKJUE5HDQoaCgAAAA1JSERSAAAAIAAAACAIBgAAAHN6evQAAAWhSURBVHic7VfLT1RXHP7O4947
TtvxgRWR0WqgCIiI4qCCZTBpmtrHogubmKa7VvsvdFNjY9JVFyZNTI0Lk66bbhoxTRO1QUBgRhRLgWDC
W5HyGgrMfZx7mt8Znq5s0sjGM3OYM+fxfb/z/R6XYVprbGTjG8qOVwbglQvAXjRYEkcTsWg0+rXWOM2A
Q5bjID8/36yNj4/Dd11o4AFjaFxYWPiuvaM9838YwGpP1B2zpLwai8UOFpfsR8n+Ury1dy+mJicxPT1p
Nm3dmodteXkYHBhAX28P+vt6kclkuvwgONfccvceQLb9dwNk8mT976+9EUser6vF7ngcf3V3o/vPR3jc
/9gcXK4hjDHDUFRchPIDFSgrL8fwyAha7zZjfi5z507TH+8CCF7UAJZI1BRtsp2u6pqaSOWhKvx2sxEP
H3RCSgkpBRjjUEphz5495sDQ0BCEENA6RBAoBEEAOvfe+6fNuVRbW3bRcw+2t7c9fl4N9jx59ZGjxdFI
pK+uoQGWEGi88St27doFzgVGR0aNEQThei4ufnvRHLrwzQU4tmPQiLwwXogwVBgbG8PpDz6CrxTu3r6N
hWy2JJXu6F9rBH/OAHtTJNJ3rLYWgefhZuMNkMrnvjqPc+e/BOMMQgoIS0BaElxy02lMc7RGe2gvnaGz
hEFYhEnYxLHOz1ht1skTdenSsjL4QYD21lZEnIiRdHhwOLdZSAhOLmBgNsOli5fMPN0+5wJt9gwODOXm
LRtCSjQ3NSFx/DgIGxrpppamKgD+WhfwmqM1X+zIz/+xorISd27dMoBcSigw428ObVwi+Kpoa4NwuYUh
xUEu3giD1ug7YSRPnUJnKoWpqanzbR1t12j7sgKOlPIypVdX1wM0NDSAcY7bLa044M8jBENPdDNEGEIY
QkO/LpSWjSFSEydLjciTyaQxrKvrIYreLkEm1XEZwE8AFuk67PChwx9Ho9FIqDXmZueQbKjHOw31UFzg
am8LrvU3o1hl4VsWQgq0MIDvr/ZABWBMQwhmXJDLFplTAAz1yZMGMzObQahDEBdxEjcZYFuW9Xne9jxM
jI/DdmyMjo6ZiI84Fs5O5W5yvfsW4vMzmA0Usq4Pz/dMJtCn79GY5gJoMoQCdalLW2KE8EbHDDZxEBdx
EjeJGatJJHpKS8sLZmZnoAJl5DKB4Th4NDCI6odp/ExVlwGfxKvRKxw4QQChQ+NjzvmK9JZlw7Yt2LZt
vERY5H+DR/ukwJbNW9DT0/2krb29lBSwGHgBbaQCIy0Llm3DdhzYQqBi3z60llfisxkACvhlNIVk5hkm
PR//uB6yrgvXdeF5HnzfRxBQV1AqNBlAeIRFmDQmDsMFXkDcZICgACIQsnA5mMwYGsp3UVKwE/fKE4hP
UNwCV6b7cWbuCSayWcwtLuaMMO7wTUwoFUCFyihmsmkpcwibxsS1xCPMCpVQ3/eMnGc+PWN6LqcUdBAg
9Fxssy2EJWXYPZ5b+t59irMLf2Ni0cXcYhau6yHw/Ry5CqHDXCcDqC3jEgdxEedqIdLayLfJthEvLFzJ
bRUy0D7jR99DTAqMFexG/MkwRvKBH/gUlOfiuh8zJXU5DqgM0zlNQnMOLvgKLo3drG84VwygoecF2LLV
Qep+2kxYlgUVhqAXfdLtgmwWkVBhNBLFzqcLeLoNuMLnEfU8XGfbYUtBKWUUoBcVDDLAtmyk0mnjEqqa
s9OzK1WEAdhxpOrwIyHEm1VHqleqmGbMVD4KGio8pvxyGjOEjMEDQ5aOaw0HGjb5l6KGpNfaXJBkpjHV
F5o3N5YSnekUZcZEuvN+BSmg/MBvA/Bhx71Ws3m1vq37s2aO0f1Wb6FNLVz7jMmt5t7rGl+6yBKnIrzX
AcRJCUoLvJxGD6JnAEbIAArTKD0PXuJ/ySSgC2ABG93Yq9+G2OC24Qb8C0/mvXXOnsjVAAAAAElFTkSu
QmCC
</value>
</data>
</root>
+95 -94
View File
@@ -17,126 +17,127 @@ namespace PolyTraderSharp.Ui.Views
private void InitializeComponent()
{
this.dgvJobs = new System.Windows.Forms.DataGridView();
this.colJobName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colStatus = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colLastRun = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colNextRun = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.col_dgv_jobs_Enabled = new System.Windows.Forms.DataGridViewCheckBoxColumn();
this.col_dgv_jobs_Run = new System.Windows.Forms.DataGridViewButtonColumn();
this.colDescription = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.toolStripJobs = new System.Windows.Forms.ToolStrip();
this.tsJobsRefresh = new System.Windows.Forms.ToolStripButton();
((System.ComponentModel.ISupportInitialize)(this.dgvJobs)).BeginInit();
this.toolStripJobs.SuspendLayout();
this.SuspendLayout();
//
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(JobsView));
dgvJobs = new DataGridView();
colJobName = new DataGridViewTextBoxColumn();
colStatus = new DataGridViewTextBoxColumn();
colLastRun = new DataGridViewTextBoxColumn();
colNextRun = new DataGridViewTextBoxColumn();
col_dgv_jobs_Enabled = new DataGridViewCheckBoxColumn();
col_dgv_jobs_Run = new DataGridViewButtonColumn();
colDescription = new DataGridViewTextBoxColumn();
toolStripJobs = new ToolStrip();
tsJobsRefresh = new ToolStripButton();
((System.ComponentModel.ISupportInitialize)dgvJobs).BeginInit();
toolStripJobs.SuspendLayout();
SuspendLayout();
//
// dgvJobs
//
this.dgvJobs.AllowUserToAddRows = false;
this.dgvJobs.AllowUserToDeleteRows = false;
this.dgvJobs.AutoGenerateColumns = false;
this.dgvJobs.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvJobs.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.colJobName,
this.colStatus,
this.colLastRun,
this.colNextRun,
this.col_dgv_jobs_Enabled,
this.col_dgv_jobs_Run,
this.colDescription});
this.dgvJobs.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvJobs.Location = new System.Drawing.Point(0, 0);
this.dgvJobs.Name = "dgvJobs";
this.dgvJobs.RowHeadersVisible = false;
this.dgvJobs.Size = new System.Drawing.Size(900, 500);
this.dgvJobs.TabIndex = 0;
//
dgvJobs.AllowUserToAddRows = false;
dgvJobs.AllowUserToDeleteRows = false;
dgvJobs.AutoGenerateColumns = false;
dgvJobs.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
dgvJobs.Columns.AddRange(new DataGridViewColumn[] { colJobName, colStatus, colLastRun, colNextRun, col_dgv_jobs_Enabled, col_dgv_jobs_Run, colDescription });
dgvJobs.Dock = DockStyle.Fill;
dgvJobs.Location = new Point(0, 34);
dgvJobs.Margin = new Padding(4, 5, 4, 5);
dgvJobs.Name = "dgvJobs";
dgvJobs.RowHeadersVisible = false;
dgvJobs.RowHeadersWidth = 62;
dgvJobs.Size = new Size(1429, 799);
dgvJobs.TabIndex = 0;
//
// colJobName
//
this.colJobName.DataPropertyName = "JobName";
this.colJobName.HeaderText = "Job Name";
this.colJobName.Name = "colJobName";
this.colJobName.ReadOnly = true;
this.colJobName.Width = 150;
colJobName.DataPropertyName = "JobName";
colJobName.HeaderText = "Job Name";
colJobName.Name = "colJobName";
colJobName.ReadOnly = true;
colJobName.Width = 150;
//
// colStatus
//
this.colStatus.DataPropertyName = "StatusText";
this.colStatus.HeaderText = "Status";
this.colStatus.Name = "colStatus";
this.colStatus.ReadOnly = true;
this.colStatus.Width = 150;
colStatus.DataPropertyName = "StatusText";
colStatus.HeaderText = "Status";
colStatus.Name = "colStatus";
colStatus.ReadOnly = true;
colStatus.Width = 150;
//
// colLastRun
//
this.colLastRun.DataPropertyName = "LastRun";
this.colLastRun.HeaderText = "Zuletzt ausgeführt";
this.colLastRun.Name = "colLastRun";
this.colLastRun.ReadOnly = true;
this.colLastRun.Width = 130;
colLastRun.DataPropertyName = "LastRun";
colLastRun.HeaderText = "Zuletzt ausgeführt";
colLastRun.Name = "colLastRun";
colLastRun.ReadOnly = true;
colLastRun.Width = 130;
//
// colNextRun
//
this.colNextRun.DataPropertyName = "NextRun";
this.colNextRun.HeaderText = "Nächster Lauf";
this.colNextRun.Name = "colNextRun";
this.colNextRun.ReadOnly = true;
this.colNextRun.Width = 130;
colNextRun.DataPropertyName = "NextRun";
colNextRun.HeaderText = "Nächster Lauf";
colNextRun.Name = "colNextRun";
colNextRun.ReadOnly = true;
colNextRun.Width = 130;
//
// col_dgv_jobs_Enabled
//
this.col_dgv_jobs_Enabled.DataPropertyName = "IsEnabled";
this.col_dgv_jobs_Enabled.HeaderText = "Aktiv";
this.col_dgv_jobs_Enabled.Name = "col_dgv_jobs_Enabled";
this.col_dgv_jobs_Enabled.Width = 60;
col_dgv_jobs_Enabled.DataPropertyName = "IsEnabled";
col_dgv_jobs_Enabled.HeaderText = "Aktiv";
col_dgv_jobs_Enabled.Name = "col_dgv_jobs_Enabled";
col_dgv_jobs_Enabled.Width = 60;
//
// col_dgv_jobs_Run
//
this.col_dgv_jobs_Run.HeaderText = "Aktion";
this.col_dgv_jobs_Run.Name = "col_dgv_jobs_Run";
this.col_dgv_jobs_Run.Text = "Run Now";
this.col_dgv_jobs_Run.UseColumnTextForButtonValue = true;
this.col_dgv_jobs_Run.Width = 90;
col_dgv_jobs_Run.HeaderText = "Aktion";
col_dgv_jobs_Run.MinimumWidth = 8;
col_dgv_jobs_Run.Name = "col_dgv_jobs_Run";
col_dgv_jobs_Run.Text = "Run Now";
col_dgv_jobs_Run.UseColumnTextForButtonValue = true;
col_dgv_jobs_Run.Width = 90;
//
// colDescription
//
this.colDescription.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.colDescription.DataPropertyName = "Description";
this.colDescription.HeaderText = "Beschreibung";
this.colDescription.Name = "colDescription";
this.colDescription.ReadOnly = true;
colDescription.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
colDescription.DataPropertyName = "Description";
colDescription.HeaderText = "Beschreibung";
colDescription.Name = "colDescription";
colDescription.ReadOnly = true;
//
// toolStripJobs
//
this.toolStripJobs.ImageScalingSize = new System.Drawing.Size(24, 24);
this.toolStripJobs.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tsJobsRefresh});
this.toolStripJobs.Location = new System.Drawing.Point(0, 0);
this.toolStripJobs.Name = "toolStripJobs";
this.toolStripJobs.Size = new System.Drawing.Size(1000, 25);
this.toolStripJobs.TabIndex = 1;
//
//
toolStripJobs.ImageScalingSize = new Size(24, 24);
toolStripJobs.Items.AddRange(new ToolStripItem[] { tsJobsRefresh });
toolStripJobs.Location = new Point(0, 0);
toolStripJobs.Name = "toolStripJobs";
toolStripJobs.Padding = new Padding(0, 0, 3, 0);
toolStripJobs.Size = new Size(1429, 34);
toolStripJobs.TabIndex = 1;
//
// tsJobsRefresh
//
this.tsJobsRefresh.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.tsJobsRefresh.Name = "tsJobsRefresh";
this.tsJobsRefresh.Text = "Aktualisieren";
this.tsJobsRefresh.ToolTipText = "Job-Liste neu zeichnen (Status/Zeiten aktualisieren).";
//
//
tsJobsRefresh.DisplayStyle = ToolStripItemDisplayStyle.Text;
tsJobsRefresh.Name = "tsJobsRefresh";
tsJobsRefresh.Size = new Size(116, 29);
tsJobsRefresh.Text = "Aktualisieren";
tsJobsRefresh.ToolTipText = "Job-Liste neu zeichnen (Status/Zeiten aktualisieren).";
//
// JobsView
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.dgvJobs);
this.Controls.Add(this.toolStripJobs);
this.ClientSize = new System.Drawing.Size(1000, 500);
this.Name = "JobsView";
this.Text = "Server Jobs";
((System.ComponentModel.ISupportInitialize)(this.dgvJobs)).EndInit();
this.toolStripJobs.ResumeLayout(false);
this.toolStripJobs.PerformLayout();
this.ResumeLayout(false);
//
AutoScaleDimensions = new SizeF(10F, 25F);
AutoScaleMode = AutoScaleMode.Font;
ClientSize = new Size(1429, 833);
Controls.Add(dgvJobs);
Controls.Add(toolStripJobs);
Icon = (Icon)resources.GetObject("$this.Icon");
Margin = new Padding(4, 5, 4, 5);
Name = "JobsView";
Text = "Server Jobs";
((System.ComponentModel.ISupportInitialize)dgvJobs).EndInit();
toolStripJobs.ResumeLayout(false);
toolStripJobs.PerformLayout();
ResumeLayout(false);
PerformLayout();
}
#endregion
+99 -27
View File
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
@@ -26,36 +26,36 @@
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
@@ -117,4 +117,76 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="toolStripJobs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
XYlhrDInAAAAAElFTkSuQmCC
</value>
</data>
</root>
+20 -19
View File
@@ -17,6 +17,7 @@ namespace PolyTraderSharp.Ui.Views
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SettingsView));
propertyGrid = new PropertyGrid();
tabControl1 = new TabControl();
tabPage1 = new TabPage();
@@ -42,35 +43,36 @@ namespace PolyTraderSharp.Ui.Views
// propertyGrid
//
propertyGrid.Dock = DockStyle.Fill;
propertyGrid.Location = new Point(3, 37);
propertyGrid.Name = "propertyGrid";
propertyGrid.Size = new Size(1171, 742);
propertyGrid.TabIndex = 1;
//
//
// tabControl1
//
//
tabControl1.Controls.Add(tabPage1);
tabControl1.Controls.Add(tabPage2);
tabControl1.Dock = DockStyle.Fill;
tabControl1.Location = new Point(0, 0);
tabControl1.Name = "tabControl1";
tabControl1.SelectedIndex = 0;
tabControl1.Size = new Size(1185, 800);
tabControl1.Size = new Size(1185, 820);
tabControl1.TabIndex = 3;
//
//
// tabPage1
//
//
tabPage1.Controls.Add(propertyGrid);
tabPage1.Controls.Add(toolStrip2);
tabPage1.Location = new Point(4, 34);
tabPage1.Name = "tabPage1";
tabPage1.Padding = new Padding(3);
tabPage1.Size = new Size(1177, 887);
tabPage1.Size = new Size(1177, 782);
tabPage1.TabIndex = 0;
tabPage1.Text = "General Settings";
tabPage1.UseVisualStyleBackColor = true;
//
// toolStrip2
//
toolStrip2.Dock = DockStyle.Top;
toolStrip2.ImageScalingSize = new Size(24, 24);
toolStrip2.Items.AddRange(new ToolStripItem[] { btn_save, btn_loadsettings, btnGenMasterKey, btnSetOpenRouterKey });
toolStrip2.Location = new Point(3, 3);
@@ -94,23 +96,23 @@ namespace PolyTraderSharp.Ui.Views
btn_loadsettings.Name = "btn_loadsettings";
btn_loadsettings.Size = new Size(223, 29);
btn_loadsettings.Text = "Load Settings from File";
//
//
// btnGenMasterKey
//
//
btnGenMasterKey.DisplayStyle = ToolStripItemDisplayStyle.Text;
btnGenMasterKey.Name = "btnGenMasterKey";
btnGenMasterKey.Size = new Size(200, 29);
btnGenMasterKey.Size = new Size(182, 29);
btnGenMasterKey.Text = "Master-Key erzeugen";
btnGenMasterKey.ToolTipText = "Erzeugt einen zufälligen AES-Master-Key (nur wenn noch keiner existiert).";
//
//
// btnSetOpenRouterKey
//
//
btnSetOpenRouterKey.DisplayStyle = ToolStripItemDisplayStyle.Text;
btnSetOpenRouterKey.Name = "btnSetOpenRouterKey";
btnSetOpenRouterKey.Size = new Size(200, 29);
btnSetOpenRouterKey.Size = new Size(220, 29);
btnSetOpenRouterKey.Text = "OpenRouter-Key setzen …";
btnSetOpenRouterKey.ToolTipText = "Speichert den OpenRouter-API-Key für den Supervisor (gitignorierte Datei openrouter.key).";
//
//
// tabPage2
//
tabPage2.Controls.Add(pgAccount);
@@ -119,7 +121,7 @@ namespace PolyTraderSharp.Ui.Views
tabPage2.Location = new Point(4, 34);
tabPage2.Name = "tabPage2";
tabPage2.Padding = new Padding(3);
tabPage2.Size = new Size(1177, 887);
tabPage2.Size = new Size(1177, 762);
tabPage2.TabIndex = 1;
tabPage2.Text = "Polymarket Accounts";
tabPage2.UseVisualStyleBackColor = true;
@@ -129,7 +131,7 @@ namespace PolyTraderSharp.Ui.Views
pgAccount.Dock = DockStyle.Fill;
pgAccount.Location = new Point(623, 37);
pgAccount.Name = "pgAccount";
pgAccount.Size = new Size(551, 847);
pgAccount.Size = new Size(551, 722);
pgAccount.TabIndex = 2;
//
// dgvAccounts
@@ -145,12 +147,11 @@ namespace PolyTraderSharp.Ui.Views
dgvAccounts.RowHeadersVisible = false;
dgvAccounts.RowHeadersWidth = 62;
dgvAccounts.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
dgvAccounts.Size = new Size(620, 847);
dgvAccounts.Size = new Size(620, 722);
dgvAccounts.TabIndex = 1;
//
// toolStripAccounts
//
toolStripAccounts.Dock = DockStyle.Top;
toolStripAccounts.ImageScalingSize = new Size(24, 24);
toolStripAccounts.Items.AddRange(new ToolStripItem[] { btnAccNew, btnAccDelete });
toolStripAccounts.Location = new Point(3, 3);
@@ -178,6 +179,7 @@ namespace PolyTraderSharp.Ui.Views
AutoScaleMode = AutoScaleMode.Font;
ClientSize = new Size(1185, 820);
Controls.Add(tabControl1);
Icon = (Icon)resources.GetObject("$this.Icon");
Margin = new Padding(4, 5, 4, 5);
Name = "SettingsView";
Text = "Server Settings";
@@ -192,7 +194,6 @@ namespace PolyTraderSharp.Ui.Views
toolStripAccounts.ResumeLayout(false);
toolStripAccounts.PerformLayout();
ResumeLayout(false);
PerformLayout();
}
#endregion
+93 -3
View File
@@ -117,13 +117,103 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>225, 17</value>
</metadata>
<metadata name="toolStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>370, 17</value>
</metadata>
<metadata name="toolStripAccounts.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
</root>
+308 -338
View File
@@ -18,358 +18,328 @@ namespace PolyTraderSharp.Ui.Views
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.tabControlTerminal = new System.Windows.Forms.TabControl();
this.tabLive = new System.Windows.Forms.TabPage();
this.pnlTop = new System.Windows.Forms.Panel();
this.btnAutoscroll = new System.Windows.Forms.Button();
this.cbLogLevel = new System.Windows.Forms.ComboBox();
this.lblFilter = new System.Windows.Forms.Label();
this.rtbTerminal = new System.Windows.Forms.RichTextBox();
this.contextMenuTerminal = new System.Windows.Forms.ContextMenuStrip(this.components);
this.miCopy = new System.Windows.Forms.ToolStripMenuItem();
this.miSelectAll = new System.Windows.Forms.ToolStripMenuItem();
this.miCopyAll = new System.Windows.Forms.ToolStripMenuItem();
this.miSep1 = new System.Windows.Forms.ToolStripSeparator();
this.miClear = new System.Windows.Forms.ToolStripMenuItem();
this.tabViewer = new System.Windows.Forms.TabPage();
this.dgvLogs = new System.Windows.Forms.DataGridView();
this.colLogTime = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colLogLevel = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colLogCid = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colLogMsg = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.pnlViewerTop = new System.Windows.Forms.Panel();
this.lblVDatum = new System.Windows.Forms.Label();
this.dtViewerDate = new System.Windows.Forms.DateTimePicker();
this.lblVLevel = new System.Windows.Forms.Label();
this.cbViewerLevel = new System.Windows.Forms.ComboBox();
this.lblVCid = new System.Windows.Forms.Label();
this.tbViewerCid = new System.Windows.Forms.TextBox();
this.lblVText = new System.Windows.Forms.Label();
this.tbViewerText = new System.Windows.Forms.TextBox();
this.btnViewerLoad = new System.Windows.Forms.Button();
this.lblViewerStatus = new System.Windows.Forms.Label();
this.tabControlTerminal.SuspendLayout();
this.tabLive.SuspendLayout();
this.pnlTop.SuspendLayout();
this.contextMenuTerminal.SuspendLayout();
this.tabViewer.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dgvLogs)).BeginInit();
this.pnlViewerTop.SuspendLayout();
this.SuspendLayout();
//
components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TerminalView));
tabControlTerminal = new TabControl();
tabLive = new TabPage();
rtbTerminal = new RichTextBox();
contextMenuTerminal = new ContextMenuStrip(components);
miCopy = new ToolStripMenuItem();
miSelectAll = new ToolStripMenuItem();
miCopyAll = new ToolStripMenuItem();
miSep1 = new ToolStripSeparator();
miClear = new ToolStripMenuItem();
pnlTop = new Panel();
btnAutoscroll = new Button();
cbLogLevel = new ComboBox();
lblFilter = new Label();
tabViewer = new TabPage();
dgvLogs = new DataGridView();
pnlViewerTop = new Panel();
lblViewerStatus = new Label();
btnViewerLoad = new Button();
tbViewerText = new TextBox();
lblVText = new Label();
tbViewerCid = new TextBox();
lblVCid = new Label();
cbViewerLevel = new ComboBox();
lblVLevel = new Label();
dtViewerDate = new DateTimePicker();
lblVDatum = new Label();
tabControlTerminal.SuspendLayout();
tabLive.SuspendLayout();
contextMenuTerminal.SuspendLayout();
pnlTop.SuspendLayout();
tabViewer.SuspendLayout();
((System.ComponentModel.ISupportInitialize)dgvLogs).BeginInit();
pnlViewerTop.SuspendLayout();
SuspendLayout();
//
// tabControlTerminal
//
this.tabControlTerminal.Controls.Add(this.tabLive);
this.tabControlTerminal.Controls.Add(this.tabViewer);
this.tabControlTerminal.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabControlTerminal.Location = new System.Drawing.Point(0, 0);
this.tabControlTerminal.Name = "tabControlTerminal";
this.tabControlTerminal.SelectedIndex = 0;
this.tabControlTerminal.Size = new System.Drawing.Size(1000, 650);
this.tabControlTerminal.TabIndex = 0;
//
//
tabControlTerminal.Controls.Add(tabLive);
tabControlTerminal.Controls.Add(tabViewer);
tabControlTerminal.Dock = DockStyle.Fill;
tabControlTerminal.Location = new Point(0, 0);
tabControlTerminal.Margin = new Padding(4, 5, 4, 5);
tabControlTerminal.Name = "tabControlTerminal";
tabControlTerminal.SelectedIndex = 0;
tabControlTerminal.Size = new Size(1429, 1083);
tabControlTerminal.TabIndex = 0;
//
// tabLive
//
this.tabLive.Controls.Add(this.rtbTerminal);
this.tabLive.Controls.Add(this.pnlTop);
this.tabLive.Location = new System.Drawing.Point(4, 24);
this.tabLive.Name = "tabLive";
this.tabLive.Padding = new System.Windows.Forms.Padding(3);
this.tabLive.Size = new System.Drawing.Size(992, 622);
this.tabLive.TabIndex = 0;
this.tabLive.Text = "Live";
this.tabLive.UseVisualStyleBackColor = true;
//
// pnlTop
//
this.pnlTop.Controls.Add(this.btnAutoscroll);
this.pnlTop.Controls.Add(this.cbLogLevel);
this.pnlTop.Controls.Add(this.lblFilter);
this.pnlTop.Dock = System.Windows.Forms.DockStyle.Top;
this.pnlTop.Location = new System.Drawing.Point(3, 3);
this.pnlTop.Name = "pnlTop";
this.pnlTop.Size = new System.Drawing.Size(986, 36);
this.pnlTop.TabIndex = 0;
//
// btnAutoscroll
//
this.btnAutoscroll.BackColor = System.Drawing.Color.LightGreen;
this.btnAutoscroll.Location = new System.Drawing.Point(224, 5);
this.btnAutoscroll.Name = "btnAutoscroll";
this.btnAutoscroll.Size = new System.Drawing.Size(150, 26);
this.btnAutoscroll.TabIndex = 2;
this.btnAutoscroll.Text = "Stop Autoscroll";
this.btnAutoscroll.UseVisualStyleBackColor = false;
//
// cbLogLevel
//
this.cbLogLevel.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cbLogLevel.Items.AddRange(new object[] {
"Alle",
"Debug",
"Info",
"Warning",
"Error",
"Trade",
"TradeReasoning"});
this.cbLogLevel.Location = new System.Drawing.Point(52, 6);
this.cbLogLevel.Name = "cbLogLevel";
this.cbLogLevel.Size = new System.Drawing.Size(160, 23);
this.cbLogLevel.TabIndex = 1;
//
// lblFilter
//
this.lblFilter.AutoSize = true;
this.lblFilter.Location = new System.Drawing.Point(8, 10);
this.lblFilter.Name = "lblFilter";
this.lblFilter.Size = new System.Drawing.Size(38, 15);
this.lblFilter.TabIndex = 0;
this.lblFilter.Text = "Level:";
//
//
tabLive.Controls.Add(rtbTerminal);
tabLive.Controls.Add(pnlTop);
tabLive.Location = new Point(4, 34);
tabLive.Margin = new Padding(4, 5, 4, 5);
tabLive.Name = "tabLive";
tabLive.Padding = new Padding(4, 5, 4, 5);
tabLive.Size = new Size(1421, 1045);
tabLive.TabIndex = 0;
tabLive.Text = "Live";
tabLive.UseVisualStyleBackColor = true;
//
// rtbTerminal
//
this.rtbTerminal.BackColor = System.Drawing.Color.Black;
this.rtbTerminal.ContextMenuStrip = this.contextMenuTerminal;
this.rtbTerminal.Dock = System.Windows.Forms.DockStyle.Fill;
this.rtbTerminal.ForeColor = System.Drawing.Color.White;
this.rtbTerminal.Location = new System.Drawing.Point(3, 39);
this.rtbTerminal.Name = "rtbTerminal";
this.rtbTerminal.ReadOnly = true;
this.rtbTerminal.Size = new System.Drawing.Size(986, 580);
this.rtbTerminal.TabIndex = 1;
this.rtbTerminal.Text = "";
//
//
rtbTerminal.BackColor = Color.Black;
rtbTerminal.ContextMenuStrip = contextMenuTerminal;
rtbTerminal.Dock = DockStyle.Fill;
rtbTerminal.ForeColor = Color.White;
rtbTerminal.Location = new Point(4, 65);
rtbTerminal.Margin = new Padding(4, 5, 4, 5);
rtbTerminal.Name = "rtbTerminal";
rtbTerminal.ReadOnly = true;
rtbTerminal.Size = new Size(1413, 975);
rtbTerminal.TabIndex = 1;
rtbTerminal.Text = "";
//
// contextMenuTerminal
//
this.contextMenuTerminal.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.miCopy,
this.miSelectAll,
this.miCopyAll,
this.miSep1,
this.miClear});
this.contextMenuTerminal.Name = "contextMenuTerminal";
//
//
contextMenuTerminal.ImageScalingSize = new Size(24, 24);
contextMenuTerminal.Items.AddRange(new ToolStripItem[] { miCopy, miSelectAll, miCopyAll, miSep1, miClear });
contextMenuTerminal.Name = "contextMenuTerminal";
contextMenuTerminal.Size = new Size(277, 138);
//
// miCopy
//
this.miCopy.Name = "miCopy";
this.miCopy.ShortcutKeyDisplayString = "Strg+C";
this.miCopy.Text = "Kopieren";
//
//
miCopy.Name = "miCopy";
miCopy.ShortcutKeyDisplayString = "Strg+C";
miCopy.Size = new Size(276, 32);
miCopy.Text = "Kopieren";
//
// miSelectAll
//
this.miSelectAll.Name = "miSelectAll";
this.miSelectAll.ShortcutKeyDisplayString = "Strg+A";
this.miSelectAll.Text = "Alles auswählen";
//
//
miSelectAll.Name = "miSelectAll";
miSelectAll.ShortcutKeyDisplayString = "Strg+A";
miSelectAll.Size = new Size(276, 32);
miSelectAll.Text = "Alles auswählen";
//
// miCopyAll
//
this.miCopyAll.Name = "miCopyAll";
this.miCopyAll.Text = "Alles kopieren";
//
//
miCopyAll.Name = "miCopyAll";
miCopyAll.Size = new Size(276, 32);
miCopyAll.Text = "Alles kopieren";
//
// miSep1
//
this.miSep1.Name = "miSep1";
//
//
miSep1.Name = "miSep1";
miSep1.Size = new Size(273, 6);
//
// miClear
//
this.miClear.Name = "miClear";
this.miClear.Text = "Terminal leeren";
//
//
miClear.Name = "miClear";
miClear.Size = new Size(276, 32);
miClear.Text = "Terminal leeren";
//
// pnlTop
//
pnlTop.Controls.Add(btnAutoscroll);
pnlTop.Controls.Add(cbLogLevel);
pnlTop.Controls.Add(lblFilter);
pnlTop.Dock = DockStyle.Top;
pnlTop.Location = new Point(4, 5);
pnlTop.Margin = new Padding(4, 5, 4, 5);
pnlTop.Name = "pnlTop";
pnlTop.Size = new Size(1413, 60);
pnlTop.TabIndex = 0;
//
// btnAutoscroll
//
btnAutoscroll.BackColor = Color.LightGreen;
btnAutoscroll.Location = new Point(320, 8);
btnAutoscroll.Margin = new Padding(4, 5, 4, 5);
btnAutoscroll.Name = "btnAutoscroll";
btnAutoscroll.Size = new Size(214, 43);
btnAutoscroll.TabIndex = 2;
btnAutoscroll.Text = "Stop Autoscroll";
btnAutoscroll.UseVisualStyleBackColor = false;
//
// cbLogLevel
//
cbLogLevel.DropDownStyle = ComboBoxStyle.DropDownList;
cbLogLevel.Items.AddRange(new object[] { "Alle", "Debug", "Info", "Warning", "Error", "Trade", "TradeReasoning" });
cbLogLevel.Location = new Point(74, 10);
cbLogLevel.Margin = new Padding(4, 5, 4, 5);
cbLogLevel.Name = "cbLogLevel";
cbLogLevel.Size = new Size(227, 33);
cbLogLevel.TabIndex = 1;
//
// lblFilter
//
lblFilter.AutoSize = true;
lblFilter.Location = new Point(11, 17);
lblFilter.Margin = new Padding(4, 0, 4, 0);
lblFilter.Name = "lblFilter";
lblFilter.Size = new Size(55, 25);
lblFilter.TabIndex = 0;
lblFilter.Text = "Level:";
//
// tabViewer
//
this.tabViewer.Controls.Add(this.dgvLogs);
this.tabViewer.Controls.Add(this.pnlViewerTop);
this.tabViewer.Location = new System.Drawing.Point(4, 24);
this.tabViewer.Name = "tabViewer";
this.tabViewer.Padding = new System.Windows.Forms.Padding(3);
this.tabViewer.Size = new System.Drawing.Size(992, 622);
this.tabViewer.TabIndex = 1;
this.tabViewer.Text = "Log Viewer";
this.tabViewer.UseVisualStyleBackColor = true;
//
//
tabViewer.Controls.Add(dgvLogs);
tabViewer.Controls.Add(pnlViewerTop);
tabViewer.Location = new Point(4, 34);
tabViewer.Margin = new Padding(4, 5, 4, 5);
tabViewer.Name = "tabViewer";
tabViewer.Padding = new Padding(4, 5, 4, 5);
tabViewer.Size = new Size(1421, 1045);
tabViewer.TabIndex = 1;
tabViewer.Text = "Log Viewer";
tabViewer.UseVisualStyleBackColor = true;
//
// dgvLogs
//
this.dgvLogs.AllowUserToAddRows = false;
this.dgvLogs.AllowUserToDeleteRows = false;
this.dgvLogs.AutoGenerateColumns = false;
this.dgvLogs.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvLogs.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.colLogTime,
this.colLogLevel,
this.colLogCid,
this.colLogMsg});
this.dgvLogs.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvLogs.Location = new System.Drawing.Point(3, 41);
this.dgvLogs.Name = "dgvLogs";
this.dgvLogs.ReadOnly = true;
this.dgvLogs.RowHeadersVisible = false;
this.dgvLogs.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dgvLogs.Size = new System.Drawing.Size(986, 578);
this.dgvLogs.TabIndex = 1;
//
// colLogTime
//
this.colLogTime.DataPropertyName = "Time";
this.colLogTime.HeaderText = "Zeit";
this.colLogTime.Name = "colLogTime";
this.colLogTime.ReadOnly = true;
this.colLogTime.Width = 140;
//
// colLogLevel
//
this.colLogLevel.DataPropertyName = "Level";
this.colLogLevel.HeaderText = "Level";
this.colLogLevel.Name = "colLogLevel";
this.colLogLevel.ReadOnly = true;
this.colLogLevel.Width = 110;
//
// colLogCid
//
this.colLogCid.DataPropertyName = "Cid";
this.colLogCid.HeaderText = "CorrelationId";
this.colLogCid.Name = "colLogCid";
this.colLogCid.ReadOnly = true;
this.colLogCid.Width = 130;
//
// colLogMsg
//
this.colLogMsg.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.colLogMsg.DataPropertyName = "Message";
this.colLogMsg.HeaderText = "Nachricht";
this.colLogMsg.Name = "colLogMsg";
this.colLogMsg.ReadOnly = true;
//
//
dgvLogs.AllowUserToAddRows = false;
dgvLogs.AllowUserToDeleteRows = false;
dgvLogs.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
dgvLogs.Dock = DockStyle.Fill;
dgvLogs.Location = new Point(4, 68);
dgvLogs.Margin = new Padding(4, 5, 4, 5);
dgvLogs.Name = "dgvLogs";
dgvLogs.ReadOnly = true;
dgvLogs.RowHeadersVisible = false;
dgvLogs.RowHeadersWidth = 62;
dgvLogs.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
dgvLogs.Size = new Size(1413, 972);
dgvLogs.TabIndex = 1;
//
// pnlViewerTop
//
this.pnlViewerTop.Controls.Add(this.lblViewerStatus);
this.pnlViewerTop.Controls.Add(this.btnViewerLoad);
this.pnlViewerTop.Controls.Add(this.tbViewerText);
this.pnlViewerTop.Controls.Add(this.lblVText);
this.pnlViewerTop.Controls.Add(this.tbViewerCid);
this.pnlViewerTop.Controls.Add(this.lblVCid);
this.pnlViewerTop.Controls.Add(this.cbViewerLevel);
this.pnlViewerTop.Controls.Add(this.lblVLevel);
this.pnlViewerTop.Controls.Add(this.dtViewerDate);
this.pnlViewerTop.Controls.Add(this.lblVDatum);
this.pnlViewerTop.Dock = System.Windows.Forms.DockStyle.Top;
this.pnlViewerTop.Location = new System.Drawing.Point(3, 3);
this.pnlViewerTop.Name = "pnlViewerTop";
this.pnlViewerTop.Size = new System.Drawing.Size(986, 38);
this.pnlViewerTop.TabIndex = 0;
//
// lblVDatum
//
this.lblVDatum.AutoSize = true;
this.lblVDatum.Location = new System.Drawing.Point(8, 11);
this.lblVDatum.Name = "lblVDatum";
this.lblVDatum.Size = new System.Drawing.Size(46, 15);
this.lblVDatum.TabIndex = 0;
this.lblVDatum.Text = "Datum:";
//
// dtViewerDate
//
this.dtViewerDate.Format = System.Windows.Forms.DateTimePickerFormat.Short;
this.dtViewerDate.Location = new System.Drawing.Point(58, 7);
this.dtViewerDate.Name = "dtViewerDate";
this.dtViewerDate.Size = new System.Drawing.Size(110, 23);
this.dtViewerDate.TabIndex = 1;
//
// lblVLevel
//
this.lblVLevel.AutoSize = true;
this.lblVLevel.Location = new System.Drawing.Point(180, 11);
this.lblVLevel.Name = "lblVLevel";
this.lblVLevel.Size = new System.Drawing.Size(38, 15);
this.lblVLevel.TabIndex = 2;
this.lblVLevel.Text = "Level:";
//
// cbViewerLevel
//
this.cbViewerLevel.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cbViewerLevel.Items.AddRange(new object[] {
"Alle",
"Debug",
"Info",
"Warning",
"Error",
"Trade",
"TradeReasoning"});
this.cbViewerLevel.Location = new System.Drawing.Point(222, 7);
this.cbViewerLevel.Name = "cbViewerLevel";
this.cbViewerLevel.Size = new System.Drawing.Size(140, 23);
this.cbViewerLevel.TabIndex = 3;
//
// lblVCid
//
this.lblVCid.AutoSize = true;
this.lblVCid.Location = new System.Drawing.Point(374, 11);
this.lblVCid.Name = "lblVCid";
this.lblVCid.Size = new System.Drawing.Size(29, 15);
this.lblVCid.TabIndex = 4;
this.lblVCid.Text = "CID:";
//
// tbViewerCid
//
this.tbViewerCid.Location = new System.Drawing.Point(408, 7);
this.tbViewerCid.Name = "tbViewerCid";
this.tbViewerCid.PlaceholderText = "SignalId …";
this.tbViewerCid.Size = new System.Drawing.Size(150, 23);
this.tbViewerCid.TabIndex = 5;
//
// lblVText
//
this.lblVText.AutoSize = true;
this.lblVText.Location = new System.Drawing.Point(570, 11);
this.lblVText.Name = "lblVText";
this.lblVText.Size = new System.Drawing.Size(31, 15);
this.lblVText.TabIndex = 6;
this.lblVText.Text = "Text:";
//
// tbViewerText
//
this.tbViewerText.Location = new System.Drawing.Point(606, 7);
this.tbViewerText.Name = "tbViewerText";
this.tbViewerText.PlaceholderText = "Suchtext …";
this.tbViewerText.Size = new System.Drawing.Size(180, 23);
this.tbViewerText.TabIndex = 7;
//
// btnViewerLoad
//
this.btnViewerLoad.Location = new System.Drawing.Point(796, 6);
this.btnViewerLoad.Name = "btnViewerLoad";
this.btnViewerLoad.Size = new System.Drawing.Size(90, 26);
this.btnViewerLoad.TabIndex = 8;
this.btnViewerLoad.Text = "Laden";
this.btnViewerLoad.UseVisualStyleBackColor = true;
//
//
pnlViewerTop.Controls.Add(lblViewerStatus);
pnlViewerTop.Controls.Add(btnViewerLoad);
pnlViewerTop.Controls.Add(tbViewerText);
pnlViewerTop.Controls.Add(lblVText);
pnlViewerTop.Controls.Add(tbViewerCid);
pnlViewerTop.Controls.Add(lblVCid);
pnlViewerTop.Controls.Add(cbViewerLevel);
pnlViewerTop.Controls.Add(lblVLevel);
pnlViewerTop.Controls.Add(dtViewerDate);
pnlViewerTop.Controls.Add(lblVDatum);
pnlViewerTop.Dock = DockStyle.Top;
pnlViewerTop.Location = new Point(4, 5);
pnlViewerTop.Margin = new Padding(4, 5, 4, 5);
pnlViewerTop.Name = "pnlViewerTop";
pnlViewerTop.Size = new Size(1413, 63);
pnlViewerTop.TabIndex = 0;
//
// lblViewerStatus
//
this.lblViewerStatus.AutoSize = true;
this.lblViewerStatus.Location = new System.Drawing.Point(895, 11);
this.lblViewerStatus.Name = "lblViewerStatus";
this.lblViewerStatus.Size = new System.Drawing.Size(23, 15);
this.lblViewerStatus.TabIndex = 9;
this.lblViewerStatus.Text = "—";
//
//
lblViewerStatus.AutoSize = true;
lblViewerStatus.Location = new Point(1279, 18);
lblViewerStatus.Margin = new Padding(4, 0, 4, 0);
lblViewerStatus.Name = "lblViewerStatus";
lblViewerStatus.Size = new Size(30, 25);
lblViewerStatus.TabIndex = 9;
lblViewerStatus.Text = "—";
//
// btnViewerLoad
//
btnViewerLoad.Location = new Point(1137, 10);
btnViewerLoad.Margin = new Padding(4, 5, 4, 5);
btnViewerLoad.Name = "btnViewerLoad";
btnViewerLoad.Size = new Size(129, 43);
btnViewerLoad.TabIndex = 8;
btnViewerLoad.Text = "Laden";
btnViewerLoad.UseVisualStyleBackColor = true;
//
// tbViewerText
//
tbViewerText.Location = new Point(866, 12);
tbViewerText.Margin = new Padding(4, 5, 4, 5);
tbViewerText.Name = "tbViewerText";
tbViewerText.PlaceholderText = "Suchtext …";
tbViewerText.Size = new Size(255, 31);
tbViewerText.TabIndex = 7;
//
// lblVText
//
lblVText.AutoSize = true;
lblVText.Location = new Point(814, 18);
lblVText.Margin = new Padding(4, 0, 4, 0);
lblVText.Name = "lblVText";
lblVText.Size = new Size(46, 25);
lblVText.TabIndex = 6;
lblVText.Text = "Text:";
//
// tbViewerCid
//
tbViewerCid.Location = new Point(583, 12);
tbViewerCid.Margin = new Padding(4, 5, 4, 5);
tbViewerCid.Name = "tbViewerCid";
tbViewerCid.PlaceholderText = "SignalId …";
tbViewerCid.Size = new Size(213, 31);
tbViewerCid.TabIndex = 5;
//
// lblVCid
//
lblVCid.AutoSize = true;
lblVCid.Location = new Point(534, 18);
lblVCid.Margin = new Padding(4, 0, 4, 0);
lblVCid.Name = "lblVCid";
lblVCid.Size = new Size(45, 25);
lblVCid.TabIndex = 4;
lblVCid.Text = "CID:";
//
// cbViewerLevel
//
cbViewerLevel.DropDownStyle = ComboBoxStyle.DropDownList;
cbViewerLevel.Items.AddRange(new object[] { "Alle", "Debug", "Info", "Warning", "Error", "Trade", "TradeReasoning" });
cbViewerLevel.Location = new Point(317, 12);
cbViewerLevel.Margin = new Padding(4, 5, 4, 5);
cbViewerLevel.Name = "cbViewerLevel";
cbViewerLevel.Size = new Size(198, 33);
cbViewerLevel.TabIndex = 3;
//
// lblVLevel
//
lblVLevel.AutoSize = true;
lblVLevel.Location = new Point(257, 18);
lblVLevel.Margin = new Padding(4, 0, 4, 0);
lblVLevel.Name = "lblVLevel";
lblVLevel.Size = new Size(55, 25);
lblVLevel.TabIndex = 2;
lblVLevel.Text = "Level:";
//
// dtViewerDate
//
dtViewerDate.Format = DateTimePickerFormat.Short;
dtViewerDate.Location = new Point(83, 12);
dtViewerDate.Margin = new Padding(4, 5, 4, 5);
dtViewerDate.Name = "dtViewerDate";
dtViewerDate.Size = new Size(155, 31);
dtViewerDate.TabIndex = 1;
//
// lblVDatum
//
lblVDatum.AutoSize = true;
lblVDatum.Location = new Point(11, 18);
lblVDatum.Margin = new Padding(4, 0, 4, 0);
lblVDatum.Name = "lblVDatum";
lblVDatum.Size = new Size(70, 25);
lblVDatum.TabIndex = 0;
lblVDatum.Text = "Datum:";
//
// TerminalView
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.tabControlTerminal);
this.ClientSize = new System.Drawing.Size(1000, 650);
this.Name = "TerminalView";
this.Text = "Terminal / Logs";
this.tabControlTerminal.ResumeLayout(false);
this.tabLive.ResumeLayout(false);
this.pnlTop.ResumeLayout(false);
this.pnlTop.PerformLayout();
this.contextMenuTerminal.ResumeLayout(false);
this.tabViewer.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dgvLogs)).EndInit();
this.pnlViewerTop.ResumeLayout(false);
this.pnlViewerTop.PerformLayout();
this.ResumeLayout(false);
//
AutoScaleDimensions = new SizeF(10F, 25F);
AutoScaleMode = AutoScaleMode.Font;
ClientSize = new Size(1429, 1083);
Controls.Add(tabControlTerminal);
Icon = (Icon)resources.GetObject("$this.Icon");
Margin = new Padding(4, 5, 4, 5);
Name = "TerminalView";
Text = "Terminal / Logs";
tabControlTerminal.ResumeLayout(false);
tabLive.ResumeLayout(false);
contextMenuTerminal.ResumeLayout(false);
pnlTop.ResumeLayout(false);
pnlTop.PerformLayout();
tabViewer.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)dgvLogs).EndInit();
pnlViewerTop.ResumeLayout(false);
pnlViewerTop.PerformLayout();
ResumeLayout(false);
}
#endregion
+92 -27
View File
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
@@ -26,36 +26,36 @@
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
@@ -117,4 +117,69 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="contextMenuTerminal.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
</root>