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

Re: Noesis GUI in business application

24 Feb 2018, 07:55

The latest beta C# SDK includes a few samples using both Visual Studio and Xamarin (android for now).

Could you please elaborate a bit more about those things that must be solved? Thanks for your time!
 
GabrielStranak
Topic Author
Posts: 20
Joined: 06 Apr 2017, 15:50

Re: Noesis GUI in business application

26 Feb 2018, 09:15

The last time I tried Noesis GUI was in April 2017, but I will try to summarize the things I needed then.
  • 1. We need some simple out of the box integration of Noesis GUI into Xamarin Forms and Native UI. I would like to see some Noesis View class that we can add to any Page or SubView.
    Using Renderer is complicated for any developer that only knows how to work with Xamarin Forms or Native UI.
  • 2. That Noesis View class I mentioned in point 1 needs to support rendering only when the UI changes, so it isn’t constantly rendering in a loop and draining battery.
    My own implementation with Renderer didn’t work very well.
  • 3. You need to provide NuGet package, that will add the right libraries to the project. The ARM, x86 and x64 libraries needs to be automatically packaged into the application package based on the target platform.
    It was very complicated to add and configure all my projects to include the right library when I build and package my project. I also had to build my own iOS and UWP libraries from source code.
  • 4. You need to add support for Native keyboard and other Native input methods. We can’t use Noesis SoftwareKeyboard implementation, because this will not give us internationalization support, voice input and other things that Native input methods provide.
    Also catching input keys and processing them to support HW keyboard is also not desired, because again you can’t reasonably support internationalization.
    Your implementation is sufficient for games, but not for non-game applications.
  • 5. We need some simple way of adding Native Views into Noesis GUI. For example I need to add Xamarin.Forms.Maps.Map view or other map view to add map support. I would like to see some Noesis Container View that will accept any Xamarin Forms or Native UI view.
 
User avatar
jsantos
Site Admin
Posts: 3905
Joined: 20 Jan 2012, 17:18
Contact:

Re: Noesis GUI in business application

26 Feb 2018, 10:07

Thanks for your feedback! Let me comment each point regarding the current version.
  • 1. We need some simple out of the box integration of Noesis GUI into Xamarin Forms and Native UI. I would like to see some Noesis View class that we can add to any Page or SubView.
    Using Renderer is complicated for any developer that only knows how to work with Xamarin Forms or Native UI.
The only thing we improved here is providing an application framework (multiplatform Application and Window classes) for easily developing multiplatforms applications. Samples is the C# SDK are already using it.

  • 2. That Noesis View class I mentioned in point 1 needs to support rendering only when the UI changes, so it isn’t constantly rendering in a loop and draining battery.
    My own implementation with Renderer didn’t work very well.
This is already implemented. The renderer interface provides information about changes. If no changes happened you can skip the frame.
  • 3. You need to provide NuGet package, that will add the right libraries to the project. The ARM, x86 and x64 libraries needs to be automatically packaged into the application package based on the target platform.
    It was very complicated to add and configure all my projects to include the right library when I build and package my project. I also had to build my own iOS and UWP libraries from source code.
The commented application framework helps with this, although there are many things to improve. Integration with NuGet is necessary yes. It's been asked many times.
  • 4. You need to add support for Native keyboard and other Native input methods. We can’t use Noesis SoftwareKeyboard implementation, because this will not give us internationalization support, voice input and other things that Native input methods provide.
    Also catching input keys and processing them to support HW keyboard is also not desired, because again you can’t reasonably support internationalization.
    Your implementation is sufficient for games, but not for non-game applications.
This is already working. Our callbacks provide enough information to implement native keyboards. In fact, our application framework is already using it for android and ios. The win32 implementation is also compatible with IME.
  • 5. We need some simple way of adding Native Views into Noesis GUI. For example I need to add Xamarin.Forms.Maps.Map view or other map view to add map support. I would like to see some Noesis Container View that will accept any Xamarin Forms or Native UI view.
Not sure about the complexity of this task. It seems the opposite thing of point 1. For this, we would need having Xamarin rendering to a GPU texture that later can be used inside Noesis.
 
GabrielStranak
Topic Author
Posts: 20
Joined: 06 Apr 2017, 15:50

Re: Noesis GUI in business application

26 Feb 2018, 17:52

Not sure about the complexity of this task. It seems the opposite thing of point 1. For this, we would need having Xamarin rendering to a GPU texture that later can be used inside Noesis.
You really need both point 1. and point 5. to create complex applications, because you can’t do everything in Noesis GUI, you also need to use other libraries that use Native UI API.
Maybe as a workaround I could overlay Native UI with Noesis GUI with transparent background (if that is possible), but that would create many problems, starting with solving propagation of touch gestures to bottom UI.

It’s great that you solved point 4. and made some other things easier. Maybe in some future project I will try Noesis GUI again, but for now I’m stuck with my custom Xamarin Forms implementation.
 
flownthecoop
Posts: 22
Joined: 25 Apr 2015, 17:29

Re: Noesis GUI in business application

01 Mar 2018, 23:41

Can we get access to the beta?
 
flownthecoop
Posts: 22
Joined: 25 Apr 2015, 17:29

Re: Noesis GUI in business application

02 Mar 2018, 22:56

I got the beta running on Android and for the most part it works well.

The big issue that I am having is that listbox scrolling does not feel right. Vertical scrolling works fine but if I drag to the left or right, the list goes off the screen. Is there some styling that I need to set to fix this?
 
User avatar
sfernandez
Site Admin
Posts: 2983
Joined: 22 Dec 2011, 19:20

Re: Noesis GUI in business application

05 Mar 2018, 21:27

I think this was a bug we had in our VirtualizingStackPanel that we fixed for the final release.

Could you please use a simple StackPanel in the ListBox and tell me if the incorrect horizontal scroll is fixed?
<ListBox ...>
  <ListBox.ItemsPanel>
    <ItemsPanelTemplate>
      <StackPanel/>
    </ItemsPanelTemplate>
  </ListBox.ItemsPanel>
</ListBox>
 
flownthecoop
Posts: 22
Joined: 25 Apr 2015, 17:29

Re: Noesis GUI in business application

06 Mar 2018, 02:21

That fixes this issue with scrolling off to the side but its no longer touch friendly. I have a list box bound to a collection with 500 items. If I touch to scroll, the list box jumps all the way to the end.

Do you know when the final release will be ready for managed C# and samples for iOS?
 
User avatar
sfernandez
Site Admin
Posts: 2983
Joined: 22 Dec 2011, 19:20

Re: Noesis GUI in business application

06 Mar 2018, 13:58

It is strange, I tested a list with StackPanel item container and touch scrolling works fine.
The only difference is that StackPanel scrolls item by item, instead of using pixel scrolling.
 
User avatar
jsantos
Site Admin
Posts: 3905
Joined: 20 Jan 2012, 17:18
Contact:

Re: Noesis GUI in business application

06 Mar 2018, 14:10

Do you know when the final release will be ready for managed C# and samples for iOS?
The final 2.1 is happening this week, but unfortunately the application framework for C# will be only available in Windows and Android. Rest of platforms will be added in future revisions.

Who is online

Users browsing this forum: Google [Bot], jayk.techabbot and 37 guests