modified ITheme interface (#344)
* upgrade to .NET Core 3.2 Preview 3 and fixes for issues created by #314 * Components based on Bootstrap4 for Sections and TabStrip to increase productivity and promote uniformity in Module UIs * rolled back change creating an Infrastructure.Interfaces namespace, modified IModule interface to be strongly typed * modified ITheme interface
This commit is contained in:
parent
02fde9cec3
commit
5a6f939a98
@ -1,20 +0,0 @@
|
|||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
namespace Oqtane.Themes.BlazorTheme
|
|
||||||
{
|
|
||||||
public class Theme : ITheme
|
|
||||||
{
|
|
||||||
public Dictionary<string, string> Properties
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
Dictionary<string, string> properties = new Dictionary<string, string>
|
|
||||||
{
|
|
||||||
{ "Name", "Blazor Theme" },
|
|
||||||
{ "Version", "1.0.0" }
|
|
||||||
};
|
|
||||||
return properties;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
14
Oqtane.Client/Themes/BlazorTheme/ThemeInfo.cs
Normal file
14
Oqtane.Client/Themes/BlazorTheme/ThemeInfo.cs
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
using Oqtane.Models;
|
||||||
|
|
||||||
|
namespace Oqtane.Themes.BlazorTheme
|
||||||
|
{
|
||||||
|
public class ThemeInfo : ITheme
|
||||||
|
{
|
||||||
|
public Theme Theme => new Theme
|
||||||
|
{
|
||||||
|
Name = "Blazor Theme",
|
||||||
|
Version = "1.0.0"
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -1,10 +1,9 @@
|
|||||||
using System;
|
using Oqtane.Models;
|
||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
namespace Oqtane.Themes
|
namespace Oqtane.Themes
|
||||||
{
|
{
|
||||||
public interface ITheme
|
public interface ITheme
|
||||||
{
|
{
|
||||||
Dictionary<string, string> Properties { get; }
|
Theme Theme { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,20 +0,0 @@
|
|||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
namespace Oqtane.Themes.OqtaneTheme
|
|
||||||
{
|
|
||||||
public class Theme : ITheme
|
|
||||||
{
|
|
||||||
public Dictionary<string, string> Properties
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
Dictionary<string, string> properties = new Dictionary<string, string>
|
|
||||||
{
|
|
||||||
{ "Name", "Oqtane Theme" },
|
|
||||||
{ "Version", "1.0.0" }
|
|
||||||
};
|
|
||||||
return properties;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
13
Oqtane.Client/Themes/OqtaneTheme/ThemeInfo.cs
Normal file
13
Oqtane.Client/Themes/OqtaneTheme/ThemeInfo.cs
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
using Oqtane.Models;
|
||||||
|
|
||||||
|
namespace Oqtane.Themes.OqtaneTheme
|
||||||
|
{
|
||||||
|
public class ThemeInfo : ITheme
|
||||||
|
{
|
||||||
|
public Theme Theme => new Theme
|
||||||
|
{
|
||||||
|
Name = "Oqtane Theme",
|
||||||
|
Version = "1.0.0"
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
@ -48,41 +48,22 @@ namespace Oqtane.Repository
|
|||||||
if (themetype != null)
|
if (themetype != null)
|
||||||
{
|
{
|
||||||
var themeobject = Activator.CreateInstance(themetype);
|
var themeobject = Activator.CreateInstance(themetype);
|
||||||
Dictionary<string, string> properties = (Dictionary<string, string>)themetype.GetProperty("Properties").GetValue(themeobject);
|
theme = (Theme)themetype.GetProperty("Theme").GetValue(themeobject);
|
||||||
theme = new Theme
|
|
||||||
{
|
|
||||||
ThemeName = @namespace,
|
|
||||||
Name = GetProperty(properties, "Name"),
|
|
||||||
Version = GetProperty(properties, "Version"),
|
|
||||||
Owner = GetProperty(properties, "Owner"),
|
|
||||||
Url = GetProperty(properties, "Url"),
|
|
||||||
Contact = GetProperty(properties, "Contact"),
|
|
||||||
License = GetProperty(properties, "License"),
|
|
||||||
Dependencies = GetProperty(properties, "Dependencies"),
|
|
||||||
ThemeControls = "",
|
|
||||||
PaneLayouts = "",
|
|
||||||
ContainerControls = "",
|
|
||||||
AssemblyName = assembly.FullName.Split(",")[0]
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
theme = new Theme
|
theme = new Theme
|
||||||
{
|
{
|
||||||
ThemeName = @namespace,
|
|
||||||
Name = themeControlType.Name,
|
Name = themeControlType.Name,
|
||||||
Version = new Version(1, 0, 0).ToString(),
|
Version = new Version(1, 0, 0).ToString()
|
||||||
Owner = "",
|
|
||||||
Url = "",
|
|
||||||
Contact = "",
|
|
||||||
License = "",
|
|
||||||
Dependencies = "",
|
|
||||||
ThemeControls = "",
|
|
||||||
PaneLayouts = "",
|
|
||||||
ContainerControls = "",
|
|
||||||
AssemblyName = assembly.FullName.Split(",")[0]
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
// set internal properties
|
||||||
|
theme.ThemeName = @namespace;
|
||||||
|
theme.ThemeControls = "";
|
||||||
|
theme.PaneLayouts = "";
|
||||||
|
theme.ContainerControls = "";
|
||||||
|
theme.AssemblyName = assembly.FullName.Split(",")[0];
|
||||||
themes.Add(theme);
|
themes.Add(theme);
|
||||||
index = themes.FindIndex(item => item.ThemeName == @namespace);
|
index = themes.FindIndex(item => item.ThemeName == @namespace);
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,17 @@
|
|||||||
{
|
{
|
||||||
public class Theme
|
public class Theme
|
||||||
{
|
{
|
||||||
|
public Theme()
|
||||||
|
{
|
||||||
|
Name = "";
|
||||||
|
Version = "";
|
||||||
|
Owner = "";
|
||||||
|
Url = "";
|
||||||
|
Contact = "";
|
||||||
|
License = "";
|
||||||
|
Dependencies = "";
|
||||||
|
}
|
||||||
|
|
||||||
public string ThemeName { get; set; }
|
public string ThemeName { get; set; }
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
public string Version { get; set; }
|
public string Version { get; set; }
|
||||||
|
Reference in New Issue
Block a user