UI: Terminal-Kopierfunktion (Kontextmenue) + Jobs-Toolstrip (via Designer)

- TerminalView: ContextMenuStrip (Kopieren/Alles auswaehlen/Alles kopieren/Terminal leeren)
  am rtbTerminal - macht das Kopieren entdeckbar (Ctrl+C funktioniert zusaetzlich nativ).
- JobsView: ToolStrip 'toolStripJobs' (docked Top) mit Starter-Button 'Aktualisieren'
  (dgvJobs.Refresh) - weitere Job-Steuerelemente folgen nach und nach.
Beide via Designer (.Designer.cs), Logik im Code-Behind. Build 0 Fehler, --smoke-ui ok.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Richard
2026-07-15 09:39:35 +02:00
co-authored by Claude Opus 4.8
parent 4df07bd3d2
commit 0aedddabe8
4 changed files with 94 additions and 0 deletions
+16
View File
@@ -27,6 +27,22 @@ namespace PolyTraderSharp.Ui.Views
if (cbLogLevel.Items.Count > 0) cbLogLevel.SelectedIndex = 0;
btnAutoscroll.Click += (_, _) => ToggleAutoscroll();
_uiLogTimer.Tick += ProcessLogQueue;
// Kontextmenü: Text aus dem Terminal kopieren (Ctrl+C funktioniert zusätzlich nativ).
miCopy.Click += (_, _) => { if (rtbTerminal.SelectionLength > 0) rtbTerminal.Copy(); };
miSelectAll.Click += (_, _) => rtbTerminal.SelectAll();
miCopyAll.Click += (_, _) => CopyAllToClipboard();
miClear.Click += (_, _) => rtbTerminal.Clear();
}
private void CopyAllToClipboard()
{
try
{
if (!string.IsNullOrEmpty(rtbTerminal.Text))
Clipboard.SetText(rtbTerminal.Text);
}
catch { /* Zwischenablage kann kurzzeitig belegt sein bewusst ignorieren */ }
}
/// <summary>Verbindet die View mit dem Logger (Laufzeit-DI).</summary>