Files
webwindowconfigurator/WebWindowComplex/Compo/CardSplit.razor
T
Annamaria Sassi b43071ceec - Aggiornato svuotamento dizionario shape e opzioni hw
- Aggiornato calcolo altezza split
2025-12-05 15:36:35 +01:00

266 lines
14 KiB
Plaintext

@using static WebWindowComplex.Json.WindowConst
<div class="card shadow-sm rounded mb-4">
<div class="card-header bg-light bg-opacity-25">
<div class="d-flex justify-content-between align-items-center">
<div class="px-2">
<h5>@(descParentSplit())</h5>
</div>
<div class="px-2">
<button class="btn btn-close" @onclick="ReqClose"></button>
</div>
</div>
</div>
<div class="card-body py-2">
<div class="d-flex justify-content-between align-items-center">
<h5>Split</h5>
@if ((CurrSplit.nSplitQtyVert == 1 && CurrSplit.nSplitQtyHoriz == 0) || (CurrSplit.nSplitQtyVert == 0 && CurrSplit.nSplitQtyHoriz == 1))
{
<div class="input-group mb-2 justify-content-center">
<button class="btn btn-outline-secondary btn-sm" @onclick="() => SwapTwoAree()">Swap Aree</button>
</div>
}
<div class="input-group mb-2 justify-content-center">
<button class="btn btn-outline-secondary btn-sm" @onclick="() => RemoveArea()">Remove split</button>
</div>
<div class="dropdown">
<button class="btn btn-outline-secondary dropdown-toggle btn-sm" type="button" @onclick="ToggleDropdown">
Measure
</button>
<ul class="dropdown-menu @(isOpen ? "show" : "")" style="min-width:5rem; max-width:10rem">
<li>
<button class="dropdown-item" @onclick="() => SetMeasureType(MeasureTypes.ABSOLUTE)">
Absolute
</button>
</li>
<li>
<button class="dropdown-item" @onclick="() => SetMeasureType(MeasureTypes.PROPORTIONAL)">
Proportional
</button>
</li>
<li>
<button class="dropdown-item" @onclick="() => SetMeasureType(MeasureTypes.PERCENTAGE)">
Percentage
</button>
</li>
</ul>
</div>
</div>
<div class="row">
<div class="col-md-12 col-lg-6">
<div class="input-group mb-2">
<label class="input-group-text">Shape</label>
<select class="form-select" @bind="@SplitShapeIndex">
@foreach (var shapeType in CurrSplit.SplitShapeList)
{
<option value=@(shapeType.Id)>@(shapeType.Name)</option>
}
</select>
</div>
</div>
</div>
<div class="row">
@if (CurrSplit.nSplitQtyVert > 0)
{
<div class="col-md-12 col-lg-6">
<div class="input-group mb-2">
<span class="input-group-text">QtyVert</span>
<input type="number" class="form-control" @bind="@SplitQtyVert">
</div>
</div>
}
@if (CurrSplit.nSplitQtyHoriz > 0)
{
<div class="col-md-12 col-lg-6">
<div class="input-group mb-2">
<span class="input-group-text">QtyHoriz</span>
<input type="number" class="form-control" @bind="@SplitQtyHoriz">
</div>
</div>
}
</div>
<div class="row">
@if (CurrSplit.SplitVertList.Count > 0 && CurrSplit.SplitHorizList.Count > 0)
{
<div class="col-md-12 col-lg-6">
@for (int i = 0; i < CurrSplit.SplitVertList.Count; i++)
{
<EditSplitDimensions CurrRec="CurrSplit.SplitVertList[i]"
Name="Width"
Index="i"
EC_Update="UpdateDimension">
</EditSplitDimensions>
@* <div class="input-group mb-2">
<span class="input-group-text">Width</span>
<input type="number" class="form-control" @bind="@dim.dDimension">
<select class="form-select" style="max-width:6rem; background-color:#e9ecef" @bind="@dim.SelMeasureTypeIndex">
@foreach (var mType in dim.MeasureTypeList)
{
<option value=@(mType.Id)>
@switch (mType.Name)
{
case "Absolute":
{
<span class="input-group-text">mm</span>
break;
}
case "Proportional":
{
<span class="input-group-text">*</span>
break;
}
case "Percentage":
{
<span class="input-group-text">%</span>
break;
}
}
</option>
}
</select>
</div>*@
}
</div>
<div class="col-md-12 col-lg-6">
@for (int i = 0; i < CurrSplit.SplitHorizList.Count; i++)
{
<EditSplitDimensions CurrRec="CurrSplit.SplitHorizList[i]"
Name="Height"
Index="i"
EC_Update="UpdateDimension">
</EditSplitDimensions>
@* <div class="input-group mb-2">
<span class="input-group-text">Height</span>
<input type="number" class="form-control" @bind="@dim.dDimension">
<select class="form-select" style="max-width:6rem; background-color:#e9ecef" @bind="@dim.SelMeasureTypeIndex">
@foreach (var mType in dim.MeasureTypeList)
{
<option value=@(mType.Id)>
@switch (mType.Name)
{
case "Absolute":
{
<span class="input-group-text">mm</span>
break;
}
case "Proportional":
{
<span class="input-group-text">*</span>
break;
}
case "Percentage":
{
<span class="input-group-text">%</span>
break;
}
}
</option>
}
</select>
</div> *@
}
</div>
}
else if (CurrSplit.SplitHorizList.Count > 0)
{
@for (int i = 0; i < CurrSplit.SplitHorizList.Count; i++)
{
<EditSplitDimensions CurrRec="CurrSplit.SplitHorizList[i]"
Name="Height"
Index="i"
EC_Update="UpdateDimension">
</EditSplitDimensions>
@* <div class="col-md-12 col-lg-6">
<div class="input-group mb-2">
<span class="input-group-text">Height</span>
<input type="number" class="form-control" @bind="@dim.dDimension">
<select class="form-select" style="max-width:6rem; background-color:#e9ecef" @bind="@dim.SelMeasureTypeIndex">
@foreach (var mType in dim.MeasureTypeList)
{
<option value=@(mType.Id)>
@switch (mType.Name)
{
case "Absolute":
{
<span class="input-group-text">mm</span>
break;
}
case "Proportional":
{
<span class="input-group-text">*</span>
break;
}
case "Percentage":
{
<span class="input-group-text">%</span>
break;
}
}
</option>
}
</select>
</div>
</div> *@
}
}
else if (CurrSplit.SplitVertList.Count > 0)
{
@for (int i = 0; i < CurrSplit.SplitVertList.Count; i++)
{
<EditSplitDimensions CurrRec="CurrSplit.SplitVertList[i]"
Name="Width"
Index="i"
EC_Update="UpdateDimension">
</EditSplitDimensions>
@* <div class="col-md-12 col-lg-6">
<div class="input-group mb-2">
<span class="input-group-text">Width</span>
<input type="number" class="form-control" @bind="@dim.dDimension">
<select class="form-select" style="max-width:6rem; background-color:#e9ecef" @bind="@dim.SelMeasureTypeIndex">
@foreach (var mType in dim.MeasureTypeList)
{
<option value=@(mType.Id)>
@switch (mType.Name)
{
case "Absolute":
{
<span class="input-group-text">mm</span>
break;
}
case "Proportional":
{
<span class="input-group-text">*</span>
break;
}
case "Percentage":
{
<span class="input-group-text">%</span>
break;
}
}
</option>
}
</select>
</div>
</div> *@
}
}
</div>
@if (CurrSplit.SelSplitShape == Json.WindowConst.SplitShapes.GRID)
{
<div class="row">
<div class="col-md-12 col-lg-6">
<div class="d-flex justify-content-start fs-5 mb-2">
<div class="px-1">
<input class="form-check-input ml-auto" type="checkbox" name="SplitStartVert" checked="@CurrSplit.bSplitStartVert" @oninput="(ChangeEventArgs e) => ChangeStartVert(e)">
</div>
<div class="px-2">
<label class="form-check-label fs-6 text-dark">StartVert</label>
</div>
</div>
</div>
</div>
}
</div>
</div>