Lettura BTL e rappresentazione svg per Aedifica

This commit is contained in:
Emmanuele Sassi
2025-08-07 14:35:19 +02:00
parent 74b4264539
commit 08c94fddcb
8 changed files with 166 additions and 46 deletions
+26 -19
View File
@@ -1,22 +1,29 @@
<div class="card text-center">
<div class="card-header" style="background-color: #d5f1f2;">
<ul class="nav nav-tabs card-header-tabs">
<li class="nav-item">
File
</li>
</ul>
</div>
<div class="card-body">
<div class="alert alert-light text-center display-4">
<div class="container">
<div class="row">
<div class="mb-3" >
<input type="text" style="height: 30rem" class="form-control" id="exampleFormControlInput1" @bind="@text">
<div class="row">
<div class="col-6">
<div class="card text-center" style="min-height: 50rem">
<div class="card-header" style="background-color: #d5f1f2;">
<ul class="nav nav-tabs card-header-tabs">
<li class="nav-item">
File BTL
</li>
</ul>
</div>
<div class="card-body">
<div class="alert alert-light text-center display-4">
<div class="container">
<div class="row">
<div class="mb-3">
<input type="text" style="height: 30rem" class="form-control" id="exampleFormControlInput1" @bind="@m_FilePath">
<button class="btn btn-lg btn-primary btn-sm" @onclick="DoSave">Save</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-6">
@outSvg
</div>
</div>
@@ -10,13 +10,46 @@ namespace WebAedificaConfigurator
{
public partial class WebAedificaMaker
{
string text = "";
string m_FilePath = "";
string m_sSvg = "";
[Parameter]
public EventCallback<string> EC_OnSave { get; set; }
public EventCallback<Dictionary<string,string>> EC_OnSave { get; set; }
[Parameter]
public string CssSvg { get; set; } = "responsive-svg";
[Parameter]
public string LiveSVG
{
get => m_sSvg;
set => m_sSvg = value;
}
protected async Task DoSave()
{
await EC_OnSave.InvokeAsync(text);
Dictionary<string,string> Args = new Dictionary<string,string>();
Args.Add("FilePath", m_FilePath);
Args.Add("Mode", 1.ToString());
await EC_OnSave.InvokeAsync(Args);
}
/// <summary>
/// Componente SVG da mostrare
/// </summary>
protected MarkupString outSvg
{
get
{
// aggiunta gestione classe svg per posizionamento con costraints
var newSvg = LiveSVG.Replace("<svg", $"<svg class=\"{CssSvg}\"");
return (MarkupString)newSvg;
}
}
private string mainCss
{
get => "col-6";
}
}
}