advanced userinterface design

This commit is contained in:
Nitload
2026-04-01 22:20:49 +08:00
parent 24498c2717
commit aa7ece4ed0
42 changed files with 2876 additions and 463 deletions
@@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace StgSharp.UserInterface
{
[AttributeUsage(AttributeTargets.Method, Inherited = true)]
public sealed class PanelStateChangeBindingAttribute(
string statePath,
string panelHostPath
) : Attribute
{
public string StatePath { get; } = string.IsNullOrWhiteSpace(statePath) ?
throw new ArgumentException("Value cannot be null or whitespace.", nameof(statePath)) :
statePath;
public string PanelHostPath { get; } = string.IsNullOrWhiteSpace(panelHostPath) ?
throw new ArgumentException("Value cannot be null or whitespace.", nameof(panelHostPath)) :
panelHostPath;
}
}
@@ -0,0 +1,5 @@
namespace StgSharp.UserInterface
{
[AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)]
public sealed class PanelStateNodeAttribute : Attribute { }
}