Skip to content

Commit 3b3b159

Browse files
committed
readd palette selection to ui
1 parent 8534d01 commit 3b3b159

File tree

4 files changed

+73
-60
lines changed

4 files changed

+73
-60
lines changed

Gui/MainForm.Designer.cs

Lines changed: 47 additions & 38 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Gui/MainForm.cs

Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
using Core.Objects.Sound;
1212
using Zenith.Core;
1313
using System.Text;
14+
using System.IO;
1415

1516
namespace OpenLoco.ObjectEditor.Gui
1617
{
@@ -1091,25 +1092,28 @@ static IEnumerable<Bitmap> CreateImages(List<G1Element32> G1Elements, Color[] pa
10911092
return dstImg;
10921093
}
10931094

1094-
//void SelectNewPalette()
1095-
//{
1096-
// using (var openFileDialog = new OpenFileDialog())
1097-
// {
1098-
// openFileDialog.InitialDirectory = Directory.GetCurrentDirectory();
1099-
// openFileDialog.Filter = "Palette Image Files(*.png)|*.png|All files (*.*)|*.*";
1100-
// openFileDialog.FilterIndex = 1;
1101-
// openFileDialog.RestoreDirectory = true;
1102-
1103-
// if (openFileDialog.ShowDialog() == DialogResult.OK)
1104-
// {
1105-
// model.PaletteFile = openFileDialog.FileName;
1106-
// RefreshObjectUI();
1107-
// }
1108-
// }
1109-
//}
1110-
1111-
//void setPaletteToolStripMenuItem_Click(object sender, EventArgs e)
1112-
// => SelectNewPalette();
1095+
void SelectNewPalette()
1096+
{
1097+
using (var openFileDialog = new OpenFileDialog())
1098+
{
1099+
openFileDialog.InitialDirectory = Directory.GetCurrentDirectory();
1100+
openFileDialog.Filter = "Palette Image Files(*.png)|*.png|All files (*.*)|*.*";
1101+
openFileDialog.FilterIndex = 1;
1102+
openFileDialog.RestoreDirectory = true;
1103+
1104+
if (openFileDialog.ShowDialog() == DialogResult.OK && File.Exists(openFileDialog.FileName))
1105+
{
1106+
//model.PaletteFile = openFileDialog.FileName;
1107+
var paletteBitmap = (Bitmap)Image.FromFile(openFileDialog.FileName);
1108+
model.Palette = PaletteHelpers.PaletteFromBitmap(paletteBitmap);
1109+
1110+
RefreshObjectUI();
1111+
}
1112+
}
1113+
}
1114+
1115+
void loadPaletteToolStripMenuItem_Click(object sender, EventArgs e)
1116+
=> SelectNewPalette();
11131117

11141118
void RefreshObjectUI()
11151119
{

Gui/MainFormModel.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ class MainFormModel
6060
// //}
6161
//}
6262

63-
public Color[] Palette { get; private set; }
63+
public Color[] Palette { get; set; }
6464

6565
public G1Dat? G1 { get; set; }
6666

Gui/PaletteHelpers.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ public static Color[] PaletteFromBitmap(Bitmap img)
99
var palette = new Color[256];
1010
var rect = new Rectangle(0, 0, img.Width, img.Height);
1111
var imgData = img.LockBits(rect, ImageLockMode.ReadOnly, PixelFormat.Format32bppArgb);
12-
for (var y = 0; y < img.Width; ++y)
12+
for (var y = 0; y < img.Height; ++y)
1313
{
14-
for (var x = 0; x < img.Height; ++x)
14+
for (var x = 0; x < img.Width; ++x)
1515
{
1616
palette[(y * img.Height) + x] = ImageHelpers.GetPixel(imgData, x, y);
1717
}

0 commit comments

Comments
 (0)