This library provides solution for integration NoesisGUI v2.0+ with Ammy library.
Currently it provides only building feature - it builds .ammy
files to XAML
files for loading them in NoesisGUI.
Building XAML
files is implemented at NoesisAmmyBackend
project.
A sample project based on SharpDX is included (Windows only, Direct3D 11, based on NoesisGUI sample). It demonstrates how to use NoesisAmmyBackend
, it will automatically rebuild XAML
files when any .ammy
file is changed and reload NoesisGUI after that.
- Visual Studio 2013/2015/2017, any edition will be fine.
-
Pull submodule
AmmyBackend
from https://github.com/AmmyUI/Backend -
Download NoesisGUI v1.3 C# API Windows SDK from NoesisGUI Forums.
-
Extract it to the folder
\NoesisGUI-SDK\
. The resulting directory tree should look like this:NoesisGUI-SDK |--Bin |--Doc |--Samples |--Src
-
Open
NoesisAmmyBackend.sln
with Visual Studio 2013/2015 -
Open context menu on
NoesisAmmySampleD3D11
project and selectSet as StartUp Project
. -
Press F5 to launch the sample project.
-
Please note that the sample project uses
.ammy
files fromSampleWPFAmmy/Data
folder. It builds them to XAML by usingNoesisAmmyBackend
project. It uses supporting C# classes for these.ammy
files in theNoesisAmmySampleD3D11/Data
folder. You could modify.ammy
files to reload NoesisGUI with the newXAML
data. But you cannot modify C# files while the project is running (so no dynamic recompilation of C# code).
It uses a very simple and unreliable mechanism of listening to the file system changes to reload NoesisGUI when any .ammy
file is modified. It's simply a proof-of-concept and will crash often.
Ammy depends on .NET Framework 4.5. Also it depends on Nemerle and Nitra (both are .NET 4.5 assemblies). It's expected to work properly on Windows, have not tested on other OSes yet but it might work fine under fresh version of Mono.
Pull requests are welcome.
The code provided under MIT License. Please read LICENSE.md for details.