Skip to content

Commit

Permalink
add click func
Browse files Browse the repository at this point in the history
  • Loading branch information
weibaohui committed May 7, 2024
1 parent 2b6346f commit 34d4127
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 7 deletions.
4 changes: 2 additions & 2 deletions BlazorApp/Diagrams/KubeNode.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ public KubeNode(BlazorDiagram diagram, T item, Point position = null) : base(pos
Name = Item.Name();
Title = Name;
Diagram = diagram;

Locked = true;
AddPort(PortAlignment.Left);
AddPort(PortAlignment.Right);
AddNode(item);
Expand All @@ -30,4 +30,4 @@ private void AddNode(T item)
KubeNodeContainer<T>.Instance.AddNode(key, this);
Diagram.Nodes.Add(this);
}
}
}
7 changes: 2 additions & 5 deletions BlazorApp/Diagrams/KubeNodeWidget.razor
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,8 @@
{
<PortRenderer @key="port" Port="port" Class="default"/>
}
@{
var typeName = Node.Item.GetType().Name;
var resName = Node.Item.Name();
}
<div style="width: 260px;">

<div style="width: 260px;" onclick="@Show()">
<GridRow Style="align-items: center" Gutter="8">
<GridCol Span="4">

Expand Down
52 changes: 52 additions & 0 deletions BlazorApp/Diagrams/KubeNodeWidget.razor.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
using System.Threading.Tasks;
using BlazorApp.Pages.Common;
using BlazorApp.Pages.Deployment;
using BlazorApp.Pages.Pod;
using BlazorApp.Pages.ReplicaSet;
using BlazorApp.Utils;
using k8s;
using k8s.Models;
using Microsoft.AspNetCore.Components;
Expand All @@ -7,5 +12,52 @@ namespace BlazorApp.Diagrams;

public partial class KubeNodeWidget<T> : PageBase where T : IKubernetesObject<V1ObjectMeta>
{
private string resName;

private string typeName;
[Parameter] public KubeNode<T> Node { get; set; }

protected override async Task OnInitializedAsync()
{
typeName = Node.Item.GetType().Name;
resName = Node.Item.Name();
await base.OnInitializedAsync();
}

private async Task Show()
{
switch (typeName)
{
case "V1Deployment":
await OnDeployClick(Node.Item as V1Deployment);
break;
case "V1Pod":
await OnPodClick(Node.Item as V1Pod);
break;
case "V1ReplicaSet":
await OnRsClick(Node.Item as V1ReplicaSet);
break;
}
}

private async Task OnDeployClick(V1Deployment deploy)
{
await PageDrawerHelper<V1Deployment>.Instance
.SetDrawerService(PageDrawerService.DrawerService)
.ShowDrawerAsync<DeploymentDetailView, V1Deployment, bool>(deploy);
}

private async Task OnPodClick(V1Pod pod)
{
await PageDrawerHelper<V1Pod>.Instance
.SetDrawerService(PageDrawerService.DrawerService)
.ShowDrawerAsync<PodDetailView, V1Pod, bool>(pod);
}

private async Task OnRsClick(V1ReplicaSet rs)
{
await PageDrawerHelper<V1ReplicaSet>.Instance
.SetDrawerService(PageDrawerService.DrawerService)
.ShowDrawerAsync<ReplicaSetDetailView, V1ReplicaSet, bool>(rs);
}
}

0 comments on commit 34d4127

Please sign in to comment.