mirror of
https://github.com/Artemis-RGB/Artemis
synced 2025-12-13 05:48:35 +00:00
Settings - Changed where panels start scrolling Home - Clip cards to bounds Sidebar - Added category creation/renaming Debugger - Fixed existing window focus Tray icon - Implemented all functionality
28 lines
741 B
C#
28 lines
741 B
C#
using System;
|
|
using Avalonia.Controls;
|
|
using Avalonia.Controls.Templates;
|
|
using ReactiveUI;
|
|
|
|
namespace Artemis.UI
|
|
{
|
|
public class ViewLocator : IDataTemplate
|
|
{
|
|
public bool SupportsRecycling => false;
|
|
|
|
public IControl Build(object data)
|
|
{
|
|
Type dataType = data.GetType();
|
|
string name = dataType.FullName!.Split('`')[0].Replace("ViewModel", "View");
|
|
Type? type = dataType.Assembly.GetType(name);
|
|
|
|
if (type != null)
|
|
return (Control) Activator.CreateInstance(type)!;
|
|
return new TextBlock {Text = "Not Found: " + name};
|
|
}
|
|
|
|
public bool Match(object data)
|
|
{
|
|
return data is ReactiveObject;
|
|
}
|
|
}
|
|
} |