- fixed a minor issue with pathes in MSI-Installer build script

- added creators for concrete InputDevice instances
- added a factory to manage InputDeviceCreators which are located in AddIn assemblies
- implemented some InputDeviceCreators in ANX.InputSystem.Windows.XInput as reference
- created the new InputSystem: ANX.InputSystem.Standard which is the default container for the new InputDevices. It is replaceable by the ANX.InputSystem.Recording e.g.
- added ANX.InputSystem.Standard to build script and MSI-Installer build script
- added ANX.InputSystem.Recording to the MSI-Installer build script
- implemented AvailableNetworkSessions (and fixed another wrong class reported by ANXStatusComparer)
- updated WindowsGame sample to support only one InputSystem at the time (replaced multi SelectBox with ComboBox)
- renamed ANX.InputSystem.Windows.XInput to ANX.InputDevices.Windows.XInput because it no longer contains a InputSystem but InputDevices

This version is UNSTABLE and not TESTED because of massive changes regarding the InputSystem !!!
This commit is contained in:
Glatzemann 2011-12-14 19:22:17 +00:00
parent 0cb0919a8a
commit 3765f00151
40 changed files with 1416 additions and 79 deletions

View File

@ -79,7 +79,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XNA", "XNA", "{BD648BB8-EF2
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ANX.InputSystem.Windows.Kinect", "InputSystems\ANX.InputSystem.Windows.Kinect\ANX.InputSystem.Windows.Kinect.csproj", "{E5D69E75-D77C-493F-BBDA-6F9E73B82549}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ANX.InputSystem.Windows.XInput", "InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputSystem.Windows.XInput.csproj", "{60D08399-244F-46A3-91F1-4CFD26D961A3}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ANX.InputDevices.Windows.XInput", "InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputDevices.Windows.XInput.csproj", "{60D08399-244F-46A3-91F1-4CFD26D961A3}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ANX.Framework.Windows.DX10", "RenderSystems\ANX.Framework.Windows.DX10\ANX.Framework.Windows.DX10.csproj", "{5BE49183-2F6F-4527-AC90-D816911FCF90}"
EndProject
@ -128,6 +128,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DX11", "DX11", "{6285F3EF-0
shader\DX11\SpriteBatch.fx = shader\DX11\SpriteBatch.fx
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ANX.InputSystem.Standard", "InputSystems\ANX.InputSystem.Standard\ANX.InputSystem.Standard.csproj", "{49066074-3B7B-4A55-B122-6BD33AB73558}"
EndProject
Global
GlobalSection(SubversionScc) = preSolution
Svn-Managed = True
@ -420,6 +422,16 @@ Global
{160150D5-38E6-482D-97F5-2624F322A854}.Release|Mixed Platforms.Build.0 = Release|x86
{160150D5-38E6-482D-97F5-2624F322A854}.Release|x86.ActiveCfg = Release|x86
{160150D5-38E6-482D-97F5-2624F322A854}.Release|x86.Build.0 = Release|x86
{49066074-3B7B-4A55-B122-6BD33AB73558}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{49066074-3B7B-4A55-B122-6BD33AB73558}.Debug|Any CPU.Build.0 = Debug|Any CPU
{49066074-3B7B-4A55-B122-6BD33AB73558}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{49066074-3B7B-4A55-B122-6BD33AB73558}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{49066074-3B7B-4A55-B122-6BD33AB73558}.Debug|x86.ActiveCfg = Debug|Any CPU
{49066074-3B7B-4A55-B122-6BD33AB73558}.Release|Any CPU.ActiveCfg = Release|Any CPU
{49066074-3B7B-4A55-B122-6BD33AB73558}.Release|Any CPU.Build.0 = Release|Any CPU
{49066074-3B7B-4A55-B122-6BD33AB73558}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{49066074-3B7B-4A55-B122-6BD33AB73558}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{49066074-3B7B-4A55-B122-6BD33AB73558}.Release|x86.ActiveCfg = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -448,6 +460,7 @@ Global
{60D08399-244F-46A3-91F1-4CFD26D961A3} = {7AD65E6B-2A48-437F-81D9-4CA9C9A85C64}
{5CA3CDF5-4D2C-42AC-AD08-641BD3992B75} = {7AD65E6B-2A48-437F-81D9-4CA9C9A85C64}
{DB88DDEB-7281-405D-8FCA-5681B6B2BD7A} = {7AD65E6B-2A48-437F-81D9-4CA9C9A85C64}
{49066074-3B7B-4A55-B122-6BD33AB73558} = {7AD65E6B-2A48-437F-81D9-4CA9C9A85C64}
{6A582788-C4D2-410C-96CD-177F75712D65} = {5725DA44-4F5C-4E93-A957-AC5C85603EE9}
{14EF49AB-6D3F-458D-9D5C-D120B86EDD7A} = {5725DA44-4F5C-4E93-A957-AC5C85603EE9}
{CCB4679D-11AF-4EC6-AAA4-36619FCE70FA} = {60824BDB-AC8A-42ED-9B79-111FB44669FF}

View File

@ -421,9 +421,15 @@
<Compile Include="NonXNA\AddIn.cs" />
<Compile Include="NonXNA\AddInLoadingException.cs" />
<Compile Include="NonXNA\AddInType.cs" />
<Compile Include="NonXNA\InputDeviceFactory.cs" />
<Compile Include="NonXNA\InputSystem\IGamePadCreator.cs" />
<Compile Include="NonXNA\InputSystem\IKeyboard.cs" />
<Compile Include="NonXNA\InputSystem\IMotionSensingDevice.cs" />
<Compile Include="NonXNA\InputSystem\IMouse.cs" />
<Compile Include="NonXNA\InputSystem\IInputDeviceCreator.cs" />
<Compile Include="NonXNA\InputSystem\IKeyboardCreator.cs" />
<Compile Include="NonXNA\InputSystem\IMouseCreator.cs" />
<Compile Include="NonXNA\InputSystem\IMotionSensingDeviceCreator.cs" />
<Compile Include="NonXNA\RenderSystem\EffectProcessorOutputFormat.cs" />
<Compile Include="NonXNA\ICreator.cs" />
<Compile Include="NonXNA\InputSystem\IGamePad.cs" />

View File

@ -1,13 +1,14 @@
using System;
#region Using Statements
using System;
using System.Net;
#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)
//
@ -49,7 +50,129 @@
namespace ANX.Framework.Net
{
public class AvailableNetworkSession
public sealed class AvailableNetworkSession
{
}
private NetworkSessionType sessionType;
private int openPublicGamerSlots;
private QualityOfService qualityOfService;
private NetworkSessionProperties sessionProperties;
private IPEndPoint endPoint;
private IPEndPoint internalendPoint;
private int _currentGameCount;
private string hostGamertag;
private int openPrivateGamerSlots;
public AvailableNetworkSession()
{
qualityOfService = new QualityOfService();
}
public int CurrentGamerCount
{
get
{
return _currentGameCount;
}
internal set
{
_currentGameCount = value;
}
}
public string HostGamertag
{
get
{
return hostGamertag;
}
internal set
{
hostGamertag = value;
}
}
public int OpenPrivateGamerSlots
{
get
{
return openPrivateGamerSlots;
}
internal set
{
openPrivateGamerSlots = value;
}
}
public int OpenPublicGamerSlots
{
get
{
return openPublicGamerSlots;
}
internal set
{
openPublicGamerSlots = value;
}
}
public QualityOfService QualityOfService
{
get
{
return qualityOfService;
}
internal set
{
qualityOfService = value;
}
}
public NetworkSessionProperties SessionProperties
{
get
{
return sessionProperties;
}
internal set
{
sessionProperties = value;
}
}
internal IPEndPoint EndPoint
{
get
{
return endPoint;
}
set
{
endPoint = value;
}
}
internal IPEndPoint InternalEndpont
{
get
{
return internalendPoint;
}
set
{
internalendPoint = value;
}
}
internal NetworkSessionType SessionType
{
get
{
return this.sessionType;
}
set
{
this.sessionType = value;
}
}
}
}

View File

@ -7,6 +7,7 @@ using System.Collections.Generic;
using System.Resources;
using System.Collections;
using System.Linq;
using ANX.Framework.NonXNA.InputSystem;
#endregion
@ -130,6 +131,32 @@ namespace ANX.Framework.NonXNA
}
catch { }
}
//
// Scan the addin for InputDeviceCreators and register them
//
foreach (Type t in this.assembly.GetTypes().Where(p => typeof(IGamePadCreator).IsAssignableFrom(p)))
{
InputDeviceFactory.Instance.AddCreator(Activator.CreateInstance(t) as IGamePadCreator);
}
foreach (Type t in this.assembly.GetTypes().Where(p => typeof(IKeyboardCreator).IsAssignableFrom(p)))
{
InputDeviceFactory.Instance.AddCreator(Activator.CreateInstance(t) as IKeyboardCreator);
}
foreach (Type t in this.assembly.GetTypes().Where(p => typeof(IMouseCreator).IsAssignableFrom(p)))
{
InputDeviceFactory.Instance.AddCreator(Activator.CreateInstance(t) as IMouseCreator);
}
#if XNAEXT
foreach (Type t in this.assembly.GetTypes().Where(p => typeof(IMotionSensingDeviceCreator).IsAssignableFrom(p)))
{
InputDeviceFactory.Instance.AddCreator(Activator.CreateInstance(t) as IMotionSensingDeviceCreator);
}
#endif
}
}

View File

@ -0,0 +1,216 @@
#region Using Statements
using System;
using System.IO;
using System.Reflection;
using System.Collections.Generic;
using System.Linq;
using ANX.Framework.Input;
using NLog;
using System.Collections;
using System.Resources;
using ANX.Framework.NonXNA.InputSystem;
#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.NonXNA
{
public class InputDeviceFactory
{
#region Private Members
private static InputDeviceFactory instance;
private Dictionary<string, IGamePadCreator> gamePadCreators;
private Dictionary<string, IKeyboardCreator> keyboardCreators;
private Dictionary<string, IMouseCreator> mouseCreators;
#if XNAEXT
private Dictionary<string, IMotionSensingDeviceCreator> motionSensingDeviceCreators;
#endif
private static Logger logger = LogManager.GetCurrentClassLogger();
#endregion // Private Members
public static InputDeviceFactory Instance
{
get
{
if (instance == null)
{
instance = new InputDeviceFactory();
logger.Debug("Created InputDeviceFactory instance");
}
return instance;
}
}
private InputDeviceFactory()
{
this.gamePadCreators = new Dictionary<string, IGamePadCreator>();
this.keyboardCreators = new Dictionary<string, IKeyboardCreator>();
this.mouseCreators = new Dictionary<string, IMouseCreator>();
#if XNAEXT
this.motionSensingDeviceCreators = new Dictionary<string, IMotionSensingDeviceCreator>();
#endif
}
#region AddCreator
public void AddCreator(IGamePadCreator creator)
{
string creatorName = creator.Name.ToLowerInvariant();
if (gamePadCreators.ContainsKey(creatorName))
{
throw new Exception("Duplicate GamePadCreator found. A GamePadCreator with the name '" + creator.Name + "' was already registered.");
}
gamePadCreators.Add(creatorName, creator);
logger.Debug("Added GamePadCreator '{0}'. Total count of registered GamePadCreators is now {1}.", creatorName, gamePadCreators.Count);
}
public void AddCreator(IKeyboardCreator creator)
{
string creatorName = creator.Name.ToLowerInvariant();
if (keyboardCreators.ContainsKey(creatorName))
{
throw new Exception("Duplicate KeyboardCreator found. A KeyboardCreator with the name '" + creator.Name + "' was already registered.");
}
keyboardCreators.Add(creatorName, creator);
logger.Debug("Added KeyboardCreator '{0}'. Total count of registered KeyboardCreators is now {1}.", creatorName, keyboardCreators.Count);
}
public void AddCreator(IMouseCreator creator)
{
string creatorName = creator.Name.ToLowerInvariant();
if (mouseCreators.ContainsKey(creatorName))
{
throw new Exception("Duplicate MouseCreator found. A MouseCreator with the name '" + creator.Name + "' was already registered.");
}
mouseCreators.Add(creatorName, creator);
logger.Debug("Added MouseCreator '{0}'. Total count of registered MouseCreators is now {1}.", creatorName, mouseCreators.Count);
}
#if XNAEXT
public void AddCreator(IMotionSensingDeviceCreator creator)
{
string creatorName = creator.Name.ToLowerInvariant();
if (motionSensingDeviceCreators.ContainsKey(creatorName))
{
throw new Exception("Duplicate MotionSensingDeviceCreator found. A MotionSensingDeviceCreator with the name '" + creator.Name + "' was already registered.");
}
motionSensingDeviceCreators.Add(creatorName, creator);
logger.Debug("Added MotionSensingDeviceCreator '{0}'. Total count of registered MotionSensingDeviceCreators is now {1}.", creatorName, motionSensingDeviceCreators.Count);
}
#endif
#endregion // AddCreator
public IGamePad GetDefaultGamePad()
{
//TODO: this is a very basic implementation only which needs some more work
if (this.gamePadCreators.Count > 0)
{
return this.gamePadCreators.Values.First<IGamePadCreator>().CreateGamePadInstance();
}
throw new Exception("Unable to create instance of GamePad because no GamePadCreator was registered.");
}
public IMouse GetDefaultMouse()
{
//TODO: this is a very basic implementation only which needs some more work
if (this.mouseCreators.Count > 0)
{
return this.mouseCreators.Values.First<IMouseCreator>().CreateMouseInstance();
}
throw new Exception("Unable to create instance of Mouse because no MouseCreator was registered.");
}
public IKeyboard GetDefaultKeyboard()
{
//TODO: this is a very basic implementation only which needs some more work
if (this.keyboardCreators.Count > 0)
{
return this.keyboardCreators.Values.First<IKeyboardCreator>().CreateKeyboardInstance();
}
throw new Exception("Unable to create instance of Keyboard because no KeyboardCreator was registered.");
}
#if XNAEXT
public IMotionSensingDevice GetDefaultMotionSensingDevice()
{
//TODO: this is a very basic implementation only which needs some more work
if (this.motionSensingDeviceCreators.Count > 0)
{
return this.motionSensingDeviceCreators.Values.First<IMotionSensingDeviceCreator>().CreateMotionSensingDeviceInstance();
}
throw new Exception("Unable to create instance of MotionSensingDevice because no MotionSensingDeviceCreator was registered.");
}
#endif
}
}

View File

@ -1,9 +1,56 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
#region Using Statements
using System;
using ANX.Framework.Input;
#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.NonXNA
{
public interface IGamePad

View File

@ -0,0 +1,60 @@
#region Using Statements
using System;
using ANX.Framework.Input;
#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.NonXNA.InputSystem
{
public interface IGamePadCreator : IInputDeviceCreator
{
IGamePad CreateGamePadInstance();
}
}

View File

@ -0,0 +1,64 @@
#region Using Statements
using System;
using ANX.Framework.Input;
#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.NonXNA.InputSystem
{
public interface IInputDeviceCreator
{
string Name { get; }
void RegisterCreator(InputDeviceFactory factory);
int Priority { get; }
}
}

View File

@ -0,0 +1,60 @@
#region Using Statements
using System;
using ANX.Framework.Input;
#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.NonXNA.InputSystem
{
public interface IKeyboardCreator : IInputDeviceCreator
{
IKeyboard CreateKeyboardInstance();
}
}

View File

@ -0,0 +1,62 @@
#region Using Statements
using System;
using ANX.Framework.Input;
#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.NonXNA.InputSystem
{
#if XNAEXT
public interface IMotionSensingDeviceCreator : IInputDeviceCreator
{
IMotionSensingDevice CreateMotionSensingDeviceInstance();
}
#endif
}

View File

@ -0,0 +1,60 @@
#region Using Statements
using System;
using ANX.Framework.Input;
#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.NonXNA.InputSystem
{
public interface IMouseCreator : IInputDeviceCreator
{
IMouse CreateMouseInstance();
}
}

View File

@ -31,8 +31,8 @@ using System.Runtime.InteropServices;
//
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
// übernehmen, indem Sie "*" eingeben:
[assembly: AssemblyVersion("0.4.36.*")]
[assembly: AssemblyFileVersion("0.4.36.0")]
[assembly: AssemblyVersion("0.4.37.*")]
[assembly: AssemblyFileVersion("0.4.37.0")]
[assembly:InternalsVisibleTo("ANX.Framework.Windows.DX10")]
[assembly:InternalsVisibleTo("ANX.RenderSystem.Windows.DX11")]

View File

@ -0,0 +1,79 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{49066074-3B7B-4A55-B122-6BD33AB73558}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>ANX.InputSystem.Standard</RootNamespace>
<AssemblyName>ANX.InputSystem.Standard</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\bin\Debug\</OutputPath>
<DefineConstants>TRACE;DEBUG;XNAEXT</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>..\..\bin\Release\</OutputPath>
<DefineConstants>TRACE;XNAEXT</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="NLog, Version=2.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\lib\NLog\NLog.dll</HintPath>
</Reference>
<Reference Include="NLog.Extended, Version=2.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\lib\NLog\NLog.Extended.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Creator.cs" />
<Compile Include="Metadata.Designer.cs">
<DependentUpon>Metadata.resx</DependentUpon>
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
</Compile>
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\ANX.Framework\ANX.Framework.csproj">
<Project>{6899F0C9-70B9-4EB0-9DD3-E598D4BE3E35}</Project>
<Name>ANX.Framework</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Metadata.resx">
<Generator>PublicResXFileCodeGenerator</Generator>
<LastGenOutput>Metadata.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@ -57,7 +57,7 @@ using NLog;
#endregion // License
namespace ANX.InputSystem.Windows.XInput
namespace ANX.InputDevices.Windows.XInput
{
public class Creator : IInputSystemCreator
{
@ -67,27 +67,26 @@ namespace ANX.InputSystem.Windows.XInput
{
get
{
return "XInput";
return "Standard";
}
}
public int Priority
{
get { return 10; }
get { return 0; }
}
public bool IsSupported
{
get
{
//TODO: this is just a very basic version of test for support
return AddInSystemFactory.Instance.OperatingSystem.Platform == PlatformID.Win32NT;
return true;
}
}
public void RegisterCreator(AddInSystemFactory factory)
{
logger.Debug("adding XInput creator to creator collection of AddInSystemFactory");
logger.Debug("adding Standard InputSystem creator to creator collection of AddInSystemFactory");
factory.AddCreator(this);
}
@ -95,9 +94,9 @@ namespace ANX.InputSystem.Windows.XInput
{
get
{
logger.Debug("returning a new XInput GamePad device");
logger.Debug("returning a new GamePad device");
AddInSystemFactory.Instance.PreventInputSystemChange();
return new GamePad();
return InputDeviceFactory.Instance.GetDefaultGamePad();
}
}
@ -105,9 +104,9 @@ namespace ANX.InputSystem.Windows.XInput
{
get
{
logger.Debug("returning a new XInput Mouse device");
logger.Debug("returning a new Mouse device");
AddInSystemFactory.Instance.PreventInputSystemChange();
return new Mouse();
return InputDeviceFactory.Instance.GetDefaultMouse();
}
}
@ -115,16 +114,21 @@ namespace ANX.InputSystem.Windows.XInput
{
get
{
logger.Debug("returning a new XInput Keyboard device");
logger.Debug("returning a new Keyboard device");
AddInSystemFactory.Instance.PreventInputSystemChange();
return new Keyboard();
return InputDeviceFactory.Instance.GetDefaultKeyboard();
}
}
#if XNAEXT
public IMotionSensingDevice MotionSensingDevice
{
get { return null; }
get
{
logger.Debug("returning a new MotionSensingDevice device");
AddInSystemFactory.Instance.PreventInputSystemChange();
return InputDeviceFactory.Instance.GetDefaultMotionSensingDevice();
}
}
#endif
}

View File

@ -0,0 +1,72 @@
//------------------------------------------------------------------------------
// <auto-generated>
// Dieser Code wurde von einem Tool generiert.
// Laufzeitversion:4.0.30319.239
//
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
// der Code erneut generiert wird.
// </auto-generated>
//------------------------------------------------------------------------------
namespace ANX.InputSystem.Standard {
using System;
/// <summary>
/// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
/// </summary>
// Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
// -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
// Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
// mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
public class Metadata {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Metadata() {
}
/// <summary>
/// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ANX.InputSystem.Standard.Metadata", typeof(Metadata).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
/// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
/// <summary>
/// Sucht eine lokalisierte Zeichenfolge, die Win32NT Unix MacOsX ähnelt.
/// </summary>
public static string SupportedPlatforms {
get {
return ResourceManager.GetString("SupportedPlatforms", resourceCulture);
}
}
}
}

View File

@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="SupportedPlatforms" xml:space="preserve">
<value>Win32NT Unix MacOsX</value>
</data>
</root>

View File

@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// Allgemeine Informationen über eine Assembly werden über die folgenden
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
// die mit einer Assembly verknüpft sind.
[assembly: AssemblyTitle("ANX.InputSystem.Standard")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("ANX.Framework Team")]
[assembly: AssemblyProduct("ANX.InputSystem.Standard")]
[assembly: AssemblyCopyright("Copyright © ANX.Framework Team 2011")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Durch Festlegen von ComVisible auf "false" werden die Typen in dieser Assembly unsichtbar
// für COM-Komponenten. Wenn Sie auf einen Typ in dieser Assembly von
// COM zugreifen müssen, legen Sie das ComVisible-Attribut für diesen Typ auf "true" fest.
[assembly: ComVisible(false)]
// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
[assembly: Guid("aa8530cd-9404-4eb5-a6b7-8b31b087c198")]
// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
//
// Hauptversion
// Nebenversion
// Buildnummer
// Revision
//
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
// übernehmen, indem Sie "*" eingeben:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("0.5.0.0")]
[assembly: AssemblyFileVersion("0.5.0.0")]

View File

@ -8,8 +8,8 @@
<ProjectGuid>{60D08399-244F-46A3-91F1-4CFD26D961A3}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>ANX.InputSystem.Windows.XInput</RootNamespace>
<AssemblyName>ANX.InputSystem.Windows.XInput</AssemblyName>
<RootNamespace>ANX.InputDevices.Windows.XInput</RootNamespace>
<AssemblyName>ANX.InputDevices.Windows.XInput</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
@ -57,9 +57,11 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Creator.cs" />
<Compile Include="FormatConverter.cs" />
<Compile Include="GamePadCreator.cs" />
<Compile Include="Keyboard.cs" />
<Compile Include="KeyboardCreator.cs" />
<Compile Include="MouseCreator.cs" />
<Compile Include="Metadata.Designer.cs">
<DependentUpon>Metadata.resx</DependentUpon>
<AutoGen>True</AutoGen>

View File

@ -52,7 +52,7 @@ using SharpDX.XInput;
#endregion // License
namespace ANX.InputSystem.Windows.XInput
namespace ANX.InputDevices.Windows.XInput
{
internal class FormatConverter
{

View File

@ -59,7 +59,7 @@ using SharpDX.XInput;
#endregion // License
namespace ANX.InputSystem.Windows.XInput
namespace ANX.InputDevices.Windows.XInput
{
public class GamePad : IGamePad
{

View File

@ -0,0 +1,85 @@
#region Using Statements
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Runtime.InteropServices;
using ANX.Framework.NonXNA;
using NLog;
using ANX.Framework.NonXNA.InputSystem;
#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.InputDevices.Windows.XInput
{
public class GamePadCreator : IGamePadCreator
{
public string Name
{
get { return "XInput.GamePad"; }
}
public void RegisterCreator(InputDeviceFactory factory)
{
factory.AddCreator(this);
}
public int Priority
{
get { return 10; }
}
public IGamePad CreateGamePadInstance()
{
return new GamePad();
}
}
}

View File

@ -3,7 +3,7 @@ using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ANX.InputSystem;
using ANX.InputDevices;
using ANX.Framework.NonXNA;
using SharpDX.DirectInput;
using DXKeyboard=SharpDX.DirectInput.Keyboard;
@ -56,7 +56,7 @@ using DXKeyboard=SharpDX.DirectInput.Keyboard;
#endregion // License
namespace ANX.InputSystem.Windows.XInput
namespace ANX.InputDevices.Windows.XInput
{
public class Keyboard : IKeyboard
{

View File

@ -0,0 +1,85 @@
#region Using Statements
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Runtime.InteropServices;
using ANX.Framework.NonXNA;
using NLog;
using ANX.Framework.NonXNA.InputSystem;
#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.InputDevices.Windows.XInput
{
public class KeyboardCreator : IKeyboardCreator
{
public string Name
{
get { return "DirectInput.DXKeyboard"; }
}
public void RegisterCreator(InputDeviceFactory factory)
{
factory.AddCreator(this);
}
public int Priority
{
get { return 10; }
}
public IKeyboard CreateKeyboardInstance()
{
return new Keyboard();
}
}
}

View File

@ -8,7 +8,7 @@
// </auto-generated>
//------------------------------------------------------------------------------
namespace ANX.Framework.Windows.DX10 {
namespace ANX.InputDevices.Windows.XInput {
using System;
@ -39,7 +39,7 @@ namespace ANX.Framework.Windows.DX10 {
public static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ANX.Framework.Windows.DX10.Metadata", typeof(Metadata).Assembly);
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ANX.InputDevices.Windows.XInput.Metadata", typeof(Metadata).Assembly);
resourceMan = temp;
}
return resourceMan;

View File

@ -60,7 +60,7 @@ using ANX.Framework;
using MouseX = SharpDX.DirectInput.Mouse;
namespace ANX.InputSystem.Windows.XInput
namespace ANX.InputDevices.Windows.XInput
{
class Mouse : IMouse
{

View File

@ -0,0 +1,85 @@
#region Using Statements
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Runtime.InteropServices;
using ANX.Framework.NonXNA;
using NLog;
using ANX.Framework.NonXNA.InputSystem;
#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.InputDevices.Windows.XInput
{
public class MouseCreator : IMouseCreator
{
public string Name
{
get { return "DirectInput.Mouse"; }
}
public void RegisterCreator(InputDeviceFactory factory)
{
factory.AddCreator(this);
}
public int Priority
{
get { return 10; }
}
public IMouse CreateMouseInstance()
{
return new Mouse();
}
}
}

View File

@ -5,11 +5,11 @@ using System.Runtime.InteropServices;
// Allgemeine Informationen über eine Assembly werden über die folgenden
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
// die mit einer Assembly verknüpft sind.
[assembly: AssemblyTitle("ANX.InputSystem.Windows.XInput")]
[assembly: AssemblyTitle("ANX.InputDevices.Windows.XInput")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("ANX.Framework Team")]
[assembly: AssemblyProduct("ANX.InputSystem.Windows.XInput")]
[assembly: AssemblyProduct("ANX.InputDevices.Windows.XInput")]
[assembly: AssemblyCopyright("Copyright © ANX.Framework Team 2011")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
// übernehmen, indem Sie "*" eingeben:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("0.6.3.0")]
[assembly: AssemblyFileVersion("0.6.3.0")]
[assembly: AssemblyVersion("0.6.5.0")]
[assembly: AssemblyFileVersion("0.6.5.0")]

View File

@ -50,8 +50,8 @@
<File Id='sharpdx.xapo' Name='SharpDX.XAPO.dll' DiskId='1' Source='../bin/Release/SharpDX.XAPO.dll' />
<File Id='sharpdx.xaudio2' Name='SharpDX.XAudio2.dll' DiskId='1' Source='../bin/Release/SharpDX.XAudio2.dll' />
<File Id='sharpdx.xinput' Name='SharpDX.XInput.dll' DiskId='1' Source='../bin/Release/SharpDX.XInput.dll' />
<File Id='sharpdx_direct3d11_effects_x64' Name='sharpdx_direct3d11_effects_x64.dll' DiskId='1' Source='../bin/Release/sharpdx_direct3d11_effects_x64.dll' />
<File Id='sharpdx_direct3d11_effects_x86' Name='sharpdx_direct3d11_effects_x86.dll' DiskId='1' Source='../bin/Release/sharpdx_direct3d11_effects_x86.dll' />
<File Id='sharpdx_direct3d11_effects_x64' Name='sharpdx_direct3d11_effects_x64.dll' DiskId='1' Source='../lib/SharpDX/Bin/sharpdx_direct3d11_effects_x64.dll' />
<File Id='sharpdx_direct3d11_effects_x86' Name='sharpdx_direct3d11_effects_x86.dll' DiskId='1' Source='../lib/SharpDX/Bin/sharpdx_direct3d11_effects_x86.dll' />
</Component>
<Component Id='OpenTK' Guid='{132664CF-8DD6-4B6A-A200-88D4BE5F2AE9}'>
<File Id='opentk' Name='OpenTK.dll' DiskId='1' Source='../bin/Release/OpenTK.dll' />
@ -65,8 +65,14 @@
<Component Id='ANX.Framework.Windows.GL3' Guid='{67D57889-559F-4762-95D1-B91014D8D55E}'>
<File Id='anx.framework.windows.gl3' Name='ANX.Framework.Windows.GL3.dll' DiskId='1' Source='../bin/Release/ANX.Framework.Windows.GL3.dll' />
</Component>
<Component Id='ANX.InputSystem.Windows.XInput' Guid='{825A36A3-5071-46C5-B195-E0EB469EDA51}'>
<File Id='anx.inputsystem.windows.xinput' Name='ANX.InputSystem.Windows.XInput.dll' DiskId='1' Source='../bin/Release/ANX.InputSystem.Windows.XInput.dll' />
<Component Id='ANX.InputSystem.Standard' Guid='{71A52D93-AE81-4847-A29A-6AA6E16C83FB}'>
<File Id='anx.inputsystem.Standard' Name='ANX.InputSystem.Standard.dll' DiskId='1' Source='../bin/Release/ANX.InputSystem.Standard.dll' />
</Component>
<Component Id='ANX.InputSystem.Recording' Guid='{F7AF68E6-CFB4-4CCA-8F6C-2C0FD286F258}'>
<File Id='anx.inputsystem.Recording' Name='ANX.InputSystem.Recording.dll' DiskId='1' Source='../bin/Release/ANX.InputSystem.Recording.dll' />
</Component>
<Component Id='ANX.InputDevices.Windows.XInput' Guid='{825A36A3-5071-46C5-B195-E0EB469EDA51}'>
<File Id='ANX.InputDevices.Windows.XInput' Name='ANX.InputDevices.Windows.XInput.dll' DiskId='1' Source='../bin/Release/ANX.InputDevices.Windows.XInput.dll' />
</Component>
<Component Id='ANX.SoundSystem.Windows.XAudio' Guid='{4C4EDC2B-BF6B-437C-874C-1573373DB55E}'>
<File Id='anx.soundsystem.windows.xaudio' Name='ANX.SoundSystem.Windows.XAudio.dll' DiskId='1' Source='../bin/Release/ANX.SoundSystem.Windows.XAudio.dll' />

View File

@ -87,9 +87,9 @@
<Project>{DB88DDEB-7281-405D-8FCA-5681B6B2BD7A}</Project>
<Name>ANX.InputSystem.Recording</Name>
</ProjectReference>
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputSystem.Windows.XInput.csproj">
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputDevices.Windows.XInput.csproj">
<Project>{60D08399-244F-46A3-91F1-4CFD26D961A3}</Project>
<Name>ANX.InputSystem.Windows.XInput</Name>
<Name>ANX.InputDevices.Windows.XInput</Name>
</ProjectReference>
<ProjectReference Include="..\..\RenderSystems\ANX.Framework.Windows.DX10\ANX.Framework.Windows.DX10.csproj">
<Project>{5BE49183-2F6F-4527-AC90-D816911FCF90}</Project>

View File

@ -83,9 +83,9 @@
<Project>{6899F0C9-70B9-4EB0-9DD3-E598D4BE3E35}</Project>
<Name>ANX.Framework</Name>
</ProjectReference>
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputSystem.Windows.XInput.csproj">
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputDevices.Windows.XInput.csproj">
<Project>{60D08399-244F-46A3-91F1-4CFD26D961A3}</Project>
<Name>ANX.InputSystem.Windows.XInput</Name>
<Name>ANX.InputDevices.Windows.XInput</Name>
</ProjectReference>
<ProjectReference Include="..\..\RenderSystems\ANX.Framework.Windows.DX10\ANX.Framework.Windows.DX10.csproj">
<Project>{5BE49183-2F6F-4527-AC90-D816911FCF90}</Project>

View File

@ -83,9 +83,9 @@
<Project>{6899F0C9-70B9-4EB0-9DD3-E598D4BE3E35}</Project>
<Name>ANX.Framework</Name>
</ProjectReference>
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputSystem.Windows.XInput.csproj">
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputDevices.Windows.XInput.csproj">
<Project>{60D08399-244F-46A3-91F1-4CFD26D961A3}</Project>
<Name>ANX.InputSystem.Windows.XInput</Name>
<Name>ANX.InputDevices.Windows.XInput</Name>
</ProjectReference>
<ProjectReference Include="..\..\RenderSystems\ANX.Framework.Windows.DX10\ANX.Framework.Windows.DX10.csproj">
<Project>{5BE49183-2F6F-4527-AC90-D816911FCF90}</Project>

View File

@ -83,9 +83,9 @@
<Project>{6899F0C9-70B9-4EB0-9DD3-E598D4BE3E35}</Project>
<Name>ANX.Framework</Name>
</ProjectReference>
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputSystem.Windows.XInput.csproj">
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputDevices.Windows.XInput.csproj">
<Project>{60D08399-244F-46A3-91F1-4CFD26D961A3}</Project>
<Name>ANX.InputSystem.Windows.XInput</Name>
<Name>ANX.InputDevices.Windows.XInput</Name>
</ProjectReference>
<ProjectReference Include="..\..\RenderSystems\ANX.Framework.Windows.DX10\ANX.Framework.Windows.DX10.csproj">
<Project>{5BE49183-2F6F-4527-AC90-D816911FCF90}</Project>

View File

@ -120,9 +120,9 @@
<Project>{6899F0C9-70B9-4EB0-9DD3-E598D4BE3E35}</Project>
<Name>ANX.Framework</Name>
</ProjectReference>
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputSystem.Windows.XInput.csproj">
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputDevices.Windows.XInput.csproj">
<Project>{60D08399-244F-46A3-91F1-4CFD26D961A3}</Project>
<Name>ANX.InputSystem.Windows.XInput</Name>
<Name>ANX.InputDevices.Windows.XInput</Name>
</ProjectReference>
<ProjectReference Include="..\..\RenderSystems\ANX.Framework.Windows.DX10\ANX.Framework.Windows.DX10.csproj">
<Project>{5BE49183-2F6F-4527-AC90-D816911FCF90}</Project>

View File

@ -83,9 +83,9 @@
<Project>{6899F0C9-70B9-4EB0-9DD3-E598D4BE3E35}</Project>
<Name>ANX.Framework</Name>
</ProjectReference>
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputSystem.Windows.XInput.csproj">
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputDevices.Windows.XInput.csproj">
<Project>{60D08399-244F-46A3-91F1-4CFD26D961A3}</Project>
<Name>ANX.InputSystem.Windows.XInput</Name>
<Name>ANX.InputDevices.Windows.XInput</Name>
</ProjectReference>
<ProjectReference Include="..\..\RenderSystems\ANX.Framework.Windows.DX10\ANX.Framework.Windows.DX10.csproj">
<Project>{5BE49183-2F6F-4527-AC90-D816911FCF90}</Project>

View File

@ -83,9 +83,9 @@
<Project>{6899F0C9-70B9-4EB0-9DD3-E598D4BE3E35}</Project>
<Name>ANX.Framework</Name>
</ProjectReference>
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputSystem.Windows.XInput.csproj">
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputDevices.Windows.XInput.csproj">
<Project>{60D08399-244F-46A3-91F1-4CFD26D961A3}</Project>
<Name>ANX.InputSystem.Windows.XInput</Name>
<Name>ANX.InputDevices.Windows.XInput</Name>
</ProjectReference>
<ProjectReference Include="..\..\RenderSystems\ANX.Framework.Windows.DX10\ANX.Framework.Windows.DX10.csproj">
<Project>{5BE49183-2F6F-4527-AC90-D816911FCF90}</Project>

View File

@ -37,7 +37,7 @@
this.cbAudioSystem = new System.Windows.Forms.ComboBox();
this.label3 = new System.Windows.Forms.Label();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.cbInputSystems = new System.Windows.Forms.CheckedListBox();
this.cbInputSystem = new System.Windows.Forms.ComboBox();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
this.SuspendLayout();
//
@ -117,13 +117,14 @@
this.pictureBox1.TabIndex = 8;
this.pictureBox1.TabStop = false;
//
// cbInputSystems
// cbInputSystem
//
this.cbInputSystems.FormattingEnabled = true;
this.cbInputSystems.Location = new System.Drawing.Point(184, 236);
this.cbInputSystems.Name = "cbInputSystems";
this.cbInputSystems.Size = new System.Drawing.Size(277, 94);
this.cbInputSystems.TabIndex = 9;
this.cbInputSystem.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cbInputSystem.FormattingEnabled = true;
this.cbInputSystem.Location = new System.Drawing.Point(184, 233);
this.cbInputSystem.Name = "cbInputSystem";
this.cbInputSystem.Size = new System.Drawing.Size(277, 21);
this.cbInputSystem.TabIndex = 9;
//
// AddInSelector
//
@ -132,7 +133,7 @@
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.button2;
this.ClientSize = new System.Drawing.Size(507, 371);
this.Controls.Add(this.cbInputSystems);
this.Controls.Add(this.cbInputSystem);
this.Controls.Add(this.pictureBox1);
this.Controls.Add(this.cbAudioSystem);
this.Controls.Add(this.label3);
@ -164,6 +165,6 @@
public System.Windows.Forms.ComboBox cbAudioSystem;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.PictureBox pictureBox1;
internal System.Windows.Forms.CheckedListBox cbInputSystems;
public System.Windows.Forms.ComboBox cbInputSystem;
}
}

View File

@ -30,9 +30,9 @@ namespace WindowsGame1
foreach (IInputSystemCreator inputSystemCreator in AddInSystemFactory.Instance.GetCreators<IInputSystemCreator>())
{
cbInputSystems.Items.Add(inputSystemCreator.Name);
cbInputSystem.Items.Add(inputSystemCreator.Name);
}
cbInputSystems.SetItemChecked(0, true);
cbInputSystem.SelectedIndex = 0;
foreach (ISoundSystemCreator soundSystemCreator in AddInSystemFactory.Instance.GetCreators<ISoundSystemCreator>())
{

View File

@ -21,7 +21,7 @@ namespace WindowsGame1
{
AddInSystemFactory.Instance.PreferredRenderSystem = selector.cbRenderSystem.Text;
AddInSystemFactory.Instance.PreferredSoundSystem = selector.cbAudioSystem.Text;
AddInSystemFactory.Instance.PreferredInputSystem = selector.cbInputSystems.CheckedItems[0].ToString();
AddInSystemFactory.Instance.PreferredInputSystem = selector.cbInputSystem.Text;
using (Game1 game = new Game1())
{

View File

@ -107,13 +107,17 @@
<Project>{DB88DDEB-7281-405D-8FCA-5681B6B2BD7A}</Project>
<Name>ANX.InputSystem.Recording</Name>
</ProjectReference>
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Standard\ANX.InputSystem.Standard.csproj">
<Project>{49066074-3B7B-4A55-B122-6BD33AB73558}</Project>
<Name>ANX.InputSystem.Standard</Name>
</ProjectReference>
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.Kinect\ANX.InputSystem.Windows.Kinect.csproj">
<Project>{E5D69E75-D77C-493F-BBDA-6F9E73B82549}</Project>
<Name>ANX.InputSystem.Windows.Kinect</Name>
</ProjectReference>
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputSystem.Windows.XInput.csproj">
<ProjectReference Include="..\..\InputSystems\ANX.InputSystem.Windows.XInput\ANX.InputDevices.Windows.XInput.csproj">
<Project>{60D08399-244F-46A3-91F1-4CFD26D961A3}</Project>
<Name>ANX.InputSystem.Windows.XInput</Name>
<Name>ANX.InputDevices.Windows.XInput</Name>
</ProjectReference>
<ProjectReference Include="..\..\RenderSystems\ANX.Framework.Windows.DX10\ANX.Framework.Windows.DX10.csproj">
<Project>{5BE49183-2F6F-4527-AC90-D816911FCF90}</Project>

View File

@ -9,12 +9,15 @@
<property name="project.anx.extended" value="false" unless="${property::exists('project.anx.extended')}" />
<property name="project.anx.directives" value="" unless="${property::exists('project.anx.directives')}" />
<property name="project.anx.path.inputsystem.xinput" value="../InputSystems/ANX.InputSystem.Windows.XInput" />
<property name="project.anx.name.inputsystem.xinput" value="ANX.InputSystem.Windows.XInput" />
<property name="project.anx.path.inputsystem.kinect" value="../InputSystems/ANX.InputSystem.Windows.Kinect" />
<property name="project.anx.name.inputsystem.kinect" value="ANX.InputSystem.Windows.Kinect" />
<property name="project.anx.path.inputsystem.standard" value="../InputSystems/ANX.InputSystem.Standard" />
<property name="project.anx.name.inputsystem.standard" value="ANX.InputSystem.Standard" />
<property name="project.anx.path.inputsystem.recording" value="../InputSystems/ANX.InputSystem.Recording" />
<property name="project.anx.name.inputsystem.recording" value="ANX.InputSystem.Recording" />
<property name="project.anx.path.inputdevices.xinput" value="../InputSystems/ANX.InputDevices.Windows.XInput" />
<property name="project.anx.name.inputdevices.xinput" value="ANX.InputDevices.Windows.XInput" />
<property name="project.anx.path.inputsystem.kinect" value="../InputSystems/ANX.InputSystem.Windows.Kinect" />
<property name="project.anx.name.inputsystem.kinect" value="ANX.InputSystem.Windows.Kinect" />
<property name="project.anx.path.inputsystem.opentk" value="../InputSystems/ANX.InputSystem.OpenTK" />
<property name="project.anx.name.inputsystem.opentk" value="ANX.InputSystem.OpenTK" />
@ -49,7 +52,7 @@
<include name="../bin/**" />
<include name="${build.dir}/${build.configuration}/installer/**" />
<include name="${project.anx.path}/obj/**" />
<include name="${project.anx.path.inputsystem.xinput}/obj/**" />
<include name="${project.anx.path.inputdevices.xinput}/obj/**" />
<include name="${project.anx.path.inputsystem.kinect}/obj/**" />
<include name="${project.anx.path.inputsystem.recording}/obj/**" />
<include name="${project.anx.path.inputsystem.opentk}/obj/**" />
@ -179,7 +182,7 @@
<target name="build_anx_inputsystems" description="Build ANX.Framework InputSystems">
<echo message="===================================================" />
<echo message="Now building: ANX.Framework InputSystem XInput" />
<echo message="Now building: ANX.Framework InputSystem Standard" />
<echo message="===================================================" />
<exec program="msbuild.exe" >
@ -189,7 +192,7 @@
<arg value="/p:OutputPath=../${build.dir}/${build.configuration}" />
<arg value='/p:DefineConstants="${project.anx.directives}"' />
<arg value="/clp:ErrorsOnly" />
<arg value="${project.anx.path.inputsystem.xinput}/${project.anx.name.inputsystem.xinput}.csproj" />
<arg value="${project.anx.path.inputsystem.standard}/${project.anx.name.inputsystem.standard}.csproj" />
</exec>
<echo message="===================================================" />
@ -206,6 +209,20 @@
<arg value="${project.anx.path.inputsystem.recording}/${project.anx.name.inputsystem.recording}.csproj" />
</exec>
<echo message="===================================================" />
<echo message="Now building: ANX.Framework InputDevices XInput" />
<echo message="===================================================" />
<exec program="msbuild.exe" >
<arg value="/t:Build"/>
<arg value="/p:Configuration=${build.configuration}"/>
<arg value='/p:Platform="${build.platform}"'/>
<arg value="/p:OutputPath=../${build.dir}/${build.configuration}" />
<arg value='/p:DefineConstants="${project.anx.directives}"' />
<arg value="/clp:ErrorsOnly" />
<arg value="${project.anx.path.inputdevices.xinput}/${project.anx.name.inputdevices.xinput}.csproj" />
</exec>
<echo message="===================================================" />
<echo message="Now building: ANX.Framework InputSystem OpenTK" />
<echo message="===================================================" />