Continued testing

Items now render without error in the map view, and repositioning the view works.
This commit is contained in:
Kurt
2026-01-25 11:53:10 -06:00
parent db2a242d8e
commit 0a80175810
5 changed files with 81 additions and 56 deletions

View File

@@ -52,10 +52,10 @@ public FieldItemEditor(MainSave sav)
this.TranslateInterface(GameInfo.CurrentLanguage);
// Read the expected scale from the control.
var scale = (PB_Acre.Width - 2) / LayerFieldItem.TilesPerAcreDim; // 1px border
var scale = (PB_Viewport.Width - 2) / LayerFieldItem.TilesPerAcreDim; // 1px border
SAV = sav;
Editor = MapEditor.FromSaveFile(sav);
Editor.MapScale = scale;
Editor.MapScale = 1;
Editor.ViewScale = scale;
Renderer = new MapRenderer(Editor);
@@ -128,7 +128,7 @@ private void ChangeViewToAcre(int acre)
private void LoadItemGridAcre()
{
ReloadItems();
ReloadAcreBackground();
ReloadViewportBackground();
UpdateArrowVisibility();
}
@@ -153,26 +153,26 @@ private void SetMapForegroundImage(Bitmap img)
PB_Map.Image = img;
}
private void ReloadAcreBackground()
private void ReloadViewportBackground()
{
var tbuild = (byte)TR_BuildingTransparency.Value;
var tterrain = (byte)TR_Terrain.Value;
var img = Renderer.UpdateViewportTerrain(L_Coordinates.Font, tbuild, tterrain, SelectedBuildingIndex);
PB_Acre.BackgroundImage = img;
PB_Acre.Invalidate(); // background image reassigning to same img doesn't redraw; force it
PB_Viewport.BackgroundImage = img;
PB_Viewport.Invalidate(); // background image reassigning to same img doesn't redraw; force it
}
private void ReloadAcreItemGrid() => PB_Acre.Image = Renderer.UpdateViewportItems(GetItemTransparency());
private void ReloadViewportItems() => PB_Viewport.Image = Renderer.UpdateViewportItems(GetItemTransparency());
public void ReloadItems()
{
ReloadAcreItemGrid();
ReloadViewportItems();
ReloadMapItemGrid();
}
private void ReloadBuildingsTerrain()
{
ReloadAcreBackground();
ReloadViewportBackground();
ReloadMapBackground();
}
@@ -184,7 +184,7 @@ private void UpdateArrowVisibility()
B_Right.Enabled = View.CanRight;
}
private void PB_Acre_MouseClick(object sender, MouseEventArgs e)
private void ViewportMouseClick(object sender, MouseEventArgs e)
{
if (IsDragOperationActive)
{
@@ -370,9 +370,9 @@ private void UpdateHoveredCoordinates(MouseEventArgs e)
HoverY &= 0x1F;
}
private void PB_Acre_MouseDown(object sender, MouseEventArgs e) => ResetDrag();
private void ViewportMouseDown(object sender, MouseEventArgs e) => ResetDrag();
private void PB_Acre_MouseMove(object sender, MouseEventArgs e)
private void ViewportMouseMove(object sender, MouseEventArgs e)
{
var l = CurrentLayer;
if (e.Button == MouseButtons.Left && CHK_MoveOnDrag.Checked)
@@ -409,7 +409,7 @@ private void PB_Acre_MouseMove(object sender, MouseEventArgs e)
var isActive = flagLayer.GetIsActive(x, y);
if (isActive)
name = $"{name} [Active]";
TT_Hover.SetToolTip(PB_Acre, name);
TT_Hover.SetToolTip(PB_Viewport, name);
SetCoordinateText(x, y);
}