Adding initial sprite database and sprite entry form

This commit is contained in:
2017-09-15 15:52:59 -05:00
parent 4d49f58809
commit 846d4b569f
5 changed files with 612 additions and 0 deletions

View File

@ -0,0 +1,83 @@
using System;
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.Xml;
using System.Xml.Serialization;
using System.IO;
using System.Resources;
using System.Windows.Forms;
using System.Windows;
using System.Collections;
namespace SpriteLibrary
{
public partial class SpriteEntryForm : Form
{
SpriteController MyController;
ResourceManager myResources = null;
public SpriteEntryForm(ResourceManager theResourceManager)
{
InitializeComponent();
myResources = theResourceManager;
LocalSetup();
}
public void LocalSetup()
{
pbImageField.BackgroundImageLayout = ImageLayout.Stretch;
MyController = new SpriteController(pbImageField);
PopulateMenu();
}
public void PopulateMenu()
{
ResourceManager rm = Properties.Resources.ResourceManager;
if (myResources != null) rm = myResources;
PopulateMenu(rm);
}
public void PopulateMenu(ResourceManager rm)
{
if (myResources == null) myResources = rm;
ResourceSet RS = rm.GetResourceSet(System.Globalization.CultureInfo.CurrentCulture, true, true);
cbStartingImage.Items.Clear();
foreach (DictionaryEntry entry in RS)
{
string resourceKey = entry.Key.ToString();
object resource = entry.Value;
if (resource is Image)
{
cbStartingImage.Items.Add(resourceKey);
}
}
cbStartingImage.SelectedIndex = 0;
}
private void cbStartingImage_SelectedIndexChanged(object sender, EventArgs e)
{
ResourceManager rm;
if (myResources != null) rm = myResources;
else rm = Properties.Resources.ResourceManager;
//We have a selected item
if (cbStartingImage.SelectedIndex >= 0)
{
//Load in a new image into our background
Image NewImage = (Bitmap)rm.GetObject(cbStartingImage.SelectedItem.ToString());
if (NewImage != null)
{
MyController.ReplaceOriginalImage(new Bitmap(NewImage));
pbImageField.BackgroundImage = new Bitmap(NewImage);
pbImageField.Invalidate();
}
}
}
}
}