MouseState: now reported as complete by ANXStatusComparer
Mouse: fixed a typo in SetPosition GraphicsDevice: prepared some more methods
This commit is contained in:
parent
30f7b619aa
commit
68875fe086
@ -181,6 +181,7 @@
|
||||
<Compile Include="Graphics\IndexBuffer.cs" />
|
||||
<Compile Include="Graphics\IndexElementSize.cs" />
|
||||
<Compile Include="Graphics\IVertexType.cs" />
|
||||
<Compile Include="Graphics\RenderTargetCube.cs" />
|
||||
<Compile Include="Graphics\PackedVector\Alpha8.cs" />
|
||||
<Compile Include="Graphics\PackedVector\Bgr565.cs" />
|
||||
<Compile Include="Graphics\PackedVector\Bgra4444.cs" />
|
||||
@ -198,6 +199,7 @@
|
||||
<Compile Include="Graphics\PackedVector\Rgba64.cs" />
|
||||
<Compile Include="Graphics\PackedVector\Short2.cs" />
|
||||
<Compile Include="Graphics\PackedVector\Short4.cs" />
|
||||
<Compile Include="Graphics\RenderTarget2D.cs" />
|
||||
<Compile Include="Graphics\RenderTargetBinding.cs" />
|
||||
<Compile Include="Graphics\ResourceCreatedEventArgs.cs" />
|
||||
<Compile Include="Graphics\ResourceDestroyedEventArgs.cs" />
|
||||
|
@ -139,13 +139,13 @@ namespace ANX.Framework.Graphics
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public void DrawUserPrimitive<T>(PrimitiveType primitiveType, T[] vertexData, int vertexOffset, int primitiveCount) where T : struct, IVertexType
|
||||
public void DrawUserPrimitives<T>(PrimitiveType primitiveType, T[] vertexData, int vertexOffset, int primitiveCount) where T : struct, IVertexType
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
//TODO: nativeDevice.DrawUserPrimitive(primitiveCount, vertexOffset);
|
||||
}
|
||||
|
||||
public void DrawUserPrimitive<T>(PrimitiveType primitiveType, T[] vertexData, int vertexOffset, int primitiveCount, VertexDeclaration vertexDeclaration) where T : struct, IVertexType
|
||||
public void DrawUserPrimitives<T>(PrimitiveType primitiveType, T[] vertexData, int vertexOffset, int primitiveCount, VertexDeclaration vertexDeclaration) where T : struct, IVertexType
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
//TODO: nativeDevice.DrawUserPrimitive(primitiveCount, vertexOffset);
|
||||
@ -166,6 +166,46 @@ namespace ANX.Framework.Graphics
|
||||
nativeDevice.SetVertexBuffers(vertexBuffers);
|
||||
}
|
||||
|
||||
public void SetRenderTarget(RenderTarget2D renderTarget)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public void SetRenderTarget(RenderTargetCube renderTarget, CubeMapFace cubeMapFace)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public void SetRenderTargets(params RenderTargetBinding[] renderTargets)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public void GetBackBufferData<T>(Nullable<Rectangle> rect, T[] data, int startIndex, int elementCount) where T : struct
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public void GetBackBufferData<T>(T[] data) where T : struct
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public void GetBackBufferData<T>(T[] data, int startIndex, int elementCount) where T : struct
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public VertexBufferBinding[] GetVertexBuffers()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public RenderTargetBinding[] GetRenderTargets()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public void Reset()
|
||||
{
|
||||
this.Reset(this.currentPresentationParameters, this.currentAdapter);
|
||||
|
116
ANX.Framework/Graphics/RenderTarget2D.cs
Normal file
116
ANX.Framework/Graphics/RenderTarget2D.cs
Normal file
@ -0,0 +1,116 @@
|
||||
#region Using Statements
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using ANX.Framework.NonXNA;
|
||||
using ANX.Framework.Graphics;
|
||||
|
||||
#endregion // Using Statements
|
||||
|
||||
#region License
|
||||
|
||||
//
|
||||
// This file is part of the ANX.Framework created by the "ANX.Framework developer group".
|
||||
//
|
||||
// This file is released under the Ms-PL license.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Microsoft Public License (Ms-PL)
|
||||
//
|
||||
// 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 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, 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, 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, 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
|
||||
// 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 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 permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a
|
||||
// particular purpose and non-infringement.
|
||||
|
||||
#endregion // License
|
||||
|
||||
namespace ANX.Framework.Graphics
|
||||
{
|
||||
public class RenderTarget2D : Texture2D
|
||||
{
|
||||
public event EventHandler<EventArgs> ContentLost;
|
||||
|
||||
public RenderTarget2D(GraphicsDevice graphicsDevice, int width, int height)
|
||||
: base(graphicsDevice, width, height)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public RenderTarget2D(GraphicsDevice graphicsDevice, int width, int height, bool mipMap, SurfaceFormat preferredFormat, DepthFormat preferredDepthFormat)
|
||||
: base(graphicsDevice, width, height)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public RenderTarget2D(GraphicsDevice graphicsDevice, int width, int height, bool mipMap, SurfaceFormat preferredFormat, DepthFormat preferredDepthFormat, int preferredMultiSampleCount, RenderTargetUsage usage)
|
||||
: base(graphicsDevice, width, height)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public DepthFormat DepthStencilFormat
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public bool IsContentLost
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public int MultiSampleCount
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public RenderTargetUsage RenderTargetUsage
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
110
ANX.Framework/Graphics/RenderTargetCube.cs
Normal file
110
ANX.Framework/Graphics/RenderTargetCube.cs
Normal file
@ -0,0 +1,110 @@
|
||||
#region Using Statements
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using ANX.Framework.NonXNA;
|
||||
using ANX.Framework.Graphics;
|
||||
|
||||
#endregion // Using Statements
|
||||
|
||||
#region License
|
||||
|
||||
//
|
||||
// This file is part of the ANX.Framework created by the "ANX.Framework developer group".
|
||||
//
|
||||
// This file is released under the Ms-PL license.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Microsoft Public License (Ms-PL)
|
||||
//
|
||||
// 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 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, 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, 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, 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
|
||||
// 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 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 permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a
|
||||
// particular purpose and non-infringement.
|
||||
|
||||
#endregion // License
|
||||
|
||||
namespace ANX.Framework.Graphics
|
||||
{
|
||||
public class RenderTargetCube : TextureCube
|
||||
{
|
||||
public event EventHandler<EventArgs> ContentLost;
|
||||
|
||||
public RenderTargetCube(GraphicsDevice graphicsDevice, int size, bool mipMap, SurfaceFormat preferredFormat, DepthFormat preferredDepthFormat)
|
||||
: base(graphicsDevice, size, mipMap, preferredFormat)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public RenderTargetCube(GraphicsDevice graphicsDevice, int size, bool mipMap, SurfaceFormat preferredFormat, DepthFormat preferredDepthFormat, int preferredMultiSampleCount, RenderTargetUsage usage)
|
||||
: base(graphicsDevice, size, mipMap, preferredFormat)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public DepthFormat DepthStencilFormat
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public bool IsContentLost
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public int MultiSampleCount
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public RenderTargetUsage RenderTargetUsage
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
@ -84,38 +84,56 @@ namespace ANX.Framework.Input
|
||||
public int X { get { return this.x; } }
|
||||
public int Y { get { return this.y; } }
|
||||
|
||||
public static bool operator ==(MouseState left, MouseState right)
|
||||
{
|
||||
return left.X == right.X &&
|
||||
left.Y == right.Y &&
|
||||
left.LeftButton == right.LeftButton &&
|
||||
left.MiddleButton == right.MiddleButton &&
|
||||
left.RightButton == right.RightButton &&
|
||||
left.XButton1 == right.XButton1 &&
|
||||
left.XButton2 == right.XButton2 &&
|
||||
left.ScrollWheelValue == right.ScrollWheelValue;
|
||||
}
|
||||
public static bool operator ==(MouseState left, MouseState right)
|
||||
{
|
||||
return left.X == right.X &&
|
||||
left.Y == right.Y &&
|
||||
left.LeftButton == right.LeftButton &&
|
||||
left.MiddleButton == right.MiddleButton &&
|
||||
left.RightButton == right.RightButton &&
|
||||
left.XButton1 == right.XButton1 &&
|
||||
left.XButton2 == right.XButton2 &&
|
||||
left.ScrollWheelValue == right.ScrollWheelValue;
|
||||
}
|
||||
|
||||
public static bool operator !=(MouseState left, MouseState right)
|
||||
{
|
||||
return left.X != right.X ||
|
||||
left.Y != right.Y ||
|
||||
left.LeftButton != right.LeftButton ||
|
||||
left.MiddleButton != right.MiddleButton ||
|
||||
left.RightButton != right.RightButton ||
|
||||
left.XButton1 != right.XButton1 ||
|
||||
left.XButton2 != right.XButton2 ||
|
||||
left.ScrollWheelValue != right.ScrollWheelValue;
|
||||
}
|
||||
public static bool operator !=(MouseState left, MouseState right)
|
||||
{
|
||||
return left.X != right.X ||
|
||||
left.Y != right.Y ||
|
||||
left.LeftButton != right.LeftButton ||
|
||||
left.MiddleButton != right.MiddleButton ||
|
||||
left.RightButton != right.RightButton ||
|
||||
left.XButton1 != right.XButton1 ||
|
||||
left.XButton2 != right.XButton2 ||
|
||||
left.ScrollWheelValue != right.ScrollWheelValue;
|
||||
}
|
||||
|
||||
public override bool Equals(object obj)
|
||||
{
|
||||
if (obj is MouseState)
|
||||
{
|
||||
return this == (MouseState)obj;
|
||||
}
|
||||
public override bool Equals(object obj)
|
||||
{
|
||||
if (obj is MouseState)
|
||||
{
|
||||
return this == (MouseState)obj;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public override int GetHashCode()
|
||||
{
|
||||
return ((((((this.x.GetHashCode() ^ this.y.GetHashCode()) ^ this.leftButton.GetHashCode()) ^ this.rightButton.GetHashCode()) ^ this.middleButton.GetHashCode()) ^ this.xButton1.GetHashCode()) ^ this.xButton2.GetHashCode()) ^ this.scrollWheel.GetHashCode();
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string buttons = String.Empty;
|
||||
|
||||
buttons += leftButton == ButtonState.Pressed ? "Left" : "";
|
||||
buttons += rightButton == ButtonState.Pressed ? (buttons.Length > 0 ? " " : "") + "Right" : "";
|
||||
buttons += middleButton == ButtonState.Pressed ? (buttons.Length > 0 ? " " : "") + "Middle" : "";
|
||||
buttons += xButton1 == ButtonState.Pressed ? (buttons.Length > 0 ? " " : "") + "XButton1" : "";
|
||||
buttons += xButton2 == ButtonState.Pressed ? (buttons.Length > 0 ? " " : "") + "XButton2" : "";
|
||||
|
||||
return string.Format("{{X:{0} Y:{1} Buttons:{2} Wheel:{3}}}", this.x, this.y, buttons, this.scrollWheel);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -122,7 +122,7 @@ namespace ANX.InputSystem.Windows.XInput
|
||||
GetCursorPos(ref currentPosition);
|
||||
if (WindowHandle != IntPtr.Zero)
|
||||
{
|
||||
ScreenToClient(WindowHandle, ref currentPosition;
|
||||
ScreenToClient(WindowHandle, ref currentPosition);
|
||||
}
|
||||
SetCursorPos(currentPosition.X, currentPosition.Y);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user