diff --git a/IBKRTrader.App.csproj b/IBKRTrader.App.csproj
index 3cae826..2c4e752 100644
--- a/IBKRTrader.App.csproj
+++ b/IBKRTrader.App.csproj
@@ -27,6 +27,19 @@
+
+
+
+ True
+ True
+ Resources.resx
+
+
+ ResXFileCodeGenerator
+ Resources.Designer.cs
+
+
+
diff --git a/LauncherForm.cs b/LauncherForm.cs
index 2136846..f0b85eb 100644
--- a/LauncherForm.cs
+++ b/LauncherForm.cs
@@ -21,11 +21,7 @@ public sealed class LauncherForm : Form
private readonly WorkerEngine _workerEngine;
private readonly IReadOnlyList _modules;
- private readonly Dictionary _viewButtons = new(StringComparer.OrdinalIgnoreCase);
- private readonly FlowLayoutPanel _buttonPanel = new()
- {
- Dock = DockStyle.Fill, Padding = new Padding(16), AutoScroll = true
- };
+ private readonly Dictionary _viewButtons = new(StringComparer.OrdinalIgnoreCase);
private readonly ToolStripStatusLabel _status = new("Start...");
public LauncherForm(ShellUiHost uiHost, IServiceProvider services)
@@ -52,26 +48,47 @@ public sealed class LauncherForm : Form
var menu = new MenuStrip { Dock = DockStyle.Top, ImageScalingSize = new Size(24, 24) };
WindowMenu.Wire(menu, _uiHost, null);
+ // Fenster-Buttons in einem ToolStrip (Icon über Text) – wie im PolytraderSharp-Launcher.
+ var toolstrip = new ToolStrip
+ {
+ Dock = DockStyle.Top,
+ GripStyle = ToolStripGripStyle.Hidden,
+ ImageScalingSize = new Size(32, 32),
+ AutoSize = true,
+ Padding = new Padding(4)
+ };
+
foreach (var view in _uiHost.Views.OrderBy(v => v.Order).ThenBy(v => v.Title))
{
var id = view.Id;
- var btn = new Button
+ var btn = new ToolStripButton(view.Title, view.Icon)
{
- Text = view.Title, Width = 210, Height = 48, Margin = new Padding(8),
- TextAlign = ContentAlignment.MiddleLeft, Image = view.Icon,
- ImageAlign = ContentAlignment.MiddleLeft, TextImageRelation = TextImageRelation.ImageBeforeText
+ DisplayStyle = ToolStripItemDisplayStyle.ImageAndText,
+ ImageScaling = ToolStripItemImageScaling.None,
+ TextImageRelation = TextImageRelation.ImageAboveText,
+ AutoSize = true,
+ Padding = new Padding(6, 2, 6, 2)
};
btn.Click += (_, _) => _uiHost.OpenView(id);
_viewButtons[id] = btn;
- _buttonPanel.Controls.Add(btn);
+ toolstrip.Items.Add(btn);
}
+ var content = new Panel { Dock = DockStyle.Fill, BackColor = SystemColors.ControlLightLight };
+ content.Controls.Add(new Label
+ {
+ Text = "IBKRTrader — Launcher\nFenster über die Leiste oben öffnen.",
+ Dock = DockStyle.Fill, TextAlign = ContentAlignment.MiddleCenter,
+ ForeColor = SystemColors.GrayText, Font = new Font(Font.FontFamily, 11f)
+ });
+
var statusStrip = new StatusStrip();
statusStrip.Items.Add(_status);
- // Reihenfolge: Fill-Panel zuerst, dann Bottom, dann Top (WinForms Dock-Stacking).
- Controls.Add(_buttonPanel);
+ // Dock-Stacking: zuletzt hinzugefügtes Top-Control liegt oben → Menü über ToolStrip.
+ Controls.Add(content);
Controls.Add(statusStrip);
+ Controls.Add(toolstrip);
Controls.Add(menu);
MainMenuStrip = menu;
}
@@ -143,7 +160,7 @@ public sealed class LauncherForm : Form
if (IsDisposed) return;
if (InvokeRequired) { BeginInvoke((Action)UpdateButtonStates); return; }
foreach (var (id, btn) in _viewButtons)
- btn.Font = new Font(btn.Font, _uiHost.IsOpen(id) ? FontStyle.Bold : FontStyle.Regular);
+ btn.Checked = _uiHost.IsOpen(id);
}
private void SetStatus(string text)
diff --git a/Program.cs b/Program.cs
index f66da72..4b0f214 100644
--- a/Program.cs
+++ b/Program.cs
@@ -63,6 +63,7 @@ internal static class Program
RegisterCoreViews(uiHost, AppHost.Services);
foreach (var module in modules)
module.RegisterUi(uiHost, AppHost.Services);
+ AssignViewIcons(uiHost);
Application.Run(AppHost.Services.GetRequiredService());
AppHost.StopAsync().GetAwaiter().GetResult();
@@ -113,6 +114,25 @@ internal static class Program
services.AddSingleton();
}
+ ///
+ /// Weist den registrierten Views ihr Button-/Menü-Icon aus den App-Ressourcen zu (über die stabile
+ /// View-ID). Icons stammen aus PolytraderSharp; nicht passende können später ausgetauscht werden.
+ /// Bereits gesetzte Icons bleiben erhalten.
+ ///
+ private static void AssignViewIcons(IModuleUiHost uiHost)
+ {
+ var map = new Dictionary
+ {
+ ["core.workers"] = Properties.Resources.system_time,
+ ["core.logs"] = Properties.Resources.error_log,
+ ["core.settings"] = Properties.Resources.setting_tools,
+ ["congresstrading.main"] = Properties.Resources.cross_reference,
+ };
+ foreach (var view in uiHost.Views)
+ if (view.Icon is null && map.TryGetValue(view.Id, out var img))
+ view.Icon = img;
+ }
+
/// Registriert die Core-Views (Logs, Settings, Workers) bei der Shell.
private static void RegisterCoreViews(IModuleUiHost uiHost, IServiceProvider sp)
{
diff --git a/Properties/Resources.Designer.cs b/Properties/Resources.Designer.cs
new file mode 100644
index 0000000..5637a2e
--- /dev/null
+++ b/Properties/Resources.Designer.cs
@@ -0,0 +1,303 @@
+//------------------------------------------------------------------------------
+//
+// Dieser Code wurde von einem Tool generiert.
+// Laufzeitversion:4.0.30319.42000
+//
+// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
+// der Code erneut generiert wird.
+//
+//------------------------------------------------------------------------------
+
+namespace IBKRTrader.Properties {
+ using System;
+
+
+ ///
+ /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
+ ///
+ // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
+ // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
+ // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
+ // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "18.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Resources {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources() {
+ }
+
+ ///
+ /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("IBKRTrader.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
+ /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap accept_button {
+ get {
+ object obj = ResourceManager.GetObject("accept_button", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap add {
+ get {
+ object obj = ResourceManager.GetObject("add", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap cancel {
+ get {
+ object obj = ResourceManager.GetObject("cancel", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap coins_in_hand {
+ get {
+ object obj = ResourceManager.GetObject("coins_in_hand", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap cross_reference {
+ get {
+ object obj = ResourceManager.GetObject("cross_reference", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap dashboard {
+ get {
+ object obj = ResourceManager.GetObject("dashboard", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap delete {
+ get {
+ object obj = ResourceManager.GetObject("delete", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap diskette {
+ get {
+ object obj = ResourceManager.GetObject("diskette", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap emotion_batman {
+ get {
+ object obj = ResourceManager.GetObject("emotion_batman", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap error_log {
+ get {
+ object obj = ResourceManager.GetObject("error_log", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap file_start_workflow {
+ get {
+ object obj = ResourceManager.GetObject("file_start_workflow", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap money {
+ get {
+ object obj = ResourceManager.GetObject("money", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap money_add {
+ get {
+ object obj = ResourceManager.GetObject("money_add", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap money_delete {
+ get {
+ object obj = ResourceManager.GetObject("money_delete", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap money_dollar {
+ get {
+ object obj = ResourceManager.GetObject("money_dollar", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap refresh_all {
+ get {
+ object obj = ResourceManager.GetObject("refresh_all", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap setting_tools {
+ get {
+ object obj = ResourceManager.GetObject("setting_tools", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap stop {
+ get {
+ object obj = ResourceManager.GetObject("stop", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap system_time {
+ get {
+ object obj = ResourceManager.GetObject("system_time", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap token_quantifier {
+ get {
+ object obj = ResourceManager.GetObject("token_quantifier", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap traffic_lights_green {
+ get {
+ object obj = ResourceManager.GetObject("traffic_lights_green", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap traffic_lights_red {
+ get {
+ object obj = ResourceManager.GetObject("traffic_lights_red", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap traffic_lights_yellow {
+ get {
+ object obj = ResourceManager.GetObject("traffic_lights_yellow", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap warning {
+ get {
+ object obj = ResourceManager.GetObject("warning", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+ }
+}
diff --git a/Properties/Resources.resx b/Properties/Resources.resx
new file mode 100644
index 0000000..18293c6
--- /dev/null
+++ b/Properties/Resources.resx
@@ -0,0 +1,133 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ ..\Resources\accept_button.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\add.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\cancel.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\coins_in_hand.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\cross_reference.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\dashboard.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\delete.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\diskette.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\emotion_batman.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\error_log.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\file_start_workflow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\money.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\money_add.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\money_delete.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\money_dollar.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\refresh_all.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\setting_tools.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\stop.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\system_time.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\token_quantifier.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\traffic_lights_green.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\traffic_lights_red.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\traffic_lights_yellow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\warning.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
diff --git a/Resources/accept_button.png b/Resources/accept_button.png
new file mode 100644
index 0000000..7786ac7
Binary files /dev/null and b/Resources/accept_button.png differ
diff --git a/Resources/add.png b/Resources/add.png
new file mode 100644
index 0000000..60a7a29
Binary files /dev/null and b/Resources/add.png differ
diff --git a/Resources/cancel.png b/Resources/cancel.png
new file mode 100644
index 0000000..1b20ae0
Binary files /dev/null and b/Resources/cancel.png differ
diff --git a/Resources/coins_in_hand.png b/Resources/coins_in_hand.png
new file mode 100644
index 0000000..aaceea1
Binary files /dev/null and b/Resources/coins_in_hand.png differ
diff --git a/Resources/cross_reference.png b/Resources/cross_reference.png
new file mode 100644
index 0000000..3576fa6
Binary files /dev/null and b/Resources/cross_reference.png differ
diff --git a/Resources/dashboard.png b/Resources/dashboard.png
new file mode 100644
index 0000000..12961f0
Binary files /dev/null and b/Resources/dashboard.png differ
diff --git a/Resources/delete.png b/Resources/delete.png
new file mode 100644
index 0000000..30a45b8
Binary files /dev/null and b/Resources/delete.png differ
diff --git a/Resources/diskette.png b/Resources/diskette.png
new file mode 100644
index 0000000..3a9dcf3
Binary files /dev/null and b/Resources/diskette.png differ
diff --git a/Resources/emotion_batman.png b/Resources/emotion_batman.png
new file mode 100644
index 0000000..17ddd8b
Binary files /dev/null and b/Resources/emotion_batman.png differ
diff --git a/Resources/error_log.png b/Resources/error_log.png
new file mode 100644
index 0000000..041f8eb
Binary files /dev/null and b/Resources/error_log.png differ
diff --git a/Resources/file_start_workflow.png b/Resources/file_start_workflow.png
new file mode 100644
index 0000000..a83e969
Binary files /dev/null and b/Resources/file_start_workflow.png differ
diff --git a/Resources/money.png b/Resources/money.png
new file mode 100644
index 0000000..c8c5a11
Binary files /dev/null and b/Resources/money.png differ
diff --git a/Resources/money_add.png b/Resources/money_add.png
new file mode 100644
index 0000000..62154f3
Binary files /dev/null and b/Resources/money_add.png differ
diff --git a/Resources/money_delete.png b/Resources/money_delete.png
new file mode 100644
index 0000000..d1a9cd0
Binary files /dev/null and b/Resources/money_delete.png differ
diff --git a/Resources/money_dollar.png b/Resources/money_dollar.png
new file mode 100644
index 0000000..bab8f07
Binary files /dev/null and b/Resources/money_dollar.png differ
diff --git a/Resources/refresh_all.png b/Resources/refresh_all.png
new file mode 100644
index 0000000..0f4d261
Binary files /dev/null and b/Resources/refresh_all.png differ
diff --git a/Resources/setting_tools.png b/Resources/setting_tools.png
new file mode 100644
index 0000000..2a1e727
Binary files /dev/null and b/Resources/setting_tools.png differ
diff --git a/Resources/stop.png b/Resources/stop.png
new file mode 100644
index 0000000..807117f
Binary files /dev/null and b/Resources/stop.png differ
diff --git a/Resources/system_time.png b/Resources/system_time.png
new file mode 100644
index 0000000..957c526
Binary files /dev/null and b/Resources/system_time.png differ
diff --git a/Resources/token_quantifier.png b/Resources/token_quantifier.png
new file mode 100644
index 0000000..f598fa4
Binary files /dev/null and b/Resources/token_quantifier.png differ
diff --git a/Resources/traffic_lights_green.png b/Resources/traffic_lights_green.png
new file mode 100644
index 0000000..bd53d89
Binary files /dev/null and b/Resources/traffic_lights_green.png differ
diff --git a/Resources/traffic_lights_red.png b/Resources/traffic_lights_red.png
new file mode 100644
index 0000000..fd00be2
Binary files /dev/null and b/Resources/traffic_lights_red.png differ
diff --git a/Resources/traffic_lights_yellow.png b/Resources/traffic_lights_yellow.png
new file mode 100644
index 0000000..54034fc
Binary files /dev/null and b/Resources/traffic_lights_yellow.png differ
diff --git a/Resources/warning.png b/Resources/warning.png
new file mode 100644
index 0000000..311e726
Binary files /dev/null and b/Resources/warning.png differ