From 162977e6bab2fcd4c46a9c65a2791f88c1d9da4a Mon Sep 17 00:00:00 2001 From: Wintersta7e Date: Sat, 7 Mar 2026 13:09:03 +0100 Subject: [PATCH 01/11] feat: add MoltenForge dual dark/light theme Co-Authored-By: Rooty --- .../Themes/MoltenForgeTheme.axaml | 325 ++++++++++++++++++ 1 file changed, 325 insertions(+) create mode 100644 src/FlowForge.UI/Themes/MoltenForgeTheme.axaml diff --git a/src/FlowForge.UI/Themes/MoltenForgeTheme.axaml b/src/FlowForge.UI/Themes/MoltenForgeTheme.axaml new file mode 100644 index 0000000..57534a0 --- /dev/null +++ b/src/FlowForge.UI/Themes/MoltenForgeTheme.axaml @@ -0,0 +1,325 @@ + + + + + + + + + + + + + #08070a + #0e0c11 + #141218 + #1c1820 + #252029 + #2e2735 + + + #2a2230 + #3d2f48 + + + #ede6f0 + #9a8da8 + #564a62 + + + #e8932f + #f5a623 + + + #5bb8f5 + #5ce0a0 + #e8932f + + + #5ce0a0 + #f2716a + #f5c842 + + + #d4612c + #f5c842 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #f5f2ee + #eee9e3 + #faf8f5 + #ffffff + #f0ece6 + #e8e3db + + + #ddd5ca + #c9bfb2 + + + #1c1714 + #6b5e52 + #a89c8e + + + #d07a18 + #e8932f + + + #2680c2 + #1a9a6c + #d07a18 + + + #1a9a6c + #d44040 + #c88a15 + + + #c05820 + #e8b530 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 703a2b5b43a6d757d5267bd9e30535635e2d6657 Mon Sep 17 00:00:00 2001 From: Wintersta7e Date: Sat, 7 Mar 2026 13:13:24 +0100 Subject: [PATCH 02/11] feat: wire MoltenForge theme, remove MidnightTheme Co-Authored-By: Rooty --- src/FlowForge.UI/App.axaml | 2 +- src/FlowForge.UI/MainWindow.axaml | 12 +- src/FlowForge.UI/Themes/MidnightTheme.axaml | 193 ------------------ src/FlowForge.UI/Views/CanvasView.axaml | 10 +- src/FlowForge.UI/Views/ExecutionLogView.axaml | 52 ++--- src/FlowForge.UI/Views/NodeLibraryView.axaml | 10 +- src/FlowForge.UI/Views/PropertiesView.axaml | 10 +- src/FlowForge.UI/Views/ShortcutsWindow.axaml | 8 +- src/FlowForge.UI/Views/ToolbarView.axaml | 26 +-- 9 files changed, 65 insertions(+), 258 deletions(-) delete mode 100644 src/FlowForge.UI/Themes/MidnightTheme.axaml diff --git a/src/FlowForge.UI/App.axaml b/src/FlowForge.UI/App.axaml index d6dbbc5..690bf90 100644 --- a/src/FlowForge.UI/App.axaml +++ b/src/FlowForge.UI/App.axaml @@ -6,7 +6,7 @@ - + diff --git a/src/FlowForge.UI/MainWindow.axaml b/src/FlowForge.UI/MainWindow.axaml index 0ca7d19..aec73f2 100644 --- a/src/FlowForge.UI/MainWindow.axaml +++ b/src/FlowForge.UI/MainWindow.axaml @@ -13,7 +13,7 @@ MinWidth="800" MinHeight="500" Icon="avares://FlowForge.UI/Assets/icon.png" FontSize="14" - Background="{DynamicResource MidnightBg}" + Background="{DynamicResource ForgeBg}" KeyDown="OnKeyDown"> @@ -26,8 +26,8 @@ @@ -35,8 +35,8 @@ @@ -49,7 +49,7 @@ diff --git a/src/FlowForge.UI/Themes/MidnightTheme.axaml b/src/FlowForge.UI/Themes/MidnightTheme.axaml deleted file mode 100644 index 34bab9c..0000000 --- a/src/FlowForge.UI/Themes/MidnightTheme.axaml +++ /dev/null @@ -1,193 +0,0 @@ - - - - - - - - #0D1117 - #161B22 - #1C2128 - #21262D - - - #30363D - #484F58 - - - #E6EDF3 - #8B949E - #484F58 - - - #58A6FF - #58A6FF - #3FB950 - #D29922 - - - #3FB950 - #F85149 - #D29922 - #58A6FF - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/FlowForge.UI/Views/CanvasView.axaml b/src/FlowForge.UI/Views/CanvasView.axaml index 71b91dc..39bc034 100644 --- a/src/FlowForge.UI/Views/CanvasView.axaml +++ b/src/FlowForge.UI/Views/CanvasView.axaml @@ -18,7 +18,7 @@ PendingConnection="{Binding PendingConnection}" ItemsDragStartedCommand="{Binding ItemsDragStartedCommand}" ItemsDragCompletedCommand="{Binding ItemsDragCompletedCommand}" - Background="{DynamicResource MidnightBg}" + Background="{DynamicResource ForgeBg}" DragDrop.AllowDrop="True"> @@ -81,7 +81,7 @@ Spacing="16" MaxWidth="360"> @@ -89,18 +89,18 @@ diff --git a/src/FlowForge.UI/Views/ExecutionLogView.axaml b/src/FlowForge.UI/Views/ExecutionLogView.axaml index 8c782b5..1687d8c 100644 --- a/src/FlowForge.UI/Views/ExecutionLogView.axaml +++ b/src/FlowForge.UI/Views/ExecutionLogView.axaml @@ -8,10 +8,10 @@ x:Class="FlowForge.UI.Views.ExecutionLogView" x:DataType="vm:ExecutionLogViewModel"> - + @@ -25,7 +25,7 @@ @@ -42,7 +42,7 @@ @@ -59,7 +59,7 @@ @@ -71,7 +71,7 @@ TextTrimming="CharacterEllipsis" VerticalAlignment="Center" HorizontalAlignment="Right" - Foreground="{DynamicResource MidnightTextSecondary}" + Foreground="{DynamicResource ForgeTextSecondary}" FontSize="15" Margin="8,0,12,0" IsVisible="{Binding !IsRunning}" /> @@ -81,23 +81,23 @@ @@ -116,26 +116,26 @@ @@ -143,13 +143,13 @@ Text="{Binding FileName}" FontFamily="Cascadia Mono,Consolas,Courier New,monospace" VerticalAlignment="Center" - Foreground="{DynamicResource MidnightText}" + Foreground="{DynamicResource ForgeText}" FontSize="15" Margin="0,0,8,0" /> @@ -176,26 +176,26 @@ @@ -212,7 +212,7 @@ @@ -221,26 +221,26 @@ @@ -35,10 +35,10 @@ + Foreground="{DynamicResource ForgeText}" /> @@ -56,7 +56,7 @@ diff --git a/src/FlowForge.UI/Views/PropertiesView.axaml b/src/FlowForge.UI/Views/PropertiesView.axaml index 2173eb7..c96daa1 100644 --- a/src/FlowForge.UI/Views/PropertiesView.axaml +++ b/src/FlowForge.UI/Views/PropertiesView.axaml @@ -12,16 +12,16 @@ + Foreground="{DynamicResource ForgeText}" /> @@ -34,13 +34,13 @@ Margin="16"> diff --git a/src/FlowForge.UI/Views/ShortcutsWindow.axaml b/src/FlowForge.UI/Views/ShortcutsWindow.axaml index 416bc86..bf4ffc5 100644 --- a/src/FlowForge.UI/Views/ShortcutsWindow.axaml +++ b/src/FlowForge.UI/Views/ShortcutsWindow.axaml @@ -5,13 +5,13 @@ Width="400" Height="400" CanResize="False" WindowStartupLocation="CenterOwner" - Background="{DynamicResource MidnightPanel}"> + Background="{DynamicResource ForgePanel}"> + Foreground="{DynamicResource ForgeText}" /> @@ -19,12 +19,12 @@ diff --git a/src/FlowForge.UI/Views/ToolbarView.axaml b/src/FlowForge.UI/Views/ToolbarView.axaml index d8df2f8..855493b 100644 --- a/src/FlowForge.UI/Views/ToolbarView.axaml +++ b/src/FlowForge.UI/Views/ToolbarView.axaml @@ -8,8 +8,8 @@ x:Class="FlowForge.UI.Views.ToolbarView" x:DataType="vm:MainWindowViewModel"> - @@ -21,14 +21,14 @@ @@ -38,14 +38,14 @@ Command="{Binding NewCommand}" ToolTip.Tip="New Pipeline (Ctrl+N)"> @@ -77,13 +77,13 @@ ToolTip.Tip="Fit to Screen (Ctrl+0)" Click="OnFitToScreenClick"> @@ -115,9 +115,9 @@ Padding="12,4"> - + From a048b63044138d7a0a4a80b459ea09025b351805 Mon Sep 17 00:00:00 2001 From: Wintersta7e Date: Sat, 7 Mar 2026 13:14:46 +0100 Subject: [PATCH 03/11] style: update main window layout dimensions Co-Authored-By: Rooty --- src/FlowForge.UI/MainWindow.axaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/FlowForge.UI/MainWindow.axaml b/src/FlowForge.UI/MainWindow.axaml index aec73f2..7fe72dc 100644 --- a/src/FlowForge.UI/MainWindow.axaml +++ b/src/FlowForge.UI/MainWindow.axaml @@ -16,7 +16,7 @@ Background="{DynamicResource ForgeBg}" KeyDown="OnKeyDown"> - + @@ -25,7 +25,7 @@ @@ -34,7 +34,7 @@ From ee1a56e5ab0b2be00a4c0504ec4c9f86c013730d Mon Sep 17 00:00:00 2001 From: Wintersta7e Date: Sat, 7 Mar 2026 13:15:06 +0100 Subject: [PATCH 04/11] fix: replace hardcoded colors with theme resource lookups Co-Authored-By: Rooty --- .../ViewModels/PipelineNodeViewModel.cs | 6 +++--- .../Views/ConfigFieldTemplateSelector.cs | 18 ++++++++++++++---- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/src/FlowForge.UI/ViewModels/PipelineNodeViewModel.cs b/src/FlowForge.UI/ViewModels/PipelineNodeViewModel.cs index ce4a7c2..a77c3ed 100644 --- a/src/FlowForge.UI/ViewModels/PipelineNodeViewModel.cs +++ b/src/FlowForge.UI/ViewModels/PipelineNodeViewModel.cs @@ -22,9 +22,9 @@ private static IBrush GetBrush(string key, string fallback) return new SolidColorBrush(Color.Parse(fallback)); } - private static readonly IBrush SourceBrush = GetBrush("MidnightSource", "#58A6FF"); - private static readonly IBrush TransformBrush = GetBrush("MidnightTransform", "#3FB950"); - private static readonly IBrush OutputBrush = GetBrush("MidnightOutput", "#D29922"); + private static readonly IBrush SourceBrush = GetBrush("ForgeSource", "#5bb8f5"); + private static readonly IBrush TransformBrush = GetBrush("ForgeTransform", "#5ce0a0"); + private static readonly IBrush OutputBrush = GetBrush("ForgeOutput", "#e8932f"); [ObservableProperty] private Point _location; diff --git a/src/FlowForge.UI/Views/ConfigFieldTemplateSelector.cs b/src/FlowForge.UI/Views/ConfigFieldTemplateSelector.cs index cf5c86f..4f882b0 100644 --- a/src/FlowForge.UI/Views/ConfigFieldTemplateSelector.cs +++ b/src/FlowForge.UI/Views/ConfigFieldTemplateSelector.cs @@ -26,10 +26,10 @@ public Control Build(object? param) Border cardBorder = new() { - Background = new Avalonia.Media.SolidColorBrush(Avalonia.Media.Color.Parse("#1C2128")), - BorderBrush = new Avalonia.Media.SolidColorBrush(Avalonia.Media.Color.Parse("#30363D")), + Background = GetThemeBrush("ForgeDeep", "#0e0c11"), + BorderBrush = GetThemeBrush("ForgeBorder", "#2a2230"), BorderThickness = new Avalonia.Thickness(1), - CornerRadius = new Avalonia.CornerRadius(6), + CornerRadius = new Avalonia.CornerRadius(12), Padding = new Avalonia.Thickness(12, 8), Margin = new Avalonia.Thickness(0, 0, 0, 8) }; @@ -44,7 +44,7 @@ public Control Build(object? param) Text = field.IsRequired ? $"{field.Label} *" : field.Label, FontWeight = Avalonia.Media.FontWeight.SemiBold, FontSize = 12, - Foreground = new Avalonia.Media.SolidColorBrush(Avalonia.Media.Color.Parse("#E6EDF3")), + Foreground = GetThemeBrush("ForgeText", "#ede6f0"), Margin = new Avalonia.Thickness(0, 0, 0, 2) }; panel.Children.Add(label); @@ -255,4 +255,14 @@ private static TextBox BuildMultiLineEditor(ConfigFieldViewModel field) new Avalonia.Data.Binding("Value")); return textBox; } + + private static Avalonia.Media.IBrush GetThemeBrush(string key, string fallback) + { + if (Avalonia.Application.Current?.TryFindResource(key, Avalonia.Application.Current.ActualThemeVariant, out object? resource) == true && resource is Avalonia.Media.IBrush brush) + { + return brush; + } + + return new Avalonia.Media.SolidColorBrush(Avalonia.Media.Color.Parse(fallback)); + } } From d30a4231b0049bda9f6c771511269fac01d2a3f2 Mon Sep 17 00:00:00 2001 From: Wintersta7e Date: Sat, 7 Mar 2026 13:17:47 +0100 Subject: [PATCH 05/11] style: restyle node library with icons and category colors Co-Authored-By: Rooty --- .../ViewModels/NodeLibraryItemViewModel.cs | 4 +- .../ViewModels/NodeLibraryViewModel.cs | 22 +++++++- src/FlowForge.UI/Views/NodeLibraryView.axaml | 51 ++++++++++++------- 3 files changed, 57 insertions(+), 20 deletions(-) diff --git a/src/FlowForge.UI/ViewModels/NodeLibraryItemViewModel.cs b/src/FlowForge.UI/ViewModels/NodeLibraryItemViewModel.cs index a4884eb..b5c6202 100644 --- a/src/FlowForge.UI/ViewModels/NodeLibraryItemViewModel.cs +++ b/src/FlowForge.UI/ViewModels/NodeLibraryItemViewModel.cs @@ -4,10 +4,12 @@ public class NodeLibraryItemViewModel : ViewModelBase { public string TypeKey { get; } public string DisplayName { get; } + public string Icon { get; } - public NodeLibraryItemViewModel(string typeKey, string displayName) + public NodeLibraryItemViewModel(string typeKey, string displayName, string icon = "") { TypeKey = typeKey; DisplayName = displayName; + Icon = icon; } } diff --git a/src/FlowForge.UI/ViewModels/NodeLibraryViewModel.cs b/src/FlowForge.UI/ViewModels/NodeLibraryViewModel.cs index 418e970..e3a6c69 100644 --- a/src/FlowForge.UI/ViewModels/NodeLibraryViewModel.cs +++ b/src/FlowForge.UI/ViewModels/NodeLibraryViewModel.cs @@ -47,7 +47,8 @@ public void Initialize(NodeRegistry registry) categoryItems[categoryName] = existingItems; } - existingItems.Add(new NodeLibraryItemViewModel(typeKey, displayName)); + string icon = GetIconForTypeKey(typeKey); + existingItems.Add(new NodeLibraryItemViewModel(typeKey, displayName, icon)); } // Add groups in canonical order: Input, Process, Save To @@ -63,6 +64,25 @@ public void Initialize(NodeRegistry registry) } } + private static string GetIconForTypeKey(string typeKey) + { + return typeKey switch + { + "FolderInput" => "\U0001F4C1", + "PatternRename" => "\u270E", + "RegexRename" => ".*", + "AffixRename" => "+a", + "Filter" => "\U0001F50D", + "Sort" => "\u21C5", + "ImageResize" => "\U0001F4F7", + "ImageConvert" => "\U0001F3A8", + "ImageCompress" => "\U0001F4E6", + "MetadataExtract" => "\U0001F4C4", + "FolderOutput" => "\U0001F4E5", + _ => "\u2699", + }; + } + private void FilterItems() { Groups.Clear(); diff --git a/src/FlowForge.UI/Views/NodeLibraryView.axaml b/src/FlowForge.UI/Views/NodeLibraryView.axaml index 6c747dd..834d368 100644 --- a/src/FlowForge.UI/Views/NodeLibraryView.axaml +++ b/src/FlowForge.UI/Views/NodeLibraryView.axaml @@ -4,16 +4,18 @@ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:vm="using:FlowForge.UI.ViewModels" mc:Ignorable="d" - d:DesignWidth="200" d:DesignHeight="600" + d:DesignWidth="250" d:DesignHeight="600" x:Class="FlowForge.UI.Views.NodeLibraryView" x:DataType="vm:NodeLibraryViewModel"> - - + + + + + + - - + + + Watermark="Search nodes..." + Margin="10,10,10,4" /> + FontWeight="Bold" + FontSize="10" + Foreground="{DynamicResource ForgeTextMuted}" + Margin="0,10,0,4" /> From eb3e284a55713d73e381b5075239e0899ef51c89 Mon Sep 17 00:00:00 2001 From: Wintersta7e Date: Sat, 7 Mar 2026 13:18:32 +0100 Subject: [PATCH 06/11] style: restyle toolbar with molten forge identity Co-Authored-By: Rooty --- .../ViewModels/MainWindowViewModel.cs | 12 + src/FlowForge.UI/Views/ToolbarView.axaml | 279 +++++++++++------- 2 files changed, 183 insertions(+), 108 deletions(-) diff --git a/src/FlowForge.UI/ViewModels/MainWindowViewModel.cs b/src/FlowForge.UI/ViewModels/MainWindowViewModel.cs index 3a44d60..5b4269f 100644 --- a/src/FlowForge.UI/ViewModels/MainWindowViewModel.cs +++ b/src/FlowForge.UI/ViewModels/MainWindowViewModel.cs @@ -370,6 +370,18 @@ private void Cancel() _cts?.Cancel(); } + [RelayCommand] + private void Undo() + { + Editor.Undo(); + } + + [RelayCommand] + private void Redo() + { + Editor.Redo(); + } + [RelayCommand] private void LoadTemplate(string templateId) { diff --git a/src/FlowForge.UI/Views/ToolbarView.axaml b/src/FlowForge.UI/Views/ToolbarView.axaml index 855493b..7c76275 100644 --- a/src/FlowForge.UI/Views/ToolbarView.axaml +++ b/src/FlowForge.UI/Views/ToolbarView.axaml @@ -8,119 +8,182 @@ x:Class="FlowForge.UI.Views.ToolbarView" x:DataType="vm:MainWindowViewModel"> - - - + + + + + + - + Margin="12,0" /> - + + + + + + + + - - - - - - + + - + + + - + + - - - - - - + + + + + + + + + + + + + + From e9dc892eeefe87361d7afdfc8262ece0021ba43e Mon Sep 17 00:00:00 2001 From: Wintersta7e Date: Sat, 7 Mar 2026 13:23:01 +0100 Subject: [PATCH 07/11] style: restyle canvas with dot grid, molten nodes, diamond ports Co-Authored-By: Rooty --- src/FlowForge.UI/Views/CanvasView.axaml | 115 +++++++++++++++++------- 1 file changed, 82 insertions(+), 33 deletions(-) diff --git a/src/FlowForge.UI/Views/CanvasView.axaml b/src/FlowForge.UI/Views/CanvasView.axaml index 39bc034..2d1d534 100644 --- a/src/FlowForge.UI/Views/CanvasView.axaml +++ b/src/FlowForge.UI/Views/CanvasView.axaml @@ -19,6 +19,7 @@ ItemsDragStartedCommand="{Binding ItemsDragStartedCommand}" ItemsDragCompletedCommand="{Binding ItemsDragCompletedCommand}" Background="{DynamicResource ForgeBg}" + GridCellSize="20" DragDrop.AllowDrop="True"> @@ -26,6 +27,25 @@ + + @@ -54,7 +74,9 @@ + Target="{Binding Target.Anchor}" + Stroke="{DynamicResource ForgeAccent}" + StrokeThickness="2.5" /> @@ -73,54 +95,81 @@ + + + - + Spacing="20" + MaxWidth="400"> - - - - + + + + + + + - + - + + + + + From c6ed992704b0cce94003e2be9fb272c5c8cc62e3 Mon Sep 17 00:00:00 2001 From: Wintersta7e Date: Sat, 7 Mar 2026 13:24:25 +0100 Subject: [PATCH 08/11] style: restyle properties panel with node badge and forge focus Co-Authored-By: Rooty --- src/FlowForge.UI/Views/PropertiesView.axaml | 42 ++++++++++----------- 1 file changed, 20 insertions(+), 22 deletions(-) diff --git a/src/FlowForge.UI/Views/PropertiesView.axaml b/src/FlowForge.UI/Views/PropertiesView.axaml index c96daa1..b9ac829 100644 --- a/src/FlowForge.UI/Views/PropertiesView.axaml +++ b/src/FlowForge.UI/Views/PropertiesView.axaml @@ -5,49 +5,47 @@ xmlns:vm="using:FlowForge.UI.ViewModels" xmlns:views="using:FlowForge.UI.Views" mc:Ignorable="d" - d:DesignWidth="250" d:DesignHeight="600" + d:DesignWidth="290" d:DesignHeight="600" x:Class="FlowForge.UI.Views.PropertiesView" x:DataType="vm:PropertiesViewModel"> - - - + + + + + - - + Padding="10"> From 8f167211f4c9d98b62785b470544aca2447f7e51 Mon Sep 17 00:00:00 2001 From: Wintersta7e Date: Sat, 7 Mar 2026 13:25:12 +0100 Subject: [PATCH 09/11] style: restyle shortcuts dialog with forge theme Co-Authored-By: Rooty --- src/FlowForge.UI/Views/ShortcutsWindow.axaml | 92 +++++++++++--------- 1 file changed, 50 insertions(+), 42 deletions(-) diff --git a/src/FlowForge.UI/Views/ShortcutsWindow.axaml b/src/FlowForge.UI/Views/ShortcutsWindow.axaml index bf4ffc5..16a0c92 100644 --- a/src/FlowForge.UI/Views/ShortcutsWindow.axaml +++ b/src/FlowForge.UI/Views/ShortcutsWindow.axaml @@ -2,69 +2,77 @@ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" x:Class="FlowForge.UI.Views.ShortcutsWindow" Title="Keyboard Shortcuts" - Width="400" Height="400" + Width="420" Height="440" CanResize="False" WindowStartupLocation="CenterOwner" Background="{DynamicResource ForgePanel}"> + Foreground="{DynamicResource ForgeAccent}" /> - - - - - + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + @@ -149,7 +217,7 @@ Tag="batch-sequential-rename" Click="OnTemplateButtonClick"> - + @@ -157,7 +225,7 @@ Tag="image-web-export" Click="OnTemplateButtonClick"> - + @@ -165,7 +233,7 @@ Tag="bulk-image-compress" Click="OnTemplateButtonClick"> - + diff --git a/src/FlowForge.UI/Views/ExecutionLogView.axaml b/src/FlowForge.UI/Views/ExecutionLogView.axaml index 921353d..e5e1936 100644 --- a/src/FlowForge.UI/Views/ExecutionLogView.axaml +++ b/src/FlowForge.UI/Views/ExecutionLogView.axaml @@ -34,12 +34,12 @@ Command="{Binding SelectTabCommand}" CommandParameter="0"> - + + FontSize="10" FontWeight="Bold" /> @@ -51,12 +51,12 @@ Command="{Binding SelectTabCommand}" CommandParameter="1"> - + + FontSize="10" FontWeight="Bold" /> @@ -68,12 +68,12 @@ Command="{Binding SelectTabCommand}" CommandParameter="2"> - + + FontSize="10" FontWeight="Bold" /> @@ -102,16 +102,16 @@ + FontWeight="SemiBold" FontSize="12" /> + FontSize="12" /> - + @@ -47,19 +49,18 @@ - - + + + + diff --git a/src/FlowForge.UI/Views/PropertiesView.axaml b/src/FlowForge.UI/Views/PropertiesView.axaml index b9ac829..b586616 100644 --- a/src/FlowForge.UI/Views/PropertiesView.axaml +++ b/src/FlowForge.UI/Views/PropertiesView.axaml @@ -20,13 +20,13 @@ FontWeight="Bold" Foreground="{DynamicResource ForgeTextMuted}" /> + Foreground="{Binding BadgeForeground}" /> diff --git a/src/FlowForge.UI/Views/ToolbarView.axaml b/src/FlowForge.UI/Views/ToolbarView.axaml index 7c76275..0f3ba53 100644 --- a/src/FlowForge.UI/Views/ToolbarView.axaml +++ b/src/FlowForge.UI/Views/ToolbarView.axaml @@ -4,7 +4,7 @@ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:vm="using:FlowForge.UI.ViewModels" mc:Ignorable="d" - d:DesignWidth="800" d:DesignHeight="40" + d:DesignWidth="800" d:DesignHeight="50" x:Class="FlowForge.UI.Views.ToolbarView" x:DataType="vm:MainWindowViewModel"> @@ -13,11 +13,11 @@ - - + + - - + + @@ -26,164 +26,194 @@ - - - - - - - - - - - - - - - - - - - + VerticalAlignment="Center" Margin="10,0" /> - + + - + VerticalAlignment="Center" Margin="10,0" /> - - + + + + + + + + + + + + + - + VerticalAlignment="Center" /> - - + + + + + + + - +