User avatar
jsantos
Site Admin
Topic Author
Posts: 3905
Joined: 20 Jan 2012, 17:18
Contact:

Re: NoesisGUI 1.3 BETA3

04 Jan 2017, 15:26

That line slipped trough : D not yet...but soon.
 
nokola
Posts: 188
Joined: 10 Mar 2015, 05:29

Re: NoesisGUI 1.3 BETA3

06 Jan 2017, 05:59

Beta 4 fixes sound awesome! Great job! (also Unity customer here btw)
 
Ziriax
Posts: 60
Joined: 10 Dec 2015, 17:59
Location: Belgium
Contact:

Re: NoesisGUI 1.3 BETA4

21 Jan 2017, 14:04

Beta4 is ready for downloading! Thanks everyone for the great feedback. We are very proud of our community : )
So many improvements, kudos!
Peter Verswyvelen,
Strongly Typed Solutions
 
KeldorKatarn
Posts: 193
Joined: 30 May 2014, 10:26

Re: NoesisGUI 1.3 BETA2

06 Feb 2017, 10:54

Source attribute deprecated in UserControls and Code-Behind classes. Corresponding XAML must now be loaded from constructor using LoadComponent(this, uri). This matches the WPF behavior.
class MyUserControl: public Noesis::UserControl
{
public:
    MyUserControl()
    {
        InitializeComponent();
    }

private:
    void InitializeComponent()
    {
        Noesis::GUI::LoadComponent(this, "Controls/MyUserControl.xaml");

        // Do FindNames and hook to events here
    }
};

Sorry but I do not quite understand this example code. InitializeComponent() is already defined in FrameworkElement isn't it? How can I simply privately override it? Wouldn't it be better to adjust the FrameworkElement.InitializeComponent() method so it calls a virtual function that we can override in our code behind files? Or am I missunderstanding something here. This re-definition of InitializeComponent() just looks wrong.

Also just for clarification, what exactly does Noesis::Gui::LoadXaml() do compared to Noesis::GUI::LoadComponent()?
I'm assuming that the first will load a XAML text file from any path on the disk and compile it into a usable FrameworkElement, and the latter loads a precompiled binary XAML that was already part of the assets folder?
Or am I wrong?
 
User avatar
jsantos
Site Admin
Topic Author
Posts: 3905
Joined: 20 Jan 2012, 17:18
Contact:

Re: NoesisGUI 1.3 BETA2

07 Feb 2017, 19:16

Sorry but I do not quite understand this example code. InitializeComponent() is already defined in FrameworkElement isn't it? How can I simply privately override it? Wouldn't it be better to adjust the FrameworkElement.InitializeComponent() method so it calls a virtual function that we can override in our code behind files? Or am I missunderstanding something here. This re-definition of InitializeComponent() just looks wrong.
InitializeComponent is the function used by Visual Studio to initialize the automatically generated code-behind code. In Noesis we don't have automatic code-behind yet (it is in the roadmap) but we have followed the same name convention. You can find more information about InitializeComponent here.
Also just for clarification, what exactly does Noesis::Gui::LoadXaml() do compared to Noesis::GUI::LoadComponent()?
LoadComponent is a similar version to LoadXaml, but instead of creating the instance indicated in the x:class you pass it the instance created as a parameter. This function is mainly used to connect user controls with their xaml part. More information about this method in the MSDN.
 
KeldorKatarn
Posts: 193
Joined: 30 May 2014, 10:26

Re: NoesisGUI 1.3 BETA4

07 Feb 2017, 23:46

A quick followup qurstion to the XAML loading. If I load a XAML and get the FrameworkElement object in return. Will it be possible in the future to assign that to the NoesisGUIPanel component in Unity as a root? Right now the root can only be changed by forcing a complete reload specifying the XAML file.

I mean the current workaround is to have a small shell XAML with a ContentControl that you simply assign the different views to. Is there any reason the root cannot be easily assigned to right now?
 
User avatar
jsantos
Site Admin
Topic Author
Posts: 3905
Joined: 20 Jan 2012, 17:18
Contact:

Re: NoesisGUI 1.3 BETA4

08 Feb 2017, 01:34

A quick followup qurstion to the XAML loading. If I load a XAML and get the FrameworkElement object in return. Will it be possible in the future to assign that to the NoesisGUIPanel component in Unity as a root? Right now the root can only be changed by forcing a complete reload specifying the XAML file.
Yes, we could add something like that in v1.3 although I don't know if it is going to be that useful because in v1.3 we are tightly integrated with the Unity assets architecture. This means that you no longer can LoadXaml using a path. You will need a MonoBehaviour holding a reference to a XAML asset. Or you will need to have the asset inside a /Resources/ folder.

But yes, we plan to release the Unity version very very soon. Let's wait for that and discuss it again.

Thanks!
 
User avatar
jsantos
Site Admin
Topic Author
Posts: 3905
Joined: 20 Jan 2012, 17:18
Contact:

Re: NoesisGUI 1.3 BETA4

20 Feb 2017, 23:06

For people waiting for the Unity package, we have created a new thread about it.
 
User avatar
jsantos
Site Admin
Topic Author
Posts: 3905
Joined: 20 Jan 2012, 17:18
Contact:

Re: NoesisGUI 1.3 RC1

23 Feb 2017, 04:52

First Release Candidate!
  • New platform supported.
  • Improved the batching algorithm with optimal number of draw calls in many scenarios.
  • Optimized stencil usage trying to avoid it whenever possible.
  • Resource providers exposed to customize how XAMLs, textures and fonts are loaded.
  • Support for multiple initializations in Noesis.GUI.Init().
  • Support for hot reloading of assemblies.
  • Renamed DependencyProperty() parameter names to match WPF.
  • Support for readonly keyword in static DependencyProperties.
  • FontStretch, FontStyle and FontWeight added.
  • RenderOptions.BitmapScalingMode is now available.
  • Texture class exposed with methods to wrap native texture pointers (ID3D11Texture* and GLuint).
  • StreamGeometry.ToString implemented as in WPF.
  • Support for destroying IView and IRenderer independently to avoid having to wait for the render thread.
  • Added support for Paste and SelectAll commands in PasswordBox.
  • Support for showing ToolTip on disabled elements.
  • Stencil artifacts when batching primitives.
  • String property callbacks were not correctly converting between UTF8 and Unicode.
  • TextBox inside ListBox was losing focus when space key was pressed.
 
User avatar
ai_enabled
Posts: 231
Joined: 18 Jul 2013, 05:28
Contact:

Re: NoesisGUI 1.3 RC1

23 Feb 2017, 07:01

Great job! Works really well, including assemblies reloading feature.
I'm going to update my MonoGame Wrapper integration project on Github for 1.3 release with adding all the missing features (thought for DX11 only yet).
AtomicTorch Studio Pte. Ltd. http://atomictorch.com

Who is online

Users browsing this forum: No registered users and 32 guests