avancement inventaire

master
Baptiste BAVEREL 2 years ago
parent cc027a1f44
commit d32ad07fe4

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -9,10 +9,14 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<None Remove="Components\Inventory.razor.css" />
<None Remove="Components\InventoryItem.razor.css" /> <None Remove="Components\InventoryItem.razor.css" />
<None Remove="Components\ListItem.razor.css" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Content Include="Components\Inventory.razor.css" />
<Content Include="Components\ListItem.razor.css" />
<Content Include="Components\InventoryItem.razor.css" /> <Content Include="Components\InventoryItem.razor.css" />
</ItemGroup> </ItemGroup>

@ -2,7 +2,6 @@
<div class="container"> <div class="container">
<div class="row"> <div class="row">
<div class="col-6"> <div class="col-6">
<div>Available items:</div> <div>Available items:</div>
<div> <div>
<div class="css-grid"> <div class="css-grid">

@ -6,14 +6,27 @@
<div> <div>
<div class="css-grid"> <div class="css-grid">
@foreach (var item in items) @foreach (var item in Items)
{ {
<InventoryItem Item="item" NoDrop="true"/> <ListItem Item="item" NoDrop="true"/>
} }
</div> </div>
</div> </div>
</div> </div>
<div class="col-6">
<div>Inventory</div>
<div>
<div class="css-gridInv">
@for(int i = 0; i<40; i++)
{
<InventoryItem Item="null" NoDrop="true"/>
}
</div>
</div>
</div>
</div> </div>
</div> </div>
</CascadingValue> </CascadingValue>

@ -8,10 +8,8 @@ namespace BlazorApp1.Components
public partial class Inventory public partial class Inventory
{ {
[Parameter] [Parameter]
public List<Item> items { get; set; } public List<Item> Items { get; set; }
[Parameter]
public int totalItem { get; set; }
public Item CurrentDragItem { get; set; }
} }
} }

@ -0,0 +1,13 @@
.css-grid {
grid-template-columns: repeat(4,minmax(0,1fr));
gap: 10px;
display: grid;
width: 286px;
}
.css-gridInv {
grid-template-columns: repeat(10,minmax(0,1fr));
gap: 10px;
display: grid;
width: 686px;
}

@ -14,7 +14,7 @@ namespace BlazorApp1.Components
public bool NoDrop { get; set; } public bool NoDrop { get; set; }
[CascadingParameter] [CascadingParameter]
public Crafting Parent { get; set; } public Inventory Parent { get; set; }
internal void OnDragEnter() internal void OnDragEnter()
{ {
@ -22,8 +22,6 @@ namespace BlazorApp1.Components
{ {
return; return;
} }
Parent.Actions.Add(new CraftingAction { Action = "Drag Enter", Item = this.Item, Index = this.Index });
} }
internal void OnDragLeave() internal void OnDragLeave()
@ -33,7 +31,6 @@ namespace BlazorApp1.Components
return; return;
} }
Parent.Actions.Add(new CraftingAction { Action = "Drag Leave", Item = this.Item, Index = this.Index });
} }
internal void OnDrop() internal void OnDrop()
@ -44,19 +41,11 @@ namespace BlazorApp1.Components
} }
this.Item = Parent.CurrentDragItem; this.Item = Parent.CurrentDragItem;
Parent.RecipeItems[this.Index] = this.Item;
Parent.Actions.Add(new CraftingAction { Action = "Drop", Item = this.Item, Index = this.Index });
// Check recipe
Parent.CheckRecipe();
} }
private void OnDragStart() private void OnDragStart()
{ {
Parent.CurrentDragItem = this.Item; Parent.CurrentDragItem = this.Item;
Parent.Actions.Add(new CraftingAction { Action = "Drag Start", Item = this.Item, Index = this.Index });
} }
} }
} }

@ -0,0 +1,15 @@
<div
class="item"
ondragover="event.preventDefault();"
draggable="true"
@ondragstart="@OnDragStart"
@ondrop="@OnDrop"
@ondragenter="@OnDragEnter"
@ondragleave="@OnDragLeave">
@if (Item != null)
{
//<img src="data:image/png;base64, @(Item.ImageBase64)" class="img-thumbnail" title="@Item.DisplayName" alt="@Item.DisplayName"/>
@Item.DisplayName
}
</div>

@ -0,0 +1,51 @@
using Microsoft.AspNetCore.Components;
namespace BlazorApp1.Components
{
public partial class ListItem
{
[Parameter]
public int Index { get; set; }
[Parameter]
public Item Item { get; set; }
[Parameter]
public bool NoDrop { get; set; }
[CascadingParameter]
public Inventory Parent { get; set; }
internal void OnDragEnter()
{
if (NoDrop)
{
return;
}
}
internal void OnDragLeave()
{
if (NoDrop)
{
return;
}
}
internal void OnDrop()
{
if (NoDrop)
{
return;
}
//this.Item = Parent.CurrentDragItem;
}
private void OnDragStart()
{
Parent.CurrentDragItem = this.Item;
}
}
}

@ -0,0 +1,6 @@
.item {
width: 64px;
height: 64px;
border: 1px solid;
overflow: hidden;
}

@ -1,8 +1,9 @@
@page "/inventaire" @page "/inventaire"
@using System.Globalization
@using BlazorApp1.Components
<h1>Inventaire</h1> <h1>Inventaire</h1>
@OnReadData;
<div> <div>
<BlazorApp1.Components.Inventory Items="Items" totalItems="totalItems"/> <Inventory Items="Items"/>
</div> </div>

@ -1,34 +1,32 @@
using BlazorApp1.Components; using BlazorApp1.Components;
using BlazorApp1.Models; using BlazorApp1.Models;
using BlazorApp1.Sevices; using BlazorApp1.Sevices;
using Blazorise.DataGrid;
using Microsoft.AspNetCore.Components; using Microsoft.AspNetCore.Components;
namespace BlazorApp1.Pages namespace BlazorApp1.Pages
{ {
public partial class PageInventory public partial class PageInventaire
{ {
[Parameter]
public List<Item> Items { get; set; }
[Parameter]
public int totalItems { get; set; }
[Inject] [Inject]
public IDataService DataService { get; set; } public IDataService DataService { get; set; }
private async Task OnReadData(DataGridReadDataEventArgs<Item> e) public List<Item> Items { get; set; } = new List<Item>();
protected override async Task OnAfterRenderAsync(bool firstRender)
{ {
if (e.CancellationToken.IsCancellationRequested) base.OnAfterRenderAsync(firstRender);
if (!firstRender)
{ {
return; return;
} }
if (!e.CancellationToken.IsCancellationRequested) Items = await DataService.List(0, await DataService.Count());
{
Items = await DataService.List(e.Page, e.PageSize);
totalItems = await DataService.Count(); StateHasChanged();
}
} }
} }

@ -11,7 +11,7 @@
"projectName": "BlazorApp1", "projectName": "BlazorApp1",
"projectPath": "C:\\Users\\babaverel\\source\\repos\\Blazor\\BlazorApp1\\BlazorApp1.csproj", "projectPath": "C:\\Users\\babaverel\\source\\repos\\Blazor\\BlazorApp1\\BlazorApp1.csproj",
"packagesPath": "C:\\Users\\babaverel\\.nuget\\packages\\", "packagesPath": "C:\\Users\\babaverel\\.nuget\\packages\\",
"outputPath": "C:\\Users\\babaverel\\Source\\Repos\\Blazor\\BlazorApp1\\obj\\", "outputPath": "C:\\Users\\babaverel\\source\\repos\\Blazor\\BlazorApp1\\obj\\",
"projectStyle": "PackageReference", "projectStyle": "PackageReference",
"fallbackFolders": [ "fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"

@ -23,10 +23,6 @@ build_metadata.AdditionalFiles.CssScope =
build_metadata.AdditionalFiles.TargetPath = Q29tcG9uZW50c1xDYXJkLnJhem9y build_metadata.AdditionalFiles.TargetPath = Q29tcG9uZW50c1xDYXJkLnJhem9y
build_metadata.AdditionalFiles.CssScope = build_metadata.AdditionalFiles.CssScope =
[C:/Users/babaverel/source/repos/Blazor/BlazorApp1/Components/Inventory.razor]
build_metadata.AdditionalFiles.TargetPath = Q29tcG9uZW50c1xJbnZlbnRvcnkucmF6b3I=
build_metadata.AdditionalFiles.CssScope =
[C:/Users/babaverel/source/repos/Blazor/BlazorApp1/Components/ShowItems.razor] [C:/Users/babaverel/source/repos/Blazor/BlazorApp1/Components/ShowItems.razor]
build_metadata.AdditionalFiles.TargetPath = Q29tcG9uZW50c1xTaG93SXRlbXMucmF6b3I= build_metadata.AdditionalFiles.TargetPath = Q29tcG9uZW50c1xTaG93SXRlbXMucmF6b3I=
build_metadata.AdditionalFiles.CssScope = build_metadata.AdditionalFiles.CssScope =
@ -131,10 +127,18 @@ build_metadata.AdditionalFiles.CssScope = b-tdt2ebyjkm
build_metadata.AdditionalFiles.TargetPath = Q29tcG9uZW50c1xDcmFmdGluZ0l0ZW0ucmF6b3I= build_metadata.AdditionalFiles.TargetPath = Q29tcG9uZW50c1xDcmFmdGluZ0l0ZW0ucmF6b3I=
build_metadata.AdditionalFiles.CssScope = b-prsi1ksbyr build_metadata.AdditionalFiles.CssScope = b-prsi1ksbyr
[C:/Users/babaverel/source/repos/Blazor/BlazorApp1/Components/Inventory.razor]
build_metadata.AdditionalFiles.TargetPath = Q29tcG9uZW50c1xJbnZlbnRvcnkucmF6b3I=
build_metadata.AdditionalFiles.CssScope = b-3fa8gzmeax
[C:/Users/babaverel/source/repos/Blazor/BlazorApp1/Components/InventoryItem.razor] [C:/Users/babaverel/source/repos/Blazor/BlazorApp1/Components/InventoryItem.razor]
build_metadata.AdditionalFiles.TargetPath = Q29tcG9uZW50c1xJbnZlbnRvcnlJdGVtLnJhem9y build_metadata.AdditionalFiles.TargetPath = Q29tcG9uZW50c1xJbnZlbnRvcnlJdGVtLnJhem9y
build_metadata.AdditionalFiles.CssScope = b-1m3r3agevu build_metadata.AdditionalFiles.CssScope = b-1m3r3agevu
[C:/Users/babaverel/source/repos/Blazor/BlazorApp1/Components/ListItem.razor]
build_metadata.AdditionalFiles.TargetPath = Q29tcG9uZW50c1xMaXN0SXRlbS5yYXpvcg==
build_metadata.AdditionalFiles.CssScope = b-ru82o536pj
[C:/Users/babaverel/source/repos/Blazor/BlazorApp1/Shared/MainLayout.razor] [C:/Users/babaverel/source/repos/Blazor/BlazorApp1/Shared/MainLayout.razor]
build_metadata.AdditionalFiles.TargetPath = U2hhcmVkXE1haW5MYXlvdXQucmF6b3I= build_metadata.AdditionalFiles.TargetPath = U2hhcmVkXE1haW5MYXlvdXQucmF6b3I=
build_metadata.AdditionalFiles.CssScope = b-45rkf8v3vv build_metadata.AdditionalFiles.CssScope = b-45rkf8v3vv

@ -109,3 +109,4 @@ C:\Users\babaverel\Source\Repos\Blazor2\BlazorApp1\obj\Debug\net6.0\BlazorApp1.p
C:\Users\babaverel\Source\Repos\Blazor2\BlazorApp1\obj\Debug\net6.0\BlazorApp1.genruntimeconfig.cache C:\Users\babaverel\Source\Repos\Blazor2\BlazorApp1\obj\Debug\net6.0\BlazorApp1.genruntimeconfig.cache
C:\Users\babaverel\Source\Repos\Blazor2\BlazorApp1\obj\Debug\net6.0\ref\BlazorApp1.dll C:\Users\babaverel\Source\Repos\Blazor2\BlazorApp1\obj\Debug\net6.0\ref\BlazorApp1.dll
C:\Users\babaverel\source\repos\Blazor\BlazorApp1\obj\Debug\net6.0\scopedcss\Components\InventoryItem.razor.rz.scp.css C:\Users\babaverel\source\repos\Blazor\BlazorApp1\obj\Debug\net6.0\scopedcss\Components\InventoryItem.razor.rz.scp.css
C:\Users\babaverel\source\repos\Blazor\BlazorApp1\obj\Debug\net6.0\scopedcss\Components\Inventory.razor.rz.scp.css

File diff suppressed because one or more lines are too long

@ -0,0 +1,13 @@
.css-grid[b-3fa8gzmeax] {
grid-template-columns: repeat(4,minmax(0,1fr));
gap: 10px;
display: grid;
width: 286px;
}
.css-gridInv[b-3fa8gzmeax] {
grid-template-columns: repeat(10,minmax(0,1fr));
gap: 10px;
display: grid;
width: 686px;
}

@ -27,6 +27,20 @@
border: 1px solid; border: 1px solid;
overflow: hidden; overflow: hidden;
} }
/* _content/BlazorApp1/Components/Inventory.razor.rz.scp.css */
.css-grid[b-3fa8gzmeax] {
grid-template-columns: repeat(4,minmax(0,1fr));
gap: 10px;
display: grid;
width: 286px;
}
.css-gridInv[b-3fa8gzmeax] {
grid-template-columns: repeat(10,minmax(0,1fr));
gap: 10px;
display: grid;
width: 686px;
}
/* _content/BlazorApp1/Components/InventoryItem.razor.rz.scp.css */ /* _content/BlazorApp1/Components/InventoryItem.razor.rz.scp.css */
.item[b-1m3r3agevu] { .item[b-1m3r3agevu] {
width: 64px; width: 64px;

@ -25,6 +25,20 @@
border: 1px solid; border: 1px solid;
overflow: hidden; overflow: hidden;
} }
/* _content/BlazorApp1/Components/Inventory.razor.rz.scp.css */
.css-grid[b-3fa8gzmeax] {
grid-template-columns: repeat(4,minmax(0,1fr));
gap: 10px;
display: grid;
width: 286px;
}
.css-gridInv[b-3fa8gzmeax] {
grid-template-columns: repeat(10,minmax(0,1fr));
gap: 10px;
display: grid;
width: 686px;
}
/* _content/BlazorApp1/Components/InventoryItem.razor.rz.scp.css */ /* _content/BlazorApp1/Components/InventoryItem.razor.rz.scp.css */
.item[b-1m3r3agevu] { .item[b-1m3r3agevu] {
width: 64px; width: 64px;

@ -1,6 +1,6 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "0bAUduup7fOYSy5XpDx0jzYNQwBj7QKAiO1bai6KUjIZOsU1qeeEMq8bwWfcNGU6Mnk1ahQJuReu0oHXfG7M+w==", "dgSpecHash": "zU27R6ss55O+bItHgbuQSmJz0qsURKZTsMsTzFEvjdj/YTWwhteV32S5RTamP5ID0H7K0c4SLtGhHCrAoZFmZQ==",
"success": true, "success": true,
"projectFilePath": "C:\\Users\\babaverel\\source\\repos\\Blazor\\BlazorApp1\\BlazorApp1.csproj", "projectFilePath": "C:\\Users\\babaverel\\source\\repos\\Blazor\\BlazorApp1\\BlazorApp1.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [

@ -104,3 +104,20 @@
2.0 2.0
2.0 2.0
2.0 2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save