Editor UI glue for architecture pipe parts. Provides implementations of IArchPipeForms and IArchSheet that route to ArchPipeUi methods to build inspector panels for ArchPipePart and ArchPipeBracketPart.
namespace Sunless.Architecture;
public sealed class ArchPipeForms : IArchPipeForms
{
public void Run( ToolSidebarWidget panel, ArchPipePart part, Action refresh, Action changed )
{
ArchPipeUi.Run( panel, part, refresh, changed );
}
}
public sealed class ArchPipeSheet : IArchSheet
{
public Type Payload => typeof( ArchPipePart );
public void Build( ToolSidebarWidget panel, ArchTool tool, ArchSelection picked, Action refresh, Action changed )
{
if ( picked.Item is ArchPipePart part )
{
ArchPipeUi.Run( panel, part, refresh, changed );
}
}
}
public sealed class ArchPipeBracketSheet : IArchSheet
{
public Type Payload => typeof( ArchPipeBracketPart );
public void Build( ToolSidebarWidget panel, ArchTool tool, ArchSelection picked, Action refresh, Action changed )
{
if ( picked.Item is ArchPipeBracketPart part )
{
ArchPipeUi.Brackets( panel, part, refresh, changed );
}
}
}