Define a grid size to snap onto. A grid of 1x1 gives us a pixel by pixel grid. But we usually want to have 5, 10, 50, 100 or something like that.
This commit is contained in:
parent
23814be473
commit
72f1c3ac79
@ -26,6 +26,7 @@ namespace SpriteLibrary
|
|||||||
List<ImageStruct> TheImages = new List<ImageStruct>();
|
List<ImageStruct> TheImages = new List<ImageStruct>();
|
||||||
ResourceManager myResourceManager = null;
|
ResourceManager myResourceManager = null;
|
||||||
string Filename = "";
|
string Filename = "";
|
||||||
|
Size SnapGridSize = new Size(5, 5);
|
||||||
|
|
||||||
public SpriteDatabase(ResourceManager theResourceManager, string filename)
|
public SpriteDatabase(ResourceManager theResourceManager, string filename)
|
||||||
{
|
{
|
||||||
@ -39,6 +40,14 @@ namespace SpriteLibrary
|
|||||||
LoadSpriteInfo();
|
LoadSpriteInfo();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void SetSnapGridSize(Size GridSize)
|
||||||
|
{
|
||||||
|
if (GridSize.Width <= 0) return;
|
||||||
|
if (GridSize.Height <= 0) return;
|
||||||
|
if (GridSize.Width > 500) return;
|
||||||
|
if (GridSize.Height > 500) return;
|
||||||
|
SnapGridSize = GridSize;
|
||||||
|
}
|
||||||
|
|
||||||
//*******************************
|
//*******************************
|
||||||
//**** Sprite Info Functions ***
|
//**** Sprite Info Functions ***
|
||||||
@ -83,7 +92,7 @@ namespace SpriteLibrary
|
|||||||
|
|
||||||
public void OpenEditWindow(int FirstItemIndex=-1)
|
public void OpenEditWindow(int FirstItemIndex=-1)
|
||||||
{
|
{
|
||||||
SpriteEntryForm SEF = new SpriteEntryForm(myResourceManager, SpriteInfoList);
|
SpriteEntryForm SEF = new SpriteEntryForm(myResourceManager, SpriteInfoList, SnapGridSize);
|
||||||
SEF.ShowDialog();
|
SEF.ShowDialog();
|
||||||
//Use the updated list returned from the form.
|
//Use the updated list returned from the form.
|
||||||
SpriteInfoList.Clear();
|
SpriteInfoList.Clear();
|
||||||
|
@ -11,11 +11,9 @@ using System.Xml.Serialization;
|
|||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Resources;
|
using System.Resources;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using System.Windows;
|
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
namespace SpriteLibrary
|
namespace SpriteLibrary
|
||||||
{
|
{
|
||||||
internal partial class SpriteEntryForm : Form
|
internal partial class SpriteEntryForm : Form
|
||||||
@ -23,12 +21,14 @@ namespace SpriteLibrary
|
|||||||
SpriteController MyController;
|
SpriteController MyController;
|
||||||
ResourceManager myResources = null;
|
ResourceManager myResources = null;
|
||||||
List<SpriteInfo> SpriteInformation = new List<SpriteInfo>();
|
List<SpriteInfo> SpriteInformation = new List<SpriteInfo>();
|
||||||
|
Size SnapGridSize = new Size(5,5);
|
||||||
|
|
||||||
internal SpriteEntryForm(ResourceManager theResourceManager, List<SpriteInfo> ListToWorkOn)
|
internal SpriteEntryForm(ResourceManager theResourceManager, List<SpriteInfo> ListToWorkOn, Size GridSize)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
if (theResourceManager == null) throw new Exception("NullException: The ResourceManager passed to the SpriteEntryForm cannot be null. Pass it Properties.Resources.ResourceManager");
|
if (theResourceManager == null) throw new Exception("NullException: The ResourceManager passed to the SpriteEntryForm cannot be null. Pass it Properties.Resources.ResourceManager");
|
||||||
myResources = theResourceManager;
|
myResources = theResourceManager;
|
||||||
|
SnapGridSize = GridSize;
|
||||||
LocalSetup();
|
LocalSetup();
|
||||||
SpriteInformation.AddRange(ListToWorkOn);
|
SpriteInformation.AddRange(ListToWorkOn);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user