protected override void Draw()
{
if (Settings == null)
{
GraphicsDevice.Clear(Color.White);
return;
}
GraphicsDevice.Clear(Settings.BackgroundColor);
if (_tilesetTexture != null)
{
_batch.Begin();
_batch.Draw(_tilesetTexture, new Vector2(0, 0), Color.White);
if (Settings.ShowGrid)
{
int h = _tilesetTexture.Height;
for (int x = Constants.TILESIZE; x < Constants.MAXWIDTH; x += Constants.TILESIZE)
_batch.DrawRectangle(new Rectangle(x, 0, 1, h), Settings.GridColor);
for (int y = Constants.TILESIZE; y < h; y += Constants.TILESIZE)
_batch.DrawRectangle(new Rectangle(0, y, Constants.MAXWIDTH, 1), Settings.GridColor);
}
if (_displayIcons)
{
switch (this.TilesetMode)
{
case TilesetMode.Passage: this.RefreshPassage(); break;
case TilesetMode.Passage4Dir: this.RefreshPassage4Dir(); break;
case TilesetMode.Priority: this.RefreshPriority(); break;
case TilesetMode.Counter: this.RefreshCounter(); break;
case TilesetMode.Bush: this.RefreshBush(); break;
case TilesetMode.Terrain: this.RefreshTerrain(); break;
}
}
if (this.SelectionEnabled && _originPoint != _endPoint)
_batch.DrawSelectionRect(this.SelectionRectangle, Settings.SelectorColor, 2);
_batch.End();
}
}