Create game from form #15

Merged
Egamorf merged 8 commits from feature/create-game into main 2025-04-15 23:33:02 +02:00
4 changed files with 25 additions and 10 deletions
Showing only changes of commit 392a613094 - Show all commits

View File

@@ -6,6 +6,8 @@
type="text" type="text"
class="search-field" class="search-field"
placeholder="@Placeholder" placeholder="@Placeholder"
disabled="@IsDisable"
style="@(IsDisable ? "pointer-events: none" : "")"
@bind=@Text @bind=@Text
@bind:event="oninput" @bind:event="oninput"
@bind:after=HandleTextChanged @bind:after=HandleTextChanged

View File

@@ -8,6 +8,7 @@ public partial class SearchInput
{ {
[Parameter] public string? Text { get; set; } [Parameter] public string? Text { get; set; }
[Parameter] public string? Placeholder { get; set; } [Parameter] public string? Placeholder { get; set; }
[Parameter] public bool IsDisable { get; set; }
[Parameter] public EventCallback<string> TextChanged { get; set; } [Parameter] public EventCallback<string> TextChanged { get; set; }
[Parameter] public EventCallback ClearClicked { get; set; } [Parameter] public EventCallback ClearClicked { get; set; }
[Parameter] public EventCallback SearchClicked { get; set; } [Parameter] public EventCallback SearchClicked { get; set; }
@@ -39,11 +40,17 @@ public partial class SearchInput
} }
private async Task HandleSearchClicked() private async Task HandleSearchClicked()
{ {
await SearchClicked.InvokeAsync(); if (!IsDisable)
{
await SearchClicked.InvokeAsync();
}
} }
private async Task HandleFocusIn() private async Task HandleFocusIn()
{ {
await FocusIn.InvokeAsync(); if (!IsDisable)
{
await FocusIn.InvokeAsync();
}
} }
private MarkupString GetSearchIcon() private MarkupString GetSearchIcon()

View File

@@ -24,11 +24,15 @@ public partial class Select<TItem, THeader>
private string AddLabel = string.Empty; private string AddLabel = string.Empty;
private EditContext? QuickAddEditContext; private EditContext? QuickAddEditContext;
public void Close() => public void Close()
{
IsContentOpen = false; IsContentOpen = false;
}
public void Open() => public void Open()
{
IsContentOpen = true; IsContentOpen = true;
}
protected override void OnInitialized() protected override void OnInitialized()
{ {
@@ -47,12 +51,14 @@ public partial class Select<TItem, THeader>
private void HandleButtonClicked() private void HandleButtonClicked()
{ {
if (!DisableClicked) if (!DisableClicked && IsContentOpen)
IsContentOpen = !IsContentOpen; Close();
if (!DisableClicked && !IsContentOpen)
Open();
} }
private void HandleContentClosed() => private void HandleContentClosed() => Close();
IsContentOpen = false;
private async Task HandleValueClicked(TItem value) private async Task HandleValueClicked(TItem value)
{ {

View File

@@ -5,12 +5,12 @@
@typeparam TItem @typeparam TItem
<Select @ref=Select TItem="TItem" THeader="string" Theme="Theme" Type="SelectType.Multiple" DisableClicked=true <Select @ref=Select TItem="TItem" THeader="string" Theme="Theme" Type="SelectType.Multiple"
Params="SelectParams" Values=Values ValuesChanged="HandleValuesChanged" QuickAdd=QuickAdd> Params="SelectParams" Values=Values ValuesChanged="HandleValuesChanged" QuickAdd=QuickAdd>
<div class="@SelectHelper.GetClassFromTheme(Theme)"> <div class="@SelectHelper.GetClassFromTheme(Theme)">
<SearchInput @ref=SearchInput Icon="SearchInputIcon.Dropdown" Placeholder="@Placeholder" <SearchInput @ref=SearchInput Icon="SearchInputIcon.Dropdown" Placeholder="@Placeholder"
TextChanged="HandleClearClicked" ClearClicked="HandleClearClicked" TextChanged="HandleClearClicked" ClearClicked="HandleClearClicked" IsDisable=QuickAdd
FocusIn="HandleFocusIn" SearchClicked="HandleFocusIn" /> FocusIn="HandleFocusIn" SearchClicked="HandleFocusIn" />
</div> </div>