Чуть-чуть
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
namespace Pf2eViewer;
|
namespace Pf2eViewer.EntityTreeViewer;
|
||||||
|
|
||||||
partial class EntityTreeViewerControl
|
partial class EntityTreeViewerControl
|
||||||
{
|
{
|
||||||
@@ -36,7 +36,7 @@ partial class EntityTreeViewerControl
|
|||||||
ContentPanel.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
|
ContentPanel.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
|
||||||
ContentPanel.Location = new Point(0, 0);
|
ContentPanel.Location = new Point(0, 0);
|
||||||
ContentPanel.Name = "ContentPanel";
|
ContentPanel.Name = "ContentPanel";
|
||||||
ContentPanel.Size = new Size(420, 520);
|
ContentPanel.Size = new Size(400, 500);
|
||||||
ContentPanel.TabIndex = 2;
|
ContentPanel.TabIndex = 2;
|
||||||
ContentPanel.Resize += ContentPanel_Resize;
|
ContentPanel.Resize += ContentPanel_Resize;
|
||||||
//
|
//
|
||||||
@@ -46,7 +46,7 @@ partial class EntityTreeViewerControl
|
|||||||
AutoScaleMode = AutoScaleMode.Font;
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
Controls.Add(ContentPanel);
|
Controls.Add(ContentPanel);
|
||||||
Name = "EntityTreeViewerControl";
|
Name = "EntityTreeViewerControl";
|
||||||
Size = new Size(420, 520);
|
Size = new Size(400, 500);
|
||||||
ResumeLayout(false);
|
ResumeLayout(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,6 @@
|
|||||||
using System.Data;
|
namespace Pf2eViewer.EntityTreeViewer;
|
||||||
using Pf2eViewer.EntityTreeViewer;
|
|
||||||
|
|
||||||
namespace Pf2eViewer;
|
public sealed partial class EntityTreeViewerControl : UserControl
|
||||||
|
|
||||||
public partial class EntityTreeViewerControl : UserControl
|
|
||||||
{
|
{
|
||||||
private int _itemHeight = 20;
|
private int _itemHeight = 20;
|
||||||
|
|
||||||
@@ -43,9 +40,9 @@ public partial class EntityTreeViewerControl : UserControl
|
|||||||
|
|
||||||
public int NameWidth { get; private set; } = 200;
|
public int NameWidth { get; private set; } = 200;
|
||||||
|
|
||||||
private readonly List<StructureField> Rows = [];
|
private readonly List<StructureField> _rows = [];
|
||||||
|
|
||||||
private List<EntityTreeViewerRow> ViewerRows = [];
|
private List<EntityTreeViewerRow> _viewerRows = [];
|
||||||
|
|
||||||
public DarkModeCS? DarkMode;
|
public DarkModeCS? DarkMode;
|
||||||
|
|
||||||
@@ -91,17 +88,17 @@ public partial class EntityTreeViewerControl : UserControl
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Rows.Clear();
|
_rows.Clear();
|
||||||
|
|
||||||
StructureBuilder builder = new();
|
StructureBuilder builder = new();
|
||||||
|
|
||||||
Rows.Add(builder.Create("Entity", EntityView.Entity));
|
_rows.Add(builder.Create("Entity", EntityView.Entity));
|
||||||
|
|
||||||
if (EntityView.SubEntity is not null)
|
if (EntityView.SubEntity is not null)
|
||||||
{
|
{
|
||||||
string typeName = EntityView.SubEntity.GetType().Name;
|
string typeName = EntityView.SubEntity.GetType().Name;
|
||||||
|
|
||||||
Rows.Add(builder.Create(typeName, EntityView.SubEntity));
|
_rows.Add(builder.Create(typeName, EntityView.SubEntity));
|
||||||
}
|
}
|
||||||
|
|
||||||
UpdateRows();
|
UpdateRows();
|
||||||
@@ -110,23 +107,23 @@ public partial class EntityTreeViewerControl : UserControl
|
|||||||
|
|
||||||
public void UpdateRows()
|
public void UpdateRows()
|
||||||
{
|
{
|
||||||
ViewerRows = Rows.SelectMany(r => r.GetTextRows(this)).ToList();
|
_viewerRows = _rows.SelectMany(r => r.GetTextRows(this)).ToList();
|
||||||
|
|
||||||
ContentPanel.Controls.Clear();
|
ContentPanel.Controls.Clear();
|
||||||
|
|
||||||
ContentPanel.Controls.AddRange(ViewerRows.ToArray());
|
ContentPanel.Controls.AddRange(_viewerRows.ToArray());
|
||||||
|
|
||||||
UpdateView();
|
UpdateView();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void UpdateView()
|
public void UpdateView()
|
||||||
{
|
{
|
||||||
foreach (EntityTreeViewerRow row in ViewerRows)
|
foreach (EntityTreeViewerRow row in _viewerRows)
|
||||||
{
|
{
|
||||||
row.Visible = row.Item.Visible;
|
row.Visible = row.Item.Visible;
|
||||||
}
|
}
|
||||||
|
|
||||||
List<EntityTreeViewerRow> rows = ViewerRows.Where(r => r.Item.Visible).ToList();
|
List<EntityTreeViewerRow> rows = _viewerRows.Where(r => r.Item.Visible).ToList();
|
||||||
|
|
||||||
int maxNameWidth = -1;
|
int maxNameWidth = -1;
|
||||||
int viewRow = 0;
|
int viewRow = 0;
|
||||||
@@ -150,7 +147,7 @@ public partial class EntityTreeViewerControl : UserControl
|
|||||||
|
|
||||||
public void UpdateScroll()
|
public void UpdateScroll()
|
||||||
{
|
{
|
||||||
List<EntityTreeViewerRow> rows = ViewerRows.Where(r => r.Item.Visible).ToList();
|
List<EntityTreeViewerRow> rows = _viewerRows.Where(r => r.Item.Visible).ToList();
|
||||||
_visibleRows = rows.Count;
|
_visibleRows = rows.Count;
|
||||||
|
|
||||||
ContentPanel.VerticalScroll.Enabled = true;
|
ContentPanel.VerticalScroll.Enabled = true;
|
||||||
|
|||||||
Generated
+3
-1
@@ -1,4 +1,6 @@
|
|||||||
namespace Pf2eViewer;
|
using Pf2eViewer.EntityTreeViewer;
|
||||||
|
|
||||||
|
namespace Pf2eViewer;
|
||||||
|
|
||||||
partial class TestForm
|
partial class TestForm
|
||||||
{
|
{
|
||||||
|
|||||||
+3
-12
@@ -1,22 +1,13 @@
|
|||||||
using System;
|
using Pf2eModel;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.ComponentModel;
|
|
||||||
using System.Data;
|
|
||||||
using System.Drawing;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using System.Windows.Forms;
|
|
||||||
using Pf2eModel;
|
|
||||||
using Pf2eModel.Model.Base;
|
using Pf2eModel.Model.Base;
|
||||||
|
|
||||||
namespace Pf2eViewer;
|
namespace Pf2eViewer;
|
||||||
|
|
||||||
public partial class TestForm : Form
|
public partial class TestForm : Form
|
||||||
{
|
{
|
||||||
public DarkModeCS DarkMode;
|
public readonly DarkModeCS DarkMode;
|
||||||
|
|
||||||
public Pf2eDbContext Context = new();
|
public readonly Pf2eDbContext Context = new();
|
||||||
|
|
||||||
public int Count = 0;
|
public int Count = 0;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user