Added settings
This commit is contained in:
parent
6d607b6d02
commit
651aeb407b
4 changed files with 68 additions and 32 deletions
20
Sledgemapper/Settings.cs
Normal file
20
Sledgemapper/Settings.cs
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
using Microsoft.Xna.Framework;
|
||||||
|
|
||||||
|
namespace Sledgemapper
|
||||||
|
{
|
||||||
|
public class Settings
|
||||||
|
{
|
||||||
|
public Color BackgroundColor { get; set; }
|
||||||
|
public Color OverlayTintColor { get; set; }
|
||||||
|
public Color GridColor { get; set; }
|
||||||
|
public Color NoteColor { get; set; }
|
||||||
|
|
||||||
|
public Settings()
|
||||||
|
{
|
||||||
|
BackgroundColor=Color.LightGray;
|
||||||
|
GridColor=Color.Black;
|
||||||
|
NoteColor=Color.DarkRed;
|
||||||
|
OverlayTintColor = new Color(24, 118, 157);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -7,6 +7,7 @@ using Myra.Graphics2D.Brushes;
|
||||||
using Myra.Graphics2D.TextureAtlases;
|
using Myra.Graphics2D.TextureAtlases;
|
||||||
using Myra.Graphics2D.UI;
|
using Myra.Graphics2D.UI;
|
||||||
using Myra.Graphics2D.UI.File;
|
using Myra.Graphics2D.UI.File;
|
||||||
|
using Myra.Graphics2D.UI.Properties;
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using Sledgemapper.Shared.Entities;
|
using Sledgemapper.Shared.Entities;
|
||||||
using Sledgemapper.UI;
|
using Sledgemapper.UI;
|
||||||
|
@ -37,6 +38,7 @@ namespace Sledgemapper
|
||||||
private AuthenticateResponse _authResponse;
|
private AuthenticateResponse _authResponse;
|
||||||
private MainWidget _mainWidget;
|
private MainWidget _mainWidget;
|
||||||
private bool _showCellNumbers;
|
private bool _showCellNumbers;
|
||||||
|
private readonly Settings _settings;
|
||||||
|
|
||||||
public Sledgemapper()
|
public Sledgemapper()
|
||||||
{
|
{
|
||||||
|
@ -55,6 +57,7 @@ namespace Sledgemapper
|
||||||
_communicationManager.Connection.Reconnecting += OnHubReconnecting;
|
_communicationManager.Connection.Reconnecting += OnHubReconnecting;
|
||||||
_communicationManager.Connection.Closed += OnHubDisconnected;
|
_communicationManager.Connection.Closed += OnHubDisconnected;
|
||||||
_state = new State();
|
_state = new State();
|
||||||
|
_settings= new Settings();
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task OnHubDisconnected(Exception arg)
|
private async Task OnHubDisconnected(Exception arg)
|
||||||
|
@ -108,6 +111,7 @@ namespace Sledgemapper
|
||||||
_mainWidget.MenuConnectSync.Selected += OnMenuConnectSyncSelected;
|
_mainWidget.MenuConnectSync.Selected += OnMenuConnectSyncSelected;
|
||||||
_mainWidget.MenuFileLoad.Selected += OnMenuFileLoadSelected;
|
_mainWidget.MenuFileLoad.Selected += OnMenuFileLoadSelected;
|
||||||
_mainWidget.MenuFileSave.Selected += OnMenuFileSaveSelected;
|
_mainWidget.MenuFileSave.Selected += OnMenuFileSaveSelected;
|
||||||
|
_mainWidget.MenuFileSettings.Selected += OneMenuFileSettingsSelected;
|
||||||
_mainWidget.MenuConnectLogin.Selected += OnMenuConnectLoginSelected;
|
_mainWidget.MenuConnectLogin.Selected += OnMenuConnectLoginSelected;
|
||||||
_mainWidget.MenuConnectNew.Selected += OnMenuConnectNewSelected;
|
_mainWidget.MenuConnectNew.Selected += OnMenuConnectNewSelected;
|
||||||
_mainWidget.MenuConnectJoin.Selected += OnMenuConnectJoinSelected;
|
_mainWidget.MenuConnectJoin.Selected += OnMenuConnectJoinSelected;
|
||||||
|
@ -131,6 +135,22 @@ namespace Sledgemapper
|
||||||
_desktop.Root = _mainWidget;
|
_desktop.Root = _mainWidget;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void OneMenuFileSettingsSelected(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
var propertyGrid = new PropertyGrid
|
||||||
|
{
|
||||||
|
Object = _settings,
|
||||||
|
Width = 350
|
||||||
|
};
|
||||||
|
|
||||||
|
var _windowEditor = new Window
|
||||||
|
{
|
||||||
|
Title = "Object Editor",
|
||||||
|
Content = propertyGrid
|
||||||
|
};
|
||||||
|
_windowEditor.ShowModal(_desktop);
|
||||||
|
}
|
||||||
|
|
||||||
private void OnMenuViewShowCellNUmbersSelected(object sender, EventArgs e)
|
private void OnMenuViewShowCellNUmbersSelected(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
_showCellNumbers = !_showCellNumbers;
|
_showCellNumbers = !_showCellNumbers;
|
||||||
|
@ -382,7 +402,7 @@ namespace Sledgemapper
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
GraphicsDevice.Clear(Color.DarkGray);
|
GraphicsDevice.Clear(_settings.BackgroundColor);
|
||||||
|
|
||||||
var visibleTilesX = GraphicsDevice.Viewport.Width / _state.TileSize + 1;
|
var visibleTilesX = GraphicsDevice.Viewport.Width / _state.TileSize + 1;
|
||||||
var visibleTilesY = GraphicsDevice.Viewport.Height / _state.TileSize + 1;
|
var visibleTilesY = GraphicsDevice.Viewport.Height / _state.TileSize + 1;
|
||||||
|
@ -506,7 +526,7 @@ namespace Sledgemapper
|
||||||
posX1, posY1,
|
posX1, posY1,
|
||||||
posX2,
|
posX2,
|
||||||
posY2,
|
posY2,
|
||||||
Color.Black);
|
_settings.GridColor);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var i = -1; i < visibleTilesY + 2; i++)
|
for (var i = -1; i < visibleTilesY + 2; i++)
|
||||||
|
@ -523,7 +543,7 @@ namespace Sledgemapper
|
||||||
_spriteBatch.DrawLine(posX1, posY1,
|
_spriteBatch.DrawLine(posX1, posY1,
|
||||||
posX2,
|
posX2,
|
||||||
posY2,
|
posY2,
|
||||||
Color.Black);
|
_settings.GridColor);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -567,30 +587,14 @@ namespace Sledgemapper
|
||||||
|
|
||||||
foreach (var note in _sessionData.Notes.Values)
|
foreach (var note in _sessionData.Notes.Values)
|
||||||
{
|
{
|
||||||
// var ffont = _fonts.Where(m=>m.Key.Contains("awesome")).FirstOrDefault(m => int.Parse(m.Key.Replace("awesome", "")) > _state.TileSize / 8).Value ?? _fonts.Last().Value;
|
|
||||||
// var fscale = 1f;
|
|
||||||
|
|
||||||
// _spriteBatch.DrawString(ffont,
|
|
||||||
// "0xf06e",
|
|
||||||
// new Vector2(
|
|
||||||
// note.X * _state.TileSize + _state.TileSize - _state.TileSize / 3,
|
|
||||||
// note.Y * _state.TileSize + _state.TileSize / 4
|
|
||||||
// ),
|
|
||||||
// Color.Black,
|
|
||||||
// 0,
|
|
||||||
// Vector2.Zero,
|
|
||||||
// fscale,
|
|
||||||
// SpriteEffects.None,
|
|
||||||
// 0);
|
|
||||||
|
|
||||||
_spriteBatch.Draw(
|
_spriteBatch.Draw(
|
||||||
_comment,
|
_comment,
|
||||||
new Rectangle(
|
new Rectangle(
|
||||||
note.X * _state.TileSize + _state.TileSize - (int)(_state.TileSize / 2) + _state.TileSize / 20,
|
note.X * _state.TileSize + _state.TileSize - (int)(_state.TileSize / 2) + _state.TileSize / 20,
|
||||||
note.Y * _state.TileSize + _state.TileSize / 8 + _state.TileSize / 20,
|
note.Y * _state.TileSize + _state.TileSize / 8 + _state.TileSize / 20,
|
||||||
(int)(_state.TileSize / 2.5), (int)(_state.TileSize / 2.5 / 1.136)
|
(int)(_state.TileSize / 2.5), (int)(_state.TileSize / 2.5 / 1.136)
|
||||||
), Color.Black * .2f
|
), Color.Black * .2f
|
||||||
);
|
);
|
||||||
|
|
||||||
_spriteBatch.Draw(
|
_spriteBatch.Draw(
|
||||||
_comment,
|
_comment,
|
||||||
|
@ -598,7 +602,7 @@ namespace Sledgemapper
|
||||||
note.X * _state.TileSize + _state.TileSize - (int)(_state.TileSize / 2),
|
note.X * _state.TileSize + _state.TileSize - (int)(_state.TileSize / 2),
|
||||||
note.Y * _state.TileSize + _state.TileSize / 8,
|
note.Y * _state.TileSize + _state.TileSize / 8,
|
||||||
(int)(_state.TileSize / 2.5), (int)(_state.TileSize / 2.5 / 1.136)
|
(int)(_state.TileSize / 2.5), (int)(_state.TileSize / 2.5 / 1.136)
|
||||||
), Color.DarkRed
|
), _settings.NoteColor
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -614,7 +618,7 @@ namespace Sledgemapper
|
||||||
var posY = tile.Y * _state.TileSize;
|
var posY = tile.Y * _state.TileSize;
|
||||||
|
|
||||||
_spriteBatch.Draw(content, new Vector2(posX, posY),
|
_spriteBatch.Draw(content, new Vector2(posX, posY),
|
||||||
null, new Color(24, 118, 157), MathHelper.ToRadians(90 * tile.Rotation), new Vector2(content.Width / 2, content.Height / 2), ((float)_state.TileSize - 10) / content.Width, SpriteEffects.None, 0);
|
null, _settings.OverlayTintColor, MathHelper.ToRadians(90 * tile.Rotation), new Vector2(content.Width / 2, content.Height / 2), ((float)_state.TileSize - 10) / content.Width, SpriteEffects.None, 0);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -622,7 +626,7 @@ namespace Sledgemapper
|
||||||
var posY = tile.Y * _state.TileSize + _state.TileSize / 2f;
|
var posY = tile.Y * _state.TileSize + _state.TileSize / 2f;
|
||||||
|
|
||||||
_spriteBatch.Draw(content, new Vector2(posX, posY),
|
_spriteBatch.Draw(content, new Vector2(posX, posY),
|
||||||
null, new Color(24, 118, 157), MathHelper.ToRadians(90 * tile.Rotation), new Vector2(content.Width / 2, content.Height / 2), ((float)_state.TileSize - 10) / content.Width, SpriteEffects.None, 0);
|
null, _settings.OverlayTintColor, MathHelper.ToRadians(90 * tile.Rotation), new Vector2(content.Width / 2, content.Height / 2), ((float)_state.TileSize - 10) / content.Width, SpriteEffects.None, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* Generated by MyraPad at 01/12/2020 11:38:49 */
|
/* Generated by MyraPad at 02/12/2020 10:41:53 */
|
||||||
using Myra;
|
using Myra;
|
||||||
using Myra.Graphics2D;
|
using Myra.Graphics2D;
|
||||||
using Myra.Graphics2D.TextureAtlases;
|
using Myra.Graphics2D.TextureAtlases;
|
||||||
|
@ -30,6 +30,13 @@ namespace Sledgemapper.UI
|
||||||
|
|
||||||
var menuSeparator1 = new MenuSeparator();
|
var menuSeparator1 = new MenuSeparator();
|
||||||
|
|
||||||
|
MenuFileSettings = new MenuItem();
|
||||||
|
MenuFileSettings.Text = "S&ettings";
|
||||||
|
MenuFileSettings.ShortcutText = "Ctrl+E";
|
||||||
|
MenuFileSettings.Id = "MenuFileSettings";
|
||||||
|
|
||||||
|
var menuSeparator2 = new MenuSeparator();
|
||||||
|
|
||||||
MenuFileQuit = new MenuItem();
|
MenuFileQuit = new MenuItem();
|
||||||
MenuFileQuit.Text = "&Quit";
|
MenuFileQuit.Text = "&Quit";
|
||||||
MenuFileQuit.ShortcutText = "Ctrl+Q";
|
MenuFileQuit.ShortcutText = "Ctrl+Q";
|
||||||
|
@ -41,6 +48,8 @@ namespace Sledgemapper.UI
|
||||||
MenuFile.Items.Add(MenuFileLoad);
|
MenuFile.Items.Add(MenuFileLoad);
|
||||||
MenuFile.Items.Add(MenuFileSave);
|
MenuFile.Items.Add(MenuFileSave);
|
||||||
MenuFile.Items.Add(menuSeparator1);
|
MenuFile.Items.Add(menuSeparator1);
|
||||||
|
MenuFile.Items.Add(MenuFileSettings);
|
||||||
|
MenuFile.Items.Add(menuSeparator2);
|
||||||
MenuFile.Items.Add(MenuFileQuit);
|
MenuFile.Items.Add(MenuFileQuit);
|
||||||
|
|
||||||
MenuConnectLogin = new MenuItem();
|
MenuConnectLogin = new MenuItem();
|
||||||
|
@ -48,7 +57,7 @@ namespace Sledgemapper.UI
|
||||||
MenuConnectLogin.ShortcutText = "Ctrl+O";
|
MenuConnectLogin.ShortcutText = "Ctrl+O";
|
||||||
MenuConnectLogin.Id = "MenuConnectLogin";
|
MenuConnectLogin.Id = "MenuConnectLogin";
|
||||||
|
|
||||||
var menuSeparator2 = new MenuSeparator();
|
var menuSeparator3 = new MenuSeparator();
|
||||||
|
|
||||||
MenuConnectNew = new MenuItem();
|
MenuConnectNew = new MenuItem();
|
||||||
MenuConnectNew.Text = "&New";
|
MenuConnectNew.Text = "&New";
|
||||||
|
@ -73,7 +82,7 @@ namespace Sledgemapper.UI
|
||||||
var menuItem1 = new MenuItem();
|
var menuItem1 = new MenuItem();
|
||||||
menuItem1.Text = "&Connect";
|
menuItem1.Text = "&Connect";
|
||||||
menuItem1.Items.Add(MenuConnectLogin);
|
menuItem1.Items.Add(MenuConnectLogin);
|
||||||
menuItem1.Items.Add(menuSeparator2);
|
menuItem1.Items.Add(menuSeparator3);
|
||||||
menuItem1.Items.Add(MenuConnectNew);
|
menuItem1.Items.Add(MenuConnectNew);
|
||||||
menuItem1.Items.Add(MenuConnectJoin);
|
menuItem1.Items.Add(MenuConnectJoin);
|
||||||
menuItem1.Items.Add(MenuConnectSync);
|
menuItem1.Items.Add(MenuConnectSync);
|
||||||
|
@ -259,6 +268,7 @@ namespace Sledgemapper.UI
|
||||||
|
|
||||||
public MenuItem MenuFileLoad;
|
public MenuItem MenuFileLoad;
|
||||||
public MenuItem MenuFileSave;
|
public MenuItem MenuFileSave;
|
||||||
|
public MenuItem MenuFileSettings;
|
||||||
public MenuItem MenuFileQuit;
|
public MenuItem MenuFileQuit;
|
||||||
public MenuItem MenuFile;
|
public MenuItem MenuFile;
|
||||||
public MenuItem MenuConnectLogin;
|
public MenuItem MenuConnectLogin;
|
||||||
|
|
|
@ -10,6 +10,8 @@
|
||||||
<MenuItem Text="&Load" ShortcutText="Ctrl+L" Id="MenuFileLoad" />
|
<MenuItem Text="&Load" ShortcutText="Ctrl+L" Id="MenuFileLoad" />
|
||||||
<MenuItem Text="&Save" ShortcutText="Ctrl+S" Id="MenuFileSave" />
|
<MenuItem Text="&Save" ShortcutText="Ctrl+S" Id="MenuFileSave" />
|
||||||
<MenuSeparator />
|
<MenuSeparator />
|
||||||
|
<MenuItem Text="S&ettings" ShortcutText="Ctrl+E" Id="MenuFileSettings" />
|
||||||
|
<MenuSeparator />
|
||||||
<MenuItem Text="&Quit" ShortcutText="Ctrl+Q" Id="MenuFileQuit" />
|
<MenuItem Text="&Quit" ShortcutText="Ctrl+Q" Id="MenuFileQuit" />
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
<MenuItem Text="&Connect">
|
<MenuItem Text="&Connect">
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue