Unstable 0.17.0.0
This commit is contained in:
@@ -2,34 +2,34 @@
|
||||
// /*
|
||||
// Microsoft Public License (Ms-PL)
|
||||
// MonoGame - Copyright © 2009 The MonoGame Team
|
||||
//
|
||||
//
|
||||
// All rights reserved.
|
||||
//
|
||||
//
|
||||
// This license governs use of the accompanying software. If you use the software, you accept this license. If you do not
|
||||
// accept the license, do not use the software.
|
||||
//
|
||||
//
|
||||
// 1. Definitions
|
||||
// The terms "reproduce," "reproduction," "derivative works," and "distribution" have the same meaning here as under
|
||||
// The terms "reproduce," "reproduction," "derivative works," and "distribution" have the same meaning here as under
|
||||
// U.S. copyright law.
|
||||
//
|
||||
//
|
||||
// A "contribution" is the original software, or any additions or changes to the software.
|
||||
// A "contributor" is any person that distributes its contribution under this license.
|
||||
// "Licensed patents" are a contributor's patent claims that read directly on its contribution.
|
||||
//
|
||||
//
|
||||
// 2. Grant of Rights
|
||||
// (A) Copyright Grant- Subject to the terms of this license, including the license conditions and limitations in section 3,
|
||||
// (A) Copyright Grant- Subject to the terms of this license, including the license conditions and limitations in section 3,
|
||||
// each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution or any derivative works that you create.
|
||||
// (B) Patent Grant- Subject to the terms of this license, including the license conditions and limitations in section 3,
|
||||
// (B) Patent Grant- Subject to the terms of this license, including the license conditions and limitations in section 3,
|
||||
// each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed patents to make, have made, use, sell, offer for sale, import, and/or otherwise dispose of its contribution in the software or derivative works of the contribution in the software.
|
||||
//
|
||||
//
|
||||
// 3. Conditions and Limitations
|
||||
// (A) No Trademark License- This license does not grant you rights to use any contributors' name, logo, or trademarks.
|
||||
// (B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software,
|
||||
// (B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software,
|
||||
// your patent license from such contributor to the software ends automatically.
|
||||
// (C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution
|
||||
// (C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution
|
||||
// notices that are present in the software.
|
||||
// (D) If you distribute any portion of the software in source code form, you may do so only under this license by including
|
||||
// a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or object
|
||||
// (D) If you distribute any portion of the software in source code form, you may do so only under this license by including
|
||||
// a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or object
|
||||
// code form, you may only do so under a license that complies with this license.
|
||||
// (E) The software is licensed "as-is." You bear the risk of using it. The contributors give no express warranties, guarantees
|
||||
// or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the extent
|
||||
@@ -56,7 +56,7 @@ namespace Microsoft.Xna.Framework.Graphics
|
||||
|
||||
internal GraphicsResource()
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
|
||||
~GraphicsResource()
|
||||
@@ -66,7 +66,7 @@ namespace Microsoft.Xna.Framework.Graphics
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Called before the device is reset. Allows graphics resources to
|
||||
/// Called before the device is reset. Allows graphics resources to
|
||||
/// invalidate their state so they can be recreated after the device reset.
|
||||
/// Warning: This may be called after a call to Dispose() up until
|
||||
/// the resource is garbage collected.
|
||||
@@ -117,7 +117,7 @@ namespace Microsoft.Xna.Framework.Graphics
|
||||
}
|
||||
|
||||
public event EventHandler<EventArgs> Disposing;
|
||||
|
||||
|
||||
public GraphicsDevice GraphicsDevice
|
||||
{
|
||||
get
|
||||
@@ -146,7 +146,7 @@ namespace Microsoft.Xna.Framework.Graphics
|
||||
graphicsDevice.AddResourceReference(_selfReference);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public bool IsDisposed
|
||||
{
|
||||
get
|
||||
@@ -154,9 +154,9 @@ namespace Microsoft.Xna.Framework.Graphics
|
||||
return disposed;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public string Name { get; set; }
|
||||
|
||||
|
||||
public Object Tag { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
|
||||
@@ -237,9 +237,17 @@ namespace Microsoft.Xna.Framework.Graphics
|
||||
void CheckValid(Texture2D texture)
|
||||
{
|
||||
if (texture == null)
|
||||
{
|
||||
throw new ArgumentNullException("texture");
|
||||
}
|
||||
if (texture.IsDisposed)
|
||||
{
|
||||
throw new InvalidOperationException($"Texture is disposed");
|
||||
}
|
||||
if (!_beginCalled)
|
||||
{
|
||||
throw new InvalidOperationException("Draw was called, but Begin has not yet been called. Begin must be called successfully before you can call Draw.");
|
||||
}
|
||||
}
|
||||
|
||||
void CheckValid(SpriteFont spriteFont, string text)
|
||||
@@ -315,7 +323,7 @@ namespace Microsoft.Xna.Framework.Graphics
|
||||
}
|
||||
}
|
||||
|
||||
public void Draw(Texture2D texture, VertexPositionColorTexture[] vertices, float layerDepth)
|
||||
public void Draw(Texture2D texture, VertexPositionColorTexture[] vertices, float layerDepth, int? count = null)
|
||||
{
|
||||
CheckValid(texture);
|
||||
|
||||
@@ -338,7 +346,7 @@ namespace Microsoft.Xna.Framework.Graphics
|
||||
break;
|
||||
}
|
||||
|
||||
int iters = vertices.Length / 4;
|
||||
int iters = count ?? (vertices.Length / 4);
|
||||
for (int i=0;i<iters;i++)
|
||||
{
|
||||
var item = _batcher.CreateBatchItem();
|
||||
|
||||
@@ -19,7 +19,7 @@ namespace Microsoft.Xna.Framework.Graphics
|
||||
_graphicsDevice = graphicsDevice;
|
||||
_textures = new Texture[maxTextures];
|
||||
_applyToVertexStage = applyToVertexStage;
|
||||
for (int i=0;i<maxTextures;i++)
|
||||
for (int i = 0; i < maxTextures; i++)
|
||||
{
|
||||
_dirtyMax |= 1 << i;
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
// This file is subject to the terms and conditions defined in
|
||||
// file 'LICENSE.txt', which is part of this source code package.
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Microsoft.Xna.Framework.Input
|
||||
@@ -22,5 +23,42 @@ namespace Microsoft.Xna.Framework.Input
|
||||
{
|
||||
_keys = keys;
|
||||
}
|
||||
|
||||
public static Keys QwertyToCurrentLayout(Keys qwertyKey)
|
||||
{
|
||||
#warning TODO: test Dvorak & other layouts that I'm unaware of that replace letter keys with non-letter keys or vice versa
|
||||
int scancode = qwertyKey switch
|
||||
{
|
||||
Keys.A => 4,
|
||||
Keys.B => 5,
|
||||
Keys.C => 6,
|
||||
Keys.D => 7,
|
||||
Keys.E => 8,
|
||||
Keys.F => 9,
|
||||
Keys.G => 10,
|
||||
Keys.H => 11,
|
||||
Keys.I => 12,
|
||||
Keys.J => 13,
|
||||
Keys.K => 14,
|
||||
Keys.L => 15,
|
||||
Keys.M => 16,
|
||||
Keys.N => 17,
|
||||
Keys.O => 18,
|
||||
Keys.P => 19,
|
||||
Keys.Q => 20,
|
||||
Keys.R => 21,
|
||||
Keys.S => 22,
|
||||
Keys.T => 23,
|
||||
Keys.U => 24,
|
||||
Keys.V => 25,
|
||||
Keys.W => 26,
|
||||
Keys.X => 27,
|
||||
Keys.Y => 28,
|
||||
Keys.Z => 29,
|
||||
_ => -1
|
||||
};
|
||||
if (scancode < 0) { return qwertyKey; }
|
||||
return KeyboardUtil.ToXna(Sdl.Keyboard.GetKeyFromScancode(scancode));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -837,6 +837,10 @@ internal static class Sdl
|
||||
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
|
||||
public delegate Keymod d_sdl_getmodstate();
|
||||
public static d_sdl_getmodstate GetModState = FuncLoader.LoadFunction<d_sdl_getmodstate>(NativeLibrary, "SDL_GetModState");
|
||||
|
||||
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
|
||||
public delegate int d_sdl_getkeyfromscancode(int scancode);
|
||||
public static d_sdl_getkeyfromscancode GetKeyFromScancode = FuncLoader.LoadFunction<d_sdl_getkeyfromscancode>(NativeLibrary, "SDL_GetKeyFromScancode");
|
||||
}
|
||||
|
||||
public static class Joystick
|
||||
|
||||
Reference in New Issue
Block a user