diff --git a/Source/MonoGame.Extended.NuclexGui/Visuals/Flat/FlatGuiVisualizer.cs b/Source/MonoGame.Extended.NuclexGui/Visuals/Flat/FlatGuiVisualizer.cs
index f2145842..4bbdcfcd 100644
--- a/Source/MonoGame.Extended.NuclexGui/Visuals/Flat/FlatGuiVisualizer.cs
+++ b/Source/MonoGame.Extended.NuclexGui/Visuals/Flat/FlatGuiVisualizer.cs
@@ -30,6 +30,9 @@ namespace MonoGame.Extended.NuclexGui.Visuals.Flat
/// Avaiable renderers
private readonly Dictionary _renderers;
+ /// Assemblies which has renderer implementations
+ public static readonly List ExternalAssembliesWithRenderers = new List();
+
/// Initializes a new gui painter for traditional GUIs
/// Content manager that will be used to load the skin resources
/// Stream from which the GUI Visualizer will read the skin description
@@ -118,10 +121,17 @@ namespace MonoGame.Extended.NuclexGui.Visuals.Flat
}
private void FetchRenderers()
+ {
+ FetchRenderers(typeof(FlatGuiVisualizer).GetTypeInfo().Assembly);
+ foreach(var assembly in ExternalAssembliesWithRenderers)
+ FetchRenderers(assembly);
+ }
+
+ private void FetchRenderers(Assembly assembly)
{
foreach (
var typeinfo in
- typeof(FlatGuiVisualizer).GetTypeInfo().Assembly.DefinedTypes.Where(e => e.IsPublic && !e.IsAbstract))
+ assembly.DefinedTypes.Where(e => e.IsPublic && !e.IsAbstract))
{
// If the type doesn't implement the IFlatcontrolRenderer interface, there's
// no chance that it will implement one of the generic control drawers