From 96bea7842403958e7974be0752e26d5b0d0f4ee3 Mon Sep 17 00:00:00 2001 From: sbwalker Date: Fri, 19 Dec 2025 15:35:35 -0500 Subject: [PATCH] allow menu component to be extensible --- .../Themes/Controls/Theme/Menu.razor | 35 +++++++++++++------ .../Themes/OqtaneTheme/Themes/Default.razor | 3 +- 2 files changed, 26 insertions(+), 12 deletions(-) diff --git a/Oqtane.Client/Themes/Controls/Theme/Menu.razor b/Oqtane.Client/Themes/Controls/Theme/Menu.razor index 0f2610cc..738ece1b 100644 --- a/Oqtane.Client/Themes/Controls/Theme/Menu.razor +++ b/Oqtane.Client/Themes/Controls/Theme/Menu.razor @@ -1,20 +1,33 @@ -@namespace Oqtane.Themes.Controls +@namespace Oqtane.Themes.Controls -@switch (Orientation) +@if (ComponentType != null) { - case "Horizontal": - - break; - default: // Vertical - { - - break; - } + } @code{ - [Parameter] public string Orientation { get; set; } + [Parameter] + public string MenuType { get; set; } + + public Type ComponentType { get; set; } + + protected override void OnInitialized() + { + if (string.IsNullOrEmpty(MenuType) && !string.IsNullOrEmpty(Orientation)) + { + if (Orientation == "Horizontal") + { + MenuType = "Oqtane.Themes.Controls.MenuHorizontal, Oqtane.Client"; + } + else + { + MenuType = "Oqtane.Themes.Controls.MenuVertical, Oqtane.Client"; + } + } + + ComponentType = Type.GetType(MenuType); + } } diff --git a/Oqtane.Client/Themes/OqtaneTheme/Themes/Default.razor b/Oqtane.Client/Themes/OqtaneTheme/Themes/Default.razor index 5032499a..f4fe08d6 100644 --- a/Oqtane.Client/Themes/OqtaneTheme/Themes/Default.razor +++ b/Oqtane.Client/Themes/OqtaneTheme/Themes/Default.razor @@ -4,7 +4,8 @@
- + +